风力摆控制系统-论文最终版
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
风力摆控制系统-论文最终版
2015年全国大学生电子设计竞赛(瑞萨杯)
风力摆控制系统(B题)
2015年8月15日
本文论述了风力摆系统的工作原理和设计思路。系统采用STM32F103单片机为主要控制
系统,用角位移传感器mpu-6050采集到风力摆的摆头的角度及位置,通过I2C总线传
输发送到主控系统中,采用lcd12864显示采集到的信息,通过PID进行数据处理,产生
相应的PWM信号,发送到相应的直流风机,控制直流风机实现自由摆动,从而画出直线、圆等轨迹。
关键词:STM32F103单片机;角位移传感器mpu-6050;PID算法
摘要 .................................................................................................................................................. I 目
录 ................................................................................................................................................. II
一、方案设计与论证 (1)
1.1方案比较与选择 (1)
1.1.1控制器模块比较与选择 (1)
1.1.2角度传感器模块比较与选择 (1)
1.1.3驱动模块的比较与选择 (1)
1.2系统最终方案选择 (1)
二、测控方法分析与论证 (2)
2.1风力摆状态测量分析 (2)
2.2运动控制 (2)
2.2.1 电机的比较与选择 (2)
2.2.2控制原理和计算公式 (2)
三、系统设计与分析 (3)
3.1主要电路设计 (3)
3.1.1 STM32F103单片机最小系统电路 (3)
3.1.2电源模块: (4)
3.1.3驱动模块: (4)
3.1.4陀螺仪模块 (4)
3.1.5系统整体电路原理图 (4)
3.2 软件程序设计 (4)
3.2.1程序功能描述与设计思路 (4)
3.2.2程序流程图 (4)
3.2.3程序设计 (5)
四、测试方案与测试结果 (5)
4.1测试方案 (5)
4.2测试仪器 (5)
4.3 测试结果及分析 (5)
4.3.1测试结果(数据) (5)
4.3.2测试分析与结论 (6)
五、总结 (6)
参考文献 (7)
附录一电路原理图 (8)
附录二程序流程图 (9)
附录三部分程序 (10)
附录四元器件清单 (11)
一、方案设计与论证
1.1方案比较与选择
1.1.1控制器模块比较与选择
方案一:采用STC89C51单片机作为控制器。STC89C51价格低廉,结构简单,且资料丰富;但是51单片机系统资源有限,8位控制器,运算能力有限,无法达到较高的精度,需要外
接大量外围电路,增加了系统复杂度,达不到系统要求。
方案二:采用MSP430G2553单片机作为系统控制器。MSP430G2553单片机内部集成精
度高,是16位单片机,但其外部接口较少,运算速度相对较慢,达不到要求。
方案三:采用STM32F103单片机作为系统控制器。STM32F103单片机是32位单片机,内部及程度高,拥有大量外部接口,运算速度高,能够满足题中对数据的快速采集和处理。
综合以上三种方案,我们选择方案三中的STM32F103单片机。
1.1.2角度传感器模块比较与选择
方案一:采用编码器根据脉冲数计算出角度,但是编码器体积较大,安装不方便,有突变现象,容易导致计算错误,故不能满足题目要求。
方案二:采用ENC陀螺仪,ENC陀螺仪能输出一个和角速度成正比的模拟电压信号,响
应速度快,驱动电压和功耗较低。但是容易发生温漂,噪声较大,稳定性较差。
方案三:采用MPU-6050三维角度传感器,MPU-6050集成了3轴陀螺仪,3轴加速度计,以及一个可扩展的数字运动处理器DMP,可输出数字量,稳定性极高,测量精度高。
综合比较以上方案,我们选择方案三中的MPU-6050传感器作为系统的角度传感器。
1.1.3驱动模块的比较与选择
方案一:采用L298驱动,L298是专用驱动集成电路,属于H桥集成电路,内部包含4
通道逻辑驱动电路。但其输出电流不能超过4A,比较容易发热,不能符合题目的较大电流。
方案二:采用互补硅功率达林顿管驱动,采用该方法电路连接比较简单,稳定性好,成本低廉,但不足之处是由于使用分立元件,反应速度较慢不能题目对轴流风机快速反应的要求。
方案三:采用电子调速器驱动,它根据控制信号调节电动机的转速,操作方便,具有过温、过压、欠压、过流及短路保护的功能。具有极好的驱动能力,反应灵敏,能够很好的满足题目的要求。
综合以上三种方案,我们选择方案三中的电子调速器驱动。
1.2系统最终方案选择
其中error为摆杆的角度差,set_angle对应摆杆平衡时的角度值,anggle_one对应摆杆当前的角度值。
up=kp?error (2)
kp为比例调节系数,通过公式可以看出增大kp可知角度差的作用加强,可加强系统的强硬速度,使摆杆的迅速达到直立的状态。
ud=kd?(angleone-anggle_one_old)(3)
anggle_one_old对应摆杆上一次采集到的角度值。kd为微分调节系数,
angleone-anggle_one_old对应角度的变化值,因此可知,调节kd可以改善系统的动态性能。
pwm=up-ud (4)
把 PWM的值给电机即可改变电机的转速,使摆杆的角度改变。最终实现摆杆的站直并稳定。
三、系统设计与分析
3.1主要电路设计
3.1.1 STM32F103单片机最小系统电路
图3.1 STM32F103单片机最小系统
3.1.2电源模块:
图3.2电源模块电路图
3.1.3驱动模块:
图3.3驱动模块电路图
3.1.4陀螺仪模块见附录一图1-1。 3.1.5系统整体电路原理图
见附录一图1-2。
3.2 软件程序设计
3.2.1程序功能描述与设计思路