• «
  • 1
  • 2
  • »
  • Pages: 1/2     Go
leonhuang
级别: 略有小成
精华主题: 0
发帖数量: 59 个
工控威望: 202 点
下载积分: 3933 分
在线时间: 37(小时)
注册时间: 2013-06-27
最后登录: 2023-11-09
查看leonhuang的 主题 / 回贴
楼主  发表于: 2019-07-04 11:27
描述:通讯读写格式
图片:
描述:仪表设定
图片:
描述:仪表通讯方式设定
图片:
描述:仪表数据存取地址
图片:
描述:编写的程序1
图片:
描述:编写的程序2
图片:
不懂通讯的菜鸟,请各位大佬教教我。
通讯格式我看了些资料,有基本的认识。但是在编写程序的过程中有一些不懂。
一、就编写程序是用8位还是16位即M8161的选择。因为我T3仪表(图片:仪表数据存取地址,功能地址40005,毛重;占两个寄存器、32位,4字节有符号只读)的寄存器是否影响位数与RS指令的编写?
二:编写数据格式,{RS D0 Kn D30 Kn},Kn的个数如何确定。如[MOV H1 D0]   [MOV H3 D1]   [MOV H5 D2]   [MOV H2 D3]    [MOV H核验码? D4] 那这样是不是就5个。8位与16位数据格式,地址码到校验码个数是否不一样?
三、8位和16位的格式,D0(b15 b14 b13 b12 b11 b10 b9 b8 b7 b6 b5 b4 b3 b2 b1 b0),8位是处理b0-b7;16位是处理b0-b15。 8位的编写:[MOV H1 D0]   [MOV H3 D1]   [MOV H5 D2]  [MOV H2 D3] 在第一点中说的功能地址0005占两个寄存器、共4个字节、32位;那数据个数这样编写是不是就有问题了?    16位的编写:[MOV H1 D0]   [MOV H3 D1]   [MOV H5 D2]   [MOV H2 D3]
三、CRC校验如何编写,我这个程序的CRC校验码是什么?
四、回传数据的处理。回传回来的数据是放在D33、D34中,还是D33、D34、D35、D36中?[MOV D30 D50 K10 ] 如果是16位处理,那数据是放在D53与D54,那程序:[MOV D54 K4M10]   [MOV D53 K4M26]    [MOV K4M10 D100]最终数据存在D100、D101中?    这样的理解是不是有问题?
[ 此帖被leonhuang在2019-07-04 14:06重新编辑 ]
anlyl2014
大吉大利
级别: 网络英雄
精华主题: 0
发帖数量: 982 个
工控威望: 8884 点
下载积分: 10272 分
在线时间: 926(小时)
注册时间: 2014-05-23
最后登录: 2024-12-23
查看anlyl2014的 主题 / 回贴
1楼  发表于: 2019-07-04 13:44
你可以参考我发的例子,
你有PDF格式的压力表手册的话,就传上来看看,贴图看不清楚
活到老,学到老!
微信号:anjjyy2013
添加时注明来自工控人家园
压缩包用WINRAR打开,没密码
anlyl2014
大吉大利
级别: 网络英雄
精华主题: 0
发帖数量: 982 个
工控威望: 8884 点
下载积分: 10272 分
在线时间: 926(小时)
注册时间: 2014-05-23
最后登录: 2024-12-23
查看anlyl2014的 主题 / 回贴
2楼  发表于: 2019-07-06 14:30
如果你用的是FX3U就照着我的例子做,FX3U有CRC指令,程序相对简单
http://www.ymmfa.com/job-gkaction-download-pid-tpc-tid-1666109-aid-232721.html
活到老,学到老!
微信号:anjjyy2013
添加时注明来自工控人家园
压缩包用WINRAR打开,没密码
anlyl2014
大吉大利
级别: 网络英雄
精华主题: 0
发帖数量: 982 个
工控威望: 8884 点
下载积分: 10272 分
在线时间: 926(小时)
注册时间: 2014-05-23
最后登录: 2024-12-23
查看anlyl2014的 主题 / 回贴
3楼  发表于: 2019-07-06 14:44
注意一项:
1.通讯方式设为12;跟例子一模一样了;
2.看你的手册,40001和40002是净重;在PLC程序的地址是:H0/H1;可以读连续2个数的形式读出再合并成32位数;
3.同理,40005和40006是毛重;在PLC程序的地址是:H4/H5
4.你先用MODSCAN32软件,验证你的变送器设置的通讯格式、接线对不对,是否能读出数据,这步很重要,如能读出,说明设定没问题,MODSCAN32软件网站 有人发过可下;
5.例子是与4个从站通讯,若只读一个站,程序修改一下,只扫描1个站即可。
活到老,学到老!
微信号:anjjyy2013
添加时注明来自工控人家园
压缩包用WINRAR打开,没密码
anlyl2014
大吉大利
级别: 网络英雄
精华主题: 0
发帖数量: 982 个
工控威望: 8884 点
下载积分: 10272 分
在线时间: 926(小时)
注册时间: 2014-05-23
最后登录: 2024-12-23
查看anlyl2014的 主题 / 回贴
4楼  发表于: 2019-07-10 13:27
1、站号,读命令这都好理解。读存储器40005+40006=4个字节32位;按您说的是读05和06存储器,M0V H5 D212高位、MOV H6 D213低位,而不是只写一个存储器0005?(MOV H0 D212;MOV H5 D213)
=====你这里有问题,我没实物,你必须动手验证;通常,40005,在软件里是4+40001的,你要自己验证,楼上说的没错,每一家商厂都不一定相同;还有,读命令03,可以读连续多个寄存器,例如,要读H4和H5这2个的数值,就这样写:01 03  00 04 00 02后面是CRC
活到老,学到老!
微信号:anjjyy2013
添加时注明来自工控人家园
压缩包用WINRAR打开,没密码
anlyl2014
大吉大利
级别: 网络英雄
精华主题: 0
发帖数量: 982 个
工控威望: 8884 点
下载积分: 10272 分
在线时间: 926(小时)
注册时间: 2014-05-23
最后登录: 2024-12-23
查看anlyl2014的 主题 / 回贴
5楼  发表于: 2019-07-10 16:25
是的,你还要一个RS232转RS485的东东,淘宝有卖的,几十块一个;然后,用电脑MOSDCAN32直接与仪表通讯
如果这边都可以了,再写PLC程序,就简单得多了,就不有考滤仪表这边的事情.
活到老,学到老!
微信号:anjjyy2013
添加时注明来自工控人家园
压缩包用WINRAR打开,没密码
anlyl2014
大吉大利
级别: 网络英雄
精华主题: 0
发帖数量: 982 个
工控威望: 8884 点
下载积分: 10272 分
在线时间: 926(小时)
注册时间: 2014-05-23
最后登录: 2024-12-23
查看anlyl2014的 主题 / 回贴
6楼  发表于: 2019-07-11 12:24
引用
引用第12楼leonhuang于2019-07-11 10:29发表的  :
我用232转485与仪表测试,显示TIME-OUT。我检查了一下仪表参数设定F06=10(RTU,8位,1偶,1停止);F07=0(地址);F08=9600(波特率)没有错啊!?再与MODSCAN的设定核对了一下。485A与485B的对连线也对调过~~不知道问题出在哪里了!请大神帮忙分析 一下

选03,不是04;
通讯格式设定要与仪表相同,建议你设为MODBUS RTU 8N2;仪表设模式12,
活到老,学到老!
微信号:anjjyy2013
添加时注明来自工控人家园
压缩包用WINRAR打开,没密码
anlyl2014
大吉大利
级别: 网络英雄
精华主题: 0
发帖数量: 982 个
工控威望: 8884 点
下载积分: 10272 分
在线时间: 926(小时)
注册时间: 2014-05-23
最后登录: 2024-12-23
查看anlyl2014的 主题 / 回贴
7楼  发表于: 2019-07-11 12:33
除了通讯速率格式要完全相同之外,还要注意接线,正负不可接错,错的话不可以通讯;仪表地址不可设为0,要设成0以外的地址,通常,0地址为上位机
软件中的Device ID就是仪表地址
[ 此帖被anlyl2014在2019-07-11 12:47重新编辑 ]
活到老,学到老!
微信号:anjjyy2013
添加时注明来自工控人家园
压缩包用WINRAR打开,没密码
anlyl2014
大吉大利
级别: 网络英雄
精华主题: 0
发帖数量: 982 个
工控威望: 8884 点
下载积分: 10272 分
在线时间: 926(小时)
注册时间: 2014-05-23
最后登录: 2024-12-23
查看anlyl2014的 主题 / 回贴
8楼  发表于: 2019-07-11 13:16
看14楼;软件设为03,

[ 此帖被anlyl2014在2019-07-11 13:22重新编辑 ]
活到老,学到老!
微信号:anjjyy2013
添加时注明来自工控人家园
压缩包用WINRAR打开,没密码
anlyl2014
大吉大利
级别: 网络英雄
精华主题: 0
发帖数量: 982 个
工控威望: 8884 点
下载积分: 10272 分
在线时间: 926(小时)
注册时间: 2014-05-23
最后登录: 2024-12-23
查看anlyl2014的 主题 / 回贴
9楼  发表于: 2019-07-12 22:37
看你第二张图,没连线,如果通讯OK,不会有红字出现
通讯OK的话,40005.40006就是你要读出的数,
活到老,学到老!
微信号:anjjyy2013
添加时注明来自工控人家园
压缩包用WINRAR打开,没密码
anlyl2014
大吉大利
级别: 网络英雄
精华主题: 0
发帖数量: 982 个
工控威望: 8884 点
下载积分: 10272 分
在线时间: 926(小时)
注册时间: 2014-05-23
最后登录: 2024-12-23
查看anlyl2014的 主题 / 回贴
10楼  发表于: 2019-07-12 22:43




要注意电脑COM口是否正确
软件设置要跟仪表相同
连线正确,对应的地址会出现数值
[ 此帖被anlyl2014在2019-07-13 10:12重新编辑 ]
活到老,学到老!
微信号:anjjyy2013
添加时注明来自工控人家园
压缩包用WINRAR打开,没密码
anlyl2014
大吉大利
级别: 网络英雄
精华主题: 0
发帖数量: 982 个
工控威望: 8884 点
下载积分: 10272 分
在线时间: 926(小时)
注册时间: 2014-05-23
最后登录: 2024-12-23
查看anlyl2014的 主题 / 回贴
11楼  发表于: 2019-07-12 23:09
引用
引用第17楼leonhuang于2019-07-12 11:01发表的  :
通讯端口的设置已经改为,RTU,8位数据,无校验,2位停止;地址01,9600波特率
这个通讯有没有问题?RESPONSES是回传数吗?这个是0,说明通讯还是有问题对吗?
发送的信息01.03.00.00.00.08.44.0c
回传信息(不固定)如:c0.00.00.00.00.00.00.d0.f2.fe.ff.7f.00.00.00.00.00.00.f4.7f.00共21位
77.00.00.00.00.00.00.20.00.00.03.00.20.00.00.02.00.40.00.80.07共21位
.......

通讯端口的设置已经改为,RTU,8位数据,无校验,2位停止;地址01,9600波特率======指的软件还是仪表?这两个要相同,
你仪表F06=12;MODBUS RTU;8N2
F07=1;地址为1;
F08=9600;通讯速率
发送的信息;回传信息先不管,连线,通讯OK的话,就不会有红字警报
还有,看你之前发的图,你仪表485A 485B接有两条线,还接到哪里?
单独接到RS232转RS485,不要接到别处

[ 此帖被anlyl2014在2019-07-12 23:16重新编辑 ]
活到老,学到老!
微信号:anjjyy2013
添加时注明来自工控人家园
压缩包用WINRAR打开,没密码
  • «
  • 1
  • 2
  • »
  • Pages: 1/2     Go