隨著科技的發展以及軍事戰略思想的轉變,無人飛行器在軍事、民用領域具有廣泛的應用前景和極其重要的現實意義。各國正在研制和開發各種性能獨特的無人飛行器, 改造的核心就是飛行控制系統。
DSP以其豐富的指令系統、高速高精度的運算能力及豐富的片內外設資源等優勢, 為飛控系統的發展提供了一個很好的平臺。本系統選用的TMS320F2812(以下簡稱F2812)是TI公司開發的一款32位DSP芯片,采用高性能靜態CMOS技術, 工作主頻可達150MIPS。片內集成了128K字的FLASH存儲器, 方便實現軟件升級;還集成了豐富的外圍設備, 如: 采樣頻率高達12.5MIPS的12位16路A/D轉換器, 兩個面向電機控制的事件管理器和多種標準串口通信外設。在此基礎上設計出一種高精度、擴展性強、小型化和低成本的新型飛行控制系統。
1、硬件系統方案要求和設計
基于DSP的飛控系統硬件設計, 關鍵在于系統的整體方案設計。接口設計是一個重要環節, 將直接影響系統的性能。為了減輕系統的負擔,外部輸入信號用中斷方式讀入,信號輸入輸出時要考慮抗干擾性。
充分考慮TMS320F2812的片內資源以及系統的接口要求,僅需對DSP芯片進行少量的外部接口擴展, 即可滿足飛控系統所有功能和未來擴展性的要求。同時由于系統的輸入邏輯量較多,采用Altera公司CPLD芯片EPM7128,完成數據處理和邏輯運算功能,以減少控制電路的體積, 增加系統的可靠性, 實現對控制系統各單元狀態的監視和控制。
系統整體方案設計如圖1所示。以下將從系統各模塊的實現加以說明。
2、硬件實現
2. 1 模擬信號接收
模擬信號經過信號調理模塊輸入,A/D轉換選擇12位逐次逼近A/D轉換器AD1,其片內含有三態輸出緩存電路和高精度參考電壓源與時鐘電路, 自帶采樣保持器。本設計采用的連接方式如圖2所示,使AD1工作在全控模式下。在AD1的使用上采用程序啟動、標志查詢方式,啟動信號和轉換結束信號相配合,使AD1一旦轉換結束就處于數據輸出狀態,同時產生AD結束標志, 提高多通道時的通過率。
2. 2 串口通信
F2812處理器提供兩個串行通信接口(SCI) ,支持16級接收和發送FIFO,但仍然滿足不了飛控系統與多外設的通訊要求。因此,系統選用異步串行接口擴展芯片SP2338,方便地將DSP的SCI1擴為3個全雙工、波特率最高可達9600b/s 的異步串行通信接口,作為主控制器和專用的通信設備數據傳輸通道,進行控制系統和地面的通信傳輸,SCI2作為GPS與CPU的通信通道。SP2338使用簡單,不需要底層軟件支持,上電即可工作。
串口擴展實現如圖3:ADR10、ADR11是下行地址線,ADR10,ADR11=00,01,10是分別對應子串口0,1,2;ADR00, ADR01是上行地址線,ADR00,ADR01- 00,01,10是分別對應子串口0,1,2。
F2812的I/O口直接與SP2338的地址線相連。發送數據時,DSP通過改變I/O口的狀態來改變下行地址, 選中特定的子串口;接收數據時,DSP通過讀取I/O口的狀態來判斷數據具體來自哪一個子串口,從而對讀取到的數據做出相應的處理。因此可以提高系統效率、降低軟件消耗。通過外加電平轉換芯片就可以實現RS232, RS422,RS485通訊。
2. 3 存儲器擴展
F2812上包含128K 16位的FLASH存儲器。考慮到容量和速度, 所以必須對系統進行存儲器的擴展。采用一片ISSI公司生產的64K字大小的IS61LV6416存儲芯片作為程序擴展存儲器。+3.3V供電,存取時間最大不超過12ns。不需要外加延時電路, 直接將其數據線、地址線分別和DSP的數據線、地址線相連。并將DSP的第51引腳R /W與61LV6416的片選信號CE引腳連接,DSP的讀、寫選通信號分別與61LV6416的讀、寫選通信號相連。
2. 4 PWM波輸出
無人飛行器伺服機構的舵機由PWM (脈寬調制)信號控制,利用占空比的變化,由DSP產生的多路并行PWM信號加上信號隔離驅動的舵機控制電路, 通過改變舵機的位置從而達到控制目的。
TMS320F2812集成了PWM控制信號發生器,每個事件管理器能夠產生8路PWM輸出。由于TMS320F2812芯片輸出的PWM高電平為+3.3V,而舵機控制信號輸入PWM脈寬調制信號的高電平需要+5V, 因此DSP輸出的脈寬調制信號的高電平需要經過電平轉換后才能驅動舵機工作。為了避免電機驅動板卡對主控板卡的干擾, 采用高速光耦隔離器件74LS245將PWM信號隔離, 阻斷電機驅動板卡對主控板卡的傳導干擾。
2. 5 復位、電源電路
在整個硬件設計中,主要用到的直流電源有+1.8V、+3.3V、+5V和+12V。板上電源采用TI的TPS767D318, 通過5V穩壓電源, 提供DSP所需的1.8V電壓和DSP及外圍電路所需的3.3V電壓。
所有信號與F2812連接時需考慮電平匹配問題, 通過加降壓芯片的方式來解決。+ 12V的直流電源由蓄電池提供,其他直流電壓可以通過DC/DC轉換模塊得到。+5V 電壓通過集成穩壓模塊LM7805獲得。考慮到本系統中還需1.8V 和3.3V兩種電壓,所以選用了IDT公司的LM1117芯片對輸入到DSP的5V 電壓進行電平轉換, 可使5V 輸入電壓降為1.8V和3.3V。LM1117提供電流限制和熱保護。目標板上的所有電源都可以用一個5V的穩壓模塊提供。
此外, 為了調試方便,系統由TI公司的TPS3307提供手動復位。復位信號經CPLD譯碼后輸出高、低兩種電平, 對復位電平要求不同的元件分別復位。手動按鈕和AT bus所有復位源都引入CPLD, 由CPLD內建的Reset Logic處理驅動, 再輸出至復位目的地。
3、系統軟件設計
軟件系統采用TI公司DSP集成開發工具CCS中集成的嵌入式實時操作系統DSP/BIOS,采用C語言與匯編語言混合編程實現。
系統初始化模塊設定SJA1000的工作模式, 且其初始化只能在復位模式下進行。初始化流程圖如圖4所示。
系統控制流程圖如圖5所示。數據存儲放置在任務線程中, 其過程是將飛行數據分析結果等值存儲在Flash中。檢測任務線程可以通過周期函數PRD來完成。PRD可以根據實時時鐘來確定函數運行的時間。這里,設置檢測任務100ms運行1次。
所有任務的啟動都和飛控系統總線上的小周期計數息息相關,其中與接收總線數據相關的任務都是由消息分發線程啟動, 當接收的消息為PSP發送的同步數據碼時,終端對象同步自己的小周期計數,并按現在所處的小周期啟動相應的任務。所有的任務都包含在消息處理線程中,每個終端都有一個這樣的線程,各個線程獨立工作,使各個終端處于并行工作方式。系統全部邏輯控制功能, 均采用周期運行方式, 每隔10ms由定時中斷程序喚醒。
利用CPLD進行邏輯運算及數據處理, 并檢測模擬量輸入信號,判斷各監控對象的工作狀態并按照系統控制邏輯決定輸出量。在其狀態發生變化時通知DSP, 協助DSP完成系統的自檢測功能。在狀態監測中, 將當前檢測到的狀態量與存儲的上一個狀態量相比較,如果兩次狀態相同,則不進行任何操作;如果發生變化,則向DSP發出中斷信號INT,通知DSP讀取數據。
在接收DSP發送的控制指令時, 將該指令與當前狀態相比較, 若符合就不再發送控制指令,這樣就能防止多次發送控制指令引起的誤動作。
在飛行過程中,控制系統的任務主要包括采集無人機的姿態數據,計算控制量并輸出到舵機等執行機構,接受地面站的指令并傳輸無人飛行器的位置等信息。利用設計的控制板進行伺服控制算法的實現, 完成對執行機構舵機的控制。圖6為控制系統輸出的其中一路舵機的PWM控制信號波形。
4、結束語
采用多外設的高性能DSP芯片TMS320F2812結合CPLD,并采用DSP/BIOS為實時操作系統, 進行實時多任務設計,有效提高了系統的可靠性和實時性。經過調試,該系統在實際運行中性能穩定,達到了設計要求。本系統體積小、重量輕、成本低,具備一定的擴展性,適合于構成較強的實時性、小型化和低成本的小型無人飛行器。
-
dsp
+關注
關注
553文章
8012瀏覽量
349177 -
操作系統
+關注
關注
37文章
6838瀏覽量
123389 -
飛行器
+關注
關注
13文章
723瀏覽量
45543
發布評論請先 登錄
相關推薦
評論