偶是天宁宁
级别: 探索解密
精华主题: 0
发帖数量: 0 个
工控威望: 108 点
下载积分: 454 分
在线时间: 11(小时)
注册时间: 2023-12-10
最后登录: 2025-09-03
查看偶是天宁宁的 主题 / 回贴
楼主  发表于: 20天前
之前一部分程序调试都差不多了
因为机器顶出两个轴承,顶杆退回的时候会把轴承带出来,
于是设法让模板移动1到2个毫米,
把轴承卡住,再退回顶杆.
想着改一下程序就十几分钟.
结果没有想到,简直一个大坑,这也不行那也不行.
数据处理出现稀奇古怪的事情,想想之前测试的时候,
正负数电机正反转都好好的,正儿八经用到的时候,
幺蛾子是一个又一个,没完没了.




滚珠丝杠滑台,在X轴当前位置移动2mm,
当前位置存储在D230,数据类型32位浮点数,设置参数=300
移动数据存储在D252,数据类型32位浮点数,

执行指令DSUB D230 D252 D182
也就是300-2=298

监看状态数据D230变成1133903872,D252变成1073741828.
D182得出60162044.
莫名其妙。
下面DEDIV D182 D264 D184更加离谱
D182居然和上面不一样,变成了8.816e-037
这些数据我都不知道怎么冒出来的.
sunzengli
级别: 论坛先锋
精华主题: 0
发帖数量: 0 个
工控威望: 1178 点
下载积分: 1787 分
在线时间: 259(小时)
注册时间: 2021-07-09
最后登录: 2025-09-13
查看sunzengli的 主题 / 回贴
1楼  发表于: 16天前
可不单单三菱是这样,梯形图语言进行运算就是件非常麻烦的事,单精度整数,双精度整数,浮点数,是三套不同的运算指令,数据类型不同要先转换再运算。所有的PLC都是如此,博图弄的稍微方便一点,让你把指令拖到界面上然后选择数据类型,本质上是一样的。
所以,梯形图语言不擅长数据运算,它的长项是逻辑处理。