胡 冰, 陳茂勝,2, 孔令波, 趙一航, 李庚垚
(1. 長光衛(wèi)星技術有限公司, 吉林 長春 130000; 2. 中國科學院大學 長春光學精密機械與物理研究所, 吉林 長春 130033)
反作用飛輪作為主要的衛(wèi)星姿控系統(tǒng)執(zhí)行部件, 對衛(wèi)星姿態(tài)控制精度和穩(wěn)定度發(fā)揮著重要的作用, 反作用飛輪通過改變自身轉(zhuǎn)速實現(xiàn)與衛(wèi)星的動量交換, 從而達到穩(wěn)定衛(wèi)星姿態(tài)的目的. 為了實現(xiàn)飛輪的控制, 需要準確測量飛輪電機轉(zhuǎn)子的位置和速度信息. 目前, 微小衛(wèi)星飛輪多采用開關霍爾傳感器實現(xiàn)測量, 但是由于開關霍爾輸出數(shù)字信號, 在低轉(zhuǎn)速時, 對于轉(zhuǎn)子信號的反饋延遲現(xiàn)象明顯, 導致系統(tǒng)穩(wěn)定性差, 甚至出現(xiàn)震蕩現(xiàn)象[1], 這將導致衛(wèi)星姿態(tài)控制性能大幅降低, 引起衛(wèi)星任務期間姿態(tài)抖動, 甚至影響衛(wèi)星的使用.
為了解決飛輪低轉(zhuǎn)速控制精度差的問題, 可采用光電編碼器作為速度反饋元件. 但是, 由于編碼器體積大、 成本高且裝調(diào)相對比較困難, 一般應用于對飛輪性能有極高要求的高端場合. 與之相比, 線性霍爾傳感器具有體積小、 成本低和便于集成等優(yōu)點[2], 更加適用于微小衛(wèi)星反作用飛輪的控制系統(tǒng)中. 線性霍爾傳感器輸出信號連續(xù), 輸出可以完整地反饋角位置θ∈[0,2π]區(qū)間的轉(zhuǎn)子位置信息, 故當采樣頻率足夠高, 線性霍爾可以實現(xiàn)轉(zhuǎn)子位置的實時測量, 進而實現(xiàn)全速段的高精度控制.
目前, 線性霍爾使用時大都采用查表的方式計算反正弦, 通過直接讀取反正弦表中的對應元素進行位置解算. 在兩路霍爾信號交叉點的位置附近, 霍爾信號的斜率絕對值明顯減小, 這將導致正弦表查出的角度值變化間隔變大, 位置解算誤差大[3-5]. 除此之外, 存儲反正弦表還需占用內(nèi)存資源, 若系統(tǒng)內(nèi)存容量緊張, 甚至需要外擴存儲器, 增加了成本; 而且, 表格中存儲的是離散數(shù)據(jù)點, 查表求取的計算結(jié)果是近似值; 更重要的是, 反正弦表數(shù)據(jù)的存儲區(qū)存在在軌環(huán)境受單粒子打翻的風險; 此外, 由于各個線性霍爾傳感器自身差異、 放大電路放大倍數(shù)差異以及霍爾安裝誤差等原因, 都會使系統(tǒng)中幾個線性霍爾的輸出信號幅值不一致, 將霍爾輸出信號直接進行角位置解算, 計算結(jié)果也會引入誤差. 通過泰勒級數(shù)展開引入加速度參數(shù)的一階位置計算公式, 對電機轉(zhuǎn)速變化時引起的估測誤差進行了補償. 設計了帶反饋解耦的位置矢量跟蹤觀測器, 解決了其參數(shù)整定的問題, 提高了低速時的穩(wěn)定性, 但高階數(shù)時計算量大, 影響系統(tǒng)響應速度[6-7]. 基于上述應用現(xiàn)狀, 本文設計了一種基于線性霍爾的飛輪高精度速度測量算法.
線性霍爾傳感器是利用半導體材料的霍爾效應構(gòu)成的磁敏元件. 線性霍爾傳感器輸出的電壓信號頻率正比于其所處周圍磁場的分布情況, 與磁場強度成正比, 電機轉(zhuǎn)子位置的改變會使轉(zhuǎn)子磁場發(fā)生變化, 線性霍爾的輸出信號就會發(fā)生改變, 這樣就可以利用線性霍爾來獲得轉(zhuǎn)子的位置和速度信息[8]. 通過對磁鋼的充磁方式進行設計, 可以獲得正弦波形式的氣隙磁場. 本文所選直流無刷電機的氣隙磁場為正弦波形式, 因此, 從采用1個線性霍爾所產(chǎn)生的輸出電壓信號來看, 在1個電周期所產(chǎn)生的正弦波信號中, 同一電壓值對應兩個角度值, 無法直接檢測轉(zhuǎn)子的位置信號[9-11], 因此, 在使用線性霍爾傳感器檢測轉(zhuǎn)子位置和速度時, 至少需要使用2個線性霍爾傳感器.
當采用3個線性霍爾對稱安裝時, 理想情況下, 三路線性霍爾傳感器的輸出信號如圖 1 所示, 為幅值相同, 相位差為嚴格120的正弦波形. 實際上, 由于各個線性霍爾傳感器自身差異、 放大電路放大倍數(shù)差異以及霍爾安裝誤差等原因, 使得各路霍爾輸出信號不是理想得分布. 由于霍爾傳感器對環(huán)境磁場較為敏感, 環(huán)境磁場的波動也會使得各路霍爾輸出存在差異.
圖 1 線性霍爾輸出信號圖Fig.1 Linear Hall output signal diagram
線性霍爾輸出信號為模擬量, 輸出信號通過控制器ADC模塊采集. 對于第x路霍爾信號, 采樣電壓值可通過公式(1)計算得到.
Vx=Vix*3.3/(2n-1),
(1)
式中:Vx為計算得到的第x路霍爾信號采樣電壓值;n為AD轉(zhuǎn)換位數(shù);Vix為AD采樣碼值.
這里針對霍爾信號的幅值進行校正, 采用歸一化的處理方法, 對每一路霍爾信號, 通過獲取該路線性霍爾輸出正弦信號的最大值和最小值, 將霍爾輸出轉(zhuǎn)化為幅值為1的正弦信號, 因此, 歸一化建立在采集至少1個完整周期霍爾輸出信號的基礎上.
記錄一段時間內(nèi)(至少1個整周期霍爾輸出)AD采集的各路霍爾信號碼值的最大值Vxmax和最小值Vxmin, 通過式(2)和式(3)求得三路霍爾ABC的歸一化系數(shù)Vkx和霍爾中值Vxmid. 在每個采樣時刻, 根據(jù)當前霍爾采樣值Vx, 可利用式(4)計算得到歸一化后的霍爾電壓Vxn.
Vkx=(Vxmax-Vxmin)*3.3/(2n-1),
(2)
Vxmid=Vxmax*3.3/(2n-1)-Vkx,
(3)
Vxn=(Vx-Vxmid)/Vkx.
(4)
歸一化的處理方式通過在線實時獲取霍爾輸出信號, 并對其進行幅值的校正, 校正了環(huán)境磁場對于霍爾元件的影響, 同時, 也便于后續(xù)反正弦的計算.
對歸一化校準后的霍爾電壓值做反正弦運算, 求取角位置. 由于反正弦函數(shù)不在FPU數(shù)學庫中, 因此, 直接運算反正弦速度慢, 耗費時間長. 若利用查表法建立反正弦表格, 由于表格存儲數(shù)據(jù)量有限, 表格數(shù)據(jù)匹配的近似運算也可能會引入誤差. 同時, 表格數(shù)據(jù)的存儲占用額外的內(nèi)存, 提升了成本, 且正弦表存在在軌環(huán)境受單粒子打翻的風險. 基于此, 本文提出了一種間接計算角位置的方法. 在每個控制周期, 將對反正弦的運算轉(zhuǎn)化為DSP內(nèi)部FPU數(shù)學庫中包含的反正切的運算, 轉(zhuǎn)化關系如式(5)所示. 通過間接計算的方式, 角位置的運算時間可以由數(shù)百個機器周期降為數(shù)十個機器周期, 運算速度的提升使得無需利用查表法, 實時法也能夠滿足控制系統(tǒng)的控制頻率要求.
(5)
利用式(6)對歸一化校準的霍爾電壓值取反正弦運算得到角位置(rad), 并換算為角度αx(°).
αx=(180/π)*arcsin(Vxn).
(6)
結(jié)合式(5)和式(6)計算得到的角位置只是幾何意義上的角位置值, 對一個完整霍爾信號周期, 按照圖 2 和表 1 所示, 定義了物理意義上電機的絕對角位置. 將霍爾信號的中值當做“0”, 按照開關霍爾的方式, 霍爾輸出高于中值, 為“正”, 認為霍爾狀態(tài)為“1”; 霍爾輸出低于中值, 為“負”, 認為霍爾狀態(tài)為“0”, 三路霍爾信號共對應有6個霍爾狀態(tài). 如表 1 所示, 將一個完整機械周期劃分為六部分.
圖 2 區(qū)間劃分示意圖Fig.2 Schematic diagram of interval division
表 1 區(qū)間劃分表Tab.1 Interval division table
根據(jù)霍爾狀態(tài)判斷當前所在區(qū)間, 再利用所在區(qū)間將上述得到的幾何意義上的角位置按照式(7) 和表2轉(zhuǎn)化為物理意義上電機的絕對角位置.
θx=sxαx+Δθx,
(7)
式中:sx為第x路霍爾符號, 取值-1或1;αx為對第x路霍爾歸一化校準的霍爾電壓值取反正弦運算得到角位置(°); Δθx為第x路霍爾角度偏移量;θx為第x路霍爾絕對角位置.
表 2 角位置轉(zhuǎn)換計算表Tab.2 Angular position conversion calculation table
在表 2 中, 包含極值點的該路霍爾信號角度解算結(jié)果依賴于另外兩路霍爾, 因此, 參數(shù)有兩種可能的取值. 根據(jù)當前霍爾狀態(tài)計算得到第x路霍爾當前角位置θxt, 同理, 根據(jù)上一時刻霍爾狀態(tài)計算得到第x路霍爾上一時刻角位置θxt-1.
對于每路霍爾信號, 按照2.2節(jié)可以分別計算得到相鄰2個控制周期的電機角位置. 按照式(8) 將此相鄰兩2角位置差分, 獲得1個控制周期時間內(nèi)電機角位置的變化量Δθx, 三路線性霍爾對應3個角位置變化量.
Δθx=θxt-θxt-1.
(8)
正弦信號在極值點附近曲線斜率小, 信號幅值的微小變化就會引起角度計算結(jié)果的很大差異, 對于線性霍爾輸出信號采樣誤差的波動更敏感. 若在極值點附近處進行位置解碼, 會降低解碼準確度. 此外, 按照圖 2 所示, 根據(jù)霍爾狀態(tài)進行區(qū)間劃分的方式, 每個區(qū)間內(nèi)包含極值點的該路霍爾信號角度解算結(jié)果依賴于另外兩路霍爾, 而兩路霍爾存在安裝相位誤差, 按照理論相位關系分割包含極值點的該路霍爾信號角度解算結(jié)果, 同樣會導致計算結(jié)果存在偏差. 然而, 在正弦信號曲線斜率較大處進行位置解碼, 解碼的準確度得以保證. 如圖 3 所示, 為了提高速度計算的準確度, 根據(jù)所在區(qū)間, 取該區(qū)間內(nèi)輸出霍爾信號曲線斜率較大的兩路霍爾對應的角位置變化量, 取其算術平均, 進行最終的角位置差值計算.
圖 3 速度解算霍爾信號篩選圖Fig.3 Speed solving Hall signal screening diagram
選取當前所在區(qū)間中斜率較大的兩路霍爾信號的角度差Δθp和Δθq參與計算, 兩者取算術平均后得到最終的角度差值Δθ為
Δθ=(Δθp+Δθq)/2.
(9)
根據(jù)式(10), 角度差值除以采樣時間得到飛輪速度ω, 單位r/min, 其中T為速度采樣時間間隔, 單位s.
ω=Δθ/(T*6).
(10)
如圖 4 所示. 控制系統(tǒng)硬件主要由控制器DSP、 驅(qū)動模塊、 霍爾采集模塊、 電流采集模塊和通信模塊組成. 電機采用直流無刷電機. 其中, 控制器選用外設資源豐富的DSP芯片, 工作頻率100 MHz; 驅(qū)動模塊內(nèi)部集成MOSFET驅(qū)動電路和續(xù)流二極管, 采用全橋驅(qū)動, 控制信號與TTL電平兼容, 最大耐壓60 V, 最大峰值驅(qū)動電流 2.5 A, 最高控制頻率250 kHz. 根據(jù)控制算法確定EPWM模塊輸出驅(qū)動信號, 經(jīng)驅(qū)動電路, 輸出三相控制信號至飛輪電機; 線性霍爾傳感器安裝于飛輪電機定子上, 電機旋轉(zhuǎn), 轉(zhuǎn)子磁體經(jīng)過霍爾傳感器輸出模擬電壓信號, 經(jīng)分壓濾波后, 由ADC模塊采集和處理, 實現(xiàn)電機的換相和測速; 繞組電流通過電流傳感器采集和放大后, 由ADC模塊采集并轉(zhuǎn)換為電流量[12]. 利用CAN總線與上位機通信.
圖 4 硬件系統(tǒng)組成框圖Fig.4 Block diagram of hardware system composition
為驗證飛輪穩(wěn)態(tài)精度和動態(tài)跟蹤性能, 分別進行階躍響應和正弦跟蹤試驗. 搭建的試驗平臺如圖 5 所示.
圖 5 測試現(xiàn)場圖Fig.5 Test site diagram
上位機給飛輪發(fā)送速度指令, 待飛輪速度穩(wěn)定后, 通過串口將穩(wěn)態(tài)下速度數(shù)據(jù)回傳至上位機, 生成轉(zhuǎn)速波動曲線圖. 飛輪穩(wěn)態(tài)精度如圖 6 所示, 分別為飛輪在20 r/min, 50 r/min, 3 000 r/min和控零轉(zhuǎn)速下的實際速度曲線圖. 圖中實線為采用傳統(tǒng)算法測速的飛輪實際速度曲線, 在高轉(zhuǎn)速時, 速度控制精度約±3 r/min, 低轉(zhuǎn)速時, 控制精度為±5 r/min, 在0 r/min的控制精度約±0.6 r/min. 圖中虛線為采用本文算法的飛輪實際速度曲線, 在高轉(zhuǎn)速時, 速度控制精度優(yōu)于±1 r/min, 低轉(zhuǎn)速時, 速度控制精度優(yōu)于±1.5 r/min, 在 0轉(zhuǎn)速下的控制精度達到了±0.3 r/min.
(a) 0 r/min
輸入正弦信號頻率為1 Hz, 幅值為5, 轉(zhuǎn)速偏置分別為50 r/min、 500 r/min和3 000 r/min. 飛輪正弦跟蹤性能如圖 7 所示, 在各個轉(zhuǎn)速段均能實現(xiàn)穩(wěn)定跟蹤, 飛輪的動態(tài)性能良好.
(a) 50 r/min
為確保飛輪在受到發(fā)射過程中震動沖擊和在軌溫度環(huán)境的影響下能正常工作運行, 開展了力學試驗和熱試驗, 并對試驗前后飛輪的性能進行了測試, 試驗結(jié)果如表 3 所示, 驗證了飛輪功能和性能的穩(wěn)定性與可靠性.
表 3 試驗前后穩(wěn)態(tài)精度對比Tab.3 Index comparison before and after the test
本文結(jié)合反作用飛輪轉(zhuǎn)速高精度和高可靠控制要求, 提出了速度控制優(yōu)化算法, 并給出了實際測量中的應用效果. 實驗結(jié)果證明: 高轉(zhuǎn)速(轉(zhuǎn)速≥100 r/min)時, 速度控制精度約為1 r/min; 在低轉(zhuǎn)速(轉(zhuǎn)速<100 r/min)時, 速度控制精度優(yōu)于 1.5 r/min, 零轉(zhuǎn)速控制精度達到了0.3 r/min. 與傳統(tǒng)算法相比, 速度控制精度整體提高2倍以上, 實現(xiàn)了飛輪的高精度控制. 間接位置解算算法將對反正弦的運算轉(zhuǎn)化為DSP內(nèi)部FPU數(shù)學庫中包含的反正切的運算, 轉(zhuǎn)化后角位置的運算時間由數(shù)百個機器周期降為數(shù)十個機器周期, 運算速度提升10%, 使得實時法能夠滿足控制系統(tǒng)的控制頻率要求. 此外, 實時法不占用額外的內(nèi)存, 節(jié)約了成本, 同時不存在在軌環(huán)境受單粒子打翻的風險, 實現(xiàn)了飛輪的高可靠控制.