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

电子说

1.2w人已加入

描述

导读:我们在项目中,经常会通过PLC连接触摸屏。触摸屏就可以显示设备的状态及报警信息等。在触摸屏上显示报警信息文本有很多种方法,使用编码指令也可以达到此功能。

一、任务目标               

该任务是功能指令应用案例,使用功能指令有助于我们厘清编程思路。本任务使用了移动指令及编码指令。在实际应用中编码指令可能用的比较少,但是笔者认为只要利用好这个指令,对编程也一样会有提高。本任务要求读者掌握以下几个内容。

1.编码指令的使用

2.编码指令如何配合HMI做报警文本显示

二、任务描述               

plc

图3-4-1 HMI画面

如图3-4-1所示在HMI的主画面通常需要显示现场设备的状态,例如:无故障、气缸1故障、气缸2故障等。

三、相关知识               

本案例需要使用的功能指令有移动指令和编码指令。其中移动指令在前面的章节中有介绍,在此不赘述,本任务主要介绍编码指令。

1.编码指令 (ENCO)

ENCO指令:将参数IN中最低有效位(为1)的对应位置值编码出来,并将结果返回给参数OUT。编码指令相关参数如下表:

plc

注意:可以从指令框“”下拉列表中选择该指令的数据类型。

用一个例子来说明编码指令 (ENCO)的使用,梯形图如图3-4-2所示

plc

图3-4-2

plc

plc

四、任务实施               

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

1.IO地址分配

plc

2.程序设计思路

1).使用编码指令中的一个位代表一个故障状态。

2).结合编码后的值和HMI的显示及隐藏功能实现报警文字的显示。

3).由于编码前的值为00000001或00000000时编码出来的值都是0,所以编程时务必要区分这两种状态。

3.程序设计

plc

plc

五、经验与总结               

1.在本任务中,主要使用的是编码指令取出当前报警标志位。然后结合HMI的隐藏和显示功能达到显示故障文本的效果。但是值得注意的是当MB30中的数值为二进制的00000001或00000000时编码出来的值都是0。所以需要对这两种状态进行区分。

2.使用这种方式做报警显示的好处是:如果有多个报警,可以在程序中使用连续的地址做报警标志位,易于管理,例如M30.0,M30.1…。

审核编辑:郭婷

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分