【教程】串口IO设备与顾美PLC通信例程 | 您所在的位置:网站首页 › stm32模拟串口例程 › 【教程】串口IO设备与顾美PLC通信例程 |
前两期文章《串口服务器接入云服务器实现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的通信控制。 注明出处。 |
CopyRight 2018-2019 实验室设备网 版权所有 |