B题)
20150229
B题)
STM32单片机作为控制系统的检测和控制中心,通过4个轴流风
以风力为动力,通过MPU-6050陀螺仪和加速度计实时采集风力
PID算法进行精确调节,通过不断的
本系统能够在较短时间内完成所有指定
PID自动控制,卡尔曼滤波,陀螺仪和加速度计
information of the wind pendulum is acquired through the MPU-6050
and accelerometer, and the algorithm is adopted to adjust the PID
引言 ............................................................................................................................. 1
对题目的理解 .................................................................................................. 1
设计思路及特点 .............................................................................................. 1
方案设计 ..................................................................................................................... 1
方案论证和比较 .............................................................................................. 1
角度测量模块 ....................................................................................... 1
模块 ............................................................................................... 1
电机选择 ............................................................................................... 2
硬质管棒选择 ....................................................................................... 2
系统设计 .......................................................................................................... 2
系统总体设计 ....................................................................................... 2
系统详细框图 ....................................................................................... 2
硬件电路设计 .................................................................................................. 3
控制器电路 ........................................................................................... 3
电机部分 ............................................................................................... 3
角度传感器部分 ................................................................................... 3
电源部分 ............................................................................................... 4
软件部分设计 .................................................................................................. 4
软件组成 ............................................................................................... 4
软件流程 ............................................................................................... 4
设计实现 ..................................................................................................................... 5
角度传感器(陀螺仪和加速度计) .............................................................. 5
风力摆 .............................................................................................................. 5
系统测试 ..................................................................................................................... 5
测试仪器与工具 .............................................................................................. 5
测试方法 .......................................................................................................... 5
数据记录 .......................................................................................................... 5
测试结果 .......................................................................................................... 6
结论 ............................................................................................................................. 6
.........................................................................................................................I
............................................................................................................................... II
1.引言 1.1对题目的理解 我们认为该题就是做一个简易飞行器,精确控制风力摆的运动轨迹,让风力摆能够在风机合成风力的作用下运动。 1.2设计思路及特点 该风力摆始终能够根据给定轨迹周期运动,其原理是四个风机不同速度产生不同大小的风力,依靠四个不同方向的风机所产生不同大小的风力来确定风力摆的运动方向和速度,从而完成要求的运动轨迹。其中,风机转速采用PWM直流斩波的方式来控制。同时,在风机上安装有陀螺仪,构成了主要的反馈通道,在单闭环控制下,控制器根据当前姿态的反馈信号和给定信号计算出偏差,并通过一定的PID算法来控制四个风机转速来控制风力摆的运动。 2.方案设计 2.1方案论证和比较 2.1.1角度测量模块 角度测量模块是该设计中的一个重要部分,其功能是实时检测风力摆的角度和加速度,并将相关参数反馈到控制器。该模块方案比较如下: 方案一:采用角度传感器。其利用磁敏元件非接触地感应磁场强度的变化,实现对角度的测量。但由于其频响特性差,截至频率小,精度差,不宜机械安装。 方案二:采用加速度计和陀螺仪整合在一起的mpu6050数字传感器。本设计中用陀螺仪和加速度计共同控制风力摆的运动姿态。 方案选择:方案一中角度传感器测量精确度低,而方案二整合了加速度计和陀螺仪共同控制风力摆的姿态,更有利于达到系统快速精确性能,故采用方案二。 2.1.2HMI模块 本设计中HMI的功能是输入各种给定参数以及实时显示风力摆携带的激光所画出的图形。该模块方案比较如下: 方案一:采用独立键盘加1602液晶显示屏。该方案原理用法都比较简单,但占用空间大,用途少,灵活性差,1602界面不是很友好。 方案二:采用工控LCD屏。该液晶屏界面可设置为彩色,可触摸,可通过触摸输入所需要的参数,实时显示需要的图形,界面友好,十分便捷。 方案选择: LCD屏方案较方案一带有触摸功能,可以任意输入所需参数,也可以随意切换界面,所显示的界面美观,用法简便,故采用方案二。
2.1.3电机选择 电机是整个方案设计的关键,该设计的唯一动力就是风机风力。该部分方案比较如下: 方案一:轴流风机。该风机直径5-10cm、电压DC 5-12V,电压越大,转速越快,风力越大。但该轴流风机质量大,会直接导致风力不足以带动风力摆运动。 方案二:720空心杯电机。该电机是超强磁空心杯电机,尺寸7mm*20mm,转速高达45000r/min,电压为DC 3.7V。风力大,质量为3g,噪音震动很小。 方案选择:方案二的720空心杯较轴流风机不仅质量轻,转速快,所需电压小,而且噪音震动等很多方面都明显优于轴流风机,故采用方案二。 2.1.4硬质管棒选择 方案一:粗单股导线。粗单股导线可以减少自旋,但该导线易形变,有明显误差。 方案二:碳素纤维杆。由于使用碳纤维,碳素杆高温耐久,而且质轻高强,既能减少自旋,也能减少杆形变带来的误差,提高设计的准确性。 方案选择:方案一中的粗单股导线,由于其易变形等因素,容易产生误差,而方案二中的碳素杆,不仅质轻而且耐久,非常适合本次设计。故采用方案二。 2.2系统设计 2.2.1系统总体设计 经过上述分析论证,最终方案如表1所示: 模块部分 方案选择 单片机 STM32F103ZET6 角度传感器 MPU6050传感器 操作显示 工控LCD屏(可触摸) 电机 720空心杯电机 硬质管棒 碳素纤维杆 电源选择 开关电源 表1 最终方案 2.2.2系统详细框图 确定了系统总体设计方案后,系统的详细设计框图如图1所示。
电源输出3.3V/3.7V/5V姿态检测/角度测量风力摆电机HMI人机交互主控系统I2CPWM 通道UART1PWM1控制器STM32F103ZET6MPU-6050工控可触摸LCD屏电机驱动M1M2M3M4PWM3PWM4PWM2PWM3 图1 系统总体设计框图 2.3硬件电路设计 2.3.1控制器电路 本设计使用的控制器核心为STM32F103ZET6,使用PWM通道输出四路PWM波分别对四个电机进行控制,控制器通过I2C与MPU_6050进行通信,实时监测风力摆运动状态;采用UART1与LCD屏进行通信,实现人机交互。 2.3.2电机部分 该部分主要由空心杯电机和驱动电路组成。利用单MOS管作电机驱动,通过控制单MOS管门极来控制电机启停。根据所选电机额定电流1A,我们选择LR7843作驱动芯片。电机扩展电路和电机驱动原理图分别如图2、图3所示。 STM32最小系统M4.2VR1R2IRLR7843 图2 空心杯电机扩展电路原理图 图3 电机驱动原理图 2.3.3角度传感器部分 MPU-6050传感器集成了三轴陀螺仪和三轴加速度计以及一个可扩展的数字运动处理器DMP。陀螺仪可测范围为±250,±500,±1000,±2000°/秒(dps)。在本设计陀螺仪选择精度为0.1°/秒(dps)。MPU-6050传感器电路如图4所示。
图4 MPU-6050传感器电路 2.3.4电源部分 系统的电源由开关电源(DC 12V 20A)提供,并通过正向低压降稳压器AMS117得到3.3V和5V,分别给单片机和LCD供电;通过升压型直流电源芯片XL6009E1得到4.2V,供给四个风机。 2.4软件部分设计 2.4.1软件组成 该设计的整体程序包括初始化程序、PID算法程序、电机控制程序、MPU_6050检测程序、人机交互程序等部分。 2.4.2软件流程 通过HMI的输入来切换基础部分和发挥部分。程序流程图如下图5所示。 开始系统初始化传感器MPU-6050初始化用户是否有输入?输入风力摆运动轨迹为直线?使风力摆运动轨迹为直线输入风力摆运动轨迹为圆形?NYY使风力摆运动轨迹为圆形输入风力摆刹车命令?NY使风力摆刹车YNN 图5 软件总体程序流程图
3.设计实现 3.1角度传感器(陀螺仪和加速度计) 遇到问题:传感器的数字量输出所含谐波较大造成电机震荡比较严重。 解决方案:采用一定方式的滤波处理。 遇到问题:对传感器传出的数字量进行滤波处理发现会造成延迟现象。 解决方案:选用滤波周期较短的滤波方式或适当增加采样时间。 3.2风力摆 遇到问题:风力摆运动轨迹精度差。 解决方案:一方面对控制器PID算法参数进行进一步优化,另一方面对电机输入输出环节进行PID调节,提高电机的响应速度。 4.系统测试 4.1测试仪器与工具 示波器、万用表、秒表、风力摆方向角度调试用图。 4.2测试方法 使调试用图置于风力摆正下方,风力摆静止时激光正好对应图的圆心。通过人机交互界面观测风力摆姿态信息,并利用秒表计时。 4.3数据记录 对基本要求和发挥部分的测试结果分别如表2和表3所示。 给定值 时间t(s) 实际值(cm) 误差(cm) 基本要求1 L:60 6 62 2 基本要求2 L1:30 6 32.5 2.5 L2:40 7.5 42 2 L3:45 5.5 43 2 L4:30 6.5 32 2 基本要求3 θ=30o、60o、150o 3 75 基本要求4 30o-45o 2-5 表2 基本要求测试结果
发挥部分1 30s内重复次数 圆半径(mm) 7 30 发挥部分2 能否恢复圆周运动 恢复时间(s) 能 2-3s 表3 发挥部分测试结果 创新部分:使用可触摸LCD液晶显示屏构成人机交互模块(HMI)。 4.4测试结果 从数据记录可以看出,、基本要求和发挥部分都满足了设计要求,而且误差不是太高。 5.结论 本次设计过程中,我们完成了基础要求和发挥部分,还进行了人机交互创新。通过这个题目,我们加深了对单闭环反馈系统的理解,这也是我们本次设计的最大收获。该设计稳定性仍有缺漏,精度有待提高,因此我们下一步的努力方向就是通过PID算法调节和硬件上的优化来提高系统稳定性、准确性和快速性。
参考文献 [1]瑞萨开发板R5F100LEA资料,组委会统一下发 [2]彭军 传感器与检测技术 西安电子科技大学出版社,2003年 [3]赵广林 电路设计与制板 电子工业出版社,2005年 [4]王冬来,吕强,刘峰.小型四轴飞行器动力学参数测定方法设计[J].科技导报.2011.第29 卷第36 期:42-45. [5] 蒋庆仙.关于MEMS 惯性传感器的发展及在组合导航中的应用前景[J].测绘06.09:5-8. [6]百度文库、豆丁、道客巴巴等网站
附录 图1 风力摆整体外观图 图2 主控电路实物图 图3 控制器电路原理图