Orchestra Control Engine
   HOME

TheInfoList



OR:

Orchestra Control Engine is a suite of software components (based on Linux/
RTAI Real-time application interface (RTAI) is a real-time computing, real-time extension for the Linux kernel, which lets users write applications with strict timing constraints for Linux. Like Linux itself the RTAI software is a community effort. ...
) used for the planning, development and deployment of real-time control applications for industrial machines and robots. Orchestra Control Engine has been developed b
Sintesi SpA
in partnership with the
Italian National Research Council The National Research Council (Italian: ''Consiglio Nazionale delle Ricerche, CNR'') is the largest research council in Italy. As a public organisation, its remit is to support scientific and technological research. Its headquarters are in Rome. ...
and in collaboration with international industrial companies in the field of robotics and production systems. Sintesi SpA is a company that develops mechatronic components and solutions. It has specialized in measurement, control and design technologies for robotics and production systems.


Main features

Orchestra Control Engine is flexible because it can be customized. This is done visually. The solutions created are open (based on an open source framework) and are extendible. Modular components of the software allow a user to develop, debug and test control applications. For example, previously developed algorithms can be divided into functional units and reused indefinitely. All the units work together. The software can be distributed among various remote hardware devices which may be hundreds of meters apart. It also scalable in that it selects hardware which provides the best cost and performance for a particular operation. The system's parameters can be quickly reconfigured both on line and also at the time of a run.


Suite components

Linux/
RTAI Real-time application interface (RTAI) is a real-time computing, real-time extension for the Linux kernel, which lets users write applications with strict timing constraints for Linux. Like Linux itself the RTAI software is a community effort. ...
creates Orchestra Control Engine's hard real time behaviour. Its "open source" characteristics allow changes to fit the users' requirements. Non hard real time components of orchestra Control Engine can be used with non-Linux platforms such as
Microsoft Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for serv ...
or Macintosh. ;Orchestra Core A hard real time multithreaded engine operates in multicore/multiprocessor architectures. Within the scheme, modules can be filled in with more or less complex algorithms which control the process. The run time engine loads the modules. The user can adapt the modules to the topology. For complex topology, multiple modules can be used or parallel loops can be implemented. ;Orchestra Run Time Manager The run time manager controls the formalities of execution of the program; decides priorities within the operation; and manages the multi-thread and multiprocessor operations. It is made up of templates that define
thread Thread may refer to: Objects * Thread (yarn), a kind of thin yarn used for sewing ** Thread (unit of measurement), a cotton yarn measure * Screw thread, a helical ridge on a cylindrical fastener Arts and entertainment * ''Thread'' (film), 2016 ...
typologies according to the formalities of execution and from a part that manages the POU (Program Organization Unit). ;Orchestra Logic Programming The logic programming of Orchestra Control Engine assists in the use of the five contemplated languages of the
IEC 61131 IEC 61131 is an IEC standard for programmable controllers. It was first published in 1993; the current (third) edition dates from 2013. It was known as IEC 1131 before the change in numbering system by IEC. The parts of the IEC 61131 standard a ...
norm. It also assists in the use of the C/C++ language. ;Orchestra Path Programming The path programming of Orchestra Control Engine assists in the writing of movement and workmanship mechanics. Piece manufacturing programs (part programs) can be edited according to the international ISO-DIN 60025 standard and the American EIA RS274 D standard. It is also important for the interpretation of modules and in turn for the input which allows a Motion Control Loop. ;Orchestra Designer The designer is a Java IDE. It assists development of motion control applications for different environments. This involves completing new modules, using code templates, allowing the adding and shaping of new blocks and testing the modules both independently and in a control scheme. It also automatically provides XML configuration files for each module and for the control loop. ;Orchestra Builder The builder is a software tool that allows Simulink models to be automatically generated into Orchestra core compatible modules. It does this by making a definition for every parameter of the Simulink model. It can generate a function which initializes the loading of a newly developed control system and, it can generate the step function which holds the code for the logic of each module. ;Orchestra HMI HMI is a Java application (therefore a cross-platform one), that looks for and interacts with different parts of a control system. Orchestra HMI has a graphic interface (including a touch screen) which can run on any common PC. It can be customised to suit the user and provides user authentication. Orchestra HMI allows the user to CN configure and plan the production island and command processes such as the starting a motion program. The user can screen and edit processes. Orchestra HMI provides the visualization of signals coming from an OrchestraCore or an Orchestra Run Time Manager by means of graphic controls (indicators, 2D plots, LCD displays) and the 3D visualization of machines and anthropomorphous manipulators. ;Orchestra Library The library contains sets of modules, information from sensors, interfaces with external entities such as machines, robots, sensors and DAQ boards.


Solutions

Orchestra Control Engine is a suite of programs. Using the various components in combination allows for flexibility. d ;Orchestra Motion Control Framework The motion control framework allows users to develop motion control applications by integrating the best modules for their purpose. The modules may be ones already available or those the user develops using the orchestra designer and builder facilities. The modules can be run so that the process has multiple threads. Parallelisms are identified and thus algorithms are refined. The modules can be "debugged" as they are completed if specific verifications are programmed. Alternatively, the modules can be completed in "release" mode if no special verifications are required. The modules be completed with any number of entries, parameters, states and vectorial output in double precision floating point, as well as states of any other type. These characteristics are codified through XML files. ;Orchestra MultiPLC Orchestra MultiPLC (multi
programmable logic controller A programmable logic controller (PLC) or programmable controller is an industrial computer that has been ruggedized and adapted for the control of manufacturing processes, such as assembly lines, machines, robotic devices, or any activity tha ...
) is composed of Orchestra Run Time Manager, Orchestra Logic Programming and OrchestraHMI. It allows the execution of a motion control application as one or more programs or functional blocks which may be reused. The controller's open schema accepts and translates XML files. The functional blocks can be prioritised within a series or programmed to operate periodically. New tasks may be added to the application. ;Orchestra Full for Numerical Control Orchestra Full for
Numerical Control Numerical control (also computer numerical control, and commonly called CNC) is the automated control of machining tools (such as drills, lathes, mills, grinders, routers and 3D printers) by means of a computer. A CNC machine processes a pi ...
consists of Orchestra Motion Control Framework, OrchestraMulti PLC, and some other specific components: OrchestraGCode interprets the G-code program received by the HMI: if the G-code instruction is one of motion, then it is sent to the MotionSupervisor, if not, OrchestraGCode will write the instruction to the appropriate software. MotionSupervisor acts as an interface between the Motion Control Loop, the Orchestra GCode, the ControllerSupervisor and the Logical Control Loop. Using information from the ControllerSupervisor, it selects either automatic or jog mode. In jog mode, MotionSupervisor provides axes to moves, direction and feed rates. In automatic and in semiautomatic mode, instructions on movement will come from the G-Code interpreter. The MotionSupervisor also collects error messages coming from the MotionControl Loop and sends them to the ControllerSupervisor. ControllerSupervisor centralizes all the information related to Orchestra Control Engine. It receives information from the HMI, the teach pendant and other software components. Such information is sorted to the other components even if direct channels of communication among the various components for the specific information interchange are foreseen. ControllerSupervisor sends error messages to OrchestraHMI. Local errors are handled in the software components in which they take place. Errors beyond the local level are handled by the ControllerSupervisor instigating a safety procedure and or showing the error to the user. ;Orchestra for Open Robot Controllers Orchestra for Open Robot Controllers allows the feasibility of innovative industrial robot algorithms to be tested. It can integrate advanced sensors and functions. Its interface with a personal computer is via OrchestraCore. Its function is generally one of realization of movement rather than the logic of control and the generation of trajectory.


Release history

Orchestra Control Engine {, class="wikitable" border="1" , - ! Version ! Release date , - , v1.0-beta1 , 2007, Jul 16 , - , v1.0-beta2 , 2007, Oct 9 , - , v1.0-beta2.1 , 2007, Oct 29 , - , v1.0-beta2.2 , 2007, Nov 15 , - , v1.0 , 2007, Dec 21 , - , v1.0-1 , 2008, Jan 28 , - , v1.0-2 , 2008, Apr 1 , - , v1.1 , 2008, May 22 , - , v1.5 , 2008, Jul 22 , - , v1.5-1 , 2008, Oct 20 , - , v1.5-2 , 2008, Oct 28 , - , v1.5-3 , 2008, Nov 12 , - , v2.0 , 2008, Dec 19 , - , v2.0-1 , 2009, Feb 20 , - , v2.0-2 , 2009, Apr 10 , - , v2.0-3 , 2009, Jun 3 , - , v2.5 , 2009, Jul 31 , - , v2.6 , 2009, Oct 30 , - , v3.0 , 2010, Mar 30 , - , v3.0-1 , 2010, Oct 5 , - , v3.5 , 2010, Dec 21 , - , v3.5-1 , 2011, Jan 26 , - , v3.5-2 , 2011, Jul 27 , - , v3.6 , 2012, Jul 11 , -


See also

*
RTAI Real-time application interface (RTAI) is a real-time computing, real-time extension for the Linux kernel, which lets users write applications with strict timing constraints for Linux. Like Linux itself the RTAI software is a community effort. ...
*
Numerical control Numerical control (also computer numerical control, and commonly called CNC) is the automated control of machining tools (such as drills, lathes, mills, grinders, routers and 3D printers) by means of a computer. A CNC machine processes a pi ...
* G-code


External links


Orchestra Control Engine Official WebsiteSintesi SpA WebsiteOrchestra Control Engine at Icra '07
Video
Orchestra Control Engine at Feimafe '07
Video
Italian National Research CouncilRTAI Official Website
Real-time computing Control engineering Industrial automation