|
定位控制是自動控制的一個重要內容。如何精確地進行位置控制在許多領域里面有著廣泛的引用,例如機器人運動,數(shù)控機床的加工,醫(yī)療機械和伺服傳動控制系統(tǒng)等。
下圖為一個僅作說明的三位純二進制碼的碼盤示意圖 一組固定的光電二極管用于檢測碼盤徑向一列單元的反射光,每個單元根據其明暗的不同輸出相對于二進制數(shù)1或者0的信號電壓,當碼盤旋轉時,輸出一系列的三位二進制數(shù),每轉一圈,有八個二進制數(shù)從000~111每一個二進制數(shù)表示轉動的確定位置(角位移量)。圖中是以純二進制編碼來設計碼盤的。但是這種編碼方式在碼盤轉至某些邊界時,編碼器輸出便出現(xiàn)了問題。例如:當轉盤轉至001到010邊界時(如圖所示)這里有兩個編碼改變,如果碼盤剛好轉到理論上的邊界位置,編碼器輸出多少?由于是在邊界,001和010都是可以接受的編碼。然后由于機械裝配的不完美,左邊的光電二極管在邊界兩邊都是0,不會產生異議,而中間和左邊的光電二極管則可能會是“1”或者“0”假定中間是1左邊也是1,則編碼器就會輸出011,這是與編碼盤所轉到的位置010不相同的編碼,同理。輸出也可能是000,這也是一個錯碼。通常在任何邊界只要是一個以上的數(shù)位發(fā)生變化時都可能產生此類問題,最壞的情況是三位數(shù)位都發(fā)生變化的邊界如000~111邊界和011~100邊界,錯碼的機率極高。因此,純二進制編碼是不能作為編碼器的編碼的。 格雷碼解決了這個問題。下圖為一格雷碼編制的碼盤。 與上面純二進制碼相比,格雷碼的特點是:任何相鄰的碼組之間只有一位數(shù)位變化。這就大大的減少了由一個碼組轉換到相鄰碼組時在邊界上所產生的錯碼的可能。因此,格雷碼是一種錯誤少的編碼方式,屬于可靠性編碼,而且格雷碼與其所對應的角位移量是絕對唯一的,所以采樣格雷碼的編碼器又稱為絕對式旋轉編碼器。這種光電編碼器已經越來越廣泛的應用于各種工業(yè)系統(tǒng)中的角度,長度測量和定位控制中。 格雷碼是無權碼,每一位碼沒有確定的大小,因此不能直接進行比較大小和算術運算,要利用格雷碼進行定位,還必須經過碼制轉換,變成純二進制碼,再由上位機讀取和運算。 但是格雷碼的編制還是有規(guī)律的,它的規(guī)律是:最后一位的順序為01、10、01…,倒數(shù)第二位為0011,1100,0011…,倒數(shù)第三位為00001111,11110000,00001111,……倒數(shù)第四位為0000000011111111,1111111100000000,…..;,等以此類推。 下面是四位編制的格雷碼對照表, |
|
|