当前位置:
新手求助,将数显表上的电压显示到MCGS上
回复 | 人气 | 打印
lx2009152006 个人主页 给TA发消息 加TA为好友 悬赏200分-已结帖 发表于:2019-04-03 15:46:54 楼主

QQ截图20190403222114.jpg

目前通讯参数设置正确,通讯正常,但是不知道如何设置通道内的寄存器,最终目的:将数显表上的电流,电压显示到MCGS人机界面上。

下面附上仪表的通讯协议,麻烦各位高手帮帮忙,万分感谢!


正在下载,请等待……
下载附件需0积分!

分享到: 关注收藏 邀请回答 回复 举报
谢谢你的爱1999 个人主页 给TA发消息 加TA为好友 发表于:2019-04-03 15:50:21 1楼
 

仪表的通讯地址正确吗   读取电压的地址呢

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-03 16:02:01 2楼
 


回复内容:

对: 谢谢你的爱1999 仪表的通讯地址正确吗 内容的回复!

-------------------------

大哥,通讯通道值为0,肯定通讯是正常的啊,只是里面我不知道怎么设置

  回复 引用 举报
SPweak 个人主页 给TA发消息 加TA为好友 发表于:2019-04-03 16:39:06 3楼
 

你需要查一下表的电流,电压的MODBUS协议,寄存器地址,然后对应到相关的变量即可

  回复 引用 举报
请叫我王老湿 个人主页 给TA发消息 加TA为好友 发表于:2019-04-03 17:58:59 4楼
 

肯定要有相应寄存器地址,要不然你怎么知道数值对应的寄存器编号,如果不知道,从何去读取????

  回复 引用 举报
尝试努力 个人主页 给TA发消息 加TA为好友 发表于:2019-04-03 19:20:06 5楼
 

要想大家帮你解决问题,你要告诉大家数显表的型号,或者将数显表的说明书发给大家,才好帮你。虽说好多仪表都是采用标准的modbus协议,但数显表型号规格多,各个厂家定义参数地址不一样。


  回复 引用 举报
李东泽 个人主页 给TA发消息 加TA为好友 发表于:2019-04-03 20:09:59 6楼
 

楼主看看仪表说明书,看看你的数值类型

  回复 引用 举报
个人主页 给TA发消息 加TA为好友 发表于:2019-04-03 21:34:13 7楼
 

先看仪表说明书,每种仪表的地址都可能不一样。如温湿度模块数值在H0至H4,温度模块对应通道数值在H20至H30,温度模块读D0什么都没有的就是0.先看你所需要采集的数在仪表上是D几,modbus上位机一般都是读写加上4001,你这只需读的话就加上3001,但是解码顺序不能反还是要看说明书。(你可以参考最近精华帖西门子LOGO与MCGS通信,也有MODBUS通讯)

以莫迪康ModbusRTU为例

 16  位整数解码顺序 :调整字元件的解码顺序,对于 Modicon PLC 及标准 PLC
设备,使用默认值即可。

16 位整数解码顺序  举例:0x0001
0―12  表示字元件高低字节不颠倒(默认值) 表示 1
1―21  表示字元件高低字节颠倒  表示 256
  32  位整数解码顺序 :调整双字元件的解码顺序,对于 Modicon PLC,请设置为
“2-3412”顺序解码。
32 位整数解码顺序  举例:0x0000 0001
0―1234 表示双字元件不做处理直接解码(默认值)  表示 1
1―2143  表示双字元件高低字不颠倒,但字内高低字节颠倒表示 256
2—3412  表示双字元件高低字颠倒,但字内高低字节不颠倒表示 65536
3—4321 表示双字元件内 4 个字节全部颠倒  表示 1677 7216

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-03 22:21:20 8楼
 


回复内容:

对: 尝试努力 要想大家帮你解决问题,你要告诉大家数显表的型号,或者将... 内容的回复!

-------------------------

我有上传仪表的通讯协议啊,就举个简单的例子,这个数显表的A相电压,寄存器地址是57,58。我更新一下帖子,最后那张图片,麻烦帮忙看看怎么设置

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-03 22:21:26 9楼
 


回复内容:

对: 尝试努力 要想大家帮你解决问题,你要告诉大家数显表的型号,或者将... 内容的回复!

-------------------------

我有上传仪表的通讯协议啊,就举个简单的例子,这个数显表的A相电压,寄存器地址是57,58。我更新一下帖子,最后那张图片,麻烦帮忙看看怎么设置

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-03 22:24:15 10楼
 


回复内容:

对: 请叫我王老湿 肯定要有相应寄存器地址,要不然你怎么知道数值对应的寄存... 内容的回复!

-------------------------

我的附件就是仪表的通信协议,里面有地址,帖子我也更新了,最后一张图片,比如显示A相电压,我知道地址是57,58。但是不知道MCGS里面如何设置

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-03 22:28:19 11楼
 


回复内容:

对: 请叫我王老湿 肯定要有相应寄存器地址,要不然你怎么知道数值对应的寄存... 内容的回复!

-------------------------

我的附件就是仪表的通信协议,里面有地址,帖子我也更新了,最后一张图片,比如显示A相电压,我知道地址是57,58。但是不知道MCGS里面如何设置

回复内容:

对: SPweak 你需要查一下表的电流,电压的MODBUS协议,寄存器地... 内容的回复!

-------------------------

但是我增加通道,比如4区,对应的功能码就是03,也就是读,但是增加通道比如是要读寄存器57,58。换算成10进制就应该是87,88。MCGS里面要增加一位,那我要读的寄存器地址就应该是88,89。关键问题就在这里,我每次增加的通道是一个,地址也是一个地址,他的A相电压的数据又是2个寄存,我就不知道该怎么来读取这个数据了。

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-03 22:31:24 12楼
 


回复内容:

对: 启 先看仪表说明书,每种仪表的地址都可能不一样。如温湿度模... 内容的回复!

-------------------------

我知道查询对应的寄存器地址,比如   A相电压  寄存器地址为57,58。但是我MCGS里面读寄存器不是只能读一个吗?他这个A相电压的数据寄存器是两个啊,我该怎么设置才能读到数据呢?

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-03 22:33:42 13楼
 


回复内容:

对: SPweak 你需要查一下表的电流,电压的MODBUS协议,寄存器地... 内容的回复!

-------------------------

我知道查询对应的寄存器地址,比如   A相电压  寄存器地址为57,58。但是我MCGS里面读寄存器不是只能读一个吗?他这个A相电压的数据寄存器是两个啊,我该怎么设置才能读到数据呢

  回复 引用 举报
问学_23 个人主页 给TA发消息 加TA为好友 发表于:2019-04-04 10:27:51 14楼
 

根据 A相电压  寄存器地址为57,58 的数据类型,相应调整增加通道对话框中的数据类型,然后就可以了,不应当为“16位无符号二进制数”应当为实数 或整数  32位

  回复 引用 举报
问学_23 个人主页 给TA发消息 加TA为好友 发表于:2019-04-04 10:57:38 15楼
 

说明书中   A相电压  寄存器地址为57,58 的数据类型 为4字节表示的浮点型

数据,    应当选为 32位  浮点数  float


  回复 引用 举报
ozoner 个人主页 给TA发消息 加TA为好友 发表于:2019-04-04 13:03:27 16楼
 

建议最好先自己看看昆仑通态关于设备通讯相关的视频教程以及可参考的工程样例,不明白的再说。 别人帮你做好的和你自己学会的是有很大的不同的哦。

  回复 引用 举报
个人主页 给TA发消息 加TA为好友 发表于:2019-04-04 14:11:14 17楼
 



引用 问学_23 的回复内容: 说明书中   A相电压  寄存器地址为57,58 的数...

-------------------------

正解

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-04 15:46:42 18楼
 


回复内容:

对: 问学_23 说明书中   A相电压  寄存器地址为57,58 的数... 内容的回复!

-------------------------

数据类型选32位浮点数,但是我没弄懂的是这个寄存器地址,MCGS里面设置通道,添加通道,然后选4区输出寄存器,里面的地址不是只能填一个寄存器地址吗?他这个寄存器地址是两个,相当于A相电压的数据是再两个寄存器内的,我怎么来读取两个寄存器,然后把读取的数据显示到人机界面上呢

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-04 15:57:49 19楼
 


回复内容:

对: ozoner 建议最好先自己看看昆仑通态关于设备通讯相关的视频教程以... 内容的回复!

-------------------------

我如果懂肯定就不会问嘛,我需要各位大神的指点,并不是说让你们帮我做好,如果你懂的话,请帮忙指点一二,如果你不想说就算了,也没必要这样来说我,先关资料我肯定会看,就是目前没弄明白,希望得到大家的指点,如果大家都是你这种心态,不懂你自己去看得话,那这个技术论坛还有何存在的意义

  回复 引用 举报
尝试努力 个人主页 给TA发消息 加TA为好友 发表于:2019-04-04 16:21:16 20楼
 

1.触摸屏上做一个数值显示。2.实时数据库里建一个数值型变量(如A相电压)。3.组态好设备,打开设备窗口,增加设备对应的设备通道(连接数据类型。你多尝试几次,不同的数据显示不一样)。4.连接变量(如A相电压)5.将触摸屏的数值显示连接到变量(显示输出,数值量输出,表达式 A相电压)。57、58通道地址写57就可以。

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-04 16:27:09 21楼
 


回复内容:

对: 尝试努力 1.触摸屏上做一个数值显示。2.实时数据库里建一个数值... 内容的回复!

-------------------------

这个样子我试过了,感觉这种方式适用于数显表有直接输出的可以这样操作,但是如果下位机必须要上位机发出询问,下位机才作出回应,这种该怎么处理呢

  回复 引用 举报
尝试努力 个人主页 给TA发消息 加TA为好友 发表于:2019-04-04 16:27:35 22楼
 

触摸屏和数显表要是通讯正常的话,数显表上的通讯指示灯会不断闪烁(你的数显表应该也会有通讯指示灯)还连不上的话可以短信给我。

  回复 引用 举报
尝试努力 个人主页 给TA发消息 加TA为好友 发表于:2019-04-04 16:29:17 23楼
 


回复内容:

对: lx2009152006 回复内容:对: 尝试努力  1.触摸屏上做一个数值显示... 内容的回复!

-------------------------

这和你的咨询题目有点不一致啊


  回复 引用 举报
ozoner 个人主页 给TA发消息 加TA为好友 发表于:2019-04-04 18:32:24 24楼
 


回复内容:

对: lx2009152006 回复内容:对: ozoner  建议最好先自己看看昆仑... 内容的回复!

-------------------------

我想你是误解了,说真的,串口Modbus RTU通讯可以说是工控中非常基础的东西了。只要有产品手册,提供到register信息,就没什么了,设置参数只不过是把需要用到的东西放进去就完了,明白协议是怎么回事就行了。这些我敢说普普通通的工控人都会,否则饭碗都可能保不住,真的没你想象的那么难,不需要找什么大神啊。 搞得好像大神也太不值钱了。 论坛作用也是有限的, 等你问个高深的问题的时候, 即使真的大神知道怎么搞,也不会无偿来这里告诉你的。 现实真的是这样,不能期望太高。

  回复 引用 举报
山东朝阳 个人主页 给TA发消息 加TA为好友 发表于:2019-04-04 19:51:45 25楼
 

好贴子,这样一问一答的真张知识,挺好。

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-04 23:04:34 26楼
 


回复内容:

对: ozoner 回复内容:对: lx2009152006  回复内容:... 内容的回复!

---------------------

首先感谢你的建议,我会慢慢学习,不过目前我也是处于新手阶段,所以有太多问题不懂需要学习,谢谢

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-04 23:10:02 27楼
 


回复内容:

对: 尝试努力 触摸屏和数显表要是通讯正常的话,数显表上的通讯指示灯会... 内容的回复!

-------------------------

我一直没注意数显表上是否有通讯的灯,只是一直看的mcgs里面的通讯那个通讯值是0就表示通讯成功了,但是我开始设置也是按你给我说的方式设置的,建立通道,然后选4区输出继电器,数据类型选32位浮点数,寄存器地址,说明书上是16进制的57,58。换算成10进制就是87,88.mcgs顺佳一位,就该是88,89.寄存器地址我填的88.目前还是一直无法读取数据,地址87,88,89都试过。明天我再多试一下看看。感谢帮忙

  回复 引用 举报
成功在于每一天 个人主页 给TA发消息 加TA为好友 发表于:2019-04-05 09:32:24 28楼
 

先建立数据库吧。

  回复 引用 举报
问学_23 个人主页 给TA发消息 加TA为好友 发表于:2019-04-05 09:53:41 29楼
 

MODSCAN32.jpg你可以用这个软件在电脑上先试一下MODBUS RTU 的通迅,用串口线(485调试必备)接到你的电能表的485输出端,先正确的读出数据来,再与触摸屏连接你就会清楚好多了,我当初试485通迅时也是这样摸索过来的。

  回复 引用 举报
问学_23 个人主页 给TA发消息 加TA为好友 发表于:2019-04-05 10:01:40 30楼
 

串口线.jpg一端是USB口与电脑连接。

  回复 引用 举报
aqdhy123 个人主页 给TA发消息 加TA为好友 发表于:2019-04-05 10:07:18 31楼
 

4开头,另外浮点数在建地址的时候可以直接选择吧

  回复 引用 举报
ozoner 个人主页 给TA发消息 加TA为好友 发表于:2019-04-05 10:49:04 32楼
 

30楼的建议才是最好的解决问题的途径,任何没搞过的Modbus RTU设备, 一定要先用串口软件,ModScan 或Modbus Poll 等,这类串口调试软件很多,调试必备。先用这些调试软件,尝试读写,等什么都清楚了,再连接PLC或触摸屏等,参数依照得到的信息来设置就行了,这才是正解。否则,会走很多弯路去摸索,当然对初学者也没什么坏处。不信楼主去下个串口调试弄弄看,相信用不了几下自己就能搞出来的。

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-05 11:01:34 33楼
 


回复内容:

对: ozoner 30楼的建议才是最好的解决问题的途径,任何没搞过的Mo... 内容的回复!

-------------------------

好的,我去试试,感谢各位

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-05 11:02:19 34楼
 


回复内容:

对: 问学_23 一端是USB口与电脑连接。 内容的回复!

-------------------------

好的,感谢建议,我去试试


  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-05 14:20:41 35楼
 


回复内容:

对: 尝试努力 1.触摸屏上做一个数值显示。2.实时数据库里建一个数值... 内容的回复!

-------------------------

感谢大哥指导,原来我一直搞错了,我一直以为说明书给的是16进制的地址57,58,我老是转换成10进制去填87,88。结果说明书给的就是10进制,只需要顺加以为,地址填58,59就解决了问题,还是感谢指导,谢谢

  回复 引用 举报
lx2009152006 个人主页 给TA发消息 加TA为好友 发表于:2019-04-05 14:21:14 36楼
 


回复内容:

对: ozoner 30楼的建议才是最好的解决问题的途径,任何没搞过的Mo... 内容的回复!

-------------------------

感谢大哥指导,原来我一直搞错了,我一直以为说明书给的是16进制的地址57,58,我老是转换成10进制去填87,88。结果说明书给的就是10进制,只需要顺加以为,地址填58,59就解决了问题,还是感谢指导,谢谢

  回复 引用 举报
ozoner 个人主页 给TA发消息 加TA为好友 发表于:2019-04-05 15:01:26 37楼
 


回复内容:

对: lx2009152006 回复内容:对: ozoner  30楼的建议才是最好的... 内容的回复!

-------------------------

习惯上一般的Modbus RTU 设备的地址一般都是用10进制数来表示的,不能说100%也差不多, 也确实有见过有用16进制数标明地址的,但一般也是要加H标明的,不过很少人用。曾看过一个厂家的说明书里地址都是用16进制, 看着怪别扭的。

  回复 引用 举报
hailong 个人主页 给TA发消息 加TA为好友 发表于:2019-04-07 14:53:44 38楼
 

应该是缺少地址吧

  回复 引用 举报
vs55pk1008 个人主页 给TA发消息 加TA为好友 发表于:2019-04-10 08:31:08 39楼
 

你读地址199、200、201看看,数据类型无符号整型,对应是A相电压,哪个对,地址就是哪个,读地址存在+1或者-1的问题的,还有就是电能表的一次侧浮点数据读出来可能会不准,我一般都是读2次侧整形数据的。

  回复 引用 举报
mmk001 个人主页 给TA发消息 加TA为好友 发表于:2019-04-11 14:36:53 40楼
 

肯定通讯是正常的

  回复 引用 举报
Smile-lyc 个人主页 给TA发消息 加TA为好友 发表于:2019-05-16 20:59:20 41楼
 

感谢诸位大师积极答疑,同时也希望求助楼主在得到满意答案以后或自己已经找到问题解决方案以后,跟自己帖子分享经验,如果是积分悬赏求助,请及时结贴发放积分奖励。

  回复 引用 举报
孝感鼎程自动化 个人主页 给TA发消息 加TA为好友 发表于:2019-05-27 21:33:44 42楼
 

不错,非常经典

  回复 引用 举报
Zhang99880 个人主页 给TA发消息 加TA为好友 发表于:2019-05-31 21:49:11 43楼
 

回复内容:

对:问学_23 你可以用这个软件在电脑上先试一下MODBUS RTU 的通迅,用串口线(485调试必备)接到你的电能表的485输出端,先正确的读出数据来,再与触摸屏连接你就会清楚好多了,我当初试485通迅时也是这样摸索过来的。     内容的回复:

兄弟能加一个微信和你学习吗?我刚学

  回复 引用 举报
Zhang99880 个人主页 给TA发消息 加TA为好友 发表于:2019-05-31 21:50:39 44楼
 

回复内容:

对:ozoner 30楼的建议才是最好的解决问题的途径,任何没搞过的Modbus RTU设备, 一定要先用串口软件,ModScan 或Modbus Poll 等,这类串口调试软件很多,调试必备。先用这些调试软件,尝试读写,等什么都清楚了,再连接PLC或触摸屏等,参数依照得到的信息来设置就行了,这才是正解。否则,会走很多弯路去摸索,当然对初学者也没什么坏处。不信楼主去下个串口调试弄弄看,相信用不了几下自己就能搞出来的。     内容的回复:

师傅能教下我吗?怎么搞我刚学

  回复 引用 举报
凡尘一过客 个人主页 给TA发消息 加TA为好友 发表于:2019-06-28 09:53:52 47楼
 

都是人才啊,佩服

  回复 引用 举报

周点击排行
周回复排行
最新求助
Advertisement