




已阅读5页,还剩59页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
重庆理工大学毕业论文 数显磁力搅拌器的设计与制作 编号 毕 业 设 计(论文)题目 数显磁力搅拌器的设计与制作 二级学院 应用技术学院 专 业 电气工程及其自动化(电力拖动方向)班 级 112217402 学生姓名 李中志 学号11221740223 指导教师 邱宇 职称 副教授 时 间 目 录摘 要IABSTRACTII1绪论11.1课题背景11.2开发背景11.3选题意义21.4本文的主要内容22系统总体设计32.1系统总方案讨论32.1.1 控制系统方案选择32.1.2 搅拌子驱动方式选择52.2主要芯片选型62.2.1 STC15W4K32S4的主要特性62.2.2 选择STC15W4K32S4的原因73 硬件电路组成93.1 转速检测回路及方案论证93.2 温度检测回路113.3 按键电路113.4 显示电路133.5 单片机及电机供电电源设计133.5.1 元器件的选型144 硬件电路设计154.1 PWM控制原理154.2 H桥原理164.3系统的硬件电路的设计与分析164.4 H桥的驱动电路设计方案174.5主电路设计185机械结构设计205.1机械结构部件组成205.2机械结构总体装配图216系统软件程序设计226.1 主程序及系统初始化模块226.2 变量定义236.3 按键控制部分236.4 温度检测部分246.5显示控制部分246.6定时器部分256.7 PWM部分257系统调试277.1 显示电路277.2 电机部分287.3 A/D部分287.4 按键部分297.5 温度部分297.6 PWM部分307.7 转速部分308 总结329 致谢33参考文献34附录1实物样机36附录2 程序清单38摘 要数显磁力搅拌器是用于液体混合的实验室仪器,其主要用于搅拌或同时加热搅拌低粘稠度的液体或固液混合物。磁力搅拌器的工作原理遵循磁的库仑定律,即两个相隔一定距离的磁体,由于磁磁场的感应效应,它们不需要任何传统机械构件,通过磁体的耦合力,就能把功率从一个磁体传递到另外一个磁体,构成一个非接触传递扭矩机构。因此,本设计对数显磁力搅拌器进行了研究。直流电机作为外部旋转磁场的动力来源,也是目前最常用的手段和方法。对电机的启动、停止和速度调节控制是实现良好搅拌的关键,本设计采用脉宽调制控制电机电枢电压的通断时间来调节电机的转速,并通过光电门传感器检测电机的转速。STC15W4K32S4是本次设计的控制核心,DS18B20温度传感器是本次设计液体检测工具。LCD12864显示屏作为本次设计的显示核心,它能够将搅拌器的实时工作状态进行快速有效的反馈给操作者。关键词:磁力搅拌器; 直流电机; H桥;PWM脉宽调制; DS18B20温度传感器AbstractDigital magnetic stirrer is used for liquid mixture of laboratory equipment, mainly used for mixing or heating and mixing of low viscosity liquid or solid-liquid mixture. The working principle of magnetic stirrer follow magnetic coulombs law, namely two magnets at intervals, due to the induction effect of magnetic field, they do not need any traditional mechanical components, through the bonding force of magnets, can make the power transmitted from a magnet to another magnet, constitute a non-contact transmission torque mechanism. Based on this, the design of digital magnetic stirrer were studied.DC motor as the power source of the external rotating magnetic field, but also the most commonly used means and methods. Of motor start, stop and speed control is the key to the realization of the well stirred, this design adopts the pulse width modulation control on-off time of the motor armature voltage to adjust the motor speed, and through the photoelectric door sensor measuring motor speed. STC15W4K32S4 is the design of the control core. DS18B20 temperature sensor is the design of the liquid testing tool. LCD12864 display as the core of this design, it can be the blender of the real-time operating status of fast and effective feedback to the operator.Key words: Magnetic stirrer; DC motor ; H-bridge ; PWM pulse width modulation; DS18B20 temperature sensorII1绪论1.1课题背景磁力搅拌器是用于液体混合的实验室仪器,主要用于搅拌或同时加热搅拌低粘稠度的液体或固液混合物。磁力搅拌器的工作原理遵循同名磁极相互排斥、异名磁极相互吸引的原理,即两个相隔一定距离的磁体,由于磁场的感应效应,它们不需要任何传统机械结构连接,仅通过磁体的耦合力,就能把功率从一个磁体传递到另外一个磁体,构成一个非接触传递扭矩机构1。工作时通过直流电机带动外部永久磁体进行转动,同时通过磁场耦合原理驱动液体容器内的带磁性的搅拌子进行旋转运动,从而实现将外部旋转动力传递到液体容器内部里的搅拌子,继而实现对高压容器中的液体进行搅拌。因而在工程应用中可实现静密封、耐高压、无泄漏搅拌的目的。配合加热温度控制系统,可以实现不同实验的加热要求并控制搅拌液体的温度,维持实验条件所需的温度条件,从而保证液体混合达到实验需求。电机作为外部旋转磁场的动力来源,对电机的启动、停止和速度调节控制是实现良好搅拌的关键。在小型磁力搅拌器中,通常采用直流电机带动外部磁体旋转形成旋转磁场。随着电力电子技术的发展,对磁力搅拌器的调速逐步从模拟电路实现转变成数字电路,尤其是近几年来单片机技术的成熟及普及,使得磁力搅拌器功能更加多样化,控制技术更加智能化,操作使用更加人性化。1.2开发背景随着各行各业加工工艺的要求提高,传统的桨式搅拌器不能满足现代工艺的要求,必须采用更加先进的磁力搅拌方式。磁力搅拌器依靠同名磁极相互排斥,异名磁极相互吸引的原理,让放在容器里的搅拌子实现无轴旋转,从而带动容器里的液体转动实现搅拌的目的。由于它采用无轴驱动,在许多场合下都能将需要搅拌的液体做到密封,使之不发生泄漏或溢出。所以它能够适应搅拌要求非常苛刻的环境,如搅拌有毒,易燃,易爆等化学物质。如果采用传统搅拌器搅拌以上物质,由于受传动装置的限制不能将搅拌液体做到密封,很有可能会造成有毒、有强腐蚀性的液体溢出,还有可能会将机械传动装置给腐蚀掉,造成实验器材的损坏。因此,本设计在不改变搅拌器驱动电机的电压下采用脉宽调制(PWM)控制电机电枢电压通断的时间来控制电机的转速,从而通过磁力耦合原理控制搅拌子旋转达到调速的目的。1.3选题意义在磁力搅拌器使用上,磁力搅拌技术对各个领域发挥着不可或缺的作用,随着科学技术的发展和改进,更使磁力搅拌器的使用范围得到进一步的扩展,特别是在搅拌有强腐蚀性等常规搅拌器无法搅拌的物质上更能体现出非常可观的优势;在控制系统上,由于需要直流电机旋转带动永久磁铁从而驱动放在液体里面的搅拌子,所以对电机的控制是磁力搅拌器最实质的东西,这个课题的核心问题最终归结于PWM脉宽调制上,PWM脉宽调制在多个领域都有运用,比如灯光的亮度调节,交直流电机的调速等;在市场需求上,由于传统搅拌器不能满足现代加工工艺的需求,从而触发了人们开拓使用磁力搅拌器或者研究更加智能化搅拌器的市场。为了进一步探讨及解决这些问题,我选择了数显磁力搅拌器这个课题。1.4本文的主要内容本次设计通过改变加有电压的滑动变阻器阻值,从而通过单片机自带的A/D端口将其实时电压值读回并存储于单片机内部相应的寄存器中,在输出PWM波时将其调用并与电压最大值进行相除得出PWM的占空比,然后通过单片机的PWM端口输出任意占空比的PWM波,从而控制电枢电压在一定时间范围内的平均值大小以达到数显磁力搅拌器的平稳调速。按键控制搅拌器的正转和反转,温度传感器传回搅拌液体温度,并通过液晶显示屏进行实时显示搅拌器的工作状态。本文主要从控制系统方案的选择,机械结构的设计,硬件的设计,软件设计及调试等几个方面阐述了数显磁力搅拌器,着重论述了调试过程中在硬件及软件上遇到的各种问题并提出了相应的解决方案。2系统总体设计2.1系统总方案讨论2.1.1 控制系统方案选择方案一:模拟式脉宽调制调速2。通过555定时器的无稳态模式产生脉宽可调的PWM波,其波形占空比通过调整滑动变阻器而改变。再将其调制完成的PWM波通过驱动电路及功放电路最后调节电机一端的电位,通过改变加在电机两端的电压来对其电机调速。其原理图如下:图2.1方案一系统结构随着单片机控制技术的发展,对电机的调速控制一般采用单片机作为控制器的数字电路已成为主流,目前运用单片机输出PWM波对直流电机进行调速的方案有以下两种方式:方案二:数字式脉宽调制型非线性DC/DC开关变换3。该方案由单片机产生PWM波通过DC/DC转换器将其电压幅度成倍的转换成搅拌器的额定工作电压,其占空比没有发生任何改变,所以此方案也常被人们采用。其系统结构如下图:单片机电源板AC/DCDC/DC转换器M显示电路按键电路测速模块图2.2方案二系统结构方案三:基于电机驱动和STC15W4K32S4单片机数字式脉宽调制型4。以STC15W系列单片机为控制器来产生PWM脉冲,并通过光耦再将信号传递给电机驱动电路,这里使用光耦的原因是实现电机驱动电路与单片机控制电路的强弱电隔离,避免出现损坏单片机I/O端口。采用4个场效应管构成电机H桥驱动电路,实现对电机正反转的控制,PWM波的占空比控制电机的转速,利用安装在从动齿轮上的叶片和红外传感器构成的计数装置对电机的转速的进行测量,再通过外部旋钮调整电机的转速,按键控制电机启停和正反转。此方案不仅造价便宜,而且有很高的实用价值。其系统框图如下所示:图2.3方案三系统结构方案一通过改变电机电枢电压来实现调速,虽然能够实现对电机的调速,但是它不能实现搅拌器的正反转,且没有显示功能和测速模块。并且这种方案硬件部分复杂,功能单一,不能反应搅拌器的实时工作状况,操作者需要凭经验来判断当前的搅拌速度等情况,此方案操作性差且不安全。方案二可以实现设计目的,但是从经济方面要求的元器件都比较贵重,所以放弃了这个方案。方案三中可以使用外部旋钮调节电机转速,调速方式直观可靠方便。通过AC220V/双DC6V功率为20W的变压器对电压进行变压整流之后,分控制电源和电机驱动电源两个部分,电路中电机驱动电源部分电压为8.5V直接给到电机驱动器,而控制电源部分则通过7805稳压得到安全且稳定的5V直流电源。鉴于以上对三种方案的分析,此次系统设计总方案我采用方案三。2.1.2 搅拌子驱动方式选择方案一: 其结构如下图所示,它采用的驱动方式是直流电机,通过直流电机的转动带动固定在电机上的辅助齿轮,再由辅助齿轮上的永久磁铁通过磁力耦合作用使搅拌子旋转。磁性搅拌子烧杯永久磁铁电机图2.4 磁力搅拌系统结构图方案二: 采用线圈代替永久磁铁,通过改变电流流入和电流流出方向实现磁极的变换。为了旋转速度平滑,线圈数量最好成对使用。NS2134转子线圈图2.5 磁力搅拌器螺旋线圈放置图 图2.6 电流流过螺旋线圈产生磁场 方案一机械结构笨重,需要齿轮传动机构,噪音比较大,分别还需要一个电机和一个电机驱动。由于电机采用垂直安装,制作出来的搅拌器显得比较厚重,这使搅拌器的美观性设计大打折扣。方案二至少需要4组线圈,其线圈控制逻辑跟控制步进电机旋转7类似,按线圈1,2,3,4依次通电后断电可实现正转,反之反转。其转动速度由通断电的频率决定,单位时间内通电次数越多转子转速就越快。其机械结构相比方案一简单了许多,由于省去了电机及齿轮传动机构大大降低了噪音和厚度,用于实验室也比较适合。但由于4组线圈都需要驱动电路,且线圈也都价格比较昂贵。所以我只有放弃方案二,转而选择采用方案一。2.2主要芯片选型2.2.1 STC15W4K32S4的主要特性STC15W4K32S4片内RAM数据存储器可达4K;高速,1个时钟/机器周期速度比传统8051快712倍;供电电源宽电压(2.5V5.5V);具有低功耗设计;不需要外部复位电路和外部晶振电路,内置高可靠复位电路和高精度R/C时钟;I/O口可通过内部寄存器设置成4种模式:弱上拉,强上拉,高阻,开漏;比较器和串口等。STC15W4K32S4系列的单片机内部集成了一组(各自独立6路)增强型带死区控制PWM波形发生器和8路10位A/D转换器端口。PWM波形发生器内部有一个15位的PWM计数器供6路PWM使用,用户可以设置每路PWM的初始电平。此外PWM波形发生器为每路PWM又设计了两个用于控制波形翻转的计数器T1/T2,可以非常灵活的每路PWM的高低电平宽度,从而达到对PWM的占空比以及PWM的输出延迟进行控制的目的。由于6路PWM是各自独立的,且每路PWM的初始状态可以进行设定,所以用户可以将其中的任意两路配合起来使用,即可实现互补对称输出以及死区控制等特殊应用。STC15W4K32S4各个端口可通过寄存器PxM1和PxM0设置成相应的模式,具体设置参数如下表:PxM1PxM0端口模式00准双向口01强推挽输出10高阻输入11开漏输出增强型的PWM波形发生器还设计了对外部异常事件(包括外部端口P2.4的电平异常、比较器比较结果异常)进行监控的功能,可用于紧急关闭PWM输出。PWM波形发生器还可在15位的PWM计数器归零时出发外部事件(ADC转换)。2.2.2 选择STC15W4K32S4的原因STC15W4K32S4内部集成了A/D转换器模块和PWM发生器模块,这使用户可以直接运用STC15W4K32S4的内部资源,因为不需要T0、T1定时器生成PWM波,从而大大节约了单片机的内部资源,提高了程序的运行效率。 图2.7 STC15W4K32S4引脚标注图图2.8 STC15W4K32S4实物图3 硬件电路组成3.1 转速检测回路及方案论证本次设计中选用的直流电机型号为RS550 PH-9V,该电机是10齿,由于电机需要带动永久磁铁旋转,所以需要增加一个辅助齿轮,便于安装永久磁铁。我选用的辅助齿轮为70齿,直径50mm。方案一:采用红外对射光电传感器进行转速测量5。顾名思义它采用红外线对障碍物进行检测,当障碍物经过一次就由光电脉冲转换电路发出一个高电平,再由脉冲整形电路将波形尽可能整形为方波,再通过单片机计数器对脉冲的个数进行计数并通过LCD进行显示。其原理图如下:3.1直流电机红外线对射测转速原理图方案二:采用开关型霍尔传感器进行转速测量6。首先霍尔传感器是通过霍尔效应原理制作而成的一种磁场检测传感器。它通过对磁场强度的检测,当磁场强度大于某值时,传感器输出高电平,当磁场强度低于某值时传感器输出低电平。如下图UGN3040型霍尔传感器,传感器将磁场信号转换成电信号并通过放大电路进行信号放大后,再经脉冲转换电路和脉冲整形电路处理输出脉冲,最后由单片机对脉冲个数进行计数并显示。图3.2霍尔传感器测速结构及原理方案三:采用光电门传感器进行转速测量7。它采用LED发射光源,光敏二极管对发光源进行检测,当光敏二极管导通时,OUT端为低电平;当光敏二极管截止时,OUT端为高平。电机带动码盘切割LED光源时,光敏二极管由导通变为截止,OUT端由低电平便为高电平,且因光敏二极管对光感应非常敏感,当码盘遮住光源时,OUT端能够讯速的进行电平的转换,再由单片机对其进行计数从而实现对电机速度的测量。(a) 光电门传感器测速结构(b)光电门传感器原理图图3.3光电门传感器测速结构(a)及原理图(b)对于器件成本而言,光电测速元件和霍尔测速元件成本都较低,且市面上很容易买到;对于安装难易而言,方案一和方案三机械结构安装都比较简单,只需在转轴上安装一对或多对叶片即可。而方案二一般需要设计专用的附件,需要在叶片上安装小磁铁,且安装复杂,综合成本较高。就本设计而言,搅拌子需要通过永久磁铁耦合才能实现转动,霍尔传感器用在本设计会被外部永久磁铁干扰导致转速测量有很大的误差,以致于不得不采用其它方案。由于我选用的9V直流有刷电机RS550,它的额定转速每秒300转,再通过1:7的减速齿轮后测量的速度就更低,方案一和方案三完全能够胜任测速的要求。但是方案一安装调试比较麻烦。基于以上分析,我选用光电门传感器做为本次设计的转速测量器件。3.2 温度检测回路为了使搅拌溶液温度测量准确,且便于数据传输和转换。本设计我采用DS18B20数字式温度传感器9做为本次的温度检测元件,它采用一线式数据总线传输,不但使电路进一步得到简化,而且在实际电路应用中能做到分布式检测。其接线原理图如下:图3. 4温度传感器3.3 按键电路本次设计键盘电路由4个按键组成,分别实现搅拌器的启动、停止、正转和反转。针对键盘电路我先后做了两个方案,首先采用方案一做调试,但是最后发现会出现按键延迟和按下无反应等情况,所以最终制作出了方案二。方案一:采用STC15W4K32S4单片机的P3端的4个普通I/O口,方案如下图:图3.5 方案一键盘电路方案二:采用STC15W4K32S4单片机的P1端的一个A/D端口扩展为键盘输入10,方案如下图所示:图3.6 方案二键盘电路方案一组成电路比较简单,只需要4个按键即可,需要用到I/O口4个;方案二组成电路相对方案一比较复杂,需要10K电阻4个,1K电阻1个,按键4个,大于47pF无极电容一个,但在I/O口上只需要一个A/D转换输入端口。两套方案按原理都可实现对搅拌器的启停,正反转控制,但是,我在做程序调试的时候,使用方案一会有按下按键有延迟和没有反应等现象。对于这种现象首先对程序精简优化,但是最后发现,是因为DS18B20温度传感器、A/D转换模块、LCD12864显示和PWM模块占用程序时间过多,导致对按键信息扫描响应不过来的情况。最后多次思考决定,采用方案二作为按键电路,采用方案二不仅仅可以实现其按键功能,而且在编写程序是只需调用A/D转换程序,这大大节约程序空间,将电路焊接完毕并通过调试后,按键延时响应和没有反应等现象消失。3.4 显示电路由于搅拌器需要显示的信息比较多,包含了当前温度、转速、旋转方向、PWM占空比等信息,LCD1602很难胜任,更不用说使用七段数码管,所以最后决定使用带中文字库的LCD1286411。原因很简单,能够直观的分辨出显示的内容且有足够的位数。各端口与单片机接线如下图:图3.7 LCD12864显示电路3.5 单片机及电机供电电源设计电源部分是整个系统的重点,能否设计出稳定性好、安全性高、可靠性强的电源是保证整个数显搅拌器系统正常运行的关键。本设计由直流5V做控制器、显示器等的电源,直流8.5V做电机的驱动电源。它们相互独立,互不干扰。具体电路设计如下图:图3.8电源电路3.5.1 元器件的选型对于变压器容量、电容、三端稳压器的最大输出电流等器件的选型是通过单片机、LCD12864、外部滑动变阻器、按键电路、光电测速电路、DS18B20温度传感器、电机驱动电路以及电机等消耗的功耗大小所确定。通过模拟式万用表对整个电路回路的测量得出:流过整个控制回路(不包括电机驱动电路及电机)的电流大小为150mA左右,电压大小为5V。采用三端稳压器78L05显然不合适,因其驱动最大电流仅为100mA。所以,综合考虑此次控制电路三端稳压器采用78M05,它的最大输出电流500mA。再次通过模拟式万用表对电机驱动回路的电流测量发现:流过电机驱动的电流为1.58A左右,电压为8.5V,其功率为13.6W左右。加上控制回路所消耗的功率为15W左右。故变压器我采用220V转双6V容量为20VA的变压器。4 硬件电路设计单片机硬件电路设计12应遵循抗干扰能力强,可靠性高等基本原则。本设计由电源电路、直流电机驱动电路、转速检测电路、搅拌物温度检测电路、LCD12864显示电路、按键电路组成,实现磁力搅拌器的启动、停止、正转、反转、调速。通过温度传感器、光电门传感器检测搅拌液体的实时温度和搅拌器的实时转速,并将磁力搅拌器的工作状态信息显示在12864显示屏。下面是整个系统的原理图:图4.1 电路总设计图4.1 PWM控制原理 PWM控制技术就是对脉冲的宽度进行调制使之获得所需形状和幅值的等效波形。就此次设计而言,它是利用STC15W4K32S4单片机控制PWM模块输出可调脉冲13特点,输出等幅度不同脉冲宽度的高频信号。此次调制比较简单,容易获得,只需将5V电源变为幅度为5V脉冲宽度随外接10K滑动变阻器阻值改变而改变的波形即可。4.2 H桥原理H桥是一个典型的直流电机控制电路14,如下图所示,因其形状和“H”酷似,故而称之为H桥电路。从H桥的原理图可以看出,4个场效应管相当于4个可控开关,它们总是对角线导通,如果设定电流从电机左端流入右端流出为正转,如果左对角线“”的两个场效应管导通,电机正转。如果右对角线“/”的两个场效应管导通,电机反转。图4.2 H桥原理图4.3系统的硬件电路的设计与分析由图4.2 H桥电路发现:图中的二极管在电路中的作用是防止电机产生反向电压时使场效应管烧毁,所以二极管在该电路中起到了一个放电作用,从而避免电源和场效应管受到大电流而损坏。但是不难发现图4.2单片机的输出端直接与MOS管的栅极连接,这样做的结果有可能导致单片机的I/O被烧毁。还有,普通的功率MOS管,栅极的开启电压都比较高,3.3V甚至5V都达不到。MOS管不能完全开启,后果是源漏之间的电流不够大,带负载可能带不动。而信号用MOS管虽然开启电压低,但带负载能力又不强,还是带不动负载。所以需要在上图的基础上添加光电耦合模块,这使单片机的I/O端口和MOS管的栅极相互隔离,不会因为电压过高而烧毁单片机,具体电路如下图:图4.3光耦隔离电路4.4 H桥的驱动电路设计方案对于电机驱动电路的设计方案比较多15,本设计就不再叙述。下面列出了两种电机驱动方案以供选择。方案一:采用集成电机驱动模块L298N16。L298N芯片内部集成了一个大功率H桥,它的工作电压最高可达47V;输出电流最大可达2A;输出功率可达25W。由下图 L298N内部原理图可以看出In1、In2或In3、In4分别在接通与门时,同边的其中一个在通过与门前接了一个非门,这样做的目的是为了防止同边导通从而致使电源正直接与地短接而烧毁。图4.4 L298N内部原理图采用L298N集成芯片构成的电机驱动电路如下图所示。图4.5方案一电机驱动电路方案二:采用MOS开关器件搭建电机H桥驱动电路17。此方案需要N-MOSFET和P-MOSFET各两对增强型场效应管即可完成对电机的控制。图4.6 方案二电机驱动电路方案一采用集成芯片,有利于简化电路,有两个H桥,若在调试过程如果烧毁一个还可利用另外一个做备用;方案二采用分立元件组成,可靠性高,但没有H桥逻辑电路,容易导致H桥同边导通,这样的后果是致使电源正极与电源负极直接导通,如果电源没有短路保护装置有可能直接导致电源被烧毁,如在此基础上加上逻辑电路方案二会很完美,且驱动能力比方案一强。所以,本设计采用方案二做电机驱动方案。4.5主电路设计本次设计中控制电路以STC15W4K32S4为主,由滑动变阻器输入目标转速,然后由A/D转换对滑动变阻器电压采集, 通过对数据的调整和计算后送入PWM模块,通过对PWM模块设置使PWM波输出定频脉冲宽度可通过滑动变阻器调节,然后通过调整给定的PWM信号是PWM1或者PWM2以达到电机正反转的目的。由于STC15W4K32S4单片机可以不要外接晶振电路,由芯片自带内部IRC振荡器,为了整个电路进一步精简,所以主电路没有晶振电路。另外也没有复位电路设计,这些全部都由单片机内部芯片解决。这大大降低了整个系统的故障率,使整个系统稳定性提高。当然也可以外加晶振电路和复位电路,只需将相应的寄存器修改起振输入端口。图4.7单片机控制主电路5机械结构设计数显磁力搅拌器机械结构包括磁力搅拌装置、搅拌罩、用于固定搅拌器搅拌溶液温度测量机构18。对于此次机械结构的设计在开始我准备采用3D打印机打印,但在后来决定采用1.5mm厚度的304不锈钢做钣材,通过激光切割和折弯将钣材变为本次设计的机械结构部件,再通过焊接或者螺栓联结使之组装成搅拌器的机械装置。5.1机械结构部件组成根据对整个数显磁力搅拌器硬件电路的设计最终确定:本设计机械结构由按键、旋钮、LCD显示组合的一个控制面板结构和电机固定结构组成。不锈钢控制面板分别留有LCD12864显示窗、按键和滑动变阻器固定口,它们均通过强化胶联结固定。由于需要考虑电机的扇热问题,除了需要做两个M3孔便于固定电机之外还需要将电机的扇热留出。下面是由SolidWorks画出的整个搅拌器机械结构零件3D图: 图5.1 控制面板和电机固定结构图 图5.2顶部和侧面结构图 图5.3底部和后部结构图5.2机械结构总体装配图装配顾名思义是将整个零部件进行组装,总体装配图如下:图5.4总体装配图6系统软件程序设计系统软件程序设计总体需要做到精简、稳定可靠、程序思路清晰,在不影响系统功能的原则上缩短程序指令条数,尽可能用软件程序代替硬件电路19。6.1 主程序及系统初始化模块初始化按键检测?显示图片及文字NY调用A/D按键子程序Flag_Start=1,启动Flag_Stop=1,停止调用PWM子程序调用旋钮A/D子程序Flag_Foreward = 1;正转Flag_ Reversal = 1;反转Flag_Start=1输出PWM调用子程序调用温度子程序检测当前速度图6.1 程序整体流程图 本设计程序分别由A/D转换部分,PWM波输出部分,显示部分,温度传感器部分,按键控制部分组成。为了调用方便,分别写出各个部分的子程序。其中A/D转换部分、PWM波输出部分由单片机自带功能模块组成,只需选择调用相应寄存器即可完成普通51单片机不能实现的A/D转换、PWM波输出等功能。温度传感器采用数字式DS18B20传感器,显示部分采用型号为12864ZW的液晶显示屏。详细程序流程如图6.1所示。6.2 变量定义定义如下:#define u8 unsigned char #define u16 unsigned intbitflag;/ 用于定时1秒标志u8 T1count=0;/ 用于定时1秒进入中断T1次数u8ADD=0;/ 用于检测速度u16 number;/ 1秒内电机转速float temp;/温度变量float Anjian;/按键变量u8 Speed=;/存放速度变量u8 Dutyfactor=;/存放占空比变量u8 Temperature=;/存放温度变量u8 Voltage=;/存放滑变电压变量6.3 按键控制部分 本设计采用A/D端口P13做按键控制,具体电路图详见图3.6,此方法大大节约了按键扫描时间,只需调用Anjian=GetADCResult(3);当按下不同的按键时,变量Anjian的值不同,由于电压不稳定,所以只能给定一个范围。但是这对实现按键功能没有影响。以下是按键值所定义的具体功能:if(Anjian487 & Anjian600 & Anjian743 & Anjian793)/反转各动作状态位如下:Flag_Start=1;/ 启动动作状态位Flag_Stop=1;/ 停止动作状态位Flag_Reversal = 1;/ 反转动作状态位Flag_Foreward = 1;/ 正转动作状态位6.4 温度检测部分本次用到的温度传感器为DS18B20数字温度传感器,由于它采用单线通信接口,所有数据的传输和转换全部由内部程序完成,无需附加外部元件。这使温度测量更加方便简单。任何东西都是有两面性的,在硬件上给DS18B20数字温度传感器做到了足够的精简,在程序上就变得复杂,如果不按其规则和步骤就会出错,下面是通过验证的正确程序流程图:开始复位DS18B20发读存储器命令返回发跳过ROM命令发温度转换命令延时复位DS18B20将温度转换成BCD码发送温度值,显示温度图6.2 DS18B20程序流程图6.5显示控制部分显示用LCD12864,具体参数设置详见LCD12864使用手册,这里不再叙述。DisplayListChar(0,1,电压:);在LCD12864第一行显示“电压:”DisplayListChar(0,2,温度:);在LCD12864第一行显示“温度:”DisplayListChar(0,3,占空:);在LCD12864第一行显示“占空:”DisplayListChar(0,4,转速:);在LCD12864第一行显示“转速:”具体参数由以下函数显示:WriteDataLCD(Voltagei); /显示电压WriteDataLCD(Temperaturej); /显示温度WriteDataLCD(Dutyfactork); /显示占空WriteDataLCD(Speedl); /显示转速6.6定时器及中断部分在此系统中用到了定时器1,外部中断INT0;外部中断0用于外部光电门转速计数中断;定时器1用于1秒定时。外部中断INT0:IT0 = 1; /设置INT0的中断类型 (1:仅下降沿 0:上升沿和下降沿)EX0 = 1; /使能INT0中断定时器1:AUXR &= 0xBF;/定时器1时钟12T模式TMOD &= 0x0F;/设置定时器模式6.7 PWM部分由于此次用到的STC15W4K32S4单片机集成了6路增强型带死区控制PWM波形发生器,只需修改相关功能寄存器就可实现任意频率,任意占空比的PWM的波形。本次用到以下寄存器:PWM配置寄存器 : PWMCFG,用于设置各路PWM波形输出的初始高低电平。PWM控制寄存器 : PWMCR,用于设置各路PWM的输出使能。PWM计数器 :高字节PWMCH(存放高7位),低字节PWMCL(存放低8位)。PWM时钟选择寄存器 :PWMCKS,系统时钟分频。PWM2T1H及PWM2T1L : 用于控制PWM波形第一次翻转计数。PWM2T2H及PWM2T2L : 用于控制PWM波形第二次翻转计数。PWMCH,PWMCL计数器RPWM时钟匹配周期结束清零匹配匹配T1H,T1LT2H,T2L匹配匹配T1H,T1LT2H,T2L匹配匹配T1H,T1LT2H,T2L翻转翻转翻转翻转翻转翻转周期结束周期结束周期结束图6.3 理想PWM波形发生器框图7系统调试该设计的电路我先后在万用板上焊了三次,第一次焊了一个STC15W4K32S4单片机最小系统作为学习,了解其内部寄存器及使用方法,首先利用单片机内部A/D端口接了一个滑动变阻器做为调速旋钮,第二次在第一次的基础上焊上了一个LED灯珠,用作模拟电机调速,第三次焊上了4个按钮,让搅拌器分别实现启动、停止、正转、反转的功能。系统调试分为硬件调试和软件调试,两者相互制约,缺一不可,这里我就不再分硬件和软件进行阐述,直接写出在做本次设计过程中各个模块出现的问题并以问题出现在哪个模块的方式一一列出。7.1 显示电路LCD12864显示文字或者图片出现显示内容一半正常,另一半出现乱码等现象,经过查寻原因,出现了以下问题:问题1:LCD12864上的接口端子与单片机之间的连接出现短路和接触不良。解决方案:通过万用表检测具体是哪里发生短路和断路。问题2:程序位定义上与实际连接出现错误,导致显示屏无法显示任何信息。解决方案:通过对比程序与实物连线找出错连的部分,或者直接修改位定义程序。问题3:由第一页转换到第二页的时候出现乱码,无法准确显示相应文字和图片。解决方案:通过仔细阅读LCD12864使用说明书发现,切换画面之前需要清屏。才能显示第二页的内容,不然会出现乱码等情况。问题4:在做中文显示的时候有少部分字体不能正确显示,例如“正”字。解决方案:通过程序多次修改及网上资料查询,是因为显示屏自带中文字库个别字型丢失,造成有些字型无法正常显示,为了解决这个漏洞,我采用分辨率为16*16图片形式将字库缺失的字体补上。再通过程序调用该字型即可完成“正”字的正常显示。7.2 电机部分电机型号要与电机驱动能力相匹配才能更好的控制电机调速,但由于开始做调试时器材的局限性,没有DC 6V直流电源,我只能使用手机适配器DC 5V做电机驱动电源,这样导致电机的转速特别低,在通过旋转滑动变阻器时发现,在滑动变阻器旋转一定角度之后电机才开始缓缓旋转。解决方案:针对这一现象查阅资料发现:由于电机启动需要一定的最小启动电流,低于最小启动电流电机是不能启动的。所以,只有当占空比达到一定值才能使电机启动。其最佳的方法是换用与电机相匹配的直流电源供电。7.3 A/D部分在解决了显示问题后,A/D程序是出现问题较多的部分之一。问题一:LCD12864不能正常显示当前的实时电压值。解决方案:造成这个问题的原因有多种。由于A/D转换后的结果是存在单片机内部寄存器ADC_RES 和ADC_RESL 中,无法判断A/D转换是否成功,亦或是A/D转换成功显示部分出现问题。为了检测 A/D转换成功与否,我在P20端口焊接了一个小的LED灯,用作A/D转换与否标志指示。最后发现是由于程序问题,导致A/D程序转换没有成功,经过多次程序修改过后LED灯被点亮,再经过sprintf函数处理并送显,显示屏能正常显示当前的实时电压值。问题二:电压值的计算及变量选择问题。解决方案:寄存器ADC_RES 和ADC_RESL用于存放每次A/D转换后的电压值,ADC_RES存放高8位,ADC_RESL存放低2位,电压值是由10位的二进制组成,由于开始对int型变量和char型变量认识不足,所以使用char型变量存放电压值,导致电压计算出现错值。最后采用(u16)ADC_RES 2) | (ADC_RESL & 3)将ADC_RES 和ADC_RESL的值合并成一个int整型变量。最后通过其值转换为所测电压值,并定义其变量为float浮点变量。问题三:电压值波动较大。解决方案:经分析,产生该现象可能由电压波动和滑动变阻器质量造成。经考虑更换电源成本较大,所以只有选择更换精度较高的滑动变阻器。7.4 按键部分问题一:按下按键后出现延迟或无反应现象。解决方案:经过反复验证发现,按键程序是没有错误的,但在while循环后添加显示程序后按下按键就会出现延迟和按下无响应现象。去掉显示程序后恢复正常现象,后来知道此原因是由于显示程序和按键程序一直运行,没有时间间隔,占用大量时间。导致按键程序响应比较缓慢和没有反应。基于此,我用了两种方法解决该问题,方法一是采用定时器做100微秒扫描一下按键程序;方法二是通过A/D转换作按键输入。经过比较最终决定采用方法二。问题二:在解决了问题一后发现按下按键后无法识别是按下启、停或正、反转。解决方案:分析发现此现象是由于5V电源是不在波动的,而且也没有采用基准电压,这样导致Anjian=GetADCResult(2)在按下按键后其值是波动的,考虑只有4个按键,其值的波动范围再大也不会超过0.5V,此值对应01023中的103,所以只需判断按下按键后对应的Anjian大概范围即可解决这个问题。例如按下启动按键,按理论计算Anjian=GetADCResult(2)=100,现在只需判断Anjian是否满足50Anjian150,如果满足就说明按下了启动按键,其余按键判断也如此,这里就不再一一列出。7.5 温度部分温度部分是本次调试的难点,出现的问题也是最难的部分20。问题一:在接通温度模块时,显示屏瞬间熄灭,断开温度模块时显示模块由初始界面运行,好似单片机复位。解决方案:通过检查温度传感器,发现温度传感器的电源Vcc与接地端被焊反,最后将其修改后显示器正常工作。问题二:DS18B20时序错误,导致温度无任何显示内容。解决方案:由于STC15W4K32S4单片机运算速度是传统51单片机的812倍。所以导致延时程序不准确,进而导致元件的复位、读写时序等出现严重错误。最后通过修改每个延时时间将其放大10倍,通过程序编译下载后发现显示屏有数值显示。但还是不能正常显示当前的实时温度。问题三:用仿真软件proteus进行仿真测试时,通过加减DS18B20模块能够进行温度的检测,但是将程序编译下载到实际电路上时不能正常显示温度,仅显示某个固定值。解决方案:通过阅读DS18B20手册发现工作时序与程序有错误,在读取温度值时,程序没有检测初始化成功与否就直接执行下一语句, 通过这一发现我做了一个判断,当初始化成功后再进行跳过ROM检测和温度转换等操作,否则反馈错误码并通过显示器进行错误显示。7.6 PWM部分STC15W4K32S4单片机PWM模块能实现频率和占空比的修改,对于本次设计只需用到修改占空比即可,其频率为定值。这个部分由于程序调试开始没有示波器,只能通过LED灯珠的亮度观察其占空比,虽然此方法不能具体发现占空比的大小,但还是发现了一些问题。问题1:当旋钮电压值从1.25V慢慢升到5V时可明显观察到灯珠的亮度变强,但是旋钮电压值从0V升到1.25V时其亮度没有发生任何改变。当电压从1.25V减少或增加时,其LED灯珠量度发生跳变,由最亮变为熄灭或由熄灭变最亮。解决方案:通过示波器发现旋钮电压值从0V升到1.25V过程中其占空比为定值,不随电压值改变而改变。当旋钮电压值从1.25V升到5V时其占空比由0升到97.7%。为了进一步分析问题出自哪里,我通过查看A/D模块和PWM模块的使用手册发现:A/D模块采用10位二进制输入,而PWM模块输出采用15位二进制输出,它们的最小分辨率不同,也就是说A/D模块的最大值1023并不是对应PWM模块的最大值,如果用最大值1023对应5伏,那么在PWM模块仅只有156.25毫伏,其数值相差32倍。这也恰恰证明旋钮电压值在1.25V为什么会发生跳变的原因。问题2:通过调节速度旋钮发现速度变化的范围比较窄,没有达到预定的效果。解决方案:由于脉冲的频率过高导致。通过软件调节相应寄存器即可完成脉冲频率的调节
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030年中国直肠灌溉行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030年中国电镀工业园区行业市场深度调研及发展前景展望研究报告
- 2025-2030年中国电子杀虫器行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030年中国电动树篱修剪机行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030年中国物流金融行业市场发展现状分析及发展趋势与投资前景研究报告
- 2025-2030年中国烷基(C1216)二甲基苄基氯化铵行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030年中国滴眼剂行业市场现状供需分析及投资评估规划分析研究报告
- 2025年氨基酸市场现状调研及前景趋势预测报告
- 2025-2030年中国消防建材行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030年中国泡沫混凝土行业市场深度调研及发展趋势与投资前景预测研究报告
- 中职教师数字素养提升策略研究与实践效果分析
- EPC总承包管理实施方案
- 广东省广州市越秀区2023-2024学年五年级下学期数学期末考试试卷(含答案)
- 工程认证背景下软件工程专业实践课程平台研究与建设
- 2024年广东省东莞市事业单位公开招聘教师岗考试题带答案分析
- 浙江开放大学2025年《社区治理》终考测试答案
- 《危险化学品企业动火作业安全管理规定》知识培训
- 2025-2030年中国跨境电商零售行业市场现状分析及竞争格局与投资发展研究报告
- 终止妊娠协议书模板
- 2025年光伏产业技能竞赛理论考试题库(含答案)
- 新能源汽车动力电池维护技巧试题及答案
评论
0/150
提交评论