首页 上一页 1 2 下一页 尾页

k120s高速计数指令求助 点击:4088 | 回复:37



雷林子弟

    
  • 精华:0帖
  • 求助:2帖
  • 帖子:40帖 | 703回
  • 年度积分:0
  • 历史总积分:1542
  • 注册:2006年9月04日
发表于:2009-04-27 09:12:49
楼主
各位师傅:我采用k120s带编码器做高速计数用,指令是高速计数指令,采用的计数类型是线性计数,计数方式是cw/ccw两相计数,我的要求是:顺时针为加计数到4000时,如果继续顺时针转一直保持4000,如果逆时针转从4000减少,一直减到0,此时继续逆时针数值不变保持0,直到顺时针重复加计数。问题是:我在编码器通道采用预设值的方法设定到4000时计数器的现在值一直为4000。但是编码器继续顺时针转时数值还是在增加,虽然我监控看到的一直是4000,但好象实际上还在增加,因为如果在4000时再继续顺时针转两圈,那么反时针转时先要2圈,然后数值才开始从4000减少,可我的要求是一反转就要从4000减少。不知道是什么原因导致的?如果大家有什么好的办法实现上面的要求的话还盼多多指教!



求学111

  • 精华:0帖
  • 求助:0帖
  • 帖子:31帖 | 137回
  • 年度积分:0
  • 历史总积分:436
  • 注册:2006年2月08日
发表于:2009-04-27 11:04:37
1楼

组个比较,超过四千就让数值永远等于4000

 

雷林子弟

  • 精华:0帖
  • 求助:2帖
  • 帖子:40帖 | 703回
  • 年度积分:0
  • 历史总积分:1542
  • 注册:2006年9月04日
发表于:2009-04-27 11:18:56
2楼
我试用传送指令让数值为4000,可是计数值还是会变化,不知高速指令是不是不允许这样

雷林子弟

  • 精华:0帖
  • 求助:2帖
  • 帖子:40帖 | 703回
  • 年度积分:0
  • 历史总积分:1542
  • 注册:2006年9月04日
发表于:2009-04-27 11:26:46
3楼
除非在4000时断开高速计数时才不会变,但反转时也没变化,不满足要求,这个指令好象和一般的指令逻辑不同,不知有没有用过的高手能否说说

angell-yuan

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 225回
  • 年度积分:0
  • 历史总积分:68
  • 注册:2004年3月30日
发表于:2009-04-27 13:43:05
4楼

可以到这里复位归零来考虑.

雷林子弟

  • 精华:0帖
  • 求助:2帖
  • 帖子:40帖 | 703回
  • 年度积分:0
  • 历史总积分:1542
  • 注册:2006年9月04日
发表于:2009-04-27 13:58:09
5楼
楼上的能详细说说吗?复位归零好象不行,因为我这个数值还有其它用的,要用这个数值来控制速度的。

雷林子弟

  • 精华:0帖
  • 求助:2帖
  • 帖子:40帖 | 703回
  • 年度积分:0
  • 历史总积分:1542
  • 注册:2006年9月04日
发表于:2009-04-27 13:58:52
6楼
楼上的能详细说说吗?复位归零好象不行,因为我这个数值还有其它用的,要用这个数值来控制速度的。

雷林子弟

  • 精华:0帖
  • 求助:2帖
  • 帖子:40帖 | 703回
  • 年度积分:0
  • 历史总积分:1542
  • 注册:2006年9月04日
发表于:2009-04-27 20:41:29
7楼
有熟悉的吗?出来说说

雷林子弟

  • 精华:0帖
  • 求助:2帖
  • 帖子:40帖 | 703回
  • 年度积分:0
  • 历史总积分:1542
  • 注册:2006年9月04日
发表于:2009-04-28 10:40:11
8楼
lg的技术人员能不能出来说说。

雷林子弟

  • 精华:0帖
  • 求助:2帖
  • 帖子:40帖 | 703回
  • 年度积分:0
  • 历史总积分:1542
  • 注册:2006年9月04日
发表于:2009-05-04 11:17:06
9楼
看来这问题真有点难

LG产电MM

  • 精华:0帖
  • 求助:0帖
  • 帖子:6帖 | 174回
  • 年度积分:0
  • 历史总积分:342
  • 注册:2003年8月26日
发表于:2009-05-05 23:47:05
10楼

思路:load m0    hscst 0 4000 d0

            d>  d0 4000     dmov  4000  d100     rst m0

            d<=   d0 4000     dmov  d0  d100     set m0

            load f93 dmov  d0  d10

            load f10  d< d0 d10  set  m0

谨供参考。。。

雷林子弟

  • 精华:0帖
  • 求助:2帖
  • 帖子:40帖 | 703回
  • 年度积分:0
  • 历史总积分:1542
  • 注册:2006年9月04日
发表于:2009-05-07 15:55:28
11楼
楼上的mm:你好!你写的程序好象满足不了要求,因为m0复位后,高速计数器不会再计数,所以d0不会小于等于4000的,还有你后面两行有什么作用呢?

robotH

  • 精华:0帖
  • 求助:0帖
  • 帖子:7帖 | 688回
  • 年度积分:0
  • 历史总积分:2433
  • 注册:2004年10月14日
发表于:2009-05-07 16:10:25
12楼
如下图所示,当计数器当前值大于4000时,将D0赋值4000,同时SET M0。当计数器当前值小于0时,将D0赋值0,同时SET M0。M0置位后,下一扫描周期马上复位。

雷林子弟

  • 精华:0帖
  • 求助:2帖
  • 帖子:40帖 | 703回
  • 年度积分:0
  • 历史总积分:1542
  • 注册:2006年9月04日
发表于:2009-05-07 21:58:41
13楼
Robth:按照你的说法实验后还是有老问题:数值到了4000后,监控到的数值虽然一直是4000,但好像还在计数,因为如果到了4000后再顺时针转两圈,再反时针转时先要两圈才会从4000减少,而不是马上从4000减少,大家注意:这里面用的是hscst高数计数指令而不是一般的计数指令,plc连接的是编码器计数,大家还有什么高招都说出来吧,让我再试试。

robotH

  • 精华:0帖
  • 求助:0帖
  • 帖子:7帖 | 688回
  • 年度积分:0
  • 历史总积分:2433
  • 注册:2004年10月14日
发表于:2009-05-08 09:55:03
14楼

除了在Parameter中按照上图设定外,还要程序的配合。你可能程序编写的有问题。我写了一个示例程序,你试一下,能满足你的要求。

雷林子弟

  • 精华:0帖
  • 求助:2帖
  • 帖子:40帖 | 703回
  • 年度积分:0
  • 历史总积分:1542
  • 注册:2006年9月04日
发表于:2009-05-08 22:33:51
15楼
Robth:真的太谢谢你了!你的程序真的能满足要求呀,等了这么终于能解决问题了,真的太高兴了,原来M0要这编才可以呀。看来你真是这方面的专家呀!厉害!我还有个问题向你请教:K120s侧面那个485通讯口要不要设置什么才可以用呀?我现在要在那挂个文本显示器,文本是信捷的Op320-A通过232转485转换器来接上,但是通讯不上,用这个口和电脑也通讯不上,还有k120s的两个通讯口能同时使用吗?比如232我用来接电脑,485用来接文本。

雷林子弟

  • 精华:0帖
  • 求助:2帖
  • 帖子:40帖 | 703回
  • 年度积分:0
  • 历史总积分:1542
  • 注册:2006年9月04日
发表于:2009-05-08 22:36:47
16楼
对不起把你的称呼打错了,应该是roboth,真不好意思

XP Vista

  • 精华:4帖
  • 求助:11帖
  • 帖子:290帖 | 1797回
  • 年度积分:1
  • 历史总积分:3209
  • 注册:2002年3月17日
发表于:2009-05-09 15:15:28
17楼
如果你用LS得文本只要在PLC处COM2口选择允许就可以。但是你用新捷就不知道了!

雷林子弟

  • 精华:0帖
  • 求助:2帖
  • 帖子:40帖 | 703回
  • 年度积分:0
  • 历史总积分:1542
  • 注册:2006年9月04日
发表于:2009-05-09 15:22:52
18楼
我的是信捷的,只带232口

robotH

  • 精华:0帖
  • 求助:0帖
  • 帖子:7帖 | 688回
  • 年度积分:0
  • 历史总积分:2433
  • 注册:2004年10月14日
发表于:2009-05-09 18:58:35
19楼

K120S的9针D型口实际上是两个232口,2,3,5管脚是编程口,用来接电脑;4,7,5是CommCh0,可以直接用来连接信捷的文本,就不需要用232转485转换器了。侧面的485是CommCh1。使用CommCh0时要在Parameter中设定为enable,其它通讯参数和文本一致。PLC本体上的BUILT-IN CNET开关要拨为ON。(CNET开关在RUN/STOP开关右侧,上面的那一个,要用螺丝刀拨)

雷林子弟

  • 精华:0帖
  • 求助:2帖
  • 帖子:40帖 | 703回
  • 年度积分:0
  • 历史总积分:1542
  • 注册:2006年9月04日
发表于:2009-05-10 10:06:42
20楼
谢谢!我昨晚把通讯参数里全部试了一遍终于能通讯上了,文本参数与k120s参数设置一致,modbus通讯,不过我太明白rtu(hex)传送是什么意思,其实两个通讯口我都要用到,所以我才用到485,roboth:再问一下,232口的4,7脚哪个是发送脚?哪个是接收脚呢?

热门招聘
相关主题

官方公众号

智造工程师
    首页 上一页 1 2 下一页 尾页