新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于SmartFusion的無人機飛行控制系統設計

        基于SmartFusion的無人機飛行控制系統設計

        作者: 時間:2012-08-01 來源:網絡 收藏

        SmartFusion的主要特點和功能體現在:
        (1)功能齊全的FPGA。SmartFusion器件具有Actel經過驗證的基于快速閃存技術ProASIC3 FPGA架構,使用先進的130 nm七層快閃CMOS工藝技術,系統門密度范圍為60K~500K,并具有350 MHz的工作頻率和最多204個I/O。這種組合能夠集成來自其他器件的現有功能,大幅減少線路板空間和總體系統的功耗。
        (2)微控制器子系統。器件的智能性是以微控制器子系統的形式加入FPGA的,子系統帶有100 MHz工作頻率的ARM Cortex-M3處理器硬核,全部標準外設和功能包括:多層AHB通信矩陣,吞吐率高達16 Gb/s,帶有RMI接口的10M/100M以太網MAC和SPI,I2C,UART和32位定時器。具有最高512 KB閃存,64 KB SRAM和外部存儲器控制器(EMC)以及8通道DMA控制器。
        (3)可編程模擬模塊。創新性專有模擬計算引擎(ACE)能執行采樣排序和計算,能夠分擔ARM Cortex-M3處理器的模擬初始化和處理任務,可編程模擬包括:精度為1%的ADC和DAC,多達3個采樣頻率為600KS/s的12位ADC,最多3個12位第一階DAC、10個50 ns高速比較器并集成多種溫度、電壓和電流監控功能。
        在這里,選用SmartFusion系列的A2F200M3作為核心芯片。它的MSS的主要功能是保持與地面站的通訊,采集姿態角數據和GPS定位數據,發送控制命令給FPGA,運行相關的飛行控制算法和導航控制算法等。FPGA架構的主要功能是采集與測量傳感器的數據,接收MSS的命令與驅動舵機。FPGA分擔了一部分原可以采用MSS來實現的任務,使MSS有更多的時問用于運行算法,以提高系統的整體性能。
        外圍接口電路主要由RS 232接口、GPS接口、SD卡接口、傳感器信號采集通道、發動機轉速測量通道、電池電壓檢測通道等組成。GPS和PC串口連接均需要1片MAX232芯片進行電平轉換。SD卡用于存放飛行參數及圖像數據。MSS與FPGA之間可通過GPIO進行數據傳輸。舵機驅動、無線接收機信號檢測、信號控制等功能均由芯片的內部邏輯電路來實現,采用VerilogHDL語言編寫。鑒于飛行控制和導航精度的要求,該模塊選用了TI公司的A/D芯片TLC3548,用來采集三軸加速度計、高度傳感器、三角速率陀螺輸出的電壓信號。A/D、驅動組成框圖如圖4所示。

        d.JPG

        3 軟件設計
        由于飛控計算機運行的程序復雜,信息量大,對實時性和穩定性要求高,采用單任務順序機制的編程方式已不能滿足飛控系統的要求,因此飛控軟件采用了實時嵌入式操作系統μC/OS-Ⅱ。μC/OS-Ⅱ是專門為計算機的嵌入式應用而設計的實時操作系統,是可裁減的、基于靜態優先級的可剝奪型多任務實時內核,具有高度可移植性,特別適合于微處理器和微控制器,其實時性能和內核的健壯性已在大量的實際應用中得到了證實。

        e.JPG


        飛控系統的應用程序分為初始化模塊、數據采集模塊、控制解算模塊、姿態讀取模塊、GPS接收模塊、遙測發送模塊、控制量輸出模塊。任務與功能模塊資源之間的關系如圖5所示。開始運行時,飛控計算機在完成自檢后,首先進行慣性導航系統的初始對準及任務諸元裝訂,接收初始對準裝置發送的初始姿態和位置信息,然后等待控制系統的啟動命令。飛控系統啟動后進行初始化設置,根據任務優先級、調用相應的程序模塊完成預定任務,各個任務之間的公共數據采用共享變量的方式進行協同,但需要采取一定的保護措施。

        4 結語
        基于SmartFusion的飛控系統具有體積小,精度高,運算速度快,可剪裁性的優點,特別是軟件上采用μC/OS-Ⅱ實時操作系統,使飛控系統具有實時性的特點。該飛控系統已在某型上得到了應用,飛行驗證表明系統設計滿足要求。本文設計的飛控系統具有一定的工程應用價值,為飛控系統的設計提供了借鑒。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 杭州市| 离岛区| 祁门县| 枣庄市| 石门县| 新平| 贡嘎县| 娱乐| 新疆| 扶绥县| 昌宁县| 吉隆县| 通许县| 泗阳县| 富宁县| 渑池县| 清水县| 河源市| 乌鲁木齐市| 五家渠市| 海阳市| 广平县| 射阳县| 梅州市| 青海省| 石家庄市| 长葛市| 富民县| 托里县| 湟源县| 宜兰县| 琼结县| 甘德县| 科技| 黎城县| 彭阳县| 垫江县| 无锡市| 西青区| 济源市| 依安县|