电赛-风力摆控制系统

风力摆控制系统

  • 摘要
  • 1. 方案论证与比较
    • 1.1. 系统主控芯片选择
    • 1.2. 风力摆动力系统方案选择
    • 1.3. 角度检测方案的选择与论证
    • 1.4. 电机驱动模块的选择与论证
    • 1.5. 算法选择
  • 2. 系统设计
    • 2.1. 系统总体设计
    • 2.2. 模块电路设计
  • 3. 系统理论分析与计算
    • 3.1. 风力摆的运动控制分析
    • 3.2. 系统算法的分析
  • 4. 软件设计
    • 4.1. 程序功能描述与设计思路
    • 4.2. 程序流程图
  • 5. 电路原理图

摘要

本设计由MC9S12XS128MAL单片机控制模块、角度检测模块、人机交互系统以及风力摆机械结构组成的闭环控制系统。由BTN7971驱动12V、1.2A的直流风机作为风力摆的动力源,MMA7361采集风力状态角,单片机处理状态角数据后通过PID调节直流风机控制风力摆,实现在直流风机作为动力控制下快速起摆、画线、恢复静止,画圆的功能。为了使测控系统控制更为精确,在采集数据的过程中采用了非线性误差校正以及卡尔曼滤波等数据处理方法。同时设计中考虑到可能存在的各种干扰因素,采用软硬件结合的抗干扰方法提高系统控制的稳定性。经过反复的测验,该方案完全能够实现题目要求!

关键字:单片机 闭环 风力摆控制系统 卡尔曼滤波

1. 方案论证与比较

1.1. 系统主控芯片选择

方案一:采用AT89C51系列单片机作为控制的核心。51单片机价格便宜,应用广泛,I/O口的设置和使用操作简单。但是51单片机的运行速度过慢,抗静电抗干扰能力弱,内部资源和存储器功能较少,而且无ADC,还需要用外接电路实现AD转换,使硬件电路变得复杂。另外,51单片机完成系统功能较为困难。

方案二:采用MC9S12XS128MAL作为控制核心。MC9S12XS128MAL是Freescale公司生产的16位单片机,储存功能强大,具有丰富的输入/输出端口资源,具有多种寄存器功能,而且端口引脚大多为复用口,具有多功能,所有端口都具有通用I/O口功能。内部本身自带PWM、A/D转换功能,可以直接用,省去了单独做PWM模块和A/D转换模块,节省大量时间。完全能够实现本系统的所有功能。

综合考虑,本系统选择方案二

1.2. 风力摆动力系统方案选择

根据题目要求,用2~4只直流风机,共有一下三种方案选择:

方案一:采用两只风机作为系统动力系统。两只风机并排同向而立,分别固定摆杆两侧,通过控制两个风机转速产生不同风力控装置摆动是激光笔划线画圆。此方案遂犯负载亲,但是在很难控制风力摆的状态修正和制动。

方案二:采用三只风机作为动力系统。三只风机成等边三角形相背而立,互成120度夹角(外角)。此方案相对于方案一在控制风力摆转动过程中状态修正方面有提升,而且对于画圆有一定优势,但是不好掌握相邻风机的推力,在控制系统运动方向难度很大。
方案三:采用四只直流风机作为动力系统。四只风机两两背靠背而立,中间用碳纤维棒将四只风机固定成十字架形状。

综合上述比较分析,考虑到系统的快速工作以及精确控制,本系统采用方案三。

1.3. 角度检测方案的选择与论证

方案一:角位移电位器。角位移电位器属于二位平面内角位移传感器测量摆动时关于静止状态时的偏转角,通过该偏转角控制流风机的状态。但是角位移电位器只能检测出二维平面内的角度变化,不利于检测风力摆的空间位置。

方案二:选用三轴加速度传感器。三周加速度传感器具有体积小和重量轻的特点,可以测得空间加速度,能够全面准确反映物体的运动的空间位置。此方案课精确测量风力摆的当前状态,实现对风力摆的精确控制。

综合考虑,本系统选择方案二。

1.4. 电机驱动模块的选择与论证

方案一:使用L298芯片实现电机驱动。L298N内部包含4通道逻辑驱动电路,及内部含两个H桥的双全桥驱动器,接受TTL逻辑电平信 通过PWM实现直流风机调速。但是L298驱动大功率电机时发热严重易烧毁芯片。

方案二:使用英飞凌的BTN7971驱动芯片。BTN7971是大功率集成半桥驱动芯片,在单一封装中集成了PMOS和NMOS高低侧功率开关以及门驱动器,还集成了逻辑控制电路和一些保护检测功能,能够防止过热、过压、欠压、过流和短路。

综合考虑,本系统选择方案二。

1.5. 算法选择

算法有很多种,它的选择很重要,它决定处理系统的性能质量和可行性。

方案一:自适应算法。自适应过程是一个不断逼近目标的过程。单片机读取传感器采集来的风力摆空间位置来控制风力摆的运动,但是由于该系统变化太快,自适应算法调节方式难以达到系统要求。

方案二:PID算法。在过程控制中,按比例、积分和微分的函数关系,对系统模型进行运算分析,将其运算结果用以输出控制。控制精度高,且算法简单明了。

2. 系统设计

2.1. 系统总体设计

根据上述方案论证,我们最终确定了以MC9S12XS128MAL单片机作为中央处理器,采用型 为MMA7361的模拟加速度陀螺仪检测风力摆的空间位置,使用BTN7971芯片驱动4个大功率直流风机。总体框图如下图2.1所示。

3、 拨码开关

在单片机的PB口接一个拨码开关,实现人机交互功能。当拨动一个值后,系统会切换一个系统模式,完成本系统的全部功能操作。该模块方便选择各种模式。

3. 系统理论分析与计算

3.1. 风力摆的运动控制分析

风力摆采用4只功率为12V、1.2A的大功率直流风机为动力驱动系统。模拟加速度陀螺仪采集风力摆的当前的角度,单片机处理角度信息输出PWM占空比,控制4只风机的工作状态,从而实现对风力摆的控制。

系统主程序流程图如下图所示,进入主程序并初始化后,等待拨码开关的状态执行相应程序,每个程序能完成一项要求,各子模块是独立模块,结构清楚。

5. 电路原理图

电子设计大赛资料分享:
https://pan.baidu.com/s/14qxwGv7Sq6a_jcMT3mNwtw#list/path=%2F

嵌入式基地

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年1月16日
下一篇 2022年1月16日

相关推荐