帆板控制系统-毕设论文.doc
毕业设计(论文)任务书电子信息工程 系 12 届 应用电子技术 专业毕业设计(论文)任务书毕业设计(论文)题目帆板控制系统课题内容性质理论研究课题来源性质教师收集的结合生产实际的课题论文校内(外)指导教师职 称工作单位及部门联系方式蔺 鹏副教授电子信息工程系Linp210一、题目说明(目的和意义):本系统仿真帆板控制系统。能够手动控制风扇吹动风帆达到要求角度并能实时显示角度;通过预先设定角度控制风扇吹动风帆达到要求角度并能实时显示角度;对风帆达到某个角度后具有声光报警功能。通过本题目的研究和设计,使学生能够对单片机应用系统的设计方法包括总体方案论证,系统硬件设计和系统软件设计有一个整体的认识。一、任务设计并制作一个帆板控制系统,通过对风扇转速的控制,调节风力大小,改变帆板转角,如图1 所示。调节装置键盘数字显示角度检测信号转速控制风扇风力d图1 帆板控制系统示意图二、要求1、基本要求(1)用手转动帆板时,能够数字显示帆板的转角。显示范围为060°,分辨力为2°,绝对误差5°。(2)当间距d=10cm时,通过操作键盘控制风力大小,使帆板转角能够在060°范围内变化,并要求实时显示。(3)当间距d=10cm时,通过操作键盘控制风力大小,使帆板转角稳定在45°±5°范围内。要求控制过程在10秒内完成,实时显示,并有声光提示,以便进行测试。2、发挥部分(1)当间距d=10cm 时,通过键盘设定帆板转角,其范围为060°。要求在5秒内达到设定值,并实时显示。最大误差的绝对值不超过5°。(2)间距d 在715cm范围内任意选择,通过键盘设定帆板转角,范围为060°。要求在5秒内达到设定值,并实时显示。最大误差的绝对值不超过5°。(3)其他0摘 要本系统通过调节风扇风速来实现对帆板转角的控制,使帆板的转角能够随风速变化,并且能快速达到设定角度并保持稳定。主要是以STC89C52RC单片机为主控核心,通过键盘设定帆板角度,再由A/D转换器转换数据送至单片机处理后使系统自动达到设定的角度,最后由液晶显示器来显示系统的所有信息。单片机输出PWM脉冲来控制风扇的风速,通过角度传感器测量帆板的旋转角度并反馈至单片机,采用PID控制算法,使系统实现精确控制,然后微调风速的大小使帆板角度达到设定值并稳定。并且在达到设定范围时进行声光报警提示。通过调试,使各项性能指标均达到设计要求,使最终转角绝对值误差不超过5。关键字:STC89C52RC; 液晶显示; 角度传感器; PID算法; A/D转换器AbstractThe system through the adjustment to achieve the board fan speed control of the angle, make the board of the angle change with the wind speed, and can quickly reach a set Angle and remain stable Main STC89C52 microcontroller as the controller is core the keyboard set the board Angle, and then by the A/D converter conversion of data sent to the SCM processing system after the Angel of automatic reach A set, and finally by LCD monitor to show all of the information system Single chip microcomputer to control PWM pulse output the fan's wind speed, through the measurement of Angle sensor board rotation Angle and feedback to the single chip microcomputer, PID control algorithm, make accurate control system, and the size of the board to fine-tune wind speed to set data and stable Angle. And in reach a set range for sound and light alarm prompt. Through the debugging, make various performance indicators are to meet the design requirements, make the final angle absolute value error is no more than 5 .Key word: STC89C52RC, Liquid crystal display, Angle sensor, PID algorithm , A/D converter 目 录1方案论证与选择11.1 系统的基本组成11.2 各模块方案论证与选择11.2.1 主控制器选择及论证11.2.2 角度监测方案比较21.2.3 风扇控制方案31.2.4 驱动模块的选择31.2.5 显示模块的选择41.2.6 电源模块的选择41.2.7 A/D转换模块的选择41.2.8 语音播放模块51.3 系统各模块的最终方案52系统理论分析与计算62.1 角度测量原理63硬件电路的设计73.1系统硬件的基本组成73.2 各部分硬件电路模块设计73.2.1 主控制电路模块设计73.2.2 角度监测模块电路的设计83.2.3 A/D转换模块电路的设计93.2.4 风扇驱动模块电路的设计93.2.5 键盘控制模块电路的设计93.2.6 LCD显示模块电路的设计103.2.7 声光提示模块电路的设计103.2.8 语音播放模块电路的设计103.2.9 电源控制模块电路的设计114 .软件设计124.1 控制算法124.1.1 定频调宽法124.1.2 积分分离算法124.1.3 遇限削弱积分算法134.2 程序设计思路图134.3 系统软件主流程图135 系统测试仪器15总 结16致 谢17参考文献18附录119附录2191方案论证与选择1.1 系统的基本组成题目要求设计制作一个帆板控制系统,通过对风扇转速的控制,调节风力大小,改变帆板转角。根据题目要求,本系统可以分为控制部分、信号检测部分和电源部分。控制部分则包括显示模块、按键模块、声光报警模块、风扇驱动模块四个基本部分。信号检测部分为角度测量模块(测量帆板的角度)、A/D转换模块。电源部分则给各部分提供电源,系统图如图1.1所示: 图1.1系统总框图 1.2 各模块方案论证与选择1.2.1 主控制器选择及论证方案一:采用FPGA(现场可编程门阵列)作为系统的控制器;将所有的器件集成在一块芯片上,这样外围电路较少,控制板的体积小,稳定性高,扩展性能好;而且FPGA采用并行的输入/输出方式,系统处理速度快,再加上FPGA有方便的开发环境和丰富的开发工具等资源可利用,易于调试;但是FPGA得成本偏高,算术运算能力不强,而本设计系统的设计会用到较多算术运算,所以FPGA的高速处理的优势得不到充分体现。方案二:采用DSP作为控制器。DSP具有强大的控制和信号处理能力,片内具有快速RAM和flash。其次有接口方便、编程方便、稳定性好、精度高等优点。本题主要利用处理器控制风扇的转速,数据处理方面要求不高。 方案三:采用Atmel公司的89系列的单片机作为系统的控制器。单片机控制功能强,软件编程灵活,可用软件较简单的实现逻辑控制,并且其成本低,体积小和功耗低等优点,使其在各个领域中应用广泛;另外,在本设计数据量不大的情况下完全可以完成风扇转速的控制。综合比较,本系统采用方案三。1.2.2 角度监测方案比较方案一:采用角度传感器监测。角度传感器SYD35D4线性度为±1%,旋转扭矩为,分辨率高,最为关键的是它采用滚珠轴承的机械结构方便与帆板轴承相结合测量角度。SYD35D4 有机械寿命长,分辨率高,转动顺滑,动态噪声小的优良性能。且该方案实现较易。方案二:采用倾角传感器监测。倾角传感器通常可以同时监测X轴、Y轴两个方向的倾斜角度,能够精确测量、跟踪倾斜角的大小和变化。但是测量角度时需要将倾角传感器安装在帆板上,增加了整个帆板装置的重量,同时倾角传感器的精度较高,测量时会将噪声信号带入控制系统,影响角度测量的精度。方案三:采用MMA7260重力加速度传感器,由于加速度传感器在静止放置时受到重力作用,因此会有1g的重力加速度。利用这个性质,通过测量重力加速度在加速度传感器的X轴和Y轴上的分量,可以计算出其在垂直平面上的倾斜角度。根据如图1.2所示,有Ax=gsin,Ay=gcos。则=tan即 =arctan().这样,根据以上原理一个2 轴加速度传感器可以测量在X-Y 平面上的倾斜角度。该方案原理简单,操作方便,但使用起来运算量较大,程序较为复杂,对于单片机来说,处理时太慢且复杂。图1.2 加速度传感器角度测量原理综合比较,本系统采用方案一。1.2.3 风扇控制方案方案一:改变励磁电流调速。在这种调速方法中,随着电动机磁通的减小,转矩相应地降低。通常只有在电动机基速以上调速时才采用这种调速方法。 方案二:改变电枢回路电阻调速。这种调速方法为有级调速,转速变化率大,轻载下很难得到低速,效率低,故这种调速方法很少使用。方案三:采用PWM调速。PWM技术实现数字方式控制模拟信号。它的开关频率较高,快速响应特性好,动态抗干扰能力强,产生的数字脉冲信号稳定可靠。通过选用定频调宽法容易用单片机实现对风扇风速稳定、均匀的控制。综合比较,本系统采用方案三。1.2.4 驱动模块的选择方案一:采用ULN2803在输入5V工作电压下可最大驱动电压50V、电流650mA的负载,风扇运行起来稳定,可靠性强。因此可选用ULN2803构成风扇驱动电路。方案二:采用L298N驱动芯片。L298N芯片是较常用的电机驱动芯片。该芯片有两个TTL/CMOS 兼容电平的输入,具有良好的抗干扰性能,可用单片机的I/O口提供信号,其输出的PWM 脉冲控制直流电机,能够对电机转速的上升与下降进行平滑调节,保证调节过程中本身对风扇的影响最低,但是L298N的发热太快不能长时间工作。方案三:采用大功率三极管,二极管,电阻电容等元件。用上述元件搭建两个H桥,通过对各路信号放大来驱动电机,原理简单。但由于放大电路很难做到完全一致,当电机的功率较大时运行起来会不稳定,很难精确控制。 综合比较,本系统采用方案一。1.2.5 显示模块的选择方案一:用LED 显示,优点亮度高、成本低,易于单片机编程,但是显示时占用I/O口多,显示信息量不足。方案二:采用LCD_12864 液晶显示,功耗低、无辐射显示稳定、抗干扰能力强,编程控制简单,使用方便,显示信息能力强等特点,且分行显示能够清晰的看清系统所运行的所有信息。方案三:采用LCD-1602液晶显示,其显示是采用背光照亮,对人眼损害很弱,再次LCD又是一种节能灯,功耗小,使用寿命长等优点,不需要外加蕊片组合,可以直接与单片机连接。单片机可以通过软件编程,来实现对液晶的显示的控制与设定。使用起来十分方便,但是此系统设计显示的内容较多,用LCD1602显示不完整。考虑到本设计的要求,我们选择方案二。1.2.6 电源模块的选择使用交流电220v供电,搭建独立电源模块,经变压器变压后,再用7812、7805芯片进行稳压。5V电源为单片机及其他传感器、显示屏等模块供电。使用220v交流电不仅能保证电量充足,而且相对于干电池有恒定的电压和电流。容易完成本设计的要求。所以我们采用此方案。1.2.7 A/D转换模块的选择方案一:TLC1543美国TI司生产的多通道10位模数转换器。采用串行通信接口,具有输入通道多、性价比高、易于和单片机接口的特点,可广泛应用于各种数据采集系统 ,但其AD转换精度不能满足该系统对帆板角度的准确测量。方案二:采用8位的A/D转换器MAX1113构成A/D转换电路。采用单一的5V电源供电,性价比高、易于与单片机接口连接,但是我们对此芯片原理不够熟悉。方案三:ADC0804是属于连续渐进式(Successive Approximation Method)的A/D转换器,它是8位,即分辨率为1/256,转换值介于0255之间,采用单一的5V电源供电。这类型的A/D转换器除了转换速度快(几十至几百us)、分辨率高外,还有价钱便宜的优点,普遍被应用于微电脑的接口设计上。根据本设计的要求和我们对芯片的熟悉程度,我们最终选用了方案三。1.2.8 语音播放模块方案一:采用ZY1420A语音模块。ZY1420A内部使用ISD1420作为主控芯片,虽然它实现的声音较好,但外围电路复杂,实现的要求高,价格昂贵,性价比不高,对工业来说,不利于产品的大规模生产。方案二:采用APR9600语音录放集成电路。这是一种永久记忆型语音录放电路,可重复录放10万次。该芯片采用多电平直接模拟量存储专利技术,单片电路可录放3260秒,串行控制时可分256段以上,并行控制时最大可分8段。具有价格便宜、多种手动控制方式、分段管理方便、多段控制时电路简单、采样速度及录放音时间可调、每个单键均有开始停止循环多种功能等特点。完全可以满足题目要求。根据本设计的要求,我们最终选用了方案二。1.3 系统各模块的最终方案经过仔细分析和论证,决定了系统各模块的最终方案如下:(1)控制器方案:采用STC89C52单片机控制。(2)电源方案:采用变压器降压、三端稳压器7805、7812稳压后给整个系统提供恒定的电压与电流。(3)风扇驱动方案:采用ULN2803芯片来做驱动电路。(4)角度测量方案:由SYD35D4角度传感器和ADC0804构成角度测量电路。(5)数字显示方案:采用LCD12864液晶显示。(6)键盘模块设计方案:4个独立按键。此外,声光提示模块使用高亮度的LED和蜂鸣器,语音模块使用APR9600语音播报模块,使人们能够清晰的知道角度的位置所在。单片机STC89C52主要用于控制风扇速度、角度传感器数据处理并与用户进行交互,实现了帆板角度计算、风力大小控制和帆板角度值设定并稳定角度、最终进行声光提示、语音播报等功能。2系统理论分析与计算2.1 角度测量原理角度传感器的内部可看作是一个电位器。当它工作时,转轴旋转的角度和电位器的电阻值满足函数关系式,然后将电阻和角度的关系转换成电压和电阻的关系,再通过A/D转换器得到电压数字量,即得到电压数字量与角度的关系式,最后列出与的表格求出角度。3硬件电路的设计3.1系统硬件的基本组成本系统主要由主控制模块、驱动模块、采集模块、显示模块、电源模块组成其结构框图如图3.1所示,几个模块之间相互独立且存在联系,实现信息状态的上传和控制命令的下发。显示按键控制器驱动电路电机传感器 图3.1 系统控制框图3.2 各部分硬件电路模块设计3.2.1 主控制电路模块设计控制器按键风扇驱动电路主控制电路主要有单片机,独立按键等部分组成,通过控制主电路来控制系统的正常运行,从而实现题目的要求。其结构框图和电路图分别如图3.2、图3.3所示。 图3.2 主控电路框图图3.3 主控电路图键盘实现功能:首先,键盘我们选择4个独立按键,S1是状态转换键、S2是加一键、S3是减一键、S4是设定键。通过调节按键来控制电机的转速从而控制风速的大小、风扇的启动与停止以及设定范围内角度的调节。3.2.2 角度监测模块电路的设计角度传感器的内部可看做是一个电位器。测量角度传感器的电压值,再通过A/D转换器得到数字量,最终由与列出的表格求出转角, 如图3.4所示。 图3.4 角度监测电路3.2.3 A/D转换模块电路的设计使用A/D转换器ADC0804构成A/D转换电路。ADC0804使用+5V电源供电,选通通道0输入模拟信号,CS、RD、WR分别和单片机的P2.0、P2.1、P2.2口连接,DB0DB7分别和单片机的P1口的8个引脚连接,如图3.5所示。 图3.5 A/D转换电路3.2.4 风扇驱动模块电路的设计根据题目要求需要用驱动电路驱动风扇,同时风扇需均匀变速使帆板转角在060°范围内均匀、稳定变化。如果保持PV802512E型风扇20V的电源电压,帆板的转角会停止在某角度值而无法实现角度控制。同时ULN2803在输入5V工作电压下可最大驱动电压50V、电流650mA的负载,因此可选用ULN2803构成风扇驱动电路。如图3.6所示,P0.0口输入频率给定的PWM波,输出与公共端接负载(风扇),通过改变PWM波的占空比实现风扇的均匀变速。 图3.6 风扇驱动电路3.2.5 键盘控制模块电路的设计采用独立式按键S1、S2、S3、S4作为单片机的信息输入部件控制。其中S1为状态转换键,S2为角度值加一键,S3为角度值减一键,S4为设定键,其电路如图3.3所示。3.2.6 LCD显示模块电路的设计该显示电路采用LCD12864作为显示器,以串行方式与单片机通信。串行数据输入端SID与P3.3口连接,用于给显示器传送指令和数据;读写允许端CS与P3.2口连接,控制液晶读写数据;串行时钟信号SCLK由P2.4口送入,为传送数据提供时钟信号,如图3.7所示。图3.7 显示电路显示部分用LCD12864来显示系统中所需的信息,如:“帆板控制系统”、“设定状态”、“设定角度”、“检测角度”。从这4行的信息中可以清晰看到本设计所要实现的内容。3.2.7 声光提示模块电路的设计当系统监测到帆板转角达到设定的角度时,单片机P2.3口输出低电平信号,由PNP型三极管驱动扬声器,发出提示声音,同时P3.0口输出低电平信号,使发光二极管D13发光报警。其电路如图3.8所示。 图3.8 声光提示电路3.2.8 语音播放模块电路的设计此模块用APR9600语音芯片,利用并行控制,通过拨动拨码开关S5来控制录放。通过14脚(SP+)输出播放录制的的内容,来达到报警提示目的。其电路图如下图3.9所示:图3.9 语音提示模块3.2.9 电源控制模块电路的设计该电路采用变压器与三端稳压器相结合。使220V电压经变压器变压,降为15V。过整流桥并利用八个容量较大的电容滤波,从而得到较为稳定的直流电压。通过7805、7812型号的三端稳压器稳压之后,输出一个电压为5V、12V,电流为750mA的直流电源。其电路图如下图3.10所示: 图3.10 电源电路图4 .软件设计4.1 控制算法4.1.1 定频调宽法在题目要求为一定间距时,通过操作键盘控制风力大小,使帆板转角在060°范围变化。因此采用PWM调速法中的定频调宽法实现单片机对风扇风速稳定、均匀的控制。定频调宽法中高、低电平时间之和T1+T2=T保持一定,使T1在0T范围内变化。通过按键调节高电平时间变长,低电平时间相应变短,产生的PWM脉冲占空比线性增大,使得风扇从停止状态,然后均匀加速到某个速度,从而实现帆板转角从0°到60°匀速均匀变化;反之按动减1键也可以实现帆板转角从60°到0°匀速变化。4.1.2 积分分离算法图4.1 积分分离法克服积分饱和(a-不采用积分分离法,b-采用积分分离法)根据题目的要求,通过操作键盘控制风力大小,使帆板转角稳定在45°±5°范围内。本设计中控制使用积分分离算法。积分分离算法在控制开始时不进行积分,直至偏差达到一定阈值后才进行积分累计。这样,可以防止开始有过大的控制量,同时在进入饱和后,因积分累计小,也能较快退出,如图4.1所示。因此,假设要求帆板稳定在,现确定一个范围(),调整按键增大PWM波的占空比,逐渐增大风帆的转角,不断将与进行比较,如果<<,表明风帆转角已经达到题目要求的精度范围,保持风扇转速即可,反之亦然。4.1.3 遇限削弱积分算法遇限削弱积分法的基本思想是:一旦控制变量进入饱和区,将只执行削弱积分项的运算而停止进行增大积分项的运算。因此,在控制算法设计中计算角度时,将判断上一时刻的控制量是否已经超出限制范围,如果已超出,那么将根据偏差的符号,判断系统输出是否在超调区,由此决定是否将相应偏差计入积分项,如图4.2所示。图4.2 遇限削弱积分法克服积分饱和4.2 程序设计思路 通过按键控制单片机输出PWM脉冲,经驱动电路ULN2803带动电机的转动与电机的控制,从而控制帆板的旋转的角度,经AD转换芯片将传感器输出的模拟信号量转换成数字信号量,送回到单片机中,与实际角度相比较后,经PID调节输出PWM的脉宽,来控制电机的转速达到调解帆板角度的目的。4.3 系统软件主流程图本系统软件采用模块式设计,思路清楚,易于维护,执行效率高。其主程序流程图如图4.3所示。其中,A/D转换子程序流程图如图a所示(附录1),角度测量子程序流程如图b所示(附录1),定时器中断子程序如图4.4所示,读取键值子程序如图4.5所示。图4.3 主程序流程图 图4.4 定时器中断服务子程序图4.5 读取键值子程序5 系统测试仪器 表1 测试使用的仪器设备序号名称、型号、规格数量1量角器12秒表 精度0.01s13游标卡尺14直流稳压电源1总 结系统以STC89C52RC为控制核心,主要包括主控模块、角度监测模块、风扇驱动模块、A/D转换模块、按键模块、LCD液晶显示模块、声光报警提示模块和电源模块。经测试系统可以完成:人为改变帆板转角,系统能自动监测帆板的转角度数;按键控制风力、系统能自动监测帆板转角;按键控制风力、系统能自动监测稳定的帆板转角(10s内);键盘设定转角,系统能自动监测帆板转角(5s内);间距变化,键盘设定转角,系统能自动监测帆板转角(5s内)这5项的基本要求和发挥部分的功能。 致 谢本论文是在老师的精心指导和悉心关怀下完成,在我的论文完成中有指导老师辛勤的汗水和心血,同时也有我们团队辛勤的劳动成果,他们给我提供了宝贵的建议。从指导老师身上,我不仅学到了扎实、宽广的专业知识,也学到了做人的道理,在此我要向我的指导老师致以最衷心的感谢和深深的敬意。同时,我也要特别感谢的是我们组的组员,他们扎实的专业知识在我们这个设计当中起到了决定性的作用,在论文设计中他们也给我提出了一些重要的意见。在和他们合作完成此系统设计的过程中我了解到了团队合作的重要性。在这三年的学习生活中,得到了许多老师、同学的热情关心和帮助,在此,我向所有关心和帮助过我的老师、同学和朋友表示由衷的谢意! 参考文献1 童诗白,华成英. 模拟电子技术基础M.北京:高等教育出版社,2001年第三版 2 赵燕. 传感器原理及应用M.北京:北京大学出版社,2010年第二版3 全国大学生电子设计竞赛组委会. 第九届全国大学生电子设计竞赛获奖作品选编M. 北京:北京理工大学出版社.2003年1月第一版4先锋工作室编著.单片机程序设计实例.清华大学出版社,2003.15高锋编著.单片微机应用系统设计及实用技术.机械工业出版社,2004.46夏路易,石宗义编著.电路原理图与电路板设计教程.北京希望 电子出版社,2002.67何立民编著.单片机应用系统设计.北京航空航天大学,1990.18尹雪飞,陈克安.集成电路速查大全.西安电子科技大学出版社,1997.10附录1 图a A/D转换子程序图 图b 角度测量子程序附录2:电路原理图A/D主控制电路 A/D转换器 液晶显示电路光提示电路 角度传感器题目: 帆板控制系统原理图日期: 2012035 姓名: 语音播放电路 风扇驱动电路 毕业设计(论文)评语题目 帆板控制系统设计 专业 应用电子技术 班级 姓名 指导教师评语:(根据完成“毕业设计(论文)任务书”规定工作的情况:创新性评价、写作的规范化程度、存在的问题、是否可以提交答辩等。) 指导教师(签名) 年 月 日 答辩委员会(小组)评语:(根据学生答辩回答问题时知识面掌握、逻辑思维努能力、口头表达能力、回答问题的正确性等综合填写) 答辩委员会(小组)负责人(签名) 年 月 日