hh29123627
級別: 探索解密
![]() |
求助大神們分享下做運動控制編程思路。我是西門子S7-1200PLC,現(xiàn)在控制兩個軸(伺服電機)要在一個空間內(nèi)做平面運動。就是一個Y軸,一個Z軸。我用的是絕對運動指令,每次作業(yè)前回原點,以原點為基準(zhǔn)點,把兩個軸要去的位置弄成一個坐標(biāo)。用case of把這些位置存儲起來,然后需要走到那個位置的時候調(diào)用。問題出現(xiàn)了:這是一個由多段運動組成的運動,那我每次運動完成以后,用什么做這一段運動的運動結(jié)束標(biāo)志位呢? 現(xiàn)在我的笨辦法就是用運動指令里面的絕對運動完成信號(done位)做判斷,完成一次給一個上升沿,完了后我累加計數(shù)。可是我怕哪天這個脈沖突然變多或者變少。請問做運動控制的大神怎么編程的呢? ![]() ![]() |
---|---|
|
hh29123627
級別: 探索解密
![]() |
這個空間內(nèi)沒有其他傳感器或者氣缸,單憑兩個伺服,因為要定位去固定的位置抓取料,放料做其他動作 ![]() ![]() |
---|---|
|
shijianfe
級別: 探索解密
![]() |
set一個輔助點用于標(biāo)志動作記憶完成,再比較當(dāng)前坐標(biāo) |
---|---|
|
hh29123627
級別: 探索解密
![]() |
現(xiàn)在我就是這樣做的,用每一段運動的絕對完成信息做標(biāo)志位記脈沖,一個脈沖就是第一段運動,兩個脈沖就是第二段運動,完了滿足這個要求再串上當(dāng)前要走的坐標(biāo)做對比。有沒有更多的思路呢大神?
|
---|---|
|
hh29123627
級別: 探索解密
![]() |
啥?大神有程序可以給我參考下嘛?就是重復(fù)定位,多段運動的 ![]()
|
---|---|
|
376236753
級別: 略有小成
![]() |
你擔(dān)心是多余的,PLC和伺服電機不是閉環(huán),PLC只負(fù)責(zé)發(fā)脈沖,這個肯定不會錯,至于伺服或者運動機構(gòu)是否執(zhí)行完成,PLC是不知道的。所以,你擔(dān)心沒用。打個比方,比如你Y軸聯(lián)軸器松了,PPLC發(fā)脈沖讓電機轉(zhuǎn)到制定位置了,但是機構(gòu)沒動,你用Y軸當(dāng)前坐標(biāo)做條件判斷然執(zhí)行Z軸運動,Z軸是一樣會下去的。 不行你就給軸加光柵尺做閉環(huán)。 |
---|---|
|
keeplearning
mark
級別: 論壇先鋒
![]() |
比如說:完成標(biāo)志位M0接通就置位M100,同時復(fù)位這個完成標(biāo)志位M0,M100接通執(zhí)行下一段位置,完成標(biāo)志位M0再次接通就置位M101同時復(fù)位這個完成標(biāo)志位M0,依次類推 |
---|---|
|
hh29123627
級別: 探索解密
![]() |
好的,大神,我現(xiàn)在用的就是這種方法來判斷,還串了一個當(dāng)前位置
|
---|---|
|
hh29123627
級別: 探索解密
![]() |
明白了大神,我今天也問了西門子技術(shù)支持,他們也說只能用運動完成的done位來判斷,感謝大神指點 ![]()
|
---|---|
|