基于单片机的家用红外按摩仪设计设计.docx
- 文档编号:24120819
- 上传时间:2023-05-24
- 格式:DOCX
- 页数:53
- 大小:2.39MB
基于单片机的家用红外按摩仪设计设计.docx
《基于单片机的家用红外按摩仪设计设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的家用红外按摩仪设计设计.docx(53页珍藏版)》请在冰豆网上搜索。
基于单片机的家用红外按摩仪设计设计
基于单片机的家用红外按摩仪设计设计
2015届毕业生
论文
题目:
基于单片机的家用红外按摩仪设计
院系名称:
学院
专业班级:
电信工程班
学生姓名:
学号:
2
指导教师:
教师职称:
讲师
2012年6月3日
摘要
本课题主要是家用远红外按摩器控制系统设计。
在设计开始之前必须先了解远红外按摩器设计要求、实现功能。
由此设计硬件电路,并按照要求选择合适的器件。
硬件电路主要是利用单片机作为最小系统,外扩展一系列其他模块电路来实现功能。
主要包括设计霍尔传感器电路,实现位置控制;设计继电器电路,控制按摩、震动和远红外加热;设计时针电路,实现实时时间显示及定时控制;设计电源电路,具有+12伏、+5伏和+6伏输出等。
软件设计则应根据现有的硬件电路,和制定的工作流程编写。
远红外按摩器系统的工作原理主要是通过用单片机作为主控部件,霍尔传感器作为位置采样部件,固态继电器及小型双路继电器作为开关部件,时钟芯片作为实时时钟及定时部件,蜂鸣器作为状态提示部件,外扩按摩电机,震动电机,远红外加热板,实现按摩器定位按摩,选择震动,选择远红外加热及实时时间显示和定时等功能。
除此之外,还可以通过按键电路的按键进行数据的复位,确定和选择等操作,以达到能根据用户的实际需求灵活的修改工作参数,让用户可以很方便的寻找到合适的按摩方式。
关键词:
最小系统;硬件电路;工作流程;软件设计
ABSTRACT
Themaintopicisthefarinfraredmassagebedcontrolsystemdesign.AtthebeginningofthedesignbeforetheJieYuaninfraredmassagebeddesignrequirements,toachievefunctional.Thedesignofthehardwarecircuit,andinaccordancewiththerequirementstochoosetherightdevice.thehardwarecircuitismainlytheuseofsingle-chipmicrocomputerasaminimumsystem,andaseriesofotherexpansionmodulecircuittorealizethefunctionof.MainlyincludesthedesignofHolzersensorcircuit,torealizethepositioncontrol;designofrelaycircuit,thecontrolmassage,vibrationandfarinfraredheating;clockcircuitdesign,toachieverealtimedisplayandtimingcontrol;designofpowersupplycircuit,withthe+12V,+5voltsandthe+6voltoutput,Softwaredesignshouldbebasedonexistinghardwarecircuit,andmaketheworkprocesstoprepare.
Farinfraredmassagebedcontrolsystemprincipleofworkmainlybyusingthesinglechipasthemaincontrolunit,Holzersensorasthepositionsamplingpart,solidstaterelayandsmalldualrelayaspartoftheswitch,theclockchipasarealtimeclockandtimingcomponents,buzzerasthestatepromptingpart,spreadthemassagemotor,vibrationmotor,farinfraredheatingplaterealizationofpositioningmassage,massagebed,selsctionofvibration,selectionoffarinfraredheatingandrealtimedisplayandtimingfunctions.Inaddition,butalsothroughbuttoncircuitkeysfordatareduction,identificationandselectionofoperation,inordertoachieveaccordingtotheuser’sactualdemandforflexiblemodifyoperatingparameters,sothatuserscaneasilyfindthesuitablewayofmassage.
Keywords:
minimumsystem;hardwarecircuit;workflow;softwaredesign
第一章绪论1
1.1引言1
1.2选题背景及现状1
第二章总体方案设计2
第三章具体方案设计3
3.1单片机的选择......3
3.1.1选择AT89C52的理由3
3.1.2管脚信息的介绍4
3.2实时时间电路5
3.2.1计时模式的选择5
3.2.2时钟芯片的选择5
3.2.3各管脚的信息介绍5
3.3数码显示电路的设计6
3.4温度检测模块的设计7
3.4.1温度传感器的选择7
3.4.2各管脚的信息介绍8
3.5霍尔电路模块的设计8
3.6电机及加热模块的设计9
第四章主要硬件器件简介11
4.1AT89C52单片机11
4.1.1AT89C52系列单片机的优点11
4.1.2AT89C52单片机的内部结构11
4.1.3AT89C52单片机的引脚功能说明12
4.1.4AT89C52单片机的时钟电路12
4.1.5AT89C52单片机的复位电路13
4.2时钟芯片(DS1302)14
4.2.1引脚功能及结构14
4.2.2注意事项15
4.3温度传感器(DS18B20)15
4.3.1特点15
4.3.2DS18B20使用中注意事项15
4.4AT24C16EEPROM简介16
4.4.1特点16
4.4.2引脚说明16
4.5反相器ULN2003器件16
4.5.1作用17
4.5.2接线介绍17
4.6固态继电器17
4.6.1固态继电器的优缺点17
4.6.2固态继电器的使用注意事项18
第五章功能分析及参数计算19
5.1功能分析19
5.1.1时钟功能19
5.1.2温度检测功能19
5.1.3局部按摩功能19
5.1.4按摩机热疗功能19
5.1.5提示报警功能19
5.2参数计算19
5.2.1复位电路19
5.2.2数码管电路的计算20
5.2.3DS1302时钟芯片晶振的计算20
第六章硬件开发工具简介21
6.1原理图的绘制21
6.2画原理图元件库22
6.3电路板设计22
6.4绘制PCB图23
6.5绘图总结24
第七章软件系统设计26
7.1系统工作流程图26
7.2软件设计26
7.2.1系统初始化的程序设计26
7.2.2按键扫描子程序设计27
7.2.3选择按摩位置的子程序设计28
第八章调试过程30
8.1硬件调试30
8.2软件调试30
8.2.1调试软件30
8.2.2调试程序31
第九章结论34
9.1论文总结34
9.2主要工作及结论34
9.3存在问题34
9.4感想34
参考文献35
附录A:
原理图36
附录C:
PCB图37
第一章绪论
1.1引言
随着经济的不断发展,人民生活水平的不断提高,温饱已不再是困扰老百姓的头等大事,人们已将注意力转向各种提高精神享受、提高身体机能上。
正是如此,各种保健器械如雨后春笋般不断涌现,诸如按摩床、按摩垫、足浴盆等数不胜数!
其中,按摩器又以其完善的设计、强大的功能深受人们的青睐。
按摩器是根据中国博大精深的经络学、人体工程学及欧美保健科技,精心设计而成。
设计独特、轻便、简捷,集推拿、指压、刮痧、热灸、远红外振动按摩,又分自动与手动两种工作方式,鉴于其平台的良好,仍可以对之进行不断的加装扩展其功能。
轻便型设计,简洁大方,易安装,可折叠,空间占用率低等优点,是亿万家庭寻求健康、休闲养生的最佳保健产品。
较于其他保健产品,其具有以下三大优点:
1、脊椎矫正
坐垫后背中置有一组电机,在微电脑控制下,按设计程序沿脊柱上下振动,对脊椎弯曲、关
节功能紊乱等状况进行矫正,对脊神经进行梳理,以纠正神经功能异常,维护神经正常传导。
神经功能的正常化能够增强内脏器官及四肢组织的活力,以此治疗多种慢性病症。
2、指压按摩
指压医疗原理认为,疾病是体内能量得不到释放和能量不均所引起的。
指压按摩是通过手掌、大拇指。
手指关节、肘、膝、甚至是脚底进行施压,沿着经穴线和能量导管,对全身数百个经穴进行按摩,安全、有效、简便、易行,对维护健康、增强活力、均衡气血起着重要的作用。
采用独特的排列方式,利用自身体重对人体背部重要穴位施压,是一种最自然的指压按摩方式。
3、热疗
热属于物理能量的一种,其生物学上的变化,在物理治疗中是最常用的一种方法。
通过对人体表面的经络、穴位及疼痛的部位施加一定的热量,给予经络以温暖的气息,使气血循环通畅,从而达到防病治病的目的。
从现代医学上讲,利用热疗,能提高细胞组织的能力,减轻疼痛,增强血液循环,缓解炎症性反应和水肿,从而发挥其临床治疗效果。
1.2选题背景及现状
当今信息革命的浪潮正在冲击着世界的每一个角落,世界同一市场正在形成,全球经济一体
化正以超乎寻常的速度发展。
因此,保健业所面临的环境比以往任何时候都要复杂多变,竞争之激烈。
保健业要有能力对其外部环境的瞬间变化作出快捷反应,必须采用先进的保健技术、战略理念,以求得长期的生存和发展。
按摩器也是随着科技进步,逐步发展,其发展趋势有智能化、小型化、集成化、专业化、信息化等等。
而国内的保健企业却并未顺应时代的潮流,而是只在中低端发展,其生产的产品集成度低,只能近乎于零。
本课题的设计采用了最小系统是AT89C52单片机,这种型号的单片机有很广泛的使用,它结构简单、使用方便,对它的硬件进行设计,这为以后的设计奠定了基础。
本课题研究的远红外按摩器具有实时时间显示及定时控制、加热振动、温度报警等功能,这样更有助于实现按摩器的集成化、智能化。
第二章总体方案设计
这次设计主要是针对远红外按摩器控制系统的设计。
为了使其成本小,功能齐全,所以选择器件的时候,要科学选择各原器件,使个器件硬件资源能得到充分的利用。
硬件电路主要是利用单片机AT89C52作为最小系统,外扩展一系列其他模块芯片来实现控制功能。
主要包括霍尔传感器、继电器电路、时钟电路、电源电路,按键控制电路等。
其具体硬件结构框图如图2.1所示:
远红外按摩器的控制系统的主要模块可划分为7部分:
1、时钟电路。
该模块主要用于远红外按摩器的实时计时。
2、显示模块。
该模块主要用于远红外按摩器的实时显示和定时的倒计时显示,便于用户了解实
时时间和按摩的进程。
3、温度检测模块。
该模块主要用于完成对远红外按摩器的温度检测。
4、霍尔电路模块。
该模块主要用于实现位置采样,并送入单片机,用于了解按摩部位的状况,
使单片机及时作出决策。
5、电机及加热模块。
该模块主要完成的是对按摩器的主电路进行控制:
1,按摩电机的控制;2,振动电机的控制;3,加热电路的控制。
利用固态继电器和普通继电器的组合对三个主电路进行控制,达到弱电控强电的目的,有效地保护用户。
6、按键输入指示模块。
该模块负责响应按摩器的20个按键输入信号,并利用指示灯显示当前工作状态。
7、蜂鸣器提示模块。
该模块完成的是按摩床的报警和工作提示,在一般工作情况下,蜂鸣器都会发声报警(例如超温报警,超市报警)。
第三章具体方案设计
3.1单片机的选择
这次硬件设计采用AT89C52如图3.1所示:
3.1.1选择AT89C52的理由:
此次选择了芯片AT98C52单片机,由于该单片机的内部ROM为8KB,比AT89C51单片机的多了4KB;而且内部RAM(256B)也比51系列的单片机(128B)多了128B,这样就避免了因为存储空间不足而进行的存储器扩展,大大方便了设计的工作,而且也减少了因扩展而增加的成本价格;另一方面,52系列的单片拥有8个中断源,3个定时/计数器,具有比其他型号单片机更完整的功能。
而且52系列单片机能和51系列单片机的指令完全兼容,这样就为在处理一些51系列指令的时候提供了方便,进而使由单片机组成的最小系统功能更加完善。
另外,52系列单片机选用的晶振频率为11.0592MHZ。
通常用11.0592MHZ晶振频率是为了得到标准的无误差的波特率,具体计算过程如下:
如我们要得到9600bit/s的波特率,晶振频率为11.0592MHZ和12MHZ,定时器1为模式2,SMOD设为0,分别看看那所要求的TH1为何值。
代入公式:
对于11.0592MHZ:
9600=(1÷32)×((11.0592M/12)/(256-TH1))
TH1=253
对于12MHZ:
9600=(1÷32)×((12M/12)/(256-TH1))
TH1
252.7
上面的计算可以看出使用12MHZ晶振频率的时候计算出来的TH1不为整数,而TH1的值只能取整数,否则它就会有一定的误差存在不能产生精确的9600bit/s波特率。
当然一定的误差是可以在使用中被接受的,就算使用11.0592MHZ的晶体振荡器也会因晶体本身所存在的误差使波特率产生误差,但晶体本身的误差对波特率的影响是十分之小的,可以忽略不计。
此外,我们选择AT89C52而没有选择AT89C51的单片机,这是因为前者多了一个T2定时器,在进行通信的过程中,我们要选用不同的波特率,所以只能选用方式1和方式3,其速率是取决于定时器1或定时器2的定时值(溢出速率)。
AT89C51和AT89C2051等51系列芯片只有两个定时器,定时器0和定时器1,而定时器2是89C52系列芯片才有的。
这样就使该控制系统具有更全面的功能。
3.1.2管脚信息的介绍:
此次设计主要利用单片机AT89C52作为主导模块,扩展其他功能模块。
P0口主要控制按键的选择功能如表3.1;
P1口主要用于输出按摩电机的启停信号、正反转信号、振动电机的启停信号、热疗信号和蜂鸣器的报警信号如表3.1。
P2口主要用于控制数码显示电路在数码管上显示时间结果。
P3口主要用于输入霍尔传感器的位置采样信号。
时钟振荡器如图3.2所示:
此次总的采用内部(见图3.2左图),其中振荡电路的电容有两种材料可以选择,一种是石英晶体,另一种是陶瓷谐振器;前者要求电容容量在30PF左右,后者为40PF左右,所以考虑到成本方面的问题,此次设计中采用石英晶体。
电容容量不能过大或过小,这是因为电容的容量过大或是过小会影响到振荡频率的高低、震荡器工作的稳定性、起振的难易程度及温度的稳定性。
P0口引脚
功能特性
P1口引脚
功能特性
P0.1
按摩选择键
P1.0
蜂鸣
P0.2
开关键
P1.1
反转
P0.3
按摩键
P1.2
振动
P0.4
振动键
P1.3
加热
P0.5
热疗键
P1.4
运转
P0.6
时间时键
P0.7
时间分键
但是用户也可以采用外部振荡电路(见图3.2右图),这是时钟脉冲接XTAL1,即内部时钟发生器的输入端,而且XTAL2悬空。
但是外部时钟脉冲对最小高电平持续时间和最大低电平持续时间要求比较严格,这样就会增加实现的难度,所以选择了内部振荡电路。
3.2实时时间电路
在确定了单片机的型号后,我决定按照之前划分的功能模块进行设计。
首先进行的是实时时间模块的设计,该模块主要用于远红外按摩器的实时计时。
3.2.1计时模式的选择
首先我考虑到单片机本身可以计时,这样可以简化设计,无需增加太多器件就可以达到计时的目的。
但考虑到实时的要求和用单片机计时会耗费不少的资源,所以我决定放弃用单片机计时,选用时钟芯片计时。
3.2.2时钟芯片的选择
在放弃利用单片机计时之后,我开始搜集并比较现有的计时芯片。
在参考了资料后,我选取了2种芯片进行比较、筛选,分别是都是美国Dallas公司的DS1616和DS1302,通过比较他们的功能和成本方面的问题来决定选择哪一型号的芯片。
DS1616是美国Dallas公司推出的一种带实时时钟的集成数据采集记录器件。
它由控制逻辑、实时时钟、通信端口、温度传感器、A/D转换器等构成。
片内还集成了1个范围在-40~+85摄氏度的温度计和3路A/D通道。
DS1302也是美国Dallas公司推出的一款计时器件。
其可以工作于24小时模式和AM/PM的12小时模式。
器件采用了简单的I2C三线通信方式,便于节省芯片和与之接口的微处理器的管教的数量。
芯片有着2.0—5.5V的宽供电电压范围,并且功耗很低,在2.0V供电时仅耗300mA电流。
从设计的难易度、时钟工作方式、经济型和节约资源的角度综合来考虑,我选择使用DS1302时钟芯片作为本次设计的计时芯片。
3.2.3各管脚的信息介绍
X1,X2连接32.768khz晶振,为芯片提供计时脉冲。
GND:
电源地。
RST:
复位引脚。
I/O:
数据输入、输出引脚。
SCLK:
串行时钟输入。
VCC1、VCC2:
主电源于后备电源引脚。
另外,时钟芯片DS1302与单片机的连接仅需要3条线,即SCLK、I/O、RST。
3.3数码显示电路的设计
在这次硬件的设计中,最后的环节就是把数据输入到数码显示电路上进行显示,数码显示的方式有两种:
一种动态显示,另一种是静态显示。
在这两种显示方式中,静态显示是指需要显示的字符的各字段连续通电流,所显示的字段连续发光;动态显示是单片机依次发出段选控制字和对应哪一位LED显示器的位选控制信号,显示器逐个循环点亮。
适当选择扫描速度,利用人眼的“留光”效应,使得看上去好像这几位显示器同时在显示一样,而在动态扫描显示控制中,同一时刻,实际上只有一位LED显示器被点亮。
基于以上的原理,动态显示每个时刻都要显示,所以会有时间的停留,大约每一位要停留1ms,再加上动态显示显示的亮度没有静态显示高,而且静态显示占用单片机的时间比较少,接线也比较简单,所以硬件的成本也比动态显示的稍高一些,综合两种显示的性能和成本情况,我选择采用静态显示进行显示。
在确定了显示方式之后,接下来就是选择数码显示器件,鉴于要实现时钟显示,就必须扩展I/O口。
要扩展I/O口,就要选用移位寄存器或利用外部RAM扩展LED。
首先,我考虑的是串行输入的移位寄存器,因为串行的接线比较简单,这一方面能减少错误的可能性,另一方面能降低设计的硬件成本;这次需要将数据显示在数码管上,所以需要并行输出,基于这些要求,我选择了74HC595系列的移位寄存器和8位显示器
其具体的电路图如图3.7所示:
QS引脚:
级联输出端。
该芯片的QS引脚是为移动寄存器之间的级联而设计的。
当需要使用两片或以上的移位寄存器时,需要将此引脚接到下一移位寄存器的串行输入端。
CLR是主复位(低电平)引脚,本设计中接高电平,保证不复位。
SLCK为存储寄存器时钟输入引脚,该引脚接在P2.2引脚上,在PLCK的上升沿,即由单片机输出的SP脉冲的上升沿,将在八位位移缓存器的数据存入到八位平行输出缓存器。
SCLK为移位寄存器时钟输入引脚,该引脚接在单片机的P2.3引脚上,在单片机输出的SCLK的上升沿,将输入引脚上的数据移入到移位寄存器中;
SDA为数据输入引脚,第一个移位寄存器的该引脚连接在P2.0引脚上,其他的SDA接前一个移位寄存器的数据输出引脚;
Q0…Q7引脚为平行三态输出,该引脚和数码管的八段管脚相连接,进行数码管的显示;
CLR是主复位(低电平)引脚,本设计中接高电平,保证不复位;
EN为输出有效引脚,当/E的控制讯号为低电平时,平行输出端的输出值,等于平行输出缓存器所储存的值。
而当EN的控制讯号为高电位,也就是输出关闭时,平行输出端会维持在高阻抗状态,在此次设计中直接接地。
在本设计中,74HC595的工作过程如图3.5:
其工作过程大致可分为三步:
1、串行移位寄存器输入端SCLK的上升沿,数据串入74HC595的移位寄存器;
2、串行锁存器输入端SLCK的上升沿,将移入数据寄存器中的数据送入到输出锁存器,锁存输出;
3、EN置高电平,锁存器的数据并行输出。
3.4温度检测模块的设计
该模块主要是完成对远红外按摩器的温度进行检测,在达到或超过温限后,发出报警信号。
3.4.1温度传感器的选择
在此次设计中,要用温度传感器进行温度检测并及时提交单片机判断,防止加热温度过高,避免用户产生不舒适感和有效保护用户的人身安全。
在参考了各种资料后,我选出了三种测温芯片,进行比较以此来挑选出最佳芯片进行测温,分别为PT100,AD590和DS18B20。
这三者是最常用的三个类型的温度传感器,分属于传统的分立式温度传感器、模拟集成温度传感器和智能温度传感器。
PT100温度传感器,是铂热电阻,它的阻值会随着温度的变化而变化。
PT后的100即表示它在0°C时阻值为100欧姆,在100°C时它的阻值约为138.5欧姆。
但是它必须无A/D功能,再利用它时我们要另外设计A/D转换电路。
AD590是美国模拟器件公司生产的模拟温度集成传感器,其主要特点是功能单一、测温误差小、响应速度快、体积小、微功耗,适合远距离测温、控温,不需要进行非线性校准。
DS18B20是美国DALLAS半导体公司继DS1820之后推出的一种改进型智能温度传感器,其独特的一线接口,只需要一条口线通信多点能力,简化了分布式温度传感应用无需外部元件可用数据总线供电电压范围为3.0V至5.5V无需备用电源测量温度范围为-55°C至+125°C。
在对比了三者的设计的难易度、工作方式、购买价格等因素,我决定选用DS18B20作为设计的温度传感器。
3.4.2各管脚的信息介绍
DS18B20管脚示意图,如下图3.6;
DQ为数字信号输入/输出端;
GND为电源地;
VDD为外接供电电源输入端(在寄生电源接线方式时接地)。
3.5霍尔电路模块的设计
由于本次设计中要求检测按摩部件的位置,而位置检测最常用的就是霍尔传感器,它的检测对象是磁场,故按摩器件上装有磁性刚体以便其检测到。
本部分电路最主要的元件就是霍尔传感器,也叫霍尔接近开关,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 家用 红外 按摩 设计