一. 项目基本信息
项目名称:基于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。然后依次来控制小车自平衡。
项目大概流程图
四. 项目总结及改进
总结:总体完成断断续续,前期没有一个总体的计划。但目的达到了,对涉及到的一些基础知识,如PWM输出,IIC通信时序,uart串口通信,定时器加深理解。
改进:加上之前没实现的功能,通过手机蓝牙控制小车行走。
版权声明:本文为weixin_42149196原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。
