分享

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

 abc肖 2019-04-01

CB软件界面涉及公司机密,就不便放出来给大家看,用串口调试助手V2.1代替,一样的道理。关于上位机的学习,大家可以网上下载点资料来参考。下面就给出整个测试过程,并对部分协议地址做详尽的见解。

准备:FX3U(FX系统的均可)、串口调试助手V2.1、SC-09通信线(或者SC-09-USB,我用的是SC-09-USB,因为串口助手帮我们完成USB转串口这部分,如果用VB或其他上位机通信,需要用SC-09通信线,要求电脑有DB9串口)

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

串口助手

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

FX-PLC

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

SC-09-USB通信线

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

SC-09-DB9通信线

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

用SC-09-USB通信线一头连接电脑、一头连接编程口

一、通信传输格式设置

1位起始位、7位数据位、偶校验、1位停止位,波特率9600,传输字符格式为ASCII码。所以串口助手COM设置如下(PLC不用设置):

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

一、通信指令

PLC只能对上位机发出的指令做回答,不能主动命令上位机。编程口通信有4条指令,代码分别如下:

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

PLC收到上位机指令后,做出回答如下:

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

二、通信格式

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

三、元件地址

那地址是怎么得来的呢?其实是可以查表得来。

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

表格1 只列出部分位元件的地址

定时器T、计数器C的地址,大家可以去网上收集资料,后面我测试没用到这些类型的元件,所以就没有列出这些地址表。下面给出寄存器D的地址值,范围是D0-D511,给出框架,可按规律自己补齐地址。

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

表格2 一般寄存器D的部分元件地址表

适用强制(置位,复位)指令是适用的地址与表格1是不一样的,这点要注意。为了大家更加清楚,下面给出Y、M置位/复位的元件地址,其他的S、X、T、C这部分地址,网上自己搜搜。

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

表格2 强制Y、强制M的部分位元件地址表

四、通信实操

将写好的PLC程序灌入PLC中,测试PLC程序如下:

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

GX Work2创建的测试程序

上电,RUN,PLC的状态如下:

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

只有Y31的状态为1,其余的为0


1、通信测试

串口助手发送05h,PLC回复06h,则连接正常。若回复15h,则下位机不存在。

(注意:在串口助手与PLC通信过程中,请确认GX Work2已关闭工程)

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

通信正常


2、写指令(CMD内容为31h)

实操:使Y0~Y7的状态为 0 1 0 1 1 0 1 0 (16进制为5A,转为ASCII码为35h 41h)

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

使Y0~Y7的状态为 0 1 0 1 1 0 1 0 的指令格式

串口助手发送如下:

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

PLC状态如下:

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

Y0-Y7的指示灯,符合预期

PLC回复状态如下:

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?


3、读指令(CMD内容为30h)

实操:读取D11、D12的值。(D11含2个字节,D12含2个字节,共4个字节)

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

读取D11、D12的值的指令格式

串口助手发送如下:

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

PLC状态如下:

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

D11、D12的值以16进制显示

PLC回复状态如下:

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

D11、D12现值(16进制):0BC3、01FA。从上图的分析,可知,已经正确从PLC读取D11 D12的值。


4、强制ON指令(CMD内容为37h)&&强制OFF指令(CMD内容为38h)

实操1:强制M0为ON

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

强制M0为ON的指令格式

串口助手发送如下:

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

PLC回复状态如下:

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

实操2:强制M0为OFF

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

强制M0为OFF的指令格式

串口助手发送如下:

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

PLC回复状态如下:

介绍一下,这是三菱PLC-FX编程口通信协议及通信实操,你会不会?

本人水平有限,有错误请指正!!!评论交流探讨。

希望大家也可以自己动手哦!!!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多