风力摆控制系统论文

风力摆控制系统论文
风力摆控制系统论文

风力摆控制系统

摘要:本系统采用STM32F103ZET6单片机作为控制核心,通过对置于风力摆上的MPU9150陀螺仪采集的角度进行处理得到角度与风力摆位置的关系,再通过驱动输出PWM波控制轴流风机,使风力摆到达指定的位置,做规定的圆周运动。本系统通过PID调试,测试表明,各项功能已达到或超过本题目要求。

关键词:MPU9150;PID;轴流风机

1.系统方案

本系统主要由主控制器,陀螺仪,电机驱动模块,轴流风机,激光笔组成,下面分别对这几个模块进行选择与论证。

1.1陀螺仪的选择

方案一:MPU6050。 9轴运动处理传感器,它集成了3轴MEMS陀螺仪,3轴MEMS 加速度计,以及一个可扩展的数字数字运动处理器DMP,可用I2C接口连接一个第三方的数字传感器,比如磁力计。MPU-6050对陀螺仪和加速度计分别用了三个16位的ADC,将其测量的模拟量转化为可输出的数字量。一个片上1024字节的FIFO,有助于降低系统功耗。但零飘较严重。

方案二:角度传感器。当连结到RCX上时,轴每转过1/16圈,角度传感器就会计数一次。往一个方向转动时,计数增加,转动方向改变时,计数减少。计数与角度传感器的初始位置有关。当初始化角度传感器时,它的计数值被设置为0。角度传感器一般测静态的角度,倾角用加速度计。明显在本系统中角度传感器不如陀螺仪方便使用。

方案三:MPU9150。MPU-9150 是采用系统级封装 (SiP),集合了两个芯片:MPU-6050 和 3 轴数字罗盘 AK8975,其中 MPU-6050 包含 3 轴陀螺仪、3 轴加速计以及能够处理复杂 9 轴 MotionFusion 算法的板载Digital Motion Processor? (DMP?) 。这款元件集成 9 轴 MotionFusion 算法,能够访问所有内部传感器,以收集全套传感器数据。MPU9150测转角的速度的,可以积分得到转的角度,动态性能好,静态差,零飘基本无,很适合本系统。

综合考虑后决定采用方案三。

1.2轴流风机的选择

方案一:四线可测速、包含温控PWM调速轴流风机。此种轴流风机一般重量较大,启动时间长,虽然风量大但明显不适合本系统的实时检测调整的思路。

方案二:三线可测速轴流风机。此种轴流风机重量较轻,启动时间短,直接接驱动即可对其进行控速,风量也很大,比较符合题目各项要求的时间限制。

综合考虑后决定采用方案二。

1.3轴流风机个数与方位选择

方案一:两个轴流风机。两个轴流风机的摆放有两种方式,背对摆放和呈直角摆放。第一种方式只有两个方向的摆角,而垂直摆放则只有180°的摆角。

方案二:三个轴流风机。三个轴流风机呈等边三角形摆放,虽360°都可以达到,但是每两个轴流风机的夹角是钝角,合成后的力大大减小。

方案三:四个轴流风机。四个轴流风机两两垂直摆放,合力方向遍布360°,且合力的方向方便计算,合力的大小方便控制。

综合考虑后选择方案三。

1.4电机驱动的选择

方案一:ULN2003电机驱动模块。高耐压、大电流复合晶体管IC—ULN2003,ULN2003 是高耐压、大电流复合晶体管阵列,由七个硅NPN 复合晶体管组成。ULN2003 工作电压高,工作电流大,灌电流可达500mA,并且能够在关态时承受50V 的电压,输出还可以在高负载电流并行运行。ULN2003电机驱动模块电路简单,既可控制直流电机又可控制步进电机。由于电流的限制,只能驱动小型电机。方案二:可实现电机正反转及调速,启动性能好,启动转矩大,工作电压可达到36V,可持续工作电流2A,此题中可同时驱动两台直流电机。TLP521-4光隔,L298N 有过电流保护功能,当出现电机卡死时,可以保护电路和电机等。内含两个H 桥的高电压大电流全桥式驱动器,板载5V线性电源输出,纹波小,对单片机毫无干扰。

综合考虑轴流风机的工作电流,决定采用方案二。

2.系统理论分析与计算

2.1PID的原理与运用

PID即比例、积分和微分,比例单元(P)、积分单元(I)和微分单元(D)组成。其输入e (t)与输出u (t)的关系为:

u(t)=kp[e(t)+1/TI∫e(t)dt+TD*de(t)/dt] 积分的上下限分别是0和t 因此它的传递函数为:

G(s)=U(s)/E(s)=kp[1+1/(TI*s)+TD*s]

其中kp为比例系数; TI为积分时间常数; TD为微分时间常数。

本系统中只用到了P和D,即比例和微分。陀螺仪的读出的角度传递给PID 公式,PID公式计算后算出PWM值对电机进行调节。Pitch的返回值对3、4号电机进行调节,roll的返回值对1、2号电机进行调节,这样就可以实现风力摆的360°的摆动。

2.2风力摆系统与其空间模型

风力摆的实际模型如图一所示,其建立的空间模型竖直截面如图二所示,横向截面如图三所示,风力摆空间模型如图四所示。

图一图二

如图二所示,根据直角公式可以得出h、θ与r之间的关系:θ

=h

r,

*

sin

又结构一定时,已知h的值,由角度传感器可以得出θ的值,所以r的值即可求出。

如图一与图三所示,本系统在摆杆的下方放置一十字形的木板平台,在其四

个相互垂直的方向放置四个相同型

号的轴流风机,四个轴流风机面向

外放置,当其一的轴流风机转动时,

摆杆则向其相反的方向摆。例如,

仅仅轴流风机1转动时,摆杆则向

180°的方向摆动。又相邻两个轴流

风机可以通过控制其PWM而得到不

图三同合力F,所以360°的方向都可以得到,在此理论基础上,风力摆在横截面上可以做圆周运动。

理论计算:设轴流风机的风力分别为F1、F2、F3和F4,对V1和V3的合力F 进行分析,F 的大小:2

321

F F

F +=

F 的方向: )arcsin(3

1F F =θ

空间方程建立: 图中θ是陀螺仪与摆杆(z 轴)的夹角,陀螺仪测出的Roll 与Pitch 分别是陀螺仪在xoz 平面的投影,以及陀螺仪在yoz 平面上的夹角;根

据几何推导,我们可以列出方程: 确定θ的值,将陀螺仪测出的Roll 和Pitch 分别代入PID 公式,整定参数,测得电机需要的PWM ,即可做圆周运动;α是电机(或陀螺仪)与Y 轴(0度测试线)的夹角,根据几何推导,我

图四 可以列出以下方程确定以上的α,可以得出Roll 和Pitch 的关系,代入PID 公式,整定参数,测得电机需要的PWM 值,即可按不同角度画直线。 2.3陀螺仪的原理

在3D 图形学中,最常用的旋转表示方法便是四元数和欧拉角,比起矩阵来具有节省存储空间和方便插值的优点,计算公式采用3D 笛卡尔坐标系,定义绕Z 轴、Y 轴、X 轴的旋转角度分别为Yaw 、Pitch 、Roll ,如图五所示, 通过旋转轴和绕该轴旋转的角度可以构造一个四元

)2cos(α=w ;)

cos()2sin(βαx

x =;

)cos()2sin(βαy

y =;)cos()2sin(βαz

z =。其中α是绕旋转轴旋转的角度,

)cos(βx

,)cos(βy

,)cos(βz

为旋转轴在x,y,z 方向的分量(由此确定了旋转轴)。

本系统中根据陀螺仪得到的Pitch 、Roll 来的到风力摆的角度,返回给PID 。

3.总体设计

3.1系统构架与功能

本系统主要由激光笔,轴流风机,L298N电机驱动,矩阵键盘等组成。

STM32F103ZET6接收到陀螺仪收到的欧拉角,再进行PID调节得到PWM,将PWM返回到轴流风机,轴流风机控制转速使风力摆达到不同的角度,陀螺仪实时检测。如图六所示。

图六

3.2硬件电路图

图七为驱动L298N的电路图,图八为MPU9150的电路图。

图五

相关主题
相关文档
最新文档