导读:我们在项目中,经常会通过PLC连接触摸屏。触摸屏就可以显示设备的状态及报警信息等。在触摸屏上显示报警信息文本有很多种方法,使用编码指令也可以达到此功能。
一、任务目标
该任务是功能指令应用案例,使用功能指令有助于我们厘清编程思路。本任务使用了移动指令及编码指令。在实际应用中编码指令可能用的比较少,但是笔者认为只要利用好这个指令,对编程也一样会有提高。本任务要求读者掌握以下几个内容。
1.编码指令的使用
2.编码指令如何配合HMI做报警文本显示
二、任务描述

图3-4-1 HMI画面
如图3-4-1所示在HMI的主画面通常需要显示现场设备的状态,例如:无故障、气缸1故障、气缸2故障等。
三、相关知识
本案例需要使用的功能指令有移动指令和编码指令。其中移动指令在前面的章节中有介绍,在此不赘述,本任务主要介绍编码指令。
1.编码指令 (ENCO)
ENCO指令:将参数IN中最低有效位(为1)的对应位置值编码出来,并将结果返回给参数OUT。编码指令相关参数如下表:

注意:可以从指令框“??>”下拉列表中选择该指令的数据类型。
用一个例子来说明编码指令 (ENCO)的使用,梯形图如图3-4-2所示

图3-4-2


四、任务实施
本任务的实施步骤主要分为PLC接线、IO地址分配以及程序设计思路:
1.IO地址分配

2.程序设计思路
1).使用编码指令中的一个位代表一个故障状态。
2).结合编码后的值和HMI的显示及隐藏功能实现报警文字的显示。
3).由于编码前的值为00000001或00000000时编码出来的值都是0,所以编程时务必要区分这两种状态。
3.程序设计


五、经验与总结
1.在本任务中,主要使用的是编码指令取出当前报警标志位。然后结合HMI的隐藏和显示功能达到显示故障文本的效果。但是值得注意的是当MB30中的数值为二进制的00000001或00000000时编码出来的值都是0。所以需要对这两种状态进行区分。
2.使用这种方式做报警显示的好处是:如果有多个报警,可以在程序中使用连续的地址做报警标志位,易于管理,例如M30.0,M30.1…。
审核编辑:郭婷
-
plc
+关注
关注
5045文章
14441浏览量
483545 -
触摸屏
+关注
关注
42文章
2439浏览量
120936 -
HMI
+关注
关注
9文章
687浏览量
51533
原文标题:图文详解:基于S7-1200PLC与HMI报警显示实例!
文章出处:【微信号:玩转PLC工业机器人,微信公众号:玩转PLC工业机器人】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
伺服伴侣,Profinet转DeviceNet网关通讯保障后连接伺服驱动器与西门子S7-1200PLC
西门子S7-1200 MODBUS RTU通讯温度控制器和变频器教程
Profinet转CCLINK西门子S7-1200PLC与CCLINK伺服电机多轴同步控制解决方案
Modbus转EtherNet/IP网关配置:西门子PLC与伦茨变频器通讯教程
天拓四方分享:什么事S7-1200 G2++?
西门子S7-300PLC借助于MPI转以太网模块同时和S7-1200PLC、触摸屏以及ModbusRTU协议的变频器通讯案例
PLC 以太网通讯模块:助力 S7-300 同时联动 S7-1200、触摸屏与 Modbus RTU 变频器
MPI 转以太网模块案例:西门子 S7-300PLC 借此与 S7-1200、触摸屏及 ModbusRTU 变频器通讯
S7-300借MPI转以太网联控S7-1200、HMI及Modbus变频器方案
西门子PLC(S7-1200/1500/300/400)的数据采集与监控方案
can转Profinet网关转换:S7-1200PLC与施耐德变频器间的通信实现
EtherCAT转ProfiNet西门子1200PLC与伺服电机通讯案例全解
在HMI上如何显示PLC代码流程呢?
如何选择适合的西门子S7-1200系列PLC型号?
基于 EtherCAT 转 ProfiNet 网关达成西门子 1200 PLC 与伺服电机通讯连接的应用实例

基于S7-1200PLC编码指令如何配合HMI做报警文本显示
评论