hh29123627
级别: 探索解密
精华主题: 0
发帖数量: 57 个
工控威望: 150 点
下载积分: 5154 分
在线时间: 34(小时)
注册时间: 2018-11-20
最后登录: 2023-02-03
查看hh29123627的 主题 / 回贴
楼主  发表于: 2019-08-28 21:28
求助大神们分享下做运动控制编程思路。我是西门子S7-1200PLC,现在控制两个轴(伺服电机)要在一个空间内做平面运动。就是一个Y轴,一个Z轴。我用的是绝对运动指令,每次作业前回原点,以原点为基准点,把两个轴要去的位置弄成一个坐标。用case of把这些位置存储起来,然后需要走到那个位置的时候调用。问题出现了:这是一个由多段运动组成的运动,那我每次运动完成以后,用什么做这一段运动的运动结束标志位呢? 现在我的笨办法就是用运动指令里面的绝对运动完成信号(done位)做判断,完成一次给一个上升沿,完了后我累加计数。可是我怕哪天这个脉冲突然变多或者变少。请问做运动控制的大神怎么编程的呢?
376236753
级别: 略有小成
精华主题: 0
发帖数量: 117 个
工控威望: 227 点
下载积分: 962 分
在线时间: 47(小时)
注册时间: 2017-11-21
最后登录: 2024-11-15
查看376236753的 主题 / 回贴
1楼  发表于: 2019-08-29 09:15
你担心是多余的,PLC和伺服电机不是闭环,PLC只负责发脉冲,这个肯定不会错,至于伺服或者运动机构是否执行完成,PLC是不知道的。所以,你担心没用。打个比方,比如你Y轴联轴器松了,PPLC发脉冲让电机转到制定位置了,但是机构没动,你用Y轴当前坐标做条件判断然执行Z轴运动,Z轴是一样会下去的。 不行你就给轴加光栅尺做闭环。