孫鑫
(臥龍電氣驅(qū)動集團(tuán)股份有限公司,浙江紹興,312300)
開關(guān)磁阻電機(jī)及其控制系統(tǒng)(以下簡稱SRM/SRD),其具有結(jié)構(gòu)堅(jiān)固、控制性能優(yōu)、起動力矩大、調(diào)速范圍寬及在整個(gè)調(diào)速范圍內(nèi)效率高等優(yōu)點(diǎn)[1][2][3],適合電動自行車實(shí)際工況,深入開展了SRM/SRD在電動自行車應(yīng)用,SRM采用4相32/24外轉(zhuǎn)子,帶位置傳感器。導(dǎo)通角和關(guān)閉角是SRD重要控制參數(shù),當(dāng)功率電路采用H型控制拓?fù)浣Y(jié)構(gòu),換相成了SRD控制的關(guān)鍵。換相涉及了三個(gè)問題,其一,如何確定換相順序;其二,位置傳感器誤差如何消除;其三,減短負(fù)扭矩續(xù)流時(shí)間。本文就這三個(gè)問題一一進(jìn)行詳細(xì)分析。
功率電路采用H型控制拓?fù)浣Y(jié)構(gòu),如圖1所示。正常運(yùn)行的換相順序:BA->AD->DC->CB->BA或者AB->BC->CD->DA->AB。筆者查詢大量書籍、期刊及論文等資料,都沒有獲得換相順序確定方法,筆者在實(shí)踐過程中總結(jié)了一套確定換相順序方法,總結(jié)如下:
圖1 H型拓?fù)浣Y(jié)構(gòu)
首先,檢查下電機(jī)A、B、C、D四相順序,方法是:中心線接48V電源負(fù)端,使用ABCD四相線分別去接48V電源正端,如果是電機(jī)是按照一個(gè)方向運(yùn)轉(zhuǎn),表明,A、B、C、D四相線的順序是正確的,否則還需要確定四相線的順序。其次,四相線與控制器相分離,但是位置傳感器信號線需要接到控制器中,位置信號接上示波器進(jìn)行監(jiān)測,通電后,旋轉(zhuǎn)SRM,得到了位置信號的波形,在本案例中獲取的數(shù)字信號是11->01->00->10->11(1:高電平,0:低電平,可以組成數(shù)組下標(biāo)0~3)。定義A、B、C、D四相分別對應(yīng)CPU的PA4~PA7的IO口,如果PA4~PA7的IO口為高電平,則表示對應(yīng)相是通電的,AB通電代碼為0x30,AD、DC、CB通電代碼分別為 0x90、0xc0、0x60。對應(yīng) BA(AB)可能是 11、01、00、10四種情況,11->01->00->10->11位置信號存在兩種換相順序:BA->AD->DC->CB->BA和 AB->BC->CD->DA->AB ,因而,一共有8種情況,分別如下:NO1:{0xc0,0x90,0x60,0x30};NO2:{0xc0,0x60,0x90,0x30};NO3:{0x90,0x30,0xc0,0x60};NO4:{0x60,0x30,0xc0,0x90};NO5:{0x30,0x60,0x90,0xc0};NO6:{0x30,0x90,0x60,0xc0};NO7:{0x60,0xc0,0x30,0x90};NO8:{0x90,0xc0,0x30,0x60}。NO1:對應(yīng)的是BA通電時(shí)位置信號為11且換相順序BA->AD->DC->CB->BA。將以上八種情況放到程序中,測試出來只有兩種可以運(yùn)轉(zhuǎn),一種是順時(shí)針,另一種是逆時(shí)針。本方法也可以推廣到其他相數(shù)的SRM,由讀者根據(jù)需要自行完成。
沒有位置傳感器的SRD由于有相應(yīng)的缺陷[4],筆者案例中采用了位置傳感器。筆者在采用位置傳感器后發(fā)現(xiàn),不僅有成本增加可靠性下降的缺點(diǎn),還暴露出位置誤差的缺點(diǎn)[5]。誤差有三類:相位誤差;占空比誤差;零位誤差。相位誤差是指由于兩個(gè)光耦夾角誤差引起的;占空比誤差是指位置輸入到單片機(jī)方波信號的占空比不再是0.5,引起該誤差主要有兩類:A、光耦出來的信號使用了整形電路,整形依靠施密特反相器,VT+=1.41V、VT-=0.85V,整形前高低電平相同,但是高電平到低電平或低電平到高電平有一個(gè)漸變過程,漸變過程經(jīng)過整形后的低電平時(shí)間比高電平時(shí)間就更長,在本案例中,整形電路引起誤差占占空比誤差的87%左右,達(dá)到1.3度;B、光柵加工過程每一孔位置偏差,在本案例中,光柵加工引起誤差占占空比誤差的13%左右,達(dá)到0.2度,每個(gè)孔都有誤差;零位誤差是指光柵與SRM沒有對齊引起各相繞組最大電感與最小電感位置的方波信號的跳變沿與理想位置信號存在的誤差,在本案例中,大致有0.6度偏差。誤差見圖2所示。除了整形帶來的誤差外,雖然可以要求提高加工精度,但是帶來加工成本的提高。筆者通過軟件方案解決,既精確有經(jīng)濟(jì)。解決方案如下:
經(jīng)過分析,可以把相位誤差和占空比誤差合在一起來解決,因?yàn)閮烧邔?dǎo)致結(jié)果是相同——占空比不是0.5。軟件中可以根據(jù)在規(guī)定時(shí)間里位置信號跳變次數(shù)計(jì)算出角速度,假設(shè)該規(guī)定時(shí)間速度變化比較慢,則可以由角速度和步進(jìn)角計(jì)算經(jīng)過一個(gè)步進(jìn)角需要的時(shí)間,也就是換相時(shí)間間隔相同了,這樣解決了占空比誤差和相位誤差兩個(gè)問題。默認(rèn)一個(gè)位置信號的下跳沿且另一個(gè)位置信號是低電平時(shí)刻為計(jì)算時(shí)間起點(diǎn),滯后角度就是零位誤差值或者步進(jìn)角與零位角度之差,根據(jù)滯后角度和角速度,就可以計(jì)算的滯后時(shí)間。滯后時(shí)間和換相時(shí)間間隔采用同一個(gè)定時(shí)器,該定時(shí)器分別在T0、T5、T6、T7時(shí)刻設(shè)置定時(shí)值大小為滯后時(shí)間、換相時(shí)間間隔、換相時(shí)間間隔、換相時(shí)間間隔,在T8時(shí)刻,關(guān)閉定時(shí)器,關(guān)斷定時(shí)器后直到新的周期出現(xiàn)時(shí)刻T0’才定時(shí)器啟動,進(jìn)行新的循環(huán)。按照圖2所示,在T0~T5之間A、D兩相通電,在T5~T6之間C、D兩相通電,在T6~T7之間C、B兩相通電,在T7~T8之間B、A兩相通電,在T8~T0’之間A、D兩相通電。在圖2所示中,零點(diǎn)誤差采用計(jì)算機(jī)向單片機(jī)發(fā)送誤差角折算出來的定時(shí)數(shù)值,在相同負(fù)載情況下,運(yùn)行消耗最小的電流值默認(rèn)為最合適的零位誤差φ0,當(dāng)然這個(gè)值包括了最優(yōu)關(guān)斷角。
圖2 誤差分析
這一功能模塊是通過AVR單片機(jī)的ICP輸入捕捉單元來實(shí)現(xiàn)的。AVR有一個(gè)16位的定時(shí)器/計(jì)數(shù)器T/C2,T/C2的輸入捕捉單元可用來捕獲外部事件,并為其賦予時(shí)間標(biāo)記以說明此時(shí)間的發(fā)生時(shí)刻.外部事樣發(fā)生的觸發(fā)信號由引腳ICP1輸入,也可通過模擬比較器單元來實(shí)現(xiàn),本文應(yīng)用的是ICP1觸發(fā)。時(shí)間標(biāo)記可用來計(jì)算頻率、占空比及信號的其它特征,以及為事件創(chuàng)建日志。我們利用兩次捕獲信號的間隔來計(jì)算電動車的速度。
使用輸入捕捉單元的最大問題就是分配足夠的處理器資源來處理輸入事件。事件的時(shí)間間隔是關(guān)鍵。如果處理器在下一次事件出現(xiàn)之前沒有讀取ICR1的數(shù)據(jù),ICR1就會被新值覆蓋,從而無法得到正確的捕捉結(jié)果。使用輸入捕捉中斷時(shí),中斷程序應(yīng)盡可能早的讀取工CR1寄存器。盡管輸入捕捉中斷優(yōu)先級相對較高,將計(jì)數(shù)器但最大中斷響應(yīng)時(shí)間與其它正在運(yùn)行的中斷程序所需的時(shí)間相關(guān)。所以我們將速度環(huán)的控制程序?qū)懙街鞒绦蛑?,這樣每次處理中斷的時(shí)間很短,在這個(gè)中斷服務(wù)程序中只要將輸入捕捉寄存器ICR1中的數(shù)據(jù)讀出并TCNT1清0以便計(jì)數(shù)下次捕捉中斷的時(shí)刻,這樣ICR1中的數(shù)就代表兩次捕捉中斷的間隔時(shí)間,無須再進(jìn)行減運(yùn)算。由于測定速度必須使用最新時(shí)刻的值,所以計(jì)算速度的程序需要在中斷中處理。在該中斷中還需要給定一個(gè)標(biāo)志位,這樣在主程序中就可依據(jù)該標(biāo)志位適時(shí)地進(jìn)行速度控制。
由于系統(tǒng)頻率是7.3728Mhz,時(shí)鐘周期:0.1356us,預(yù)分頻256,則為34.7136us。采用定時(shí)器0,定時(shí)時(shí)間是20ms。步進(jìn)角是3.75o如果車速是300r/min,也就是1.8o/ms,大致在2.08333ms.如果要求在一個(gè)定時(shí)器0周期內(nèi)有一個(gè)步進(jìn)角,也就是PQ有跳變,則車速最少要求是31r/min。車速采用200ms內(nèi)取平均方法。
如圖2所示,假定換相順序是AD->DC->CB->BA->AD,在A、D兩相通電后,也就是在t1時(shí)刻開始需要切換到D、C兩相通電,則在D、C通電時(shí),A相dL/dθ<0,A相產(chǎn)生制動轉(zhuǎn)矩,A相通過續(xù)流管DA電流在慢慢的減小,在筆者案例中,沒有經(jīng)過處理能續(xù)流到T3時(shí)候,可想而知,該系統(tǒng)效率低,運(yùn)行噪聲大等缺點(diǎn)。雖然通過誤差消除法可以提前關(guān)斷A相,可以適當(dāng)改善效率(B、D兩相改善明顯),但是A、C兩相還是不能達(dá)到理想效果,原來A、C兩相是自然續(xù)流,而B、D兩相有一個(gè)接近輸入電壓一半的反向電壓續(xù)流,所以,A、C兩相續(xù)流時(shí)間長,B、D兩相續(xù)流時(shí)間短。
換相順序確定方法雖然有點(diǎn)笨,但是很實(shí)用,特別可以避免通過推理過程出錯(cuò),也可以避免生產(chǎn)SRM與設(shè)計(jì)出來SRM差異導(dǎo)致?lián)Q相錯(cuò)誤引起SRM不能運(yùn)轉(zhuǎn)。誤差消除法采用軟件方法,不僅提高了SRM效率,而且,可以節(jié)省一個(gè)光耦硬件成本,甚至,只需要一個(gè)接近開關(guān)就能換相判斷。以上三個(gè)解決方案筆者都經(jīng)過驗(yàn)證,而且成功在SRM/D型電動自行車上應(yīng)用。誤差消除方法從研究角度看是可行的,但在實(shí)際大批量生產(chǎn)過程中,如果按照以上方法,工藝相當(dāng)復(fù)雜,因而,誤差消除法自整定研究還有待深入。