1問題的提出
1.1 如何擴展絕對值編碼器的測量范圍
在運動控制系統中,經常使用絕對值旋轉編碼器作為位置反饋,絕對值編碼器具有返回值與實際位置一一對應、斷電后位置信息不丟失等優點,在使用時給用戶帶來了很多方便,比如在設備重新上電時,不需要重新尋找參考點(回零)。
不過絕對值旋轉編碼器也有缺點,不管是單圈絕對值編碼器,還是多圈絕對值編碼器,它的測量范圍都是有限的。如果負載不停地單方向運行,那么一定會造成編碼器返回值溢出,此時編碼器的值又重新返回零,周而復始。此時如果設備重新上電,編碼器返回值是不包含溢出次數信息的,所得到的位置值也是不可用的。
圖1 絕對值旋轉編碼器的返回值與負載位置的關系
問題1:在使用sinamics s120進行位置控制時,在采用絕對值編碼器作為位置反饋時,如果負載行程較長,超出了絕對值編碼器的測量范圍,那么在設備重新上電時,編碼器的返回位置r0483與負載實際位置是不匹配的。此時應該如何擴展絕對值編碼器的測量范圍,正確地讀取負載的位置?
1.2 如何正確使用測量齒輪
在一些場合會使用測量齒輪改變電機或負載的轉速特性,以便于速度或位置的測量,如圖2所示為一個齒輪比為1:3的測量齒輪。如果所用的編碼器為絕對值編碼器,那么在發生溢出時,編碼器返回值的零點與電機/負載的零點就出現偏移,偏移量的大小取決于齒輪比。一旦編碼器返回值發生溢出,負載的實際位置值就不可用了。
圖2 測量齒輪示意圖
舉一個例子,在使用圖2的測量齒輪時,假設所用的編碼器是一個8圈的絕對值編碼器,那么默認情況下,編碼器返回位置、電機/負載的角度、編碼器的角度隨時間變化的關系如圖3所示。
圖3 編碼器返回位置、電機/負載角度、編碼器角度的關系
從圖3可以看出,在編碼器旋轉8圈以后發生溢出,每次溢出后編碼器返回值的零點與電機/負載的零點會有1/3圈的偏移,在發生溢出以后編碼器返回的位置值就不可用了。在溢出3次以后,編碼器返回值零點與電機/負載零點又重合了。
問題2:在使用sinamics s120進行位置控制時,在采用絕對值編碼器作為位置反饋時,如果使用了測量齒輪,那么如何在編碼器溢出時,也能正確讀取電機/負載的實際位置?
2 sinamics s120位置跟蹤功能的使用
2.1 sinamics s120位置跟蹤功能概述
sinamics s120位置跟蹤(position tracking)可用于:
• 擴展絕對值編碼器的測量范圍
• 在使用測量齒輪時,正確計算負載的位置
該功能可通過參數p0411.0來激活,激活以后,編碼器溢出的次數信息會被保存在斷電保持數據區中,這樣即使編碼器返回值發生溢出,即使設備重新上電,也可以重新根據編碼器溢出次數和當前返回值計算出負載的當前位置。
圖4 測量齒輪和編碼器的示意圖
絕對值編碼器位置實際值保存在參數r0483中,r0483是一個無符號32位數,需要激活編碼器的控制字中第13位(gnstw.13)才會將編碼器的實際值顯示在r0483中。如果p0411.0=0,那么位置跟蹤功能未被激活,此時r0483中的位置值由以下數據構成:
• 編碼器每轉脈沖數p0408
• 編碼器信號細分位數p0419
• 編碼器圈數p0421
如果p0411.0=1,那么位置跟蹤功能被激活,此時r0483中的位置由以下數據構成:
• 編碼器每轉脈沖數p0408
• 編碼器信號細分位數p0419
• 絕對值旋轉編碼器虛擬圈數p0412
如果沒有測量齒輪,編碼器的圈數即為p0421的值,如果p0421太小,不滿足負載行程要求,那么可以通過放大p0412來擴展絕對值編碼器的位置測量范圍。
• 測量齒輪比p0433/p0432
2.2 擴展絕對值編碼器測量范圍的參數設置
要擴展絕對值編碼器的測量范圍,可以在配置向導中編碼器配置畫面上進行設置。使用starter軟件打開項目,在config dds的配置向導中,在配置編碼器數據時,點擊details按鈕,如圖5所示。
圖5 編碼器配置畫面
在彈出的對話框中details選項卡中,選擇激活位置跟蹤功能,并在虛擬圈數p0412中輸入需要的值,如圖6所示。配置完畢后,下載數據并保存。
圖6 激活位置跟蹤功能
另外也可以在online情況下,通過參數表直接設置。使用pg/pc連接設備,在starter軟件中連接在線后,通過驅動器的expert list打開參數列表,依次設置以下參數即可。
p0010=4, encoder commissioning 編碼器調試
p0411.0=yes, activate position tracking 激活位置跟蹤功能
p0412=600, set virtual revolution 設置虛擬圈數,根據實際情況調整
p0010=0, ready 返回就緒狀態
2.3 使用測量齒輪時的參數設置
針對1.2節中的例子,編碼器每溢出一次,都會在電機/負載側產生1/3圈的偏移,每溢出3次以后,編碼器零點與電機/負載的零點重新吻合。在編碼器溢出時,電機/負載的位置就可能不正確了。
此時需要激活位置跟蹤功能,并設置測量齒輪的齒輪比p0433和p0432,如圖7所示。本例中絕對值編碼器是一個8圈的絕對值編碼器,所以p0412=8。
圖7 測量齒輪的參數設置
這樣可以擴展位置值r0483的表示范圍(如圖8所示),在使用測量齒輪時,即使發生編碼器返回值溢出,也能正確指示電機/負載的實際位置。
圖8 位置跟蹤功能激活后的位置值