台达PLC串口通信 点击:620 | 回复:1



dgjc888

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:125帖 | 12回
  • 年度积分:0
  • 历史总积分:271
  • 注册:2016年8月29日
发表于:2020-06-03 14:46:22
楼主

台达PLC出厂通讯格式为,ASCII,9600,7,E,1。

一、    发送报文格式:PC→PLC

起始

字符

(STX)

从站地址

命令码

起始数据地址

接点个数

校验码

结束符

高字节

ADR1

低字节

ADR0

高字节

CMD1

低字节

CMD0

高位

STR1

低位

STR0

高位

低位

高字节

LRC1

低字节

LRC0

OD

OA














1.    起始字符(STX)

起始字符为“:”,ASCII为3AH。

2.    从站地址

有效的通讯地址范围为0~254。当通讯地址为0 时表示对所有PLC 广播,收到广播消息的PLC 不会对广播消息做回应。当PLC 地址不为0 时,PLC 会回应正常信息给主站设备。

例如,通讯地址为16(十进制)的PLC 的地址的ASCII 码表示方法如下所示(十进制数16 的十六进制为10)。

(ADR 1, ADR 0)=“0”,“1” ;“0”=30H, “1” = 31H

3.    命令码

数据字符的格式取决于命令码,有效的命令码的描述如下所示:

命令码(Hex)

含义

可操作装置

01(01H)

读节点状态(不可读输入节点状态)

S, Y, M, T, C

02(02H)

读节点状态(可读输入节点状态)

S, X,Y, M, T, C

03(03H)

读寄存器的内容值

T, C, D

05(05H )

强制单独节点状态On/Off

S, Y, M, T, C

06 (06H )

预设单独寄存器的值

T, C, D

15 (0FH)

强制多个节点状态On/Off

S, Y, M, T, C

16(10H)

预设多个寄存器的值

T, C, D

17(11H)

报告从站地址

NONE

23(17H)

PLC LINK 在一个轮询时间内同时执行读写功能

NONE

 

4.    数据起始地址

要访问和组态的数据在PLC内的首地址。PLC装置地址如下

 

5.    接点个数

要访问和组态PLC地址个数。

6.    校验码(LRC校验,校验和)

LRC 校验码为从站地址至最后一个数据内容的16 进制数叠加的值的各位取反后加1 的值。如下例所示,LRC 校验码的值为F6(16 进制)。LRC 校验码的计算方法如下:01H+03H+04H+01H+00+01H= 0AH, 0A(16 进制)各位取反后的结果再加1 为F6(16 进制)。

字段名

ASCII 码

16 进制

起始字符

:

3A

从站地址

01

3031

命令码

03

3033

起始数据地址高字节

04

3034

起始数据地址低字节

01

3031

接点个数高字节

00

3030

接点个数低字节

01

3031

LRC 校验码

F6

4636

结束字符

CR LF

0D0A

7.    结尾字符

结束字符由2 个ASCII 码组成

END1 = CR (0DH),

END0 = LF (0AH)


1分不嫌少!


楼主最近还看过



是点点呀

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 49回
  • 年度积分:51
  • 历史总积分:374
  • 注册:2020年8月18日
发表于:2020-10-26 08:38:30
1楼

学习学习


热门招聘
相关主题

官方公众号

智造工程师