自己動手造個球平衡機器人

你是否曾對那些能夠精妙地保持平衡的機器設備感到好奇?

從無人機到獨輪平衡車,背后都蘊藏著復雜的控制系統。

今天,我們來介紹一個充滿挑戰與樂趣的項目——制作一個球平衡機器人。這不僅是一個酷炫的擺件,更是一次深入學習機器人、傳感器和控制系統的機會。

在這里插入圖片描述

這個項目源于一位創客的親身實踐,他從零開始,通過這個項目掌握了傳感器、控制系統和逆運動學等核心知識,甚至學會了如何系統性地解決問題。它非常適合新手,也為那些希望將理論知識付諸實踐的學生提供了完美的平臺。

項目解析:三足鼎立的“平衡大師”

球平衡機器人,從工程角度看,是一個精巧的“三維平面并聯機構”(3-RRS parallel manipulator)。你可以把它想象成一個由三條腿支撐的托盤。當小球偏離中心時,這三條“腿”——也就是三個步進電機——會協同工作,精確地調整托盤的傾斜角度,就像一個經驗豐富的服務員在托盤上保持酒杯平衡一樣,最終讓小球始終回到中心位置。

在這里插入圖片描述

那么,它到底是怎么做到這一切的呢?

簡單來說,整個過程遵循一個閉環控制系統:

  1. 感知(輸入): 平臺上的電阻式觸摸屏會實時感知小球的位置坐標。
  2. 計算(處理): 微控制器接收到這些坐標后,會進行復雜的運算,包括逆運動學PID控制。逆運動學計算出為了讓小球回到中心,三個電機需要轉動的角度;PID控制器則像機器人的“大腦”,不斷地根據小球的當前位置和速度,精細地調整輸出,以確保小球能平穩、快速地回到中心,而不是來回振蕩。
  3. 執行(輸出): 電機驅動器接收到微控制器的指令后,會精準地控制步進電機轉動,從而調整平臺的角度。

準備材料

要打造這個機器人,你需要準備以下核心部件和工具。

每個選擇都有講究:

  • 主控核心: Teensy 4.0 微控制器。為什么不用常見的Arduino?因為球平衡機器人需要高速、復雜的計算來處理實時傳感器數據和控制算法,Teensy 4.0 的強大處理能力是其成功的關鍵。

  • 驅動核心: 三個 Nema 17 步進電機。步進電機能提供高扭矩和精確的步進控制,這對于實現平臺角度的微調至關重要。

  • 感知核心: 一個電阻式觸摸屏。它充當了機器人的“眼睛”,通過電阻變化來判斷小球的精確位置。

  • 驅動模塊: 三個 TMC2208 步進電機驅動器。這些驅動器能將微控制器的信號轉化為電機所需的電流,并且擁有靜音驅動功能,讓機器人運行更平順。

  • 電源: 一個能提供至少 24V、5A 電源的直流電源。步進電機需要較高的電壓才能發揮出足夠的扭矩。

  • 工具: 剪線鉗、電烙鐵、萬用表等基礎電子工具。此外,項目的大部分結構件需要通過 3D 打印制作,如果你沒有3D打印機,可以尋找線下的創客空間或線上打印服務。

機械結構制作

項目最酷的部分之一就是它的機械設計。作者使用了 Solidworks 設計了所有的機械零件。好消息是,你不需要自己從頭設計,作者已經將所有 3D 打印文件開源,你可以直接獲取文件并進行打印。這一步主要是將各個零件打印出來,為后續組裝做好準備。


在這里插入圖片描述

電路搭建

這是項目的核心“神經系統”。

你需要根據項目提供的電路圖,將 24V 電源、三個電機驅動器和 Teensy 4.0 微控制器連接起來。由于電機需要高壓,而微控制器需要5V,因此需要一個穩壓器將高壓降下來。這一步考驗的是你的焊接和電路連接能力,務必確保連接正確、牢固。

物理組裝

將 3D 打印好的零件、電機、電路板和觸摸屏組裝在一起。這個過程需要一定的耐心,將每個部件都按照設計圖紙安裝到位,確保機械結構能夠順暢地移動,沒有卡頓。

程序代碼上傳與調試

賦予機器人“生命”的關鍵一步。你需要將項目的代碼上傳到 Teensy 微控制器中。

代碼包含了用于驅動電機、讀取觸摸屏數據以及實現平衡算法的所有邏輯。上傳代碼后,你還需要進行校準(Calibration),告訴機器人平臺的水平位置,并調整 PID 參數,讓它能夠更平穩地控制小球。

在這里插入圖片描述

完成以上步驟,你的球平衡機器人就大功告成了。當你親手制作的機器人,在代碼的驅動下,精準地保持小球的平衡,那種成就感是無與倫比的。

如果你對這個項目感興趣,可以訪問項目的 GitHub 頁面,獲取所有設計文件和代碼:https://github.com/skulkarni3000/ball-balancing-bot

也可以到DF創客社區論壇下載所有打包文件。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/93055.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/93055.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/93055.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

21.Linux HTTPS服務

Linux : HTTPS服務協議傳輸方式端口安全性HTTP明文傳輸80無加密,可被竊聽HTTPS加密傳輸443HTTP SSL/TLS 數據加密(防竊聽)身份認證(防偽裝)完整性校驗(防篡改)OpenSSL 證書操作核心命令命令選項…

SqlSugar 跨方法 操作臨時表

.net項目中時長會有用到臨時表的操作結果如下所示但是在SqlSugar中可能因為會話問題導致臨時表訪問受限 搜索到的方式var conn (SqlConnection)sugarClient.Ado.Connection;if (conn.State ! System.Data.ConnectionState.Open) {conn.Open();}using (var cmd new SqlCommand…

怎么用飛算javaAI實現視頻逐幀截圖并保存

相信很多朋友都遇到過這樣的需求:想從視頻中截取特定幀作為素材,卻苦于沒有簡單易用的工具,要么操作復雜難以精準定位,要么導出的圖片質量不佳。市面上的視頻處理軟件要么功能冗余,要么需要付費才能使用逐幀截取功能&a…

【2】Transformers快速入門:統計語言模型是啥?

一句話看懂統計語言模型核心任務:教電腦判斷一句話 “像不像人話” (比如“我愛吃蘋果”? vs “蘋果吃愛我”?)1. 早期:死磕語法規則 → 失敗! 科學家思路(1970年前): 像語文老師一…

[激光原理與應用-230]:物理學主要分支、研究對象、衍生技術及職業方向解析

物理學作為自然科學的核心學科,其分支體系覆蓋從微觀粒子到宏觀宇宙的廣闊領域,并通過交叉融合衍生出眾多前沿技術。以下從經典與現代物理學分支、交叉學科、技術轉化及職業方向四個維度展開分析:一、經典物理學分支:宏觀世界的基…

北京JAVA基礎面試30天打卡08

RocketMQ、RabbitMQ與Kafka對比及常見問題解決方案 一、概述 消息隊列(Message Queue, MQ)是企業IT系統內部通信的核心手段,用于提升性能、實現系統解耦和流量削峰。它具有低耦合、可靠投遞、廣播、流量控制、最終一致性等功能,是…

【CSS 變量】讓你的 CSS “活”起來:深入理解 CSS 自定義屬性與主題切換

【CSS 變量】讓你的 CSS “活”起來:深入理解 CSS 自定義屬性與主題切換 所屬專欄: 《前端小技巧集合:讓你的代碼更優雅高效》 上一篇: 【CSS 視覺】無需JS,純 CSS 實現酷炫視覺效果(clip-path, filter, b…

RAG初步實戰:從 PDF 到問答:我的第一個輕量級 RAG 系統(附詳細項目代碼內容與說明)

RAG初步實戰:從 PDF 到問答:我的第一個輕量級 RAG 系統 項目背景與目標 在大模型逐漸普及的今天,Retrieval-Augmented Generation(RAG,檢索增強生成)作為連接“知識庫”和“大語言模型”的核心范式&#…

自主泊車算法

看我的git 在 open space 空間下規劃出?條??到停?位的?碰撞軌跡 滿?平滑約束 可跟蹤 考慮動態障礙物約束 在路徑不可?的情況下 具備重規劃能? 重規劃時能夠做到?縫切換 即從原路徑?縫切換到重規劃路徑 ?明顯體感 規劃頻率 10HZ

USB 2.0 學習(2)- 連接

上回說到 usb的信號 k 狀態和 j 狀態,補充一下 usb的一些電氣小知識。 1.USB設備有四根線 電源線VBus、 D、 D-、 地線GND 2.USB主機端的 D 和 D-各有1個15k下拉電阻,這是為了準確檢測 D還是D-線上電平的變化 因為USB總線檢測USB設備是低速還是全速設備…

解鎖 Appium Inspector:移動端 UI 自動化定位的利器

? 在移動端 UI 自動化測試中,元素定位是繞不開的核心環節。無論是 Android 還是 iOS 應用,能否精準、高效地定位到界面元素,直接決定了自動化腳本的穩定性和可維護性。而 Appium Inspector 作為 Appium 生態中專門用于元素定位的工具&#…

機器學習概念1

了解機器學習1、什么是機器學習機器學習是一門通過編程讓計算機從數據中進行學習的科學 通用定義:機器學習是一個研究領域讓計算機無須進行明確編程就具備學習能力 工程化定義:一個計算機程序利用經驗E來學習任務T,性能是P,如果針…

前端html學習筆記5:框架、字符實體與 HTML5 新增標簽

本文為個人學習總結,如有謬誤歡迎指正。前端知識眾多,后續將繼續記錄其他知識點! 目錄 前言 一、框架標簽 作用: 語法: 屬性: 二、字符實體 作用: 三、html5新增標簽 語義化 狀態 列…

Day05 店鋪營業狀態設置 Redis

Redis 入門 Redis 簡介 Redis 是一個基于內存的 key-value 結構數據庫。 基于內存存儲,讀寫性能高 適合存儲熱點數據(熱點商品,資訊,新聞) 企業應用廣泛 redis 中文網:Redis中文網 Redis 下載與安裝 R…

Linux驅動開發probe字符設備的完整創建流程

一、 設備號分配1.靜態分配通過register_chrdev_region預先指定設備號(需要確保未被占用)2.動態分配通過alloc_chrdev_region由內核自動分配主設備號,一般都是動態分配以避免沖突。3316 xxxx_dev.major 0; 3317 3318 if (xx…

生產環境中Spring Cloud Sleuth與Zipkin分布式鏈路追蹤實戰經驗分享

生產環境中Spring Cloud Sleuth與Zipkin分布式鏈路追蹤實戰經驗分享 在復雜的微服務架構中,服務調用鏈路繁雜,單點故障或性能瓶頸往往難以定位。本文結合真實生產環境案例,分享如何基于Spring Cloud Sleuth與Zipkin構建高可用、低開銷的分布…

基于Python的《紅樓夢》文本分析與機器學習應用

本文將詳細介紹如何使用Python和機器學習技術對《紅樓夢》進行深入的文本分析和處理,包括文本分卷、分詞、停用詞處理、TF-IDF特征提取以及文本可視化等關鍵技術。一、項目概述本項目的目標是對中國古典文學名著《紅樓夢》進行全面的自動化處理和分析,主…

Bevy渲染引擎核心技術深度解析:架構、體積霧與Meshlet渲染

本文將深入探討Bevy游戲引擎的渲染架構,重點分析其體積霧實現原理、Meshlet渲染技術以及基于物理的渲染(PBR)系統。內容嚴格基于技術實現細節,覆蓋從底層渲染管線到高級特效的全套解決方案。一、Bevy渲染架構深度解析1.1 核心架構…

CASS11計算斜面面積

1.生成三角網2.工程應用--計算表面積--根據三角網

借助Rclone快速從阿里云OSS遷移到AWS S3

本文作者: 封磊 Eclicktech SA | AWS Community Builder DevTool | AWS UGL | 亞馬遜云科技云博主 阿里云&InfoQ&CSDN簽約作者 概述 隨著企業云戰略的調整和多云架構的普及,數據遷移成為了一個常見需求。本文將詳細介紹如何使用Rclone工具,高效…