matlac
級別: 探索解密
|
一個長期以來很困惑的問題,問過很多次很多人,都說不清楚,問技術(shù)支持也無法解決。先前論壇里也問過,無滿意的答復(fù);
西門子200SMART+第3方日系伺服,走位置控制,上電回0. 尋找到參考點成功以后。運動到起始位置A點。 工作方式為從A點運動到B點,然后再返回A點。 重復(fù)運動無數(shù)次。 這個典型的例子是PLC發(fā)脈沖,伺服接收脈沖,驅(qū)動電機(jī)帶動絲桿讓工作臺反復(fù)在A點和B點之間重復(fù)運動; 有幾個疑問: 1. PLC如何判斷電機(jī)當(dāng)前的位置? 這個系統(tǒng)里面編碼器反饋是給伺服驅(qū)動器的,PLC是怎么準(zhǔn)確的知道電機(jī)的位置呢? 咨詢西門子,答復(fù)是根據(jù)發(fā)出去的脈沖數(shù)計算伺服電機(jī)的當(dāng)前位置。 因為PLC并沒有得到電機(jī)的反饋,所以PLC只能根據(jù)自身發(fā)出去的脈沖數(shù),假定電機(jī)執(zhí)行完了PLC的脈沖,實時計算電機(jī)位置。 這樣說白了,電機(jī)的當(dāng)前位置PLC只是根據(jù)自己發(fā)送的脈沖數(shù)計算,沒有反饋,沒有接收電機(jī)反饋;所以如果電機(jī)沒有準(zhǔn)確的執(zhí)行,那么麻煩就來了 2. 重復(fù)定位精度 第一次從A點運動到B點,位置很準(zhǔn),那么第10000次呢? 第10000次的A點和第一次的A點會有偏差嗎? 第10000次的B點和第一次的B點會有偏差嗎? 能達(dá)到多大的偏差? 怎么控制這個偏差? 怎么監(jiān)控這個偏差? 怎么避免這個偏差?怎么處理這個偏差? 或者說你以前這種情況從來沒有碰到過這個問題? 有的人說,你不能運行幾次然后回0 嗎? 實際這種做法最坑,有些場合根本不讓你運行的過程中回0 . 我這臺機(jī)器是臺輔機(jī),配合主機(jī)的,主機(jī)是連續(xù)的節(jié)拍,中間根本不允許回0,不存在某個節(jié)拍停下讓你回0. 回0 當(dāng)然可以解決重復(fù)定位精度的問題,但是有些場合就是 開機(jī)上電回一次0,然后就連續(xù)節(jié)拍,運行,中間不存在回0的機(jī)會。 伺服自身也有位置偏差計算器,就是實際接收的脈沖數(shù)跟執(zhí)行掉的脈沖數(shù)比較,如果這個數(shù)值過大,可以報警。 報警當(dāng)然可以,但是要的不是報警,要的是沒有偏差,報警只是說有偏差了,但是偏差怎么出現(xiàn)的,怎么避免偏差,怎么根治偏差呢? 機(jī)械傳動? 干擾? 那么機(jī)械傳動要多順暢才能保證不出現(xiàn)偏差? 干擾有什么參數(shù)監(jiān)控? 怎么樣才能保證避免偏差呢? 一個很常見,很簡單的伺服運動定位的問題,不知道大家遇到過這方面的困惑沒有? 還請結(jié)合你實際做過的脈沖驅(qū)動伺服為例談?wù)?/div> |
---|---|
|
penginginten
級別: 工控俠客
|
1.PLC判斷伺服的當(dāng)前位置靠一個脈沖計數(shù)存儲起來,當(dāng)回原指令觸發(fā)后會把這個脈沖存儲器清零,然后用相對和絕對指令記錄當(dāng)前的位置脈沖數(shù)。 第一種的問題電機(jī)沒又準(zhǔn)確執(zhí)行的情況,丟脈沖或其他原因干擾。 解決辦法加編碼器,這樣能在PLC輸出和執(zhí)行機(jī)構(gòu)中有反饋回來信號,或者用總線的控制方式。 PLC判斷當(dāng)前位置,總線的控制方式相對于加編碼器的話,總線的控制方式更好一些,另外開關(guān)機(jī)在不回原點的情況下PLC知道當(dāng)前位置只能用絕對編碼器伺服。 絕對編碼器總線的控制方式在斷電時,把位置參數(shù)寫芯片內(nèi),開機(jī)后PLC讀取當(dāng)前的位置參數(shù)。 2.重復(fù)定位精度 重復(fù)定位精度和第一個問題一樣的。 伺服電機(jī)造成丟脈沖的情況會造成位置偏差,其他的位置偏差暫時沒碰到過。 如果是電機(jī)加減速機(jī)做角度定位,這種是減速機(jī)的齒比沒有除盡,所以在定位多少圈之后必須回圓一次。 |
---|---|
|
hexdho
機(jī)械是載體,電氣是靈魂。
級別: 網(wǎng)絡(luò)英雄
|
1. PLC如何判斷電機(jī)當(dāng)前的位置:PLC可以讀伺服編碼器的反饋信號或者機(jī)械結(jié)構(gòu)上加裝編碼器讀編碼器反饋信號,這樣就知道電機(jī)當(dāng)前的位置. 2. 重復(fù)定位精度:在A處安裝個電眼,用這個電眼中斷來停止伺服,這樣運行N次后重復(fù)定位精度會高點. |
---|---|
|
471165265
級別: 家園常客
|
一個半閉環(huán)控制有什么糾結(jié)的,即使你絲桿聯(lián)軸器螺絲掉了,工作平臺沒運行,你的PLC與伺服都根本無法知道,他照樣跑他自己的,除非你做全閉環(huán)控制。 |
---|---|
|
471165265
級別: 家園常客
|
半閉環(huán)控制,在沒有干擾的情況,機(jī)械結(jié)構(gòu)沒有問題的情況下,絲桿導(dǎo)程選的合適,電子齒輪比計算不存在四舍五入的情況下,10000次也不會有偏差的。 |
---|---|
|
langui
級別: 論壇先鋒
|
你要考慮絲桿的間隙的話,最好就用全閉環(huán),如果只是考慮伺服位置的話,直接通訊讀伺服的位置就可以了,像CNC一樣,用絕對伺服就可以了。 |
---|---|
|
狼伴隨行
級別: 正式會員
|
1.要么讀取伺服電機(jī)的位置給PLC或者負(fù)載上安裝編碼器來處理。 2.定位精度這個事情跟很多東西有關(guān),脈沖的發(fā)送和接收,干擾等丟失后,就會出現(xiàn)精度問題。 3.西門子PLC就使用PN總線,帶V90PN版本伺服或者國產(chǎn)PN總線伺服。 |
---|---|
|
xuhao027
級別: 探索解密
|
半閉環(huán)的東西,伺服理論上是不會出現(xiàn)誤差的。要想絕對靠譜,那就得全閉環(huán)。啥系統(tǒng)啊,運行個幾萬次才需要回一次原點的。 |
---|---|
|