锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

三菱FX系列PLC与电脑之间串口RS232通讯协议简易解析

时间:2023-02-27 18:00:00 继电器简易plc

本文介绍的 PC 与三菱 FX 系列 PLC 通信就是通过 PLC 的编程口与 PC 采用机器采用 SC-09 编程电缆作为计算机和计算机 PLC 通信连接 9 芯 D 在计算机串口上连接形状插头,另一端连接 PLC 的 RS-422 编程口。

编写 PC 汇编语言、各种高级语言、工控组态软件或直接使用的通信程序 PLC 制造商的通信软件。本文采用 VB6 . 0 软件必须基于连接 PLC 写通信协议的通信规程,先简单介绍一下 FX 系列 PLC 通信协议。

一、 FX 系列 PLC 的通讯协议

1 数据传输格式

FX 系列 PLC 采用异步格式,由 1 位起始位、 7 位数据位、 l 位偶校准及 l 波特率由位停止位组成 9600bps ,字符为 ASCi Ⅱ码。

2 .通信命令

FX 系列 PLC 有 4 通信命令,即阅读命令、写命令、强制通信命令、强制切断命令。 1 中, X 输入继电器; Y 输出继电器; M 辅助继电器; S 状态元件; T 为定时器; C 为计数器; D 数据寄存器。

3 通信控制字符

FZ 系列 PLC 使用面向字符的传输程序 5 个通信控制字符,如表 2 所示。

4 .报文格式

PC 机向 PLC 发送的报纸格式如表所示 3 所示。其中,, STX 开始标志; ETS 结束标志; CMD 为命令的 ASC Ⅱ码: SUMH 、 SUML 为从 CMD 到 ETX 按字节求累加,溢出不计。因为每个字节的16进制数变成了两个字节。 ASC Ⅱ代码,所以验证和为 SUMH 与 SUMI 。

PLC 向 PC 机器发送的应答报告格式如表所示 4 所示。

二、 PC 编写通信程序

1 通信口初始化

, MSComm 控件简介: VB 专门管理串行通信的串行通信 MSComm 控件。只需设置几个主要参数即可实现 PLC 与 PC 串行通信。为了完成通信,必须设置 MSComm 的相关属性值,即通信口初始化,其步骤如下:

(1)CoinmPort :设置或传回通信连接端口代码。

(2)Settings :设置初始参数。 - 设置或传回连接速度、奇偶校准、数据位、停止位等。 4 个参数。

(3)PortOpen :设置或传回通信连接端口的状态。

(4)Input :从输入寄存器传回并删除字符。

(5)Output :将字符串写入输出寄存器。

(6)InputLen :指定串行端口读入的字符串长度。

(7)InBufferCount:在接收器中传回字符数。

2 .通讯程序举例

首先,在窗体开始设计之前添加它 MSComm 控件及按钮、文本框、标签等。

(1)PC 从 PLC 中读取数据

假设 PC 要从 PLC 中读入从 D123 开始的 4 字节数据 ( 占用两个数据寄存器: D123 、 D124) ,其报文如表 5 所示。

根据三菱 FX 系列 PLC 编程口通信协议,地址算法

address=address×2 1000h

将地址 123 转化为十六进制 7Bh ,所以第一个地址是:

address=addressx2 1000h=7Bhx2 1000h=10F 6h .

再转换成 ASCII 码为 31h,30h,46h,36h

校验和 SUM=30H 31H 30H 46H 36H 30H 34H 03H=174H ,因此,溢出部分不计 SUMH 为 "7" , SUML 为 "4" ,相应的 ASC Ⅱ码为“ 37H ”和“ 34H ”。

PLC 如表所示 6 所示。

(2) 把数据写入 PLC

例如,向 PLC 的 D123 数据寄存器写入数据 1234ABCD 报文格式如表 7 所示

使用本文介绍 VB6 . O 实现 PC 与三菱 PLC 通信的基本方法是可行的,具有广泛的实用价值。对初学者很有帮助。

三菱FX系列PLC例如编程口通信协议

1、DEVICE READ(读软设备状态值)

计算机向PLC发送:

命令

首地址

位数

和校验

STX

CMD

GROUP ADDRESS

BYTES

ETX

SUM

例子:从D123开始读取4个字节数据

02h

30h

31h,30h,46h,36h

30h,34h

03h

37h,34h

地址算法:address=address*2 1000h,将123 转换为16进制*2 得F6,10F6

再转换成ASCII

31h,30h,46h,36h

PLC返回

STX

1ST DATA

2ND DATA

...

LAST DATA

ETX

SUM

注:最多可以读取64个字节的数据

例:从指定的存储单元读取3584的数据

02h

33h

35h

38h

34h

03h

44h,36h

2、DEVICE WRITE(向PLC软设备写入值)

命令

首地址

位数

数据

和校验

STX

CMD

GROUP ADDRESS

BYTES

1ST DATA

2ND DATA

...

LAST DATA

ETX

SUM

例子:向D1234写入1233开始的两个存储器,ABCD

02h

31h

31h,30h,46h,36h

30h,34h

33h,34h,31h,32h,43h,44h,41h,42h

03h

34h,39h

PLC返回

ACK (06H) 接受正确

NAK (15H) 接受错误

3.位置设备强制定位/复位

FORCE ON置位

命令

地址

和校验

STX

CMD

ADDRESS

ETX

SUM

02h

37h

address

03h

sum

FORCE OFF复位

命令

地址

和校验

STX

CMD

ADDRESS

ETX

SUM

02h

38h

address

03h

sum

PLC返回

ACK(06H) 接受正确

NAK(15H) 接受错误

强制设备中的地址公式:Address=Address/8 100h

说明:

1.帧中的BYTES表示需要读写的字节数。

2.地址算法上有说明。

3.累加和从STX后一个字节开始积累ETX的和。

三菱FX系列PLC编程口通信协议总结

该协议实际上适用于PLC编程端口和 FX-232AW 通信模块。感谢网友visualboy提供。

通讯格式:

命令

命令码

目标设备

DEVICE READ CMD

"0"

X,Y,M,S,T,C,D

DEVICE WRITE CMD

"1"

X,Y,M,S,T,C,D

FORCE ON CMD

" 7"

X,Y,M,S,T,C

FORCE OFF CMD

"8"

X,Y,M,S,T,C

传输格式: RS232C

波特率: 9600bps

奇偶: even

校验: 累加方法(和校验)

字符: ASCII

16进制代码:

ENQ

05H

请求

ACK

06H

PLC正确响应

NAK

15H

PLC错误响应

STX

02H

报文开始

ETX

03H

报文结束

帧格式:

STX

CMD

DATA

......

DATA

ETX

SUM(upper)

SUM(lower)

例子:

STX ,CMD ,ADDRESS, BYTES, ETX, SUM

02H, 30H, 31H,30H,46H,36H, 30H,34H,  03H, 37H,34H

SUM=CMD+......+ETX;

30h+31h+30h+46h+36h+30h+34h+03h=74h;

累加和超过两位取低两位

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章