魚羊金磊發(fā)自凹非寺量子位報(bào)道|公眾號(hào)QbitAI果然高手在民間。誰(shuí)能料到,一輛自行車的硬核打開方式,竟是大火的自動(dòng)駕駛。踢開腳撐,金雞獨(dú)立、穩(wěn)如泰山:?jiǎn)蝹?cè)加個(gè)板磚?小場(chǎng)面:畢竟,它是連高難度“雜技姿勢(shì)”都能hold住的自行車:沒事走兩步?可
魚羊 金磊 發(fā)自 凹非寺量子位 報(bào)道 | 公眾號(hào) QbitAI
果然高手在民間。
誰(shuí)能料到,一輛自行車的硬核打開方式,竟是大火的自動(dòng)駕駛。
踢開腳撐,金雞獨(dú)立、穩(wěn)如泰山:

單側(cè)加個(gè)板磚?小場(chǎng)面:
畢竟,它是連高難度“雜技姿勢(shì)”都能hold住的自行車:
沒事走兩步?
可以有,還是會(huì)自己拐彎的那種:
避障、上路,毫無(wú)壓力:
甚至還配備了特斯拉都沒有的激光雷達(dá)。
這就是B站“野生鋼鐵俠”稚暉君耗時(shí)4個(gè)月時(shí)間(基本只是周末),打造出的全新項(xiàng)目XUAN (軒)。
短短幾天,播放量超過150W,硬核、復(fù)雜程度之高,直接看呆一眾網(wǎng)友。
來(lái)感受一下這個(gè)畫風(fēng)。
連B站老板陳睿都被吸引而來(lái):
甚至業(yè)內(nèi)人士也直呼:
任何一個(gè)部分拿出來(lái)都是一篇本科畢業(yè)論文。
還有實(shí)物,碩士畢業(yè)綽綽有余……
稚暉君到底是如何打造的這么一臺(tái)“賽博朋克”自行車?
接下來(lái),讓我們一起一探究竟(經(jīng)授權(quán))。
(你可能還很關(guān)心它的價(jià)格,別著急,我們文末揭曉答案~)
把自行車做成自動(dòng)駕駛,共分幾步?
稚暉君選擇的自行車,是大家非常熟知的死飛 (Fixed Gear)。
(沒錯(cuò),就是漂移玩家的最愛)
這種自行車的一大特點(diǎn),便是結(jié)構(gòu)簡(jiǎn)單、沒有剎車。
于是,稚暉君先對(duì)死飛進(jìn)行了一個(gè)CAD建模的工作。
建模工作完成之后,便得到了一輛虛擬自行車。
此后的所有改造工作,便可以在計(jì)算機(jī)上完成。
整體來(lái)看,XUAN的誕生一共分為三大步:
- 硬件改造:因?yàn)樽孕熊囀且粋€(gè)欠驅(qū)動(dòng)系統(tǒng),所以先要做的就是讓它站穩(wěn),然后跑起來(lái)。這一步將涉及一套復(fù)雜的自動(dòng)控制系統(tǒng)。
- 智能化:畢竟自動(dòng)駕駛嘛,“工具人”就得被抹去。因此,這一步便是搭載一整套傳感器組成的感知網(wǎng)絡(luò),以及一個(gè)算力足夠強(qiáng)大的計(jì)算芯片作大腦。
- 軟件和算法:最后一步,便是在上述的硬件基礎(chǔ)上,開發(fā)、實(shí)現(xiàn)一套感知和控制算法。稚暉君稱之為“注入靈魂”。
Step by Step,先來(lái)看下第一個(gè)大問題。
自行車怎么自己保持平衡?
在騎自行車的時(shí)候,前后方向的平衡,靠得是2個(gè)輪子的支撐和地面摩擦力。
而左右方向上,運(yùn)動(dòng)過程中靠的是龍頭的左右調(diào)節(jié),獲取轉(zhuǎn)向的加速度,以此抵消重力的影響。像這樣:
那么在靜止?fàn)顟B(tài)下呢?
稚暉君給出的思路便是——角動(dòng)量守恒。
簡(jiǎn)單來(lái)說,當(dāng)車子在重力作用下發(fā)生傾倒,就用動(dòng)量輪來(lái)產(chǎn)生一個(gè)相反力矩,抵消掉重力力矩。
具體而言,稚暉君在這輛死飛座位下方安裝了一個(gè)無(wú)刷電機(jī),目的是驅(qū)動(dòng)一個(gè)金屬的動(dòng)量輪。
而在座位后方,他也安裝了一個(gè)無(wú)刷電機(jī),這個(gè)目的則是靠摩擦力來(lái)驅(qū)動(dòng)后輪,讓自行車整體前后運(yùn)動(dòng)。
稚暉君本是想用3D打印來(lái)完成這兩個(gè)零件的加工,但礙于材料硬度和剛性不足,所以金屬材料成為了此次的首選。
(所幸,稚暉君朋友家里“有廠”,問題迎刃而解)
而后,便是快樂的組裝環(huán)節(jié):
OK,自行車的平衡問題,就此解決。
自行車的“機(jī)器大腦”
硬件框架有了,想讓自行車能跑起來(lái),甚至能認(rèn)路,下一步就是上“腦子”。
跟人類相似,機(jī)器人也分“大腦”和“小腦”。
簡(jiǎn)單來(lái)說,小腦用來(lái)控制實(shí)時(shí)行動(dòng);大腦則負(fù)責(zé)耗費(fèi)算力、高時(shí)延的感知和決策。
這一回,稚暉君給自行車上的“小腦”是ESP32。
ESP32是一種低成本、低功耗的單片機(jī)控制器,集成Wi-Fi和雙模藍(lán)牙。
基于FreeRTOS(一個(gè)開源嵌入式實(shí)時(shí)操作系統(tǒng)),稚暉君搭建了小腦的RPC通信框架,用來(lái)實(shí)現(xiàn)傳感器的數(shù)據(jù)處理,以及電機(jī)的控制算法。
“大腦”則是昇騰310。這是昇騰系列的邊緣計(jì)算芯片,基于達(dá)芬奇架構(gòu),最高能夠提供22TOPs的算力。
大腦的算法開發(fā),主要基于昇騰AI棧和ROS(機(jī)器人操作系統(tǒng))實(shí)現(xiàn)。
于是,在深度相機(jī)、激光雷達(dá)等傳感器的幫助之下,這輛自行車能夠檢測(cè)出周圍的物體,實(shí)現(xiàn)避障和跟隨:
還能夠機(jī)智地識(shí)別地形,給自己規(guī)劃路徑:
自行車的“機(jī)器心臟”
當(dāng)然啦,“成精”的自行車,不僅要有頭腦,還要有一顆強(qiáng)勁的“心臟”來(lái)驅(qū)動(dòng)它工作。
而XUAN的“心臟”來(lái)自稚暉君的另一個(gè)項(xiàng)目,Ctrl-FOC矢量控制驅(qū)動(dòng)器。
這是一個(gè)超迷你雙通道無(wú)刷電機(jī)驅(qū)動(dòng)器,單路最大驅(qū)動(dòng)電流能超過100A。
值得一提的是,稚暉君的這一FOC驅(qū)動(dòng)器有兩個(gè)版本的設(shè)計(jì)方案,其中一個(gè)版本,電路設(shè)計(jì)為上下疊板設(shè)計(jì),將邏輯單元和功率單元分開。也就是說,只需要替換掉驅(qū)動(dòng)電路,就可以匹配更大功率的電機(jī)。
具體到XUAN這個(gè)項(xiàng)目,下圖中這么大點(diǎn)的驅(qū)動(dòng)器,最終實(shí)現(xiàn)了兩路共100A的無(wú)刷電機(jī)FOC控制,還驅(qū)動(dòng)了車頭60kg扭力舵機(jī)和散熱風(fēng)扇。
最后,注入靈魂
萬(wàn)事俱備,但想要上路,至此還少了一點(diǎn)煉丹的靈魂——調(diào)參。
稚暉君表示,這輛自動(dòng)駕駛自行車的控制代碼中,有超過50個(gè)重要參數(shù),包括控制周期、反饋矩陣、PID增益、濾波器截止頻率等等。
此外,電機(jī)的功率、重心的分布等物理參數(shù),也都會(huì)對(duì)最終的效果造成影響。
稍有不慎,那自行車就不是穩(wěn)如老狗那畫風(fēng)了……
在數(shù)學(xué)建模之后,稚暉君還采用了游戲引擎Unity作為仿真環(huán)境,像正經(jīng)自動(dòng)駕駛研發(fā)那樣,先在仿真環(huán)境里讓自行車跑了個(gè)踏實(shí)。
總之,讓一輛自行車成熟起來(lái),自己上路,夠不容易的。
就有網(wǎng)友表示:
人傻了,畢業(yè)設(shè)計(jì)題目是自行車自平衡系統(tǒng)設(shè)計(jì),做到調(diào)參就不會(huì)了。
不過,受限于整車功率,目前這輛自行車還不能載人。
另外,也有網(wǎng)友提出,用動(dòng)量輪來(lái)控制平衡屬于某種意義上的作弊。對(duì)此,稚暉君回應(yīng):現(xiàn)在的龍頭傳動(dòng)結(jié)構(gòu)設(shè)計(jì)不太合理,之后會(huì)嘗試只用龍頭控制平衡。
為什么要造XUAN?
有關(guān)“棧溢出工程師”、“野生鋼鐵俠”稚暉君,想來(lái)關(guān)注B站科技區(qū)的小伙伴們已經(jīng)很熟悉了。
稚暉君本名彭志輝,2018年畢業(yè)于電子科技大學(xué),2020年通過“天才少年計(jì)劃”加入華為。
他的視頻向來(lái)以硬核著稱,比如從手畫PCB到寫C++代碼全部一人搞定的套娃小電視。
辣么這次,稚暉君又是怎么萌發(fā)了打造一輛自動(dòng)駕駛自行車的念頭的呢?
理由有些“暴力”……
騎車不小心摔了,臉剎著地……
稚暉君表示,“這事不能就這么過去了”,于是乎:
(心疼稚暉君幾秒)
當(dāng)然,稚暉君本人也在視頻中表示,其實(shí)很早就有設(shè)計(jì)這種自行車的想法。
最初是因?yàn)榭吹角迦A大學(xué)的那項(xiàng)自行車研究,可以跟隨人類,敏捷避開障礙物。
其背后的類腦芯片“天機(jī)”,也于2019年8月登上Nature封面。
好奇的小伙伴肯定會(huì)問了,二者有何區(qū)別?
量子位替你們問完了哈~
首先,是原理不太一樣。
清華的自行車模仿的是人類行為,沒有使用動(dòng)量控制,而稚暉君的“軒”則涉及到了動(dòng)量控制。
此外,在龍頭方面,稚暉君表示在改進(jìn)過后,也可以實(shí)現(xiàn)清華的控制方式(移動(dòng)過程使用龍頭平衡,靜止?fàn)顟B(tài)使用動(dòng)量平衡)。
但最核心的一個(gè)區(qū)別就是,清華打造的自行車背后,核心是類腦芯片。
對(duì)此,稚暉君表示:
他們的工作很厲害,我這個(gè)無(wú)法類比,只是受他們啟發(fā)做了個(gè)類似的應(yīng)用。
為了體現(xiàn)跟清華工作的區(qū)別,稚暉君本人還在項(xiàng)目名字上下點(diǎn)了功夫。
XUAN里的“U”,代表的意思是unNATURAL,“正經(jīng)翻譯”就是——沒上過Nature……
這個(gè)項(xiàng)目一如既往地開源了,如果你也想復(fù)刻一下……
哦對(duì)了,是時(shí)候該揭曉XUAN的造價(jià)了——據(jù)大神本人不完全統(tǒng)計(jì),超3萬(wàn)元。
不過,稚暉君也表示:
最終硬件成本來(lái)算的話應(yīng)該不到一萬(wàn),就激光雷達(dá)貴一點(diǎn),主要還是試錯(cuò)成本。
以及,劃重點(diǎn),不售賣哈~
嗶哩嗶哩
自動(dòng)駕駛自行車
小程序
視頻連接:https://www.bilibili.com/video/BV1fV411x72a
項(xiàng)目連接:https://github.com/peng-zhihui/XUAN-Bike/tree/main/Hardware/XUAN%E5%8A%A0%E5%B7%A5%E4%BB%B6
參考鏈接:[1]https://zhuanlan.zhihu.com/p/147659820[2]https://www.bilibili.com/video/BV11V41127pq
— 完 —
量子位 QbitAI · 頭條號(hào)簽約
關(guān)注我們,第一時(shí)間獲知前沿科技動(dòng)態(tài)