cpu224xp做modbus主站接收从站数据并将数据转化编程的问题

cpu224xp作为主站,接收modbus从站的数值,数值的变化范围0——10万(可能),请问如何编程实现,如何选择合适的V寄存器,如果选字,肯定不够,如果选双字,就会出现下面图片的问题,接收为1时,显示如下,接收为4000时,显示如下,如果采用双字循环移位16,对于4000是可以的,但对于1,是不适合的,求解答,如何编程实现正确转化:
图片一显示的数值,二进制为:0000 0000 0001 0000 0000 0000 0000 0000
图片二显示的数值,二进制为:0000 1111 1010  0000 0000 0000 0000 0000

图片说明:

cpu224xp做modbus主站接收从站数据并将数据转化编程的问题    cpu224xp做modbus主站接收从站数据并将数据转化编程的问题   

最佳答案

不是这么搞的。你要看从站的数据格式,是字还是双字。然后再看PLC侧,如何处理数据。

你的截图,应该不是最初接收的数据。因为当你的数据为1时,VW50=256,而当数据是4000时,VW50=4000.

接收数据的处理,不需要移动。只需要把数据,重新按字节组合就可以。
如接收数据存在vd50.
MOVW VW50,VW102
MOVW VW52,VW100
那么VD100可能就是你需要的值。具体如何组合,要看你仪表和PLC的数据存储方式。详细的资料,你可以搜索大端对齐和小端对齐。但是搞明白这些是很烧脑的。也有简单的方式。
-
比如,十进制400,058,552的二进制为(0001 0111)(1101 1000)(0110 1000)(1011 1000).最前面是31位,最后面是第0位。在任何设备中,只要是双整都是这么显示的,不同的是存储方式。但是最基本的存储单元是字节,也就是8个位,所以每个( )中的8个位一定是在一起的。
对于西门子的200系列PLC,如果把400,058,552存到VD100,那么上面的4个字节依次为(VB100)(VB101)(VB102)(VB103)
假设从仪表读过来的数据存在VD50。如果VD50的数值就是400,058,552,那么你就不需要做任何处理。这一般是和西门子的PLC通信的时候。
如果数值不是400,058,552,那你把VD50以二进制显示(16进制最好)。比如显示的是这样:(1011 1000)(0110 1000)(1101 1000)(0001 0111)=(VB50)(vb51)(VB52)(VB53)。你对比正确的二进制就会发现,他只是把顺序反过来了,你直接把顺序搞正,再放到一个新的地址(比如:VD100)就可以了。具体就是VB53->VB100,VB52->VB101,VB51->VB102,VB50->VB103.此时,VD100就应该和从站的数值相同了。

提问者对于答案的评价:

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

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

相关推荐

  • 1PH7133-7FG30-0BK0升级型号是哪个

    请问大家知不知道这个电机:1PH7133-7FG30-0BK0的升级型号 最佳答案 如何处理西门子电机停产替换问题https://support.industry.siemens.…

    SIMATIC S7-200 2021年7月5日
  • TD400C 文本显示不全

    为什么一个用户菜单下的两个屏幕,屏幕0正常,屏幕1的左下角有两个字符区显示不出来,改中文也显示不出来 图片说明:        &…

    2017年11月16日
  • 超级终端和CPU224XP的接口

    我用超级终端功能,想和自由口状态下的CPU224XP通讯,我用的电缆是USB口的PC/PPI电缆,在走到“Connect to”这一步的时候,对话框提供的接口,只有COM…

    SIMATIC S7-200 2020年11月1日
  • S7_200软件安装问题

    见如下图片,我的系统是WIN7 32位的 sp1,但安装时老是出现如图片显示问题,请大侠帮忙解决下,以前装过sp6的,已经卸载了 问题补充:在C盘内已经找不到任…

    2018年12月6日
  • 自由口通信,求助。

    SMB8第三位,c/m。0=定时器是内部字符定时器,1=定时器是信息定时器。这两种定时器有什么区别。 最佳答案 这个应该是SMB87、SMB187的吧这两种定时器是RCV接收指令判…

    SIMATIC S7-200 2018年12月5日
  • win7 64位安装 sp9失败

    安装失败,程序一直在也卸载不了,从新安装也不成功,提示如图 图片说明:             &n…

    2017年8月16日
  • S7-200如何恢复出厂设置

    S7-200 PLC,怎样恢复出厂设置,恢出厂设置后,PLC里面的内容是不是还有,请高手教我! 最佳答案 用Wipeout.exe,复位后和出厂是一样的,什么都没有了&n…

    SIMATIC S7-200 2021年7月4日
  • 新人刚开始接触,软件连接的问题

    S7200 smart连接电脑的时候LINK灯亮的,通信接口是空白的,不像其他人的有选择,查找只能找到IP0.0.0.0,点击显示不能使用该IP,想问问这是因为什么引起的…

    2021年7月5日
  • 编码器高速计数程序

    请问各位:用一编码器测电机轴的转速,S7 200如何编程,需要测正转和反转速度。能否提供些实例。谢谢各位! 问题补充:主程序:LD   &n…

    SIMATIC S7-200 2020年11月1日
  • 分析油料控制系统

    这是一单食用油发油装车控制系统的编程控制程序,此系统是两台触摸屏控制两个称重油箱上卸油。请有兴趣的高工帮忙分析注释一下。 问题补充:图片我没办法整理上传,只能把完整的程序发送给有兴…

    SIMATIC S7-200 2017年6月24日

发表回复

登录后才能评论