Explore chapters and articles related to this topic
Programming Languages
Published in David R. Martinez, Robert A. Bond, Vai M. Michael, High Performance Embedded Computing Handbook, 2018
The elimination of the need to manage memory in Java has two important effects. First, Java does not include pointers or bit-level manipulation capability. Thus, device drivers must be written in a lower-level language like C. Second, Java introduces a garbage collection mechanism that is responsible for de-allocating memory that is no longer needed by the application. This garbage collection mechanism may run at unpredictable times and can, therefore, be a detriment to obtaining repeatable performance. Sun’s real-time specification for Java corrects this by providing threads that cannot be interrupted by garbage collection (Bollella et al. 2000). The combination of high-productivity features and real-time performance makes the real-time Java specification an attractive possibility for high performance embedded systems.
An overview of current technologies and emerging trends in factory automation
Published in International Journal of Production Research, 2019
Mariagrazia Dotoli, Alexander Fay, Marek Miśkowicz, Carla Seatzu
As regards the first class of approaches, object-orientation has promised to increase re-use of software and gained wide acceptance among general software developers. Consequently, the idea to combine object-oriented design and automation system programming has been developed, and some object-oriented features have been included recently in the third edition of the IEC 61131-3 standard for automation system programming. However, support by tool vendors and acceptance within the automation domain is still limited (Thramboulidis 2006). With the same intention to improve re-use (R9), Component-Based Software and Service-Oriented Architectures (SOA, see Thramboulidis 2006 for a detailed discussion of SOA in automation) have been proposed. Multi-Agent-Systems (MASs, see Section 5) can similarly be regarded as a means to structure software in loosely-coupled components to improve re-use and change of software (R8, R9). As an alternative to existing automation systems, Basanta-Val and Garcia-Valls (2014) present a real-time Java-centric architecture for industrial systems and prove its performance.
Feature-based function block control framework for manufacturing equipment in cloud environments
Published in International Journal of Production Research, 2019
Göran Adamson, Lihui Wang, Philip Moore
A rather common Function Block application is the system design of autonomous distributed systems with intelligent control components. Early research on using Function Blocks describes holonic control (Wang et al. 2001). Other examples of how IEC 61499 has been studied and discussed in the research literature are: an automatic verification of industrial control systems based on function block technology (Völker and Krämer 2002), the development of an architecture for Function Block-oriented engineering support systems (Thramboulidis and Tranoris 2001) and reconfigurable concurrent Function Block models and their implementations using real-time Java (Brennan et al. 2002).