2013
Authors
De Sousa, M; Sobreira, H;
Publication
IEEE International Conference on Emerging Technologies and Factory Automation, ETFA
Abstract
ROS (Robot Operating System) is a framework for the development of robotic applications widely used throughout research community due to its modular architecture and distributed nature. Using this framework a robot application consists of several nodes that exchange data over a common middle-ware. Programming new nodes is done by using a ROS API (application programming interface) on one of the available programming languages, such as C++ and python. It is our intention to build a robot that needs to be partially programmed in IEC 61131-3, allowing the end-user to adapt it to any specific industrial environment. In this work we have specified a mapping between the concepts defined in IEC 61131-3 and ROS, and started implementing a library through which IEC 61131-3 programs may co-ordinate their actions with the remaining ROS based robotic application. © 2013 IEEE.
2014
Authors
Groesbrink, S; Almeida, L; de Sousa, M; Petters, SM;
Publication
2014 IEEE 20TH REAL-TIME AND EMBEDDED TECHNOLOGY AND APPLICATIONS SYMPOSIUM (RTAS)
Abstract
Hypervisor-based virtualization provides a natural way to integrate formerly distinct systems into a single mixed-criticality multicore system by consolidating in separated virtual machines. We propose an adaptive computation bandwidth management for such architectures, which is compatible with a potential certification based on the guarantee of specified bandwidth minimums and the isolation of overruns of virtual machines. This management uses periodic servers and an elastic task model to combine analyzability at design time with adaptability at runtime. Mode changes or early termination of VMs trigger a resource redistribution that reassigns spare capacity. In this paper we focus on the integration of an adaptive reservation policy into a virtualization software stack and the co-design of hypervisor and paravirtualized guest operating system. In a concrete implementation on a PowerPC 405, the bandwidth distribution policy incurred in a memory footprint below 2.7KB and a worst-case execution time for the redistribution function below 4 microseconds for realistic low numbers of VMs. Simulations over synthetically generated sets of VMs with random mode changes showed a gain of 13% of computation bandwidth when compared to an approach with fixed partitions and provided a relative error of allocated bandwidth to desired bandwidth 4 times lower.
2013
Authors
de Sousa, M;
Publication
Lecture Notes in Mechanical Engineering
Abstract
The IEC 61508 standard recognizes the programming languages defined in IEC 61131-3 as being appropriate for safety-related applications, and suggests the use of static analysis techniques to find errors in the source code. In this context, we have added a semantic verification stage to the MatIEC compiler—an open source ST, IL, and SFC code translator to ANSI C. In so doing, we have identified several issues related to the definition of the semantics of the IL and ST programming languages, as well as with the data type model defined in IEC 61131-3. Most of the issues are related to undefined semantics, which may result in applications generating distinct results, depending on the platform on which they are executed. In this paper we describe some of the issues we uncovered, explain the options we took, and suggest how the IEC 61131-3 standard could be made more explicit. © Springer International Publishing Switzerland 2013.
2015
Authors
de Sousa, M; Chrysoulas, C; Homay, AE;
Publication
PROCEEDINGS 2015 IEEE INTERNATIONAL CONFERENCE ON INDUSTRIAL INFORMATICS (INDIN)
Abstract
TIEC 61499 defines an execution model for distributed industrial control applications, i.e. a single application distributed among several devices. In such an environment partial failures are likely to occur. In order to avoid probable system malfunctions and breakdowns due to partial failures, the authors have previously proposed a framework where the concept of replication may be applied to the IEC 61499 execution model. This paper focuses on describing an implementation of this replication framework on the FORTE IEC 61499 execution platform, along with the results of the first tests of the implementation. A set-up for the full validation of the approach is also described.
2015
Authors
de Sousa, M;
Publication
PROCEEDINGS 2015 IEEE INTERNATIONAL CONFERENCE ON INDUSTRIAL INFORMATICS (INDIN)
Abstract
One of the aspects that affects the reliability of a software application is the programming language used for its development. In industrial automation applications, the most commonly used languages are those defined in the IEC 61131-3 standard. This work contains an analysis of the semantics of ST and IL expressions, and highlights ambiguities in the standard that might lead to seemingly correct code being executed and evaluated differently in distinct IEC 61131-3 execution environments. Examples of code that may be evaluated to different results are given, and an evaluation of several commercially available IEC 61131-3 compilers is made and compared. A static code analyzer was developed capable of identifying legal IEC 61131-3 code that may result in ambiguous behavior, and this analyzer was used to test source code currently in use in real-world control applications.
2015
Authors
de Sousa, M; Chrysoulas, C; Homay, AE;
Publication
2015 IEEE WORLD CONFERENCE ON FACTORY COMMUNICATION SYSTEMS (WFCS)
Abstract
In a modern industrial environment control programs are distributed among several devices. This raises new issues and challenges especially in failure modes. Building fault tolerant applications can be the solution in order a failure of one sub-component not to jeopardize the execution of the whole application. The authors have proposed a framework to support replicated IEC 61499 applications. In this paper we augment this framework with the support for different voting strategies, propose an extension of the replication communication protocol, and analyse the resulting fault-tolerance semantics. A limited implementation of the framework is also described.
The access to the final selection minute is only available to applicants.
Please check the confirmation e-mail of your application to obtain the access code.