冷面文生
Be Careful,this wire is live.
级别: 论坛先锋
精华主题: 0
发帖数量: 13 个
工控威望: 1070 点
下载积分: 10766 分
在线时间: 66(小时)
注册时间: 2018-04-21
最后登录: 2024-05-21
查看冷面文生的 主题 / 回贴
楼主  发表于: 2018-06-27 15:40
现在通过扫码枪将ASCII码对应的10~20个字符数据发送至PLC D0起始的的寄存器,如A000,1.800*250.0*C或A000A,2.000*1310*C 怎样分离并提取星号里的整数?
请赐教
uu.liu
COG_FOG_COF_贴片_  贴合
级别: 家园常客
精华主题: 0
发帖数量: 761 个
工控威望: 979 点
下载积分: 13510 分
在线时间: 484(小时)
注册时间: 2011-09-20
最后登录: 2024-05-21
查看uu.liu的 主题 / 回贴
1楼  发表于: 2018-06-27 16:42
其实PLC处理数据是最不方便的,你可以把一个字拆成两个8位,因为一个字节占用8位,然后把这些字节分到不同的字中,可以判断出*号的位子,然后取出数据,这个方法就是判断每一个字。
楼主留言:
真诚感谢!通过WTOB进行字节拆分,再通过SER搜索*号的就做到了。
QQ:569456723
tingfenghu
级别: 工控侠客

精华主题: 0
发帖数量: 2793 个
工控威望: 3565 点
下载积分: 3409 分
在线时间: 3718(小时)
注册时间: 2007-11-04
最后登录: 2024-05-21
查看tingfenghu的 主题 / 回贴
2楼  发表于: 2018-06-27 19:00
Q系列有命令直接提取的。
right   left
指定提取位置就可以。

如果不支持这两个指令,
只能用逻辑运算,将需要保留的位 与1进行运算,
不保留与0运算,然后向右移位。
单片机程序基本上是这样处理的。
二手PLC,触摸屏,伺服驱动,各类气动设备
http://shop58129605.taobao.com/