• «
  • 1
  • 2
  • »
  • Pages: 1/2     Go
偶是天宁宁
级别: 探索解密
精华主题: 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
这些数据我都不知道怎么冒出来的.
hstec2002
级别: 论坛先锋
精华主题: 0
发帖数量: 0 个
工控威望: 1997 点
下载积分: 9718 分
在线时间: 814(小时)
注册时间: 2021-05-05
最后登录: 2025-09-14
查看hstec2002的 主题 / 回贴
1楼  发表于: 20天前
数据类型是浮点数,运算又用DSUB,当然是这样。
本帖最近评分记录:
  • 下载积分:+1(偶是天宁宁) 真诚感谢!
  • QQ: 2845452345
    飞龙舞天
    级别: 略有小成
    精华主题: 0
    发帖数量: 0 个
    工控威望: 443 点
    下载积分: 1048 分
    在线时间: 485(小时)
    注册时间: 2014-06-24
    最后登录: 2025-09-14
    查看飞龙舞天的 主题 / 回贴
    2楼  发表于: 20天前
    浮点数就得用浮点运算指令,不能用普通运算指令
    本帖最近评分记录:
  • 下载积分:+1(偶是天宁宁) 热心助人!
    rongbing
    级别: 论坛先锋
    精华主题: 0
    发帖数量: 0 个
    工控威望: 1390 点
    下载积分: 28936 分
    在线时间: 327(小时)
    注册时间: 2015-02-15
    最后登录: 2025-09-14
    查看rongbing的 主题 / 回贴
    3楼  发表于: 20天前
    运算法则不对,当然结果就不对,很正常,不要老想着,是plc的问题
    本帖最近评分记录:
  • 下载积分:+1(偶是天宁宁) 感谢分享!
    15811806196
    级别: 略有小成
    精华主题: 0
    发帖数量: 0 个
    工控威望: 274 点
    下载积分: 865 分
    在线时间: 195(小时)
    注册时间: 2021-10-23
    最后登录: 2025-09-14
    查看15811806196的 主题 / 回贴
    4楼  发表于: 20天前
    第一行是整数运算,下面的是浮点运算,即使是同一个寄存器当然显示的结果也不一样
    本帖最近评分记录:
  • 下载积分:+1(偶是天宁宁) 好贴好贴!
    congrikunge
    级别: 家园常客
    精华主题: 0
    发帖数量: 0 个
    工控威望: 549 点
    下载积分: 561 分
    在线时间: 789(小时)
    注册时间: 2016-04-22
    最后登录: 2025-09-13
    查看congrikunge的 主题 / 回贴
    5楼  发表于: 20天前
    你自己指令用错了 而已。。。
    本帖最近评分记录:
  • 下载积分:+1(偶是天宁宁) 真是好人!
    17312588730
    级别: 探索解密
    精华主题: 0
    发帖数量: 0 个
    工控威望: 171 点
    下载积分: 100296 分
    在线时间: 144(小时)
    注册时间: 2019-05-27
    最后登录: 2025-09-14
    查看17312588730的 主题 / 回贴
    6楼  发表于: 20天前
    是的,第一行就错了
    本帖最近评分记录:
  • 下载积分:+1(偶是天宁宁) 好人好运
    工控小c
    级别: 工控侠客
    精华主题: 0
    发帖数量: 2 个
    工控威望: 2307 点
    下载积分: 8520 分
    在线时间: 482(小时)
    注册时间: 2022-10-14
    最后登录: 2025-09-14
    查看工控小c的 主题 / 回贴
    7楼  发表于: 20天前
          
    本帖最近评分记录:
  • 下载积分:+1(偶是天宁宁) 说得对啊
    偶是天宁宁
    级别: 探索解密
    精华主题: 0
    发帖数量: 0 个
    工控威望: 108 点
    下载积分: 454 分
    在线时间: 11(小时)
    注册时间: 2023-12-10
    最后登录: 2025-09-03
    查看偶是天宁宁的 主题 / 回贴
    8楼  发表于: 20天前
    谢谢 PLC指令还不熟悉
    feifei23728
    级别: 略有小成
    精华主题: 0
    发帖数量: 0 个
    工控威望: 226 点
    下载积分: 819 分
    在线时间: 109(小时)
    注册时间: 2013-05-15
    最后登录: 2025-09-13
    查看feifei23728的 主题 / 回贴
    9楼  发表于: 20天前
    用的全都是软元件地址,不区分类型的。而且进给值和当前值尽量用DINT,运算的时候用FLOAT不损失精度,最终还是要转换为DINT给电机,如果用标签能避免类型的问题,用错了有提示
    本帖最近评分记录:
  • 下载积分:+1(偶是天宁宁) 真诚感谢!
    hgz284631157
    工控小君
    级别: 家园常客
    精华主题: 0
    发帖数量: 385 个
    工控威望: 548 点
    下载积分: 1647 分
    在线时间: 209(小时)
    注册时间: 2009-04-07
    最后登录: 2025-09-12
    查看hgz284631157的 主题 / 回贴
    10楼  发表于: 19天前
    引用
    引用第1楼hstec2002于2025-08-26 07:20发表的  :
    数据类型是浮点数,运算又用DSUB,当然是这样。



    正解
    sunzengli
    级别: 论坛先锋
    精华主题: 0
    发帖数量: 0 个
    工控威望: 1178 点
    下载积分: 1787 分
    在线时间: 259(小时)
    注册时间: 2021-07-09
    最后登录: 2025-09-13
    查看sunzengli的 主题 / 回贴
    11楼  发表于: 16天前
    可不单单三菱是这样,梯形图语言进行运算就是件非常麻烦的事,单精度整数,双精度整数,浮点数,是三套不同的运算指令,数据类型不同要先转换再运算。所有的PLC都是如此,博图弄的稍微方便一点,让你把指令拖到界面上然后选择数据类型,本质上是一样的。
    所以,梯形图语言不擅长数据运算,它的长项是逻辑处理。
    • «
    • 1
    • 2
    • »
    • Pages: 1/2     Go