Design Space Exploration for Fieldbus-based Distributed Control Systems

Berge, Matthijs ten (2005) Design Space Exploration for Fieldbus-based Distributed Control Systems.

Abstract:Development of embedded control systems at the Control Engineering chair takes a structured approach. It is supported by a toolchain consisting of both software and hardware tools that can be used in the various stages of the design process. The available tools range from modeling and simulation software to a hardware-in-the-loop simulator. However, support for the implementation of control systems on distributed control systems is limited. Distributed systems consist of multiple processor nodes, interconnected by a fieldbus (or other communication solutions). As the fieldbus is part of the control loop, it will affect the behavior of the control system. With the existing toolchain, this effect is unknown until the complete control system is realized and measurements can be performed. Implementation of embedded control systems can be complex and time consuming, as the implemented software solution must be validated on the actual target hardware. Embedded software is often difficult to debug, this depends on the debugging features of the development tools for the embedded platform. The goal of this project is to design a new tool, which can be integrated in the existing toolchain, to aid in the verification and design space exploration during the implementation phase of a distributed embedded control system. This new tool, the Design Space Exploration (DSE) simulation environment, enables the simulation of a complete control system on a PC. It can be used during the implementation phase of the development process, and allows the designer to verify the correctness of the control system implementation and to choose the optimal parameters for all degrees of freedom (this is the design space exploration). The DSE simulation environment is based on the Communicating Threads (CT) C++ library, which is an implementation of the Communicating Sequential Processes (CSP) language. This library supports a number of different platforms, which makes it possible to test software targeted at embedded hardware on a normal PC. The DSE simulation environment incorporates a modified version of the TrueTime network simulator, allowing simulation of distributed systems. Support for network communication is further extended by the addition of Remote Channels to the CT C++ library. These Channels can be used to turn a normal CT Channel into a networked variant. In the Remote Channel concept a separation is made between parts that are specific to a single channel, to the communication hardware or to a single communication interface. This separation makes the addition of support for new hardware relatively easy, and it allows multiple channels to be routed over the same network interface, independent of the network hardware used. To get the results from a simulation, a logging implementation has been made. Although this implementation is sufficient for use in simulations, it is not suitable for real-time logging. A logging concept is presented, which can be used both for real-time and simulation logging. A demonstration setup, consisting of a distributed controller on two ADSP processor boards and the Linix plant, was simulated with the DSE simulation environment. This case shows how a simulation of a complete distributed control system can be constructed. Furthermore a smaller simulation setup was created, which shows an example of how the DSE simulation environment can be used for measurements on different communication protocols. Future work would include a better integration of the simulation environment with the other tools available, such as gCSP as a tool to graphically structure simulations. Extending the functionality of the DSE simulation environment, for instance by adding support for more network hardware or by adding support for simulation of execution time, is also recommended.
Item Type:Essay (Master)
Faculty:EEMCS: Electrical Engineering, Mathematics and Computer Science
Subject:53 electrotechnology
Programme:Electrical Engineering MSc (60353)
Link to this item:
Export this item as:BibTeX
HTML Citation
Reference Manager


Repository Staff Only: item control page