PLC的程序结构及其特点

时间:2023-03-04作者:佚名

下面介绍几种常见的plc的程序结构及其特点:
  1.某些国外的小型PLC的程序结构
  这些PLC的用户程序由主程序、子程序和中断程序组成。在每一个扫描循环周期,CPU都要调用一次主程序。主程序可以调用子程序,小型控制系统可以只有主程序。中断程序用于快速响应中断事件。在中断事件
发生时,CPU将停止执行当时正在处理的程序或任务,去执行用户编写的中断程序。执行完中断程序后,继续执行被暂停执行的程序或任务。它们的子程序和中断程序没有局部变量,子程序没有输入、输出参数。

PLC的程序结构及其特点
 2.西门子的S7-200的程序结构
  过程映像输入/输出(I/Q)、变量存储器V、内部存储器位M、定时器T、计数器C等属于全局变量。S7-200的程序组织单元(ProgramOrganizationalUnit,简称为POU)包括主程序、子程序和中断程序。每个POU均有
自己的64字节局部变量,局部变量只能在它所在的POU中使用。与此相反,全局变量可以在各POU中使用。
  下面是子程序可以使用的局部变量:
  1)TEMP(临时变量)是暂时保存在局部数据区中的变量。只有在执行该POU时,定义的临时变量才被使用,POU执行完后,不再保存临时变量的数值。
  2)IN是由调用它的POU提供的输入参数。
  3)OUT是返回给调用它的POU的输出参数(子程序的执行结果)。
  4)IN_OUT是输入_输出参数,其初始值由调用它的POU传送给子程序,并用同一变量将子程序的执行结果返回给调用它的POU。
  主程序和中断程序的局部变量中只有临时变量TEMP。
  具有输入、输出参数和局部变量的子程序易于实现结构化编程,对于长期生产同类设备或生产线的厂家尤为有用。这些厂家的编程人员为设备的各组件或工艺功能编写了大量的通用的子程序。即使不知道子程序
的内部代码,只要知道子程序的功能和输入、输出参数的意义,就可以通过程序之间的调用快速“组装”出满足不同用户要求的控制程序。就好像用数字集成电路芯片组成复杂的数字电路一样。
  子程序如果没有输入、输出参数,它和调用它的程序之间没有清晰的接口,很难实现结构化编程。
  子程序如果没有局部变量,它和调用它的程序之间只能通过全局变量来交换数据,子程序内部也只能使用全局变量。将子程序和中断程序移植到别的项目时,需要重新统一安排它们使用的全局变量,以保证不会出现地址冲突。当程序很复杂,子程序和中断程序很多时,这种重新分配地址的工作量非常大。
  如果子程序和中断程序有局部变量,并且它们内部只使用局部变量,不使用全局变量,因为与其他POU没有地址冲突,不需作任何改动,就可以将子程序移植到别的项目中去。
  3.西门子的S7-300/400的程序结构
  S7-300/400将子程序分为功能(Function,或称为函数)和功能块(FunctionBlock)。
  S7-300/400的功能与S7-200的子程序基本上相同。它们均有输入、输出参数和临时变量,功能的局部数据中的返回值实际上属于输出参数。它们没有专用的存储区,功能执行结束后,不再保存临时变量中的数据可以用全局变量来保存那些在功能执行结束后需要保存的数据,但是会影响到功能的可移植性。 功能块是用户编写的有自己专用的存储区(即背景数据块)的程序块,功能块的输入、输出参数和静态变量存放在指定的背景数据
  可以用全局变量来保存那些在功能执行结束后需要保存的数据,但是会影响到功能的可移植性。
  功能块是用户编写的有自己专用的存储区(即背景数据块)的程序块,功能块的输入、输出参数和静态变量存放在指定的背景数据块中,临时变量存储在局部数据堆栈中。每次调用功能块时,都要指定一个背景数据块。功能块执行完后,背景数据块中的数据不会丢失,但是不会保存局部数据堆栈中的数据。
  功能块采用了类似于C 的封装的概念,将程序和数据封装在一起,具有很好的可移植性。
  S7-300/400的共享数据块可供所有的逻辑块使用。
  4.IEC61131-3的程序结构
  IEC61131-3是PLC的编程语言标准。IEC61131-3是世界上第一个,也是至今为止唯一的工业控制领域的编程语言标准。IEC61131-3有三种POU:程序、功能块和功能。
  功能是有多个输入参数和一个输出参数(返回值)的POU,返回值的名称与功能的名称相同,需要定义返回值的数据类型。调用具有相同输入值的功能总是返回相同的结果。功能可以调用其他功能,但是不能调用功能块或程序。功能可定义的局部变量有VAR和VAR_INPUT。
  功能块是有多个输入/输出参数和内部存储单元的POU,功能块的输出参数值与其内部存储单元的值有关。功能块可以调用其他功能 块或功能,但是不能调用程序。 在调用功能块之前,必须在要调用功能块的POU中为每次调用声明功能块的实例,操作系统将为每次调用分配功能块专用的存储区
  (类似于S7-300/400的背景数据块)。

相关阅读

电缆穿楼板防火封堵的正确姿势,你掌握了吗?

在建筑施工中,电缆穿楼板封堵是一个至关重要的环节,它不仅关系到电气安全,更是建筑消防安全的重要组成部分。今天,我们就来聊聊电缆穿楼板封堵的正确方法及其优缺点,帮助大家在施...
2024-09-19
电缆穿楼板防火封堵的正确姿势,你掌握了吗?

电力安全工器具使用规范,你做对了吗?

电力安全工器具使用前,应检查确认绝缘部分无裂纹,无老化、无绝缘层脱落、无严重伤痕等现象以及固定连接部分无松动、无锈蚀、无断裂等现象。对其绝缘部分的外观有疑问时应经...
2023-06-11

西门子S7-200PLC如何控制运行停止模式

使用下列一种方法改变 plc 操作模式: ?点击“运行” 按钮,进入 RUN(运行)模式,或点击“停止” 按钮,进入 STOP(停止)模式。 ?选择PLC(PLC)> 运行(RUN)菜单命令,进入 RUN(运...
2023-03-21

一定时间内连续按下按钮无效的继电控制设计

在有些工业控制中,要求按钮或开关在一定时间内不能够连续接收信号,比如在物料计数过程中,如果某个检测元器件产生晃动或者被其他物体误触发,可能会产生计数错误,这样就要...
2023-04-01
一定时间内连续按下按钮无效的继电控制设计

常见电动机控制线路的功能与实际应用(一)

在了解了电动机控制线路的结构特征和检修调试方法后,下面将学习常见电动机控制线路的功能与实际应用。 直流电动机调速控制线路 直流电动机调速控制线路是一种可在负载不变的...
2023-06-25
常见电动机控制线路的功能与实际应用(一)

热销商品

连发瓦斯枪通用瓦斯射钉钢钉枪瓦斯气体高强度瓦斯射钉枪165气罐

连发瓦斯枪是一款专为高强度瓦斯射钉设计的工具,其特点在于能够连续发射瓦斯气体,适用于多种需要快速穿透和固定材料的场景。这款瓦斯枪配备了165气罐,容量足够满足...
4.5

黄铜镀镍金属电缆防水接头EWM密封格兰头HSM电线固定填料函M20M16

黄铜镀镍金属电缆防水接头EWM密封格兰头(HSM型)是一款高性能电线固定与密封装置,适用于M16和M20螺纹规格。采用优质黄铜材质并表面镀镍处理,具备优异的防腐蚀性、机械...
1.14

消防配件二氧化碳灭火器2 3 5 7KG弯头喷管24Kg干冰CO2外喷头喷嘴

二氧化碳灭火器配件中的2357KG弯头喷管与24Kg干冰CO₂外喷头喷嘴,是专业消防设备的重要组成部分。该弯头喷管采用高强度耐腐蚀材料制造,连接灵活,适用于高压CO₂灭火...
4.5

雷士照明led筒灯孔灯客厅吊顶天花灯嵌入式过道筒灯射灯桶灯家用

雷士照明LED筒灯是一款专为现代家居设计的嵌入式照明产品,适用于客厅、吊顶、过道、卧室等空间。采用高品质LED光源,光线柔和均匀,显色指数高,有效还原真实色彩,营造舒...
5.78

雷士照明嵌入式防眩筒灯射灯窄边过道灯深杯客厅无主灯天花灯米雪

雷士照明嵌入式防眩筒灯射灯——“米雪”系列,专为现代无主灯设计打造。采用窄边深杯结构,有效控制杂散光,实现精准防眩,营造舒适柔和的光环境。适用于客厅、过道、天...
25.67

网站栏目