麻省理工學院的工程師們已經(jīng)邁出了設計計算機芯片的第一步,該芯片使用的功率僅為大型無人駕駛計算機的一小部分,而且是為像瓶裝機一樣小的無人機量身定做的。
一隊工程師麻省理工學院已經(jīng)開發(fā)出一種設計高效計算機芯片的方法,可以使微型智能無人機離開地面。
近幾年來,工程師們致力于縮小無人機技術,制造出大黃蜂大小的飛行原型,裝上更小的傳感器和攝像頭。到目前為止,他們已經(jīng)成功地縮小了無人機的幾乎每一部分,除了整個操作的大腦-計算機芯片。
用于四分機和其他類似大小的無人機的標準計算機芯片處理來自攝像機和傳感器的大量流式數(shù)據(jù),并在飛行中將這些數(shù)據(jù)解釋為自主地指導無人機的俯仰、速度和軌跡。要做到這一點,這些計算機需要10到30瓦的能量,由電池提供,這樣就可以讓一架小得多的蜜蜂大小的無人機承受重壓。
現(xiàn)在,麻省理工學院的工程師們已經(jīng)邁出了設計計算機芯片的第一步,該芯片使用的功率僅為大型無人駕駛計算機的一小部分,而且是為像瓶裝瓶一樣小的無人機量身定做的。他們將在本周在麻省理工學院舉行的“機器人:科學與系統(tǒng)會議”上展示一種新的方法和設計,他們稱之為“導航”。
該團隊由1948年麻省理工學院航空航天副教授塞爾塔克·卡拉曼和麻省理工學院電氣工程和計算機科學系副教授維維恩斯?jié)深I導,他們開發(fā)了一種低功耗算法,并結合經(jīng)過壓縮的硬件,開發(fā)出一種專門的計算機芯片。
他們工作的主要貢獻是為芯片硬件和運行在芯片上的算法的設計提供了一種新的方法。維維恩斯?jié)烧f:“傳統(tǒng)上,一個算法是設計出來的,你把它扔給硬件人員,找出如何將算法映射到硬件?!薄暗覀儼l(fā)現(xiàn),通過設計硬件和算法,我們可以節(jié)省更多的電力。”
卡拉曼說:“我們發(fā)現(xiàn),這種機器人編程的新方法,包括同時考慮硬件和算法,是縮小機器人規(guī)模的關鍵?!?/p>
新芯片以每秒20幀的速度處理流圖像,并自動執(zhí)行指令來調(diào)整無人機在太空中的方位。流線型芯片執(zhí)行所有這些計算時,使用的功率略低于2瓦,這使它比目前的無人機嵌入式芯片效率高出數(shù)量級。
卡拉曼說,該小組的設計是朝著“最小的智能無人機,可以自己飛行”的工程邁出的第一步。他最終設想了災難反應和搜索救援任務,其中昆蟲大小的無人機在狹小的空間中飛來飛去,以檢查倒塌的結構或?qū)ふ冶焕У膫€體??ɡ€預見到在消費電子產(chǎn)品中的新用途。
他說:“想象一下,買一架裝瓶大小的無人機,它可以和你的手機集成在一起,你可以把它拿出來放進你的掌上。”“如果你把手舉高一點,它就會感覺到這一點,然后開始四處飛行,拍下你的照片?!比缓竽阍僖淮螐堥_手,它會落在你的手掌上,你可以把視頻上傳到你的手機上,并與其他人分享。“
卡曼拉和維維恩斯?jié)傻暮现呤茄芯可鷱堈龞|和蘇萊曼,以及研究科學家。盧卡卡隆
從頭到尾
目前的MiniDrone原型很小,可以安裝在一個人的指尖上,而且非常輕,只需要1瓦特的功率就能從地面起飛。他們的相機和感應器需要額外消耗半瓦特才能工作。
卡拉曼說:“缺少的是電腦-我們不能在尺寸和功率上給它們安裝?!薄拔覀冃枰獙㈦娔X小型化,使其低功耗?!?/p>
該小組很快意識到,傳統(tǒng)的芯片設計技術很可能無法產(chǎn)生足夠小的芯片,并為智能駕駛小型自主無人機提供所需的處理能力。
Sze說:“隨著晶體管變得越來越小,效率和速度都有了提高,但速度正在放緩,現(xiàn)在我們必須拿出專門的硬件來提高效率?!?/p>
研究人員決定從底層開始建立一個專門的芯片,開發(fā)處理數(shù)據(jù)的算法,同時開發(fā)硬件來進行數(shù)據(jù)處理。
調(diào)整公式
具體來說,研究人員對一種通常用于確定無人機“自我運動”或?qū)ζ湓谔罩械奈恢玫母兄默F(xiàn)有算法做了細微的改動。然后,他們在一個現(xiàn)場可編程門陣列(FPGA)上實現(xiàn)了該算法的各種版本,這是一種非常簡單的可編程芯片。為了使這一過程正規(guī)化,他們開發(fā)了一種叫做迭代分裂協(xié)同設計的方法,可以在實現(xiàn)精確性的同時減少功耗和門數(shù)的平衡。
一個典型的FPGA由數(shù)十萬個斷開的門組成,研究人員可以在期望的模式中連接這些門來創(chuàng)建專門的計算元素。通過協(xié)同設計減少門數(shù),使得團隊能夠選擇一種門數(shù)較少的FPGA芯片,從而節(jié)省了大量的電力。
卡拉曼解釋說:“如果我們不需要某種邏輯或記憶過程,我們就不使用它們,這就節(jié)省了很多能量。”
每次研究人員調(diào)整自我運動算法時,他們都會將版本映射到FPGA的門上,并將芯片連接到電路板上。然后,他們將來自標準無人機數(shù)據(jù)集的芯片數(shù)據(jù)-以前無人機上的流式圖像和加速度計測量數(shù)據(jù)的積累-提供給了其他人進行的、并提供給機器人界的實驗。
卡拉曼說:“這些實驗也是在一個運動捕捉室進行的,這樣你就能準確地知道無人機在哪里,而我們在事后使用所有這些信息?!?/p>
內(nèi)存節(jié)省
對于在FPGA芯片上實現(xiàn)的每個版本的算法,研究人員觀察了芯片在處理傳入數(shù)據(jù)時消耗的功率量,并估計了其在空間中的位置。
該團隊最有效的設計是以每秒20幀的速度處理圖像,精確估計無人機在太空中的方位,同時消耗的能量不足2瓦。
省電的部分原因是對存儲在芯片中的內(nèi)存進行了修改。Sze和她的同事發(fā)現(xiàn),他們能夠縮小算法需要處理的數(shù)據(jù)量,同時仍然取得相同的結果。因此,芯片本身能夠存儲更少的數(shù)據(jù),消耗更少的電力。
“就能量而言,記憶真的很昂貴,”Sze說?!坝捎谖覀冞M行實時計算,一旦我們收到芯片上的任何數(shù)據(jù),我們就會盡可能多地進行處理,這樣我們就可以立即扔掉它,這樣我們就可以在芯片上保留非常小的內(nèi)存,而不需要訪問片外內(nèi)存,而這要昂貴得多?!?/p>
通過這種方式,該團隊能夠在不使用片外存儲器的情況下將芯片的內(nèi)存存儲減少到2兆字節(jié),而普通的用于無人機的嵌入式計算機芯片使用的內(nèi)存只有幾千兆字節(jié)。
Sze說:“無論哪種方式,你都可以減少電源,這樣你就可以減少電池大小或延長電池壽命?!?/p>
今年夏天,該團隊將在無人機上安裝FPGA芯片,以測試其飛行性能。最終,該團隊計劃在專用集成電路(ASIC)上實現(xiàn)優(yōu)化算法,ASIC是一個更專業(yè)的硬件平臺,允許工程師直接在芯片上設計特定類型的門。
卡拉曼說:“我們認為我們可以把它降低到幾百毫瓦?!薄坝辛诉@個平臺,我們就可以進行各種優(yōu)化,這樣就可以節(jié)省大量電力。”