STM32控制的风力摆系统:PID优化与人机交互

需积分: 12 24 下载量 77 浏览量 更新于2024-09-09 收藏 184KB PDF 举报
"2015年大学生电子设计大赛的控制B题是关于风力摆的控制系统设计,利用STM32单片机、MPU6050姿态采集模块和PID算法来实现风力摆的精准控制,具备画线、画圆及抗风干扰功能,并具有良好的人机交互界面。" 在2015年的大学生电子设计大赛中,控制B题的项目是风力摆的设计。这个系统是一个闭环控制系统,主要由STM32单片机控制模块、姿态采集模块(使用MPU6050)、风力摆模块、液晶显示模块、人机交互系统以及风力摆的机械结构构成。其核心功能是通过精确的PID算法来调整直流风机的转速,从而控制风力摆的运动状态。 MPU6050传感器负责实时采集风力摆的姿态角数据,这些数据经过STM32单片机处理后,通过调整PWM波形的占空比来控制风机转速。这样的设计使得风力摆能够在直流风机的动力下快速起摆、画线和恢复静止,同时具备画圆的能力,即使受到风力干扰也能迅速恢复画圆状态,表现出良好的鲁棒性。 人机交互方面,系统设置了按键输入和液晶显示屏,用户可以通过按键设定各种参数和选择不同的测试模式,所有信息都会在液晶屏上清晰显示,体现了系统的智能化和快速响应特性。 在系统设计方案中,经过对比和论证,最终选择了采用4只直流风机的方案。这种方案虽然风力摆的负载最大,但因为风机朝向顺时针排列,能更精确地控制风力摆的状态,同时提供足够的动力。电源方案上,为了避免风机工作时产生的纹波和反电压影响单片机,采用了双电源供电,将风机驱动电源和控制电源分开,确保了系统的稳定运行。 这个风力摆控制系统展现了高级的控制理论和技术应用,包括PID控制策略、传感器技术以及有效的电源管理,是一次成功的结合理论与实践的电子设计挑战。