Programming logic controllers (PLC) using ladder and structured control language (SCL) in MATLAB


  • Heyder David Páez-Logreira Universidad de la Costa
  • Ronald Zamora-Musa Universidad de la Costa
  • José Bohórquez-Pérez Universidad de la Costa



MATLAB, Simulink PLC Coder, LADDER, function Block FB, PLC


There are different programming languages for Programmable Logic Controllers (PLC), the most common of these is the graphical programming language called LADDER. However, LADDER is not friendly in programs requiring calculations of mathematical equations, for example, to calculate the volume of a tank on level control situations. Alternative languages such as Structured Control Language (SCL) are less studied because of their complexity and unpopular in small and medium industry. In this article, the results LADDER programming language and language are compared with SCL generated by Simulink PLC Coder MATLAB tool taking as a case study the calculating the volume of a tank. Finally, this work shows that the Simulink PLC Coder tool presents an alternative to more efficient development.


Download data is not yet available.


Y.-C. Wu y C.-F. Fan, «Automatic test case generation for structural testing of function block diagrams», Inf. Softw. Technol., vol. 56 (10), pp. 1360-1376, oct. 2014.

A. Mader, «A Classification of PLC Models and Applications», en Discrete Event Systems, vol. 569, R. Boel y G. Stremersch, Eds. Springer US, 2000, pp. 239-246.

L. Wang, G. Adamson, M. Holm, y P. Moore, «A review of function blocks for process planning and control of manufacturing equipment», J. Manuf. Syst., vol. 31 (3), pp. 269-279, 2012.

International Electrotechnical Commission, «IEC 61499-1: Function Blocks - Part 1 Architecture», Int. Stand. First Ed. Geneva, vol. 1, 2005.

I. E. Commission, «Programmable Controllers - Part 3: Programming languages», vol. 3, 2003.

N. Völker y B. J. Krämer, «Automated verification of function block-based industrial control systems», Sci. Comput. Program., vol. 42 (1), pp. 101-113, 2002.

C. Yuan y P. Ferreira, «An integrated rapid prototyping environment for reconfigurable manufacturing systems», en ASME 2003 International Mechanical Engineering Congress and Exposition, 2003, pp. 737-744.

C. Yuan y P. Ferreira, «An integrated environment for the design and control of deadlock - free flexible manufacturing cells», en ASME 2004 International Mechanical Engineering Congress and Exposition, 2004, pp. 471-481.

K. Thramboulidis y C. Tranoris, «An architecture for the development of function block oriented engineering support systems», en Computational Intelligence in Robotics and Automation, 2001. Proceedings 2001 IEEE International Symposium on, 2001, pp. 536-542.

C. Yang y V. Vyatkin, «Transformation of Simulink models to IEC 61499 Function Blocks for verification of distributed control systems», Control Eng. Pract., vol. 20 (12), pp. 1259-1269, dic. 2012.

V. Vyatkin, IEC 61499 function blocks for embedded and distributed control systems design. ISA-Instrumentation, Systems, and Automation Society, 2007.

A. D. Kshemkalyani y M. Singhal, Distributed computing: principles, algorithms, and systems. Cambridge University Press, 2008.

J. Peltola, J. Christensen, S. Sierla, y K. Koskinen, «A migration path to IEC 61499 for the batch process industry», en Industrial Informatics, 2007 5th IEEE International Conference on, 2007, vol. 2, pp. 811-816.

MathWorks, «Simulink PLC Coder». [En línea]. Disponible en: [Accedido: 02-dic-2014].

M. Bonfè, C. Fantuzzi, y C. Secchi, «Design patterns for model-based automation software design and implementation», Control Eng. Pract., vol. 21 (11), pp. 1608-1619, 2013.

C. Yang y V. Vyatkin, «Model transformation between MATLAB simulink and Function Blocks», en Industrial Informatics (INDIN), 2010 8th IEEE International Conference on, 2010, pp. 1130-1135.

C. H. Yang y V. Vyatkin, «Automated Model Transformation between MATLAB Simulink/Stateflow and Function Blocks», en 13th IFAC Symposium on Information and Control in Manufacturing (INCOM’09), Moscow, 2009, vol. 13, pp. 205-210.

Siemens, «Structured Control Language (SCL) for S7-300/S7-400 Programming». [En línea]. Disponible en: [Accedido: 02-dic-2014].

L. R. Peñalver, D. G. Arroniz, A. R. Canales, M. J. Buendía, y J. M. Martínez, «Sistema de automatización y telecontrol mediante microcontroladores para la gestión del riego de cultivos en maceta con lisímetros de pesada.», presentado en VII Congreso Ibérico de Agroingeniería y Ciencias Hortícolas, Madrid, 2013, p. 52.

H. Berger, Automating with SIMATIC: Controllers, Software, Programming, Data. John Wiley & Sons, 2012.



How to Cite

Páez-Logreira, H. D., Zamora-Musa, R., & Bohórquez-Pérez, J. (2015). Programming logic controllers (PLC) using ladder and structured control language (SCL) in MATLAB. Revista Facultad De Ingeniería, 24(39), 109–119.