帆板控制系统题目:帆板与控制系统组员:指导老师:时间:2014. 8. 11摘要随着社会的发展,智能化已经成为现代化产品发展的新趋势,帆板角度控制系统成为测量风力大小的产品,即可以节约电能,又可以把测量风力大小的设备向智能化产品方向过渡。
本系统采用SCT89C51单片机作为控制核心,利用角度传感器ADXL335、电机驱动L298N、液晶显示、键盘控制、声光报警等多个模块实现帆板控制系统。
安置在帆板上的角度传感器将检测信号通过AD转换后传送给单片机控制系统,计算出帆板旋转角度,并由单片机控制液晶进行信息显示。
帆板旋转角度可通过键盘设置风力等级,由单片机通过PWM方式驱动直流电机运转进行调速。
配合角度传感器可以实时调节电机转速,进而带动风扇调整帆板转角。
测试结果证明,帆板控制系统运行稳定可靠,可以准确快速地调整帆板角度,液晶显示内容直观。
目录第一章前言 (1)第二章系统整体分析 (2)方案的论证 (2)输入模块的选择 (2)系统的整体 (4)第三章硬件电路 (6)按键电路 (6)主控电路 (6)振荡电路 (6)复位电路 (7)风扇控制电路 (7)显示电路 (8)硬件系统 (9)第四章软件系统 (10)控制算法 (10)角度测量原理 (10)KEIL简介 (10)Proteus简介 (10)软件设计 (11)第五章仿真与调试 (12)仿真 (12)测量 (13)第六章总结 (18)附录 (19)第一章前言随着科学技术的飞速发展,人们生活水平的不断提高,单片机控制成为了人们追求的目标之一,它所给人类带来的方便是不可否定的,但人们对它的要求越来越高,一切向着数字化控制,智能化控制,人性化的方向发展。
现代社会对各种信息的准确性也有了更高的要求,自动检测、自动控制技术显露出非凡的能力。
对于像帆板这样的自动平衡调节系统在机械、机器人平衡运动以及生活、军事、工业生产的控制和研究中都有着不可磨灭的作用和地位。
在本设计中,首先选择了合适的方案并进行仿真,在实现仿真后进行了电路的得连接及调试。
本系统设计了基于51系列的SCT89S51处理器的帆板控制系统。
该系统是通过PWM波控制永磁式直流电机的转速来改变风扇的风力,使得帆板的受力发生变化控制其竖直方向的夹角。
使用角度传感器ADXL335采集帆板的角度模拟量,数据通过ADC0809模数转换,将转换后的数据送给处理器,通过一系列的数据处理将其角度用LCD1602显示输出;该帆板控制系统组成虽然简单,但是在设计方面应用了好多领域的知识,如A/D数模转换技术,单片机C编程,直流电机驱动模块,直流稳压电源,角度传感器数据采集等。
、第二章系统整体分析本课题要求设计并制作一个帆板控制系统,通过对风扇转速的控制,调节风力大小,改变帆板转角θ。
根据对题目的分析,得到初步的方案,系统总体框图如下所示:图1 总框图总体方案的描述:本系统设计由输入、控制器、输出三部分组成。
输入由按键部分组成,通过按键产生信号,并将得到的信号以数字信号送给控制器处理;控制器的功能是处理输入部分传来的数字信号并控制输出部分;输出部分显示帆板角度。
方案的论证本系统要求帆板角度能够在0—60转动,在45实现报警并且误差不超过5,因此需要选择稳定的器件组合。
输入模块的选择方案一采用独立键盘。
多个使用时,线路连接不便,操作繁琐。
方案二采用距阵式键盘,可输入的值比较多,可设定的功能也多。
在本系统中需要四个按键,系统选择了第一种方案。
主控模块方案一采用可编程的门阵列FPGA作为控制器,它不受接触器和I/O端口的限制,适合构成复杂的逻辑电路,但其信号延迟时间不确定,编程数据存储器为SRAM,断电后数据立即丢失。
方案二采用SCT89C51作为控制器,51单片机使用简单,编程灵活,且比较熟悉。
综上选用方案二显示模块方案一采用LED数码管显示。
数码管显示控制简单调试也方便,但是显示方式单一,只能显示单一齐段数值,有些字符信息难以显示。
方案二采用液晶模块LCD1602显示。
可以显示数字,字符等,显示内容丰富。
并且系统体积紧凑、显示界面友好等特点。
综上,选用LCD1602显示系统。
角度测量模块方案一采用KM 741磁阻式角度传感器测量帆板的角度,然后通过无线发射系统把测量的角度发送给控制系统,但需外加侧场合信号调理芯片构成的电压输出式角度传感器UZ9000/UZ9001才能输出数字信号。
方案二采用ADXL335 ,它可以测量倾斜检测应用中的静态动力加速度,以及运动、冲击或振动导致的动态加速度,且低功耗。
综上所述选择方案二风扇驱动模块方案一采用继电器与半导体功率管器件组合的驱动电路方案二采用L298N集成H桥芯片。
在L298N集成芯片处中集成了两套H桥电路,可直接驱动两路直流电机,利用单片机产生的PWM信号,可方便地进行电机调速。
方案三用ULN2003功率放大器件。
ULN2003 是高耐压、大电流达林顿陈列,由七个硅NPN 达林顿数码管组成。
通过使用不同的放大电路和不同参数的器件,可达到不同的放大的要求,放大后能得到较大的功率。
本系统设计采用方案二。
帆板的设计方案与选择方案一采用电路版作为帆板。
电路版在帆板的体积稍大一点时,考虑到风力的大小和自身重力,不宜采用。
方案二采用泡沫重量小,很容易让使帆板转动从而满足设计所需要的角度,但他的稳定性不高,干扰成分太多。
方案三采用硬纸板作为帆板。
硬纸板的稳定性好,抗干扰能力强,受干扰的成分叫小且经济。
综上所述选用方案三。
系统的整体经过方案的对比分析最终确定的系统框图如图1所示,通过滑动变阻器给定一个预设角度,ADC与单片机相连,单片机驱动液晶显示、控制电器驱动来改变风速,从而改变帆板的角度,角度传感器把此时的角度通过ADC反馈给单片机。
图2 系统框图第三章硬件电路本系统采用SCT89C52单片机作为控制核心,利用角度传感器ADXL335、电机驱动L298、液晶显示、键盘控制、声光报警等多个模块实现帆板控制系统。
按键电路通过按S3键让风扇启动,S2键加速,S1键减速。
改变风扇风力的大小改变帆板的角度。
P3.0P3.1s1s2A0s3图3 按键电路主控电路单片机子系统由单片机AT89C52、复位电路、时钟电路组成。
振荡电路振荡电路的输入端为引脚XTAL1,输出端为引脚XTAL2。
通过这两个引脚在芯片外连接石英晶体振荡器和两只电容器构成振荡电路,图3 振荡电路复位电路80C51共有上电复位、按键复位电路和按键脉冲复位3种基本复位电路。
上电复位是通过电容充电来实现的,本设计采用比较简单的上电复位方式图4 复位电路风扇控制电路风扇控制电路主要采用L298N,通过单片机I/O输出PWM波,通过改变PWM 波的占空比改变风扇的转速,还可以实现对电机进行正反转,停止的操作,输入引脚与输出引脚的逻辑关系见表1。
EA IN1IN2运转状态0××停止110正转101反转111立停100停止表1在试验中采用了pwm波接EA端控制驱动电路的运转,IN1接高电平,IN2接地,实现正转。
图5 风扇转动电路图5是L298模块驱动电路图,在这个系统只涉及一个电机,所以图3中的EN B、IN3、IN4、OUT3、OUT4、SENB不需要接入电路中。
其原理就是开关管在一个周期内的导通时间为t,周期为T,则电机两端的平均电压为U=Vcc*(t/T)=a Vcc。
其中a=t/T(占空比),Vcc是电源电压。
电机的转速与电机两端的电压成比例,而电机两端的电压与占空比成正比,因此电机转速与占空比成正比例,占空比比例越大,电机转的越快。
这就是我们常说的PWM调速。
显示电路显示电路八位数据双向线D0—D7接单片机的P0口,RS为寄存器选择,高电平择数据寄存器,低电平选择指令寄存器接;R/W为读写选择,高电平进行读操作,低电平进行写操作;E为使能端。
图6 显示电路硬件系统帆板控制系统是由角度传感器ADXL335,L298驱动模块,STC89C52,LCD显示以及键盘等硬件系统组成。
角度传感器可以实现角度的采集,这样就能通过ADC0809来实现AD转换,通过单片机的控制使得LCD能够显示当前的角度。
L298驱动模块是通过PWM波实现占空比的转换,以便控制风扇的风速控制,风扇吹动帆板转动,建立了角度与占空比的关系。
图7 系统原理图第四章软件系统控制算法本设计通过单片机输出占空比可调的PWM波完成对风扇转速的控制,假设风帆设定转角A,当前转角大于A时,控制调制脉冲低电平延时变长,高电平变短,使PWM波的占空比减小,从而减缓风速。
反之,当转角小于A度时,则高电平时延变长。
直到设定转角等于当前转角。
从而实现了脉宽调制,完成风速控制。
角度测量原理风扇吹动帆板转动,产生帆板角度变化,利用ADXL335数字加速度传感器测出三维坐标x 、y 、z的变化,将加速度传感器固定在帆板上,从而通过固定X,利用Y 、Z的关系求出角度。
角度θ=[*(y-z)]/。
角度的测量范围是0—90°,可以满足系统要求。
软件简介KEIL简介KEIL C51是51系列单片机的软件开发系统,与汇编语言相比,C语言在不仅语句简单灵活,而且编写的函数模块可移植性强[8],使用方便。
在使用时先创建一个工程,然后添加文件并编写程序,编好后再编译调试产生二进制文件(.HEX)。
Proteus简介Proteus软件不但有原理布图、PCB自动或人工布线及电路仿真的功能,而且它的电路仿真是互动的,可以根据仿真实时观察到得现象验证设计的正确性及准确性并及时改变程序代码、原理图连接以及元件属性等。
它还能配合系统配置的虚拟仪器来显示和输出[9],效果很好。
适合本设计所用的51系列CPU的实时仿真及开发应用,使用时先画好电路原理图,再将二进制文件(.HEX)导入单片机中进行仿真,可以实时的修改程序和电路图。
软件设计本系统所用软件程序所采用的语言是C语言。
首先使系统的每一部分初始化,风扇转速的初始化通过数模转化后传递给单片机单片机输出pwm波形来控制风扇的转速,风扇不同的转速对应帆板不同的角度值,站在帆板上的角度传感器通过算法计算出帆板角度,同时,反馈给单片机在显示屏上显示角度大小。
通过按键调节风力的大小来控制帆板的角度从而达到实验的目的。
图8 主程序流程图第五章仿真与调试在Proteus环境下仿真了整体电路,但由于不能在此情况下不能仿真角度传感器,智能通过风扇的转速来对应角度,为了使实验达到预期目的我们也做了大量的测量来调试电路仿真本系统使用Proteus 和KEIL软件进行仿真。
其中软件的编写采用C语言,并用KEIL 软件来调试程序,当编译正确后可产生.hex 可执行文件;最后将.hex导入用Proteus 软件已画好的原理图中来仿真结果。