STM32控制四自由度機械臂(SG90舵機)(硬件篇)(簡單易復刻)

1.前期硬件準備

2s鋰電池一個(用于供電),stm32f103c8t6最小系統板一個(主控板),兩個搖桿(用于搖桿模式),四個電位器(用于示教器模式),一個藍牙hc-05(用于藍牙模式已經串口打印信息方便調試),一個oled顯示屏(用于顯示信息,也是方便調試),以及最主要的由四個sg90舵機組成的四自由度機械臂(因為我沒有3d打印機,故直接在淘寶買了一個現成的,只需要買機械臂,不用帶控制板,幾十塊錢,有條件的也可以買四個90°的sg90舵機自己打印外殼,沒條件的也可以像我一樣買現成的,鏈接也給大家放下面了)

【淘寶】假一賠四 https://e.tb.cn/h.h58uEdzwlHNI62N?tk=TQCiVBrR5L0 HU006 「新款4四軸機械臂4軸4自由度Arduino可編程控制WIFI創新比賽 DIY」
點擊鏈接直接打開 或者 淘寶搜索直接打開

除此之外還需要控制板上面的一些電阻電容,芯片和按鍵等器件,不過這些都不貴。下圖就是最終項目的實物呈現圖。機械臂演示視頻已經在我的同名B站發布,下面是演示視頻鏈接:

http://【STM32四自由度機械臂實現多功能控制-嗶哩嗶哩】 https://b23.tv/O82ynIa

2.stm32機械臂控制板PCB

原理圖其實很簡單,stm32和舵機,電位器,藍牙,oled顯示屏,以及搖桿等外設都是排針排母,真正的電路部分只有兩個降壓電路和led指示燈和按鍵電路模塊,總體還是比較簡單清晰明了的。

下面是pcb的3d預覽圖,PCB工程文件文末有開源鏈接,希望大家一鍵三聯后領取。?

?3.外設及其接線介紹

3.1藍牙hc-05

PA9接RX,PA10接TX,GND接地,VCC接5V,另外兩個引腳可不接,可用于串口打印信息,也可通過手機發送信息控制機械臂。(PA9對應stm32的USART1_TX,PA10對應stm32的USART1_RX)

3.2搖桿

GND接地,+5V接5V,兩個VRX分別接PA2和PA4,兩個VRY分別接PA3和PA5,SW可不接,兩個搖桿主要用于搖桿模式下控制機械臂。(PA2-PA5對應的是stm32的ADC1_IN2-ADC1_IN5)

3.3?電位器

GND接地,VCC接3.3V,四個OUT分別接PA6,PA7,PB0,PB1,四個電位器主要用于示教器模式下控制機械臂,受限于PCB是平面的,大家可以用杜邦線將電位器引出來,并用木棍等物品將電位器像機械臂那樣連接起來,這樣就可以真正實現示教器模式,你控制木棍運動,機械臂就會跟隨同步運動。(PA6,PA7,PB0,PB1對應的是stm32的ADC1_IN6-ADC1_IN9)

,

3.4oled顯示屏?

GND接地,VCC接3.3V,SCL接PB6,SDA接PB7,OLED顯示屏主要用于顯示一些信息,起到一個方便調試的作用。(PB6對應stm32的I2C1_SCL,PB7對應stm32的I2C1_SDA)

3.5SG90舵機

紅線電源線接5V,棕線地線接GND,四根黃線信號線分別接PB10,PB11,PA15,PB3,這個舵機應該不用介紹用處了,它就是機械臂的四自由度。(PA15對應stm32的TIM2_CH1,PB3對應stm32的TIM2_CH2,PB10對應stm32的TIM2_CH3,PB11對應stm32的TIM2_CH4,也就是定時器2的四個通道,用于輸出PWM的,具體的代碼等到軟件篇會介紹)

?

?除了上述的外設以外,還有兩個led指示燈所使用的gpio是PA11和PA12,以及四個按鍵的gpio分別使用的是PA0,PA1,PB4,PB5。

下面是stm32機械臂控制板PCB的鏈接,希望大家多多支持,待我把軟件部分整理一下,會加快發布出來。

http://通過網盤分享的文件:stm32機械臂控制pcb.zip 鏈接: https://pan.baidu.com/s/1KXA44s-QkAyqEYr9eFoOQg 提取碼: 0531

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

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

相關文章

華為OD機試_2025 B卷_最差產品獎(Python,100分)(附詳細解題思路)

題目描述 A公司準備對他下面的N個產品評選最差獎, 評選的方式是首先對每個產品進行評分,然后根據評分區間計算相鄰幾個產品中最差的產品。 評選的標準是依次找到從當前產品開始前M個產品中最差的產品,請給出最差產品的評分序列。 輸入描述 第…

飛算JavaAI:重塑Java開發效率的智能引擎

飛算JavaAI:重塑Java開發效率的智能引擎 一、飛算JavaAI核心價值 飛算JavaAI是全球首款專注Java語言的智能開發助手,由飛算數智科技(深圳)有限公司研發。它通過AI大模型技術實現: 全流程自動化:從需求分析→軟件設計→代碼生成一氣呵成工程級代碼輸出:生成包含配置類、…

Java和Go各方面對比:現代編程語言的深度分析

Java和Go各方面對比:現代編程語言的深度分析 引言 在當今的軟件開發領域,選擇合適的編程語言對項目的成功至關重要。Java作為一門成熟的面向對象語言,已經在企業級開發中占據主導地位超過25年。而Go(Golang)作為Google…

CloudCanal:一款企業級實時數據同步、遷移工具

CloudCanal 是一款可視化的數據同步、遷移工具,可以幫助企業構建高質量數據管道,具備實時高效、精確互聯、穩定可拓展、一站式、混合部署、復雜數據轉換等優點。 應用場景 CloudCanal 可以幫助企業實現以下數據應用場景: 數據同步&#xff…

如何發現 Redis 中的 BigKey?

如何發現 Redis 中的 BigKey? Redis 因其出色的性能,常被用作緩存、消息隊列和會話存儲。然而,在 Redis 的使用過程中,BigKey 是一個不容忽視的問題。BigKey 指的是存儲了大量數據或包含大量成員的鍵。它們不僅會占用大量內存&…

Golang讀取ZIP壓縮包并顯示Gin靜態html網站

Golang讀取ZIP壓縮包并顯示Gin靜態html網站Golang讀取ZIP壓縮包并顯示Gin靜態html網站1. 讀取ZIP壓縮包2. 解壓并保存靜態文件3. 設置Gin靜態文件服務基本靜態文件服務使用StaticFS更精細控制單個靜態文件服務4. 完整實現示例5. 高級優化內存映射優化使用Gin-Static中間件6. 部…

參數列表分類法:基本參數與擴展參數的設計模式

摘要 本文提出了我設計的一種新的函數參數設計范式——參數列表分類法,將傳統的"單一參數列表"擴展為"多參數列表協同"模式。通過引入"基本參數列表"和"擴展參數列表"的概念,為復雜對象構建提供了更靈活、更具表…

Ajax之核心語法詳解

Ajax之核心語法詳解一、Ajax的核心原理與優勢1.1 什么是Ajax?1.2 Ajax的優勢二、XMLHttpRequest:Ajax的核心對象2.1 XHR的基本使用流程2.2 核心屬性與事件解析2.2.1 readyState:請求狀態2.2.2 status:HTTP狀態碼2.2.3 響應數據屬性…

ArcGIS 打開 nc 降雨量文件

1. 打開ArcToolbox,依次打開 多維工具 → 創建 NetCDF 柵格圖層,將 nc 文件拖入 輸入 NetCDF 文件輸入框,確認 X維度(經度)、Y維度(經度) 的變量名是否正確,點擊 確定。圖 1 加載nc文…

01-elasticsearch-搭個簡單的window服務-ik分詞器-簡單使用

1、elasticsearch下載地址 如果是其他版本可以嘗試修改鏈接中的版本信息下載 https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.6.2-windows-x86_64.zip 2、ik分詞器下載地址 ik分詞器下載的所有版本地址:Index of: analysis-ik/stable/…

[數據結構與算法] 優先隊列 | 最小堆 C++

下面是關于 C 中 std::priority_queue 的詳細說明,包括初始化、用法和常見的應用場景。什么是 priority_queue? priority_queue(優先隊列)是 C 標準庫中的一個容器適配器。它和普通隊列(queue)最大的不同在…

零基礎入門物聯網-遠程門禁開關:硬件介紹

一、成品展示 遠程門禁最終效果 二、項目介紹 整個項目主要是實際使用案例為主,根據自己日常生活中用到物聯網作品為原型,通過項目實例快速理解。項目分為兩部分:制作體驗和深入學習。 制作體驗部分 會提供所有項目資料及制作說明文檔&a…

軟件系統國產化改造開發層面,達夢(DM)數據庫改造問題記錄

本系統前(vue)后端(java spring boot)為列子,數據庫由MySQL--->DM(達夢),中間件為中創的國產化相關軟件,如tomcat、nginx、redis等。重點講數據庫及代碼端的更改,中間件在服務端以…

N8N與Dify:自動化與AI的完美搭配

“N8N”和“Dify”這兩個工具徹底理清楚,它們其實是兩個定位完全不同的開源平臺,各自擅長解決不同類型的問題,但也能協同工作。以下是詳細說明:1. n8n:工作流自動化平臺定位:n8n 是一個專注于跨系統連接與任…

ARM匯編編程(AArch64架構)課程 - 第5章函數調用規范

目錄AAPCS64調用約定參數傳遞規則返回值規則棧幀管理SP寄存器FP寄存器 (X29)棧幀布局示例AAPCS64調用約定 ARM Architecture Procedure Call Standard for 64-bit (AAPCS64) 參數傳遞規則 參數位置寄存器分配特殊規則參數1-8X0-X7 (64-bit) / W0-W7 (32-bit)浮點數使用 V0-V7參…

軟考(軟件設計師)軟件工程-成本評估模型,軟件能力成熟度,軟件配置管理

成本評估模型 Putnam 下面通過一個具體案例,逐步說明Putnam模型的計算過程。我們將開發一個銀行核心交易系統,規模為80萬行代碼(LOC),要求24個月內交付。參數符號值說明軟件規模L800,000 LOC通過功能點轉換獲得開發時間…

SASSNet復現

復現結果–Dice:89.354614,Jaccard:80.968917,95HD:7.3987764,誤差在接受范圍 MethodDiceJaccardJaccard # 感想 第19篇完全復現的論文

大數據學習5:網站訪問日志分析

1.數據處理1.1 環境準備進入cd /opt/server/hadoop-3.1.0/sbin文件夾,停止hdfs服務cd /opt/server/hadoop-3.1.0/sbin ./stop-dfs.sh進入/opt/server/hadoop-3.1.0/etc/hadoop文件夾,編輯yarn-site.xml文件/opt/server/hadoop-3.1.0/etc/hadoop vim yarn…

力扣1310. 子數組異或查詢

這一題很明顯的就是用前綴和異或來解決&#xff0c;只要清楚異或的性質&#xff0c;這一題就十分容易。 對異或的性質的講解如下&#xff1a; 異或運算解析 具體代碼如下&#xff1a; class Solution { public:int sum[30005]; vector<int> xorQueries(vector<int>…

React Native 狀態管理方案全面對比

React Native 狀態管理方案全面對比 在 React Native 開發中&#xff0c;狀態管理是構建復雜應用的核心問題。以下是主流狀態管理方案的深度對比分析&#xff1a; 一、基礎方案&#xff1a;useState/useReducer 適用場景 簡單的組件級狀態中等復雜度的局部狀態管理不需要跨組件…