STM32控制四自由度机械臂(SG90舵机)(硬件篇)(简单易复刻)

发布于:2025-07-06 ⋅ 阅读:(28) ⋅ 点赞:(0)

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