何雨昂 樊茜 鄭起佳 吳非 林強強



摘要
隨著機器人技術不斷發展,對大功率、小體積的便攜式能源系統的需求日益增加。在以往的機器人用機載能源系統中,通常使用電機轉動帶動泵旋轉,進而使機器人的液壓系統產生油壓,最終推動負載動作。該方式需要較大容量的電池、并匹配相應功率的電機。以該方法實現的能源系統續航能力差、輸出功率低從功率密度考慮,使用發動機帶動泵轉動的工作效率更高,但發動機轉速控制較難。本文提出了一種發動機轉速控制方法,通過該方法可以實現便攜式能源系統的發動機轉速穩定控制,該方法經過測試,滿足機器人系統使用要求。
【關鍵詞】發動機控制 機載能源 轉速閉環
機載能源系統具備體積小、質量輕、續航能力強等特點,因此該系統廣泛應用于機器人中。為實現機器人不同動作需求,需要對發動機轉速進行實時控制。本文提出了一種發動機轉速控制方法,具體實現方法如下。
1 概述
1.1 機載能源系統
機載能源系統包含發動機、發動機轉速控制器、蓄能器、液壓回路等組件。在能源系統中,通過發動機轉動,帶動油泵旋轉,從而使液壓油產生高低壓。油壓的產生可在伺服閥的控制下使液壓作動器動作,多個作動器的協同工作即可實現機器人的跑、跳、蹲等行為。能源系統中發動機的轉速高低對應產生液壓油的油量大小。當機器人產生大動作時,能源系統需要提供大流量以滿足機器人需求,進而需要提高發送機轉速;同理,若機器人處于接近靜止的狀態時,發動機轉速需要適當下調,以適應負載變化。因此需設計發動機轉速控制器以實現該功能。
1.2 發動機轉速控制器
由于機器人的動作受綜控器的控制,因此綜控器知悉機器人何時會產生動作。當有大動作發生時,綜控器會向發動機轉速控制器發送不同的轉速指令,使發動機的可提供恰當的油量,以適應機器人的動作。
發動機轉速控制器可實現通過總線接收綜控器發送的轉速指令,同時控制發動機轉速穩定在該數值。在實現以上功能的前提下,還需實現接收控制指令實現發動機自啟動、關機、檢測能源系統工作狀態的功能,并通過總線將能源系統狀態實時反饋至綜控器。
2 機載能源系統的發動機調速方法
2.1 發動機轉速控制器功能需求
發動機轉速控制器由DSP2812作為核心控制部分,通過其內部的CAN通信模塊配合外圍電路實現總線通信;通過內部的CAP模塊配合外圍電路實現發動機轉速采集;通過定時器中斷實現閉環控制;通過10口模擬脈沖波控制步進電機,進而控制發動機氣門開度,實現發動機的轉速控制。發動機轉速控制器程序結構如圖1所示。
2.2 總線通信功能
在與綜控器進行CAN總線通信的過程中主要依照約定好的協議完成數據交互工作。綜控器通過CAN總線向發動機轉速控制器發送自檢、關機、發動機低轉速閉環、發動機中轉速閉環和發動機高轉速閉環指令。在上位機向發動機轉速控制器發送指令后,發動機轉速控制器將當前狀態依約定好的CAN協議返回上位機。發動機轉速控制器支持相同指令重復發送,故綜控器若需要能源系統實時數據,可以通過總線不斷向發動機轉速控制器發送相同指令來實現。接受并解析CAN總線數據流程圖如圖2所示。
2.3 捕獲單元轉速采集
發動機轉速控制器使用CAP捕獲中斷采集轉速信息。當捕獲單元的I/O管腳檢測到轉速傳感器的上升沿時,便會產生一次中斷標志,并將上一次捕獲與本次捕獲之間的時間差值存入相應的FIFO中。所使用的轉速傳感器在發動機轉過一周后便會產生一次脈沖。每兩個捕獲的時間差即為發動機轉一圈所用去的時間。在發動機轉速控制器的控制軟件中,取連續的10次發動機轉速數值進行一次計算,得出平均值;并對轉速均值進行一階濾波處理,以保證所采集到的發動機轉速真實、可靠。其服務函數流程圖如圖3所示。
2.4 定時器中斷
在發動機轉速控制器的軟件設計中,將閉環控制放在定時器中斷TO中。TO中斷的流程圖如圖4所示。
在TO中斷中,控制器完成清除中斷標志位、清除看門狗、讀取轉速信息、讀取AD轉換結果和判斷是否進入轉速閉環控制的工作;同時在執行轉速閉環控制時,還需進行RED控制。發動機轉速控制器的中斷等級中,TO中斷等級最低,也就意味著該中斷需要完成其他中斷未完成的所有工作。TO中斷中的程序設計也是復雜度最高的。
發動機轉速控制器的軟件設計充分考慮安全性,如果控制器程序沒有進入閉環控制,則執行關機指令,從而保證發動機轉速控制器安全穩定的控制能源系統。為保證能源系統的實時性,TO中斷在程序初始化中設定為1ms,即每隔1ms控制器便會執行一次閉環控制。由于發動機轉速控制器使用看門狗功能,需要定時執行“喂狗”工作,故在TO中斷中會執行清除看門狗工作;由于轉速采集于已經使用CAP中斷完成,故在TO中斷中僅需將該物理量解算;AD轉換則需要在TO中斷中進行。在TO中斷中還涉及到工作狀態控制與判斷函數和關機函數的調用。發動機的閉環控制在工作狀態控制與判斷函數中運行;當外界不滿足發動機運行的必要條件時,發動機轉速控制器則調用關機函數。
3 試驗結果
將發動機轉速控制器與機器人組裝,能源系統連接至綜控器,使用機器人的綜控器發送控制指令。在此過程中監控數據。監控數據如圖5所示。
由圖5可以看出:
(1)發動機在低轉速情況下啟動,能夠穩定在3000轉每秒。
(2)在上位機發送中等轉速的控制指令后,控制器能夠迅速響應指令,并將發動機轉速穩定在5000轉每秒。
(3)當機器人突然停止時,發動機負載瞬間升高,發動機熄火。但控制器檢測到轉速過低后,立即自動執行發動機啟動指令,發動機重新開始工作。
(4)當機器人動作逐漸降低時,能源系統油壓緩慢增大,轉速依然能夠穩定在指令值附近,不會產生轉速下降現象。
(5)綜控器發送停機指令后,發動機轉速控制器立即執行指令關閉發動機,發送機轉速為零,且向上位機返回當前狀態為關機狀態。
(6)由于能源系統加載,發動機轉速控制器可以檢測到在整個試驗過程中液壓油溫度在不斷增加,與實際吻合。
綜上,發動機轉速控制器可以實現系統全部需求。
4 結論
經過發動機轉速控制器與機器人的聯合調試,本文提出的用于機器人機載能源系統的發動機轉速控制器可以實現對發動機的轉速控制,并且該控制方法可實現在機器人加載或突然卸載時穩定工作。
參考文獻
[1]Hua-yun CAD,Fu-ming PENG.Optimization of engine speed neuralnetwork PID controller based ongenetic algorithm.IEEE,2011(04):271-274.
[2]Adnan Hamad,Dingli Yu,J B Gomm.Fault Detection and Isolation/orEngine under Closed-Loop Control.IEEE,2012:431-436.