串口IO设备与顾美PLC通信例程

电子说

1.2w人已加入

描述

前两期文章《串口服务器接入云服务器实现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上位机,可在亿佰特官网相对应位置下载;

MODBUS

 

PLC程序准备

1、配置PLC参数

PLC串口配置寄存。如图所示:

MODBUS

通过运行触发继电器(M8002)进行参数配置使能信号,将PLC的串口参数配置寄存器(D8120)配置为H0E081(9600-无校验-1个停止位-8个数据位-RTU模式)

;做主机D8121需设为最大255;

配置D8129通讯超时时间;

M8125置1指使用MODBUS RTU功能;

M8125置1指使用串口2标志。

MODBUS

2、读、写线圈开关定义

3G系列PLC的串口2使用ADPRW指令例程。如图所示:

MODBUS

注意事项:读、写线圈状态时,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状态的功能。如图所示:

MODBUS

(2)写线圈功能:串口2使用ADPRW指令需将D8397置0,用0F号功能码写从站1的线圈状态,M8029是特殊继电器(ADPRW指令完成标志),T211作为状态写入超时的一个标志。如图所示:

MODBUS

(3)编写好程序后,通过Mini USB数据线将程序写入到PLC内。

 

MA01-AACX2240通讯配置准备

1、使用亿佰特IO模块配置测试工具v1.6上位机配置MA01设备的串口参数,将串口的参数配置成与PLC通讯的一致(波特率:9600,数据位:8,校验位:无,停止位:1)。如图所示:

MODBUS

2、MA01-AACX2240设备支持 1~247 个从站,5 位拨码开关可设置 1~31 地址码,大于 31 可通过上位机设置。此处将从站号配置为1,与PLC所填参数保持一致。如图所示:

MODBUS

 

效果演示

1、使用电线和端子将PLC和MA01设备的RS485口相连接。如图所示:

MODBUS

2、将开关按钮接入PLC的X01处。如图所示:

MODBUS

3、将PLC通上24V的电源,将MA01设备通上12V的电源。

4、按下开关按钮,开关按钮将线路导通,PLC的X01获得信号输入,然后可发现MA01设备的DO状态受到PLC控制变为4路全开,如图所示:

MODBUS

5、再次按下开关按钮,开关按钮将线路断开,PLC的X01无信号输入,然后可发现MA01设备的DO状态受到PLC控制变为4路全关。如图所示:

MODBUS

自此便通过顾美PLC实现了与MA01-AACX2240的通信控制。

审核编辑:汤梓红

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

全部0条评论

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

×
20
完善资料,
赚取积分