基于PWM的按摩机传动控制电路设计_第1页
基于PWM的按摩机传动控制电路设计_第2页
基于PWM的按摩机传动控制电路设计_第3页
基于PWM的按摩机传动控制电路设计_第4页
基于PWM的按摩机传动控制电路设计_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘 要本设计在描述按摩机功能的基础上,完成了一个基于 PWM(脉冲宽度调制)调速的按摩机传动控制系统电路的设计。本设计以单片机技术和直流电机 PWM 调速技术为基础提出了控制系统框架和具体设计技术方案,从硬件电路方面阐述了控制系统的总体实现,结合硬件提出软件设计思想,利用汇编语言将之实现,并利用按键,蜂鸣器,氖灯,LED 数码管等外围设备为用户提供服务,实现人机交互和按摩功能。通过按键,用户可以让按摩机工作在最具舒适的按摩工作方式和振动速度上;利用蜂鸣器来告警或提示按摩完成;利用氖灯显示当前的工作状态;利用 LED 数码管显示电机当前的转速。本设计是基于单片机的 PWM 传动控制电路的软硬件结

2、合, PWM 调制原理实现技术较复杂,硬件上利用 MOSFET(金属氧化半导体场效应晶体管)来实现,软件上利用交流检测结果,完成单片机定时器延时和查表功能。本设计不但结合了单片机开发技术,而且综合运用了直流电机 PWM 技术、交流检测技术以及 LED 驱动与控制技术,实现了按摩机控制系统人机交互。关键字:PWM MOSFET 交流检测技术 LED 驱动与控制AbstractThe design, in describing the foundation of massage machine function, completed a spread to move and control sys

3、tem electric circuit, which based on PWM (Pulse Width Modulated). With techniques of SCM (Single Chip Microcomputer) and PWM of DC (Direct Current) motor, the design put forward the control system frame and the concrete design technique projects at first. Then elaborated the total realization of the

4、 control system from the hardware electric circuit. Next, combined the hardware to put forward the mind of software design, and made use of Assembly language carrying out it. Finally, made use of the peripherals, such as the key, the buzzer,the neon lamp and the LED (Light Emitting Diode) figures tu

5、be, providing the service for the customer, and carry out the massage function and interaction for both the machine and the person. The customer can let massage machine work on the comfortable method and vibration speeds by the key; Make use of the buzzer warning or hinting the massage has finished;

6、 Make use of neon lamp shows the current work appearance; And use the LED figures tube to manifestation present speed of motor. The design is a software and hardwares combination that based on the PWM of spread to move and control system electric circuit. Its more complicated to carry out the techni

7、que of PWM. On the hardware, make use of the MOSFET (Metal Oxide Semiconductor Field Effect Transistor) carrying out it; On the software, make use of the result of exchanges examination, setting the SCM postpone and checking the form. The design not only used technique of SCM, but also synthesized t

8、he technique of the PWM of DC motor, the technique of exchanges examination and the technique of drive and control of LED, to carry out the control system of massage machine and persons interaction.Keywords: PWM MOSFET technique of exchanges examination drive and control of LED目 录1 概述 .12 按摩机控制系统框架设

9、计 .73 直流电机 PWM 调速控制原理 .93.1 直流电动机驱动方式 .103.2 直流电机 PWM 调速原理与控制技术 .114 按摩机控制系统设计技术方案 .134.1 系统电源设计 .134.2 系统所选用单片机简介 .144.3 系统单片机外部扩展 .154.4 交流检测电路 .164.5 电机控制方案 .174.6 LED 的数码管驱动.175 按摩机控制系统硬件设计 .195.1 电源电路 .195.2 复位电路 .205.3 电机和氖灯控制电路 .205.4 按键显示部分电路 .226 按摩机控制系统软件设计思想 .236.1 电机控制设计 .236.2 LED 驱动设计.

10、246.3 交流检测设计 .257 按摩机控制系统软件汇编实现 .267.1 单片机端口与寄存器的初始化 .267.2 主程序代码部分 .287.3 交流检测模块 .297.4 电动机的控制实现 .307.5 数码管显示驱动模块 .31结束语 .33致谢 .34参考文献 .35附录 汇编程序 .错误!未定义书签。错误!未定义书签。1 概述以大规模集成电路为主的微型计算机单片微型计算机(Single chip microcomputer) ,简称单片机,又称嵌入式微控制器(Embedded microcontroller) 。单片机具有优异的性能价格比,集成度高、体积小、可靠性高,控制功能强和低

11、电压、低功耗等特点,在工业控制、智能化仪器仪表、智能接口、家用电器、儿童玩具、健身器材等许多领域都得到了广泛的应用。随着社会的发展和进步,随着电子信息技术的飞跃,单片机开发与应用技术已经显得越来越重要,成为了一门重要的电子电气技术学科,同时亦成为了新产品研发设计的关键技术。现代社会发展越来越快,人们生活节奏也快,随之而来工作压力也越来越大。人们渴望休闲,渴望健康。于是当前人们对健康非常关注和重视,而按摩对人体健康有特殊促进功效。按摩机就是在这一背景下产生。为了满足人们的需要和市场的需求,按摩机控制系统开发技术应运而生。本毕业设计采用单片机开发与应用技术而设计一种简易的按摩机控制系统,以实现基本

12、按摩功能。本按摩机传动控制电路可实现市面上各类型按摩机的基本功能,并且结构简单,成本低廉,体积不大,可满足人体腰部,足部以及颈部的按摩需要。本按摩机控制系统以单片机为控制核心,是基于 PWM(脉冲宽度调制)调制原理的直流电机控制应用方案。直流电机脉冲宽度调制(Pulse Width Modulated,PWM)调速技术最早产生于 20 世纪 70 年代中期,用于不可逆,小功率的驱动,例如天文望远镜,自动记录仪表等。近 10 多年来,单片机技术和集成电路技术的发展以及宽调速永磁直流电动机的出现,促使 PWM 技术高速发展,并使电气驱动技术达到一个新的高度。本设计即利用了直流电机 PWM 技术实现

13、了电机调速控制,同时用到了 LED 驱动与控制技术和交流检测技术完成控制系统所需实现功能。本按摩机利用单片机完成系统总体控制功能,并利用按键,蜂鸣器,发光二极管,氖灯和 LED 数码管等外围设备为用户提供服务,实现人机交互,实现其按摩功能;通过按键,用户可以让按摩机工作在最具舒适的按摩工作方式和振动速度上;利用蜂鸣器来告警或提示按摩完成;利用氖灯显示当前的工作状态;利 LED 数码管显示电机当前的转速。本按摩机由电动机的转动形成振动,而单片机可以通过控制振动的方式和时间来按用户的需要进行按摩,其具体按摩功能描述如下:1. 可以有十八档速度速度进行按摩,按摩机选用调速性能较好的直流电机,利用调速

14、技术对电机进行调速,共设 18 档速度。2. 可以提供四种独特的按摩方式:1) 定速按摩,此种方式最为简单,是常见的按摩方式,在这种方式下,电机在某一速度档保持恒定转速,按摩机以均匀的振动速度进行按摩。2) 快慢按摩,此种方式用户可通过设定速度档来改变按摩机振动速度,但此种方式按摩机以快速和慢速振动交替进行。3) 波浪感按摩,此种方式按摩速度从慢到快地连续变化,给用户一种波浪从身体经过的感觉,这种方式适合老人和儿童。4) 随机方式按摩,电机转动速度随时间随机变化,没有特定的节奏。应该注意的是这种方式并不是上述 3 种方式以随机的形式进行按摩。3. 用户可根据个人喜好利用按键调节速度档次以及按摩

15、方式。按摩机提供了 6 个按键:两个调速按键,分别完成降档调速,升档调速;一个模式转换按键,用于切换当前的按摩方式;一个电源开关按键,提供系统上电;一个氖灯转换按键,显示按摩机工作状态;一个数码管转换按键,显示电机转速。2 按摩机控制系统框架设计设计系统框架时,除了考虑实现按摩功能外,系统的可操作性和安全性也是至关重要的。为了方便用户使用,给他们舒适的感受,按摩机必须设计良好的用户操作按键以及必要的显示系统;为了保证使用过程中的安全,在设计中必须考虑告警措施,并充分完善供电电源的设计。图 1 所示为系统的设计框架,包括按键输入与 LED 指示、蜂鸣器提示输出、交流信号检测、供电电源处理、氖灯指

16、示和电动机控制。单片机控制系统蜂鸣器提示输出按键输入LED指示交流信号检测氖灯指示电动机供电电源图 1 系统设计框架按摩机的主要功能模块可划分为 6 部分。1. 按键输入与 LED 指示部分。该模块负责响应按摩机 6 个按键输入信号,并利用数码管和发光二极管显示当前工作状态。其中,数码管显示按摩振速,发光二极管显示按摩方式。2. 蜂鸣器提示输出部分。该模块完成按摩机的告警和工作提示,在一般工作情况下,蜂鸣器都将发声告警(例如,按键输入、电机运行超时和系统出错) 。3. 氖灯指示部分。氖灯只在按摩机工作时发光,否则熄灭。该模块利用 220V 市电为氖灯供电,并配合相应的控制电路。4. 交流检测部

17、分。检测交流过零点,用来控制电动机和氖灯。5. 电源部分。该模块实现单片机系统从交流中整流出稳定的 5V 供电电压。6. 电机部分。电机采用 220V 市电供电,控制方式与氖灯控制相同。系统设计框架构建并划分了系统的整体功能模块,但是在硬件实现和软件实现时,为了合理布线和优化电路结构,并不严格按照这种顶层的模块划分来完成电路和程序。本毕业设计的硬件功能模块实现划分为 5 个电路块,分别是电源电路、复位电路、电机和氖灯控制电路、按键显示部分电路。系统的软件实现则根据软件流程划分出各函数功能模块,与图 1 系统设计框架所示没有固定的对应关系。3 直流电机 PWM 调速控制原理PWM(Pulse W

18、idth Modulated) ,即脉冲宽度调制. PWM 脉宽调制是利用相当于基波分量的信号波对载波进行调制,达到调节输出脉冲宽度的一种方法. 常用 PWM 技术的基本原理是利用高频载波与控制波进行比较,从而产生经过调制的 PWM 波。为满足逆变电源的需要,减小输出电压的谐波含量,载波信号采用对称的三角波实现 PWM 输出波形的对称双边调制,使输出电压不含偶次谐波。PWM 控制技术一直是变频技术的核心技术之一。脉冲宽度调制技术最初是在无线电技术中用于信号的调制,后来在电机调速中得到了很好的应用。1964 年 A.Schonung 和 H.stemmler 首先提出把这项通讯技术应用到交流传动

19、中,从此为交流传动的推广应用开辟了新的局面。从最初采用模拟电路完成三角调制波和参考正弦波比较,产生正弦脉宽调制 SPWM 信号以控制功率器件的开关开始,到目前采用全数字化方案,完成优化的实时在线的 PWM 信号输出,可以说直到目前为止,PWM 在各种应用场合仍在主导地位,并一直是人们研究的热点。由于 PWM 可以同时实现变频变压反抑制谐波的特点。由此在交流传动及至其它能量变换系统中得到广泛应用。PWM 控制技术大致可以为为三类,正弦 PWM(包括电压,电流或磁通的正弦为目标的各种 PWM方案,多重 PWM 也应归于此类),优化 PWM 及随机 PWM。正弦 PWM 已为人们所熟知,而旨在改善输

20、出电压、电流波形,降低电源系统谐波的多重 PWM 技术在大功率变频器中有其独特的优势(如 ABB,ACS1000系列和美国 ROBICON 公司的完美无谐波系列等);而优化 PWM 所追求的则是实现电流谐波畸变率(THD)最小,电压利用率最高,效率最优,及转矩脉动最小以及其它特定优化目标。在 70 年代开始至 80 年代初,由于当时大功率晶体管主要为双极性达林顿三极管,载波频率一般最高不超过 5kHz,电机绕组的电磁噪音及谐波引起的振动引起人们的关注。为求得改善,随机 PWM 方法应运而生。其原理是随机改变开关频率使电机电磁噪音近似为限带白噪音(在线性频率坐标系中,各频率能量分布是均匀的),尽

21、管噪音的总分贝数未变,但以固定开关频率为特征的有色噪音强度大大削弱。正因为如此,即使在 IGBT 已被广泛应用的今天,对于载波频率必须限制在较低频率的场合,随机 PWM仍然有其特殊的价值(DTC 控制即为一例);别一方面则告诉人们消除机械和电磁噪音的最佳方法不是盲目地提高工作频率,因为随机 PWM 技术提供了一个分析、解决问题的全新思路。本按摩机的电动机采用直流供电,利用 PWM 技术实现电机调速.控制原理包括直流电机驱动方式的选择和调速控制原理.本按摩机使用了双向驱动方式,并采取控制电枢电压改变电机转速.下面两小节详细阐述了本设计所采用电机控制技术。3.1 直流电动机驱动方式由上述可知控制原

22、理包括直流电动机驱动方式的选择和调速控制原理。本按摩机使用了双向驱动方式,并采取控制电枢电压改电动机转速。直流电机驱动方式包括单向驱动和双向驱动。1. 单向驱动这种方式又分为两种情况,功率较小的电动机常常采用单相电源输入,并采用可控硅晶闸管控制导通输入。而功率较大的电动机的主电路需要采用三相以上电源,这种情况一般都有整流变压器,相数和接法有多种,大部分采用三相桥式连接。因为本次设计不要用到,在此就不赘述,只做简单介绍,详见电机控制手册。2. 双向驱动双向驱动直流电机可采用两组反相并联的整流电路,第一组整流电路使电动机正转,第二组整流电路使电动机反转或正向制动。要使电动机反转,晶闸管控制电路必须

23、使整流器输出反向连接至电动机的电压,或者使加到励磁电路上的电压反向。电动机反转和变速时,要求快速响应,负载变动时也要求快速恢复到原来速度,因此,希望在逆变运行时把电动机转子运行的能量馈送给电源。了解和掌握了驱动方式的种类,知道在本设计中要用到双向驱动方式,后面的章节将介绍具体电路实现。在此还应该考虑脉动电流对直流电动机的影响。这种影响可大可小,对电动机机械特性影响很大。因为采用晶闸管器件把交流电源变为直流电源时,电路相数、负载性质的不同,所以会产生不同的脉动电流。而且晶闸管整流供电在电动机空载或轻载时会出现电动机电流断续的特殊现象,这也对电动机机械特性影响很大。当电流断续时,晶闸管整流供电电动

24、机的理想空载转速升高,电动机械特性显著变软,电动机轴上负载转矩的很小变化就能引起电动机转速的很大变化。所以,在直流电动机由晶闸管可控整流电路供电时,为了改善电动机运行情况,应使其始终工作在特性较硬的区域,直流电动机负载中大多串联了电抗器,以使电动机在空载或轻载时也工作在电流连续区域。了解了本次设计直流电机驱动方式所要注意的类容,接下来关注直流电机 PWM 调速和控制技术。3.2 直流电机 PWM 调速原理与控制技术对直流电机调速可以有 3 种方法:1. 控制电枢电压改变电动机的转整;2. 控制电动机励磁电流改变电动机的转速;3. 在电枢回路中,串联调节电阻。由电机知识可知,直流电机的转速由公式

25、 1 给出。 (1)KIRUn/ )(公式 1 中是电枢电压,是电枢电流,是电枢总电阻,是每极磁通量,电动机结构参数。UIRK图 2 直流电机调速原理由公式 1 可知,用单片机对直流电机进行调速,可通过改变磁通量或电压来完成。一般采用调节电枢电压来调节电机的速度。随着功率器件的发展,现在的电机调速大部分采用开关进行控制,功率器件工作在开关状态,功耗小。如果采用直流供电,一般利用 PWM 技术实现电机调速。在电路实现上,将脉冲输入连接至 MOSFET 管的源极,并利用极间压降完成 PWM 调试,如图 2 所示。根据图 2 的原理实现电路,直流电机两端的电压可用公式 2 表示:Uo (2)ccVa

26、U0其中,为 PWM 的占空比;为直流电源的供电电压。实际为 220V 的交流市电经accVccV过整流后的直流电源,用作直流电机供电电源,而 MOSFET 管在此利用双向可控硅替代,通过控制导通角实现对直流电机速度的控制,如图 3 所示。图 3 实用直流电机调速原理图可控硅导通需满足以下两个条件:1. 门极触发电流大于阈值;2. 在门极电流大于阈值的情况下,负载电流大于设定值。调速其实就是控制导通角,利用触发脉冲的导通位置控制电机转速。当检测到过零时立即触发可控硅,则电机通电时间长,电机速度较快;检测过零后,若延时一段时间后再触发,则电机通电时间短,电机速度较慢,过零触发与电机通电如图 4

27、所示.红色线条表示市电的正弦曲线,蓝色线条表示用手电机调速的触发脉冲。如果脉冲触发时,市电立刻导通,电机运行在整个脉冲间歇期间,那么通电时间长;如果脉冲触发时,市电不能立刻导通,电机运行的时间不在整个脉冲间歇期间,甚至是一段很短的时间,则通电时间短。这样便实现了电机的调速。图 4 过零触发与电机通电按照本次设计按摩机所需功能设计,电机的速度要被分成 18 档,相应的延时时间表格应放在单片机的 ROM 中。假设单片机 128中断一次,则延时 10128为最快档,延时 64128为最慢档。sss最快和最慢档之间相差 54128,即相邻两档之间相差 3128。中断模块查表后发生延时,并产ss生触发脉

28、冲,控制速度,并且双向可控硅在门极驱动,当负可控硅两端达到设定值后,即使触发脉冲消失,同样可以导通。4 按摩机控制系统设计技术方案单片机系统设计技术是系统框架实现的具体执行步骤,系统设计框架虽然构建了系统的整体功能模块划分,但是硬件实现和软件实现还得通过具体的技术方案才能达到。采用的技术方案的好与坏直接影响系统的可操作性和安全性,以及后续设计工作的展开和进行。因此单片机系统设计技术方案同样重要。一个单片机应用系统的硬件电路设计包含两部分内容:一是系统扩展,即单片机内部的功能单元,如 ROM、RAM、I/O、定时器/计数器、中断系统等不能满足应用系统的要求时,必须在片外进行扩展,选择适当的芯片,

29、设计相应的电路。二是系统的配置,即按照系统功能要求配置外围设备,如键盘、显示器、打印机、A/D、D/A 转换器等,还要设计合适的接口电路。系统的扩展和配置应遵循以下原则:1. 尽可能选择典型电路,并符合单片机常规用法。为硬件系统的标准化、模块化打下良好的基础。2. 系统扩展与外围设备的配置水平应充分满足应用系统的功能要求,并留有适当余地,以便进行二次开发。3. 硬件结构应结合应用软件方案一并考虑。硬件结构与软件方案会产生相互影响,考虑的原则是:软件能实现的功能尽可能由软件实殃,以简化硬件结构。但必须注意,由软件实现的硬件功能,一般响应时间比硬件实现长,且占用 CPU 时间。4. 系统中的相关器

30、件要尽可能做到性能匹配。如选用 CMOS 芯片单片机构成低功耗系统时,系统中所有芯片都应尽可能选择低功耗产品。5. 可靠性及抗干扰设计是硬件设计必不可少的一部分,它包括芯片、器件选择、去耦滤波、印刷电路板布线、通道隔离等。6. 单片机外围电路较多时,必须考虑其驱动能力。驱动能力不足时,系统工作不可靠,可通过增设线驱动器增强驱动能力或减少芯片功耗来降低总线负载。7. 要求尽量朝着“单片”方向设计硬件系统。系统器件越多,器件之间相互干扰也越强,功耗也增大,也不可避免地降低了系统的稳定性。4.1 系统电源设计本系统采用市电供电,所以必须设计一个高效、廉价的整流电路。出于成本和体积考虑,采用电容降压供

31、电和半波整流电路,如图 5 所示。图 5 供电电路根据电子线路知识,假设 C1=1,那么交流 C1 的阻抗 Z=1/2C=3184。在整流电路中,限Ff流电阻一般取值较小,通常为 100,且负载和稳压二极管的动态电阻也较低,所以经整流输出的电流I=220/Z=69mA。又因为采用的是半波整流,所以该整流电路大约可以提供 30mA 左右的供电电流,完全能够满足单片机系统工作的供电要求。在图 5 中,R1 为泄流电阻,它泄放降压电容上的电流。4.2 系统所选用单片机简介单片机作为系统的主控制单元,它控制所有的输入输出,并根据用户按键信息做出按摩方式和振动速度的调整。本方案选用了具有 51 核的单片

32、机 EM78P156E,EM78P156E 属于台湾义隆公司 EM78 系列单片机之一,其指令集与传统的 51 单片机的指令集是一样的,但 I/O 为推挽结构,能够直接驱动 LED。该单片机具有如下特性:8 管脚封装 SOP、SOIC 和 DIP。工作电压范围为 2.2-5.5V。工作温度范围为 0-70。工作频率范围为 0-36MHz。低功耗。5V/4 MHz 工作条件下,电流小于 1.6mA;典型的 3V/32kHz 工作条件,电流小于 15;A休眠工作方式下,电流为 1。A1KB13 字节片内 ROM,488 字节通用存储器(SRAM)。内置 RC 振荡器、上电复位。一个配置寄存器以满足

33、用户不同要求。5 级堆栈、8 位实时时钟/计数器(TCC) 。3 个中断源。TCC 溢出中断、输入口状态变化中断(从休眠方式唤醒)及外部中断。2 个双向 I/O 管脚。8 个 I/O 管脚可编程设置为上拉。7 个 I/O 管脚可编程设置为下拉。8 个 I/O 管脚可编程设置为漏极开路。如图 6 所示,EM78P156E 单片机有 18 个管脚,其中可用作 I/O 功能的管脚只有 12 个,即 P5x 和 P6x。需要注意的是,该单片机的 I/O 具有推挽结构,能够直接驱动 LED 等外部弱电设备,因此大大简化了系统的结构和电路元器组成。图 6 EM78P156E 单片机4.3 系统单片机外部扩

34、展确定了单片机后,需要对单片机相应管脚的功能进行定义并设计其外部电路的功能。首先我们要预先分析,用户使用按摩机所关心的是按键功能是否正确、发光二极管指示的工作状态是否无误以及数码管显示的按摩振动速度是否准确,也就是系统设计框架图中“按键输入与 LED 指示部分”需要完成的工作。完成这些功能需要利用单片机 I/O,在不浪费系统资源的前提下分配单片机 I/O口。可以知道, “按键输入与 LED 指示部分”需要 6(用户按键)+4(数码管)+4(发光二极管)=14 个I/O 管脚。除了涉及用户使用的 I/O 外,设计者还必须考虑分配 I/O 管脚的包括:交流检测输入、氖灯、电机和蜂鸣器的控制。这 4

35、 个部分各自独立控制,需要 4 个单独的单片机 I/O 管脚。根据上面的分析,完成按摩机需要 14+4=18 个单片机 I/O 管脚,而 EM78P156E 只提供了 12 个可用的 I/O 管脚。解决这一问题的方法可采用 I/O 复用技术:交流检测输入、氖灯、电机和蜂鸣器的控制使用了 4 个管脚,各自独立,可用于复用的管脚为 8 个。数码管的显示可以通过串行驱动来实现,这样只需要两个I/O 口便可完成 4 个 I/O 口的功能;6 个按键和 4 个 LED(按摩机工作模式指示灯)可采用 I/O 口复用方式利用剩余的 6 个管脚完成。这样单片机即可完成预先设定的控制功能。然后我们对单片机 I/

36、O 管脚进行分配,其外部电路连接如图 7 所示。图 7 单片机电路连接管脚 1、18 连接 4 数码管串行驱动芯片 74LS164,将按摩机的振动速度值以串行方式发送至该芯片,经并行输出处理后显示。管脚 2:P53,连接定义为 ANJ1/LED4,外部电路完成按键 1(数码管显示开关)和发光二极管4(随机方式按摩指示灯)的功能。管脚 6:P60/INT,连接定义为 ANJ2/LED3,外部电路完成按键 2(氖灯开关)和发光二极管3(波浪感方式按摩指示灯)的功能。管脚 7:P61,连接定义为 ANJ3/LED2,外部电路完成按键 3(按摩振动降速按键)和发光二极管 2(快慢方式按摩指示灯)的功能

37、。管脚 8:P62,连接定义为 ANJ4/LED1,外部电路完成按键 4(按摩机电源开关)和发光二极管1(定速方式按摩指示灯)的功能。管脚 9:P63,连接定义为 ANJ5,连接按键 5(按摩方式切换按键) 。管脚 10:P64,连接定义为 ANJ6,连接按键 6(按摩振动和加速按键) 。管脚 11:P65,连接定义为 BEEP,连接电路为蜂鸣器发声电路。管脚 12:P66,连接定义为 MOTOR,外部电路完成电机调速控制功能。管脚 13:P67,连接定义为 HLIGHT,外部电路完成氖灯控制,系统上电点亮氖灯,故障及断电状态熄灭氖灯。管脚 15、16 连接晶振,产生 4MHz 的频率。该频率

38、为系统的时钟周期。管脚 17:P50,连接定义为 AC JC,外部电路完成交流检测。4.4 交流检测电路在本设计应用中不需要严格的过零检测,所以此处用最简单的方法检测交流过零,如图 8 所示。将交流电引入单片机过程中,单片机 I/O 口连接一个 2M的电阻,再直接同 220V 的市电电源线相连。由于单片机 I/O 口内部已存在有二极管钳位电路,因此不会发生危险。I/O 口的电平状态与交流点正弦波形关系如图 9 所示。正弦曲线为交流电曲线,矩形方波为脉冲检测波形。从电路技术来说,利用弱电系统检测交流强电的原理是利用晶振脉冲的上升沿和下降沿检测此刻交流电状态。如果两次采样的交流电状态没有变化(要么

39、都为正,要么都为负) ,那么此时没有发生交流过零;如果两次采样的交流电状态发生变化(一次为正,一次为负) ,那么一定发生交流过零。在设计实现过程中,首先保存 I/O 口的初始状态,在系统运行时利用时钟脉冲间隔中不断检测 I/O 口的状态,如果状态发生改变,则发生了交流过零。图 8 交流检测电路图 9 I/O 口的电平状态与交流电正弦波形关系4.5 电机控制方案电机控制的主要目的是调速,此处利用过零检测后控制电机的导通时间来调速。电机的驱动电路图在直流电机 PWM 调速原理与控制技术 3.2 节中图 3 所示,4 个二极管起整流作用,将交流电流变成单向脉动的电流;电感 L 防止了电路中过于大的电

40、流变化(di/dt) ;并联在可控硅上的电阻和电容作用是可以防止可控硅两端过于大的电压变化(du/dt ) ,这些都是用来防止可控硅误触发的。由于前面 3.2 章节已有详细介绍,在此就不在赘述了。4.6 LED 的数码管驱动1. LED 的驱动原理。LED 发光二极管的工作电压为 1.53V,工作电流为几毫安到十几毫安,寿命很长。单片机外围接口电路中,常用发光二极管作显示器件。发光二极管显示方法有两种。一种是直流静态驱动法,即一个输出口驱动一个发光二极管,其优点是软件简单,缺点是端口的利用率低,因此只在发光二极管少的电路中采用。另一种是分时动态驱动法,周期性地给发光二极管通电,周期较短(例如不

41、长于 20ms) ,人眼观察无闪烁之感。利用此法驱动 2 位8 段数码管,用单片机 2 个口作位线驱动,8 个口作段线驱动即可。一般来说分时动态驱动法 n 个端口能驱动 m(n-m)个发光二极管,其中 m 是从 n 中分出的列(位)线,而余下的(n-m)个则作为行(段)线。当 n4,并且 m=n/2 时,系统驱动发光二极管。图 10 实际应用中的驱动方式2. 驱动方式。在本设计际应用中,为了提高 I/O 口的利用率,在此采用串行驱动,即使用两个 I/O 口驱动串转并芯片 74LS164,常用串转并芯片 74LS164 在 clk 的上升沿将串行的数据送到并行口。实际应用中的驱动方式电路图见图

42、10。5 按摩机控制系统硬件设计本章节其实是上一章节技术方案的延续,是对系统硬件原理图的总体设计。电路原理设计的主要任务是为实际的制版电路提供理论上的基础。因此我们要借助假想电路环境,降电路设计得尽可能地简单高效。本设计的硬件设计在 PROTEL 软件中实现。通过对硬件电路原理图的设计,同时可加深对 PROTLE 软件的使用,反过来在操作 PROTEL 软件的过程中积累设计心得和体会以及经验,为以后的工作打下基础。两者相结合,互相促进,互相补足,才能取得想要的结果。本按摩机的 PROTEL 布线电路采用的是简单的顺序布线形式,并不需要使用多层布线。设计中尽可能选择典型电路,并符合单片机常规用法

43、。系统扩展与外围设备的配置水平应充分满足应用系统的功能要求,系统中的相关器件要尽可能做到性能匹配,以及可靠性及抗干扰设计,还要考虑其芯片驱动能力。本章所有小节电路见系统原理图 11。 5.1 电源电路将交流市电转换为低压直流电的常规方法是采用变压器降压后再整流滤波,当受体积和成本等因素的限制时,最简单实用的方法就是采用电容降压式电源。具体的电路部分见图 11 中位于单片机上面的部分。电源电路的组成包括:1. C1 为降压电容器,选用容值为 1的电容。F2. VD1、VD2 为半波整流二极管。3. R1 为泄放电阻,需用阻值为 100的电阻。K整流后未经稳压的直流电压一般会高于 30V,并且会随

44、负载电流的变化发生很大的波动,这是因为此类电源内阻很大,不适合大电流供电的应用场合。为保证 C1 可靠工作,其耐压选择应大于两倍的电源电压。泄放电阻 R1 的选择必须保证在要求的时间内泄放掉 C1 上的电荷。具体电路 4.1 节有详细介绍,具体实现在系统原理图 11 上部分。5.2 复位电路基本的复位电路为 C2 电容(容值为 1)和 R1 电阻(阻值为 100) 。R1 并联了一个二极管,FK它的作用是放电,保证在电源插拔时可靠复位。若没有二极管 D1,当电源因某种干扰瞬间断电时,由于C2 电容不能迅速放电,待电源恢复时,单片机便不能上电自动复位,导致运行失控,程序不正常运行。 具体电路穿插

45、在电源电路中,见系统原理图 11上部分电源电路中。5.3 电机和氖灯控制电路图 11 系统原理图的右下部分,A+、A-接氖灯;B+、B-接电动机。电动机的两端 4 个二极管起整流作用,将市电整流成单向脉动的直流供给电机。1. 氖灯控制电路部分的组成包括:(1)R10,阻值为 10,提升端口的驱动电压。K(2)C6,容值为 1,滤波电容。F(3)C7,容值为 47nF,防止 A+、A-间的高频串扰。(4)Q1 为一个双向可控硅。2. 电机控制电路部分的组成包括:(1)R11,阻值为 10,提升端口的驱动电压。K(2)C8,容值为 1,滤波电容。F(3)Q2 为一个双向可控硅。(4)C9,容值为

46、1。F,与 C9 形成一个滤波回路。K(6)D8D11,这是二极管整流桥电路,该整流电路为氖灯提供可靠的直流电源。,用于保护电机。K(8)C10,容值为 47,稳定电机的工作电压波形。FR13 起保护作用,防止外面短接的时候短路。C10 改变载波的波形,减缓陡峭程度,减小噪声。在可控硅两端并联了 RC 缓冲电路,控制电动机等电感性负载时,负载电流滞后于电源电压。因此电流过零时,双向可控硅可能突然承受较高的电压,过高的 du/dt 可能引起可控硅的误触发。当市电电压降到电动机的反向电动势的时候,电机的电流绕着二极管空转,此时可控硅电流突然下降到 0。而过高的di/dt 也会引起可控硅的在没有门极

47、控制下导通,因此回路中串了一个电感遏制电流的急剧变化。5.4 按键显示部分电路这部分的电路组成包括:1. R14R17,阻值均为 510,用于驱动发光二极管。2. R19,阻值为 10,用于采集按键 1、2 和 3 的信号。k3. R20,阻值为 47,用于采集按键 4、5 和 6 的信号。k见图 11 系统原理图左下部分,为了提高 I/O 口的利用率,电路中按键和显示复用。8 位的字型通过串转并芯片 74LS164 送出 QaQg(显示字型的数据)和 Qh(模式指示灯信号) 。一般 LED 的工作电流为5mA 左右,R4R9、R14R18 为限流电阻,保证 LED 和数码管的正常工作。假设程

48、序每 2ms 做 1 次按键检和显示。首先将字型和要显示的数据送到 74LS164 的并行口,然后产生第 1 个选通信号(见图中数码管的 1、2、3、4 选通线) ,显示第 1 个数码管并点亮(或关断)第一个指示灯;在下一个 2ms 到来的时候则显示第 2 个数码管和指示灯,此时可以通过 P63、P64 做按键检测。由于第 2ms 依次循环检测,因此可以迅速地检测到按键,而且 LED 和数码管也无抖动。值得注意的是,由于节约了 I/O 口,因此不能检测到同一时间的多个按键信号。6 按摩机控制系统软件设计思想本章节其实是第 4、5 章节技术方案和硬件设计的延续,是和硬件相结合的软件总体设计,包括

49、交流检测部分,电机控制部分,LED 显示部分三个方面的一些设计流程和思路总结,具体实现和编程在第7 章控制系统软件汇编程序部分,在此只是简要介绍总体思路。6.1 电机控制设计电机控制功能按照图 12 的流程图可以实现,具体思路如下。是否是开始中断保护脉冲宽度计时到?撤消脉冲电机已打开?脉冲延时时间到?开启脉冲,并给出脉冲宽度初值恢复寄存器结束否是图 12 电动机控制流程1. 单片机控制电机时,系统首先进入中断保护。中断保护过程将完成如下 5 方面的工作:(1)保存端口的状态值。(2)保存中断前的片内寄存器值。(3)保存各类存储器的寻址地址。(4)保存主程序的执行代码断点。(5)初始化脉冲宽度、

50、延时长度和状态信息。2. 完成中断保护后,系统将检查脉冲宽度计时时间是否到达。脉冲宽度计时用于开启可控硅,控制电机运行。如果既定时间宽度的脉冲已完成(即判定结果为“是” ) ,则必须撤消脉冲;如果既定时间宽度的脉冲未完成(即判定结果为“否” ) ,则不撤消脉冲。3. 接着是判断电机是否正在运行。如果电机没有运行,则恢复寄存器初值,完成中断,返回系统主程序;如果电机正在运行,则继续执行。4. 然后是判断脉冲延时时间是否到达。如果延时到达,中断将重新开启脉冲,并给出脉冲初始值,重新决定是否开启可控硅,控制电机运行;如果延时不到,则恢复寄存器初始值,完成中断,返回系统主程序。5. 最后是完成中断,返

51、回系统主程序。6.2 LED 驱动设计LED 驱动采用了串行驱动方式,利用芯片 74LS164 将串行数据转换为并行数据,使得 4 个 LED 数码管可同时使用。单片机在发送 LED 显示数据时,利用了时钟输出和数据输出两个端口。当数据发送完毕后,时钟输出为 1;否则时钟输出无效。LED 驱动流程如图 13 所示。流程图实现步骤为:1. 为时钟输出和数据输出选定两个端口。2. 利用循环数据移位输出。如果还有未输出的数据,循环继续。该循环过程将分成 5 步完成。1. 初始化时钟输出电平。时钟输出初始值为低电平,表明芯片 74LS164 并可将该数据转化,LED 未驱动。2. 是否完成准备工作。这

52、主要通过端口判定得到,即端口值为 0。3. 若完成准备,输出有效的 LED 数据;4. 若未完成准备,输出无效数据。数据输出后,时钟输出为高电平。5. 寻址下一个 LED 数据。寻址通过寄存器右移完成。开始选定时钟输出和数据输出端口时钟输出低电平数据输出是否准备完毕?数据输出有效时钟输出为高电平寻址下一数据数据输出是否完毕?数据输出无效是是否否结束图 13 LED 驱动流程6.3 交流检测设计单片机从外部电路得到交流电压,并对其进行交流过零检测。这部分功能必须对单片机进行编程才能实现。因为在本设计应用中不需要严格的过零检测,所以此处用最简单的方法检测交流过零,交流过零检测具体电路原理见 4.4

53、 章节。编程思路,函数设计两个交流的状态值:s0 为交流输入初始状态值;s1 为当前状态值。执行该函数时,只需要比较 s0 和 s1 的值即可:如 s0 与 s1 相等,说明交流不过零,因为交流的前后状态一致,前后状态一定在直流脉冲零点的同侧;如果 s0 不等于 s1,说明交流过零,因为交流的前后状态不一致,前后状态一定在直流脉冲零点的两侧。7 按摩机控制系统软件汇编实现本程序分为 7 个模块。1片机端口与寄存器的初始化。2数码管的显示控制。3按键操作与按键指示灯的控制。4状态转移与任务的细化。5按摩机工作模式的控制。6系统延时。7系统主控制模块。7.1 单片机端口与寄存器的初始化本模块用来初

54、始化单片机端口与寄存器。1. 单片机端口的初始化TCC = 0X01 ;TCC 口的初始化PC = 0 x02R3 = 0X03P5 = 0X05 ;P5 口的初始化P6 = 0X06 ;P6 口的初始化IOC5 = 0X05 ;单片机的 I/O 口定义,下同IOC6 = 0X06IOC7 = 0X07IOCA = 0X0AIOCB = 0X0BIOCC = 0X0CIOCD = 0X0DIOCE = 0X0EIOCF = 0X0FRF = 0X0FC = 0 ;C 寄存器Z = 2 ;Z 寄存器 2. 数码管显示部分初始化 系统需要 4 个 LED 数码管来显示按摩机的工作信息,代码将分别初

55、始化数码管的显示寄存器,并给出控制信号 CLK 和 DATA。CLK = 2 ;单片机端口为 P52DATA = 1 ;单片机端口为 P51DISP_REG1 = 0X10 ;数码管显示寄存器,1 为低位,4 为高位。DISP_REG2 = 0X11DISP_REG3 = 0X12DISP_REG4 = 0X133. 指示灯与工作状态初始化按摩机工作在 4 个模式下,需要相应的寄存器存储不同工作模式的状态值,本部分代码将完成按键,工作模式显示,计时时间寄存器以及中断程序所需的寄存器的初始化。按键指示灯状态寄存位, 键值寄存器,其中模式、氖管灯开关状态与键值公用。KEY_DETECT_REG =

56、 0X14 ;键值检测积存器KEY_REG = 0X15 ;键值保存积存器ISUP = 0 ;+状态值ISDOWN = 1 ;-状态值ISMODE = 2 ;模式状态值ISLAMP = 3 ;氖管开关值ISSWITCH = 4 ;有按键标志,供蜂鸣气子程序查询ISLED = 5CLASS_REG = 0X16 ;分为 12 个等级,+,-共用此寄存器DELAY_CLASS_REG = 0X17MODE_REG = 0X18 ;分为 4 种模式DISP_STATE_ID = 0X19 ;因按键和数码管位选复用,公用总状态KEY1_STATE_ID = 0X1A ;按键延时用,用于按键和延时状态区

57、分KEY2_STATE_ID = 0X3bKEY3_STATE_ID = 0X3cSPEAK_STATE_ID = 0X3dLAMP_STATE_ID = 0X1CDISP_TIME = 0X1D ;工作状态指示灯寄存器初始化SPEAK_TIME = 0X1FSYS60MSREG = 0X20TCC2msREG = 0X21SYS15SREG = 0X23SYS128SREG = 0X24XSYS128SREG = 0X25SYS15MREG = 0X26SPEAK3REG = 0X3FSTATEID1 = 1 ; 状态常数STATEID2 = 2STATEID3 = 3STATEID4 =

58、4STATEID5 = 5STATEID6 = 6STATEID7 = 7STATEID8 = 8 ;电动机控制的寄存器控制CTRLFLAG = 0X27CLASSOVERFLAG = 0 ;等级数到最高挡SWITCH_SPEAK = 1ENABLE_SPEAK = 2ENABLE_TIME = 3AC_FLAG = 4CHANGE_FLAG = 5CLASSOVERFLAG_L = 6 ;等级数到最底挡标志SYSFLAG = 0X28ENABLE_DEALKEY = 0SYS10MSFLAG = 1SYS2msFLAG = 2TCC2MSFLAG = 3SYS15MFLAG = 4SCANK

59、EYFLAG = 4ACZERO_FLAG = 5SYS60MSFLAG = 7 (4) 其他部分和上电初始化的汇编程序见附录程序清单。7.2 主程序代码部分本设计的主程序代码相当简单。当单片机经过初始化后,进入主循环中,若有 I/O 输入,则响应子程序模块,否则进入下一个程序模块,并等待有效的 I/O 口输入。ORG 0X000JMP STARTORG 0X008JMP TCC_INTSTART: CALL INITMAINLOOP: WDTCCALL MAINLOOP_SYSTIME ;产生系统所需要的时间CALL MAINLOOP_SPEAKER ;扬声器发声程序CALL MAINLOO

60、P_DISP ;4 个数码管显示程序CALL MAINLOOP_DEALKEY ;按键处理CALL MAINLOOP_DEAL ;显示内容处理CALL MAINLOOP_MOTOCTRL ;电动机控制CALL MAINLOOP_LAMP ;氖灯处理CALL MAINLOOP_DETECTAC ;交流检测处理CALL MIANLOOP_SPEAK3 ;检测到 15 分钟后,蜂鸣器响三声JMP MAINLOOP ;返回7.3 交流检测模块1. 模块功能描述本模块完成交流电的过零检测,即检测交流电的波形下降沿。2. 模块入口与出口定义本模块没有入口信号,检测的基准脉冲由 MAINLOOP_SYSTI

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论