恭喜,你发布的帖子
发布于 2017-09-12 23:54:17
3楼
第一 ModScan32 用来模拟标准的 MODBUS RTU 或者MOBUS ASSII 的客户端的,你写的程序有错误.
调用库文件如下图
Mode: 1 = Modbus 协议 0= PPI 协议;
Addr: 将地址设置为 1 至 247 之间(包括边界)的值。
Baud: 将波特率设置为 1200、2400、4800、9600、19200、38400、57600 或 115200。
Parity: 应设置为与 Modbus 主站的奇偶验校相匹配。 所有设置使用一个停止位。 接受的值如下:
0(无奇偶校验)、1(奇校验)和 2(偶校验)。
Port: 设置物理通信端口(0 = CPU 中集成的 RS-485,1 = 可选信号板上的 RS-485 或 RS-232)。
Delay:通过使标准 Modbus 信息超时时间增加分配的毫秒数来延迟标准 Modbus 信息结束超时条件。
在有线网络上运行时,该参数的典型值应为 0。
如果使用具有纠错功能的调制解调器,则将延时设置为 50 至 100 ms 之间的值。 如果使用扩频无线通信,则将延时设置为 10 至 100 ms 之间的值。
延时”(Delay) 值可以是 0 至 32767 ms。
MaxIQ:用于设置 Modbus 地址 0xxxx 和 1xxxx 可访问的 I 和 Q 点数,取值范围是 0 至 256。
值为 0 时,将禁用所有对输入和输出的读写操作。 建议将 MaxIQ 值设置为 256。
MaxAI:用于设置 Modbus 地址 3xxxx 可访问的字输入 (AI) 寄存器数,取值范围是 0 至 56。
值为 0 时,将禁止读取模拟量输入。 建议将 MaxAI 设置最大值为56
MaxHold:用于设置 Modbus 地址 4xxxx 或 4yyyyy 可访问的 V 存储器中的字保持寄存器数;
HoldStart:是 V 存储器中保持寄存器的起始地址
Done: MBUS_INIT 指令完成时接通
Error: 错误代码
0=无错误 1=存储器范围错误 2=波特率或奇偶校验非法 3=从站地址非法 4=Modbus 参数值非法 5=保持寄存器与 Modbus 从站符号重叠 6=收到奇偶校验错误
7=收到 CRC 错误 8=功能请求非法/功能不受支持 9=求中的存储器地址非法 10=从站功能未启用 11=端口号无效 12=信号板端口 1 缺失或未组态
第二个网络
按上面所示再调用ModScan32做测试
通讯参数要与plc中的一致
请填写推广理由:
分享
只看
楼主