A CPA's Notes on Electronics by Calvin Fetzek

A CPA's notes on Electronics

Aeroscript to PLC Sequencial Function Chart Converter

Project Target

The aim of the project is to build a program that will automate the conversion of AeroScript code written for machines built by AeroTech to a sequencial function charts commonly used in other PLC programming software to:

  1. Visualize the sequence of commands.
  2. Allow easy transition between machines that use different proprietary PLC languages.

Intended Use Cases

Design Overview

The software is entirely written in C++. It takes in AeroScirt source code copied to a text file and parses the text file based on AeroScript syntax. The parsed data then is sent over to five classes: Network, Node, Step, Transition, and Command. These classes represent the components of a Sequencial Function Chart defined in IEC 61131-3.

Once the classes are fiiled in, the sequencial function chart output is generated as a .csv file for ease of extraction when copying the data onto other proprietary PLC software.

Overview of data flow is provided in figure 1.

Data Flow Overview of Aeroscript to SFC converter

Figure 1: Data Flow Overview of Aeroscript to SFC converter.

Demonstration

The sequencial function chart output generated from passing the AeroScript Cycle Motion Example Program is also shown above in figure 1.

Notes

As of September 2024, this software cannot handle iterative commands exceeding three nested loops (which is commonly seen in industry). This is due to how the parsed taxt files are stored in each class. Design of a new version of software which allows conversion of more complex operations with GUI for easier interaction is in process.

References

  1. B. Fernández Adiego et al., "Applying Model Checking to Industrial-Sized PLC Programs," in IEEE Transactions on Industrial Informatics, vol. 11, no. 6, pp. 1400-1410, Dec. 2015, doi: 10.1109/TII.2015.2489184.

  2. N. Berezowski and M. Haid, "How to Use a Graphical Programming Language in Functional Safety, using the Example of Lab VIEW," 2020 IEEE International RF and Microwave Conference (RFM), Kuala Lumpur, Malaysia, 2020, pp. 1-4, doi: 10.1109/RFM50841.2020.9344729.

  3. Kabra, A. Bhattacharjee, G. Karmakar and A. Wakankar, "Formalization of sequential function chart as synchronous model in LUSTRE," 2012 3rd National Conference on Emerging Trends and Applications in Computer Science, Shillong, India, 2012, pp. 115-120, doi: 10.1109/NCETACS.2012.6203309.

Acknowledgements

I would like to thank Dr. Joseph Profeta from the University of Pittsburgh with mentorship and advice on design of this project.