本次課程安排採 IoT 雲端手機遙控+無人工廠型自動化機器手臂的設計, 在課程中,讓學員自己動手組裝一套多軸的機器手臂,以最新的 MicroPython 程式語言來撰寫設計,手臂運行的方式除一般傳統的有線控制外, 還能進一步透過手機 App 來進行遠距雲端方式控制機器手臂,加上可程序自動化的進階功能進行學習,機器手臂更智能的依學員事先已教導過的指定動作運行,學員們可習得類似智慧工廠中的生產自動化機器人的知識與技能.
📝 MicroPython 函式庫
- 將存檔於 MCU 的 lib 目錄下: 下載處
- MyKit_Servo:用於舵機MyKit_Robot用於機器人相關
- MyKit_Robot_MeArm:專用於 MeArm 機器手臂My_Wifi用於無線網路
- My_NetMQTT:用於 MQTT 通訊傳輸
- 點選下載處, 進入下載網頁後, 直接點選 “Direct download” 下載
👟 主要元件測試
⭐ ESP32
test_ESP32.py : 測試內建 LED 亮滅
⭐ 舵機
💠 接線方式
⭐⭐⭐ 舵機接線時, 務必確認腳位, 不可接錯, 易燒毀 !!
3 色公母杜邦線, 接舵機橘色信號線, 紅色 5V, 棕色 GND
💠 單一舵機
test_MyKit_Servo.py :逐一測試所有舵機的 home 點 (例如 90 度), 與左右轉的極限角度 (預設 10~170 之間)
🎯 機器手臂組裝
- 網路與 YouTube 上很有人分享組裝的教學, 在此不再贅述!
🎯 機電整合
🔯 機器手臂與微控板的配線方式
😎 配線表
👨🏿💻 機器人程式架構示意圖
- 使用 My MeArm 使用的相關套件
🤖 無人工廠自動化機器人
😶🌫️ IoT 物聯網設計
test_main.py:機器手臂主控程式
🔯 讓 ESP32 成為 IoT 的物聯網裝置
- 修改 my_config.py:
- robot_id: ?? 改為你的學員代碼
- wifi: 你所會用到的 Wifi SSID 與密碼清單
- robot_id = 'mearm??' - "wifi": {"你的Wifi SSID":"你的Wifi密碼", "Experience":"WDA89956399","classroom":"WDA89956399","classroom-5G":"WDA89956399"}
- 開啟 Thonny → 執行 test_main.py → 檢視機器手臂能是否順利連上上網 ?
試著改變 wifi 設定內參數的 “值”, 或 “順序” 試試, 將可以了解此連網方式的設計方便性.
🔯 MQTT 資料雲端傳輸
- 修改 my_config.py:
- server: 可使用你常用的
- topic: 切記, 每台機器手臂的 robot_id 都要不一樣喔 ! ⭐
"mqtt": {'server': 'mqttgo.io', 'topic': 'makerbase00/'+robot_id}
🔯 最終程式碼
main.py:機器手臂主程式
❤️❤️❤️ 測試無誤後, 依以下步驟完成後重開機, 機器手臂便可開始接受指令自動作業
- 將 main.py 裡的第一個註解符號移除, 存檔 ⭐
- 將 ESP32 的 USB Cable 移除, 僅保留外部電源的 USB 母座供電
- 記得要將 MCU 5V 的電源輸入線接回, 將開關來回切至 ON, 讓 ESP32 的主程式重啟動
- 開啟手機 App, 手動控制各臂, 或按下 play 執行以預錄好的自動化作業程序
- 若要開機即執行, 則將 auto_play 改設為 True, 如此就無須桌機或手機來啟動才能作業
課程至此, 基本上機器手臂的自動化作業, 均可由手機遙控器操控後的動作來單一動作的數據. 而在進階的課程裡, 將進一步介紹如何製作手機遙控器與自動化動作學習器的設計, 完成後結合自動化學習器, 則可一邊操作機器手臂動作, 一邊將之記憶預錄存檔, 如此便以更輕易直覺的一氣呵成完成各式動作的學習與程序編程. ❤️❤️❤️
😎 開始訓練你的機器手臂, 試看看自動化的結果 !!
- 搭配音樂一起起舞 (相同舞姿, 或各自 Solo)
- 與同伴們一起快樂地工作著 (須協同互動作業)
- 發揮你的想像力
🎤🌈 進階應用的 DEMO
🤖 無人工廠的自動化機器手臂
🤖 2 台機器手臂協同作業
🤖 機器視覺辨識的機器手臂
🤖 還有其他 AI 的應用: 例如 追蹤, 避障, 分類, 瑕疵檢測, 互動遊戲, …..