TOP1 三星Artik芯片:八核處理器,可用于無(wú)人機(jī)
三星在物聯(lián)網(wǎng)世界大會(huì)上推出了新一代低功耗芯片,可以用于洗衣機(jī)和無(wú)人機(jī)等各類(lèi)聯(lián)網(wǎng)設(shè)備。除此之外,該公司還公布了最新計(jì)劃,包括如何通過(guò)一個(gè)云計(jì)算平臺(tái),從各類(lèi)終端設(shè)備的芯片中匯總數(shù)據(jù),并對(duì)其加以分析。三星新推出的芯片分為三種尺寸,具備不同的處理和存儲(chǔ)能力以及無(wú)線電通信功能。所有芯片均嵌入了加密系統(tǒng),可以降低黑客攻擊的概率。
Artik由三星首席戰(zhàn)略官孫英權(quán)親直接掌管的戰(zhàn)略和創(chuàng)新中心研發(fā),他表示, Artik平臺(tái)包含了硬件和軟件套件,可幫助公司快速打造聯(lián)網(wǎng)設(shè)備。對(duì)此,SmartThings CEO Alex Hawkinson公開(kāi)宣稱(chēng),SmartThings Open Cloud也將與Artik配合,提供資料運(yùn)算以及資源整合,為開(kāi)發(fā)者或公司App開(kāi)發(fā)的提供便利。
尺寸最小的Artik 1芯片比瓢蟲(chóng)尺寸略大,目的是供專(zhuān)用的傳感器中心等小型設(shè)備使用。尺寸最大的Artik 10對(duì)角線長(zhǎng)度為2英寸(約合5厘米),希望用于家庭服務(wù)器和媒體中心。Artik 10采用1.3GHz八核處理器,擁有2GB內(nèi)存和16GB閃存。三星總裁Young Sohn表示,Artik 5可以用于無(wú)人機(jī)和相機(jī)等體積相對(duì)較小的產(chǎn)品,該芯片具備視頻編碼和解碼功能,因此也從一定程度上降低了功耗。這些芯片支持多種硬件標(biāo)準(zhǔn),包括Wi- Fi、藍(lán)牙和藍(lán)牙低功耗、ZigBee和Thread。
當(dāng)然,三星在涉足物聯(lián)網(wǎng)領(lǐng)域的雄心從去年以2億美元收購(gòu)SmartThing就顯現(xiàn)出來(lái)了,我們也看到了二者合作的成績(jī),目前已經(jīng)有 1.9 萬(wàn)種設(shè)備接入了 SmartThings 的平臺(tái)。按照三星電子CEO尹富根的說(shuō)法,到2017年,所有三星電視將成為物聯(lián)網(wǎng)設(shè)備,五年內(nèi)所有三星硬件設(shè)備均將支持物聯(lián)網(wǎng)。在手機(jī)方面,三星與蘋(píng)果激戰(zhàn)多年未分高下。但是,在物聯(lián)網(wǎng)這塊大蛋糕的爭(zhēng)搶中,三星還只是個(gè)后來(lái)者,在它面前的還有高通、英特爾兩座大山。
這些芯片已經(jīng)用于三星的移動(dòng)設(shè)備,今后還將被三星消費(fèi)電子部門(mén)用在電視機(jī)和電冰箱等聯(lián)網(wǎng)設(shè)備上。三星認(rèn)為,提供一套標(biāo)準(zhǔn)芯片,再輔以一套標(biāo)準(zhǔn)開(kāi)發(fā)工具和標(biāo)準(zhǔn)集成平臺(tái),將為iOS解決方案的開(kāi)發(fā)提供便利,并降低成本。美國(guó)市場(chǎng)研究公司IDC表示,2020年激活的物聯(lián)網(wǎng)設(shè)備將達(dá)到500億臺(tái)。三星還表示,任何需要使用數(shù)十億芯片的業(yè)務(wù),三星都想涉足。
Artik平臺(tái)的推出對(duì)SmartThings有特殊意義,后者是三星18個(gè)月前收購(gòu)的聯(lián)網(wǎng)家居和物聯(lián)網(wǎng)公司。SmartThings已經(jīng)擁有一套開(kāi)發(fā)工具和開(kāi)發(fā)者整合平臺(tái),可以幫助開(kāi)發(fā)者打造物聯(lián)網(wǎng)設(shè)備聯(lián)網(wǎng)系統(tǒng)。SmartThings CEO亞歷克斯·霍金森(Alex Hawkinson)表示,已經(jīng)有1.9萬(wàn)種設(shè)備接入了SmartThings的平臺(tái)。三星正在使用SmartThings的開(kāi)發(fā)云框架作為各類(lèi)聯(lián)網(wǎng)設(shè)備的主要云數(shù)據(jù)集成平臺(tái),無(wú)論這些設(shè)備使用的是Artik芯片還是其他的物聯(lián)網(wǎng)芯片。該平臺(tái)提供了SDK(軟件開(kāi)發(fā)套件)幫助終端設(shè)備接入云端。Young Sohn說(shuō):“開(kāi)發(fā)者可以使用這些關(guān)鍵的物聯(lián)網(wǎng)組建更快、更簡(jiǎn)單地開(kāi)發(fā)新型物聯(lián)網(wǎng)項(xiàng)目?!盨martThings的霍金森表示,不僅向外部開(kāi)發(fā)者開(kāi)放,三星內(nèi)部的電視機(jī)、電冰箱和手機(jī)團(tuán)隊(duì)也會(huì)使用相同的工具
三星曾經(jīng)表示,該公司旗下的所有產(chǎn)品都將在2020年實(shí)現(xiàn)聯(lián)網(wǎng)。新的Artik芯片將安裝在所有三星設(shè)備中,這些設(shè)備也都將接入共同的SmartThings。三星將從今天開(kāi)始向開(kāi)發(fā)者提供這些芯片,方便其開(kāi)發(fā)物聯(lián)網(wǎng)項(xiàng)目。Young Sohn表示,開(kāi)發(fā)軟件將集成在芯片中,并將包含接入云端所需的開(kāi)放API。
更多無(wú)人機(jī)系統(tǒng)MCU資料,詳情請(qǐng)進(jìn)入》》》
TOP2 揭秘以mega16l為核心的無(wú)人機(jī)充放電電路
小型旋翼機(jī)器人是以模型直升機(jī)為載體, 裝備上傳感器單元, 控制單元和伺服機(jī)構(gòu)等裝置以實(shí)現(xiàn)自主飛行。而為了提高飛機(jī)的安全性, 需要設(shè)計(jì)一套設(shè)備監(jiān)測(cè)系統(tǒng), 實(shí)時(shí)的監(jiān)測(cè)飛機(jī)的姿態(tài)信息, 機(jī)載設(shè)備的狀況以及電源的情況等。該平臺(tái)所使用的電源是兩節(jié)鋰電池串聯(lián)組成的電池組, 利用鋰離子電池的充放電特性, 設(shè)計(jì)了一套以mega16l 為核心的充放電管理系統(tǒng)。鋰電池具有體積小、能量密度高、無(wú)記憶效應(yīng)、循環(huán)壽命高、高電壓電池和自放電率低等優(yōu)點(diǎn), 與鎳鎘電池、鎳氫電池不太一樣的是必須考慮充電、放電時(shí)的安全性,以防止特性劣化。因此在系統(tǒng)運(yùn)行過(guò)程中, 為了保護(hù)鋰電池的安全, 設(shè)計(jì)了一套欠壓保護(hù)電路, 以防止電源管理系統(tǒng)因過(guò)用而發(fā)生電池特性和耐久性特性劣化。
電源管理系統(tǒng)總體框架
無(wú)人機(jī)電源管理系統(tǒng)是飛機(jī)實(shí)現(xiàn)自主飛行的重要組成部分, 其大致框架如圖1 所示。在該系統(tǒng)中, 利用AXI 公司生產(chǎn)的2212/ 34 型號(hào)發(fā)電機(jī)將動(dòng)能轉(zhuǎn)換為220V 交流電, 再經(jīng)過(guò)整流穩(wěn)壓后輸出11.6V 的直流電壓, 可由該輸出電壓為兩節(jié)鋰電池充電。電源管理系統(tǒng)的控制器是meg a161單片機(jī), 該控制器通過(guò)檢測(cè)兩節(jié)鋰電池的電壓大小從而控制繼電器開(kāi)關(guān)來(lái)對(duì)電池進(jìn)行充放電管理。
圖1 電源管理系統(tǒng)框架
控制器采集到電源系統(tǒng)中的信息后, 通過(guò)無(wú)線傳輸設(shè)備將該數(shù)據(jù)實(shí)時(shí)傳輸給地面。地面監(jiān)控平臺(tái)還可以發(fā)送一些指令給mega16l, 通過(guò)控制繼電器開(kāi)關(guān)來(lái)控制電池充放電, 從而實(shí)現(xiàn)監(jiān)測(cè)和控制飛機(jī)的目的。機(jī)上電源模塊由兩節(jié)英特曼電池有限公司生產(chǎn)的鋰電池組成, 電池組電量充足時(shí)電壓為8?? 4V.電池的荷電量與整個(gè)供電系統(tǒng)的可靠性密切相關(guān), 電池剩余電量越多, 系統(tǒng)的可靠性越高, 因此飛行時(shí)能實(shí)時(shí)獲得電池的剩余電量, 這將大大提高飛機(jī)的可靠性。
電源監(jiān)控系統(tǒng)的實(shí)現(xiàn)
直升機(jī)能順利完成飛行任務(wù), 充足的電源供應(yīng)不可或缺,由鋰電池的特性可知, 在過(guò)度放電的情況下, 電解液因分解而導(dǎo)致電池特性劣化并造成充電次數(shù)降低。因此為了保護(hù)電池的安全, 電源系統(tǒng)在給控制系統(tǒng)供電前要經(jīng)過(guò)欠壓保護(hù)模塊和穩(wěn)壓模塊。為了預(yù)測(cè)電源系統(tǒng)中剩余的電量, 這里采用檢測(cè)電源系統(tǒng)電壓的方法, 在測(cè)得系統(tǒng)的電源電壓后, 查找由放電曲線建立的數(shù)據(jù)庫(kù), 就能估計(jì)出電源系統(tǒng)中所剩余的電量。
單片機(jī)所需要的電源電壓是2. 7 ~ 5.5V, 因此可為meg a16l 設(shè)計(jì)外部基準(zhǔn)電壓為2.5V, 該基準(zhǔn)穩(wěn)壓電路如圖2所示。所以系統(tǒng)要檢測(cè)電池的電壓, 需要將電池用電阻進(jìn)行分壓且最大分得的電壓值不能超過(guò)2.5V.控制器測(cè)得的電壓值乘上電壓分壓縮小的倍數(shù)后, 就能得到電源系統(tǒng)中的實(shí)時(shí)電壓。時(shí)刻監(jiān)測(cè)鋰電池的用電情況, 防止電池過(guò)用現(xiàn)象出現(xiàn), 就能達(dá)到有效使用電池容量和延長(zhǎng)壽命的目的。
圖2 基準(zhǔn)電壓電路
無(wú)刷直流電機(jī)是由電動(dòng)機(jī)主體和驅(qū)動(dòng)器組成, 是一種典型的機(jī)電一體化產(chǎn)品。直流無(wú)刷電機(jī)與一般直流電機(jī)具有相同的工作原理和應(yīng)用特性, 而其組成是不一樣的, 除了電機(jī)本身外, 前者還多一個(gè)換向電路, 直流無(wú)刷電動(dòng)機(jī)的電機(jī)本身是機(jī)電能量轉(zhuǎn)換部分, 它除了電機(jī)電樞、永磁勵(lì)磁兩部分外, 還帶有傳感器。該發(fā)電機(jī)的部分AC-DC 電路如圖3 所示。
圖3 無(wú)刷電機(jī)AC-DC 電路
充電電路
鋰離子電池的充電特性和鎳鎘、鎳氫電池的充電特性有所不同, 鋰離子電池在充電時(shí), 電池電壓緩慢上升, 充電電流逐漸減小, 當(dāng)電壓達(dá)到4.2V 左右時(shí), 電壓基本不變, 充電電流繼續(xù)減小。因此對(duì)于改型充電器可先用先恒流后恒壓充電方式進(jìn)行充電, 具體充電電路如圖4 所示。該電路選用LM2575ADJ 組成斬波式開(kāi)關(guān)穩(wěn)壓器, 最大充電電流為1A.
圖4 高效開(kāi)關(guān)型恒流/ 恒壓充電器部分電路
該電路工作原理如下: 當(dāng)電池接入充電器后, 該電路輸出恒定電流, 對(duì)電池充電。該充電器的恒流控制部分由雙運(yùn)放LM358 的一半、增益設(shè)定電阻R3 和R4 、電流取樣電阻R5 和1. 23V 反饋基準(zhǔn)電壓源組成。剛接入電池后, 運(yùn)放LM358 輸出低電平, 開(kāi)關(guān)穩(wěn)壓器LM2575-ADJ 輸出電壓高, 電池開(kāi)始充電。當(dāng)充電電流上升到1A 時(shí), 取樣電阻R5 (50m 歐) 兩端壓降達(dá)到50mV, 該電壓經(jīng)過(guò)增益為25 的運(yùn)放放大后, 輸出1.23V 電壓, 該電壓加到LM2575 的反饋端, 穩(wěn)定反饋電路。當(dāng)電池電壓達(dá)到8.4V 后, LM3420 開(kāi)始控制LM2575ADJ 的反饋腳。LM3420 使充電器轉(zhuǎn)入到恒壓充電過(guò)程, 電池兩端電壓穩(wěn)定在8?? 4V.R6 、R7 和C3 組成補(bǔ)償網(wǎng)絡(luò), 保證充電器在恒流/ 恒壓狀態(tài)下穩(wěn)定工作。若輸入電源電壓中斷, 二極管D2 和運(yùn)放LM358 中的PNP 輸入級(jí)反向偏置, 從而使電池和充電電路隔離, 保證電池不會(huì)通過(guò)充電電路放電。當(dāng)充電轉(zhuǎn)入恒壓充電狀態(tài)時(shí), 二極管D3 反向偏置, 因此運(yùn)放中不會(huì)產(chǎn)生灌電流。
TOP3 ATmega2560無(wú)人機(jī)搖桿微控制器設(shè)計(jì)方案
電源欠壓保護(hù)
電源欠壓保護(hù)由鋰電池的電池放電特性易知, 當(dāng)電池處于3.5V 時(shí), 此時(shí)電池電量即將用完, 應(yīng)及時(shí)給電池充電, 否則電池電壓將急劇下降直至電池?fù)p壞。于是設(shè)計(jì)了一套欠壓保護(hù)電路如圖5 所示, 利用電阻分壓所得和由TL431 設(shè)計(jì)的基準(zhǔn)電壓比較, 將比較結(jié)果送人LM324 放大電路進(jìn)而觸發(fā)由三極管構(gòu)成的開(kāi)關(guān)系統(tǒng), 從而控制負(fù)載回路的通阻。試驗(yàn)證明, 當(dāng)系統(tǒng)電壓達(dá)到臨界危險(xiǎn)電壓7V 時(shí), 系統(tǒng)的輸出電流僅為4mA, 從而防止了系統(tǒng)鋰電池過(guò)度放電現(xiàn)象的產(chǎn)生。
圖5 欠壓保護(hù)電路
由于鋰離子電池能量密度高, 因此難以確保電池的安全性。在過(guò)度充電狀態(tài)下, 電池溫度上升后能量將過(guò)剩, 于是電解液分解而產(chǎn)生氣體, 因內(nèi)壓上升而發(fā)生自燃或破裂的危險(xiǎn);反之, 在過(guò)度放電狀態(tài)下, 電解液因分解導(dǎo)致電池特性及耐久性劣化, 從而降低可充電次數(shù)。該充電電路和本管理系統(tǒng)能有效的防治鋰電池的過(guò)充和過(guò)用, 從而確保了電池的安全, 提高鋰電池的使用壽命。
本文設(shè)計(jì)了一套UAV 電源管理系統(tǒng), 該系統(tǒng)具有自動(dòng)控制充放電管理, 實(shí)時(shí)監(jiān)測(cè)電池電壓等功能。該系統(tǒng)已經(jīng)經(jīng)過(guò)調(diào)試和試驗(yàn)驗(yàn)證了其可行性, 但是為了保證飛機(jī)安全, 還要做更多的試驗(yàn)以保證無(wú)人機(jī)自主飛行的安全和穩(wěn)定。除此之外, 高低頻濾波, 電池電量預(yù)測(cè)等也是重要的方向, 需要深入的研究?,F(xiàn)今, 鋰電池的使用范圍越來(lái)越廣, 其價(jià)格也相對(duì)適中,如果掌握先進(jìn)的科學(xué)的使用方法, 讓鋰電池發(fā)揮應(yīng)有的最大效用, 將會(huì)節(jié)省大量的資源和財(cái)富。
解讀ATmega2560無(wú)人機(jī)搖桿微控制器設(shè)計(jì)方案
隨著無(wú)人機(jī)正在成為新的經(jīng)濟(jì)增長(zhǎng)點(diǎn)和國(guó)民收入水平的提高,近年來(lái)在高校和民間都得到了更多的關(guān)注。無(wú)人機(jī)是無(wú)人駕駛飛機(jī)的簡(jiǎn)稱(chēng),是利用無(wú)線電遙控(含遠(yuǎn)程駕駛)、預(yù)設(shè)程序控制和(或)基于機(jī)載傳感器自主飛行的可重復(fù)使用不載人飛機(jī)。目前用無(wú)線電遙控的無(wú)人機(jī)大部分使用JR或者Futaba公司出品的專(zhuān)用遙控器,這些遙控器優(yōu)點(diǎn)是手感好,方便攜帶,但是價(jià)格高昂,通道數(shù)較少,難以滿足無(wú)人機(jī)執(zhí)行任務(wù)時(shí)需要較多通道數(shù)的要求。少部分使用PC作為控制平臺(tái),使用了飛行搖桿作為控制器,能實(shí)現(xiàn)更專(zhuān)業(yè)的功能,通道數(shù)也多,但是攜帶不方便,需要攜帶手提電腦或者PC到外場(chǎng)調(diào)試,還必須考慮電池續(xù)航問(wèn)題,造價(jià)也比較高昂,且需要專(zhuān)業(yè)的計(jì)算機(jī)軟件知識(shí)進(jìn)行編程。
為解決上述不便,本人提出了一種基于Arduino的無(wú)人機(jī)控制器設(shè)計(jì)方案。Arduino是2005年1月由米蘭交互設(shè)計(jì)學(xué)院的兩位教師David Cuartielles和Massimo Banzi聯(lián)合創(chuàng)建,是一塊基于開(kāi)放原始代碼的Simple I/O平臺(tái).Arduino具有類(lèi)似java、C語(yǔ)言的開(kāi)發(fā)環(huán)境,將AVR單片機(jī)相關(guān)的一些寄存器參數(shù)設(shè)置等都函數(shù)化了,即使不太了解 AVR單片機(jī)的朋友也能輕松上手,設(shè)計(jì)出各種實(shí)用的電路開(kāi)發(fā)系統(tǒng),是一款價(jià)格低廉、易于開(kāi)發(fā)做應(yīng)用的電子平臺(tái)。Arduino包括硬件和軟件在內(nèi)的整個(gè)平臺(tái)是完全開(kāi)源的。該方案由于采用Arduino平臺(tái),能快速開(kāi)發(fā)出用較低成本的飛行搖桿來(lái)進(jìn)行操縱航模,體驗(yàn)真實(shí)飛行的感覺(jué)。由于接口較多,可以實(shí)現(xiàn)高達(dá) 20通道以上,能執(zhí)行各種擴(kuò)展任務(wù),且不需要攜帶電腦。
系統(tǒng)原理與架構(gòu)設(shè)計(jì)
系統(tǒng)框圖如圖1所示,分為兩大部分,分別是地面控制部分和控制執(zhí)行部分。地面控制部分是由單片機(jī)讀取飛行遙桿的數(shù)據(jù),即可獲得飛行搖桿各個(gè)通道的即時(shí)電壓,通過(guò)模式轉(zhuǎn)換后,得到各個(gè)通道的值。將上述值經(jīng)過(guò)編碼后通過(guò)無(wú)線數(shù)傳模塊發(fā)送出去。
空中指令執(zhí)行部分:
由空中無(wú)線數(shù)傳接收到信號(hào)后將指令發(fā)送到單片機(jī),單片機(jī)將指令解析,并轉(zhuǎn)換為飛控系統(tǒng)常用的PPM信號(hào),該P(yáng)PM信號(hào)可以直接驅(qū)動(dòng)飛控系統(tǒng)做出響應(yīng)動(dòng)作,從而控制無(wú)人機(jī)。
模塊原理、設(shè)計(jì)與制作
1.搖桿信號(hào)獲取原理
要得到飛行搖桿當(dāng)前的桿量,一個(gè)方法是通過(guò)搖桿的usb接口讀取,由于各個(gè)廠家的通訊協(xié)議都不兼容,有些還必須獲得授權(quán),實(shí)現(xiàn)起來(lái)比較麻煩。另一個(gè)方法是直接獲取搖桿的電位器值。實(shí)際上現(xiàn)在市面上的搖桿除了非常高端的搖桿用了霍爾傳感,大部分都采用了普通的電位器,按照可變電阻來(lái)讀取即可。本模塊采用市場(chǎng)上常見(jiàn)的賽鈦客FLY5飛行搖桿,拆開(kāi)來(lái)外殼,所有電位器都是用3P的白色連接插座和電路板連接的,XYZ三軸用來(lái)控制飛機(jī)姿態(tài)(升降、副翼和方向),油門(mén)由拉桿控制,苦力帽可以用來(lái)控制fpv攝像頭云臺(tái),還有其他的按鍵可以映射為其他通道,例如空中投擲物體,自動(dòng)回家,切換飛行模式等。
2.桿量解析處理模塊
我們采用的單片機(jī)系統(tǒng)采用了ArduinoM E G A 2 5 6 0 開(kāi)發(fā)板。該開(kāi)發(fā)板是一塊以ATmega2560為核心的微控制器開(kāi)發(fā)板,本身具有54組數(shù)字I/O其中14組可做PWM輸出),16組模數(shù)轉(zhuǎn)換輸入端,4 組串口,使用16MHz的晶振。讀取搖桿的XYZ軸的電阻值,只需將電位器的電源和地接在電調(diào)輸出的5v和地上,信號(hào)線接在Arduino板的模擬輸入口上,由于Arduino的AD讀取精度最高是10位,在程序里將電阻值映射成0到1023的數(shù)值,F(xiàn)LY5飛行搖桿的分辨率大概在800~900左右。飛行搖桿的電位器是線性的,反應(yīng)較為靈敏的。實(shí)際測(cè)試中搖桿回中后,和打到最大和最小的地方,數(shù)據(jù)會(huì)有一些波動(dòng)和噪點(diǎn),采用卡爾曼濾波算法進(jìn)行處理,可以獲得平滑的曲線。
3.無(wú)線收發(fā)模塊
無(wú)線數(shù)傳模塊采用了一對(duì)X b e e P R O900HP無(wú)線收發(fā)模塊,該模塊功率為250mW.它們分別用來(lái)連接地面控制板單片機(jī)和連接飛行控制的單片機(jī)。配備原裝天線,最遠(yuǎn)可以達(dá)到10KM,比傳統(tǒng)遙控器距離極大的增加。標(biāo)準(zhǔn)的串口TTL接口,將RX和TX分別接在單片機(jī)板上的TX和RX端口上即可。波特率設(shè)置為115200,數(shù)傳是半雙工的,通訊增加CRC校驗(yàn),防止數(shù)據(jù)丟包和被干擾篡改。
本文提供的解決方案,成本較低,開(kāi)發(fā)方便,易于實(shí)現(xiàn)。不足之處是單向傳輸雖然延時(shí)低,但是無(wú)法實(shí)時(shí)返回飛行器的各種數(shù)據(jù)。為解決該問(wèn)題,只能使用2對(duì)無(wú)線模塊,或采用MIMO天線能實(shí)現(xiàn)全雙工的無(wú)線模塊,才能解決。后期將會(huì)繼續(xù)研究,以實(shí)現(xiàn)低成本的雙向傳輸,并實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)返回的OSD和低延時(shí)控制。
無(wú)人機(jī)陀螺儀主控芯片STM32應(yīng)用#e#
TOP4 無(wú)人機(jī)陀螺儀主控芯片STM32應(yīng)用詳解
在無(wú)人機(jī)系統(tǒng)與地面站通信過(guò)程中,機(jī)載陀螺儀姿態(tài)數(shù)據(jù)的高速產(chǎn)生與外部相對(duì)低速的無(wú)線數(shù)據(jù)模塊傳輸?shù)拿苋找嫱怀觯瑖?yán)重制約著無(wú)人機(jī)的發(fā)展。針對(duì)這一問(wèn)題,采用FPGAFIFO作為高速數(shù)據(jù)緩沖,提出一種基于FPGA內(nèi)建FIFO的無(wú)人機(jī)陀螺儀前級(jí)通信接口。通過(guò)高速異步FIFO緩沖,將無(wú)人機(jī)陀螺儀姿態(tài)數(shù)據(jù)經(jīng)由FPGA準(zhǔn)確無(wú)誤地發(fā)送給地面站,顯著提高數(shù)據(jù)傳輸質(zhì)量,實(shí)現(xiàn)了高速芯片與低速設(shè)備之間的通信。整個(gè)設(shè)計(jì)在實(shí)際應(yīng)用中效果良好,數(shù)據(jù)穩(wěn)定可靠,滿足了低誤碼率與高穩(wěn)定性的要求,以及無(wú)人機(jī)與地面站高速通信的需求,有著廣闊的市場(chǎng)應(yīng)用前景。
無(wú)人機(jī)系統(tǒng)對(duì)于地面站發(fā)送的控制信號(hào)以及飛行器傳回的姿態(tài)數(shù)據(jù)有著極高的實(shí)時(shí)性、可靠性與穩(wěn)定性要求,這對(duì)無(wú)人機(jī)通信系統(tǒng)設(shè)計(jì)提出了新的挑戰(zhàn)。對(duì)于采用 ARM作為微處理器的無(wú)人機(jī)系統(tǒng)來(lái)說(shuō),系統(tǒng)往往需要協(xié)調(diào)基于ARM處理器的高速陀螺儀模塊與相對(duì)低速的外部無(wú)線數(shù)據(jù)傳輸模塊間的工作。在通信高穩(wěn)定性與低誤碼率的要求下,處理器不得不花時(shí)間運(yùn)行空操作來(lái)等待外部相對(duì)低速的傳輸模塊完成一幀數(shù)據(jù)的收/發(fā)。由于等待所浪費(fèi)的處理器運(yùn)算周期無(wú)形中降低了整個(gè)飛控系統(tǒng)的實(shí)時(shí)性,進(jìn)而帶來(lái)許多潛在的不穩(wěn)定因素。本設(shè)計(jì)結(jié)合無(wú)人機(jī)系統(tǒng)發(fā)展需求,采用FPGA FIFO作為高速數(shù)據(jù)緩沖,提出一種基于FPGA內(nèi)建FIFO的無(wú)人機(jī)陀螺儀前級(jí)通信接口。通過(guò)高速異步FIFO緩沖,將無(wú)人機(jī)陀螺儀姿態(tài)數(shù)據(jù)經(jīng)由 FPGA準(zhǔn)確無(wú)誤地發(fā)送給地面站,保證了傳輸質(zhì)量,架起了高速芯片與低速設(shè)備之間溝通的橋梁。
FPGA內(nèi)建FIFO的基本工作原理
FIFO即先進(jìn)先出隊(duì)列,采用環(huán)形存儲(chǔ)電路結(jié)構(gòu),是一種傳統(tǒng)的按序執(zhí)行方法。先進(jìn)入的指令先完成并引退,隨后才執(zhí)行第二條指令,是一種先進(jìn)先出的數(shù)據(jù)緩存器。根據(jù)FIFO的讀寫(xiě)時(shí)鐘頻率是否相同,可將FIFO分為同步FIFO與異步FIFO。FIFO的應(yīng)用可以很好地協(xié)調(diào)不同時(shí)鐘、不同數(shù)據(jù)寬度數(shù)據(jù)的通信,滿足高/低速時(shí)鐘頻率要求。與普通存儲(chǔ)器相比,F(xiàn)IFO沒(méi)有外部讀寫(xiě)地址線,使用方便。
采用FPGA異步FIFO連接基于ARM處理器的高速無(wú)人機(jī)陀螺儀模塊與相對(duì)低速的無(wú)線數(shù)據(jù)傳輸外設(shè)。從硬件的觀點(diǎn)來(lái)看,F(xiàn)IFO實(shí)質(zhì)上就是一塊數(shù)據(jù)內(nèi)存。異步FIFO采用2個(gè)時(shí)鐘信號(hào)控制其讀寫(xiě)操作,分別為寫(xiě)時(shí)鐘(wrclk)和讀時(shí)鐘(rdclk)。一個(gè)用來(lái)寫(xiě)數(shù)據(jù),即將數(shù)據(jù)存入FIFO;另一個(gè)用來(lái)讀數(shù)據(jù),即將數(shù)據(jù)從FIFO中取出。與 FIFO操作相關(guān)的有兩個(gè)指針:寫(xiě)指針指向要寫(xiě)的內(nèi)存部分;讀指針指向要讀的內(nèi)存部分。FIFO控制器通過(guò)外部的讀寫(xiě)信號(hào)控制這兩個(gè)指針移動(dòng),并由此產(chǎn)生 FIFO空信號(hào)或滿信號(hào)。讀寫(xiě)時(shí)鐘相互獨(dú)立設(shè)計(jì),有效地保證了FIFO兩端數(shù)據(jù)的異步通信。
基于ARM的無(wú)人機(jī)陀螺儀接口結(jié)構(gòu)
由于機(jī)載燃油和電能儲(chǔ)備的制約,無(wú)人機(jī)載設(shè)備要求小巧輕便,能效比高,因此對(duì)芯片的選型及電路結(jié)構(gòu)提出了較高的要求。綜合穩(wěn)定性、數(shù)據(jù)精度、工作溫度、封裝體積以及能耗等各方面因素,對(duì)無(wú)人機(jī)陀螺儀傳感器經(jīng)行嚴(yán)格篩選,確定了所示的陀螺儀方案。無(wú)人機(jī)陀螺儀的主控芯片選用ARM 32 bit CortexTM M3內(nèi)核的STM32F103T8處理器。其內(nèi)建64 KB的閃存存儲(chǔ)器和20 KB的運(yùn)行內(nèi)存,以及7通道的DMA、7個(gè)定時(shí)器、2個(gè)UART端口等。通過(guò)板載的8 MHz晶體和STM32內(nèi)部的PLL,控制器可以運(yùn)行在72 MHz的主頻上,為姿態(tài)解算提供強(qiáng)大的硬件支持。
三軸加速度與三軸角速度傳感器采用Invensense公司的MPU-6050單芯片方案,此芯片為全球首例整合性6軸運(yùn)動(dòng)處理組件,相比其他多芯片實(shí)現(xiàn)方案,免除了整合陀螺儀與加速度器軸間差的問(wèn)題,大大減少了封裝空間。三軸磁力計(jì)采用Honeywell公司的HMC5883L芯片,此芯片內(nèi)部采用先進(jìn)的高分辨率HMC188X系列磁阻傳感器與行業(yè)領(lǐng)先的各向異性磁阻技術(shù)(AMR),具有軸向高靈敏度和線性高精度的特點(diǎn),測(cè)量范圍從毫高斯到8高斯,穩(wěn)定可靠。氣壓傳感器采用博世公司的BMP180芯片,該芯片性能卓越,絕對(duì)精度可以達(dá)到0.03 hpa,并且功耗極低。傳感器采用強(qiáng)大的7 pin陶瓷無(wú)引線芯片承載(LCC)超薄封裝,安裝使用方便。各傳感器與ARM處理器采用I2C總線連接,示意圖如圖3所示。
陀螺儀與FIFO及FPGA的連接
處理器采集各傳感器信號(hào),在ARM內(nèi)部進(jìn)行姿態(tài)解算,進(jìn)而得到俯仰角、橫滾角、航向角、氣壓、高度和溫度信息。為了及時(shí)將解算得到的數(shù)據(jù)發(fā)送回地面站,處理器控制寫(xiě)請(qǐng)求信號(hào)wrreq和寫(xiě)時(shí)鐘wrclk將這些數(shù)據(jù)高速寫(xiě)入FIFO,然后回到飛行控制程序,進(jìn)行下一周期的姿態(tài)解算。FIFO在數(shù)據(jù)寫(xiě)滿后,寫(xiě)滿標(biāo)志位 wrfull會(huì)置高電平,ARM處理器通過(guò)檢測(cè)寫(xiě)滿標(biāo)志位的狀態(tài)來(lái)判斷是否繼續(xù)寫(xiě)入數(shù)據(jù)。與此同時(shí),在FPGA中通過(guò)檢測(cè)所讀取FIFO是否為空標(biāo)志位 rdempty來(lái)判斷是否繼續(xù)讀取數(shù)據(jù)。讀空標(biāo)志位為低電平代表FIFO中有數(shù)據(jù),可以讀取,則配合讀請(qǐng)求信號(hào)rdreq和讀時(shí)鐘rdclk及時(shí)讀取數(shù)據(jù),直到將數(shù)據(jù)全部讀出,標(biāo)志位變?yōu)楦唠娖?,此時(shí)FIFO中已經(jīng)沒(méi)有數(shù)據(jù)?;贏RM的陀螺儀與FIFO及FPGA的連接如圖4所示。
TOP5盤(pán)點(diǎn)無(wú)人機(jī)飛控大腦與MEMS傳感器
制造一個(gè)大腦并不容易。大黃蜂的大腦中有100多萬(wàn)個(gè)相互聯(lián)系的神經(jīng)元細(xì)胞,幫助它完成各種意識(shí)活動(dòng)。2014年年末,一個(gè)科學(xué)家團(tuán)隊(duì)曾給一個(gè)有輪子的樂(lè)高機(jī)器人安裝過(guò)一個(gè)數(shù)字蠕蟲(chóng)大腦,但是這樣的大腦只有302個(gè)神經(jīng)元細(xì)胞。到目前為止,“綠色大腦計(jì)劃”團(tuán)隊(duì)只重建了黃蜂大腦中與視覺(jué)有關(guān)的部分。但是這樣的成果已經(jīng)非常令人震驚了。無(wú)人機(jī)利用視頻攝像頭和人造大腦軟件沿著走廊飛行,飛行模式就和經(jīng)過(guò)訓(xùn)練完成同樣任務(wù)的大黃蜂一模一樣?,F(xiàn)在,這個(gè)虛擬大腦還只能追蹤位置的移動(dòng),而無(wú)法識(shí)別顏色或形狀?!熬G色大腦計(jì)劃”的科學(xué)家希望,過(guò)一段時(shí)間能夠用數(shù)字重建完整的大黃蜂大腦,并制造出第一臺(tái)像大黃蜂一樣自動(dòng)行動(dòng)的機(jī)器人。但是現(xiàn)在,他們的重點(diǎn)還放在重建大黃蜂的視覺(jué)系統(tǒng)和嗅覺(jué)系統(tǒng)。
飛控的大腦:微控制器
在四軸飛行器的飛控主板上,需要用到的芯片并不多。目前的玩具級(jí)飛行器還只是簡(jiǎn)單地在空中飛行或停留,只要能夠接收到遙控器發(fā)送過(guò)來(lái)的指令,控制四個(gè)馬達(dá)帶動(dòng)槳翼,基本上就可以實(shí)現(xiàn)飛行或懸停的功能。意法半導(dǎo)體高級(jí)市場(chǎng)工程師介紹,無(wú)人機(jī)/多軸飛行器主要部件包括飛行控制以及遙控器兩部分。其中飛行控制包括電調(diào)/馬達(dá)控制、飛機(jī)姿態(tài)控制以及云臺(tái)控制等。目前主流的電調(diào)控制方式主要分成BLDC方波控制以及FOC正弦波控制。
新唐的 MCU負(fù)責(zé)人表示: 多軸飛行器由遙控, 飛控,動(dòng)力系統(tǒng), 航拍等不同模塊構(gòu)成, 根據(jù)不同等級(jí)產(chǎn)品的需求,會(huì)采用到不同CPU內(nèi)核。例如小四軸的飛行主控, 因功能單純, 體積小, 必須同時(shí)整合遙控接收, 飛行控制及動(dòng)力驅(qū)動(dòng)功能;中高階多軸飛行器則采用內(nèi)建 DSP 及浮點(diǎn)運(yùn)算單元的, 負(fù)責(zé)飛行主控功能,驅(qū)動(dòng)無(wú)刷電機(jī)的電調(diào)(ESC)板則采用MINI5系列設(shè)計(jì)。低階遙控器使用 SOP20 封裝的4T 8051 N79E814;中高階遙控器則采用Cortex-M0 M051系列。另外, 內(nèi)建ARM9及H.264視頻邊譯碼器的N329系列SOC則應(yīng)用于2.4G及5.8G的航拍系統(tǒng)。在飛控主板上,目前控制和處理用得最多的還是MCU而不是CPU。由于對(duì)于飛行控制方面主要都是浮點(diǎn)運(yùn)算,簡(jiǎn)單的ARM Cortex-M4內(nèi)核32位MCU都可以很好的滿足。有的傳感器MEMS芯片中已經(jīng)集成了DSP,與之搭配的話,更加簡(jiǎn)單的8位單片機(jī)也可以做到。
高通和英特爾推的飛控主芯片
CES上我們看到了高通和英特爾展示了功能更為豐富的多軸飛行器,他們采用了比微控制器(MCU)更為強(qiáng)大的CPU或是ARM Cortex-A系列處理器作為飛控主芯片。例如,高通CES上展示的Snapdragon Cargo無(wú)人機(jī)是基于高通Snapdragon芯片開(kāi)發(fā)出來(lái)的飛行控制器,它有無(wú)線通信、傳感器集成和空間定位等功能。Intel CEO Brian Krzanich也親自在CES上演示了他們的無(wú)人機(jī)。這款無(wú)人機(jī)采用了“RealSense”技術(shù),能夠建起3D地圖和感知周?chē)h(huán)境,它可以像一只蝙蝠一樣飛行,能主動(dòng)避免障礙物。英特爾的無(wú)人機(jī)是與一家德國(guó)工業(yè)無(wú)人機(jī)廠商Ascending Technologies合作開(kāi)發(fā),內(nèi)置了高達(dá)6個(gè)英特爾的“RealSense”3D攝像頭,以及采用了四核的英特爾凌動(dòng)(Atom)處理器的PCI- express定制卡,來(lái)處理距離遠(yuǎn)近與傳感器的實(shí)時(shí)信息,以及如何避免近距離的障礙物。這兩家公司在CES展示如此強(qiáng)大功能的無(wú)人機(jī),一是看好無(wú)人機(jī)的市場(chǎng),二是美國(guó)即將推出相關(guān)法規(guī),對(duì)無(wú)人機(jī)的飛行將有嚴(yán)格的管控。
此外,活躍在在機(jī)器人市場(chǎng)的歐洲處理器廠商XMOS也表示已經(jīng)進(jìn)入到無(wú)人機(jī)領(lǐng)域。XMOS公司市場(chǎng)營(yíng)銷(xiāo)和業(yè)務(wù)拓展副總裁Paul Neil博士表示,XMOS的xCORE多核微控制器系列已被一些無(wú)人機(jī)/多軸飛行器的OEM客戶(hù)采用。在這些系統(tǒng)中,XMOS多核微控制器既用于飛行控制也用于MCU內(nèi)部通信。
Paul Neil說(shuō):xCORE多核微控制器擁有數(shù)量在8到32個(gè)之間的、頻率高達(dá)500MHz 的32位RISC內(nèi)核。xCORE器件也帶有Hardware Response I/O接口,它們可提供卓越的硬件實(shí)時(shí)I/O性能,同時(shí)伴隨很低的延遲。“這種多核解決方案支持完全獨(dú)立地執(zhí)行系統(tǒng)控制與通信任務(wù),不產(chǎn)生任何實(shí)時(shí)操作系統(tǒng)(RTOS)開(kāi)銷(xiāo)。xCORE微控制器的硬件實(shí)時(shí)性能使得我們的客戶(hù)能夠?qū)崿F(xiàn)非常精確的控制算法,同時(shí)在系統(tǒng)內(nèi)無(wú)抖動(dòng)。xCORE多核微控制器的這些優(yōu)點(diǎn),正是吸引諸如無(wú)人機(jī)/多軸飛行器這樣的高可靠性、高實(shí)時(shí)性應(yīng)用用戶(hù)的關(guān)鍵之處?!?/p>
多軸飛行器需要用到四至六顆無(wú)刷電機(jī)(馬達(dá)),用來(lái)驅(qū)動(dòng)無(wú)人機(jī)的旋翼。而馬達(dá)驅(qū)動(dòng)控制器就是用來(lái)控制無(wú)人機(jī)的速度與方向。原則上一顆馬達(dá)需要配置一顆8位MCU來(lái)做控制,但也有一顆MCU控制多個(gè)BLDC馬達(dá)的方案。
多軸無(wú)人機(jī)的MEMS傳感
某無(wú)人機(jī)方案商總經(jīng)理認(rèn)為,目前業(yè)內(nèi)的玩具級(jí)飛行器,雖然大部分從三軸升級(jí)到了六軸MEMS,但通常采用的都是消費(fèi)類(lèi)產(chǎn)品如平板或手機(jī)上較常用的價(jià)格敏感型型號(hào)。在專(zhuān)業(yè)航拍以及專(zhuān)為航模發(fā)燒友開(kāi)發(fā)的中高端無(wú)人機(jī)上,則會(huì)用到質(zhì)量更為價(jià)格更高的傳感器,以保障無(wú)人機(jī)更為穩(wěn)定、安全的飛行。這些 MEMS傳感器主要用來(lái)實(shí)現(xiàn)飛行器的平穩(wěn)控制和輔助導(dǎo)航。飛行器之所以能懸停,可以做航拍,是因?yàn)镸EMS傳感器可以檢測(cè)飛行器在飛行過(guò)程中的俯仰角和滾轉(zhuǎn)角變化,在檢測(cè)到角度變化后,就可以控制電機(jī)向相反的方向轉(zhuǎn)動(dòng),進(jìn)而達(dá)到穩(wěn)定的效果。這是一個(gè)典型的閉環(huán)控制系統(tǒng)。
ADI亞太區(qū)微機(jī)電產(chǎn)品市場(chǎng)和應(yīng)用經(jīng)理表示,ADI產(chǎn)品主要的優(yōu)勢(shì)就是在各種惡劣條件下,均可獲得高精度的輸出。以陀螺儀為例,它的理想輸出是只響應(yīng)角速度變化,但實(shí)際上受設(shè)計(jì)和工藝的限制,陀螺對(duì)加速度也是敏感的,就是我們?cè)谕勇輧x數(shù)據(jù)手冊(cè)上常見(jiàn)的deg/sec/g的指標(biāo)。對(duì)于多軸飛行器的應(yīng)用來(lái)說(shuō),這個(gè)指標(biāo)尤為重要,因?yàn)轱w行器中的馬達(dá)一般會(huì)帶來(lái)較強(qiáng)烈的振動(dòng),一旦減震控制不好,就會(huì)在飛行過(guò)程中產(chǎn)生很大的加速度,那勢(shì)必會(huì)帶來(lái)陀螺輸出的變化,進(jìn)而引起角度變化,馬達(dá)就會(huì)誤動(dòng)作,最后給終端用戶(hù)的直觀感覺(jué)就是飛行器并不平穩(wěn)。
除此之外,在某些情況下,如果飛行器突然轉(zhuǎn)彎,可能會(huì)造成輸入轉(zhuǎn)速超過(guò)陀螺儀的測(cè)試量程,理想情況下,陀螺儀的輸出應(yīng)該是飽和輸出,待轉(zhuǎn)速恢復(fù)到陀螺儀量程范圍后,陀螺儀再正確反應(yīng)實(shí)時(shí)的角速度變化,但有些陀螺儀確不是這樣,一旦輸入超過(guò)量程,陀螺便會(huì)產(chǎn)生震蕩輸出,給出完全錯(cuò)誤的角速度。還有某些情況下,飛行器會(huì)受到較大的加速度沖擊,理想情況陀螺儀要盡量抑制這種沖擊,ADI的陀螺儀在設(shè)計(jì)的時(shí)候,也充分考慮到這種情況,利用雙核和四核的機(jī)械結(jié)構(gòu),采用差分輸出的原理來(lái)抑制這種“共?!钡臎_擊,準(zhǔn)確測(cè)量“差?!钡慕撬俣茸兓5承┩勇輧x在這種情況下會(huì)產(chǎn)生非常大錯(cuò)誤輸出,甚至是產(chǎn)生震蕩輸出?!皩?duì)于飛行器來(lái)說(shuō),最重要的一點(diǎn)就是安全,無(wú)論它的硬件設(shè)計(jì)還是軟件設(shè)計(jì),都要首先保證安全,而后才是極致的用戶(hù)體驗(yàn)。”
隨著無(wú)人機(jī)的功能不斷增加,GPS傳感器、紅外傳感器、氣壓傳感器、超聲波傳感器越來(lái)越多地被用到無(wú)人機(jī)上。方案商已經(jīng)在利用紅外和超聲波傳感器來(lái)開(kāi)發(fā)出可自動(dòng)避撞的無(wú)人機(jī),以滿足將來(lái)相關(guān)法規(guī)的要求。集成了GPS傳感器的無(wú)人機(jī)則可以實(shí)現(xiàn)一鍵返航功能,防止無(wú)人機(jī)飛行丟失。而內(nèi)置了GPS功能的無(wú)人機(jī),可以在軟件中設(shè)置接近機(jī)場(chǎng)或航空限制的敏感地點(diǎn),不讓飛機(jī)起飛。
TOP6 無(wú)人機(jī)系統(tǒng)模塊開(kāi)發(fā)設(shè)計(jì)與仿真
在開(kāi)發(fā)的早期階段,開(kāi)發(fā)一個(gè)硬件在環(huán)(HIL)測(cè)試環(huán)境來(lái)測(cè)試無(wú)人機(jī)GNC解決方案。HIL測(cè)試環(huán)境是軟件仿真和飛機(jī)實(shí)驗(yàn)的一個(gè)中間步驟,對(duì)于無(wú)人機(jī)GNC軟件的開(kāi)發(fā)過(guò)程非常關(guān)鍵。通過(guò)HIL環(huán)境,工程師可以在一個(gè)可控的仿真環(huán)境中對(duì)無(wú)人機(jī)軟件進(jìn)行測(cè)試。同時(shí),它也能加速設(shè)計(jì),縮短開(kāi)發(fā)周期,通過(guò)HIL環(huán)境,工程師可以發(fā)覺(jué)軟件仿真(主要是同步和定時(shí))中沒(méi)有出現(xiàn)的問(wèn)題,從而避免現(xiàn)場(chǎng)試驗(yàn)的故障,并增加無(wú)人機(jī)團(tuán)隊(duì)的安全性。開(kāi)發(fā)了一個(gè)通用的 HIL平臺(tái)來(lái)設(shè)計(jì)驗(yàn)證控制和導(dǎo)航算法。這個(gè)HIL測(cè)試環(huán)境完全集成在一個(gè)基于模型的設(shè)計(jì)開(kāi)發(fā)周期中(見(jiàn)圖1)。
圖1 : HWIL測(cè)試環(huán)境示意圖
基于模型的開(kāi)發(fā)
首先我們?cè)O(shè)計(jì)編改了無(wú)人機(jī)平臺(tái),將其用于仿真,并將控制器和算法部署至硬件中。根據(jù)基于模型的設(shè)計(jì)理念來(lái)完成這個(gè)任務(wù)。對(duì)于系統(tǒng)設(shè)計(jì)和仿真來(lái)說(shuō)這是一個(gè)可靠方便的方法。使用代碼自動(dòng)生成工具可以使我們減少設(shè)計(jì)時(shí)間,輕松完成對(duì)于測(cè)試架構(gòu)的重復(fù)利用,以及快速系統(tǒng)原型,從而形成一個(gè)連續(xù)的確認(rèn)和驗(yàn)證過(guò)程。
構(gòu)架的目的包括:在不同的硬件平臺(tái)上不用任何改變即可對(duì)模型重復(fù)利用;對(duì)設(shè)計(jì)測(cè)試套件模型進(jìn)行重復(fù)使用以驗(yàn)證目標(biāo)系統(tǒng);將透明模型完全集成到目標(biāo)硬件中,并創(chuàng)建一個(gè)系統(tǒng)的,快速的流程,將自動(dòng)生成的代碼集成到目標(biāo)硬件,從而使得控制工程師無(wú)需軟件工程師的參與,即可以快速測(cè)試模型(見(jiàn)圖2)。對(duì)于這個(gè)項(xiàng)目,使用Simulink?公司的MathWorks軟件(我們還使用了Esterel Technologies公司的SCADE套件)開(kāi)發(fā)了模型任務(wù),并使用MathWorks和Real-Time Workshop?公司的軟件實(shí)現(xiàn)自動(dòng)編碼。需要兩次不同的編改:在無(wú)人機(jī)中進(jìn)行測(cè)試及執(zhí)行的算法是由ANSI C代碼編寫(xiě)的,仿真無(wú)人機(jī)動(dòng)態(tài)行為的數(shù)學(xué)模型將通過(guò)LabVIEW仿真接口工具包轉(zhuǎn)換至NI LabVIEW軟件動(dòng)態(tài)庫(kù)中。
圖2: 基于模型的開(kāi)發(fā)流程
在最終的系統(tǒng)中,我們使用多個(gè)LabVIEW I/O模塊來(lái)仿真一些無(wú)人機(jī)航空電子和邏輯傳感器以及激勵(lì)器接口。
LabVIEW Real-Time PXI
PXI 是一個(gè)基于PC的平臺(tái),可用于測(cè)試,測(cè)量和控制,能夠在不同的接口和總線中提供高帶寬和超低的執(zhí)行延時(shí)。在這個(gè)案例中,PXI需要在一個(gè)復(fù)雜的無(wú)人機(jī)模型中運(yùn)行,該模型會(huì)在實(shí)時(shí)中以動(dòng)態(tài)庫(kù)的形式被執(zhí)行。 在系統(tǒng)中使用PXI模塊能讓我們使用無(wú)人機(jī)上完全一樣的接口進(jìn)行HIL仿真。所以,我們會(huì)以現(xiàn)場(chǎng)實(shí)驗(yàn)完全相同的配置驗(yàn)證GNC算法處理單元。這對(duì)于一些使用純仿真不足以捕捉所有硬件相關(guān)問(wèn)題(例如信號(hào)噪音,錯(cuò)誤和同步問(wèn)題)的系統(tǒng)來(lái)說(shuō)是十分重要的。通過(guò)Spirent GSS8000 GPS仿真器,我們能夠仿真并生成用戶(hù)選擇的GNSS星座衛(wèi)星所發(fā)出的相同的射頻信號(hào)。這些信號(hào)會(huì)以飛行實(shí)驗(yàn)相同的方式傳送到無(wú)人機(jī)上真實(shí)的GPS傳感器,并能仿真慣性傳感器(加速度計(jì)和回轉(zhuǎn)儀)??梢灾付ú煌那闆r,降級(jí)信號(hào),指定天線模式及模擬IMU傳感器錯(cuò)誤。
圖3:實(shí)驗(yàn)中使用的基于CB5000 RC直升機(jī)改裝而成的無(wú)人機(jī)
板載處理單元
在實(shí)時(shí)操作系統(tǒng)(QNX或VxWorks)中運(yùn)行一個(gè)PC/104單元,操作系統(tǒng)中包含了算法和控制策略,用于測(cè)試自動(dòng)代碼生成工具和集成架構(gòu)創(chuàng)建的代碼的完成。我們?cè)诂F(xiàn)場(chǎng)實(shí)驗(yàn)的真實(shí)無(wú)人機(jī)中也使用了相同的單元。我們可以使用Simulink External Mode軟件對(duì)無(wú)人機(jī)進(jìn)行調(diào)試。通過(guò)這個(gè)軟件,我們可以監(jiān)測(cè)用戶(hù)需要實(shí)時(shí)知曉的信號(hào)值。此外我們可以改變嵌入式處理單元中所執(zhí)行算法的參數(shù)。在操作中所使用的界面,與控制工程師在仿真設(shè)計(jì)算法時(shí)所使用的界面完全一樣。由此,整個(gè)測(cè)試環(huán)境完全透明,而且能以同現(xiàn)場(chǎng)測(cè)試一樣的方式進(jìn)行HIL測(cè)試,從而大幅減少開(kāi)發(fā)時(shí)間。
對(duì)比飛行遙測(cè)和使用同樣的GNC算法的HIL仿真,可以表明HIL的精準(zhǔn)性和與真實(shí)測(cè)試結(jié)果的相似性。在一架改裝過(guò)的無(wú)線電控制的直升飛機(jī)上集成了幾個(gè)傳感器(加速度計(jì),回轉(zhuǎn)儀,磁力計(jì),GPS和一個(gè)高度計(jì))和一個(gè)處理單元(見(jiàn)圖3),將其轉(zhuǎn)變成一架無(wú)人機(jī),進(jìn)行飛行測(cè)試。無(wú)人機(jī)在沒(méi)有過(guò)沖或任何一個(gè)永久誤差的情況下,達(dá)到了水平面要求的參考值(見(jiàn)圖4和圖5)。HIL仿真和真實(shí)的飛行測(cè)試結(jié)果極其一致。
圖4:北方位置對(duì)比結(jié)果
圖5: 西方位置對(duì)比結(jié)果
HIL環(huán)境非常適用于測(cè)試包含真實(shí)硬件的整個(gè)系統(tǒng)。使用NI PXI,我們?cè)趯?shí)時(shí)狀態(tài)下以低延時(shí)仿真了一個(gè)復(fù)雜的無(wú)人機(jī)模型,并完美模擬了航空設(shè)備界面。這個(gè)環(huán)境能檢測(cè)出軟件仿真中無(wú)法顯示的錯(cuò)誤,從而避免現(xiàn)場(chǎng)實(shí)驗(yàn)意外的發(fā)生。因?yàn)榭刂乒こ處熢谠O(shè)計(jì),開(kāi)發(fā)和驗(yàn)證過(guò)程中也會(huì)使用相同的可視化和調(diào)試工具,由此可以快速重復(fù)循環(huán),減少開(kāi)發(fā)時(shí)間。
評(píng)論