您现在所在的是:

三菱Mitsubishi

回帖:9个,阅读:4077 [上一页] [1] [下一页]
2574
lujianmei12
文章数:731
年度积分:50
历史总积分:2574
注册时间:2011/1/25
发站内信
发表于:2013/8/17 20:13:25
#0楼
我最近接手上一个工程师的项目,要修改他的FX3U的程序。
程序当中很多地方用32位整数比较指令,只有个别高位寄存器被别的地方占用。

机器平时运转没什么问题,过了两个月后,机器就开始速度不受控制(液压油油量变得比较大),
我用软件监控,发现32位整数比较的数据混乱了(以前监控的时候挺正常的),触摸屏上面很多输入数据的地方成斜杠了。
然后我把32位整数比较指令全部换成16整数比较指令,那被占用的高位寄存器换成了别的寄存器,之后机器就正常了,监控制的数据也正常了。


这个问题想了很长时间,还是想不透,所以就来这里问问。
这里有什么玄机吗???
11770
gzg_00
文章数:8996
年度积分:59
历史总积分:11770
注册时间:2009/10/1
发站内信
发表于:2013/8/17 20:41:49
#1楼
不知道程序故意的编的有问题还是水平问题
2574
lujianmei12
文章数:731
年度积分:50
历史总积分:2574
注册时间:2011/1/25
发站内信
发表于:2013/8/17 21:42:38
#2楼
为什么改成16位比较后,数据就正常了??
自己搞不明白啊!
3864
www.xutengfei
文章数:818
年度积分:50
历史总积分:3864
注册时间:2010/12/8
发站内信
发表于:2013/8/18 6:56:15
#3楼
超出范围了!
虚心请教,努力学习!
85326
ZCMY 版主
文章数:47405
年度积分:1385
历史总积分:85326
注册时间:2004/3/16
发站内信
2018论坛贡献奖
2018春节活动(三)
2017论坛优秀版主
2017国庆活动(三)
2016论坛优秀版主
2015论坛优秀版主
2014论坛优秀版主
2014相约国庆
2013论坛优秀版主
2012论坛优秀版主
2011论坛贡献奖
2010年论坛优秀版主
发表于:2013/8/18 9:19:58
#4楼
  呵呵;正常设计程序时首先要考虑对应的数据范围,如果在-32768~32767间不可能超的话,还是直接用16位的,如果有可能会超,则使用32位的,32位是二个二个用的,上面的一个寄存器注意不要占用;
 按上面的描述,可能是程序设计不够严谨;
2574
lujianmei12
文章数:731
年度积分:50
历史总积分:2574
注册时间:2011/1/25
发站内信
发表于:2013/8/18 11:26:37
#5楼
我改成16位比较的时候,一个一个对着看,没有超出范围(除了那些高位被占用的),所以我敢全部改成16位比较。

因为程序步数太多了,1万多步,所以毛病的根源一下找不出来。
19272
PLC-hmi
文章数:7447
年度积分:529
历史总积分:19272
注册时间:2010/8/19
发站内信
2018论坛热心网友
发表于:2013/8/18 12:48:20
#6楼
没有那么大的数据,用32位也是浪费。
2574
lujianmei12
文章数:731
年度积分:50
历史总积分:2574
注册时间:2011/1/25
发站内信
发表于:2013/8/18 14:39:02
#7楼
现在虽然好了,但是是什么原因引起的,至今还没弄明白。
2574
lujianmei12
文章数:731
年度积分:50
历史总积分:2574
注册时间:2011/1/25
发站内信
发表于:2013/8/19 20:14:23
#8楼
今天上班我又监控了一下,情况是这样的:

    比如,>=  D2076   D2150,D2150的数据为819,改成32位比较后,D>=  D2076   D2150,D2150的数据为-64717,高位D2151没有被别的地方占用,但D2151的数据为16个1(二进制)。

    64717+819=65536(1 0000 0000 0000 0000)

  搞不明白为什么会这样??
   请大侠解释一下吧。
2574
lujianmei12
文章数:731
年度积分:50
历史总积分:2574
注册时间:2011/1/25
发站内信
发表于:2013/8/22 23:09:09
#9楼
我用指令复位了一下,LD M8000 ZRST D0 D7999,然后把这个复位的删掉,再监控,D2151还是16个1,很多数据寄存器都是16个1。

难道16个1就是为0吗?

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

62.4004