- A History of Increasing Complexity
- Mechatronic System Organization
- Amplifiers and Isolation
- Scope: The Unit Machine
- Real-Time Software
- Nasty Software Properties
- Engineering Design and Computational Performance
- Control System Organization
- Software Portability
- Operator Interface
- Multicomputer Systems: Communication
- The Design and Implementation Process
1.9 Control System Organization
The division into system engineering and computational technology allows separation of these two aspects of a control system. However, still further modularization is needed to meet the need for a rational design procedure. A two-level organization is used on both the engineering and computational sides of the control software design.
On the engineering side, a job is organized into
Tasks represent semi-independent activities of the control system. The division of the control software into tasks is the first level of modularization. Because the activities the tasks control are semi-independent, the tasks must all be active (execute) at the same time.
The next level of modularization is to states. States describe specific, sequential activities within tasks. While a task, for example, might control a specific motor, the states within that task could correspond to the motor turned off, the motor operating at constant velocity, the motor decelerating to a stop, and so forth.
The breakdown of the engineering specification into tasks and then states is a subjective process, requiring considerable engineering judgment. This stage is the primary creative design step.
On the computational side, the computing process is organized into
This breakdown is done to utilize the computing resources as ePciently as possible. It is independent of the task-state design in the sense that many different process-thread configurations can be devised for exactly the same task-state specification. In the absence of any economic constraints it is normally possible to implement a control system design with a single process and single thread, while still meeting all real-time specifications. However, economics always plays a role in engineering design, so effective process-thread design is crucial to commercially successful projects.