qiang2751290
级别: 家园常客
精华主题: 0
发帖数量: 482 个
工控威望: 892 点
下载积分: 463 分
在线时间: 373(小时)
注册时间: 2012-06-03
最后登录: 2024-05-27
查看qiang2751290的 主题 / 回贴
楼主  发表于: 2016-03-27 10:03
我用FX2n  plc和电脑通过RS232通讯, 现在我想用串口调试助手发送一个16位代码到PLC的寄存器里,然后比较控制几个输出。

可是怎么样都控制不了, 我用RS指令,  发现只能发送不能接受。
shuangyu
工控行业呆的越久越迷茫.......懂得多?少?......
级别: 家园常客
精华主题: 0
发帖数量: 344 个
工控威望: 891 点
下载积分: 1083 分
在线时间: 115(小时)
注册时间: 2009-08-04
最后登录: 2024-07-12
查看shuangyu的 主题 / 回贴
1楼  发表于: 2016-04-25 17:20
可以做到的
shuangyu
工控行业呆的越久越迷茫.......懂得多?少?......
级别: 家园常客
精华主题: 0
发帖数量: 344 个
工控威望: 891 点
下载积分: 1083 分
在线时间: 115(小时)
注册时间: 2009-08-04
最后登录: 2024-07-12
查看shuangyu的 主题 / 回贴
2楼  发表于: 2016-04-25 17:22
命令 命令码 目标设备
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;
累加和超过两位取低两位


1 DEVICE READ 读出软设备状态值
计算机向PLC 发送
始 命令 首地址 位数 终 和校验
STX CMD GROUP ADDRESS BYTES ETX SUM
例子从D123 开始读取4 个字节数据
02h 30h 31h,30h,46h,36h 30h,34h 03h 37h,34h