250 行代碼,Python「注入靈魂」,18歲高中生造了個(gè)機(jī)器人!
來(lái)源:
奇酷教育 發(fā)表于:
250 行代碼,Python「注入靈魂」,18歲高中生造了個(gè)機(jī)器人!
【導(dǎo)讀】十八歲的你在做什么?凌十七,18 歲,耗時(shí) 200 天,用樹莓派 DIY 機(jī)器人。這位 B 站 up 主爆火出圈,純手工自制塑料外殼,焊接鋼架,250 行 Python 代碼為其「注入靈魂」。18 歲的他與機(jī)器人有個(gè)不解之緣~
前段時(shí)間,22 歲的何同學(xué)用自己的畢業(yè)設(shè)計(jì)詮釋了「理工男的極致浪漫」。
將硬核畢設(shè),化為滿天繁星散落在母校上空!

只怕這還不夠硬核...
凌十七,今年 18 歲,爆肝 200 天,造了一個(gè)機(jī)器人!
是這樣的~

看似平平無(wú)奇,你可知制作這個(gè)機(jī)器人對(duì)于一個(gè) 18 歲的少年來(lái)說(shuō),卻是一項(xiàng)大工程。
?。勖钡囊凰查g,易洋千璽一閃而過(guò))
樹莓派 DIY,250 行代碼,Python「注入靈魂」
這款機(jī)器人叫跟隨機(jī)器人,化名 Devil (簡(jiǎn)稱小 D),創(chuàng)作它的靈感來(lái)自何處?
滿身都是工具箱和背包的凌十七靈機(jī)一動(dòng),「得找個(gè)人幫忙拿一下,為什么是個(gè)人呢?」

跟隨機(jī)器人(裝貨機(jī)器人)構(gòu)想就出來(lái)了。
鋼結(jié)構(gòu)和塑料外殼設(shè)計(jì),能跟隨,能跑,能裝東西,能拉東西
關(guān)鍵,還能坐...

首先是建模,模型的規(guī)??涨皦延^,凌十七表示和以前做的都不在一個(gè)數(shù)量級(jí)上。

小 D 機(jī)器人的傳感器選擇的是二維激光雷達(dá),有一定的抗陽(yáng)光干擾能力。
兩個(gè)雷達(dá)分別根據(jù)通信規(guī)則寫了一次解包算法。由于受陽(yáng)光干擾,白天小 D 很難在室外工作,凌十七便更換了波長(zhǎng)更短的雷達(dá),重寫解包算法。

過(guò)程中,利用樹莓派運(yùn)行跟隨程序,然后輸出結(jié)果給單片機(jī),控制無(wú)刷電機(jī)和舵機(jī)。
凌十七表示這是自己設(shè)計(jì)過(guò)規(guī)模最大的一個(gè)電路。
單機(jī)片與樹莓派的通信,選用何種電機(jī),使用單片機(jī)還是樹莓派作為主控設(shè)備,工作電壓確定等等都是他在開發(fā)過(guò)程中解決的問(wèn)題。

編程語(yǔ)言 Python 為小 D「注入靈魂」,大概統(tǒng)計(jì)的有效代碼 250 行左右。

再說(shuō)外殼設(shè)計(jì),全是凌十七一手制作拼接而成。
講真,外殼制作并沒(méi)有技術(shù)含量,而且非常無(wú)聊還浪費(fèi)時(shí)間。
在制作過(guò)程中,凌十七遇到了許多難題,比如上補(bǔ)土?xí)辛芽p,如何拼接,外殼過(guò)薄可能會(huì)無(wú)法安裝。

這是一個(gè)完全真實(shí)的機(jī)器人,有完整的跟蹤功能,背后有插座,USB 正常供電,包括能座人。
不過(guò)表情并非真實(shí),這是凌十七自己做的「特效」。
凌十七表示,「這個(gè)作品至此還沒(méi)有結(jié)束,毫不夸張地說(shuō),這是我這輩子目前開發(fā)過(guò)最難的項(xiàng)目。」
2020 年 8 月開始設(shè)計(jì),10 月份開始制作,12 月拍攝時(shí)機(jī)器人損壞。
直到 2021 年 4 月,再次重新啟動(dòng),凌十七拆除進(jìn) 1/3 的外殼,并重新制作了升級(jí)功能。
前前后后將近耗時(shí) 9 個(gè)月的時(shí)間。
但是這個(gè)項(xiàng)目仍然還有一些小遺憾:

我與機(jī)器人不解之緣
機(jī)器人對(duì)凌十七來(lái)說(shuō),是什么呢?
人生前 16 年忙于應(yīng)試,不論考?jí)目己靡磺卸己芸仗摗?/div>
高中就讀于上海師范大學(xué)附屬中學(xué)的凌十七,在這里找到了自己的方向。

高一的時(shí)候,凌十七參加了一個(gè)市機(jī)器人比賽,開始自學(xué)編程、電路、自動(dòng)控制。
「我的人生被徹徹底底地改變了。第一次發(fā)現(xiàn)能夠讓自己意志以外的事物能夠運(yùn)行的時(shí)候,何其感動(dòng),何其震撼,就感覺(jué)一切從未如此充滿意義?!?br />

機(jī)器人就是照亮凌十七人生的第一道光!
在一次領(lǐng)著機(jī)器人回家的路上,凌十七一直倒著走,時(shí)刻盯著小 D,害怕它跑歪,撞壞自己。
它是那么不成熟,就像學(xué)步的嬰兒。
當(dāng)時(shí)他就萌生了一個(gè)想法,「如果有一天人們可以放心把背后交給機(jī)器人,甚至互相引導(dǎo),攜手共進(jìn),那該有多好」。
至于為什么把機(jī)器人塑造成反面角色,是因?yàn)榱枋呤艿搅?BGM——Devil Swing 這種恐怖游戲曲子的啟發(fā)。
小 D 這個(gè)名字也是來(lái)源于 Devil 。

「坦白講,小 D 本質(zhì)上是一個(gè)影視道具?!?/div>
凌十七也很清楚,自己做的機(jī)器人遠(yuǎn)遠(yuǎn)不及市面上跟隨行李箱來(lái)的實(shí)用,也不夠有創(chuàng)意。
作為一個(gè)影視道具,只要保證它能完美的遙控,演好它需要演的戲就可以。

過(guò)去 9 個(gè)月里,凌十七為這款奇跡人更換了各種零部件,修復(fù)了無(wú)數(shù)數(shù)不盡的 bug,加入了各種算法優(yōu)化它的功能,
甚至花費(fèi)數(shù)千元打了一箱子廢品,同樣的零部件做了一遍又一遍。

「修復(fù) bug,寫代碼,看它跑起來(lái)才是我最快樂(lè)的時(shí)刻,在他的潛意識(shí)里,并沒(méi)有將其當(dāng)作一個(gè)影視道具。」
而是在很認(rèn)真的開發(fā)它,把它當(dāng)作一個(gè)真正的項(xiàng)目來(lái)對(duì)待。
One More Thing
視頻最后,多才多藝的凌十七,用鋼琴和小號(hào)獻(xiàn)上一段演奏。

他非常喜歡這首 BGM——「ROBOTICS; NOTES」,最初僅是因其單純的音樂(lè)被打動(dòng)。
最后發(fā)現(xiàn),這首音樂(lè)伴奏也是同樣在講述普通人的機(jī)器人之夢(mèng)。
正是因?yàn)檫@個(gè)項(xiàng)目,凌十七才下定決心要轉(zhuǎn)專業(yè)去學(xué) AI 和機(jī)器人。
「一個(gè)好的技術(shù),好的產(chǎn)品真的可以改變很多。我希望未來(lái)我能為社會(huì)的發(fā)展貢獻(xiàn)自己一份力。」
凌十七,告別剛剛過(guò)去的 18 年人生,即將開啟新的征程。
沒(méi)錯(cuò),是我的寶藏男孩~