Cloud Based IOPT Petri Net Simulator to Test and Debug Embedded System Controllers

  • Fernando PereiraEmail author
  • Luis Gomes
Conference paper
Part of the IFIP Advances in Information and Communication Technology book series (IFIPAICT, volume 450)


IOPT-Tools is a cloud based integrated development environment to the design of embedded system controllers and other digital systems, employing the IOPT Petri net modeling formalism. The tools include a graphical editor, a state-space based model-checking subsystem and automatic code generators to deploy the controllers on the target hardware platforms. This paper presents a new Simulator tool that offers the capability to execute embedded system controllers based on IOPT models in a Web browser. To allow the test and debug of embedded system controllers, the Simulator provides options to manipulate the value of input signals, step by step execution, and continuous execution with programmed step frequency and breakpoint definition. Simulation history is recorded, continuously storing information about the entire system state, to enable playback and history navigation. History data can later be exported in spreadsheet format for analysis with external tools and waveform drawing. The tool can be accessed from


Embedded systems Cloud based tools Petri nets 


  1. 1.
    Pereira, F., Moutinho, F., Gomes, L.: IOPT-Tools - Towards cloud design automation of digital controllers with Petri nets. In: ICMC 2014 International Conference on Mechatronics and Control, July 3-5, Jinzhou, China (2014)Google Scholar
  2. 2.
    Gomes, L., Barros, J., Costa, A., Nunes, R.: The Input-Output Place-Transition Petri Net Class and Associated Tools. In: Proceedings of the 5th IEEE International Conference on Industrial Informatics (INDIN 2007), Vienna, Austria, July 2007Google Scholar
  3. 3.
    Reisig, W.: Petri nets: an introduction. Springer, New York (1985)Google Scholar
  4. 4.
    Pereira, F., Moutinho, F., Gomes, L.: IOPT Tools User Manual - Version 1.1. FCT/UNL, Lisbon (2014).
  5. 5.
    Zakas, N.C., McPeak, J., Fawcett, J.: Professional Ajax, 2nd edn. Wiley (2007) ISBN 1-4571-0715-5Google Scholar
  6. 6.
    Pereira, F., Gomes, L.: Minimalist Architecture to Generate Embedded System Web User Interfaces. In: Camarinha-Matos, L.M., Tomic, S., Graça, P. (eds.) DoCEIS 2013. IFIP AICT, vol. 394, pp. 239–249. Springer, Heidelberg (2013)Google Scholar
  7. 7.
    Pereira, F., et al.: Web based IOPT Petri net Editor with an extensible plugin architecture to support generic net operations. In: IECON 2012-38th Annual Conference on IEEE Industrial Electronics Society. IEEE (2012)Google Scholar
  8. 8.
    Pereira, F., Moutinho, F., Gomes, L.: Model-checking framework for embedded systems controllers development using IOPT Petri nets. In: 2012 IEEE International Symposium on Industrial Electronics (ISIE), pp. 1399–1404. IEEE, May 2012Google Scholar
  9. 9.
    Pereira, F., Gomes, L.: Automatic synthesis of VHDL hardware components from IOPT Petri net models. In: IECON 2013-39th Annual Conference of the IEEE Industrial Electronics Society, pp. 2214–2219. IEEE, November 2013Google Scholar
  10. 10.
    Wiśniewski, R., Stefanowicz, Ł., Bukowiec, A., Lipiński, J.: Theoretical Aspects of Petri Nets Decomposition Based on Invariants and Hypergraphs. In: Park, J.J.H., Chen, S.-C., Gil, J.-M., Yen, N.Y. (eds.) Multimedia and Ubiquitous Engineering. LNEE, vol. 308, pp. 371–376. Springer, Heidelberg (2014)Google Scholar
  11. 11.
    Sadilek, D.A., Wachsmuth, G.: Prototyping Visual Interpreters and Debuggers for Domain-Specific Modelling Languages. In: Schieferdecker, I., Hartman, A. (eds.) ECMDA-FA 2008. LNCS, vol. 5095, pp. 63–78. Springer, Heidelberg (2008)Google Scholar
  12. 12. Scholar
  13. 13.
    Jensen, K.: Coloured Petri Nets. Basic Concepts, Analysis Methods and Pratical Use, vol. 1. Basic Concepts. Springer, Berlin (1997)Google Scholar
  14. 14.
    Hamez, A., Hillah, L., Kordon, F., Linard, A., Paviot-Adet, E., Renault, X., Thierry-Mieg, Y.: New features in CPN-AMI 3: focusing on the analysis of complex distributed systems. In: Sixth International Conference on Application of Concurrency to System Design, ACSD 2006, June 28–30, pp. 273–275 (2006). doi: 10.1109/ACSD.2006.15Google Scholar
  15. 15.
    Kummer, O., Wienberg, F., Duvigneau, M., Cabac, L.: Renew – User Guide, University of Hamburg, Dept for Informatics, Theoretical Foundations Group, Rel. 2(2) (August 28, 2009)Google Scholar
  16. 16.
    Gomes, L., Lourenco, J.: Rapid Prototyping of Graphical User Interfaces for Petri-Net-Based Controllers. IEEE Transactions on Industrial Electronics 57, 1806–1813 (2010)Google Scholar
  17. 17.
    Programmable controllers - Part 3: Programming languages. IEC International Standard 61131-3 ed3.0, 2013-02-20Google Scholar
  18. 18.
    Tidwell, D.: XSLT - Mastering XML Transformations, 2nd edn.. O’Reilly Media (June 2008) ISBN 978-0-596-52721-1Google Scholar
  19. 19.
    Billington, J., Christensen, S., van Hee, K.M., Kindler, E., Kummer, O., Petrucci, L., Post, R., Stehno, C., Weber, M.: The Petri Net Markup Language: Concepts, Technology, and Tools. In: van der Aalst, W.M., Best, E. (eds.) ICATPN 2003. LNCS, vol. 2679, pp. 483–505. Springer, Heidelberg (2003)Google Scholar
  20. 20.
    Scalable Vector Graphics (SVG) 1.1, 2nd edn., W3C Recommendation (August 16, 2011)

Copyright information

© IFIP International Federation for Information Processing 2015

Authors and Affiliations

  1. 1.Universidade Nova de Lisboa - Faculdade de Ciências e TecnologiaLisboaPortugal
  2. 2.ISEL, Instituto Superior de Engenharia de LisboaLisboaPortugal
  3. 3.UNINOVA – CTSLisboaPortugal

Personalised recommendations