杜明昊,郝鳳琦,趙曉杰
(齊魯工業(yè)大學(xué)(山東省科學(xué)院)山東省計(jì)算中心(國家超級計(jì)算濟(jì)南中心)山東省計(jì)算機(jī)網(wǎng)絡(luò)重點(diǎn)實(shí)驗(yàn)室,山東 濟(jì)南 250014)
隨著科技的日益發(fā)展,磁懸浮技術(shù)逐漸應(yīng)用于運(yùn)輸、工業(yè)等領(lǐng)域,此外,微型磁懸浮由于其小巧且科技感和視覺沖擊較強(qiáng),也經(jīng)常被應(yīng)用于辦公室、公司前臺、高級酒店、私人家居、珠寶鑒賞店、學(xué)??萍拣^等民生日常領(lǐng)域。1842年,英國數(shù)學(xué)家山姆·恩紹(Samuel Earnshaw)發(fā)表了著名的恩紹大定理(Earnshaw′s theorem),通過數(shù)學(xué)證明了單靠宏觀的靜態(tài)古典磁力,穩(wěn)定的磁懸浮不可能實(shí)現(xiàn)[1]。相比純模擬的元器件和單閉環(huán)的控制,本文借助單片機(jī)設(shè)計(jì)雙閉環(huán)串級PID控制器[2],輸出數(shù)字信號通過驅(qū)動單元控制電磁線圈產(chǎn)生動態(tài)磁場與原本的靜態(tài)永磁體產(chǎn)生的磁場疊加,動態(tài)調(diào)節(jié),能夠靈活控制浮子穩(wěn)定懸浮。
該微型磁懸浮裝置是由電源單元、主控單元、驅(qū)動單元、檢測單元、線圈以及永磁體組成,其整體框架如圖1所示。
圖1 磁懸浮裝置的整體框架
磁懸浮裝置的單個(gè)電磁線圈的驅(qū)動單元硬件電路原理圖如圖2所示。
圖2 電磁線圈的驅(qū)動單元
電磁線圈正常工作時(shí),所需電流可達(dá)到安培級別,單片機(jī)I/O口無法輸出大電流。本文使用N溝道場效應(yīng)管和P溝道場效應(yīng)管搭建H全橋驅(qū)動電路[3]。通過光耦隔離芯片[4],一方面將控制端與大電流驅(qū)動端進(jìn)行電氣隔離,保護(hù)控制器;另一方面提高了場效應(yīng)管的柵極控制信號的電壓值,進(jìn)而提高場效應(yīng)管的開通、關(guān)斷能力。
本文借助2個(gè)霍爾傳感器[7]測量浮子位置信息,使用基準(zhǔn)電壓芯片為霍爾傳感器提供標(biāo)準(zhǔn)電壓,使用軌到軌運(yùn)算放大器[5]芯片通過差分放大電路將霍爾傳感器的輸出值放大,再經(jīng)過硬件無源濾波電路濾除雜波,連接至單片機(jī)ADC[6]模擬信號采集引腳。磁通量測量電路原理圖如圖3所示。
圖3 磁通量測量單元
磁懸浮裝置平面結(jié)構(gòu)示意圖如圖4所示。磁通量測量單元里的2個(gè)相互垂直的霍爾元件,可以測量出浮子的位置信息,以永磁體的中心為原點(diǎn),建立直角坐標(biāo)系,霍爾h1測量x軸方向上的浮子磁通量信息,霍爾h2測量y軸方向上的浮子磁通量信息[7]。因此,通過STM32單片機(jī)片內(nèi)ADC外設(shè)得到磁通量值,進(jìn)行數(shù)學(xué)坐標(biāo)模型化后,可以得到浮子的水平位置。
圖4 磁懸浮裝置平面結(jié)構(gòu)示意圖
浮子穩(wěn)定懸浮時(shí),所需的懸浮斥力主要由永磁體提供,x軸的2個(gè)電磁線圈以及y軸的2個(gè)電磁線圈產(chǎn)生的磁力主要用以水平內(nèi)動態(tài)調(diào)節(jié)浮子平衡,使其維持在磁場正中心。理想情況下,浮子處于磁場正中心時(shí),電磁線圈處于關(guān)斷狀態(tài),同一軸上的2個(gè)電磁線圈功率消耗之差為0。外環(huán)中的主控制器通過同軸電磁線圈的功耗之差進(jìn)行負(fù)反饋,進(jìn)而輸出糾偏量,對原來內(nèi)環(huán)初始的設(shè)定值進(jìn)行修正。內(nèi)環(huán)中的副控制器通過浮子的直角坐標(biāo)值進(jìn)行反饋,進(jìn)而輸出對應(yīng)的數(shù)字占空比信號給驅(qū)動單元,控制電磁線圈動作。本文在經(jīng)典的串級控制方法上做了一小步改變,在單個(gè)控制周期中,主控制器輸出一個(gè)相對副控制器初始設(shè)定值很小的糾偏量,然后疊加副控制器最初的設(shè)定值,得到一個(gè)新的值作為新變量,所述新變量再作為副控制器的設(shè)定值,其中,糾偏量是由外環(huán)數(shù)字PID增量型輸出給定,所述新設(shè)定值是內(nèi)環(huán)數(shù)字PID位置型的設(shè)定值[8?12]。微型磁懸浮裝置x軸的雙閉環(huán)串級PID控制流程如圖5所示。
圖5 x軸的雙閉環(huán)串級PID控制框圖
本文選用STM32F103C8T6單片機(jī)作為主控制器,通過MDK?Keil5 IDE軟件進(jìn)行程序設(shè)計(jì)和調(diào)試見圖6和圖7。
圖6 主程序流程圖
圖7串口中斷接收程序
圖6 和圖7分別為主程序和串口中斷接收程序兩大部分。在中斷處理時(shí),通過串口中斷接收上位機(jī)發(fā)送來的命令和數(shù)據(jù),并緩存到全局變量環(huán)形數(shù)組區(qū),并使用定時(shí)器中斷設(shè)計(jì)15 ms控制周期定時(shí)。
為方便調(diào)試,可使用上位機(jī)串口助手軟件,與STM32單片機(jī)進(jìn)行串口通信,通過USB?TTL轉(zhuǎn)接設(shè)備實(shí)現(xiàn)二者的物理連接。通過調(diào)試助手可以打印顯示出當(dāng)前浮子位置信息,驅(qū)動單元的輸入PWM信號數(shù)值,可以改寫STM32單片機(jī)全局變量以實(shí)時(shí)改變PID參數(shù)值。
PID參數(shù)的設(shè)置是比較關(guān)鍵的一步。首先,斷開外環(huán),保持內(nèi)環(huán),內(nèi)環(huán)初始設(shè)定值可以粗略給定,用手將浮子置于平衡處,通過單片機(jī)ADC外設(shè)讀取得到此時(shí)的浮子位置信息量,作為內(nèi)環(huán)的初始設(shè)定值。參數(shù)積分I與微分D置為0,調(diào)整參數(shù)比例P,直至感受到電磁線圈的束縛力,停止調(diào)節(jié)參數(shù)P,開始調(diào)整微分D,消去抖動,內(nèi)環(huán)可以不使用參數(shù)積分I。調(diào)整完內(nèi)環(huán)參數(shù)后,可以實(shí)現(xiàn)懸浮。為了提高系統(tǒng)適應(yīng)性,引入外環(huán),外環(huán)期望值可以設(shè)置為0,也可以適當(dāng)增大。最后根據(jù)線圈電流能耗和實(shí)際懸浮情況調(diào)試外環(huán)參數(shù)[13]。
調(diào)試完P(guān)ID參數(shù)后,開始懸浮測試,該磁懸浮裝置的底座實(shí)物圖如圖8所示。本文使用直徑25 mm、厚度10 ms的圓柱體釹鐵硼磁鐵作為永磁體,以及直徑3 cm厚度5 mm的圓柱體釹鐵硼磁鐵作為浮子。
圖8 磁懸浮裝置的底座實(shí)物圖
將裝置底座置于水平面的桌子上,人工制造干擾因素:
1)外界碰撞擾動:小功率電風(fēng)扇吹拂浮子進(jìn)行模擬;
2)室內(nèi)溫度變化:使用空調(diào)制冷和熱風(fēng)槍加熱模擬室內(nèi)溫差變化。
如圖9所示,小功率風(fēng)扇是由720空心杯無刷電機(jī)和長55 mm螺旋槳組合而成。測試時(shí),螺旋槳反向安裝使用,3.7 V額定直流電壓供電,水平移動與磁懸浮裝置的距離。測試浮子懸浮狀態(tài)如表1所示。
圖9 小功率風(fēng)扇
表1 與風(fēng)扇不同距離下的浮子懸浮狀態(tài) cm
測試溫度變化時(shí),在密閉的狹小室間內(nèi),將空調(diào)制冷至16℃,懸浮裝置運(yùn)行測試3 h;使用熱風(fēng)槍連續(xù)均勻吹拂加熱懸浮裝置至40℃左右,懸浮裝置運(yùn)行測試3 h。在室內(nèi)溫度變化下,浮子能夠很好地保持穩(wěn)定運(yùn)行。
上述模擬擾動具有一定誤差,但是通過表1的記錄可知,該微型磁懸浮裝置具有一定的抗干擾能力,在適當(dāng)?shù)耐饨绺蓴_時(shí),浮子可以快速保持平衡。在室內(nèi)溫差變化擾動下,霍爾傳感器由于溫漂導(dǎo)致輸出數(shù)值發(fā)生變化,故使得內(nèi)環(huán)的反饋值發(fā)生變化。磁懸浮裝置通過外環(huán)PID輸出糾偏量疊加到內(nèi)環(huán)的初始設(shè)定值,得到一個(gè)新的內(nèi)環(huán)設(shè)定值,新的內(nèi)環(huán)設(shè)定值和內(nèi)環(huán)反饋值之間的偏差值仍然相對恒定,輸出的糾偏量抵消了霍爾溫漂造成的干擾,所以系統(tǒng)能夠調(diào)控自適應(yīng),浮子可以長時(shí)間穩(wěn)定懸浮。
本文從軟、硬件兩方面研究設(shè)計(jì)一種以STM32單片機(jī)控制器為核心的微型磁懸浮裝置。隨著智能控制、NLP自然語言處理和3D打印技術(shù)等各學(xué)科的發(fā)展以及國民精神素養(yǎng)的顯著提升,未來,智能磁懸浮3D工藝品將會備受矚目,進(jìn)入廣大居民日常生活中[14]。
注:本文通訊作者為郝鳳琦。