電子發(fā)燒友網(wǎng)報道(文/李彎彎)近年來自動駕駛大爆發(fā),不僅僅是各大廠商紛紛入局,網(wǎng)絡(luò)上也涌現(xiàn)出一批科技達人,設(shè)計各種類型的自動駕駛自行車,自動駕駛電動車。
最近B站一位UP主發(fā)了一條視頻,說自己之前以電動汽車為原型,設(shè)計了一輛自動駕駛兩輪車,車是設(shè)計出來了,結(jié)果卻因為意外把一條腿給炸沒了。
車子的核心原理是,基于角動量守恒理論設(shè)計的。在車的內(nèi)部,有一個高速旋轉(zhuǎn)陀螺儀,速度可達到每分鐘上萬轉(zhuǎn),當物體高速旋轉(zhuǎn)的時候,它的角動量很大,旋轉(zhuǎn)的軸就會一直穩(wěn)定的指向一個方向,意思是說,想要更加穩(wěn)定,就必須轉(zhuǎn)得足夠快,以此來保證兩輪車平衡。
之所以會出現(xiàn)意外,是因為他當時把轉(zhuǎn)數(shù)調(diào)太高,導(dǎo)致內(nèi)部的陀螺儀炸開,飛出的鐵塊把腿給炸沒了。據(jù)他描述當時的場面慘不忍睹,機床上兩公分厚的鑄鐵都沒有抗住,炸了一個缺口,房屋墻壁也炸出來好多洞。
之前稚暉君設(shè)計過無人駕駛自行車,與他的自行車相比,這個以電動車為原型設(shè)計的無人駕駛兩輪車,可以載人。不過因為受傷的緣故,這位UP主說,之前設(shè)計的這個車子也就一直擱置下來,他格外提醒,大家在工作和做研究的時候,一定要注意安全。
真的是被這位UP主深深感動到,可以說是非常勵志了,在他的個性簽名寫的是“意外受傷截肢,很幸運的撿了條命,以后積極生活”,更有意思的是,他給自己設(shè)計了各種功能的假肢,果然沒有什么可以抵擋對科技創(chuàng)造的熱情。
如何設(shè)計一輛無人駕駛兩輪車
那么具體如何設(shè)計一輛兩輪無人駕駛車呢?從稚暉君視頻,可以詳細的了解到每一個設(shè)計步驟,他設(shè)計的是一輛無人駕駛自行車。
首先,與4個輪子的汽車不同,自行車是一個欠驅(qū)動系統(tǒng),不進行控制的話,不僅不能跑,還站不穩(wěn),因此這里需要一套復(fù)雜的自動控制系統(tǒng);
其次,為了把駕駛員工具人的存在性給去掉,需要給車子搭載一套傳感器組成的感知網(wǎng)絡(luò),以及一個算力足夠強大的計算芯片作為大腦;
最后,就是在前面的硬件基礎(chǔ)上開發(fā)實現(xiàn)一套巧妙的感知和控制算法,俗稱注入靈魂。
第一步,硬件改造,讓車子跑起來
稚暉君改造的自行車是一輛死飛(Fixed Gear),它結(jié)構(gòu)很簡單,沒有剎車,減速靠反向蹬車。首先是使用計算機輔助工具CAD來進行建模,一通操作之后得到一輛虛擬的自行車。
圖:用CAD建模得到的虛擬自行車
有了車體模型之后,所有的改造工作都可以在計算機上完成。
圖:在設(shè)計圖紙上改造完成的車子
稚暉君給車子安裝了兩個巨大的無刷電機,以及一個控制龍頭的舵機。傳感器方面,搭載了一個RGBD的深度相機,加速度計和陀螺儀,以及一個激光雷達。電池使用的是6S的航模動力鋰電池,續(xù)航大概有2-3個小時。主控計算模塊被安置在座椅的后方。
兩個無刷電機的作用是什么呢?自行車前后方的平衡靠的是兩個輪子,以及地面的摩擦力,而左右的平衡,在騎行的時候靠左右調(diào)節(jié)龍頭,來獲得轉(zhuǎn)向加速度,以此抵消重力的影響,而靜止狀態(tài)下怎么平衡呢,靠的是角動量守恒。
角動量守恒定律是自然界中最普遍的守恒定律之一,當系統(tǒng)中一個物體角動量發(fā)生變化的時候,就會將力矩傳遞給其他物體,中間的無刷電機,就是用于驅(qū)動的動量輪,后面的無刷電機,則是用于靠摩擦力驅(qū)動后輪,讓車子整體前后運動。
圖紙設(shè)計完之后,就是零件加工,其中一部分零件可以用3D打印制作,但由于做的東西功率比較硬核,3D打印塑料的硬度和剛性,都不太適合作為核心的結(jié)構(gòu)件,所以用于固定電機的零件,使用的是金屬來加工。湊齊改造所需的所有零件,組裝完成就是下面的樣子。
我們在設(shè)計機器人時,會將計算系統(tǒng)分為低算力、低時延、運行實時系統(tǒng)的小腦,用于控制身體,以及高算力、高時延、運行非實時操作系統(tǒng)的大腦,用于感知、思考和決策。
在這個系統(tǒng)中,小腦使用的是MCU ESP32,大腦用的是昇騰310 AI處理器,昇騰310搭載達芬奇Core,可以提供最高22TOPS的AI算力。
圖:再設(shè)計了一個載板,把兩個計算單元整合到一起
大腦和小腦通過總線相連,并在軟件上實現(xiàn)一套RPC框架,讓它們可以方便地進行通信。
小腦的框架是基于FreeRTOS,主要是實現(xiàn)傳感器的數(shù)據(jù)處理,以及電機的控制算法,簡單地劃分了三個任務(wù):閉環(huán)控制線程,電機通信線程,以及屏幕刷新線程。
大腦的軟件框架則要復(fù)雜很多,除了基于昇騰的整個AI棧之外,稚暉君還在系統(tǒng)中使用了ROS,這是機器人界常用的框架,它本質(zhì)上是一個高性能的通信中間件,后面的消息分發(fā)、業(yè)務(wù)串流、SLAM等的實現(xiàn)都是基于ROS開發(fā)的。
大腦和小腦有了之后,電路方面還有一個很重要的模塊,那就是心臟,采用的是Ctrl-FOC驅(qū)動器,這個驅(qū)動器很厲害,雖然體積很小,卻實現(xiàn)了兩路共100A的無刷電機FOC控制,同時還順便驅(qū)動了前面的60KG舵機,以及一個散熱風(fēng)扇。
圖:把結(jié)構(gòu)零件和電路全部整合起來,就完成了
第三步,算法,給機器注入靈魂
稚暉君介紹,機器人是一個復(fù)雜的系統(tǒng),設(shè)計的時候,科學(xué)的方法是首先對機器人進行理論上的分析,也就是運動學(xué)和動力學(xué)的建模,數(shù)學(xué)建模會告訴我們哪些事情是相對容易的,哪些是復(fù)雜的。
舉例來說,在這個車子的控制代碼中,有超過50個重要參數(shù)、控制周期、反饋矩陣、PID增益、濾波器截止頻率等,這些數(shù)字要全部得到合理設(shè)置,才能使系統(tǒng)進入穩(wěn)定,且快速收斂的狀態(tài)。
而一些物理參數(shù)的設(shè)置,比如說,電機功率應(yīng)該選多大?飛輪質(zhì)量應(yīng)該選多少?重心的分布怎么設(shè)置才比較合理等,也都需要有準確的數(shù)學(xué)模型來進行指導(dǎo)。
在得到模型之后,為了進一部驗證理論的準確性,一般會先在計算機中進行仿真,視頻中,稚暉君用的是一個游戲引擎Unity,在游戲引擎中構(gòu)建一個虛擬的物理環(huán)境,賦給小車真實的質(zhì)量和重力,然后將控制算法的計算結(jié)果可視化顯示出來。
驗證完成之后,還有一個sim2real的過程,就是把仿真的結(jié)果遷移到現(xiàn)實環(huán)境中,這個過程很復(fù)雜,因為現(xiàn)實中有很多的不確定性因素,很多情況下,機器人往往是在仿真中重拳出擊,然后在現(xiàn)實中唯唯諾諾,所以整個調(diào)試的過程也是異常艱辛。
這套系統(tǒng),姿態(tài)控制使用的是LQR控制器,方向控制使用的是PID,傳感器則是對加速度計和陀螺儀,數(shù)據(jù)使用二階的巴特沃斯濾波器之后,再通過卡爾曼濾波進行數(shù)據(jù)融合,最終得到車身的姿態(tài)。經(jīng)過漫長的參數(shù)整定之后,控制算法終于收斂了完美的效果,到這里,一輛成熟的自行車就完成了。
圖:一輛成熟的自行車
經(jīng)過測試,車載的姿態(tài)保持性能非常好,受到一定沖擊,或者突然增加負載,也能穩(wěn)定的保持平衡。
結(jié)合后輪電機的驅(qū)動能力,讓它走兩步也毫無壓力。至此,能動的基本目標已經(jīng)達成了。
最后引入AI,實現(xiàn)一定程度的自動駕駛。這個自行車搭載了深度相機,可以在電腦上看到,車子WIFI實時的RGB圖,再結(jié)合一些AI算法,可以實現(xiàn)避障、讓它在行駛過程中,識別各種物體,進行跟隨等功能。
除此之外,自動駕駛中的一個很重要的技術(shù),就是路徑規(guī)劃,車子搭載了激光雷達,激光雷達通過測量,激光發(fā)射到反射回來所消耗的時間,乘以光速就可以獲得目標的距離位置。
由此360度成像就能夠獲得比攝像頭更可靠的深度信息,將這些數(shù)據(jù)用于進行SLM圖與路徑規(guī)劃,最后就可以實現(xiàn)讓自行車進行自主探索環(huán)境了。
小結(jié)
稚暉君之前在設(shè)計完這輛無人駕駛自行車的時候,提到由于開發(fā)時間有限,本次項目只是實現(xiàn)了非?;A(chǔ)的自動駕駛功能功能,還有很多可以改進的地方,比如,受限于整車的功率,這套系統(tǒng)目前無法實現(xiàn)載人,如果換成電動車,就不一樣了,而如今用無人駕駛電動車載人的設(shè)計也已經(jīng)有人設(shè)計出來啦,給科技愛好者們的創(chuàng)造力點贊。
原文標題:單挑稚暉君,設(shè)計自動駕駛兩輪車,結(jié)果發(fā)生意外…這個up主超級勵志!
文章出處:【微信公眾號:電子發(fā)燒友網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
審核編輯:湯梓紅
-
自行車
+關(guān)注
關(guān)注
0文章
111瀏覽量
24620 -
無人駕駛
+關(guān)注
關(guān)注
98文章
4054瀏覽量
120448 -
自動駕駛
+關(guān)注
關(guān)注
784文章
13786瀏覽量
166399
原文標題:單挑稚暉君,設(shè)計自動駕駛兩輪車,結(jié)果發(fā)生意外…這個up主超級勵志!
文章出處:【微信號:elecfans,微信公眾號:電子發(fā)燒友網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論