三菱FX1S-10MT编程器脉冲信号暂停如何解决?(应用篇) 点击:3496 | 回复:14



好福气

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 133回
  • 年度积分:0
  • 历史总积分:187
  • 注册:2001年3月02日
发表于:2007-07-16 10:20:00
楼主
   最近,用三菱PLC写了一个程序控制步进驱动器(混合式的那种).PLC发送脉冲步进驱动器.可现场需要暂停功能,暂停取消后又要保证产品长度一致.搞了好几天,处理不了.真心希望各位朋友跟跟贴,帮我一把.



快速路到达

  • 精华:0帖
  • 求助:0帖
  • 帖子:8帖 | 73回
  • 年度积分:0
  • 历史总积分:102
  • 注册:2007年7月04日
发表于:2007-07-17 11:12:00
1楼
暂停在什么位置?停止前或重新启动最好有个近点,这样可以消除累计误差.如果精度要求很大,要么暂停在原点,要么要加上编码器.因为步进在每次加减速时会有一定丢步.

快速路到达

  • 精华:0帖
  • 求助:0帖
  • 帖子:8帖 | 73回
  • 年度积分:0
  • 历史总积分:102
  • 注册:2007年7月04日
发表于:2007-07-17 11:13:00
2楼
纠正一个字"如果精度要求很大"-->"如果精度要求很高"

stn

  • 精华:0帖
  • 求助:0帖
  • 帖子:10帖 | 265回
  • 年度积分:0
  • 历史总积分:354
  • 注册:2005年5月17日
发表于:2007-07-18 17:37:00
3楼
不考虑成本。


用私服啊


或加个编码器组成闭环嘛

工控学者2002

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 26回
  • 年度积分:0
  • 历史总积分:56
  • 注册:2007年3月06日
发表于:2007-07-19 16:24:00
4楼
用伺服 !

索泰克

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 388回
  • 年度积分:0
  • 历史总积分:1041
  • 注册:2007年7月09日
发表于:2007-07-20 00:09:00
5楼
可以做的,在驱动脉冲前将D8140和D8142复位,暂停时读取其数值,暂停结束后再补脉冲,暂停中使用M8145和M8146

好福气

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 133回
  • 年度积分:0
  • 历史总积分:187
  • 注册:2001年3月02日
发表于:2007-07-21 13:54:00
6楼
TO:快速路到达
首先,非常感谢你的回复.我的工况要求不使用编码器.我想用一个接近开关(定义:暂停/继续)来决定是否驱动步进电机工作,另外再用一个接近开关(定义:脉冲允许)来做为程序段的起始位.你说能实现吗?

好福气

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 133回
  • 年度积分:0
  • 历史总积分:187
  • 注册:2001年3月02日
发表于:2007-07-21 14:18:00
7楼
TO:索泰克
大哥:你好!恕我浅学,我还是不能明白你的意思.你能再指点一二么.该怎么写呀.
我编的这部分发给各位看看吧.
LD      M8000
OUT     M8028
LD      M8002
MPS
AND=    D224  K0(长度设置)
DMOV    K100  D224
MRD
AND=    D214  K0(速度设置)
DMOV    K300  D214
LD      X000(脉冲允许)
OR      M8002

好福气

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 133回
  • 年度积分:0
  • 历史总积分:187
  • 注册:2001年3月02日
发表于:2007-07-21 14:42:00
8楼
暂停/继续  功能应用防止步进电机过转矩高温烧坏.另外大家都清楚,步进驱动开环工作时,超过一定扭矩时,步长是很不稳定的.加装这一功能的目的就是防止以上情况的出现.
试想:把步进电机想象成一个稳定的驱动源,让它拉额定内的负载.它每次都能准确无误地完成.假如负载突然加大(过扭矩),比方应用在PVC片材机上前方转速下降,片材出料不够.这时片材是被拉成直线型的.那步进驱动系统分切该片材就严重影响长度(长度不够).长时间过载,电机容易烧坏.我设计这功能的初衷是任何时候,超过一定的上限位(可调整),步进驱动马达暂停.等出料有一定余量在按原先设定的值减去已发送的数值再工作.直到走完一个程序段为止.

索泰克

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 388回
  • 年度积分:0
  • 历史总积分:1041
  • 注册:2007年7月09日
发表于:2007-07-21 22:16:00
9楼
不用编码器的,我以16位的指令为例,只是这个脉冲的发出要使用PLSY指令,不方便做加减速的,你在输出PLSY(输出Y0为例)前,先将D8140清零一次,D8140记录的是Y0输出的脉冲数,也就是说你在驱动Y0输出脉冲前D8140=0,最好用脉冲指令清零,这样方便计算Y0的输出脉冲数,用一个M驱动PLSY,M的驱动用置位和复位指令,这样你要暂停时复位M,电机停下来再读取D8140的值,如果你的总脉冲数是1000,暂停下来时D8140的值是500的话,那么下一次你再输出写PLSY时输出脉冲数就只写500了,这样总数没变,暂停成功,要多暂停几次也可以,只是计算复杂一点而已

索泰克

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 388回
  • 年度积分:0
  • 历史总积分:1041
  • 注册:2007年7月09日
发表于:2007-07-22 15:45:00
10楼
感觉你的程序错了,你上面的程序无法编译成梯形图

快速路到达

  • 精华:0帖
  • 求助:0帖
  • 帖子:8帖 | 73回
  • 年度积分:0
  • 历史总积分:102
  • 注册:2007年7月04日
发表于:2007-07-22 19:10:00
11楼
"用一个接近开关(定义:暂停/继续)来决定是否驱动步进电机工作,另外再用一个接近开关(定义:脉冲允许)来做为程序段的起始位"

这种控制方案恐怕效果不好吧?用开关量去判断位置?

“超过一定的上限位(可调整),步进驱动马达暂停.等出料有一定余量”

这些定位数据在实际生产中你怎么得来的?每一次都估计的吗?

索泰克

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 388回
  • 年度积分:0
  • 历史总积分:1041
  • 注册:2007年7月09日
发表于:2007-07-25 11:48:00
12楼
暂停是可以做到的,至于在哪种情况下暂停则要楼主自己确认了

好福气

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 133回
  • 年度积分:0
  • 历史总积分:187
  • 注册:2001年3月02日
发表于:2007-07-27 14:47:00
13楼
谢谢各位,我已经对编程有点了解了.等到完全编好了.我在上传给各位看看.

songzg

  • 精华:0帖
  • 求助:0帖
  • 帖子:96帖 | 732回
  • 年度积分:0
  • 历史总积分:1884
  • 注册:2006年11月16日
发表于:2007-07-27 15:20:00
14楼

热门招聘
相关主题

官方公众号

智造工程师