EICASLAB

Last updated
EICASLAB
Developer(s) EICAS Automazione S.p.A.
Operating system Windows/Linux
Type Technical computing
License Proprietary
Website www.eicaslab.com

EICASLAB is a software suite providing a laboratory for automatic control design and time-series forecasting developed as final output of the European ACODUASIS Project IPS-2001-42068 [1] [2] [3] [4] funded by the European Community within the Innovation Programme. The Project - during its lifetime - aimed at delivering in the robotic field the scientific breakthrough of a new methodology for the automatic control design. [5]

Contents

To facilitate such a knowledge transfer, EICASLAB was equipped with an “automated algorithm and code generation” software engine, [6] that allows to obtain a control algorithm algorithm even without a deep knowledge of the theory and the methodology that are otherwise normally required with traditional control design methodologies.

EICASLAB has been and is actually adopted in other European Research Projects dealing with robotics (ARFLEX IST-NMP2-016880 [7] and PISA Project NMP2-CT-2006-026697) [8] and automotive (HI-CEPS Project TIP5-CT-2006-031373 [9] and ERSEC Project FP7 247955). [10] EICASLAB is used in European industries, research institutes and academia to design control systems and time series forecasting documented in the scientific and technical literature. [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22]

EICASLAB includes tools for modelling plants, designing and testing embedded control systems, assisting the phases of the design process of the control strategy, from system concept to generation of the control software code for the final target.

Software organisation

EICASLAB is a software suite composed by a main program, called MASTER, able to assist and manage all the control design steps by means a set of tools, respectively:

Features to support to control design phases

Support to system concept

EICASLAB includes the following features to support the system concept:

Hardware architectures including multi-processors and software architectures including multi-level hierarchical control are considered. The control software is subdivided into functions allocated by the designer to the different processors. Each control function has its own sampling frequency and a time window for its execution, which are scheduled by the designer by means of the EICASLAB scheduler.

Data can be exchanged among the control functions allocated to the same processor and among the different processors belonging to the plant control system. The delay time in the data transmission is considered.

The final “application software” generated in C is subdivided into files each one related to a specific processor.

Support to system simulation

EICASLAB includes specific working areas for developing, optimizing and testing algorithms and software related to the “plant controller”, including both the “automatic control” and the “trajectory generation” and the "disturbances" acting on the plant. To perform such a task three different working areas are available as follows.

Support to control algorithm design

EICASLAB includes the following tools and features to support the control algorithm design:

The Automatic Algorithm Generation tool, starting from the “plant simplified model” and from the "control required performance" generates the control algorithm. On the basis of the plant design data, the applied control design methodology allows design of controllers with guaranteed performance without requiring any tuning in field in spite of the unavoidable uncertainty which always exists between any mathematical model built on the basis of plant design data and the plant actual performance (for fundamentals on control in presence of uncertainty see [23] [24] ). The designer can choose among three control basic schemes and for each one he has the option of selecting control algorithms at different level of complexity. In synthesis, the automatically generated control is performed by the resultant of three actions:

The plant's state observer task may be extended to estimate and predict the disturbance acting on the plant. The plant disturbance prediction and compensation is an original control feature, which allows significant reduction of control error. Model Parameter Identification is a tool which allows the identification of the most appropriate values of the simplified model parameters from recorded experimental data or simulated trials performed by using the “plant fine model”. The parameter's "true" value does not exist: the model is an approximated description of the plant and then, the parameter's "best" value depends on the cost function adopted to evaluate the difference between model and plant. The identification method estimates the best values of the simplified model parameters from the point of view of the closed loop control design. Control Parameter Optimization is a tool which performs control parameter tuning in simulated environment. The optimization is performed numerically over a predefined simulated trial, that is for a given mission (host command sequence and disturbance acting on the plant and any other potential event related to the plant performance) and for a given functional cost associated to the plant control performance.

Support to code generation for the final target

The EICASLAB Automatic Code Generation tool provides the ANSI C source code related to the control algorithm developed. The final result of the designer work is the “application software” in ANSI C, debugged and tested, ready to be compiled and linked in the plant control processors. The “application software” includes the software related to the “automatic control” and the “trajectory generation” functions. The simulated control functions are strictly the same one that the designer can transfer in field in the actual plant controller.

Support to control tuning

EICASLAB includes the following tools to support the control tuning:

Slow Motion View is a tool to be used in the phase of setting up of the plant control, providing a variable by variable analysis of the control software performance during experimental trials performed by means of the actual plant.

The plant input and output and the host commands sent to the controller are recorded during experimental trials and then they can be processed by EICASLAB as follows. The recorded plant input and output variables are used in the Plant Area inside of the input and output variables obtained by the plant simulation. The recorded host commands are used in the Control Mission area inside of the host command generated by the Control Mission function.

Then, when a simulated trial is performed, the control function receives the recorded outputs of the actual plant and the related recorded host commands inside of the simulated ones. Because the control function running in the EICASLAB is strictly the same one, which is running in the actual plant controller, then, the commands resulting from the simulated control function and sent from the simulated control to the simulated plant should be strictly the same of the recorded plant inputs (unless there are numerical errors depending on the differences between the processor where the EICASLAB is running and the one used in the actual plant controller, but the experience has shown that the effects of such differences are negligible). Then, the recorded experimental trial performed by the actual plant controller is completely repeated in the EICASLAB, with the difference that now the process can be performed in slow-motion and, if useful, step by step by using a debugger program.

Automatic Code Generation tool can be used to insert the controller code in a Linux Real-time operating system (RTOS) (in two available versions, namely, Linux RTAI and Linux RT with kernel preemption), in order to test the control algorithm in the PC environment instead of the final target hardware, performing Rapid Control Prototyping (RCP) tests. EICASLAB RCP includes a real-time scheduler based on multithreading programming techniques and able to run on a multi-core processor.

Automatic Code Generation tool can be used to insert the controller code in the final Hardware Target. Once performed such operation, Hardware In the Loop (HIL) tests may be performed, consisting in piloting – instead of the actual plant - the plant simulated in EICASLAB and running on your PC, suitable configured and connected through the necessary hardware interfaces with the final Hardware Target.

Related Research Articles

<span class="mw-page-title-main">Control engineering</span> Engineering discipline that deals with control systems

Control engineering or control systems engineering is an engineering discipline that deals with control systems, applying control theory to design equipment and systems with desired behaviors in control environments. The discipline of controls overlaps and is usually taught along with electrical engineering and mechanical engineering at many institutions around the world.

Control theory is a field of control engineering and applied mathematics that deals with the control of dynamical systems in engineered processes and machines. The objective is to develop a model or algorithm governing the application of system inputs to drive the system to a desired state, while minimizing any delay, overshoot, or steady-state error and ensuring a level of control stability; often with the aim to achieve a degree of optimality.

<span class="mw-page-title-main">Simulation</span> Imitation of the operation of a real-world process or system over time

A simulation is the imitation of the operation of a real-world process or system over time. Simulations require the use of models; the model represents the key characteristics or behaviors of the selected system or process, whereas the simulation represents the evolution of the model over time. Often, computers are used to execute the simulation.

A proportional–integral–derivative controller is a control loop mechanism employing feedback that is widely used in industrial control systems and a variety of other applications requiring continuously modulated control. A PID controller continuously calculates an error value as the difference between a desired setpoint (SP) and a measured process variable (PV) and applies a correction based on proportional, integral, and derivative terms, hence the name.

<span class="mw-page-title-main">Control system</span> System that manages the behavior of other systems

A control system manages, commands, directs, or regulates the behavior of other devices or systems using control loops. It can range from a single home heating controller using a thermostat controlling a domestic boiler to large industrial control systems which are used for controlling processes or machines. The control systems are designed via control engineering process.

<span class="mw-page-title-main">Visual programming language</span> Programming language written graphically by a user

In computing, a visual programming language or block coding is a programming language that lets users create programs by manipulating program elements graphically rather than by specifying them textually. A VPL allows programming with visual expressions, spatial arrangements of text and graphic symbols, used either as elements of syntax or secondary notation. For example, many VPLs are based on the idea of "boxes and arrows", where boxes or other screen objects are treated as entities, connected by arrows, lines or arcs which represent relations.

An industrial process control or simply process control in continuous production processes is a discipline that uses industrial control systems and control theory to achieve a production level of consistency, economy and safety which could not be achieved purely by human manual control. It is implemented widely in industries such as automotive, mining, dredging, oil refining, pulp and paper manufacturing, chemical processing and power generating plants.

Model predictive control (MPC) is an advanced method of process control that is used to control a process while satisfying a set of constraints. It has been in use in the process industries in chemical plants and oil refineries since the 1980s. In recent years it has also been used in power system balancing models and in power electronics. Model predictive controllers rely on dynamic models of the process, most often linear empirical models obtained by system identification. The main advantage of MPC is the fact that it allows the current timeslot to be optimized, while keeping future timeslots in account. This is achieved by optimizing a finite time-horizon, but only implementing the current timeslot and then optimizing again, repeatedly, thus differing from a linear–quadratic regulator (LQR). Also MPC has the ability to anticipate future events and can take control actions accordingly. PID controllers do not have this predictive ability. MPC is nearly universally implemented as a digital control, although there is research into achieving faster response times with specially designed analog circuitry.

<span class="mw-page-title-main">Automatic test equipment</span> Apparatus used in hardware testing that carries out a series of tests automatically

Automatic test equipment or automated test equipment (ATE) is any apparatus that performs tests on a device, known as the device under test (DUT), equipment under test (EUT) or unit under test (UUT), using automation to quickly perform measurements and evaluate the test results. An ATE can be a simple computer-controlled digital multimeter, or a complicated system containing dozens of complex test instruments capable of automatically testing and diagnosing faults in sophisticated electronic packaged parts or on wafer testing, including system on chips and integrated circuits.

<span class="mw-page-title-main">Hopsan</span>

Hopsan is a free simulation environment for fluid and mechatronic systems, developed at Linköping University. Although originally developed for simulation of fluid power systems, it has also been adopted for other domains such as electric power, flight dynamics, and vehicle dynamics. It uses bi-directional delay lines to connect different components.

VisSim is a visual block diagram program for simulation of dynamical systems and model-based design of embedded systems, with its own visual language. It is developed by Visual Solutions of Westford, Massachusetts. Visual Solutions was acquired by Altair in August 2014 and its products have been rebranded as Altair Embed as a part of Altair's Model Based Development Suite. With Embed, you can develop virtual prototypes of dynamic systems. Models are built by sliding blocks into the work area and wiring them together with the mouse. Embed automatically converts the control diagrams into C-code ready to be downloaded to the target hardware.

Robot software is the set of coded commands or instructions that tell a mechanical device and electronic system, known together as a robot, what tasks to perform. Robot software is used to perform autonomous tasks. Many software systems and frameworks have been proposed to make programming robots easier.

Hardware-in-the-loop (HIL) simulation, HWIL, or HITL, is a technique that is used in the development and testing of complex real-time embedded systems. HIL simulation provides an effective testing platform by adding the complexity of the process-actuator system, known as a plant, to the test platform. The complexity of the plant under control is included in testing and development by adding a mathematical representation of all related dynamic systems. These mathematical representations are referred to as the "plant simulation". The embedded system to be tested interacts with this plant simulation.

The following outline is provided as an overview of and topical guide to automation:

Model-based design (MBD) is a mathematical and visual method of addressing problems associated with designing complex control, signal processing and communication systems. It is used in many motion control, industrial equipment, aerospace, and automotive applications. Model-based design is a methodology applied in designing embedded software.

Orchestra Control Engine is a suite of software components used for the planning, development and deployment of real-time control applications for industrial machines and robots.

<span class="mw-page-title-main">Real-time Control System</span> Reference model architecture

Real-time Control System (RCS) is a reference model architecture, suitable for many software-intensive, real-time computing control problem domains. It defines the types of functions needed in a real-time intelligent control system, and how these functions relate to each other.

LinuxCNC is a free, open-source Linux software system that implements numerical control capability using general purpose computers to control CNC machines. It's mainly intended to run on PC AMD x86-64 systems. Designed by various volunteer developers at linuxcnc.org, it is typically bundled as an ISO file with a modified version of 32-bit Ubuntu Linux which provides the required real-time kernel.

Optimus is a Process Integration and Design Optimization (PIDO) platform developed by Noesis Solutions. Noesis Solutions takes part in key research projects, such as PHAROS and MATRIX.

dSPACE GmbH, located in Paderborn, Germany, is one of the world's leading providers of tools for developing electronic control units.

References

  1. ACODUASIS IPS-2001-42068 : ACODUASIS Project web-site Archived 2008-04-17 at the Wayback Machine
  2. CORDIS Issue n. 44 – September 2003, Technology opportunities today, page 16: "EICASLAB: A family of CAE tools using automated algorithm generation to design control systems". Published by European Commission – Innovation, on line [ permanent dead link ]
  3. EVCA Barometer April 2006, page 5: "An easy to use tool for automated control systems", on line Archived 2006-12-07 at the Wayback Machine
  4. CORDIS - ICT results: Results that lead the way: "An easy-to-use tool for automated control systems", Published by European Commission, on line
  5. Prof. Francesco Donati (Politecnico of Torino, Italy): "The innovative methodology and the ACODUASIS Project", ACODUASIS Workshop "One Step further in Automatic Control Design", Torino (Italy), 3 October 2005, on line Archived 2011-07-19 at the Wayback Machine
  6. Gabriella Caporaletti (EICAS Automazione, Italy): "The ACODUASIS Project: A professional software tool supporting the control design in robotics", 6th International Conference on Climbing and Walking Robots And the Support Technologies for Mobile Machines. CLAWAR 2003 September 17–19, 2003, Catania, Italy
  7. ARFLEX Project IST-NMP2-016880 : ARFLEX Project web-site/
  8. PISA Project NMP2-CT-2006-026697 PISA Project web-site Archived 2008-01-02 at the Wayback Machine
  9. HI-CEPS Project TIP5-CT-2006-031373: HI-CEPS Project web-site
  10. ERSEC Project FP7 247955: ERSEC Project web-site:
  11. Gabriella Caporaletti (EICAS Automazione, Italy), Rui Neves da Silva and Maria Marques (UNINOVA, Portugal): "Advanced Automated Algorithm Generation Software in the Control of Solar Plant" - MIC 2004 Twenty-Third IASTED International Conference on Modelling, Identification and Control, abstract on line
  12. Kerscher, Zoellner and Dillman (University of Karlsruhe, Germany), Stella and Caporaletti (EICAS Automazione, Italy):"Model and Control of joints driven by fluidic muscles with the help of advanced automatic algorithm generation software"- CLAWAR 2005 8th International Conference on Climbing and Walking Robots and the Support Technologies for Mobile Machines
  13. Kay Ch. Fuerstenberg (IBEO Automobile Sensor GmbH, Germany), Pierre Baraud (Peugeot Citroën Automobile, France), Gabriella Caporaletti (EICAS Automazione,Italy), Silvia Citelli (Fiat Research Center,Italy), Zafrir Eitan (TAMAM/IAI, Israel), Ulrich Lages (IBEO Automobile Sensor GmbH, Germany), Christophe Lavergne (Renault SA, France) Development of a Pre-crash sensorial system: The CHAMELEON Project, on line [ permanent dead link ]
  14. A. Bottero and D. Martinello (COMAU Robotics, Italy):Industrial robot simulation models for control design and analysis purposes, ACODUASIS Workshop "One Step further in Automatic Control Design", Torino (Italy), 3 October 2005, on line Archived 2011-07-19 at the Wayback Machine
  15. F. Motto and A. Ramoino (EICAS Automazione, Italy), A. Bottero and D. Martinello (COMAU Robotics,Italy: Industrial robots control with EICASLAB approach: industrial prototyping and experimentation results, ACODUASIS Workshop "One Step further in Automatic Control Design", Torino (Italy), 3 October 2005, on line Archived 2011-07-19 at the Wayback Machine
  16. J. Fottner (MIAS, Germany), T. Kerscher (University of Karlsruhe, Germany), G. di Gropello and A. Stella (EICAS Automazione, Italy): Modelling and Control of Automated Guided Vehicles (AGVs) for the transport of meals, laundry and waste in the healthcare domain, ACODUASIS Workshop "One Step further in Automatic Control Design", Torino (Italy), 3 October 2005, on line Archived 2011-07-19 at the Wayback Machine
  17. G. Caporaletti and A. Stella (EICAS Automazione, Italy), P. Pina (UNINOVA,Portugal), V. Abadie (CYBERNETIX, France):"Control of a hydraulic servoactuator using an automated algorithm generator", ACODUASIS Workshop "One Step further in Automatic Control Design", Torino (Italy), 3 October 2005, on line Archived 2011-07-19 at the Wayback Machine
  18. Y. Dodeman and N. Moisan (IPSIS, France), G. di Gropello (EICAS Automazione, Italy):"Synthesis of multivariable control of a thermic power plant", ACODUASIS Workshop "One Step further in Automatic Control Design", Torino (Italy), 3 October 2005, on line Archived 2011-07-19 at the Wayback Machine
  19. Prof. R. Bucher and K.Kaufmann – (SUPSI, Switzerland):"Rapid Control Prototyping with EICASLAB and Linux RTAI", ACODUASIS Workshop "One Step further in Automatic Control Design", Torino (Italy), 3 October 2005, on line Archived 2011-07-19 at the Wayback Machine
  20. Prof. Silvano Balemi (University of Applied Sciences of Southern Switzerland, Lugano-Manno, Switzerland): "Rapid Controller Prototyping Platform for Precision Applications", Proceedings of the 6th euspen International Conference – Baden bei Wien - May 2006, on line
  21. Paola Donati and Francesco Donati:” Modelling and Forecasting the Yield Curve under Model uncertainty, by Paola Donati and Francesco Donati”, Working Paper Series 917, European Central Bank (ECB), on line
  22. Paola Donati:” Monetary Policy Effectiveness in Times of Crisis: Evidence from the Euro Area Money Market”, European Central Bank (ECB) workshop December 2009, on line
  23. Prof. F. Donati , Prof. D. Carlucci: "Control of norm of uncertain systems", IEEE Transactions on Automatic Control, vol.20-AC, 1975, pp.792- 795
  24. Prof. F. Donati , Prof. M. Vallauri: "Guaranteed control of almost-linear plants", IEEE Transactions on Automatic Control, vol. 29- AC, 1984, pp. 34-41