课程中心
HOME
课程中心
正文内容
plc特殊模块编程 PLC编程规范--功能块编程(第三讲)
发布时间 : 2025-04-22
作者 : 小编
访问数量 : 23
扫码分享至微信

PLC编程规范--功能块编程(第三讲)

目的: 规范自动化设备PLC控制器编程方法,以利于后续产线设备的维护与管理。

一、 功能块编程

a) 编程语言

采用复合 IEC6113-3 标准的编程语言进行 PLC 程序设计,应首选 LAD 作为块的编程语言,因为 编程语言 LAD 可为维护人员提供更轻松的诊断和更快速的修改。

b) 编程规则

1. 功能块程序避免访问全局常量。否则,该模块将无法再模块化使用。

2. 数据块始终存储在CPU的RAM中。仅在特殊情况下才允许使用装载存储器存储数据块。

3. 优选使用多实例代 替单实例。

4. 功能块之间数据访问通过输入输出接口访问。

c) 注释

1. 块注释

块注释必须 以一行或几行的形式放在相应代码段的前面。每个块注释内容格式包含以下各项。

Ø 公司名称

Ø 库名称

Ø 已测试固件版本的 PLC(例 如 S7-1511 V1.6)

Ø 创建时的软件版本

Ø 使用限制(例如某些 OB 类型)

Ø 要求(例如,其他硬件)

Ø 功能说明

Ø 带有作者和日期的图块版本

如图 1 所示

(图1 块注释)

2. 线路注释

如果可能的话,必须在代码行的末尾添加行注 释,或者,应在相应代码行的前面添加注释。

d) 功能块引脚

1) 输入输出没有前缀;

2) 通过块接口进行数据交换;

3) 如果多个FB或FC中需要数据,则通过块接口(输入,输出和InOut接 口)处理数据交换。禁止直接访问FB外部的静态变量;

4) 对于基本数据类型(例如WORD,DWORD,REAL, INT,TIME类型),应使用输入或输出接口类型;

5) 对于基本数据类型,仅当在块的外部和内部写入时才使用 InOut接口类型;

6) 如果传输了许多参数,则应尝试将 它们封装在PLC数据类型中。然后,应将此PLC数据类型声明为InOut标记;

7) 对于结构化标签(例如,ARRAY,STRING等类型) 和PLC数据类型,通常应使用InOut接口类型;

e) 标签声明

静态和临时: 为了能够从代码中的传输和输出参数中清楚地分离出静态和临时标签,使用 标签前缀。前缀静态标签:stat;临时标签:temp;

f) 具有执行的块

流程从 execute 参数的上升沿开始,并采用输入参数中的未决值。

输入输出信号时序图如下图 2 。

(图2 输入输出时序图)

1) 使用Execute下降沿 重置Error和Commandaborted。

2) 执行时,FB的功能不会随着Execute下降沿而终止。

3) 如果Execute已经为FALSE,并且Busy为False,仅Error和Commandaborted 等待一个周期。

4) 当块仍在执行时,请求执行时具有上升沿的新作业。

5) 如果处理作业被更高优先级或同等优先级的 作业(另一个块/实例的中断)中断,则Commandaborted由该块设置。它立即中断剩 余的作业处理。

g) 启用块

设置启用参数将启动作业。只要保持启用设置,作业处理就处于活动状态,并且可以采用新值并连续对其进行处理。重置 enable 参数将终止作业。如果启动了新作业,则该块将进入其初始状态,并且可以全新地进行切换和配置,如下图 3,4 所示。

(图3 功能块示意)

(图4 作业时序图)

1) Error为True复位并停止FB的所有功能。如果FB能够自动复位,Busy 仍为True

2) 消除错误后,FB状态恢复

3) 错误必须由用户处理的错误,需停止FB功能,同时复位Busy状态。

4) 使能为False时Error停止输出。

5) Valid 为TRUE表示该块已激活,没有待处理 的错误,并且因此,FB的输出有效。

6) Enable为False,复位FB所有输出。

7)

《PLC编程规范》完结,更多干货后续持续更新,这些都是我们在给客户编写程序必须要遵循的编程标准,大家可以收藏使用,如果遇到问题或者不能理解的地方可以私聊或评论留言;

希望大家可以支持小编,你们的支持是我最大的动力,如果觉得小编写的文章有用请记住我们是智控教育团队的技术老师,我们正在全新的改革PLC培训的风气,将正在实用的技术分享给工控人,而不是理论性的去抄一抄,制作那些没有营养的文章;

下一个专题:《设备安装标准化规则》 规范定义设备的外观、机械、电气及设备配件的统一型号等相关标准,使设备标准化、目视化、规范化,保证生产稳定进行。

RS232和RS485用PLC编程实例,你知道怎么调试吗?经典小工具分享

最近有好朋友问我,为什么我用PLC写的232/485通讯程序不好用?我应该怎么测试是哪出现了问题?正好我最近写了一个西门子S7-200smart利用RS485进行自由口通讯向电脑发送状态的小程序,在这里和大家分享一下。

相信大家对RS232和RS485比较熟悉了,研究工业电气的都知道,前段时间这两个字眼在头条上太火了,火到我本来不想看最后也点进去看了几篇,但大多数文章写到的都是理论讲解,因此,这篇文章不会讲太多理论,需要理论知识的请去搜索。

以前我们讲过,一些电子称具备RS232/485接口,可以与PLC进行通讯,那么除了这个功能,它还可以干什么?

PPI协议是西门子自己的协议,为自己的设备做连接用的。

我们重点说下自由口通讯,自由口通讯不限设备的限制,只要是支持RS485/232通讯的,不论是不是西门子的都可以使用。比如说不同PLC之间的通讯读写数据,以及和一些驱动器做通讯读写数据或者是给电脑端读写数据。

今天我们了解一下如何使用西门子S7-200SMART使用RS485端口与电脑进行通讯并调试。

首先S7-200SMART自带一个485接口,还可以拓展一个485接口,需要在硬件里配置波特率。

硬件连接需要一个PLC,一个485转232的转换器,以及一台带串口的电脑或者笔记本加串口转USB,以及串口调试工具。

西门子S7-200SMART PLC

485转232转换器(电脑侧是232)注意线序不要接错了,接错后依然有数据,只是数据是反的。

电脑端口

编程时需要配置接口信息,比如说用哪个接口发送,通讯参数是多少等等。

S7-200smart 可接两RS485口

通讯参数是特殊存储器SMB30(端口0)和SMB130(端口1)

端口设置

假如需要传输的数据是(波特率9600,无奇偶效验,数据位8,停止位1),数据从端口0传输,那么将9赋值给SMB30。

然后我们看下发送和接收指令,XMT和RCV,这两个指令需要注意的是;

1 指令需要以脉冲形式触发。

2发送或者接受的第一个字节的含义是你要发送的字节总字数。且不包含第一个。比如说我发送从VB801-VB876,所以发送地址需要写VB800,且VB800赋值为76。

主程序

程序解析;因为协议是“波特率9600,无奇偶效验,数据位8,停止位1”利用端口1进行通讯,利用脉冲触发XMT。

最后我们下载程序并触发脉冲,那么怎么进行调试呢?我们需要串口调试工具,本文用到的串口调试工具是作者从业多年用的最好的一款,绿色无需安装,且没有BUG,打开软件后,我们打开COM口,即可接收数据,还可以看到数据的总量,非常方便,有需要下方留邮箱。

当然如果想发送让PC识别的语言的话,需要借助ASC码来帮助,这个码,大家可以去网上查找,即是通过用计算机容易发送的数字来表示字母;(比如说A在码中以16进制数字41代替,Z在码中以16进制数字5A代替)通过这个转换,PLC终于可以按照人的意愿和PC对话了,但要切记,通讯过程中的字与字之间最好用分隔符分开,而且安全起见,最后一位可以通过程序做效验。

对于一些复杂的自由口通讯协议,比如说松下伺服驱动器等涉及精度,复杂功能或者安全等,需要多次读写发送来验证是否通讯有效,这就需要中断来帮助,在这里对于端口0发送完成的标志是中断事件9,端口1发送完成的标志是中断事件26,对于端口0接收完成的标志是中断事件23,端口1接收完成的标志是中断事件24。中断是另一个知识点了,如果有想要学习中断的可以在下方留言。

相关问答

三菱plc特殊模块和压力传感器接线?

24V+接传感器3,传感器2接PLC模块正I0+,模块负接24-。两线制接法24V+接传感器3,传感器2接PLC模块正I0+,模块负接24-。两线制接法

三菱plcm8037特殊继电器怎么使用?

三菱PLCM8037特殊继电器的使用方法如下:首先,将继电器连接到PLC的输出模块上,然后在PLC编程软件中配置输出模块的输出端口。接下来,编写相应的PLC程序,通过...

PLC模块有哪几种?

CPU模块,输入模块,输出模块,电源模块,温度检测模块,位置检测模块,PID控制模块,通讯模块等西门子plc:1.简介:西门子PLC,是德国西门子(SIEMENS)公司...S7-30...

PLC模块有几种?

常见的PLC模块有:电源模块为PLC提供内部电源,有些电源模块还可以为输入信号提供电源。I/O模块就是输入/输出模块模块,I代表输入,o代表输出。内存模块主...

plc编程接线方法?

1.PLC编程接线方法有多种。2.首先,常见的接线方法是使用继电器进行控制。继电器可以通过接线板或者插座进行连接,然后通过导线将继电器与PLC的输入和输出端...

plc模块化编程思路?

PLC模块化编程的思路大致如下:1.确定系统的功能要求及功能模块,分析系统的功能单元,确定输入信号与输出信号;2.分析功能模块可以针对输入信号进行不同方...

什么是PLC模块?

PLC即可编程逻辑控制器。PLC模块意指PLC系统中根据功能使用不同对各个部分的通俗叫法。比较常见的PLC模块有以下种类:电源模块:为PLC系统提供工作电源的单元...

三菱plc模拟量模块编程步骤?

以下是三菱PLC模拟量模块编程的一般步骤:在PLC程序中添加模拟量模块:首先需要在PLC程序中添加模拟量模块,确保PLC系统能够识别该模块。确认模块类型和信号范...

PLC的特殊模块是将热电阻的模拟量转化为数字量输入到CPU......

欧姆定律测电阻。这是模拟量信号.......存入到6400到32000这个地址里4毫安对应640020毫安对应32000

plc停止模块怎么做?

使用此项功能按以下几个步骤来设置:1.在PLC的编程软件中设置使PLC运行的外部输入信号。此项设置在编程软件的PLC参数中设置。此外部输入信号可以在X0到X17中...

 华能国际集团  深红累之渊 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2025  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部