自动控制网—学习自动控制技术电气自动化技术从这里开始!
当前位置: 自动控制网 > 自动化 > PLC >

PLC的程序特点

时间:2018-07-31 17:31来源:www.eadianqi.com 编辑:自动控制网
PLC的程序规模都不大,一般才几千字节,能上万字节就算很大的程序了。PLC有许多输入输出接口,以及各种类型的变量,这些都需要专门设置地址,以便在程序中使用。 我们看下图,此图是用PLC国际通用标准IEC61131-3模块化编程语言写成的: 图1 某地铁配电控制系
PLC的程序规模都不大,一般才几千字节,能上万字节就算很大的程序了。PLC有许多输入输出接口,以及各种类型的变量,这些都需要专门设置地址,以便在程序中使用。
我们看下图,此图是用PLC国际通用标准IEC61131-3模块化编程语言写成的:
某地铁配电控制系统PLC的输入接口参数定义程序和延迟判误程序
图1  某地铁配电控制系统PLC的输入接口参数定义程序和延迟判误程序
在图1中,大家在左侧看到了许多输入参量,它们的末尾都有_s的标识,这些就是开关量输入参数,它们不但有地址,还有名称。这是必须的,否则程序无法辨识和使用它们。
由图1的程序看到,这种编程方法比所谓的C语言方便得多。事实上,每一个功能块就相当于一段C语言。例如TON模块,它是延迟模块,如果用C语言,怎么也要若干语句行,但这里仅仅只是一个程序模块而已。何者更方便一看便知。
自动控制网www.eadianqi.com版权所有

再看下图:
PLC的16位字解析为单个开关量的程序段
图2  PLC的16位字解析为单个开关量的程序段
图2中,程序开头的AND(与逻辑模块)实施程序转移。当条件满足时,AND启动子程序入口。在图2中,我们看到了UNPACK16模块,它的任务是把一个16位的字解析为16个开关量,供下一步程序使用。
我们很容易想到,这个UNPACK16模块若用C语言来写,又会有何种形式?何者更方便?
我们看下图:
数据交换的RS485接口定义和MODBUS通信管理
图3   数据交换的RS485接口定义和MODBUS通信管理
图3是PLC对系统中各种数据交换的定义、数据采集和管理。图中的一个个模块就是处理MODBUS通信协议数据的,同时还实现数据采集轮巡操作。 这些模块用C语言该如何写?是不是会麻烦很多?我们看到,PLC程序的便捷性是C语言无法比拟的。
本文来自www.eadianqi.com

本文已影响