chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

探究FPGA與ARM的無人機陀螺儀數(shù)據(jù)接口設(shè)計

電子工程師 ? 來源:《電子技術(shù)應(yīng)用》 ? 作者:應(yīng)進;潘浩曼;代冀 ? 2021-05-05 07:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

無人機系統(tǒng)對于地面站發(fā)送的控制信號以及飛行器傳回的姿態(tài)數(shù)據(jù)有著極高的實時性、可靠性與穩(wěn)定性要求,這對無人機通信系統(tǒng)設(shè)計提出了新的挑戰(zhàn)。對于采用ARM作為微處理器的無人機系統(tǒng)來說,系統(tǒng)往往需要協(xié)調(diào)基于ARM處理器的高速陀螺儀模塊與相對低速的外部無線數(shù)據(jù)傳輸模塊間的工作。在通信高穩(wěn)定性與低誤碼率的要求下,處理器不得不花時間運行空操作來等待外部相對低速的傳輸模塊完成一幀數(shù)據(jù)的收/發(fā)。由于等待所浪費的處理器運算周期無形中降低了整個飛控系統(tǒng)的實時性,進而帶來許多潛在的不穩(wěn)定因素。

本設(shè)計結(jié)合無人機系統(tǒng)發(fā)展需求,采用FPGA FIFO[1]作為高速數(shù)據(jù)緩沖,提出一種基于FPGA內(nèi)建FIFO的無人機陀螺儀前級通信接口。通過高速異步FIFO緩沖,將無人機陀螺儀姿態(tài)數(shù)據(jù)經(jīng)由FPGA準確無誤地發(fā)送給地面站,保證了傳輸質(zhì)量,架起了高速芯片與低速設(shè)備之間溝通的橋梁。

1 FPGA內(nèi)建FIFO的基本工作原理

FIFO即先進先出隊列,采用環(huán)形存儲電路結(jié)構(gòu),是一種傳統(tǒng)的按序執(zhí)行方法。先進入的指令先完成并引退,隨后才執(zhí)行第二條指令,是一種先進先出的數(shù)據(jù)緩存器。根據(jù)FIFO的讀寫時鐘頻率是否相同,可將FIFO分為同步FIFO與異步FIFO[2]。FIFO的應(yīng)用可以很好地協(xié)調(diào)不同時鐘、不同數(shù)據(jù)寬度數(shù)據(jù)的通信,滿足高/低速時鐘頻率要求。與普通存儲器相比,F(xiàn)IFO沒有外部讀寫地址線,使用方便。

本文設(shè)計采用FPGA異步FIFO連接基于ARM處理器的高速無人機陀螺儀模塊與相對低速的無線數(shù)據(jù)傳輸外設(shè)。從硬件的觀點來看,F(xiàn)IFO實質(zhì)上就是一塊數(shù)據(jù)內(nèi)存。異步FIFO采用2個時鐘信號控制其讀寫操作,分別為寫時鐘(wrclk)和讀時鐘(rdclk)。一個用來寫數(shù)據(jù),即將數(shù)據(jù)存入FIFO;另一個用來讀數(shù)據(jù),即將數(shù)據(jù)從FIFO中取出。

與FIFO操作相關(guān)的有兩個指針:寫指針指向要寫的內(nèi)存部分;讀指針指向要讀的內(nèi)存部分。FIFO控制器通過外部的讀寫信號控制這兩個指針移動,并由此產(chǎn)生FIFO空信號或滿信號。讀寫時鐘相互獨立設(shè)計,有效地保證了FIFO兩端數(shù)據(jù)的異步通信,其模塊框圖[3]如圖1所示。其中,異步FIFO模塊共有9個端口,分別為數(shù)據(jù)輸入(datda[15..0])、寫請求(wrreq)、寫時鐘(wrclk)、緩沖器滿信號(wrful)、讀請求(rdreq)、讀時鐘(rdclk)、數(shù)據(jù)讀出(q[15..0])、緩沖器空信號(rdempty)、緩沖器清空信號(aclr)。

o4YBAGB-qluAdkbkAABjtKt8fNo853.png

2 基于ARM的無人機陀螺儀接口結(jié)構(gòu)

由于機載燃油和電能儲備的制約,無人機載設(shè)備要求小巧輕便,能效比高,因此對芯片的選型及電路結(jié)構(gòu)提出了較高的要求。綜合穩(wěn)定性、數(shù)據(jù)精度、工作溫度、封裝體積以及能耗等各方面因素,對無人機陀螺儀傳感器經(jīng)行嚴格篩選,確定了如圖2所示的陀螺儀方案。

o4YBAGB-qkSALfKbAAFlvS-izLg742.png

無人機陀螺儀的主控芯片選用ARM 32 bit CortexTM M3內(nèi)核的STM32F103T8處理器。其內(nèi)建64 KB的閃存存儲器和20 KB的運行內(nèi)存,以及7通道的DMA、7個定時器、2個UART端口等。通過板載的8 MHz晶體和STM32內(nèi)部的PLL,控制器可以運行在72 MHz的主頻上,為姿態(tài)解算[4]提供強大的硬件支持。

三軸加速度與三軸角速度傳感器采用Invensense公司的MPU-6050單芯片方案,此芯片為全球首例整合性6軸運動處理組件,相比其他多芯片實現(xiàn)方案,免除了整合陀螺儀與加速度器軸間差的問題,大大減少了封裝空間。

三軸磁力計采用Honeywell公司的HMC5883L芯片,此芯片內(nèi)部采用先進的高分辨率HMC188X系列磁阻傳感器與行業(yè)領(lǐng)先的各向異性磁阻技術(shù)(AMR),具有軸向高靈敏度和線性高精度的特點,測量范圍從毫高斯到8高斯(gauss),穩(wěn)定可靠。

氣壓傳感器采用博世公司的BMP180芯片,該芯片性能卓越,絕對精度可以達到0.03 hpa,并且功耗極低,只有3 ?滋A。傳感器采用強大的7 pin陶瓷無引線芯片承載(LCC)超薄封裝,安裝使用方便。各傳感器與ARM處理器采用I2C總線連接,示意圖如圖3所示。

o4YBAGB-qVCAXTu6AADVAvIgHuQ959.png

3 FPGA FIFO與陀螺儀的連接

結(jié)合無人機ARM陀螺儀的特點,為了適應(yīng)過程的復雜性,實現(xiàn)操作的簡便性,設(shè)計選用Altera公司的CycloneII系列芯片EP2C8Q208C8N,在QuartuesII平臺上進行Verilog代碼設(shè)計,使用Altera公司提供的FIFO IP核[5]。此方案穩(wěn)定高效,易于開發(fā)。

3.1 陀螺儀與FIFO及FPGA的連接

處理器采集各傳感器信號,在ARM內(nèi)部進行姿態(tài)解算,進而得到俯仰角、橫滾角、航向角、氣壓、高度和溫度信息。為了及時將解算得到的數(shù)據(jù)發(fā)送回地面站,處理器控制寫請求信號wrreq和寫時鐘wrclk將這些數(shù)據(jù)高速寫入FIFO,然后回到飛行控制程序,進行下一周期的姿態(tài)解算。FIFO在數(shù)據(jù)寫滿后,寫滿標志位wrfull會置高電平,ARM處理器通過檢測寫滿標志位的狀態(tài)來判斷是否繼續(xù)寫入數(shù)據(jù)。

與此同時,在FPGA中通過檢測所讀取FIFO是否為空標志位rdempty來判斷是否繼續(xù)讀取數(shù)據(jù)。讀空標志位為低電平代表FIFO中有數(shù)據(jù),可以讀取,則配合讀請求信號rdreq和讀時鐘rdclk及時讀取數(shù)據(jù),直到將數(shù)據(jù)全部讀出,標志位變?yōu)楦唠娖剑藭rFIFO中已經(jīng)沒有數(shù)據(jù)。基于ARM的陀螺儀與FIFO及FPGA的連接如圖4所示。

pIYBAGB-qdiAFEbwAACSoYjC1y4070.png

3.2 FIFO的配置與讀寫操作

針對上述ARM陀螺儀接口特點,對FIFO進行配置如下。

FIFO Width : 16 bit

FIFO Depth : 2 048 words

Synchronize reading and writing clock : YES

Asynchronous clear : YES

設(shè)計采用位寬為16 bit、深度為2 048且?guī)в型角辶愣耍?]的異步FIFO結(jié)構(gòu),其寫時序與讀時序分別如圖5、圖6所示。

1307365131699.gif

狀態(tài)機跳轉(zhuǎn)部分控制代碼如下:

always@(posedge SYSCLK or negedge RST )

begin

if(!RST)

state 《= idle;

else

case(state)

idle:

begin

data[15:0] 《= 16′d0;

wrreq 《= 1′b1;

rdreq 《= 1′b0;

aclr 《= 1′b0;

state 《= write;

end

read

if(rdempty != 1′b1 && rdreq ==1′b1)

read_start 《= 1′b1;

else

begin

read_start 《= 1′b0;

wrreq 《= 1′b1;

state 《= idle;

end

write:

if(wrfull!= 1′b1 && wrreq == 1′b1)

write_start 《= 1′b1;

else

begin

write_start 《= 1′b0;

rdreq 《= 1′b1;

state 《= read;

end

default: state 《= idle;

endcase

end

4 系統(tǒng)仿真效果

綜合運用QuartuesII[9]與ModelSim SE[10]先進仿真工具,結(jié)合FPGA內(nèi)建FIFO與基于ARM的無人機陀螺儀接口設(shè)計方法,仿真結(jié)果如圖8、圖9所示。

pIYBAGB-qfKAOxduAADDjq08Zvs974.png

o4YBAGB-qgqAGL20AAGgrt87vZo372.png

從圖8中仿真結(jié)果得知,在寫入時鐘頻率為100 MHz、寫滿標志位為低電平時,待寫入數(shù)據(jù)data在每個寫入時鐘上升沿來臨后被準確寫入FIFO的存儲區(qū);隨后在讀出時鐘頻率為5 MHz且讀空標志位為低電平的情況下,待讀出數(shù)據(jù)q在每個讀時鐘上升沿來臨后被正確讀出,系統(tǒng)讀寫數(shù)據(jù)穩(wěn)定準確,符合設(shè)計需求。

圖9為通過此通信接口讀取得到的無人機飛行姿態(tài)數(shù)據(jù),包括俯仰角、偏航角、滾轉(zhuǎn)角,以圖表形式予以顯示。數(shù)據(jù)精度與實驗結(jié)果理想,驗證了FPGA與ARM無人機陀螺儀數(shù)據(jù)接口設(shè)計方案穩(wěn)定可靠。

本文提出了基于FPGA內(nèi)建FIFO與ARM的無人機陀螺儀數(shù)據(jù)接口設(shè)計方法,解決了無人機ARM處理器與相對低速無線發(fā)送模塊直接數(shù)據(jù)傳輸時傳輸速度不匹配的難題,實現(xiàn)了ARM處理器將無人機姿態(tài)數(shù)據(jù)高速寫入FIFO后就可以立即返回、無需等待的功能,節(jié)約了處理器資源,使得無人機系統(tǒng)的可靠性與穩(wěn)定性得到大幅提升。仿真驗證表明,讀寫數(shù)據(jù)準確無誤,顯著提高了數(shù)據(jù)傳輸速度與數(shù)據(jù)質(zhì)量,證明了本方案的可行性與正確性。面對高速數(shù)據(jù)傳輸?shù)男枨?,該系統(tǒng)還可廣泛應(yīng)用于其他需要高無線數(shù)據(jù)傳輸?shù)念I(lǐng)域,有較高的理論意義和應(yīng)用價值。

參考文獻

[1] 秦鴻剛,劉京科,吳迪?;贔PGA的雙口RAM實現(xiàn)及應(yīng)用[J]。電子工程設(shè)計,2010,2(2):72-74.

[2] 夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計教程[M]。北京:北京航空航天大學出版社,2008.

[3] BAKER R J,LI H W,BOYEE D E.CMOS電路設(shè)計布局與仿真[M]。陳中建,譯。北京:機械工業(yè)出版社,2006.

[4] PAVLLOV A.CMOS SRAM circuit design and parame tric test in Nano-Scaled technologies[M].New York:Springer,2008.

[5] 單立超,謝雪松。基于FPGA的一種可變幀數(shù)字分接技術(shù)[J]。電子技術(shù)應(yīng)用,2013,32(2):27-30.

[6] 何濤?;谲浻布f(xié)同技術(shù)的FPGA測試平臺設(shè)計及測試實現(xiàn)[D]。成都:電子科技大學,2009.

[7] 徐國強,張萌?;贔PGA的高性能視頻信號采集系統(tǒng)設(shè)計與實現(xiàn)[J]。微型機與應(yīng)用,2012,31(6):72-75.

[8] BRIAN D,ANDREW S,CHAN K.RAM with configurable depth and width[P].US:6578 104.1 8.22,June 2003.

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1656

    文章

    22299

    瀏覽量

    630594
  • ARM
    ARM
    +關(guān)注

    關(guān)注

    135

    文章

    9501

    瀏覽量

    388949
  • fifo
    +關(guān)注

    關(guān)注

    3

    文章

    406

    瀏覽量

    45507
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    請問多旋翼無人機單個電機故障怎么排查問題?

    我使用的是ardupilod開源無人機,固件4.6.0版本,用的默認參數(shù)。 無人機起飛后,3號電機經(jīng)常跑滿(1950),其余1 2電機只有1700左右,導致無人機沒法正常定高。 目前已經(jīng)排查
    發(fā)表于 10-30 15:32

    陀螺儀無人機中的應(yīng)用:無人機精準飛行的關(guān)鍵保障

    順利完成各項任務(wù)的核心要素。而陀螺儀,作為決定無人機飛行姿態(tài)控制精度的關(guān)鍵部件,在其中發(fā)揮著不可替代的作用。只是在實際應(yīng)用中,無人機陀螺儀的應(yīng)用還面臨著諸多挑戰(zhàn)。 實際應(yīng)用中面臨的挑戰(zhàn)
    的頭像 發(fā)表于 10-09 10:24 ?241次閱讀
    <b class='flag-5'>陀螺儀</b>在<b class='flag-5'>無人機</b>中的應(yīng)用:<b class='flag-5'>無人機</b>精準飛行的關(guān)鍵保障

    離軸技術(shù):賦能無人機精準配送的核心芯片應(yīng)用

    傳感器,還提前畫好城市三維磁場地圖。當無人機穿越密集建筑群,靠近金屬障礙物時,傳感器立刻讓陀螺儀和螺旋槳協(xié)同工作,走出 “Z” 字形避障路線。最終,末端定位精度達 ±0.8 米,投遞成功率從 78% 升到 99%,單架無人機
    發(fā)表于 09-05 16:32

    什么是光纖陀螺儀?陀螺儀有哪些作用?

    陀螺儀是干什么用的?陀螺儀是用來感知和測量物體旋轉(zhuǎn)的一個傳感器。簡單來說,它可以幫助設(shè)備知道自己當前的角度和運動方向。通常,我們會在智能手機、無人機、VR設(shè)備等科技產(chǎn)品中看到陀螺儀的身
    的頭像 發(fā)表于 08-26 17:36 ?1675次閱讀
    什么是光纖<b class='flag-5'>陀螺儀</b>?<b class='flag-5'>陀螺儀</b>有哪些作用?

    無人機如何靠陀螺儀保持穩(wěn)定飛行?

    無人機的飛行過程中,你是否好奇它是如何保持穩(wěn)定、精準轉(zhuǎn)向甚至抵抗風力干擾的?答案就藏在它的“神經(jīng)中樞”——ER-3MG-043三軸陀螺儀中。這款高性能傳感器憑借卓越的角速度測量能力,成為無人機飛控系統(tǒng)的核心“指揮官”,讓每一次
    的頭像 發(fā)表于 08-08 16:04 ?899次閱讀
    <b class='flag-5'>無人機</b>如何靠<b class='flag-5'>陀螺儀</b>保持穩(wěn)定飛行?

    為什么三軸MEMS陀螺儀無人機飛控系統(tǒng)的核心傳感器?

    在現(xiàn)代無人機技術(shù)中,三軸MEMS陀螺儀扮演著至關(guān)重要的角色。作為飛行控制系統(tǒng)的核心傳感器,它通過實時測量飛行器的角速度變化,為穩(wěn)定飛行提供關(guān)鍵數(shù)據(jù)支持。以ER-3MG-063 MEMS陀螺儀
    的頭像 發(fā)表于 08-07 17:37 ?881次閱讀
    為什么三軸MEMS<b class='flag-5'>陀螺儀</b>是<b class='flag-5'>無人機</b>飛控系統(tǒng)的核心傳感器?

    MEMS陀螺如何成為無人機穩(wěn)定飛行的核心?

    無人機自主翱翔、靈活機動并適應(yīng)多變環(huán)境的背后,對其運動狀態(tài)——尤其是姿態(tài)——的精確感知是基石。作為飛行控制系統(tǒng)(飛控)的“內(nèi)耳”,陀螺儀實時捕捉機體繞X、Y、Z三軸的旋轉(zhuǎn)角速度。這一核心數(shù)據(jù)是飛
    的頭像 發(fā)表于 07-31 15:03 ?625次閱讀

    MEMS陀螺儀有哪些分類?

    你是否好奇,手機里的指南針、無人機穩(wěn)定的飛行姿態(tài),甚至火箭精準的導航,背后都離不開一個微型“旋轉(zhuǎn)感知器”?這就是MEMS陀螺儀!它憑借小巧身材、低廉成本和優(yōu)異性能,正在取代笨重的傳統(tǒng)陀螺儀,深入我們
    的頭像 發(fā)表于 07-21 15:58 ?598次閱讀

    **無人機飛控如何靠三軸MEMS陀螺儀實現(xiàn)穩(wěn)定飛行?**

    無人機(UAV)精密復雜的飛行控制系統(tǒng)(飛控)中,三軸MEMS陀螺儀扮演著不可或缺的“傳感神經(jīng)”角色。它的核心任務(wù),就是實時、高精度地感知飛行器在俯仰(Pitch)、滾轉(zhuǎn)(Roll)和偏航(Yaw
    的頭像 發(fā)表于 07-09 17:22 ?711次閱讀

    MEMS陀螺儀正在取代光纖陀螺儀?

    一、微型科技巨匠:MEMS陀螺儀揭秘 何謂MEMS? MEMS(微機電系統(tǒng))是融合了微電子與微機械的神奇技術(shù)。它能在指甲蓋大小的硅芯片上集成復雜的傳感器、執(zhí)行器和處理電路,實現(xiàn)微觀世界的數(shù)據(jù)感知
    的頭像 發(fā)表于 07-08 16:45 ?654次閱讀

    為什么高端無人機不會在IMU精度上妥協(xié)?

    姿態(tài)控制精度與系統(tǒng)集成度現(xiàn)已成為制約無人機性能提升的關(guān)鍵瓶頸。無人機通過IMU集成的陀螺儀與加速度計,實現(xiàn)對三維空間姿態(tài)(角速度、加速度)數(shù)據(jù)的實時測量,
    的頭像 發(fā)表于 07-07 16:16 ?433次閱讀

    適用于無人機的 IMU 有哪些要求?

    慣性測量單元(IMU)作為無人機飛行時運動感知的核心部件,它通過整合陀螺儀、加速度計,有時還包括磁力計、氣壓計等多種傳感器的數(shù)據(jù),全面掌握無人機的運動狀態(tài)。這些信息對于飛行控制、姿態(tài)穩(wěn)
    的頭像 發(fā)表于 07-04 11:33 ?1022次閱讀
    適用于<b class='flag-5'>無人機</b>的 IMU 有哪些要求?

    MEMS陀螺儀如何成為無人機精準飛行的核心引擎?

    MEMS陀螺儀如何成為無人機精準飛行的核心引擎 ? 在無人機技術(shù)日新月異的今天,實現(xiàn)卓越的自主飛行能力、完成復雜機動任務(wù)以及適應(yīng)多變環(huán)境,其基石在于對飛行姿態(tài)的 精確感知 。作為飛行控制系統(tǒng)(飛
    的頭像 發(fā)表于 07-04 10:37 ?549次閱讀

    振動陀螺儀傳感器的工作原理

    陀螺儀傳感器,也稱為角速率傳感器或角速度傳感器,是一種感測角速度的設(shè)備。陀螺儀傳感器種類繁多,比較常見的有機械陀螺儀,光學陀螺儀,流體陀螺儀
    的頭像 發(fā)表于 06-16 16:29 ?1029次閱讀
    振動<b class='flag-5'>陀螺儀</b>傳感器的工作原理

    MEMS陀螺儀無人機中扮演的角色有多重要?

    無人機行業(yè)迅猛發(fā)展的當下,隨著功能的不斷拓展,機體掛載部分的產(chǎn)品分類日益豐富。當無人機執(zhí)行空中探測與追蹤任務(wù)時,需配備不同類型的“吊艙”,而這些“吊艙”會對無人機的轉(zhuǎn)彎、翻滾及穩(wěn)定飛行等性能產(chǎn)生一定影響。不過,借助
    的頭像 發(fā)表于 01-08 11:06 ?1445次閱讀
    MEMS<b class='flag-5'>陀螺儀</b>在<b class='flag-5'>無人機</b>中扮演的角色有多重要?