本發(fā)明涉及一種永磁無刷直流電機(jī)的控制方法,尤其涉及霍爾傳感器的容錯控制方法。
技術(shù)背景
永磁無刷直流電機(jī)是伴隨著電力電子技術(shù)發(fā)展而出現(xiàn)的一種新型機(jī)電一體化電機(jī),是現(xiàn)代電子技術(shù)、控制理論和電機(jī)技術(shù)相結(jié)合的產(chǎn)物。對永磁無刷電機(jī)的研究分為電機(jī)技術(shù)、電子技術(shù)和控制理論進(jìn)行,三者相互獨(dú)立而又互相聯(lián)系。
永磁無刷直流電機(jī)與有刷直流電機(jī)相似,區(qū)別僅在于沒有電刷換相,而是采用電子換相。其本質(zhì)為由電子逆變器驅(qū)動的有位置傳感器反饋控制的交流同步電動機(jī),與普通的有刷直流電動機(jī)和感應(yīng)電動機(jī)相比,具有可控性能好、調(diào)速范圍寬、低維護(hù)率、高效率的特點(diǎn)。永磁無刷直流電機(jī)主要由永磁電機(jī)本體、轉(zhuǎn)子位置檢測器和功率電子開關(guān)(逆變器)三部分構(gòu)成。其中各相繞組的通電順序、通電時刻和通電時間長短取決于轉(zhuǎn)子磁極和定子繞組空間的相對位置,這是由轉(zhuǎn)子位置檢測器來感知、產(chǎn)生出各相的位置信號,并經(jīng)過邏輯處理、功率放大后形成功率開關(guān)元件的驅(qū)動信號,再去控制定子繞組的通斷。常用的位置檢測裝置主要為電磁式位置傳感器、磁敏式位置傳感器和光電式位置傳感器。
矩形波驅(qū)動下的直流無刷電機(jī)按等距離間隔進(jìn)行換向,霍爾位置傳感換向法采用一組固定的霍爾傳感器和轉(zhuǎn)子上的永磁體或額外的磁鐵,用霍爾傳感器檢測轉(zhuǎn)子上某個位置的磁極,生成與電機(jī)狀態(tài)一一對應(yīng)的編碼,因此讀取編碼可以確定轉(zhuǎn)子位置并進(jìn)行換向,實(shí)現(xiàn)電機(jī)的旋轉(zhuǎn)。統(tǒng)計表明90%的直流無刷電機(jī)故障都由于傳感器損壞造成的,因此研究霍爾位置傳感器換向法有重要意義。
多相無刷直流電機(jī)和常見的單相和三相無刷直流電機(jī)相比,具有輸出轉(zhuǎn)矩大,效率高,轉(zhuǎn)矩波動小等特點(diǎn)適用于較低轉(zhuǎn)速范圍,動力需求大的場所,諸如電動車輛,電動機(jī)械機(jī)構(gòu)等。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明針對現(xiàn)有技術(shù)的不足,提出了一種適用于多相永磁無刷直流電機(jī)霍爾傳感器的容錯控制方法。該方法可以有效提高直流無刷電機(jī)的換向的穩(wěn)定性和可靠性。
本發(fā)明依據(jù)多相(m相,m>3)永磁無刷直流電機(jī)導(dǎo)通角為180(m-1)/m的導(dǎo)通方式下的控制方式,采用m個霍爾傳感器采集換相信號,通過分析霍爾編碼信號的特點(diǎn)設(shè)計算法,從而提高多相電機(jī)霍爾傳感器的換相可靠性,使得直流無刷電機(jī)的運(yùn)行更為穩(wěn)定。
傳統(tǒng)的針對霍爾傳感器故障檢測方法僅適用于三相六狀態(tài)的永磁直流無刷電機(jī),配備3個霍爾傳感器,對應(yīng)6種編碼狀態(tài),除去000和111兩種無效狀態(tài)外均為有效編碼。而在實(shí)際生產(chǎn)中,多相無刷直流電機(jī)與三相無刷直流電機(jī)相比,具有輸出轉(zhuǎn)矩大,效率高,轉(zhuǎn)矩波動小等特點(diǎn),有著廣泛的應(yīng)用。若假設(shè)電機(jī)的相數(shù)為m(m>3),為提高效率均采用導(dǎo)通角為180(m-1)/m的導(dǎo)通方式,此時最少配備的霍爾傳感器數(shù)量為m,可利用編碼數(shù)量2m大于2m種有效的電機(jī)狀態(tài)。為此,利用本發(fā)明提出的針對多相直流無刷電機(jī)的霍爾傳感器容錯控制方法,可以有效的利用編碼冗余實(shí)現(xiàn)可靠控制。
傳統(tǒng)的霍爾傳感器故障檢測方法,在遇到霍爾傳感器故障而導(dǎo)致的編碼錯誤情況下,會依據(jù)程序設(shè)定采取停機(jī)指令要求更換霍爾傳感器,該方法雖然可以降低由于電機(jī)反轉(zhuǎn)或飛轉(zhuǎn)造成的危險,但是由于停機(jī)帶來的損失無法避免,且霍爾傳感器常安裝在機(jī)殼內(nèi)部,不易維修更換。本發(fā)明專利可以有效解決該類問題,通過分析錯誤編碼和正常編碼的關(guān)系,針對多相直流無刷電機(jī),可以使系統(tǒng)在少量霍爾傳感器故障情況下依舊保持系統(tǒng)的穩(wěn)定運(yùn)行。
一種適用于多相永磁無刷直流電機(jī)霍爾傳感器的容錯控制方法,該方法具體包括以下步驟:
步驟1:確定多相直流無刷電機(jī)的繞組換相過程和編碼器位置,從理論上得到有效的“編碼器位置-換相過程”對應(yīng)關(guān)系。該過程具體包括:
(1)繪制多相直流無刷電機(jī)導(dǎo)通角為180(m-1)/m電角度的導(dǎo)通方式下方波驅(qū)動狀態(tài)圖;
(2)繪制與之對應(yīng)的m個等相位差的霍爾傳感器的波形圖,該霍爾傳感器的理論占空比為50%;
(3)依此得到多相直流無刷電機(jī)有效的2m種狀態(tài)“編碼器位置-換相過程”,以二進(jìn)制和十六進(jìn)制表示。
步驟2:依據(jù)與有效編碼的漢明距離分類冗余編碼。該過程具體包括:
(1)將2m-2m種冗余編碼序列狀態(tài)依次寫入串行移位寄存器S中,令Si=(S1m,S2m,…,Sim),i=1,…,2m-2m,其中m為霍爾編碼序列的位數(shù),Sim,Sim,…,Sim為第i種編碼序列的二進(jìn)制表示的各位數(shù)字;
(2)將與換相過程對應(yīng)的2m種霍爾傳感器編碼狀態(tài)寫入依次寫入串行移位寄存器U中,令Uj=(Uj1,Uj2···Ujm),j=1,…,2m,其中Uj1,Uj2,…,Uj2m為第j種編碼序列的二進(jìn)制表示的各位數(shù)字;
(3)依次計算每種冗余編碼序列和有效換相編碼的漢明距離。定義Si和Uj的漢明距離為dij,其中表示異或運(yùn)算,i=1,…,2m-2m,j=1,…,2m。
(4)對于有效編碼序列Uj,分類漢明距離為1的冗余編碼集合存入寄存器Q1中;對于有效編碼序列Uj,分類漢明距離大于等于2的冗余編碼集合存入寄存器Q2中;對于有效編碼序列Uj,分類漢明距離為[(m-0.1)/2]的冗余編碼集合存入寄存器Q[(m-0.1)/2]中,j=1,…,2m,其中[*]表示取整。
步驟3:分類集合中的冗余編碼,進(jìn)一步確定冗余編碼和有效編碼的對應(yīng)關(guān)系。該過程具體包括:
(1)分別統(tǒng)計寄存器Q1、Q2、…、Q[(m-0.1)/2]中各個編碼出現(xiàn)的頻數(shù)C,由此可得到C=1,…,[(m-0.1)/2。
(2)記寄存器中C=1的編碼序列為“次有效編碼”,存入寄存器Q1-1中;記寄存器中C=2的編碼序列為“低精度編碼”,存入寄存器Q1-2中;以此類推,編碼序列可靠性逐次降低;最后記寄存器Q[(m-0.1)/2]中的編碼序列為“無效編碼”,j=1,…,2m。
步驟4:依據(jù)對冗余編碼序列的分類,設(shè)計直流無刷電機(jī)霍爾傳感器容錯控制算法。該過程具體包括:
(1)系統(tǒng)復(fù)位、初始化,電機(jī)啟動;
(2)檢測換相信號和霍爾傳感器的編碼序列,可能出現(xiàn)幾種情況:
(2-1)霍爾傳感器的編碼序列為集合U中的一個元素,即為有效序列中的一種,則該編碼序列為有效編碼序列,正常換相;
(2-2)霍爾傳感器的編碼序列為集合Q1-1中的一個元素,即為與有效編碼序列一一對應(yīng)的冗余編碼序列,該序列為次有效編碼序列,按照與有效編碼的對應(yīng)關(guān)系,完成換相;
(2-3)霍爾傳感器的編碼序列為集合Q1-2中的一個元素,即該冗余編碼序列與等概率的有效編碼序列對應(yīng),該序列為低精度編碼序列,隨機(jī)選擇一個有效編碼序列,完成換相;
(2-4)霍爾傳感器的編碼序列為集合Q[(m-0.1)/2]中的一個元素,即為無效編碼序列,等待下一換相時刻。
本發(fā)明的有益效果是:針對多相永磁直流無刷電機(jī)可能出現(xiàn)的霍爾傳感器故障問題,編程實(shí)現(xiàn)系統(tǒng)的容錯和控制算法。在該方法中,基于傳感器的冗余編碼和邏輯對應(yīng)關(guān)系,結(jié)合信息論中漢明距離的概念,設(shè)計算法,提高無刷直流電機(jī)霍爾傳感器的容錯控制能力,保證電機(jī)實(shí)現(xiàn)穩(wěn)定可靠的運(yùn)行。同時該方法具有一定可移植性,可以用于各種多相電機(jī)的控制方式。
附圖說明
圖1是電機(jī)定轉(zhuǎn)子示意圖;
圖2是直流無刷電機(jī)控制框架圖;
圖3是五相全橋驅(qū)動電路圖;
圖4是霍爾位置檢測電路原理圖;
圖5是理想情況下霍爾信號位置與電機(jī)狀態(tài)對應(yīng)圖。
具體實(shí)施方式
下面根據(jù)附圖詳細(xì)說明本發(fā)明,本發(fā)明的目的和效果將變得更加明顯。
圖1是試驗(yàn)用的五相永磁無刷直流電機(jī)定轉(zhuǎn)子示意圖,由圖可見該電機(jī)采用分?jǐn)?shù)槽集中繞組,星形連接,選取Z/2p=5/4的分類,即設(shè)計槽數(shù)為20,設(shè)計極數(shù)為16級,同時在每個定子鐵芯齒冠開兩個輔助凹槽,以削弱齒槽轉(zhuǎn)矩波動。
圖2是直流無刷電機(jī)控制框架圖,選用STM32芯片作為電機(jī)驅(qū)動主控芯片。其次對電機(jī)驅(qū)動電路的各個模塊電路進(jìn)行了具體分析說明,包括五相全橋驅(qū)動電路、電流檢測模塊、霍爾位置檢測電路、電流保護(hù)電路。
圖3是五相全橋驅(qū)動電路。驅(qū)動橋電路由10個N溝道的MOS管75NF75組成電路中Q1、Q3、Q5、Q7、Q9作為上臂,Q2、Q4、Q6、Q8、Q10作為下臂。通過外加驅(qū)動信號控制MOS管的導(dǎo)通與截止,實(shí)現(xiàn)驅(qū)動功能。在驅(qū)動過程中應(yīng)避免上下管直通,為了減小MOS管發(fā)熱,提高系統(tǒng)效率,必須為MOS管提供足夠的驅(qū)動能力,使MOS管上升沿與下降沿時問短,MOS導(dǎo)通時工作在飽和區(qū)。
圖4是霍爾位置檢測電路原理圖。霍爾傳位置感器一般是由5V的電源驅(qū)動。由于霍爾位置傳感器是開漏輸出,所以必須接上拉電阻,因?yàn)樗玫腟TM32供電電壓為3.3V,所以上拉電阻電壓為3.3V。為防止無刷電機(jī)中的強(qiáng)磁場和無刷電機(jī)控制器PWM載波頻率的干擾,要為霍爾位置傳感器添加低通RC濾波器處理。
本發(fā)明提供了一種適用于五相永磁無刷直流電機(jī)霍爾傳感器的容錯控制方法。該方法包括:
1、確定五相直流無刷電機(jī)的繞組換相過程和編碼器位置,從理論上得到有效的“編碼器位置-換相過程”對應(yīng)關(guān)系。該過程具體包括:
(1)繪制五相直流無刷電機(jī)導(dǎo)通角為180(m-1)/m=144電角度的導(dǎo)通方式下方波驅(qū)動狀態(tài)圖,如圖5從上往下1-5條線,高電平導(dǎo)通,低電平關(guān)斷;
(2)繪制與之對應(yīng)的5個等相位差的霍爾傳感器的波形圖,該霍爾傳感器的理論占空比為50%,如圖5從上往下6-10條線,高電平導(dǎo)通,低電平關(guān)斷;
(3)依此得到五相直流無刷電機(jī)有效的10種狀態(tài)“編碼器位置-換相過程”,以二進(jìn)制和十六進(jìn)制表示,依次為:
狀態(tài)1:10101;狀態(tài)2:00101;狀態(tài)3:01101;狀態(tài)4:01001;
狀態(tài)5:01011;狀態(tài)6:01010;狀態(tài)7:11010;狀態(tài)8:10010;
狀態(tài)9:10110;狀態(tài)10:10100;
2、依據(jù)與有效編碼的漢明距離分類冗余編碼。該過程具體包括:
(1)將25-10=22種冗余編碼序列狀態(tài)寫入依次寫入串行移位寄存器S中,令Si=(Si1,Si2,Si3,Si4,Si5),i=1,…,22,其中Si1,Si2,Si3,Si4,Si5為第i種編碼序列的二進(jìn)制表示的各位數(shù)字;
(2)將與換相過程對應(yīng)的10種霍爾傳感器編碼狀態(tài)寫入依次寫入串行移位寄存器U中,令Uj=(Uj1,Uj2,Uj3,Uj4,Uj5),j=1,…,10,其中Uj1,Uj2,Uj3,Uj4,Uj5為第j種編碼序列的二進(jìn)制表示的各位數(shù)字;
(3)依次計算每種冗余編碼序列和有效換相編碼的漢明距離。定義Si和Uj的漢明距離為dij,其中表示異或運(yùn)算,i=1,…,22,j=1,…,10。
(4)對于有效編碼序列Uj,分類漢明距離為1的冗余編碼集合存入寄存器Q1中;對于有效編碼序列Uj,分類漢明距離為2的冗余編碼集合存入寄存器Q2中,j=1,…,10。據(jù)此可得:
集合狀態(tài)1:10101;
集合狀態(tài)2:00101;
集合狀態(tài)3:01101;
集合狀態(tài)4:01001;
集合狀態(tài)5:01011;
集合狀態(tài)6:01010;
集合狀態(tài)7:11010;
集合狀態(tài)8:10010;
集合狀態(tài)9:10110;
集合狀態(tài)10:10100;
集合Q2={00000,11111};
3、分類集合和中的冗余編碼,進(jìn)一步確定冗余編碼和有效編碼的對應(yīng)關(guān)系。該過程具體包括:
(1)分別統(tǒng)計寄存器Q1和Q2中各個編碼出現(xiàn)的頻數(shù)C,采用輪詢的方式計算兩兩編碼的漢明距離,漢明距離為0的記C=2,反之記C=1。
(2)記寄存器中C=1的編碼序列為“次有效編碼”,存入寄存器中;記寄存器中C=2的編碼序列為“低精度編碼”,存入寄存器中;記寄存器Q2中的編碼序列為“無效編碼”,j=1,…,10。
據(jù)此可得:
集合次有效編碼,
低精度編碼;
集合次有效編碼,
低精度編碼;
集合次有效編碼,
低精度編碼;
集合次有效編碼,
低精度編碼;
集合次有效編碼,
低精度編碼;
集合次有效編碼,
低精度編碼;
集合次有效編碼,
低精度編碼;
集合次有效編碼,
低精度編碼;
集合次有效編碼,
低精度編碼;
集合次有效編碼,
低精度編碼;
集合Q2={00000,11111},無效編碼;
4、依據(jù)對冗余編碼序列的分類,設(shè)計直流無刷電機(jī)霍爾傳感器容錯控制算法。該過程具體包括:
(1)根據(jù)圖3編寫系統(tǒng)軟件,系統(tǒng)復(fù)位、初始化,電機(jī)啟動;
(2)檢測換相信號和霍爾傳感器的編碼序列,可能出現(xiàn)四種情況:
(2-1)霍爾傳感器的編碼序列為集合U中的一個元素,即為有效序列中的一種,則該編碼序列為有效編碼序列,正常換相;
(2-2)霍爾傳感器的編碼序列為集合Q1-1中的一個元素,即為與有效編碼序列一一對應(yīng)的冗余編碼序列,該序列為次有效編碼序列,按照與有效編碼的對應(yīng)關(guān)系,完成換相;
(2-3)霍爾傳感器的編碼序列為集合Q1-2中的一個元素,即該冗余編碼序列與等概率的2個有效編碼序列對應(yīng),該序列為低精度編碼序列,隨機(jī)選擇一個有效編碼序列,完成換相;
(2-4)霍爾傳感器的編碼序列為集合Q2中的一個元素,即為無效編碼序列,等待下一換相時刻。