前两期文章《串口服务器接入云服务器实现IO控制》、《基于ModBus云服务的线性控制系统》中介绍了一个免费的ModBus云服务器(ModBus物联网平台),以及如何利用该平台结合RTU与网关实现的“线性控制系统”。今天来了解串口IO设备如何与顾美PLC通信。
案例简介
本案例主要讲解MA01系列串口IO设备与顾美CX3G-16MT(以下简称PLC)操作细则,本文以MA01-AACX2240为例。
硬件准备
MA01-AACX2240串口IO联网模块设备一台;
Mini USB数据线一根;
顾美CX3G-16MT一台;
12V电源一个、24电源一个;
开关按钮(保持型)一个;
通讯电缆若干;
电脑一台。
软件准备
(1)GX Works2版本软件,可通过三菱官网自行下载;
(2)亿佰特IO模块配置测试工具v1.6上位机,可在亿佰特官网相对应位置下载;
PLC程序准备
1、配置PLC参数
PLC串口配置寄存。如图所示:
通过运行触发继电器(M8002)进行参数配置使能信号,将PLC的串口参数配置寄存器(D8120)配置为H0E081(9600-无校验-1个停止位-8个数据位-RTU模式)
;做主机D8121需设为最大255;
配置D8129通讯超时时间;
M8125置1指使用MODBUS RTU功能;
M8125置1指使用串口2标志。
2、读、写线圈开关定义
3G系列PLC的串口2使用ADPRW指令例程。如图所示:
注意事项:读、写线圈状态时,ADPRW指令不能两条同时导通,要分时轮流导通,并且两条指令需要有时间间隔,不能断开上一条ADPRW指令后马上导通下一条ADPRW指令。
3、控制逻辑
(1)这里使用X01输入点位模拟现场触发的条件,通过变化X01的状态来往D500寄存器里写值;当X01有信号时,会将值15传入D500寄存器中,当X01没有信号时,会将值0传入D500寄存器中(当值为0时,MA01设备的4路DO为关闭状态,当值为15时,MA01设备的4路DO处于打开状态;具体寄存器说明可在官网下载MA01-AACX2240的手册);T30、T31计时器作为触发条件后的一种防呆保护(防止快速多次触发不同步),当条件触发满足计时器后,就会触发写DO状态标志,达到控制MA01设备的DO状态的功能。如图所示:
(2)写线圈功能:串口2使用ADPRW指令需将D8397置0,用0F号功能码写从站1的线圈状态,M8029是特殊继电器(ADPRW指令完成标志),T211作为状态写入超时的一个标志。如图所示:
(3)编写好程序后,通过Mini USB数据线将程序写入到PLC内。
MA01-AACX2240通讯配置准备
1、使用亿佰特IO模块配置测试工具v1.6上位机配置MA01设备的串口参数,将串口的参数配置成与PLC通讯的一致(波特率:9600,数据位:8,校验位:无,停止位:1)。如图所示:
2、MA01-AACX2240设备支持 1~247 个从站,5 位拨码开关可设置 1~31 地址码,大于 31 可通过上位机设置。此处将从站号配置为1,与PLC所填参数保持一致。如图所示:
效果演示
1、使用电线和端子将PLC和MA01设备的RS485口相连接。如图所示:
2、将开关按钮接入PLC的X01处。如图所示:
3、将PLC通上24V的电源,将MA01设备通上12V的电源。
4、按下开关按钮,开关按钮将线路导通,PLC的X01获得信号输入,然后可发现MA01设备的DO状态受到PLC控制变为4路全开,如图所示:
5、再次按下开关按钮,开关按钮将线路断开,PLC的X01无信号输入,然后可发现MA01设备的DO状态受到PLC控制变为4路全关。如图所示:
自此便通过顾美PLC实现了与MA01-AACX2240的通信控制。
注明出处。
全部0条评论
快来发表一下你的评论吧 !