您现在的位置是:首页 > PLC技术 > PLC技术
用通信方式接入传感器
来源:艾特贸易2019-02-27
简介传统的传感器多为模拟信号输出,因此 PLC 使用传统的 A/D 输入通道读取数据。现在传感器的智能化程度逐步提高,同时也为了适应数字化、网络化的需要,不少传感器自身已经将数据数
传统的传感器多为模拟信号输出,因此PLC使用传统的A/D输入通道读取数据。现在传感器的智能化程度逐步提高,同时也为了适应数字化、网络化的需要,不少传感器自身已经将数据数字化。因此更适合通信的需要。不仅如此,智能化的传感器还可能具有可编程、自诊断、自补偿等附加功能。这就更加需要能进行双向沟通,远非传统的A/D输入通道可比。
这里用一种双参数的机械位移传感器为例,介绍用通信方式接入传感器的基本方法。该传感器可交替输出两个完全独立的参数,但是信息使用16位ASCII码的方式送出(注意低8位在前)。信息的格式见表7-23。
表7-23 数据信息定义表
处理接收到的数据,程序流程图如图7-40所示。
其中,有如下几点特殊处理:
(1)参数辨识:因为接受到的信息可能是A参数的,也可能是B参数的,而且参数的符号也是可正可负。这两者都必须在使用之前,根据信息中的标识将它区分开。
(2)零点补偿:传感器安装好后,因为各种原因,一般不可能正好与测量零位相吻合,也就是此时的传感器输出并非是0。虽然可以重新安装调整传感器,使其与零位重合,但是要使两个参数同时都调到零位,并不容易操作。所以我们建议采用软件补偿的方法,即不去调整传感器的位置,而是将偏移的数据记录下来(注意存放在停电保持记录区),在使用时分别对两个测量的数据进行补偿。另外,传感器的零点还可能因为时间、温度、振动和设备搬运等原因而变化,所以本软件中专门为此加装了“零位飘移标定”模块。只需自动操作一次,即可获得新的补偿数值。
图7 40处理接收到的数据流程图
(3)数据偏置:一台设备可能用在不同的工况,处理不同的加工产品,因此有可能需要设置不同的测量零位。在传感器的有效测量范围内完全可以不必移动传感器的安装位置,只需采用与“零点补偿”类似的处理方法,分别记录两个参数的偏移数据(不偏移时,应设置为O),用软件进行处理。
图7-41是用通信方式接入传感器的总体流程图,表7-24是该模块占用的软件咨源定义表。
表7- 24 软件资源定义表
图7-41用通信方式接入传感器总流程图
数字实例:如果当前收到的ASCII码是41、2D、32、35、2E、38、OD、OA(代表是A参数、负数、绝对值25.8),经数据处理后将有如图7-42所示的结果。
图7-42数据处理过程图
源程序如下。
地址 指令 说明
500 LD M100
501 MOV H0002 D8124 //设置起始符
506 MOV H0003 D8125 //设置结束符
511 RS D200 K6 D60 K8 //通信设置指令
520 ANI M8121 //非发送时
521 PLS M80
523 LD M80 //清理现场
524 RST M81
525 RST M82
526 ZRST D60 D63
531 LDP M8123 //接收完成时
533 ANI M8122
534 AND<> D63 HOAOD
539 cJ P90 //非正常数据,不处理
542 LDP M8123
544 AND= D63 HOAOD
549 ANI M8122
550 SET M89 //设置数据处理标志
551 LD M89 //数据处理
552 DMOV D61 D165 //暂存测量数据
561 SWAP D166 //小数数据与小数点位置交换
564 WOR D166 HOOFF D166
571 WAND D166 H3000 D166 //小数点改成ASCII码的 "0"
578 HEX D165 D167 K4 //转成BCD码
585 BIN D167 D168 //转成BIN码(100*测量绝对值)
590 LD M89
591 MOV D168 D163 //存绝对值
596 WAND D60 HFFOO D169 //取符号
603AND=D169 H2DOO //负数取补码
608 NEG D168
611 LD M89 //区分A、B
612 WAND D60 HOOFF D171
619 MPs
620AND= D171 H0041 //A参数
625MOV D168 D150 //实用值
630 MPP
631AND= D171 H0042 //B参数
636 MOV D168 D151 //实用值
641 LD M89 //零位加偏移补偿
642 MPs
643AND= D171 H0041 //补A
648 SUB D168 D7022 D150
655 MPP
656AND= D171 H0042 //补B
661 SUB D168 D7023 D151
668 LD M8123 //采样完成
669 RST M8123
671 ZRST D60 D63
676 P9
677 LD M8063 //通信故障
678 0R= D60 KO //数据错误
683 0R> D163 K7000 //数据溢出
688 0UT T1 K50
691 LD T1 //出错处理
692 RST M81 //出错标志
693 SET M82
694 RST D150
697 RST D151
700 LDI M8063
701AND= T1 KO
706 RST M82
707 SET M81 //正常标志
图7-43是用来调试时调用参数的显示界面。
图7-43中第一排显示的是读人信息在PLC中的寄存地址;第二排显示的是读入信息的定义;第三排显示的是读入信息的ASCII码;第四排显示的是与ASCII码对应的字符;中间分别是两个参数的数值及它们的零点补偿值和偏移值;下面是通信状态和设定参数;左下角设有一个锁定开关,该触摸键以交替方式工作,用来锁定刚读入的数据,以便能读取到稳定显示的数据。
图7-43位置传感器调用参数显示界面