【STM32】【HAL库】平衡小车(PID实战2)(一)硬件设计

概述

平衡车作为经典PID设计项目,非常热门,也非常适合 PID/单片机 初学的项目

没有看起来那么难,愿每个人都可做出自己的平衡车

本系列文章,从硬件到软件,带领大家制作平衡小车

分为三节

  1. 硬件设计
  2. 软件设计
  3. PID调参

本节是硬件设计部分

项目目标

直立,可以在正常程度的干扰下保持不倒

在保持直立的同时,小车接近静止,尽量不左右旋转

原理图

分析

想要实现平衡小车

需要:

  1. 主控部分(用于计算PID)
  2. 传感器部分(获取当前的姿态,和两个电机的转速)
  3. 执行器部分(电机驱动)
  4. 电机和支架

电机和支架选用大鱼电子的平衡车底盘

电机也自带霍尔编码器和减速机构(保证扭矩可以让小车平衡)

传送门

传感器部分

姿态传感器

姿态传感器选用MPU6050

内含DMP,可以节约很多主控的运算压力

价格较低(8r)

电路图参照数据手册提供的电路

详情看这篇博客,传送门

主芯片部分

请添加图片描述

外部接口

在这里插入图片描述

电源滤波

在这里插入图片描述

I2C上拉

在这里插入图片描述

编码器

编码器是电机自带的,

是AB项15线(我买的版本)霍尔编码器

这边用PH2.0 6P的排线链接起来就行了

在这里插入图片描述

执行器部分

需要两路电机驱动

这边选用的是L298n

主芯片和电源滤波[
在这里插入图片描述

反电动势过滤,避免电机的反电动势给系统造成损害

在这里插入图片描述

通过PH 2.0 6P输出给电机

在这里插入图片描述

主控部分

整个项目所需要的运算速度和RAM不需要很大

需要:

3-4个定时器(2个用于读取编码器数据,1个用于发出PWM控制电机,1个用于产生中断计算PID,PWM生成和定时器中断可以使用同一个定时器)

硬件I2C(软件也行,就是2个GPIO口)(用于与MPU6050通信)

指示灯(GPIO)

选择的芯片是STM32C6T6,原理图在立创上没找到,因此使用C8T6的原理图和封装,管脚是一样的

主芯片

在这里插入图片描述

其他必备的电路

在这里插入图片描述

按键和LED

在这里插入图片描述

电源

系统输入是DC 12V

L298n需要5V供电(使用 78M05)

stm32和编码器需要3.3V供电,电流很小,LDO(AMS1117)即可

5V

在这里插入图片描述

3.3V

在这里插入图片描述

输入

在这里插入图片描述

其他接口

留出一个可以与nrf24l01模块通信的接口

在这里插入图片描述

PCB

全貌

预留螺丝孔是基于平衡车底盘

在这里插入图片描述

在这里插入图片描述

MPU6050

作为姿态传感器,放置时要尽量接近整个PCB(小车)的中心位置

将其他附属元件以此为中心排列即可

在这里插入图片描述

电机驱动

电机驱动部分建议与控制部分的距离拉开来,避免产生干扰

在这里插入图片描述

焊接

对于MPU6050建议使用加热台或者热风枪焊接,这个芯片对温度很敏感,建议不要长时间加热

其他贴片元件可以随意,但千万注意虚焊和短路问题

技术实在不达标的可以选择SMT,嘉立创的服务还是可以的

成品

立创

百度网盘

  • 6
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值