一種角度編碼器的標(biāo)定方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種角度編碼器的標(biāo)定方法及裝置,方法包括控制步進(jìn)電機(jī)分步旋轉(zhuǎn)不少于360度,通過高精度編碼器和待標(biāo)定的角度編碼器分步采集所述步進(jìn)電機(jī)旋轉(zhuǎn)指定角度后的角度數(shù)據(jù)得到多個角度數(shù)據(jù)組,初始化設(shè)置誤差因子并生成多個誤差因子組,將誤差因子組作為粒子通過粒子群算法根據(jù)前述角度數(shù)據(jù)組選擇最優(yōu)的誤差因子組作為標(biāo)定結(jié)果輸出;裝置包括主機(jī)、步進(jìn)電機(jī)控制器和底座支架,底座支架上設(shè)有步進(jìn)電機(jī)和高精度編碼器,步進(jìn)電機(jī)上的輸出軸且分別與角度編碼器、高精度編碼器相連,高精度編碼器、角度編碼器分別與主機(jī)相連,步進(jìn)電機(jī)控制器與步進(jìn)電機(jī)相連。本發(fā)明具有標(biāo)定精度高、標(biāo)定成本低、標(biāo)定所需數(shù)據(jù)量少、標(biāo)定速度快的優(yōu)點。
【專利說明】—種角度編碼器的標(biāo)定方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及高精度角度測量技術(shù),具體涉及一種角度編碼器的標(biāo)定方法及裝置。
【背景技術(shù)】
[0002]汽車和工業(yè)領(lǐng)域上采用的角度傳感器主要有基于磁力線測量技術(shù)的霍爾和磁阻角度編碼器,以及光電開關(guān)原理的絕對和相對角度編碼器。光電編碼器的測量精度可以做到很高,但是基于光電原理的絕對角度編碼器在輸出絕對角度時以編碼形式傳輸,處理較復(fù)雜,成本也較高。傳統(tǒng)的基于霍爾或磁阻的角度編碼器多通過使齒輪盤上的齒輪帶有磁性,通過采集齒輪旋轉(zhuǎn)帶來的磁力線變化測量角度,難以實現(xiàn)絕對角度測量,安裝需要較大空間且測量精度也不高?;魻柶骷捎谄浞墙佑|式測量,低功耗高精度等方面的優(yōu)勢,在控制系統(tǒng)中得到了廣泛的應(yīng)用。而傳統(tǒng)的線性霍爾傳感器采用平面霍爾技術(shù),僅僅能夠感應(yīng)垂直于芯片表面的磁場強(qiáng)度。新型的基于hall盤的角度編碼器通過垂直對置的兩對或多對霍爾盤測量水平旋轉(zhuǎn)的單極性磁體,通過不同對霍爾盤上的正弦電壓來計算絕對角度。這種方法安裝簡單,空間要求小,成本也低。但是,受到了測量精度的影響。通過應(yīng)用CMOS芯片表面沉積的集磁材料IMC(Integrated Magneto-Concentrator),調(diào)理通過霍爾盤上的磁路是提高傳感器的精度的有效途徑之一。但是,由于采用正交的電信號進(jìn)行測量,IMC材料也存在飽和問題,三軸霍爾傳感器非常容易引入系統(tǒng)誤差?,F(xiàn)有技術(shù)的角度編碼器的標(biāo)定方法是角度編碼器組裝完成后,通過與高精度編碼器的對比測量獲取其工作誤差,并根據(jù)誤差對角度編碼器的實際測量值進(jìn)行修正,從而達(dá)到提高角度編碼器檢測精度的目的。但是,現(xiàn)有技術(shù)的角度編碼器的標(biāo)定方法的誤差是簡單測量得出來的,因此導(dǎo)致其工作誤差的獲取并不精確,直接影響到了角度編碼器的測量精度。因此,為了提高角度編碼器的檢測精度,如何針對角度編碼器的標(biāo)定完成高精確度的標(biāo)定,已經(jīng)稱為角度編碼器在應(yīng)用過程中一項亟待解決的關(guān)鍵技術(shù)問題。
【發(fā)明內(nèi)容】
[0003]本發(fā)明要解決的技術(shù)問題是提供一種標(biāo)定精度高、標(biāo)定成本低、標(biāo)定所需數(shù)據(jù)量少、標(biāo)定速度快的角度編碼器的標(biāo)定方法及裝置。
[0004]為了解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案為:
[0005]一種角度編碼器的標(biāo)定方法,其實施步驟如下:
[0006]I)通過步進(jìn)電機(jī)驅(qū)動待標(biāo)定的角度編碼器以指定角度逐步旋轉(zhuǎn)完成不少于360度的轉(zhuǎn)動,通過與步進(jìn)電機(jī)輸出軸相連的高精度編碼器獲取待標(biāo)定的角度編碼器在每一個指定角度的位置輸出的多個角度數(shù)據(jù),將多個角度數(shù)據(jù)與對應(yīng)的指定角度的位置關(guān)聯(lián)作為一個角度數(shù)據(jù)組,最終得到分別對應(yīng)每一個指定角度的位置的多個角度數(shù)據(jù)組;
[0007]2)初始化設(shè)置六個誤差因子的步長、最大值、最小值,所述六個誤差因子包括角度編碼器的X軸偏移、X軸失配、y軸偏移、y軸失配、相位偏移和磁場強(qiáng)度,其中,X軸偏移用于表征角度編碼器輸出信號電壓幅值上的X軸偏差,y軸偏移用于表征角度編碼器輸出信號電壓幅值上的y軸偏差,X軸失配用于表征角度編碼器輸出信號在放大過程中的X軸偏差,y軸失配用于表征角度編碼器輸出信號在放大過程中的I軸偏差,相位偏移用于表征角度編碼器輸出信號在放大過程以及信號處理中引入的相位偏移,磁場強(qiáng)度用于表征作用在角度編碼器的傳感器芯片上的磁場強(qiáng)度;
[0008]3)根據(jù)所述六個誤差因子的步長、最大值、最小值生成多個誤差因子組,將每一個所述誤差因子組作為粒子群算法的粒子群中的一個粒子,通過粒子群算法根據(jù)每一個角度數(shù)據(jù)組對所有誤差因子組進(jìn)行迭代運算選擇最優(yōu)的誤差因子組作為標(biāo)定結(jié)果輸出。
[0009]進(jìn)一步地,所述步驟I)的具體步驟如下:
[0010]1.1)定時采集待標(biāo)定的角度編碼器輸出的角度數(shù)據(jù);同時通過步進(jìn)電機(jī)以指定角度旋轉(zhuǎn)待標(biāo)定的角度編碼器,同時通過與步進(jìn)電機(jī)輸出軸相連的高精度編碼器采集步進(jìn)電機(jī)旋轉(zhuǎn)的角度數(shù)據(jù),在每一個指定角度的位置采集得到待標(biāo)定的角度編碼器輸出的多個角度數(shù)據(jù),將多個角度數(shù)據(jù)與對應(yīng)的指定角度的位置關(guān)聯(lián)作為一個角度數(shù)據(jù)組;
[0011]1.2)根據(jù)高精度編碼器輸出的角度數(shù)據(jù)判斷步進(jìn)電機(jī)是否已完成旋轉(zhuǎn),如果已完成,則跳轉(zhuǎn)執(zhí)行步驟1.3),否則跳轉(zhuǎn)執(zhí)行步驟1.1);
[0012]1.3)判斷得到的每一個角度數(shù)據(jù)組是否穩(wěn)定,如果角度數(shù)據(jù)組中的多個角度數(shù)據(jù)存在抖動,則將角度數(shù)據(jù)組中抖動的角度數(shù)據(jù)視為廢數(shù)據(jù)進(jìn)行丟棄;最終跳轉(zhuǎn)執(zhí)行步驟
1.4);
[0013]1.4)判斷得到的角度數(shù)據(jù)組的數(shù)量是否已經(jīng)滿足要求,如果滿足要求則跳轉(zhuǎn)執(zhí)行步驟2),否則跳轉(zhuǎn)執(zhí)行步驟1.1)。
[0014]進(jìn)一步地,所述步驟3)的詳細(xì)步驟如下:
[0015]3.1)隨機(jī)取得粒子群的初始位置和速度;
[0016]3.2)根據(jù)所述六個誤差因子的步長、最大值、最小值生成多個誤差因子組,將每一個所述誤差因子組作為粒子群算法的粒子群中的一個粒子,誤差因子組中每一個誤差因子的值表示為粒子的位置,誤差因子組中每一個誤差因子的變化值表示為粒子的速度,根據(jù)式(I)采用新的速度更新位置;
[0017]Vij (K+1) = WVij.⑷ +Cf1 (Pij ⑷-Xij ⑷)+c2r2 (Pgj ⑷-Xij ⑷)(I)
[0018]式⑴中,Vij(IM)表示下一時刻粒子速度,Vij (K)表示當(dāng)前時刻粒子速度,Xij (K)表示當(dāng)前時刻粒子位置,K為迭代次數(shù),W為惰性因子和C2為加速常數(shù),A和r2為O或I的隨機(jī)數(shù),Pij(K)表示全局最優(yōu)位置,即計算過的所有參數(shù)組中使得誤差之差為最小值的誤差因子組,Pd(K)為局部最優(yōu)位置即當(dāng)前粒子群中使得誤差之差為最小值的誤差因子組,i為粒子標(biāo)示,N為粒子群內(nèi)粒子個數(shù),j為誤差因子組中分別對應(yīng)六個誤差因子的序號,j有I~6共六個取值,分別對應(yīng)著六個誤差因子;惰性因子W的表達(dá)式如式(2)表示;
【權(quán)利要求】
1.一種角度編碼器的標(biāo)定方法,其特征在于實施步驟如下: 1)通過步進(jìn)電機(jī)驅(qū)動待標(biāo)定的角度編碼器以指定角度逐步旋轉(zhuǎn)完成不少于360度的轉(zhuǎn)動,通過與步進(jìn)電機(jī)輸出軸相連的高精度編碼器獲取待標(biāo)定的角度編碼器在每一個指定角度的位置輸出的多個角度數(shù)據(jù),將多個角度數(shù)據(jù)與對應(yīng)的指定角度的位置關(guān)聯(lián)作為一個角度數(shù)據(jù)組,最終得到分別對應(yīng)每一個指定角度的位置的多個角度數(shù)據(jù)組; 2)初始化設(shè)置六個誤差因子的步長、最大值、最小值,所述六個誤差因子包括角度編碼器的X軸偏移、X軸失配、y軸偏移、y軸失配、相位偏移和磁場強(qiáng)度,其中,X軸偏移用于表征角度編碼器輸出信號電壓幅值上的X軸偏差,y軸偏移用于表征角度編碼器輸出信號電壓幅值上的I軸偏差,X軸失配用于表征角度編碼器輸出信號在放大過程中的X軸偏差,y軸失配用于表征角度編碼器輸出信號在放大過程中的y軸偏差,相位偏移用于表征角度編碼器輸出信號在放大過程以及信號處理中引入的相位偏移,磁場強(qiáng)度用于表征作用在角度編碼器的傳感器芯片上的磁場強(qiáng)度; 3)根據(jù)所述六個誤差因子的步長、最大值、最小值生成多個誤差因子組,將每一個所述誤差因子組作為粒子群算法的粒子群中的一個粒子,通過粒子群算法根據(jù)每一個角度數(shù)據(jù)組對所有誤差因子組進(jìn) 行迭代運算選擇最優(yōu)的誤差因子組作為標(biāo)定結(jié)果輸出。
2.根據(jù)權(quán)利要求1所述的角度編碼器的標(biāo)定方法,其特征在于,所述步驟I)的具體步驟如下: 1.1)定時采集待標(biāo)定的角度編碼器輸出的角度數(shù)據(jù);同時通過步進(jìn)電機(jī)以指定角度旋轉(zhuǎn)待標(biāo)定的角度編碼器,同時通過與步進(jìn)電機(jī)輸出軸相連的高精度編碼器采集步進(jìn)電機(jī)旋轉(zhuǎn)的角度數(shù)據(jù),在每一個指定角度的位置采集得到待標(biāo)定的角度編碼器輸出的多個角度數(shù)據(jù),將多個角度數(shù)據(jù)與對應(yīng)的指定角度的位置關(guān)聯(lián)作為一個角度數(shù)據(jù)組; 1.2)根據(jù)高精度編碼器輸出的角度數(shù)據(jù)判斷步進(jìn)電機(jī)是否已完成旋轉(zhuǎn),如果已完成,則跳轉(zhuǎn)執(zhí)行步驟1.3),否則跳轉(zhuǎn)執(zhí)行步驟1.1); 1.3)判斷得到的每一個角度數(shù)據(jù)組是否穩(wěn)定,如果角度數(shù)據(jù)組中的多個角度數(shù)據(jù)存在抖動,則將角度數(shù)據(jù)組中抖動的角度數(shù)據(jù)視為廢數(shù)據(jù)進(jìn)行丟棄;最終跳轉(zhuǎn)執(zhí)行步驟1.4); 1.4)判斷得到的角度數(shù)據(jù)組的數(shù)量是否已經(jīng)滿足要求,如果滿足要求則跳轉(zhuǎn)執(zhí)行步驟2),否則跳轉(zhuǎn)執(zhí)行步驟1.1)。
3.根據(jù)權(quán)利要求1或2所述的角度編碼器的標(biāo)定方法,其特征在于,所述步驟3)的詳細(xì)步驟如下: 3.1)隨機(jī)取得粒子群的初始位置和速度; 3.2)根據(jù)所述六個誤差因子的步長、最大值、最小值生成多個誤差因子組,將每一個所述誤差因子組作為粒子群算法的粒子群中的一個粒子,誤差因子組中每一個誤差因子的值表示為粒子的位置,誤差因子組中每一個誤差因子的變化值表示為粒子的速度,根據(jù)式(I)采用新的速度更新位置;
Vij (K+1) = WVij (K) +Cf1 (Pij (K) -Xij.(K)) +c2r2 (Pgj (K) -Xij.(K)) (I) 式⑴中,Vij (K+1)表示下一時刻粒子速度,Vij (K)表示當(dāng)前時刻粒子速度,Xij (K)表示當(dāng)前時刻粒子位置,K為迭代次數(shù),W為惰性因子K1和C2為加速常數(shù),A和r2為O或I的隨機(jī)數(shù),Pu (K)表示全局最優(yōu)位置,即計算過的所有參數(shù)組中使得誤差之差為最小值的誤差因子組,Pgj(K)為局部最優(yōu)位置即當(dāng)前粒子群中使得誤差之差為最小值的誤差因子組,i為粒子標(biāo)示,N為粒子群內(nèi)粒子個數(shù),j為誤差因子組中分別對應(yīng)六個誤差因子的序號,j有1~6共六個取值,分別對應(yīng)著六個誤差因子;惰性因子w的表達(dá)式如式(2)表示;
4.一種角度編碼器的標(biāo)定裝置,其特征在于包括: 角度數(shù)據(jù)組采集單元,用于通過步進(jìn)電機(jī)驅(qū)動待標(biāo)定的角度編碼器以指定角度逐步旋轉(zhuǎn)完成不少于360度的轉(zhuǎn)動,通過與步進(jìn)電機(jī)輸出軸相連的高精度編碼器獲取待標(biāo)定的角度編碼器在每一個指定角度的位置輸出的多個角度數(shù)據(jù),將多個角度數(shù)據(jù)與對應(yīng)的指定角度的位置關(guān)聯(lián)作為一個角度數(shù)據(jù)組,最終得到分別對應(yīng)每一個指定角度的位置的多個角度數(shù)據(jù)組; 粒子群算法初始化單元,用于初始化設(shè)置六個誤差因子的步長、最大值、最小值,所述六個誤差因子包括角度編碼器的X軸偏移、X軸失配、y軸偏移、y軸失配、相位偏移和磁場強(qiáng)度,其中,X軸偏移用于表征角度編碼器輸出信號電壓幅值上的X軸偏差,y軸偏移用于表征角度編碼器輸出信號電壓幅值上的y軸偏差,X軸失配用于表征角度編碼器輸出信號在放大過程中的X軸偏差,y軸失配用于表征角度編碼器輸出信號在放大過程中的I軸偏差,相位偏移用于表征角度編碼器輸出信號在放大過程以及信號處理中引入的相位偏移,磁場強(qiáng)度用于表征作用在角度編碼器的傳感器芯片上的磁場強(qiáng)度; 粒子群算法執(zhí)行單元,用于根據(jù)所述六個誤差因子的步長、最大值、最小值生成多個誤差因子組,將每一個所述誤差因子組作為粒子群算法的粒子群中的一個粒子,通過粒子群算法根據(jù)每一個角度數(shù)據(jù)組對所有誤差因子組進(jìn)行迭代運算選擇最優(yōu)的誤差因子組作為標(biāo)定結(jié)果輸出。
5.根據(jù)權(quán)利要求4所述的角度編碼器的標(biāo)定裝置,其特征在于,所述角度數(shù)據(jù)組采集單元包括: 角度編碼器轉(zhuǎn)動控制及數(shù)據(jù)檢測單元,用于定時采集待標(biāo)定的角度編碼器輸出的角度數(shù)據(jù);同時通過步進(jìn)電機(jī)以指定角度旋轉(zhuǎn)待標(biāo)定的角度編碼器,同時通過與步進(jìn)電機(jī)輸出軸相連的高精度編碼器采集步進(jìn)電機(jī)旋轉(zhuǎn)的角度數(shù)據(jù),在每一個指定角度的位置采集得到待標(biāo)定的角度編碼器輸出的多個角度數(shù)據(jù),將多個角度數(shù)據(jù)與對應(yīng)的指定角度的位置關(guān)聯(lián)作為一個角度數(shù)據(jù)組; 旋轉(zhuǎn)進(jìn)度判斷單元,用于根據(jù)高精度編碼器輸出的角度數(shù)據(jù)判斷步進(jìn)電機(jī)是否已完成旋轉(zhuǎn),如果已完成,則調(diào)用角度數(shù)據(jù)組抖動處理單元,否則繼續(xù)調(diào)用角度編碼器轉(zhuǎn)動控制及數(shù)據(jù)檢測單元; 角度數(shù)據(jù)組抖動處理單元,用于判斷得到的每一個角度數(shù)據(jù)組是否穩(wěn)定,如果角度數(shù)據(jù)組中的多個角度數(shù)據(jù)存在抖動,則將角度數(shù)據(jù)組中抖動的角度數(shù)據(jù)視為廢數(shù)據(jù)進(jìn)行丟棄;最終調(diào)用角度數(shù)據(jù)組數(shù)量檢測單元; 角度數(shù)據(jù)組數(shù)量檢測單元,用于判斷得到的角度數(shù)據(jù)組的數(shù)量是否已經(jīng)滿足要求,如果滿足要求則調(diào)用粒子群算法初始化單元,否則繼續(xù)調(diào)用角度編碼器轉(zhuǎn)動控制及數(shù)據(jù)檢測單元。
6.根據(jù)權(quán)利要求4或5所述的角度編碼器的標(biāo)定裝置,其特征在于,所述粒子群算法執(zhí)行單元包括: 粒子群初始化模塊,用于隨機(jī)取得粒子群的初始位置和速度; 速度更新模塊,根據(jù)所述六個誤差因子的步長、最大值、最小值生成多個誤差因子組,將每一個所述誤差因子組作為粒子群算法的粒子群中的一個粒子,誤差因子組中每一個誤差因子的值表示為粒子的位置,誤差因子組中每一個誤差因子的變化值表示為粒子的速度,根據(jù)式(I)采用新的速度更新位置;
Vij (K+1) = WVij (K) +Cf1 (Pij (K) -Xij.(K)) +c2r2 (Pgj (K) -Xij.(K)) (I) 式⑴中,Vij (K+1)表示下一時刻粒子速度,Vij (K)表示當(dāng)前時刻粒子速度,Xij (K)表示當(dāng)前時刻粒子位置,K為迭代次數(shù),W為惰性因子K1和C2為加速常數(shù),A和r2為O或I的隨機(jī)數(shù),Pu (K)表示全局最優(yōu)位置,即計算過的所有參數(shù)組中使得誤差之差為最小值的誤差因子組,Pgj(K)為局部最優(yōu)位置即當(dāng)前粒子群中使得誤差之差為最小值的誤差因子組,i為粒子標(biāo)示,N為粒子群內(nèi)粒子個數(shù),j為誤差因子組中分別對應(yīng)六個誤差因子的序號,j有I~6共六個取值,分別對應(yīng)著六個誤差因子;惰性因子W的表達(dá)式如式(2)表示;
【文檔編號】G01D18/00GK103954316SQ201410183048
【公開日】2014年7月30日 申請日期:2014年4月30日 優(yōu)先權(quán)日:2014年4月30日
【發(fā)明者】王耀南, 孟步敏, 申永鵬, 劉東奇, 皮釩, 盧月紅 申請人:湖南大學(xué)