Preferencje help
Widoczny [Schowaj] Abstrakt
Liczba wyników
Powiadomienia systemowe
  • Sesja wygasła!

Znaleziono wyników: 7

Liczba wyników na stronie
first rewind previous Strona / 1 next fast forward last
Wyniki wyszukiwania
help Sortuj według:

help Ogranicz wyniki do:
first rewind previous Strona / 1 next fast forward last
1
Content available remote Exception Handling in Programmable Controllers with Denotational Model
EN
The paper introduces a customized approach to handle failures in IEC 61131-3 programmable controllers. The solution assumes the utilization of a virtual machine as a runtime environment to execute control code in an isolated manner. A formal model of the runtime is presented, employing denotational semantics. Subsequently, the model is expanded by incorporating new procedures that enable the handling of runtime exceptions using ST code constructs. This formal model serves as the foundation for implementing the exception infrastructure in the CPDev development environment. The research presented in the paper, driven by industry demands, aims to facilitate the development of more reliable and resilient control systems, capable of effectively dealing with failures.
PL
W artykule przedstawiono wyniki badań dotyczących obsługi typów danych z normy PN-EN 61131-3 w układach o architekturze ARM. Badania wykonano dla kilku różnych platform sprzętowych z jednostkami centralnymi z serii Cortex-M i Cortex-A. Testy przeprowadzono w oparciu o środowisko CPDev do tworzenia i uruchamiania oprogramowania sterującego. Ze względu na ograniczenia architektury ARM opracowano trzy metody dostępu do pamięci, a wyniki pozwoliły określić najefektywniejszą. W artykule przedstawiono także proponowane rozszerzenie maszyny wirtualnej CPDev z nowymi instrukcjami, dzięki którym operacje na danych w rozwiązaniach o architekturze ARM działają bardziej wydajnie.
EN
The article presents the results of research on the handling of data types from the PN-EN 61131-3 standard in systems with ARM architecture. The tests were carried out on several different hardware platforms with the Cortex-M and Cortex-A series as CPUs. The research was carried out on the basis of the CPDev environment for creating and running control software. Due to the limitations of the ARM architecture, three methods of access to memory have been developed, and the results allow to determine the most effective. The article also presents the proposed virtual machine extension with new instructions to make data operations in ARM solutions more efficient.
EN
Design and operation of a compiler and virtual machine, being the essential components of a multiplatform control programming environment, are presented. The compiler translates source programs written in Structured Text language of the IEC 61131-3 standard into executable code in a dedicated intermediate language. The virtual machine, i.e. a specially designed processor implemented in software, is a runtime part of the environment executing the code in real time. Due to memory-to-memory operation principle the machine is able to process various data types defined in the standard. The focus is given on overloading and extensibility of the functions, as well as on uniform invocations of Program Organization Units. By selection of addressing mode, the environment can be deployed on multiple hardware platforms, beginning from 8-bit microcontrollers up to 32/64-bit industrial PCs. Industrial applications are indicated.
4
Content available remote Denotational Model and Implementation of Scalable Virtual Machine in CPDev
EN
Denotational semantic model and its implementation in C/C++ are presented for a virtual machine executing programs written in the CPDev development environment according to IEC 61131 standard. Programs written in IEC ST language are compiled to control-oriented intermediate language designed specifically for the machine. The machine is scalable in the sense that may be adjusted both to efficient and restricted hardware platforms by a configuration file which defines address size, available data types, and instructions. Architecture of the machine and its operation are represented by formal semantic model which assigns abstract algebraic objects to denote machine behaviour. Execution of intermediate language instructions is described in details by denotational semantic equations followed strictly by C/C++ implementations to assure reliability of the machine.
PL
W artykule przedstawiono badania wydajności wykonywania przez mikrokontrolery STM32 kodu dla maszyny wirtualnej (tzw. kodu pośredniego) dedykowanej dla systemów sterowania. Architektura ARM zastosowana w tych układach odznacza się ograniczeniami związanymi z dostępem do niewyrównanych adresów. Zaproponowano trzy sposoby wyeliminowania tych ograniczeń, a każdy z nich poddano zestawowi testów mających ustalić ich wydajność. Testy przeprowadzono dla dwóch trybów działania, tj. z 16- i 32-bitowym adresowaniem dla różnych generacji układów. Wyniki testów pozwalają dobrać właściwe rozwiązanie dla określonej platformy.
EN
The article presents performance tests of code executed by STM32 microcontrollers using a virtual machine (so-called intermediate code) dedicated to control systems. The ARM architecture used in these chips has limitations related to access to non-aligned addresses. Three ways to overcome these limitations have been proposed, and each has been subjected to a suite of tests to determine their performance. Tests were conducted for two operating modes, i.e. with 16- and 32-bit addressing for different generations of chips. The test results allow to choose the right solution for a specific platform.
PL
Norma IEC 61131-3 definiuje pięć języków programowania sterowników przemysłowych. Norma ta jest powszechnie stosowana, wiele środowisk inżynierskich jest z nią całkowicie, bądź częściowo zgodnych. W literaturze opisano kilka akademickich rozwiązań, jednak zazwyczaj implementują one jedynie wybrane elementy normy (np. tylko jeden lub dwa języki). Komercyjne środowiska inżynierskie zwykle obsługują wszystkie języki, ale ich dokumentacja skupia się na korzystaniu ze środowiska, natomiast rzadko ujawniane są szczegóły dotyczące wewnętrznej architektury i implementacji. W artykule przedstawiono takie rozwiązania dla pakietu inżynierskiego CPDev. Architektura bazująca na maszynie wirtualnej sprawia, że środowisko jest przenośne, co ułatwia wdrożenie na różnych platformach sprzętowych. W artykule przedstawiono kilka wdrożeń przemysłowych środowiska CPDev.
EN
The IEC 61131-3 standard defines five languages, dedicated for programming industrial controllers. The standard is commonly used, there are numerous engineering environments fully or partially compatible with it. Several academic solutions have been described in the literature, but they typically implement only selected parts of the IEC 61131-3 standard (e.g. only one or two languages). On the other hand, commercial engineering environments usually implement all languages, but their documentation focuses on the application of the environment, whereas details about internal architecture and implementation are rarely disclosed. The paper describes such internal details of the CPDev engineering environment. The architecture based on the virtual machine makes the environment portable, thus facilitate implementation on diverse hardware platforms. Several industrial implementations of CPDev are also mentioned.
7
Content available Developing a multiplatform control environment
EN
IEC 61131‐3 control environment is called multiplatform if source programs can be executed by various processors, beginning from 8‐bit microcontrollers up to 32/64‐ bit efficient CPUs. This implies that virtual machine (VM), i.e. a software implemented processor, is used as runtime by the host CPU. The VM executes certain intermediate code into which IEC 61131‐3 programs are compiled. En‐ vironment of this type called CPDev has been gradually developed by the authors over the last decade, beginning with initial report in this journal in 2008 [47]. However, technical implementations of its functionalities have not been described so far. This involves such matters as intermediate language, parametrization of the compiler and VM, multiproject runtime, translators of graphical languages, device‐independent HMI, target platform and communication interfacing, which are presented in compact form in this paper. Some characteristic industrial implementations are indicated.
first rewind previous Strona / 1 next fast forward last
JavaScript jest wyłączony w Twojej przeglądarce internetowej. Włącz go, a następnie odśwież stronę, aby móc w pełni z niej korzystać.