<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于STM32、ESP32,鋼鐵俠打造機械臂設計

STM32嵌入式開發 ? 來源:STM32嵌入式開發 ? 2024-01-08 13:37 ? 次閱讀

機器人一直是稚暉君很感興趣的一個方向,而在工業機器人中他認為最實用的非機械臂莫屬。正巧,半年前稚暉君偶然淘到了一臺二手機械臂,這讓他有些激動。然而,喜悅之情還沒持續多久,稚暉君就有些不開心了:在他花了一些時間將這臺機械臂研究透徹,并自己開發了一套 SDK 后,感到了一點不妙:“這個手子不太行啊”。

稚暉君表示,目前市面上的機械臂都不夠酷,因此決定要自己造一臺很酷的機械臂,并將其取名為 Dummy(取自鋼鐵俠中一只名為 Dummy 的機械臂)。為此他總結了一份架構設計圖(由于該圖較長,視頻中為滾動呈現,因此本文僅截取部分):

8e36207e-ade0-11ee-8b88-92fbcf53809c.png

硬件準備

既然是要設計一臺機械臂,那就需要從硬件開始準備,畢竟無論軟件算法再重要,也需要一個優質的載體才能完美呈現。

驅動方案

硬件方面,首先需要確定的就是驅動方案,其中包括人們常說機器人的三大核心部件——電機、減速器和驅動器。

一般真正的工業機器人使用的電機都是無刷伺服電機,其性能各方面都非常優秀,只是它的驅動系統較為復雜,并不適用于本次機械臂極其緊湊的結構當中。相比之下,稚暉君選擇了精度最高的步行電機,但它在高轉速下力矩較小的缺點需要克服。

為此,稚暉君選擇使用工業機械臂里面最常用的諧波減速以解決步行電機的力矩問題:其零背隙、高減速比、超小體積等優點簡直是為這個項目量身打造。

電機和減速器確定后,驅動器方面稚暉君設計了一個步進電機的一體閉環驅動,以此保證驅動精度和體積最小化。

結構設計

驅動方案確定之后,緊接著就是結構設計,以下為設計圖最終版本:

8e5a49c2-ade0-11ee-8b88-92fbcf53809c.png

大家有沒有注意到這張圖的一個亮點?

8e78f106-ade0-11ee-8b88-92fbcf53809c.png

沒錯,這個最終版本是第 151 版,在此之前還有 150 個版本稿,稚暉君都直呼:“這次的作品是我至今為止畫過最復雜的結構設計了?!?/p>

從圖中可以看到,這款機械臂一共使用了 6 個電機和 6 個諧波減速器,機身主體采用鋁 CNC 加工,裝飾組件則由 3D 打印制作,為了美觀,控制電路上也都集成在本體上。

8e833fda-ade0-11ee-8b88-92fbcf53809c.png

稚暉君還提到,之所以這個機械臂會設計成紅色,并不是為了致敬鋼鐵俠,而是因為“如果野生鋼鐵俠的機器人有顏色的話,那一定是中國紅”,稚暉君自稱為“野生鋼鐵俠”。

電路設計

整套機械臂的電路設計也非常復雜,其中涉及到了電源模塊、電機驅動、計算模塊、通信系統等很多方面,光各種型號的 MCU 就用了 12 個。此外,為了后續的擴展性夠強,能在交互方面做一些獨特創新,稚暉君在機體上還搭載了 WiFi、藍牙、2.4G 等多種無線能力。

當然,這都是次要的,在電路方面最主要的還是主控制器和電機伺服驅動器。

先說電機伺服驅動器吧,稚暉君將其設計為電機一體式的驅動,支持 CAN 總線和功率機聯,因此整套系統下來,僅需 4 根線即可將 6 個電機以及末端執行器全部連接起來。不僅如此,這款驅動器的性能也非常優秀,使用 FOC 加斬波恒流,并且添加了高精度的磁編碼進行閉環控制,因此避免了像傳統步進電機那樣丟步的可能,在最高轉速和效率方面也表現不俗。

8ea260d6-ade0-11ee-8b88-92fbcf53809c.png

“如果說驅動器是心臟的話,那控制器就是機械臂的小腦了?!笨刂破鞣矫?,稚暉君采用了他此前開發的機器人開發框架 REF,基于 Cortex-M4 內核的 MCU。稚暉君解釋道,這是因為 M4 內核自帶 FPU 和 DSP,可大幅提升此后控制算法中涉及到的大量復雜計算的效率。另外,主控制器采用冗余設計,除了主控制器 REF 外,還搭載了一個 ESP32 作為協處理器,用作 STM32 的安全備份并提供 WiFi、 藍牙等無線能力。

總體而言,稚暉君為解決精度和性能問題,共進行了三個步驟:

第一、使用步進電機加一體閉環驅動;

第二、使用 0 背隙的諧波減速器;

第三、在后續的算法實踐中進行高精度補償。

軟件走起

硬件具備了,但這只是開始,更為核心的還是軟件算法部分。稚暉君指出,對于機械臂來說,最核心的軟件內容在于運動學正逆解的算法以及動力學模型的實現。

8eb50d08-ade0-11ee-8b88-92fbcf53809c.png

運動學正逆解算法可以得知機械臂每個關節角度和最終末端位置之間的正逆解求解關系,而動力學模型則用于實現碰撞檢測、柔性控制、力學反饋等多種功能,具體會涉及到大量十分復雜的矩陣和偏微分計算,這一點也是稚暉君在項目實現中花費時間最多的部分:“請大家記住,這些項目表面上看起來是電子和機械,其實背后全是算法和數學?!?/p>

除了核心算法外,軟件部分還包括命令行和圖形化的上位機、手機端的 APP 以及無線示教器固件等。另外,可能還有人注意到了機械臂底座上有一個又大又圓的燈環:

8ec41d5c-ade0-11ee-8b88-92fbcf53809c.png

看起來是不是很像......沒錯,就是鴻蒙的 Logo,這臺機械臂主控制器里運行的是 LiteOS 內核的鴻蒙系統。

交互方式

軟硬件兼備,那么接下來就是我們最喜聞樂見的演示環節啦!在這個部分,稚暉君展示了很多常規和非常規的交互方式,一句話總結就是:你想要的交互方式,這里都有!

利用串口

這是一種最簡單的交互方式,機械臂通過 USB 連上電腦會出現一個串口號,使用者能很方便地用串口命令來控制機械臂,還可以選擇多種坐標方式,例如關節坐標系、世界坐標系、工具坐標系等,而所有的姿態結算均在機械臂內部完成。

8ee97dea-ade0-11ee-8b88-92fbcf53809c.png

使用命令行

通過稚暉君設計的 REF 自帶的 RPC 框架,可實現更大自由度的機械臂控制和各種參數設置。

8eff1600-ade0-11ee-8b88-92fbcf53809c.png

圖形化上位機

以上兩種方式對于技術人沒啥問題,但對于普通人來說就有些“陰間”了。因此稚暉君還實現了對應的圖形化上位機,可以在上位機中進行“傻瓜式”的拖拽交互。

同時,這種交互還是雙向的,即不僅可以把動作下發給機械臂,還可以在軟件中實時同步機械臂的姿態:

手動協作示教

理論上來說,以上三種交互方式已經可以滿足絕大多數的使用需求了,但精益求精的稚暉君怎會止步于此:“更優雅的交互方式是什么?當然是連軟件都不用打開,所見即所得?!?/p>

基于此,可在硬件設計階段通過合理設置減速器的減速比,使得機械臂可以在保持力矩和精度的同時進行反驅,以此獲得手動協作示教的功能,即只需手動教它一遍運動流程,它就可以自動學習重復:

但很多協作機器都有手動示教功能,所以稚暉君覺得這并不算炫酷,因此他設計了一個開啟示教功能的特別方法:一個無線智能小終端。

8f13a8f4-ade0-11ee-8b88-92fbcf53809c.png

這個無線示教器名為 Peak,其功能非常多,可通過低功耗藍牙和機械臂進行無感連接以實時顯示機械臂的各種狀態信息,還可以切換各種功能,其中就包括進入示教模式。

AR

除此之外,稚暉君還利用了較為前沿的 AR 技術作為交互方式。畢竟上位機無法展示真實環境,手動示教也比較累,而結合增強現實技術則可以真正實現“指哪打哪”的效果。

終極交互形態:像自己的手臂一樣

相信在許多人看來,以上這些交互方式已經足夠優秀了,但對稚暉君來說卻“還沒有到理想狀態”、“這一切都還不夠自然和優雅”。為了追求極致的交互狀態,稚暉君思考了很久,最終想到了人類使用機械臂最符合直覺的方式:要跟使用自己的手臂一樣。

出于這種想法,稚暉君設計了一套由雙目相機、AHRS 系統、AI 算力平臺、力傳感和力反饋裝置以及通信模組組成的裝置,以此實現將人類手臂的動作直接同步到機械臂上,具體原理如下:

首先由雙目相機進行目標識別和跟蹤定位以及AHRS 系統進行姿態解算來獲取準確的手部位置和旋轉姿態(由于此過程涉及到的 AI 算法需要高效計算平臺來承載,因此稚暉君選擇了華為昇騰的 Atlas 邊緣計算平臺),然后實時的位姿信息會經過復雜的坐標換算通過無線的方式發送給機械臂,機械臂收到之后便能響應執行。

不僅如此,考慮到機械臂的實用性價值,稚暉君還為機械臂設計了一個帶力反饋的微型夾爪,也就是說,使用者可隨時得知夾爪正在抓取東西的力度。

8f2828e2-ade0-11ee-8b88-92fbcf53809c.png

同時,結合空間定位系統,他還設計了一個手持控制器,集成了 AHRS 裝置、紅外 LED 以及 PS5 手柄中號稱黑科技的扳機(其中安置了一個力反饋馬達,可實現對于各種物理效果的真實模擬)。

8fbec432-ade0-11ee-8b88-92fbcf53809c.png

整套設備的最終效果堪稱終極交互形態:使用者不僅可以把動作實時同步到機械臂,而且還可以在控制器這邊實時感受到機械臂末端抓取東西的質感。

為了展現這個效果有多驚人,稚暉君用機械臂給葡萄做了一個縫合手術:

自然,這套動作讓人們親手完成也可以,不就是縫個葡萄,但你可以人在廁所縫著客廳的葡萄嗎?沒錯,這臺機械臂可以實現遠程操作,除此之外,他還可以進行軟件去抖、運動范圍的重映射、力矩強增強等多種人手無法達到的效果。






審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 機器人
    +關注

    關注

    207

    文章

    27315

    瀏覽量

    202145
  • STM32
    +關注

    關注

    2247

    文章

    10691

    瀏覽量

    349896
  • 機械臂
    +關注

    關注

    11

    文章

    481

    瀏覽量

    24008
  • ESP32
    +關注

    關注

    13

    文章

    902

    瀏覽量

    16137

原文標題:基于STM32、ESP32,鋼鐵俠打造機械臂

文章出處:【微信號:c-stm32,微信公眾號:STM32嵌入式開發】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    esp32stm32哪個好_ESP32對比ESP8266

    對于國內的大學生或者單片機從業者來說,STM32應該是比較熟悉的一個系列的單片機,而ESP32相對陌生一些。但是從名字看,兩者應該都是32位單片機。那么兩者之間到底有什么關聯,或者性能哪個好一些,哪個差一些呢?
    發表于 04-23 11:06 ?10.5w次閱讀

    真實版鋼鐵現世??!

    `真實版鋼鐵現世啦 啦 啦 啦??!兩米多高三百斤重,吸引不了有高智商的,我不信還吸引不了低智商的?`
    發表于 01-21 11:25

    華為天才少年稚暉君自制機械,能給葡萄縫針的那種,成本 1 萬塊

    。當然,稚暉君也做了較為“陽間”的圖形化方式。而較為極客的 2 兩種方法:通過串口和命令行,也有的哈。這樣的野生鋼鐵機械,究竟是怎么“煉成”的?如何
    發表于 10-11 11:29

    ESP32環境搭建以及入門編程_esp32引腳圖

    本文主要介紹了ESP32環境搭建以及入門編程及ESP32的引腳圖。
    發表于 04-23 11:15 ?1.3w次閱讀
    <b class='flag-5'>ESP32</b>環境搭建以及入門編程_<b class='flag-5'>esp32</b>引腳圖

    ESP32模組的主要特性

    WT-ESP32-DevKitC V4是一款基于ESP32的小型開發板,集WIFI+藍牙方案于一體,板上模組絕大部分管腳均已引出,開發人員可根據實際需求,輕松通過跳線連接多種外圍器件,或將開發板直接
    發表于 11-04 14:54 ?3560次閱讀

    ESP32開發套件 ESP32-DevKitC

    今天推出的一款套件是來自全球創客屆大名鼎鼎的樂鑫科技官方提供的經典ESP32開發套件 -?ESP32-DevKitC。 它基于樂鑫ESP32控制器(32-bit MCU 2.4 GHz Wi-Fi
    的頭像 發表于 01-06 16:55 ?7838次閱讀

    esp32和arduino的區別,esp32能否替代arduino

    很多創客愛好者甚至有些技術工程師在理解esp32和arduino的時候總是問一句這兩塊板子哪個更好用?他們可能潛意識中就覺得arduino和esp32是競品的關系,但實際是這樣嗎?今天我們就深入
    發表于 06-24 17:11 ?2.5w次閱讀

    ESP32 SDIO 使用教程

    ESP32 SDIO 使用教程本文旨在說明如何使用標準的 ESP32-WROOM-32D 開發板進行 SDIO 的通信。本文檔適用于所有需要與 ESP32 SDIO slave 通信的方案
    發表于 11-23 17:51 ?232次下載
    <b class='flag-5'>ESP32</b> SDIO 使用教程

    ESP32系列芯片的規格

    ESP32是一款2.4GHz Wi-Fi和藍牙組合芯片,采用TSMC超低功耗40nm設計技術它旨在實現最佳功率和射頻性能,顯示出魯棒性、多功能性和靈活性在各種應用和電源場景中的可靠性。ESP32系列芯片包括ESP32-D0WDQ
    發表于 04-25 16:21 ?7次下載

    ESP32/STM32電源系統開源項目

    電子發燒友網站提供《ESP32/STM32電源系統開源項目.zip》資料免費下載
    發表于 07-13 09:27 ?13次下載
    <b class='flag-5'>ESP32</b>/<b class='flag-5'>STM32</b>電源系統開源項目

    ESP32 WROVER/ESP32 WROVER IE技術規格書

    電子發燒友網站提供《ESP32 WROVER/ESP32 WROVER IE技術規格書.pdf》資料免費下載
    發表于 09-23 11:28 ?6次下載
    <b class='flag-5'>ESP32</b> WROVER/<b class='flag-5'>ESP32</b> WROVER IE技術規格書

    采用Toit和ESP32打造的溫控風扇

    電子發燒友網站提供《采用Toit和ESP32打造的溫控風扇.zip》資料免費下載
    發表于 11-02 10:48 ?3次下載
    采用Toit和<b class='flag-5'>ESP32</b><b class='flag-5'>打造</b>的溫控風扇

    樂鑫ESP32-MINI-1U參考設計

    樂鑫ESP32-MINI-1U參考設計樂鑫多年來深耕?AIoT?領域軟硬件產品的研發與設計,專注于研發高集成、低功耗、性能卓越、安全穩定、高性價比的無線通信SoC,現已發布ESP8266、ESP32、
    發表于 10-19 16:13 ?1次下載

    樂鑫ESP32-MINI-1參考設計

    樂鑫ESP32-MINI-1參考設計樂鑫多年來深耕?AIoT?領域軟硬件產品的研發與設計,專注于研發高集成、低功耗、性能卓越、安全穩定、高性價比的無線通信SoC,現已發布ESP8266、ESP32、
    發表于 10-19 16:13 ?12次下載

    嵌入式領域的未來之爭,ESP32STM32誰將勝出?

    STM32比起來,ESP32內核的速度更高,處理指令更快,不過ESP32更多是面向物聯網方向的芯片,內置了藍牙和Wi-Fi。
    發表于 04-15 11:01 ?671次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>