全自动摇篮的设计资料.docx
《全自动摇篮的设计资料.docx》由会员分享,可在线阅读,更多相关《全自动摇篮的设计资料.docx(48页珍藏版)》请在冰豆网上搜索。
全自动摇篮的设计资料
全自动摇篮的设计
摘要
随着社会经济的发展,人们的生活也都逐渐提高,许多拥有婴幼儿的家庭都希望孩子有个良好的成长环境,但是年青的父母需要同时兼顾宝宝和家庭生活感到非常疲惫,他们需要一个不仅舒适而且具有人工智能的摇篮。
智能婴儿摇篮可以提供给宝宝舒适摇晃,又可以通过音乐启发智力发育,使得妈妈们也可腾出手来处理家务或者休息。
从而大大的减轻了婴幼儿父母的劳动负担,促进了婴儿的深度睡眠,提高了大人和小孩的睡眠质量,为婴儿的健康成长提供保证。
本次毕业设计拟采用单片机作为全自动摇篮的核心控制部件,硬件电路分声控电路、电机驱动、液晶显示模块和人机交互等模块。
人机交互是由定时按键和LCD1602组成,摇篮晃动的时间是由按键预置的;LCD1602可以显示计数时间和定时时间。
软件部分应用单片机C语言实现了本设计的全部控制功能,包括定时设置、电机驱动、状态显示、音乐播放等。
关键字:
单片机;声控;电机驱动;定时
DesignofAutomaticCradle
ABSTRACT
Withthesocialandeconomicdevelopment,people'slivesarealsograduallyimproved,manyhouseholdswhichhaveinfantchildrenwanttohaveagoodgrowthenvironment,butmanyyoungparentsneednotonlyworkingbutalsotakingcareofthebaby,theyfeelverytiredandlookforwardacomfortableandartificialintelligencecradle.Anintelligentbabycradlecanprovidecomforttothebabyshaking,andinspireintellectualdevelopmentthroughmusic.Thenmomshaveafreetimetodealwithhouseholdchoresandrest.Withtheintelligentcradle,theinfantsburdenofparentswillbereducedgreatly,andsleepqualityofbabyandparentswillbeimproved,andbabypromotesdeepsleepforthehealthygrowth.
Thedesignisdiscussedinthispaper,whichintendstousemicro-controllerasthecoreofthecradleautomaticcontrolcomponents,hardwarecircuitofvoicecircuits,motordrives,LCDmodulesandinteractivemodules.Human-computerinteractioniscomposedbythetimingbuttonsandLCD,thecradleofshakingtimeispresetbuttons;LCDcandisplaythecounttimeandregulartime.Softwarepartoftheapplicationmicro-controllerClanguagetoimplementallthecontrolfunctionsofthedesign,includingthetimingsettings,motordrives,statusdisplay,musicplayerandsoon.
Keywords:
MICROCONTRLLER;VOICE;MOTORDRIVE;TIMED
1引言
1.1研究背景
现代家庭大多是独生子女家庭,父母对子女的婴儿期培育非常重视。
然而养育婴儿是一件非常消耗时间和精力的事情,常常会与父母快节奏的工作生活产生冲突。
有些父母因为夜间照顾婴儿,长时间不能得到很好的休息,甚至严重影响了健康和正常的工作。
据了解,有很多的上班族父母都会为照顾婴儿而苦恼[1]。
中国人在养育婴儿的传统方式上,都是怀抱着婴儿轻轻拍打摇动或者使用人力推动摇篮,使婴儿安静下来进行睡眠,但是这样做有很多方面不利于婴儿发育和成长。
由于传统的摇篮都是采人工推摇方式,有吊篮、摇桶、摇床等,使用起来不仅费时费力,增加了许多劳动负担,而且产生较大的噪音,使婴儿很难进行深度睡眠。
同时,传统看护婴儿的有些方式不当,会使婴儿的大脑处于失重、充血状态等现象,严重影响了婴儿的大脑发育和骨骼生长[2]。
对于婴幼儿来说,睡觉和吃奶一样,是他们生长过程中的头等大事。
一款合适的摇篮不仅能保证婴儿的健康成长,也能在很大程度上减轻父母的负担,使父母不必为整夜照顾婴儿而劳烦,从而保证大人和孩子都拥有更高的生活质量。
使用传统婴儿摇篮,需要看护者一直陪伴在婴儿旁边,不仅耗时而且往往使看护者很疲惫[3]。
多功能婴儿摇篮控制模块通过单片机的控制,实现了自动控制,减轻了婴儿看护者的劳动负担,促进了婴儿的健康睡眠,提高了大人和小孩的生活质量。
1.2目的与意义
传统婴儿摇篮,都是人工控制摇篮,需要看护者一直陪伴在婴儿旁边。
新生婴儿还比较柔软,睡觉不会翻身,长时间同一边侧睡也会使孩子头型歪偏,看护者全程照看能给婴儿一个更安全、更良好的生活环境,但这样一来不仅耗时而且往往使看护者很疲惫。
随着社会经济的发展,人们的生活也都逐渐提高,许多拥有婴幼儿的家庭都希望孩子有个良好的成长环境,但是年青的父母需要同时兼顾宝宝和家庭生活感到非常疲惫,他们需要一个不仅舒适而且具有人工智能的摇篮[4]。
智能婴儿摇篮可以提供给宝宝舒适摇晃,又可以通过音乐启发智力发育,使得妈妈们也可腾出手来处理家务或者休息。
从而大大的减轻了婴幼儿父母的劳动负担,促进了婴儿的深度睡眠,提高了大人和小孩的睡眠质量,为婴儿的健康成长提供保证,亦保证父母的正常生活和工作。
本次毕业设计拟采用单片机作为全自动摇篮的核心控制部件,实现婴儿哭闹时自动摇动摇篮,并能改变摇动的频率以及播放柔和的音乐能起到催眠、娱乐等功能。
应用单片机设计,具有低功耗、成本低、控制简单等优点,具有一定的市场应有前景。
1.3论文结构安排
本论文以全自动摇篮的设计的硬件设计为主要内容,以单片机STC89C52RC作为主控制器的硬件设计方案,并对系统工作原理等进行了简单介绍。
全文共分为5个章节:
第1章是引言。
简单陈述研究背景、目的与意义。
第2章是系统原理及单元电路设计。
这章主要是介绍系统硬件设计方案的总体框图,分析各单元电路的设计。
包括声音传感器、单片机最小系统、LCD1602液晶显示模块、人机交互模块、电机控制模块和音乐播放模块。
第3章是软件设计。
简要介绍系统的软件设计框图。
第4章是系统调试。
主要讲述系统硬件电路调试过程、问题及解决办法。
最后一章是结论。
简述设计的优、缺点,以及改进的建议。
2系统原理及单元电路设计
2.1系统原理框图
系统主要由声音传感器模块、单片机控制模块、LCD1602液晶显示模块、人机交互模块、电机控制模块和音乐播放模块组成。
系统的原理框图如图2.1所示。
硬件系统以单片机STC89C52RC作为主控制器,以声音传感器模块为数据采集器,LCD1602液晶显示模块信息显示器,从而实现数据采集、计时信息显示等功能。
通过声音触发单片机,进而控制步进电机的启动,音乐模块音乐的播放。
人机交互模块用来实现对系统的手工控制,LCD1602可以显示当前系统工作模式和定时时间。
图2.1系统原理框图
2.2声音传感器
声音传感器的原理同于麦克风的基本原理,就是有一个金属膜片经过声音的震动以后,在磁铁内运动,从而产生电信号。
将震动转换成讯号的方式基本上有两种,一种是动圈式,也就是将振膜连到一个线圈的尾端,然后整个线圈套在一个磁铁上,就好像喇叭一样,当振膜震动时,在线圈里面就会产生讯号[5]。
另外一种是所谓的电容式,就好像电话的受话器一样,藉着振膜的震动来改变电容值,因而改变电阻,就能改变电流,变成讯号。
电容式的因为需要电流才能变成讯号,所以需要电源,比动圈式使用成本高。
主要参数:
1.尺寸:
长32mmX宽17mmX高15mm;
2.主要芯片:
LM393、驻极体话筒;
3.工作电压:
直流4至6V。
主要特点:
1.具有信号输出指示;
2.单路信号输出;
3.输出有效信号为低电平;
4.当有声音时输出低电平,信号灯亮;
5.可以用于声控灯,配合光敏传感器做声光报警,以及声音控制,声音检测的场合;
6.电路板输出开关量[6]。
声音检测电路如下图2.2所示:
图2.2声音检测电路
2.3单片机最小系统
单片机的最小系统是由组成单片机系统必需的一些元件构成的,除了单片机外,还需要包括电源供电电路、时钟电路、复位电路[7]。
如下图2.3所示:
图2.3单片机最小系统[8]
2.3.1STC89C52RC介绍
STC89C52RC单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择[9]。
主要参数特性:
1.增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码完全兼容传统8051;
2.工作电压:
5.5V~3.3V(5V单片机)/3.8V~2.0V(3V单片机);
3.工作频率范围:
0~40MHz,相当于普通8051的0~80MHz,实际工作频率可达48MHz;
4.用户应用程序空间为8K字节;
5.片上集成512字节RAM;
6.通用I/O口(32个),复位后为:
P1/P2/P3/P4是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻;
7.ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序,数秒即可完成一片;
8.具有EEPROM功能;
9.具有看门狗功能;
10.共3个16位定时器/计数器。
即定时器T0、T1、T2;
11.外部中断4路,下降沿中断或低电平触发电路,PowerDown模式可由外部中断低电平触发中断方式唤醒;
12.通用异步串行口(UART),还可用定时器软件实现多个UART;
13.工作温度范围:
-40~+85℃(工业级)/0~75℃(商业级);
14.PDIP封装。
主要工作模式
1.掉电模式:
典型功耗<0.1μA,可由外部中断唤醒,中断返回后,继续执行原程序;
2.空闲模式:
典型功耗2mA;
3.正常工作模式:
典型功耗4mA~7mA;
4.掉电模式可由外部中断唤醒,适用于水表、气表等电池供电系统及便携设备[10]。
引脚功能说明,引脚图如下图2.4所示:
图2.4STC89C52RC引脚图[10]
VCC(40引脚):
电源电压。
VSS(20引脚):
接地。
P0端口(P0.0~P0.7,39~32引脚):
P0口是一个漏极开路的位双向/口。
P1端口(P1.0~P1.7,1~8引脚):
P1口是一个带内部上拉电阻的位双向/口。
P1.0和P1.1还可以作为定时器/计数器2的外部技术输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX),具体参见下表2.1:
表2.1P1.0和P1.1引脚复用功能
引脚号
功能特性
P1.0
T2(定时器/计数器2外部计数输入),时钟输出
P1.1
T2EX(定时器/计数器2捕获/重装触发和方向控制)
P2端口(P2.0~P2.7,21~28引脚):
P2口是一个带内部上拉电阻的位双向/端口。
P3端口(P3.0~P3.7,10~17引脚):
P3口是一个带内部上拉电阻的位双向/端口。
P3口除作为一般I/O口外,还有其他一些复用功能,如下表2.2所示:
表2.2P3口引脚复用功能
引脚号
复用功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
(外部中断0)
P3.3
(外部中断1)
P3.4
T0(定时器0的外部输入)
P3.5
T1(定时器1的外部输入)
P3.6
(外部数据存储器写选通)
P3.7
(外部数据存储器读选通)
RST(9引脚):
复位输入。
ALE/
(30引脚):
地址锁存控制信号(ALE/
)是访问外部程序存储器时,锁存低位地址的输出脉冲。
(引脚):
外部程序存储器选通信号(
)是外部程序存储器选通信号。
/VPP(31引脚):
访问外部程序存储器控制信号。
XTAL1(19引脚):
振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2(18引脚):
振荡器反相放大器的输入端。
中断源[10]
STC89C52RC有6个中断源:
两个外部中断(
和
),三个定时中断(定时器0、1、2)和一个串行中断。
如图2,每个中断源都可以通过置位或清除特殊寄存器IE中的相关中断允许控制位分别使得中断源有效或无效。
IE还包括一个中断允许总控制位EA,它能一次禁止所有中断。
图2.5为中断允许控制寄存器(IE)
图2.5中断允许控制寄存器(IE)
中断允许控制位=1,允许中断;
中断允许控制位=0,禁止中断。
表2.3IE各位功能
符号
位地址
功能
EA
IE.7
中断总允许控制位。
EA=0,中断总禁止;EA=1,各中断,由各自的控制位设定
IE.6
预留
ET2
IE.5
定时器2中断允许控制位
ES
IE.4
串行口中断允许控制位
ET1
IE.3
定时器1中断允许控制位
EX1
IE.2
外部中断1允许控制位
ET0
IE.1
定时器0中断允许控制位
EX0
IE.0
外部中断0允许控制位
2.3.2时钟电路
单片机工作时,从取指令到译码再到微操作,都必须在时钟信号控制下才能进行,时钟电路为单片机工作提供基本时钟的。
单片机时钟信号通常的产生方式有两种:
内部时钟方式和外部时钟方式[11]。
XTAL1和XTAL2是独立的输入和输出反相放大器,它们可以被配置为使用石英晶振的片内振荡器,或者是器件直接由外部时钟驱动。
图2.3为内部时钟方式,在单片机XTAL1和XTAL2引脚上跨接一个晶振和两个稳频电容,可以与单片机片内的电路构成一个稳定的自激振荡器[12]。
晶振的取值范围一般为0MHZ至24MHZ。
外接电容的作用是对振荡器进行频率微调,使振荡信号与晶振频率一致,同时起到稳定频率的作用,一般选用20pF至30pF的瓷片电容。
外部时钟方式是在单片机XTAL1引脚上外接一个稳定的时钟信号,一般用于多片单片机同时工作的时候,同一时钟信号可以保证单片机的工作同步。
2.3.3复位电路
在单片机系统中,复位电路是非常关键的,当程序运行不正常或停止运行时,就需要进行复位,复位电路将单片机内部各电路的状态恢复到一个确定的初始值,并从这个状态开始工作[13]。
单片机的复位条件,必须使其RST引脚上持续出现两个或两个以上的机器周期的高电平。
复位操作通常有两种基本形式:
上电复位和开关复位。
上电复位电路中,利用电容充电来实现复位。
在电源接通的瞬间,RST引脚上的电位是高电平,电源接通后对电容进行快速充电,随着充电的进行,RST引脚上的电位会逐渐降为低电平。
只要保证RST引脚上高电平出现得时间大于两个机器周期,就可以实现复位[14]。
2.4LCD1602液晶显示模块
LCD1602液晶显示模块与单片机连接,由P0口输出控制,显示系统状态,包括当前状态、工作模式和计数时间。
其电路如下图2.6所示:
图2.6LCD1602液晶显示电路
2.4.1LCD1602介绍
LCD1602分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别。
LCD1602主要技术参数:
1.显示容量:
16×2个字符;
2.芯片工作电压:
4.5—5.5V;
3.工作电流:
2.0mA(5.0V);
4.模块最佳工作电压:
5.0V;
5.字符尺寸:
2.95×4.35(W×H)mm。
引脚功能说明:
LCD1602采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表2.4所示:
表2.4引脚接口说明表
编号
符号
引脚说明
编号
符号
引脚说明
1
VSS
电源地
9
D2
数据
2
VDD
电源正极
10
D3
数据
3
VL
液晶显示偏压
11
D4
数据
4
RS
数据/命令选择
12
D5
数据
5
R/W
读/写选择
13
D6
数据
6
E
使能信号
14
D7
数据
7
D0
数据
15
BLA
背光源正极
8
D1
数据
16
BLK
背光源负极
第1脚:
VSS为地电源。
第2脚:
VDD接5V正电源。
第3脚:
VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。
第4脚:
RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
第5脚:
R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。
当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据[15]。
第6脚:
E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
第7~14脚:
D0~D7为8位双向数据线。
第15脚:
背光源正极。
第16脚:
背光源负极[15]。
LCD1602的指令说明及时序:
LCD1602液晶模块内部的控制器共有11条控制指令,如表2.5所示:
表2.5控制命令表
序号
指令
RS
R/W
D7
D6
D5
D4
D3
D2
D1
D0
1
清显示
0
0
0
0
0
0
0
0
0
1
2
光标返回
0
0
0
0
0
0
0
0
1
——
3
置输入模式
0
0
0
0
0
0
0
1
I/D
S
4
显示开/关控制
0
0
0
0
0
0
1
D
C
B
5
光标或字符移位
0
0
0
0
0
1
S/C
R/L
——
——
6
置功能
0
0
0
0
1
DL
N
F
——
——
7
置字符发生存贮器地址
0
0
0
1
字符发生存贮器地址
8
置数据存贮器地址
0
0
1
显示数据存贮器地址
9
读忙标志或地址
0
1
BF
计数器地址
10
写数到CGRAM或DDRAM)
1
0
要写的数据内容
11
从CGRAM或DDRAM读数
1
1
读出的数据内容
1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。
指令1:
清显示,指令码01H,光标复位到地址00H位置。
指令2:
光标复位,光标返回到地址00H。
指令3:
光标和显示模式设置I/D:
光标移动方向,高电平右移,低电平左移S:
屏幕上所有文字是否左移或者右移。
高电平表示有效,低电平则无效。
指令4:
显示开关控制。
D:
控制整体显示的开与关,高电平表示开显示,低电平表示关显示C:
控制光标的开与关,高电平表示有光标,低电平表示无光标B:
控制光标是否闪烁,高电平闪烁,低电平不闪烁。
指令5:
光标或显示移位S/C:
高电平时移动显示的文字,低电平时移动光标。
指令6:
功能设置命令DL:
高电平时为4位总线,低电平时为8位总线N:
低电平时为单行显示,高电平时双行显示F:
低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。
指令7:
字符发生器RAM地址设置。
指令8:
DDRAM地址设置。
指令9:
读忙信号和光标地址BF:
为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。
指令10:
写数据。
指令11:
读数据。
与HD44780相兼容的芯片时序表2.6如下:
表2.6基本操作时序表
读状态
输入
RS=L,R/W=H,E=H
输出
D0—D7=状态字
写指令
输入
RS=L,R/W=L,D0—D7=指令码,E=高脉冲
输出
无
读数据
输入
RS=H,R/W=H,E=H
输出
D0—D7=数据
写数据
输入
RS=H,R/W=L,D0—D7=数据,E=高脉冲
输出
无
液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。
要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符,LCD1602的内部显示地址如下图2.7所示:
图2.7LCD1602内部显示地址[15]
LCD1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,CGROM和CGRAM中字符代码与图形对应图如下图2.8所示:
图2.8CGROM和CGRAM中字符代码与图形对应图[15]
2.5人机交互模块
人机交互模块是切换摇篮工作模式的一个操作平台,通过按键电路,可以根据需要选择不同的工作模式。
另外,还可以设置定时时间。
按键电路如下图2.9所示:
图2.9按键电路
该系统的键盘设计是采用扫描方式实现的矩阵键盘。
这样在没有按键按下的情况下,管脚电平为高电平,如果有按键按下,则相应的列线管脚为低电平,从而触发中断进入中断服务程序,进而获得输入的数据。
2.5.1按键电路功能
如上图2.9所示,由上到下分别命名为按键1、按键2、按键3和按键4。
不同按键对应不同的功能。
按键1:
模式切换。
按下按键,可以切换不同的工作模式。
按键2:
在自动模式下,该键空置。
在手动模式下,该键为切换设置,设置字段为时、分、秒。
按键3:
在自动模式下,按下按键,设置为步进电机快速转动。
在手动模式下,设置为对预设时间的“加”。
按键4:
在自动模式下,按下按键,设置为步进电机慢速转动。
在手动模式下,设置为对预设时间的“减”。
2.6电机控制模块
电机控制模块是本次设计的核心部分。
电机主要通过ULN2003A芯片增大电流驱动,在实际编程中,通过控制脉冲的顺序来控制电机的正反转,利用软件延时实现对电机的转速的控制。
电机驱动电路如下图2.10所示:
图2.10电机驱动电路
2.6.1ULN2003A芯片介绍
ULN2003A电路是美国TexasInstruments公司和Sprague公司开发的高压大电流达林顿晶体管阵列电路。
具有电流增益高