O 引言
本設計要求對某火炮的水平和高低角進行控製,達到快速位置伺服係統的要求。而這個(ge) 火炮角度控製係統首先要求有快速性,它的反應時間大於(yu) 或等於(yu) 12°/s;角度轉動控製精度小於(yu) 或等於(yu) 1’,水平角轉動範圍從(cong) 一120°~+120°,高低角轉動範圍從(cong) 0°~+85°;最後係統要有很好的穩定性和動態性能。
由於(yu) 位置伺服係統一般是以足夠的位置控製精度、位置跟蹤精度和足夠快的跟蹤速度作為(wei) 它的主要控製目標,係統運行時要求能以一定的精度隨時跟蹤指令的變化。所以對於(yu) 這種快速位置伺服係統,要求整個(ge) 係統各部分配合良好,其中的關(guan) 鍵是控製器的選擇,綜合考慮高精度、抗幹擾能力、靈活性、可靠性、實時性、性價(jia) 比等各因素的情況下。選擇了Frees—cale公司的MC9Sl2DGl28B作為(wei) 控製器。MC9Sl2DGl28B芯片是一款16位的單片機,功能強大,性能優(you) 越。本文采用該型號的單片機保證了所設計係統的穩定可靠。
1 係統控製方案
由於(yu) 設計的角度伺服係統的負載比較大,而且相對於(yu) 工業(ye) 控製要求而言係統精度和快速性要求高,所以整個(ge) 係統采用混合閉環的控製結構,所謂混合閉環的控製結構,就是係統內(nei) 同時存在半閉環和閉環。半閉環起到控製作用,而全閉環隻用於(yu) 穩態誤差補償(chang) ,兩(liang) 者相結合可獲得較高的位置控製精度和跟蹤速度。包括:MJX40—14型光電編碼器、90LCX一3直流伺服電機、12A8型PWM直流伺服電機驅動器、單片機控製係統。單片機控製係統由MC9Sl2DGl28B單片機實現,使用Code Warrior for HCl2 V4.6編譯器,采用C語言編程。由於(yu) 水平角和高低角的控製是一樣的,而且共用一個(ge) 單片機,以角度控製方框圖(圖1)來說明。

如圖1所示,係統的任務是使光電編碼器測得的炮架轉動角度θ2與(yu) 給出的指令θ1相等。當θ1≠θ2時,θ1一θ2的偏差信號在單片機裏進行處理,放大後輸入到PWM直流伺服電機驅動器,由PWM驅動器驅動直流伺服電機,伺服電機帶動減速器,驅動炮架向著減少偏差的方向移動,直到θ1=θ2,電機停止轉動,達到目標。同時,炮架要準確的跟蹤目標,必須減少在跟蹤過程中可能出現的速度變化(如風速等原因),因為(wei) 直流伺服電機本身帶有測速機端,可以把速度反饋信號進行負反饋輸入到PWM伺服電機驅動器,這樣使轉動機械的轉速度變化很小,起著穩速的作用。
2 硬件係統設計
2.1 總體(ti) 設計
整個(ge) 硬件係統采用模塊化思想設計,硬件係統框圖如圖2所示,分為(wei) 單片機CPU最小係統、鍵盤/顯示控製模塊、直流伺服電機驅動電路、係統輸入模塊、光電編碼器等。設計時,各個(ge) 模塊可相對獨立設計調試,最後集成為(wei) 整個(ge) 係統。

2.2 模塊結構和功能簡要說明
CPU最小係統:係統的主控模塊,用以控製和協調其它模塊工作。
鍵盤/顯示控製:由鍵盤及LED管理芯片CH451控製。係統輸入模塊:用通用8155芯片做數據采集,獲取光電編碼器所測得的火炮當前角度(位置)值,並傳(chuan) 給主控芯片。伺服電機驅動電路:用帶有緩衝(chong) 基準輸入的雙路12位電壓輸出數字一模擬轉換器(TLC5618)作為(wei) 單片機的一個(ge) 外圍的D/A接口;當係統把偏差值算好後,利用PID算法得出的數據量輸出到兩(liang) 路TLC5618,再通過驅動器去驅動水平和高低角的伺服電機,精確控製火炮的高低角和水平角位置和速度。
SCI通信:通過串行通信模塊。係統可以與(yu) 上位機連接,方便對係統軟件的更新和升級,且可通過上位機進行控製角度控製,監視單片機的輸入與(yu) 輸出。光電編碼器:用於(yu) 得到炮架的轉動角度。
2.3 主要模塊設計
2.3.1 單片機CPU最小係統
HCSl2係列MCU的硬件結構中僅(jin) 有一個(ge) MCU(微控製器)是無法工作的,它必須結合其它相應的外圍電路(即MCU支撐電路),才能構成一個(ge) 最小係統。HCSl2係列MCU的最小係統一般包括電源電路、時鍾電路、複位電路、BDM調試頭電路,MC9Sl2DGl28芯片最小係統支撐電路示意圖如圖3所示。其中各個(ge) 部分功能如下:
(1)電源電路主要給MCU提供+5V,+12V和+3.3V電源。
(2)時鍾電路給MCU提供一個(ge) 外接的石英晶振。
(3)複位電路主要完成係統上電複位和係統在運行時用戶按鍵複位。
(4)BDM接口電路主要完成與(yu) BDM調試工具相連,向MC9S12單片機寫(xie) 入和調試程序。

2.3.2 鍵盤/顯示控製電路
鍵盤控製模塊采用鍵盤及LED管理芯片CH451。CH45l是一個(ge) 整合了數碼管顯示驅動和鍵盤掃描控製以μP監控的多功能外圍芯片。CH451內(nei) 置RC振蕩電路,可以動態驅動8位數碼管或者64位LED,具有BCD譯碼、閃爍、移位等功能;同時還可以進行64鍵的鍵盤掃描;CH451通過可以級聯的串行接口與(yu) 單片機等交換數據;並且提供上電複位和看門狗等監控功能。該芯片支持SPI同步串行通訊方式,可以與(yu) MC9S12DGl28B單片機的SPI通訊口進行告訴數據通訊,控製方便。鍵盤采用4×4矩陣式鍵盤,係統共使用16個(ge) 按鍵。顯示數據用數碼管,由鍵盤輸入火炮要旋轉的水平和高低角度值,並顯示出來,係統第一次采集來的角度值也是通過它顯示的。
2.3.3 係統輸入模塊
從(cong) 光電碼盤中輸出的數據有15位,要是單一的用單片機去讀取光電碼盤的數據,一個(ge) 光電碼盤就會(hui) 用到15個(ge) 數據線,占用了單片機的大量資源。利用8155的豐(feng) 富的I/O口資源,可以減少對單片機資源的占用。單片機給光電編碼器一個(ge) 讀取信號脈衝(chong) ,8155的PA和PB口立即得到光電編碼器的數據,並存到了PA和PB寄存器中,此時單片機隻要讀取8155的PA和PB寄存器就能得到光電碼盤的數據,通過計算就能獲得此時炮架的方位角和高低角。
2.3.4 伺服電機驅動電路
對於(yu) 一般的D/A轉換器的輸入端都用並行輸入,但是前麵的芯片已經占用了單片機大量的接口,為(wei) 了係統的輸入輸出能同步進行,本設計選用了串行輸入的TLC5618,它是一種快速帶緩衝(chong) 基準輸入(高阻抗)的雙路12位電壓輸出數字一模擬轉換器(DAC),彌補了串行輸出的速度慢的不足,TLC5618具有1.21 MHz的輸入數據更新速率,DACA和DACB兩(liang) 路同時更新,O.5LSB的建立時間為(wei) 2.5 ms,它的最大串行時鍾速率為(wei) 20 MHz,轉換速度達到要求;且它有兩(liang) 路12位CMOS電壓輸出,精度符合設計要求;高阻抗基準輸入使輸出有很強抗幹擾能力。TLC5618在+5V單電源工作,其輸出電壓範圍為(wei) 基準電壓的兩(liang) 倍,因此,電路設計采用2.5V基準電壓。通過CMOS兼容的3線串行總線,可對TLC5618實現數字控製,單片機串行數據通過PTl輸入TLC5618,串行時鍾通過PT2輸入,PTO接片選端,TLC5618接收到數據後,經過數模轉換,產(chan) 生O~5V的模擬信號,經過減法器,得到一2.5~2.5的模擬信號,隻有達到一1OV~10V的模擬信號才能更精確的控製電機,所以用高速放大器LM318進行兩(liang) 級兩(liang) 倍放大,就可以達到設計的要求。#p#分頁標題#e#
3 軟件係統設計
係統軟件采用模塊化設計思想,主要模塊有:主程序模塊、數據采集模塊、鍵盤與(yu) 顯示模塊、IRQ定時中斷處理程序、D/A數據輸出模塊、串行通信模塊。開發調試平台是CodeWarrior軟件。CodeWarrior係列集成開發環境(IDE,Integrated Development Environment)是Metrowerks公司為(wei) 開發嵌入式微處理器而設計的一套強大易用的開發工具,使用它可以有效地提高軟件開發效率。係統的總的流程如圖4所示。

4 結束語
基於(yu) Freescale公司的MC9S12DGl28B單片機,設計了火炮的快速位置伺服係統。對硬件係統的鍵盤/顯示控製模塊、係統輸入模塊、直流伺服電機驅動電路等各個(ge) 功能模塊進行了詳細的電路設計,在CodeWarrior係列集成開發環境開發了軟件係統,最後對軟硬件進行了綜合調試。目前,設計的係統功能完善、運行可靠。結果表明:該係統方案設計合理,對角度控製精確度高,係統平穩,可靠性高,操作簡單,達到要求的指標,稍加改造,還可應用到其它位置伺服係統中。
轉載請注明出處。







相關文章
熱門資訊
精彩導讀



















關注我們

