cpu224xp做modbus主站接收从站数据(数据范围0-100000),如何选择寄存器及编程

从站设备发送的是16进制数值,换成十进制是从0-10万的范围,如果选择字存储VW0,最多只能放0-32767,如果选择双字存储,容量是够了,不过比如说原来接收的数值是0AF0,,,换成VD0后,同样的数值,寄存器存储的样式变成了0AF00000,这就造成了错误,请问各位老师如何解决??直接用高低位转换指令吗?谢谢

最佳答案

请参考链接下面《S7-200 作为 Modbus 主站方接收上来的数据格式与第三方设备不一样怎么办?》
西门子PLC数据的存储格式为高位低存方式。举例:VD200中包含VW200和VW202,其中VW202是低字,VW200是高字。若第三方设备与西门子数据存储格式不同,是低位低存的方式,那么通信上来的数据就会存在错误,需要进行转换才能使用。编程的方式比较多样。
例如,针对单个字中高低字节的交换可以使用SWAP(字节交换)指令,若是双字中高低字的交换可以考虑循环移位指令。
比如双字循环右移16位就可以了。
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-portal/MicroPower2013/s7-200/communication/modbus/modbus%20master/Modbus%20master.htm

提问者对于答案的评价:
你好,当接收数值为1时,寄存器VD50就变成了16#01000000,分开显示,VB50显示的是1,VB51显示的是0,如果采用循环移位指令,请问怎么编程呢?应该需要沿触发吧,我采用sm0.0后面加沿触发好像不起作用,我把从从站接收的数据处理放在了子程序,如果需要循环,不知如何编程了

最佳答案作者回复:
sm0.0后面不能加沿,它是长时间接通的。
可以引入一个中间变量,比如 VD204,将原变量 VD200循环右移的数据不断地存入VD204,这样就不用沿触发了。
另外移位后的数据是不是对高字、低字还要进行交换,你得再看一下。

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc370877.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 下午4:33
下一篇 2021年7月5日 下午4:34

相关推荐

  • S7 200转换指令 ATH 和BCD_I

    指令ATH 和BCD_I如输入 LD SM0.0        &nb…

    SIMATIC S7-200 2021年7月5日
  • 三相电机变频器

    需要一款变频器来驱动4个200W三相异步电机,最好可以实现电机独立启动/停止。求教各位大神!! 问题补充:想要用一台变频器控制4个电机,但是每台电机可以实现独立启动/停止。这样可以…

    SIMATIC S7-200 2021年7月5日
  • 用模拟量模块输出的时候用编程软件编写梯形图怎么和plc本体的端子区分开

    用模拟量模块输出的时候用编程软件编写梯形图怎么和plc本体的端子区分开 最佳答案 在硬件组态时,PLC本体和扩展模块都会分配IO地址,根据这个IO地址编程。 提问者对于答案的评价:

    SIMATIC S7-200 2021年7月5日
  • 正向边沿跳变指令的疑惑

    要做个小程序在I0.1闭合时发出一个脉冲信号是Q0.0闭合,所以用了|p|指令 结果发现实现不了 不知道为什么,后来按照S7200帮助说明里 做了个小…

    2017年7月26日
  • 关于西门子EM235模拟量输入问题

    我用的是西门子EM235采集模拟量信号,测量方式是4-20MA电流信号,现在我遇到的问题是从变送器过来的信号被放大了几MA,模块的位置放在第三个槽上,CPU边上放个以太网模块,接下…

    SIMATIC S7-200 2018年3月6日
  • 哪位能给个学习PID指令的资料呀

    今天看PID指令,发现上学时《自动控制理论》真是白学了,现在对PID很多地方不理解。哪位老师能给点学习PID指令的资料呀?谢谢。 最佳答案 3、相关文档:<由入门到精通-吃透…

    SIMATIC S7-200 2020年10月31日
  • 200 和HMI的通讯

    我用S7 200  PLC 和威纶的HMI 进行通讯,通讯线我可不可以用两根两芯的485的线做,两个信号线加一地线。(这个线是用来…

    SIMATIC S7-200 2021年7月4日
  • 24小时延时控制

    我用S7-226控制两台水泵,要求24小时轮流起停,一台工作24小时后,停下,启动另一台,如此循环.请问,这个时间怎么控制呢? 最佳答案 可采用取实时时钟进行判断。使用 …

    SIMATIC S7-200 2020年11月1日
  • 视频

    对于西门子s7-200在学习方面各位老师和学长有没有好的学习视频那,麻烦发个链接,谢谢各位了 最佳答案 、西门子官网视频中心:http://www.ad.siemens.com.c…

    SIMATIC S7-200 2017年10月24日
  • 求说明书

    谁有224XP CN 的使用手册,请发到dglwq@21cn.com, 最佳答案 http://www.ad.siemens.com.cn/products/as/s7_200/上…

    SIMATIC S7-200 2021年7月5日

发表回复

登录后才能评论