工控网首页
>

应用设计

>

解析超声波流量计通讯遇到的一些问题

解析超声波流量计通讯遇到的一些问题

2013/5/3 9:41:13

超声波流量计关于通讯方面问题的问答:

   • 问:为什么连接不上流量计?,接上后它不做任何反应?

    答: A. 检查串口参数是否匹配;位于 M63 窗口的协议选择是否正确

   B .检查物理连线是否接好

   D .位于 M46 窗口的地址是否设置正确

   C .把流量计重新上电,应该能接收到字符“ AT ”,否则 A 和B 步存在问题

    D .检查命令是否正确。在使用扩展协议时命令后面要紧跟者一个回车符号

  • 问:为什么 MODBUS 读出的量值乱七八糟的,和显示值完全不一致?

    答:一般来说如果 MODBUS 协议能够读出数据就表明协议本身没有问题了。乱七八糟的数据是因为存在如下错误:

   A .数据格式错误; B. 寄存器地址有误,导致数据发生了位移而产生错误。

   比如 REAL4 这种实型变量( IEEE754 格式的单精度浮点数),按照字和字节共有 4 种不同的排列方式, TDS100 使用的是最常规的一种,即低 word 和高 byte 在前格式。您可以修改您的软件的数据存放格式解决这个问题。如果使用通用的组态软件,则组态软件一般具有一个选择格式的方法。

   • 问:我的系统要求每次 1 小时只发出一次命令然后要求同时收到多个变量,应该使用 那个协议?

   答:一条 MODBUS 命令可以一次读出很多变量。如果 MODBUS-RTU 不能解决问题,可以使用使用“ & ”连接符号连接起来的海峰扩展协议。还可以使用简易兼容协议,或者 Meter-BUS 协议。

  • 问:为什么通过协议读出的量值和流量计显示的不一致?

   答: A. 确认变量地址是否就是您要求的那个变量?因为流量计内部的变量太多,是否混淆了 ? 注意在读取数据时, REG 0001 在命令字符串中表示为 0000 ,而不是 0001 。 0001 在命令字符串中表示读出 REG 0002 的内容。

    B .对于累积量只能显示 7 位 10 进制数字,而通过 MODBUS 协议可以读出 8 位 10 进制数字。这种情况下,读出来的数值的后 7 位是一样的。

   • 问:我的系统不能支持长整数以及实型变量格式,应该怎么办?

   答:需要采用数值转换方式,或查找新驱动程序解决。

  • 问: MODBUS 有测试程序吗?

   答:有!推荐使用 MODSCAN 这个软件,可以在网上搜到。这个程序很是方便,有助于方便检查读出的数据,理解各种类型数据的含义。

   • 问:流量计是否具有模拟运行状态以方便测试,怎样设置?

   答:有!在 M11 窗口中输入 0 值即启动模拟运行状态。模拟运行状态下总是设置流速为 1.2345678m /s ,瞬时流量等于 0 ,并且显示“ R ”状态。如果要求瞬时流量为设定值,则可以通过在 M44 窗口中输入一个负的设定值实现。例如在 M44 窗口中输入 -3600 立方米 / 秒。瞬时流量就会显示为 3600 立方米 / 秒。这时所有累积器也会做相应的累积。因此就得到了变化的累积量输出。使用这个功能,能在不接传感器的条件下,特别方便与联网软件的调试以及流量计功能的测试。

   • 问:使用 C 时,浮点数存放顺序是怎样的?

   答:例如 3F 9E 06 51 四个字节为 1.2345678 的 IEEE754 格式单精度浮点形式。在 MODBUS 数据流中的顺序是 06 51 3F 9E , 1 号地址数据流应该是 01 03 04 06 51 3F 9E 3B 32 (十六进制数字)。在 X86 计算机中使用 C 语言时,按照内存从低到高存放顺序 51 06 9E 3F 。

   再例如读取净累积寄存器 REG25 , REG26 两个寄存器命令如下 :

01 03 00 18 00 02 44 0C (十六进制数字)

   返回数据应该为(设净累积器= 802609 ,其 4 字节 16 进制表示为 00 0C 3F 31 )

01 03 04 3F 31 00 0C A7 ED (十六进制数字, A7 ED 为效验和)

投诉建议

提交

查看更多评论
其他资讯

查看更多

助力企业恢复“战斗状态”:MyMRO我的万物集·固安捷升级开工场景方案

车规MOSFET技术确保功率开关管的可靠性和强电流处理能力

未来十年, 化工企业应如何提高资源效率及减少运营中的碳足迹?

2023年制造业“开门红”,抢滩大湾区市场锁定DMP工博会

2023钢铁展洽会4月全新起航 将在日照触发更多商机