news 2026/6/26 1:24:30

2轴舵机控制板

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
2轴舵机控制板

一、项目概述

本次自制一块STM32F103C8T6 两轴舵机专用控制底板,实现两大核心功能:

  1. 通过蓝牙串口 APP 下发角度指令,实时驱动两路 SG90 舵机转动;
  2. 板载 OLED 屏幕实时显示两路舵机当前角度,指令回传校验;整体包含硬件 PCB 设计、手工焊接、Keil 底层代码编写、蓝牙手机端联调完整流程。

二、PCB 原理图与板卡设计

1. 整体电路框架

原理图分为 5 个功能分区:Type-C 供电电路、电源指示电路、两路舵机驱动接口、蓝牙串口接口、OLED IIC 屏幕接口、STM32 最小系统扩展座。

(1)供电电路
  • Type-C 接口 USB1 输入 5V 电压,并联多组 10uF+100nF 组合滤波电容(C1/C2/C10/C7 等),抑制舵机大电流启停带来的电压波动;
  • 电源指示灯 D1 串联 10K 限流电阻 R1,上电常亮,直观判断板卡供电状态;
  • 预留电源总开关 SW1,可整体切断 5V 输入,方便调试断电。
(2)两路舵机标准接口(H10、H11)

每一路舵机插座标准定义:5V、GND、SIG 信号脚

  • 舵机 1 信号:PA0
  • 舵机 2 信号:PA1(每个接口独立引出 5V 供电,可直接给 SG90 舵机供电,无需额外外部电源)
(3)HC-05 蓝牙串口模块接口(H8)

蓝牙模块与 STM32 串口 1(USART1)通信:

  • STM32 PA9(TX) → 串口 RX
  • STM32 PA10 (RX) →(串口TX,同时引出 3V3、GND、KEY、RST 复位引脚,支持蓝牙模块 AT 指令修改名称、波特率)
(4)0.96 寸 OLED IIC 显示屏(H5)

IIC 通信引脚:

  • SDA:PB7
  • SCL:PB6(3V3 供电,占用硬件 I2C 外设,屏幕刷新无卡顿,用于实时打印两路舵机角度)
(5)扩展外设预留

板上完整引出 STM32 所有 IO 口,包含 3V3、5V、GND 电源引脚,后续可拓展按键、传感器、更多舵机通道。

2. PCB 布局设计要点

  1. 电源走线加宽:5V 供电主干线路加粗,降低舵机瞬时大电流压降;
  2. 分区布线:电源区、舵机接口区、蓝牙串口区、OLED 接口分区摆放,信号线短且规整;
  3. 滤波电容就近摆放:每个电源输入接口旁放置 0.1uF 去耦电容,提升电路稳定性;
  4. 四周预留固定孔,可直接安装在云台、机械结构支架上;
  5. 双面布线,底层大面积铺 GND 地平面,抗蓝牙串口电磁干扰。

3. 打板与手工焊接流程

  1. 贴片焊接顺序:先焊接小型无源器件(电阻、电容、LED)→ Type-C 母座 → 拨码开关 → 各类插座排针;
  2. 后焊核心外设:焊上 STM32 最小系统板、蓝牙模块、两路舵机排线、OLED 屏幕;
  3. 上电预检:不插主控先接 Type-C,确认电源灯正常点亮,无短路发烫;
  4. 空载测试:插入 STM32 核心板,蓝牙上电配对,串口收发无乱码后再接舵机负载。

三、Keil 代码开发与引脚配置

1. 外设引脚分配总表

表格

外设STM32 引脚功能说明
USART1(蓝牙)PA9(TX)、PA10(RX)与 HC05 蓝牙通信,接收手机下发指令
舵机 1 PWM 信号PA0Servo1 输出,控制第一路舵机
舵机 2 PWM 信号PA1Servo2 输出,控制第二路舵机
I2C OLED 屏幕PB6(SCL)、PB7(SDA)实时显示 Angle1、Angle2 角度值

2. 核心功能代码解析

完整主循环逻辑:串口接收蓝牙字符串指令 → 解析两个角度数值 → 限幅 0~180° → 更新舵机 PWM 输出 + OLED 刷新数值 + 指令回传手机校验

3. 关键底层驱动说明

  1. 串口接收中断驱动:配置 USART1 中断,手机通过蓝牙发送@80,110格式指令,中断缓存完整字符串,接收完成后置Serial_RxFlag标志供主循环解析;
  2. 舵机 PWM 驱动:采用定时器 TIM 生成标准 50Hz PWM(20ms 周期),0.5ms~2.5ms 对应 0~180°,ServoX_SetAngle()函数自动换算角度对应高电平时间;
  3. OLED 显示驱动硬件 IIC 驱动屏幕,封装OLED_ShowNum数字打印函数,指定行、列、数值、显示位数,实时刷新两路舵机角度。

4. 代码调试踩坑解决

  1. 蓝牙串口乱码:确认 HC05 波特率与代码串口配置统一(默认 9600);PCB 蓝牙 TX/RX 交叉接线;
  2. 舵机抖动:增加电源滤波电容,5V 走线加宽,避免大电流干扰串口通信;
  3. OLED 不显示:检查 IIC 引脚 PB6/PB7 接线,代码开启 I2C 外设时钟。

四、整机效果与蓝牙遥控演示

1. 手机蓝牙串口 APP 操作流程

  1. 打开微信小程序(蓝牙串口),搜索并连接本板蓝牙设备;
  2. 发送区输入指令格式@X,X,例如@30,60@80,110,点击发送;
  3. 接收区实时返回Packet:30,60回传信息,验证指令收发正常;截图示例:

2. 硬件运行现象

  1. Type-C 上电,电源 LED 常亮,HC05 蓝牙指示灯闪烁等待配对;
  2. 手机连接蓝牙后,蓝牙指示灯常亮,通信建立;
  3. 下发角度指令后,两路 SG90 舵机平稳转动至对应角度。

五、总结

在这次项目的学习中,对PCB板的制作与焊接调试有了进一步的熟悉,通过吸取之前的经验教训,在焊接的时候严格遵守焊接步骤与方法,让焊接后的成品更美观,后续还会进一步的尝试增加遥感或WiFi模块,让成品的实用性更强。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/26 1:23:40

偏相关系数的计算

下面的内容摘录自《用R探索医药数据科学》专栏文章的部分内容(原文5207字)。 2篇4章5节:分类型变量的Spearman相关分析,偏相关分析和相关图分析 一、Spearman秩相关分析 1、Pearson相关分析和 Spearman秩相关 2、R语言中的Spea…

作者头像 李华
网站建设 2026/6/26 1:22:07

软件部署中的持续交付流水线建设

软件部署中的持续交付流水线建设 在当今快速迭代的软件开发环境中,持续交付(Continuous Delivery, CD)已成为企业提升效率、缩短交付周期的核心实践。通过自动化构建、测试和部署流程,持续交付流水线能够确保软件随时可发布&…

作者头像 李华
网站建设 2026/6/26 1:19:18

windows安装Claude

在Windows中试用PowerShell安装Claude的步骤如下:检查系统要求确保系统为Windows 10 1709及以上版本或Windows 11,且已安装App Installer(包含winget工具)。可通过以下命令验证winget是否可用:winget --version更新win…

作者头像 李华
网站建设 2026/6/26 1:19:02

Vue 2 vs Vue 3:核心特性与差异全解析

目录 一、Vue 2 核心特性 Vue 2 的典型写法(Options API) 二、Vue 3 的核心升级 1. 响应式系统:从 defineProperty 到 Proxy(底层的质变) 2. 组合式 API(Composition API):代码组…

作者头像 李华