D. Sofiware Design
The development and debugging of control software for a microprocessor-based motion control system will require different tools depending on the selected processors and the system complexity. The degree of sophistication of the development tools will affect the development time and the performance.
The software developed for real-time control typically contains a real-time operating system (RTOS) that schedules and manages different specific functions under the form of modules (tasks or processes). With the exception of very simple systems where the RTOS kemel can be written by
the control engineer, the control software is generally built around an acquired real-time kemel. Real-time operating systems with various features are commercially available for different microprocessors. Some examples of commercial RTOS are: VxWorks from Wind River Systems Inc., SPOX from Spectron Inc., and pSOS+ from Integrated Systems Inc.
The important features of a RTOS are real-time multitasking, multiprocessing, and source and symbolic debugging capabilities. Real-time multitasking features include: event-driven scheduling, dynamically prioritized tasks, syn chronization and communication facilities (between tasks), timer services, and handling of device interrupts. Multiprocessing feature provides facilities for programmers to employ a variety of schemes for multiprocessor structures (shared memory, communication links, private bus). Source and symbolic debugging facilitates the debugging tasks in multitasking software.
The development of real-time control software can be done following three main steps: a) development and testing of the algorithms by simulation, b) coding and testing in offline mode, and c) testing of developed codes in real-time mode.
The control software can be written by using assembler language or high-level language. Assembler has always been recognized as an effective programming language for real-time control systems because it gives access to the processor internal structure. The codes can be optimized to use efficiently the available memory space and to optimize the execution speed. A major drawback of assembler programming resides in the processor dependence of the developed software. At present, C language is widely accepted as a programming language for real-time control systems because of its portability and effectiveness in manipulating hardware resources. The developed codes using C language can be brought to another processor generation or to another microprocessor with minimum
modifications. However, the generated code is less compact than those produced by assembler language. Several optimized C Compilers are now available for microprocessors,
microcontrollers, DSP's, and RISC processors,capable of generating very compact codes. In general,C or C++ language is used for software coding except for time-critical functions that are better implemented in assembler language. For multiprocessor systems, Parallel C appears to be accepted as an appropriate highlevel language for real-time parallel software development.
The software development tools for real-time motion control systems include typically C compilers, macro assemblers, and linkers. Debugging tools include debuggers, simulators, and in-circuit emulators. The software development and debugging tools can run on different computer platforms, the most popular ones are XWindows on Sun computers, and Windows on PC's.
D. Sofiware การออกแบบ
การพัฒนาและการแก้จุดบกพร่องของซอฟต์แวร์ควบคุมการเคลื่อนไหวของไมโครโปรเซสเซอร์ที่ใช้ระบบการควบคุมจะต้องใช้เครื่องมือที่แตกต่างกันไปขึ้นอยู่กับการประมวลผลที่เลือกและความซับซ้อนของระบบ ระดับของความซับซ้อนของเครื่องมือในการพัฒนาจะมีผลต่อเวลาในการพัฒนาและประสิทธิภาพการทำงาน.
ซอฟแวร์ที่พัฒนาขึ้นสำหรับการควบคุมเวลาจริงมักจะมีเวลาจริงระบบปฏิบัติการ (RTOS) ที่ตารางเวลาและจัดการการทำงานเฉพาะที่แตกต่างกันภายใต้รูปแบบของโมดูล (งาน หรือกระบวนการ) ด้วยข้อยกเว้นของระบบที่ง่ายมากที่ Kemel RTOS สามารถเขียนโดย
วิศวกรควบคุมซอฟต์แวร์ควบคุมที่ถูกสร้างขึ้นโดยทั่วไปรอบที่ได้มาแบบ real-time Kemel ระบบปฏิบัติการแบบ Real-time ด้วยคุณสมบัติต่างๆที่ใช้ได้ในเชิงพาณิชย์สำหรับไมโครโปรเซสเซอร์ที่แตกต่างกัน ตัวอย่างบางส่วนของ RTOS เชิงพาณิชย์: VxWorks จาก Wind River Systems, Inc, SPOX จาก Spectron อิงค์และ pSOS + จากแบบบูรณาการระบบอิงค์
คุณสมบัติที่สำคัญของ RTOS เป็นมัลติทาสกิ้งแบบ real-time หลายตัวและแหล่งที่มาและความสามารถในการแก้จุดบกพร่องสัญลักษณ์ คุณสมบัติมัลติทาสกิ้งเรียลไทม์รวมถึงการจัดตารางเวลาเหตุการณ์ที่ขับเคลื่อนด้วยงานจัดลำดับความสำคัญแบบไดนามิก chronization สินและสิ่งอำนวยความสะดวกในการติดต่อสื่อสาร (ระหว่างงาน) บริการตั้งเวลาและการจัดการของการขัดจังหวะอุปกรณ์ คุณลักษณะหลายตัวมีสิ่งอำนวยความสะดวกสำหรับการเขียนโปรแกรมที่จะใช้ความหลากหลายของรูปแบบสำหรับโครงสร้างมัลติ (หน่วยความจำที่ใช้ร่วมกันเชื่อมโยงการสื่อสาร, รถเมล์เอกชน) แหล่งที่มาและการแก้จุดบกพร่องสัญลักษณ์อำนวยความสะดวกในงานการแก้จุดบกพร่องในซอฟต์แวร์มัลติทาสกิ้ง.
การพัฒนาซอฟต์แวร์ควบคุมเวลาจริงสามารถทำได้ดังต่อไปนี้สามขั้นตอนหลัก) การพัฒนาและการทดสอบขั้นตอนวิธีการโดยการจำลอง b) การเข้ารหัสและการทดสอบในโหมดออฟไลน์และค ) การทดสอบของรหัสการพัฒนาในโหมดเรียลไทม์.
ซอฟต์แวร์ควบคุมสามารถเขียนได้โดยใช้ภาษาแอสเซมหรือภาษาระดับสูง ประกอบได้เสมอจำได้ว่าเป็นภาษาโปรแกรมที่มีประสิทธิภาพสำหรับเรียลไทม์ระบบการควบคุมเพราะมันช่วยให้การเข้าถึงการประมวลผลโครงสร้างภายใน รหัสสามารถเพิ่มประสิทธิภาพการใช้งานได้อย่างมีประสิทธิภาพพื้นที่หน่วยความจำที่มีอยู่และที่จะเพิ่มประสิทธิภาพความเร็วในการทำงาน อุปสรรคสำคัญของการเขียนโปรแกรมประกอบการพึ่งพาอาศัยอยู่ในหน่วยประมวลผลของซอฟต์แวร์ที่พัฒนา ในปัจจุบันภาษา C ได้รับการยอมรับอย่างกว้างขวางว่าเป็นภาษาการเขียนโปรแกรมสำหรับระบบการควบคุมเวลาจริงเนื่องจากการพกพาและประสิทธิภาพในการจัดการทรัพยากรฮาร์ดแวร์ รหัสการพัฒนาโดยใช้ภาษา C สามารถนำไปประมวลผลรุ่นอื่นหรือไมโครโปรเซสเซอร์ที่มีขั้นต่ำอีก
การปรับเปลี่ยน แต่รหัสที่สร้างขึ้นมีขนาดกะทัดรัดน้อยกว่าที่ผลิตโดยภาษาแอสเซม หลายคนที่ดีที่สุดคอมไพเลอร์ C ตอนนี้ใช้ได้สำหรับไมโครโปรเซสเซอร์,
ไมโครคอนโทรลเลอร์, DSP และประมวลผล RISC ที่มีความสามารถในการสร้างรหัสขนาดเล็กมาก โดยทั่วไป, C หรือ C ++ ภาษาที่ใช้สำหรับการเขียนโปรแกรมซอฟต์แวร์ยกเว้นสำหรับฟังก์ชั่นเวลาที่สำคัญที่จะดำเนินการที่ดีกว่าในภาษาแอสเซม สำหรับระบบมัลติ, ขนาน C ดูเหมือนจะได้รับการยอมรับในฐานะที่เป็นภาษา highlevel เหมาะสมสำหรับเรียลไทม์การพัฒนาซอฟต์แวร์แบบขนาน.
เครื่องมือในการพัฒนาซอฟต์แวร์สำหรับเรียลไทม์ระบบการควบคุมการเคลื่อนไหวรวมถึงมักจะคอมไพเลอร์ C, ประกอบแมโครและ Linkers เครื่องมือการแก้จุดบกพร่องรวมถึงการแก้จุดบกพร่องจำลองและการเลียนแบบในวงจร การพัฒนาซอฟต์แวร์และเครื่องมือการแก้จุดบกพร่องสามารถทำงานบนแพลตฟอร์มคอมพิวเตอร์ที่แตกต่างกันที่คนนิยมมากที่สุดคือ XWindows บนคอมพิวเตอร์ของดวงอาทิตย์และ Windows บนเครื่องคอมพิวเตอร์
การแปล กรุณารอสักครู่..

D .
ออกแบบ sofiware การพัฒนาและแก้จุดบกพร่องของซอฟต์แวร์ที่ควบคุมระบบการควบคุมการเคลื่อนไหวที่ควบคุมด้วยไมโครโปรเซสเซอร์จะต้องใช้เครื่องมือที่แตกต่างกันขึ้นอยู่กับการเลือกโปรเซสเซอร์ และความซับซ้อนของระบบ ระดับของความซับซ้อนของเครื่องมือในการพัฒนาจะมีผลต่อเวลาในการพัฒนาและการปฏิบัติ .
ซอฟต์แวร์ที่พัฒนาขึ้นสำหรับการควบคุมเวลาโดยทั่วไปจะประกอบด้วยระบบปฏิบัติการเวลาจริง ( RTOS ) ตารางและจัดการการทำงานที่เฉพาะเจาะจงที่แตกต่างกันภายใต้รูปแบบของโมดูล ( งานหรือกระบวนการ ) ด้วยข้อยกเว้นของระบบที่ง่ายมากที่ RTOS kemel สามารถเขียนโดย
วิศวกรควบคุม , ซอฟแวร์ควบคุมโดยทั่วไปจะสร้างรอบการได้มาแบบเรียลไทม์ kemel .เวลาจริงระบบปฏิบัติการที่มีคุณลักษณะต่าง ๆที่มีอยู่ในเชิงพาณิชย์สำหรับไมโครโปรเซสเซอร์ที่แตกต่างกัน ตัวอย่างบางส่วนของ RTOS พาณิชย์ : vxworks จากลมแม่น้ำระบบอิงค์ spox จาก spectron อิงค์ และ psos จากบูรณาการระบบอิงค์
คุณลักษณะสำคัญของ RTOS มี multitasking แบบมัลติโปรเซสซิ่ง และ แหล่งที่มา และสัญลักษณ์การแก้จุดบกพร่องของความสามารถเวลาจริง multitasking รวมถึง : เหตุการณ์ขับเคลื่อนการจัดตารางแบบไดนามิกการจัดลำดับความสำคัญงาน , Example chronization และการสื่อสารเครื่อง ( ระหว่างงาน ) , บริการตัวจับเวลา และการจัดการของอุปกรณ์ขัดจังหวะขึ้นมา มัลติโปรเซสซิงคุณลักษณะมีสิ่งอำนวยความสะดวกสำหรับโปรแกรมเมอร์ที่จะใช้ความหลากหลายของรูปแบบโครงสร้างมัลติ ( หน่วยความจำที่ใช้ร่วมกัน การสื่อสาร การเชื่อมโยง รถส่วนตัว )และสัญลักษณ์การแก้จุดบกพร่องในการแก้จุดบกพร่องแหล่งงานในการทำงานหลายซอฟต์แวร์ .
การพัฒนาซอฟต์แวร์การควบคุมเวลา สามารถทำต่อไปนี้สามขั้นตอนหลัก ได้แก่ การพัฒนาและการทดสอบของอัลกอริทึมโดยการจำลอง , B ) การเข้ารหัสและการทดสอบในโหมดออฟไลน์ และ c ) การทดสอบการพัฒนารหัสในโหมดเรียลไทม์
ซอฟต์แวร์ควบคุมสามารถเขียนโดยใช้ภาษาแอสเซมเบลอร์ หรือภาษาระดับสูง ประกอบได้เสมอถูกรู้จักว่าเป็นภาษาการเขียนโปรแกรมที่มีประสิทธิภาพสำหรับระบบการควบคุมเวลา เพราะมันให้เข้าใช้หน่วยประมวลผลกลางโครงสร้างภายใน รหัสที่สามารถเพิ่มประสิทธิภาพการใช้หน่วยความจำอย่างมีประสิทธิภาพ พร้อมใช้งาน และเพิ่มประสิทธิภาพความเร็วในการข้อเสียเปรียบหลักของการเขียนโปรแกรมประกอบอยู่ในการประมวลผลการพึ่งพาของการพัฒนาซอฟต์แวร์ ปัจจุบันเป็นที่ยอมรับอย่างกว้างขวาง เช่น ภาษา C ภาษาการเขียนโปรแกรมสำหรับควบคุมระบบแบบเรียลไทม์ เนื่องจากการพกพาและประสิทธิภาพในการใช้ทรัพยากรฮาร์ดแวร์รหัสที่พัฒนาขึ้นด้วยภาษา C สามารถนำมาประมวลผลรุ่นอื่น หรือ ไมโครโปรเซสเซอร์ ด้วยการปรับเปลี่ยนขั้นต่ำอีก
อย่างไรก็ตาม รหัสที่สร้างขึ้นมีขนาดเล็กน้อยกว่าผู้ที่ผลิตโดยประกอบภาษา หลายที่ดีที่สุด C คอมไพเลอร์ตอนนี้ใช้ได้สำหรับไมโครโปรเซสเซอร์
เอ็ดมันด์ ฮัลเลย์ , ราคาถูก , และ RISC โปรเซสเซอร์ที่มีความสามารถในการสร้างรหัสที่กระชับมาก โดยทั่วไปC หรือภาษา C ใช้ซอฟต์แวร์การเข้ารหัสยกเว้นงานวิกฤตเวลาที่ใช้ในการประกอบขึ้นเป็นภาษา สำหรับระบบมัลติ ขนานซีดูเหมือนจะได้รับการยอมรับเป็นภาษาระดับสูงที่เหมาะสมสำหรับการพัฒนาซอฟต์แวร์แบบเรียลไทม์
พัฒนาซอฟต์แวร์เครื่องมือสำหรับระบบการควบคุมการเคลื่อนไหวแบบเรียลไทม์ รวมถึงมักจะ C คอมไพเลอร์ , แมโครประกอบ ,และ linkers . การแก้จุดบกพร่องเครื่องมือรวมถึง debuggers simulators และวงจรเลียนแบบ . การพัฒนาซอฟต์แวร์และการแก้จุดบกพร่องเครื่องมือสามารถทำงานบนแพลตฟอร์มคอมพิวเตอร์ที่แตกต่างกันที่ได้รับความนิยมมากที่สุดคือ กซ์วินโดวส์บนดวงอาทิตย์คอมพิวเตอร์และ Windows บน PC .
การแปล กรุณารอสักครู่..
