??? 摘? 要: 針對開發飛行器曲面加工智能工裝系統的需求,提出一種多點陣列分布式無線液壓控制方法,并開發了基于MC68HC908微控制器" title="微控制器">微控制器的多點陣列分布式無線控制系統" title="控制系統">控制系統。該系統通過數十個微控制器并行運行,以軟件方法實現了整個液壓系統的分布式無線控制。文中對該系統的總體方案、硬件電路和軟件算法進行了介紹。?
??? 關鍵詞: 智能工裝系統;分布式無線液壓控制;MC68HC908;nRF2401A;壓力閉環控制?
?
??? 用于復雜曲面加工的陣列式智能柔性工裝系統由數十個甚至上百個可在X、Y、Z空間運動的工作單元組成,每個單元具有自治能力,其關鍵部位需采用液壓控制。對于這種復雜的機-電-液系統,若采用傳統的集中式控制方案,不僅油路、電路復雜,實現難度大,而且嚴重影響整個系統的可靠性和擴展性。同時對于這種復雜系統中的數十個甚至上百個陣列工作單元的通訊網絡,若采用有線連接,將導致線路復雜,難以實現與管理。為解決此問題,本文提出了一種多點陣列分布式無線液壓控制方法,并基于MC68HC908 Microcontroller(微控制器)開發了多點陣列分布式無線控制系統。該系統中各個子單元以微控制器為核心構成一個獨立的自治控制系統,分別控制單元內液壓裝置的運行;與上位機" title="上位機">上位機進行無線通信,便可獲得所有控制指令,并向上級反饋現場狀態信息;局部故障不會導致整個系統的癱瘓;易于擴展,使用靈活。?
1 系統總體方案與工作原理?
??? 本系統主要由上位機PC、AT89S52、nRF2401A無線收發芯片、監控電路(診斷系統)、驅動控制電路、MC68HC908微控制器及其液壓執行單元和反饋電路、精密步進電機" title="步進電機">步進電機等組成,其系統結構示意圖如圖1。其中,上位機由VC++工具實現用戶界面的軟件設計,通過RS232硬件接口將用戶輸入的控制命令串行輸出到主控制器AT89S52,經無線收發芯片nRF2401A與柔性工裝系統內各主控制器AT89S52進行通信,再由主控制器與各自治子單元的MC68HC908微控制器進行通信,傳遞上位機的控制命令,同時反饋各自治子單元的工作狀態。?
?
?
圖1? 系統結構示意圖
?
??? 各自治子單元在接收到上位機的命令時,通過驅動控制電路控制精密步進電機產生相應的進給運動驅動液壓系統;反饋系統則把采集到的油壓電信號反饋到微控制器的A/D" title="A/D">A/D中,從而形成一個獨立閉環的自治控制系統。?
??? 液壓元件具有功率-重量比和力矩-慣量比大、傳遞的力矩和功率很大的特點,因此可以組成體積小、重量輕、加速能力強和快速動作的驅動系統,以控制大功率和大負荷。同時液壓執行元件響應速度快,在驅動控制中采用校正裝置可以使回路增益提高、頻帶加寬。另外液壓執行機構還具有傳動平穩、抗干擾能力強,調速范圍廣,特別低速運行狀態下的控制工作性能好等優點[1]。?
??? 近年來隨著大規模集成電路和微電子集成技術的飛速發展,使得微控制器在可靠性、性價比以及功能等方面都有很大的提高,這就為設計功能強、價格低、性能優越的步進電機控制系統提供了得天獨厚的條件。同時隨著步進電機及其驅動系統的完善發展,出現了體積越來越小、性能優越的步進電機。步進電機是將電脈沖信號變換成相應的角位移或直線位移的機電執行元件。由于步進電機具有快速啟停、精確步進以及接收數字量的特點,所以在工業系統中得到廣泛應用。本文充分利用了液壓系統的力放大、隨動、穩定等特點來控制智能工裝系統的有關動作,采用微控制器控制步進電機輸出扭矩來驅動液壓執行單元。?
2 系統硬件電路?
2.1 無線收發模塊?
??? nRF2401A芯片是挪威Nordic公司推出的2.4GHz單片無線收發芯片,具有125個頻道可滿足多頻及跳頻需要;能夠在全球無線市場暢通無阻。該芯片支持多點間通信,其最高傳輸速率超過1Mb/s,具有傳輸速率高、接收靈敏度高、發射功率低、功耗低等優點。它采用SoC方法設計,只需少量外圍元件便可組成射頻收發電路。圖2所示為nRF2401A的外部接口電路。?
?
?
??? nRF2401A芯片最突出的特點是有兩種通信模式:Direct Mode(直接模式)和ShockBurstTM Mode(突發模式)。由于ShockBurstTM Mode具有低數據率的時鐘同步和高數據率的傳輸以及功耗低的特點,本系統選擇工作在該突發模式下。由于nRF2401A采用了DuoCeiver技術,因此可以由雙信道同時通過一個天線接口從相隔8MHz的兩個nRF2401A上接收數據。具體的兩個信道如下[2]:?
??? 數字信道1:CLK1,DATA,DR1;?
??? 數字信道2:CLK2,DATA,DOUT2;?
??? 其中數字信道2的頻率比數字信道1的頻率高出8MHz。?
2.2 微控制器主控模塊?
??? 微控制器主控模塊如圖3所示,圖中微控制器通過芯片ULN2004A驅動步進電機;壓力傳感器把采集到的壓力電信號sensor反饋到微控制器的A/D口中;微控制器MC68HC908通過feedback信號以光電隔離方式經主控制芯片AT89S52和無線模塊實時反饋現場的狀態信息到上位機PC,同時上位機PC通過主控制芯片AT89S52和無線模塊向控制系統下達控制指令;MC68HC908通過CLK、LED、DATA、LEDSHOW、switch、stop、A、B與監控電路進行通信,實時反饋系統的運行狀態信息。?
?
?
??? 由于本系統在設計上采用了微控制器控制步進電機進給以驅動液壓系統,通過壓力傳感器采集壓力信號反饋到控制系統中,因此要求控制系統具有A/D采集功能;在監控電路上要求微控制器具有較大輸出電流以及灌電流;同時本系統由于應用于工業現場,使用環境比較惡劣,要求具有較好的穩定性以及抗干擾能力?;谶@些考慮,本文采用高性價比的Freescale八位微控制器MC68HC908QY4。該微控制器有13個雙向I/O口,一個單向輸入口,其中四路具有8位A/D轉換功能;可使用5V或3V的供電電壓;具有4 096B的片內Flash存儲器,128B的片內RAM;雙通道16bit定時器模塊;自帶看門狗電路,具有較高的性價比[3]。?
??? 對柔性智能工裝系統的液壓系統而言,所需的壓力應大于1kg/cm2,以保證有足夠的夾持力。本文選用了型號為17HD032-30N的步進電機,靜力矩為130mN.m,額定電壓為12.3V,額定電流為0.28A。步進電機最常采用的兩種驅動架構是單極性和雙極性。單極性驅動電路使用四顆晶體管驅動步進電機的兩組相位,這類電機稱為四相電機,又稱雙相位六線式步進電機;雙極性步進電機的驅動電路,使用八顆晶體管來驅動兩組相位[4]。本文選用的17HD032-30N為雙相位六線式步進電機。?
??? 由于所選的步進電機的額定電壓為12V,額定電流為0.28A,因此本系統采用了最大驅動電流為1A的ULN2004A芯片。該芯片可以提供足夠大的驅動電流,輸入電壓范圍為6V~15V。ULN2004A具有7個開集極式輸出反相器,而在每個輸出端都有一個連接到共同端(COM)的二極管,作為放電保護電路。?
??? 由于在工業現場中存在很大的干擾,這些干擾如不隔離就會竄入微機內部造成破壞。因此在電路的控制以及上位機的反饋信號上使用光藕進行光電隔離,這樣可以消除地線干擾,同時還可去掉現場竄入的高頻干擾信號,提高系統的可靠性與穩定性。?
3 軟件程序的設計?
3.1 整個系統的軟件流程?
??? 整個系統的軟件編程采用模塊化的設計方法,每個功能采用一個模塊表達。本系統主要由無線收發模塊、監控模塊、A/D采集模塊、濾波模塊、加載模塊、卸載模塊、壓力上限處理模塊、壓力下限處理模塊等組成。系統軟件流程如圖4所示。
?
?
3.2 步進電機的軟件控制?
??? 在步進電機微控制器軟件控制系統中,主要實現以下三個基本控制任務[5]:?
??? (1)控制換相順序:步進電機的通電換相順序要嚴格按照步進電機的工作方式進行,也稱為脈沖分配。實現脈沖分配有軟件法和硬件法,本系統采用軟件法。?
??? (2)控制步進電機的轉向:通過改變通電相序實現。?
??? (3)控制步進電機的轉速:通過調節脈沖頻率實現。?
??? 在步進電機控制系統中,如果脈沖信號變化太快,則步進電機由于慣性將不能跟上電信號的變化,這時就會產生堵轉和丟步。所以步進電機在啟動時,必須有升速過程,在停止時必須有減速過程。理想的升速曲線一般為指數曲線,步進電機整個降速過程的頻率變化規律類似于整個升速過程頻率變化的規律。在實際編程過程中,按照指數曲線進行編程較為繁瑣,而用直線代替指數曲線進行編程較為容易,也能達到很好的啟動與停止效果。同時,由于本系統為保證液壓泵有足夠的壓力輸出,對于步進電機的轉速要求不能過高,屬于低速運行的范疇,平緩的啟動與停止會使系統具有很好的穩定性。圖5為勻加減速曲線圖,圖中的點劃線部分為指數升降速曲線,實線為直線升降速曲線。升速過程由突跳頻率加升速曲線組成(降速過程反之)。突跳頻率是指步進電機在靜止狀態時突然施加的脈沖啟動頻率,此頻率不可太大,否則也會產生堵轉和失步[5]。?
?
?
3.3 A/D采集的控制算法?
??? 常用的A/D采集數字濾波算法有程序判斷法、中值濾波法、算術平均值濾波法、加權濾波法、滑動濾波法、低通濾波法和復合濾波法等[6]。本系統采用中值濾波法,即對油壓進行連續采樣N次,N一般為奇數,然后把N次采樣值按從小到大排隊,再取中間值作為本次采樣值。該方法對于去掉由偶然因素引起的波動和采樣器不穩定而引起的脈動干擾具有很好的效果。對于測量變化比較緩慢的情況,采用中值濾波法效果比較好,但對于快速變化的數據,不宜采用中值濾波[6]。對于本系統而言,與微控制器的運行速度相比較油壓的變化非常緩慢,因此采用中值濾波法具有很好的效果。實踐證明本系統與不采用中值濾波方法以及與其他濾波方法相比較,在穩定性、抗干擾性以及魯棒性上有很大的提高與優勢。?
??? 本文詳細介紹了多點陣列分布式無線液壓控制系統的總體方案、硬件控制電路及軟件實現流程。同時也詳細介紹了步進電機的軟件控制與A/D采集的模塊化算法,該算法在很大程度上決定了整個系統的穩定性和可靠性。監控電路模塊能夠輔助工作人員較好地監控系統的運行情況,如有故障能及時方便地進行排除與維修。實驗表明,本系統采用的多點陣列分布式無線控制系統控制靈活、使用方便、成本低、抗干擾能力強、運行穩定,能很好滿足項目總體控制的需要,具有一定的實用價值以及參考意義。?
參考文獻?
[1] 趙升噸,魏樹國,王軍.液壓伺服控制系統研究現狀的分析[J].伺服控制,2006,(6):16-23.?
[2] nRF2401A Datasheet. Nordic Semiconductor ASA[EB/OL].http://www.nordicsemi.no.2004,12.?
[3] 熊慧,尤一鳴.MC68微控制器入門與實踐[M].北京:北京航空航天出版社,2006.?
[4] 章小紅,錢志良.步進電機控制系統的設計[J].蘇州大學學報,2006,26(4):42-44.?
[5] 潘新民.微型計算機控制技術[M].北京:人民郵電出版社,1998.?
[6] 求是科技.8051系列微控制器C程序設計完全手冊[M].北京:人民郵電出版社,2006.?