基于TMS320F28335的氣球吊籃姿態(tài)監測裝置設計
摘要:針對氣球吊籃對姿態(tài)控制的要求,本文給出以TMS320F28335為平臺,開(kāi)發(fā)設計出具有姿態(tài)數據采集、姿態(tài)數據處理、以及姿態(tài)實(shí)時(shí)監測功能的裝置。姿態(tài)監測裝置中用MEMS電子陀螺儀和地磁計獲得姿態(tài)的采樣數據,采樣數據通過(guò)TMS320F28335解算為航偏角、俯仰、橫滾三姿態(tài)數據,PC作為顯示終端監控姿態(tài)實(shí)時(shí)變化,裝置能夠滿(mǎn)足氣球吊籃對姿態(tài)監控和測量的要求。
本文引用地址:http://dyxdggzs.com/article/201610/309083.htm科學(xué)氣球在大氣物理、空間科學(xué)、遙感等領(lǐng)域具有突出的應用優(yōu)點(diǎn)。如今科學(xué)氣球作為高空探測的平臺,因為其成本便宜,施放簡(jiǎn)單,易于維護的優(yōu)點(diǎn),一直作為高空探測的重要手段??茖W(xué)氣球因為體積大會(huì )在高空飛行過(guò)程中受到紊亂氣流影響,致使表面風(fēng)壓不同造成隨機緩慢的旋轉現象,這也將導致掛載吊籃姿態(tài)的跟隨變化。然而在一些領(lǐng)域需要一種可控的探測平臺,這就需要吊籃的姿態(tài)可以控制??茖W(xué)氣球在飛行過(guò)程中吊籃處于視野觀(guān)測范圍外,需要設計一種搭載在科學(xué)氣球吊籃內部并且能夠實(shí)時(shí)測量吊籃飛行狀態(tài),將實(shí)時(shí)狀態(tài)反饋給姿態(tài)控制系統,從而實(shí)現吊籃的姿態(tài)控制,作為科學(xué)氣球吊籃姿態(tài)控制的重要組成部分。文中提出了一種姿態(tài)測量系統設計和實(shí)現,文中描述了硬件設計、軟件程序設計和最后測試結果。
1 系統結構及工作原理
科學(xué)氣球吊籃姿態(tài)測量系統分為掛載部分和地基部分,除PC終端將置于地面進(jìn)行實(shí)時(shí)監測,其余模塊均屬于掛載部分,這些模塊將跟隨科學(xué)氣球吊籃升空,在科學(xué)氣球吊籃穩定飛行過(guò)程中實(shí)現實(shí)時(shí)測量、運算以及回傳數據到地面設備。
掛載部分包括TMS320F28335平臺、電子羅盤(pán)、地磁傳感器、電源、無(wú)線(xiàn)數傳模塊。主要系統結構如圖1所示,數據處理核心為T(mén)MS320F28 335的數字信號控制器(DSCs),外圍包括傳感器調理板,通信模塊,電源模塊,外部擴展模塊。

設計中利用底板作為外設及傳感器模塊連接硬件接口,其中PC端采用RS232連接在底板,單片機采用TTL電平串口連接底板,HM5883和MPU 6050采用I2C總線(xiàn)連接到單片機上。系統穩定工作時(shí),HM5883以及MPU6050數據通過(guò)單片機發(fā)送給TMS320F28335,姿態(tài)數據由TMS320F28335發(fā)送給PC終端。
2 系統的硬件設計
TMS320F28335為T(mén)I公司最新DSPC28X系列32位浮點(diǎn)DSCs(Digital Signal Controllers),具有150 MHz的時(shí)鐘工作頻率,其芯片內核供電為1.9 V,I/O口供電問(wèn)3.3 V,芯片上集成256 kx16 bit Flash以及34 kx16 bit SARAM,并且具有3個(gè)SCI口(SCIA、SCIB、SCIC),芯片高性能能夠滿(mǎn)足系統數據收發(fā)和姿態(tài)解算的要求。單片機選用STM32芯片,這種芯片是基于A(yíng)RM Cortex—M3內核,具有72 MHz工作頻率,64 kB閃存存儲器。
姿態(tài)傳感器選用應美盛公司的MPU6050芯片,這種微機電姿態(tài)傳感器為全球首款整合了三軸陀螺儀和三軸加速度運動(dòng)處理器件,具有131 LSBs/°/sec靈敏度,其角度測量范圍在±250~±2000°/s。HMC5883(HMC5883L)是霍尼韋爾公司的高分辨率的磁阻傳感器,具有霍尼韋爾公司最先進(jìn)的(AMP)技術(shù),可以有效的使得羅盤(pán)精度控制在1°左右。這里MPU6050和HMC5883均為數字型傳感器,芯片分別內嵌16 bit和12 bit ADC模塊,量化數據通過(guò)I2C總線(xiàn)傳出。
圖2中為MPU6050電路設計框圖,其擁有2條I2C通道,并且通過(guò)內部串行通道選擇器相連接,圖中的連接方式可以組成三軸陀螺儀、三軸加速度和三軸地磁計組成的9軸姿態(tài)傳感器件;MPU6050的FSYNC和INT連接到STM32上。

電路設計如圖3中MPU6050供電電壓范圍為2.375~3.46 V,設計中采用LM1117-3.3 V供電芯片設計,MPU6050有VDD供電電源端以及VLOGIC邏輯電源端口,其供電要求VDD超前VLOGIC>0 ms,且VDD上升沿滿(mǎn)足100 ms,VLOGIC上升沿3 ms,VLOGIC連接線(xiàn)上串聯(lián)10 mH電感可滿(mǎn)足要求,SDA與SCL分別為I2C總線(xiàn)的是數據線(xiàn)和控制線(xiàn)連接到STM32單片機的PB6、PB7,HMC5338地磁極SDA、和SCL分別連接到MPU6050的AUX_SDA和AUX_SCL端即可組成圖1中的9軸傳感器。

圖4為STM32最小系統電路,利用STM32單片機作為量化數據的預采集處理并與DSCs進(jìn)行應答式數據傳送,這種方式比連續異步傳輸方式節約系統資源,同時(shí)減小DSCs的片上資源消耗和程序復雜程度。設計中考慮STM32獲取數據準備完成信號由HMC_INT管腳產(chǎn)生,PA5口連接到HMC 5883傳感器15管腳,同時(shí)串口通道與DSCs的SCITXDB與SCIRXDB連接,用于采樣數據交換。
3 系統的軟件設計
系統軟件設計包括STM32片上程序、DSCs片上程序和上位機顯示程序。首先由STM32依次初始化MPU6050和HMC5883,MPU6050初始化包括時(shí)鐘、陀螺儀量程、加速度量程、I2C與HMC5883連通方式和中斷信號產(chǎn)生條件。HMC5883初始化包括設置HMC5883工作模式、更新速率設置和傳感器FIFO初始化。

圖5為信號處理流程圖,模擬信號通過(guò)AD采樣獲得量化數據,對量化數據進(jìn)行初級平滑濾波后獲得采樣數據,采樣數據通過(guò)速率115200串口發(fā)送給TMS320F28335,傳輸過(guò)程有0.02%的誤差率,當TMS320F28335串口14級緩沖FIFO數據完全載入后會(huì )向內核產(chǎn)生SICBRXINT中斷信號,內核響應中斷并調用中斷服務(wù)子程序,將FIFO緩沖寄存器中的數據導入到緩存數組中,然后調用四元數解算子函數對采樣數據進(jìn)行解算獲取姿態(tài)傳感的航偏角、俯仰、橫滾等姿態(tài)數據。最后將姿態(tài)數據通過(guò)串口發(fā)送給PC進(jìn)行實(shí)時(shí)更新和顯示。
圖6為DSCs程序設計流程圖。程序采主體采用中斷結構設計,將時(shí)間軸分成若干片段,使DSCs時(shí)分多用,DSCs程序中主要包含:




在Time0中斷服務(wù)子程序中,用CpuTimer0.InterruptCount作為時(shí)間片選標志位,通過(guò)對其去余操作,使DSCs在不同時(shí)間處理不同任務(wù),這在時(shí)間邏輯性便于理解和掌握,使用switch—case語(yǔ)句調用過(guò)程函數;CpuTimer0.InterruptCount%5=1時(shí),開(kāi)啟串口接收中斷開(kāi)啟,數據采用14級FIFO設置,當接收BUFF達到14級后,SCI模塊將產(chǎn)生FIFO中斷信號通過(guò)PIE模塊傳送給CPU,CPU保存寄存器值以及當前程序指針入棧,響應中斷服務(wù)子程序更新采樣數據緩存數組;同樣CpuTimer0.InterruptCount%5=2時(shí),調用COT_IMU()(姿態(tài)解算子程序)獲取測量航偏角、橫滾角,俯仰角姿態(tài)數據:CpuTimer0.InterruptCount%5=4時(shí),DSCs將會(huì )調用UPto_PC_SCIC()函數,把姿態(tài)數據編碼后發(fā)送給上位機,由上位機軟件對數據進(jìn)行解碼和動(dòng)態(tài)顯示。

圖7為PC上位機程序設計流程圖,程序采用以VB+Direct3D顯示技術(shù),程序設計中為了讓下位機和上位機通信良好,上位機串口采用定時(shí)查詢(xún)方式。當時(shí)間達到條件后,系統將對接收數據進(jìn)行解碼了校驗,將新的姿態(tài)數據賦予D3D對象,等待刷新時(shí)重繪圖像。


上代碼主要描述顯示刷新部分,通過(guò)調用timer控件更新視角速度可以方便變得調整顯示效果,設置其刷新時(shí)間通過(guò)改變Timer.Interval屬性中的值,縮短刷新時(shí)間會(huì )使得顯示效果更佳流暢,通過(guò)上位機程序將采樣的姿態(tài)數據記錄下來(lái)以便分析。
4 結果
經(jīng)過(guò)測試和試驗,本文中所述姿態(tài)測量系統工作穩定,并且能夠獲取實(shí)時(shí)姿態(tài)信息,其姿態(tài)解算速率控制在400 Hz/s,顯示刷新速率控制在>60幀,串口速率設置在115 200 bps,傳輸誤碼率在0.02%,下位機上傳數據幀數在20幀/s,姿態(tài)監控范圍:俯仰角-90°至90°,航偏角-180至180°,橫滾角-180°至180°,姿態(tài)測量準確有效。

圖9中對姿態(tài)測量系統做了短時(shí)間測試獲得的監測數據。其中縱向坐標為角度信息,橫向坐標為時(shí)間信息,(上)(中)(下)三幅子圖為單姿態(tài)測試,圖中可以看出,在14s左右的測量過(guò)程中,姿態(tài)傳感器的響應速度非常靈敏,通過(guò)對(下)圖中180°到-180°跳變分析,系統響應速度在0.05s左右。由此系統在運行過(guò)程中姿態(tài)數據更新速度達到20fps,完全能夠滿(mǎn)足吊籃緩慢運動(dòng)下對完成姿態(tài)測量的要求。
5 結束語(yǔ)
科學(xué)氣球吊籃在空中的姿態(tài)直接影響探測儀器工作,獲取科學(xué)氣球吊籃的姿態(tài)信息有助于對吊籃姿態(tài)的控制,也是作為姿態(tài)控制反饋中的重要環(huán)節,姿態(tài)測量系統的精度直接影響到姿態(tài)控制性能和精度。本文描述的姿態(tài)檢測系統硬件設計和軟件設計,利用TMS320F28335的優(yōu)越性能,選用MPU6050和HMC5883測量元件實(shí)現系統硬件和軟件設計,采用D3D技術(shù)實(shí)現姿態(tài)實(shí)時(shí)監控并且達到預期效果。
評論