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