基于STM32f103简单自平衡小车项目总结

一. 项目基本信息

项目名称:基于STM32f103简单自平衡小车

项目完成时间:2018.9.20——2018.10.20

项目类别:自动控制类

项目总体概述:

          这个项目是我在入门嵌入式做的第一个项目,是在看完原子哥的视频后,为了巩固和连接起来这些知识点做的,做的不是很好。此次项目主要涉及到嵌入式方面的的基础知识,如PWM输出,IIC通信时序,uart串口通信,定时器。核心部分是用MPU6050来读取平衡角度以及平衡角速度,通过PID来处理得到的数据使小车实现自平衡。

二 .项目完成情况

项目目标:1.通过PID调节使小车实现自平衡

                  2.通过手机蓝牙控制小车行走      

实际完成情况:实现了小车的自平衡,实现通过手机蓝牙和开发板进行通信。由于当时时间与能力问题未能实现通过蓝牙来控制小车行走。

三 .项目完成过程

  • 项目经历:

       1.实现了PWM控制小车加速减速,前进后退。

       2.然后学习了定时器的编码器模式配置。通过编码器读取小车速度。

       3.按照计划应该是学习IIC通信时序用这来驱动MPU6050,但是出于好奇先玩了MCU与手机上的蓝牙串口进行聊天(只能英文)。

       4.了解MPU6050的工作原理,以及如何使用它为我所用。了解了之后发现要驱动它(用它)首先得学会用IIC来控制它。所以也就学习了IIC的通信原理以及通信时序。并完成对MPU6050的驱动,及能通过它得到三轴加速度,温度和三轴角度。里面包含了FIFO,所以对FIFO有大概的了解。

       5.准备工作做完后,有了数据。现在就开始处理数据来控制小车。用到了PID(比例-积分-微分控制)。就通过平衡小车之家的资料大概了解了PID。然后依次来控制小车自平衡。

  • 项目大概流程图

基于STM32f103简单自平衡小车项目总结_第1张图片

四. 项目总结及改进

总结:总体完成断断续续,前期没有一个总体的计划。但目的达到了,对涉及到的一些基础知识,如PWM输出,IIC通信时序,uart串口通信,定时器加深理解。

改进:加上之前没实现的功能,通过手机蓝牙控制小车行走。

 

 

 

你可能感兴趣的:(STM32)