大家還記得幾個月前火爆全網的自動駕駛自行車嗎?可謂是火出圈了!
沒錯,今天的主角還是那位華為天才少年-“稚晖君”,距離稚晖君上一次發視頻,還是在四個月前,正如稚晖君本人所說,“稚晖君鴿的越久,說明事情越大!”
這次他帶來的項目其實之前早有暗示,他希望打造一台屬于自己的機械臂,那麼這次他帶來的作品就是他完全自己開發設計的機械臂,命名為 Dummy。
先看一張整體圖:
這個配色和鋼鐵俠的經典紅色很相似了,雖然稚晖君一直以野生鋼鐵俠自稱,但是呢,他自己對這個配色的解釋是,野生鋼鐵俠的作品如果要有配色的話,那就是中國紅!愛國情懷拉滿!
說完外觀,我們直接進入主題吧,首先我們來看看細節
我們先從機械結構設計說起,結構設計中首先需要解決的是精度問題,在機器人的硬件設計中,我們常說機器人的三大核心部件,包括:電機、減速器、驅動器
真正的工業機器人中使用的是無刷伺服電機,其不管是在動态響應、力矩保持、精度等各方面都是特别優秀的,但是缺點是在其驅動系統各方面都特别複雜,不适合用在本次這樣及其緊湊的集成結構中,最後稚晖君選用了步進電機
步進電機精度也是比較高的,缺點在于高轉速下,力矩比較小,所以為了解決力矩的問題,我們一般都會給步進電機配備減速器,所謂減速器,就是類似汽車的變速箱,本次使用的是工業機械臂經常使用的諧波減速器
電機和減速器确定了,最後就是驅動器了,同樣為了保證精度以及體積的最小化,稚晖君為此設計了一體閉環驅動器
▍結構設計驅動方案确定後,接下來就是結構設計了,稚晖君為了此次項目設計了150多個版本,整體的風格為結構緊湊,且具有科幻風,一共使用了6個步進電機和6個諧波減速器,同時為了保證機身強度和精度,機身的主題采用鋁CNC加工
而裝飾的組件采用3D打印制作
所有的控制電路都集成在本體上,充分保持其美觀,可謂是細節拉滿
▍電路系統結構介紹完了,接下來我們介紹介紹電路系統,整個電路系統還是挺複雜的,因為涉及到電源模塊、電機驅動、計算模塊、通信模塊等等,其實這台機械臂上光信号的各種MCU就用了12個之多,而且為了使後期的擴展性足夠強,且交互性方面能夠做一次很有意思的創新,他在機體上搭載了wifi、藍牙、2.4G等很多種無線能力
電路部分最重要的就是主控制器和電機伺服驅動器,也就是之前提到的一體閉環驅動器,其支持多種控制協議,并且最後把所有控制線集成起來,隻需要四根線
這款驅動器的性能可以說是非常暴力了,方案使用的是FOC加斬波恒流,由于加了高精度的磁編碼進行閉環控制,所有不會出現丢步問題,同時在自動轉速和效率方面也不是像3D打印機上的步進電機能比的
如果說驅動器是心髒的話,那控制器就是機械臂的小腦了,稚晖君也為此自己設計了機器人框架 - REF,用在基于Cotex-M4内核的stm32F4 MCU上,除了主控制器 stm32F4,控制電路上還闆載了一個 ESP32 作為協控制器,一方面作為 stm32 的安全備份,另一方面可以使其具有wifi、藍牙等能力
以上所有的零件就備齊了:
組裝完後,硬件整體出來了,中國紅版的機械臂!
▍軟件算法部分硬件完成啦,當然這還僅僅是開始,接下來開始注入靈魂!
對于機械臂來,最核心的軟件内容在于運動學正逆解的算法,以及動力學模型的實現,其中前者告訴了我們機械臂的每個關節角度,和最終末端的位置之間的正逆解求解關系,而後者則用于現實碰撞檢測、柔性控制、力學反饋等很多功能,其中設計大量計算複雜的矩陣和偏微分計算,現在看來,稚晖君這次項目涉及到的知識面包括太多了,有電子、機械、算法、數學等等。
軟件部分還包括命令行和圖形化的上位機,手機端的APP以及無線示教器固件等
對于機械臂的交互方式,稚晖君總共實現了7種
第一種,最簡單的方式,通過串口,機械臂使用USB連上電腦,使用串口命令來控制機械臂,而且可以選擇多種坐标方式,比如關節坐标系、世界坐标系、工具坐标系等等,所有的機械臂姿态都是在機械臂本體内完成的
第二種,使用命令行,通過自己設計的REF自帶的RPC框架,可以實現更大自由度的機械臂控制,和各種參數設置
第三種,圖形化上位機控制,我們可以在上位機中進行傻瓜式的拖拽交互,而且這個交互是雙向的,即可以把動作下發給機械臂,也可以在軟件中實時同步機械臂的姿态
以上幾種,都基本實現了機械臂的交互控制,不過好戲才剛剛開始哦!
第四種,手動協作示教控制,隻需要手動教它一邊運動的流程,它就可以自動學習重複動作
還沒有完,手動示教其實是很多機械臂都具有的功能,所以還不算炫酷!
第五種,機械臂當然少不了示教器啦!稚晖君為此設計了一個無線智能小終端,也是這台機械臂的伴侶,它可以通過低功耗藍牙和機械臂進行無感連接,連接之後可以實時顯示機械臂的各種狀态信息,可以切換各種功能,切換控制模式
第六種,來玩點比較前沿的技術,比如說AR,結合增強顯示技術,就可以實現這樣的效果
你以為這就完了嗎?稚晖君的宗旨就是追求完美,注意,前方高能!
第七種,同步現實,使用華為升騰的Atlas邊緣計算平台,接下來實時的獲取位姿信息,會進行複雜的坐标換算,通過無線的方式發送給機械臂,機械臂收到之後響應執行
事情到這裡還沒完,機械臂的核心能力并不隻是動一下而已,可以更換不同的末端效應器,可以使機械臂實現不同的功能
稚晖君也為此設計了一個帶力反饋的微型夾爪,以及一個手持控制器,并帶有AHRS裝置,那麼就有了下面這種功能:
可能你會覺得,何必這麼麻煩呢?直接用手操作,不更香嗎?不不不,事情并沒有那麼簡單,通過機械臂操作,可以進行很多人手無法達到的效果,更重要的是可以實現遠程操作完成這種手術,像這樣:
這樣才是最終極的交互方式呀!當然,正如稚晖君所說,這台機械臂能實現的功能還有無限的潛力等待我們來發現
由于稚晖君本人工作的原因,時間也是非常有限的,以上這些項目都是他利用休息時間肝出來的,但這絲毫不影響他一個人完成一個團隊的項目!他也表示,希望自己以後做的每個項目,都是迄今為止最為複雜的項目,相信這為天才少年也會繼續給我們帶來更令人驚歎的作品,讓我們拭目以待吧!
由于篇幅原因,文章就介紹到這裡了,稚晖君表示,為了方便大家學習,他本次的項目會全部開源到github,有興趣複現的同學快去看看吧!
Github地址:
https://github.com/peng-zhihui/Dummy-Robot
視頻源地址:
https://www.bilibili.com/video/BV12341117rG
圖片素材:稚晖君
有話要說...