PLC模块化编程实例

2023-06-27 10:10:10 来源:PLC与自控设备

前言PLC模块化编程

PLC的模块化编程方式是基于程序库为设计作为核心的,其方式与目前的单片机编程方式有点类似。PLC编程可以借鉴单片机这种函数库的编程方式,将一个大的程序分为若干个相互独立的程序块,各个程序块相对独立、功能单一,使得程序结构清晰、接口简单。编写程序时,可以根据实际的需要,调用程序块,然后把各程序块连接起来,成为最终的程序。


(资料图)

01、概述

模块化编程中OB1起着主程序的作用,FC或FB控制着不同的过程任务,相当于主循环程序的子程序。模块化编程中被调用块不向调用块返回数据。

02、模块化程序的执行

模块化编程中OB1起着主程序的作用,FC或FB控制着不同的过程任务,相当于主循环程序的子程序。模块化编程中被调用块不向调用块返回数据。

03、模块化编程实例

模块化编程实例1 - 液位监视

• 监视一个慢变得过程不需要每次扫描都进行。如果过程每隔一定时间或根据需要进行处理,程序将更有效。

• 在OB1循环扫描处理时,可以按照一定的周期对液位进行监视。

设计方法:

• 确定液位监视的组成部分和它们的关系;

• 设计完成所要求控制任务的功能;

• 规划从OB中调用块完成功能的程序执行

过程:

• 对程序块的每个段加上文字注释和标题。

解决方案:

• 建立一个功能FC,可以监视和控制任务;

• 建立一个OB,其中每隔一定时间调用块(功能)。

模块化编程实例2

有两台电动机,控制模式是相同的,按下启动按钮(电动机1为I0.0,电动机2为I1.0),电动机起动运行(电动机1为Q4.0,电动机2为Q4.1);按下停止按钮(电动机1为I0.1,电动机2为I1.1),电动机停止运行。

分析:

这是典型的起保停电路,采用模块化编程的思想,分别在FC1和FC2中编写电机的控制程序,在主程序OB1中进行FC1和FC2的调用。

结构化编程

Ø 将复杂的任务分解成一些能够反映过程的工艺、功能或可以反复使用的单独解决的小任务,这些任务由相应的程序块来表示;

Ø 某些程序块可以用来实现相同或相似的功能;

Ø 调用者可以是各种逻辑块,包括用户编写的OB、FB、FC和系统提供的SFB与SFC;

Ø 被调用的块是OB之外的逻辑块;

Ø 通用的数据和代码可以共享。

结构化编程实例3-油漆调制

1选择产品添加剂,需要决定哪个罐的成分要加到混合罐内。

2在选择开关的选择基础上,组织块调用相应的程序块,分配当前的参数,控制混合罐的流入量。

设计方法:

1. 确定哪些部件和操作可以应用于所有的罐和相关的控制;

2. 建立功能或功能块,完成所要求的控制;

3. 建立块的变量定义表,以便于对要操作的罐和控制进行地址分配;

4. 设计一个程序来根据选择开关调用功能或功能块。

解决方案:

1. 建立一个功能块或功能控制罐的流出量;

2. 为相关的块建立变量定义表;

3. 建立一个OB块来根据选择开关调用功能或功能块。

04、结构化编程的优点

1、各单个任务块的创建和测试可以相互独立地进行;

2、通过使用参数,可将块设计得十分灵活;

3、块可以根据需要在不同的地方以不同的参数数据记录进行调用;

4、在预先设计的库中,能够提供用于特殊任务的“可重用”块。

05、PLC的安全和故障处理

PLC控制器一般而言可靠性较高,故障率较低。但是出现故障也是难以避免的,因此,咱们一起来看一下如何处理PLC故障:

1、设置急停响应。用户通过编写程序实现对系统的诊断,用程序判断一个程序库的工作状态,发现报警信息是立即做出急停处理。

2、设置安全触发响应。故障事件触发时,设置指定的时间来处理。

3、设置HMI数据诊断。配合HMI进行诊断,可以更清晰直观地在HMI.上显示PLC的故障信息,通过HMI的诊断控件可以看到PLC系统的硬件状态,程序状态以及PLC的诊断缓冲区等。

PLC模块化编程降低了编程难度,只需要工程人员对程序库进行简单的参数配置就能生成程序,大大减少了编程的时间,这是PLC未来发展的必然趋势。

审核编辑:汤梓红

标签:

上一篇:如何选择温度传感器
下一篇:最后一页