基于无线供电的智能台灯.docx_第1页
基于无线供电的智能台灯.docx_第2页
基于无线供电的智能台灯.docx_第3页
基于无线供电的智能台灯.docx_第4页
基于无线供电的智能台灯.docx_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

基于无线供电的智能台灯一、背景1、近年来,由于无线供电技术广阔的发展前景,它又一次引起了人们的关注。无线供电可以运用于消费电子产品充电、植入式医疗电子充电、无线传感器网络充电和无线充电车等方方面面。可以说如果无线充电技术能够成熟和普及,那么,他将给人们的生产和生活个个方面带来巨大的变化。因此,我对无线供电产生了浓厚的兴趣,所以就尝试一下无线供电。2、生活中我们常常会遇到这样的事:教室里人走了,可是灯还在亮着,造成电能的浪费;晚上回家的时候却找不到灯的开关,给人们带来不方便。因此,我就想发明这样一种台灯:人来灯亮,人走灯灭。3、为了使我发明的台灯更具实用性,我给他配备了一个带闹钟的高精度时钟。这个时钟可以通过按键调整时间、设置闹钟和设置闹钟时间,并且能播放音乐。基于以上背景,我设计了一个基于无线供电的智能台灯。二、方案总的方案是:由AT89S52单片机作为CPU控制整个电路。无线供电部分通过发射电路发射电磁场,接收电路接收电磁场,产生电压为LED供电。CPU通过电子开关HCF4066控制无线供电部分电源的通断。人体红外感应模块通过感应人体,把信号反馈给单片机,从而让单片机采取行动。单片机通过自身的内部定时器产生时钟,把时钟信号送给1602液晶显示,并可以通过按键调整时间、设定闹钟和设定闹钟时间,当闹铃时间到的时候单片机通过不同频率的音调和不同节拍的产生来驱动蜂鸣器产生音乐让我们荡起双桨。1、无线供电部分,我采用电磁耦合的方式。电源采用USB线提供5V直流电,由振荡器产生正弦波形电流,通过初级线圈,再用次级线圈与其进行耦合,在次级线圈两端中就能产生电压,运用次级线圈产生的电压给四个高亮LED供电,由于初级线圈和次级线圈可以相隔一定距离,因此可以实现无线供电。2、“人来灯亮,人走灯灭”功能的实现:运用51单片机产生38KHz的方波信号驱动红外发射管发射红外线;运用三脚的红外接收头接收红外信号,当人挡住红外信号,红外信号就会反射被红外接收头接收。由单片机检测红外接收头是否接收到红外信号,从而决定是否给无线供电部分提供电源,由此实现“人来灯亮,人走灯灭”。3、时钟部分:运用时钟芯片DS12CR887产生时钟信号,由单片机读取其信号,并将数据处理之后送到1602液晶显示。由于DS12CR887内部有集成的电池,所以即使断电,时钟仍会走时准确,从而使该台灯更实用、更省电。此时钟还配有按键,通过按键即可方便的调节时钟。整体方案图三、实现硬件部分:1、 无线供电发射部分:图中,B772和9014构成自激震荡电路,将电源提供的直流电转化为交流,再通过初级线圈产生电磁波,完成电的发射。由于B772很容易发热,因此我用易拉罐自制了一个散热片,经测试,散热效果良好。2、无线供电接收部分次级线圈和初级线圈靠得很近,初级线圈产生的变化磁感线在次级线圈中产生感应电流。台灯的灯采用高亮的四个LED,能提供较亮的光线。3、红外发射、接收电路(图中38KHz方波由单片机产生)4、时钟部分时钟由单片机的内部定时器产生,通过信号处理送给1602液晶显示。此部分还接有按键,通过按键即可对时间和闹钟进行调整。5、蜂鸣器驱动电路蜂鸣器采用的是无源蜂鸣器,通过单片机控制P2.3口电平的高低就能产生很悦耳的音乐,这里我产生的音乐是让我们荡起双桨。6、电子开关HCF4066HCF4066的第1、14脚接5V电源,7脚接地,通过单片机控制13脚即可控制1脚和2脚的通断,从而控制无线供电模块的通断。7、灯架、灯罩和灯座由于没有现成的灯架、灯座和灯罩,所以我自制了一个。灯架是用我的一个废弃的桌子腿;灯罩是一个废弃的光盘,经过钻孔形成的;至于灯座则是一个废弃的收音机壳。软件部分软件部分主要是利用单片机的定时器1不停计数,当每次计数满65536就溢出完成中断,通过中断函数中的处理,生成时钟信号。这里主要对单片机产生音乐的软件原理进行说明。(文档最后附此台灯的C程序)单片机发音原理:单片机演奏音乐基本是单音频率,它不包含相应幅度的谐波频率,也就是说不能象电子琴那样能奏出多种音色的声音,但一定要弄清楚两个概念即可,也就是“音调”和“节拍” 。音调: 表示一个音符唱多高的频率。节拍 :表示一个音符唱多长的时间。音调:在音乐中所谓“音调”,其实就是我们常说的“音高”。在音乐中常把中央C上方的A音定为标准音高,其频率f=440Hz,其余与其比较。f1和f2为两个音符,当这两个音符的频率相差一倍时,也即f2=2f1时,则称f2比f1高一个倍频程。在音乐中1与,2与,正好相差一个倍频程,在音乐学中称它相差一个八度音。在一个八度音内,有12个半音。以1i八音区为例,12个半音是:11、12、22、23、34、44,45、5一5、56、66、67、7i 。这12个音阶的分度基本上是以对数关系来划分的。如果我们只要知道了这十二个音符的音高,也就是其基本音调的频率,我们就可根据倍频程的关系得到其他音符基本音调的频率。节拍:音符的节拍我们可以举例来说明。在一张乐谱中,我们经常会看到这样的表达式,如1=C 、1=G 等等,这里1=C,1=G表示乐谱的曲调,和我们前面所谈的音调有很大的关联,、就是用来表示节拍的。以为例加以说明,它表示乐谱中以四分音符为节拍,每一小结有三拍。比如:其中1 、2 为一拍,3、4、5为一拍,6为一拍共三拍。1 、2的时长为四分音符的一半,即为八分音符长,3、4的时长为八分音符的一半,即为十六分音符长,5的时长为四分音符的一半,即为八分音符长,6的时长为四分音符长。那么一拍到底该唱多长呢?一般说来,如果乐曲没有特殊说明,一拍的时长大约为400500ms 。我们以一拍的时长为400ms为例,则当以四分音符为节拍时,四分音符的时长就为400ms,八分音符的时长就为200ms,十六分音符的时长就为100ms。若乐谱有特别说明则另行对待。如有乐谱中注明每分钟86拍,则一拍时间为60/86s=698ms。综上,我们可以利用延迟函数来产生不同的音调和节拍。只要让单片机产生不同频率的方波,并让其持续不同的时间,即可演奏出音乐。这里的延迟函数选用最小每次能产生1ms的void delay1ms(unsigned int i) unsigned char j;while(i-)for(j=0;j125;j+);再利用演奏函数,把频率和节拍带进去,即可产生音乐void yanzou(unsigned char pinlv,unsigned int jiepai)/音乐演奏函数unsigned char pl;unsigned int jp;if(jiepai=1) delay1(250); /1/2拍暂停,即1/2拍的0else if(jiepai=2) delay1(500); /1拍暂停,即1拍的0else for(jp=0;jpjiepai;jp+) beep=0; for(pl=0;plpinlv;pl+); beep=1; for(pl=0;plpinlv;pl+);四、结果台灯能正常工作,能实现无线供电,间隔距离差不多有3cm左右,并且实现了人来灯亮,人走灯灭。时钟部分能实现准确计时,自带闹钟,时间、闹钟可调。闹铃声为让我们荡起双桨。以下是台灯的实物图片。台灯部分侧视图,灯座是废收音机壳,灯架是废桌子腿,灯罩是废光盘,灯是四个高亮LED电路部分,加液晶显示液晶显示时间主板电路主板背部电路焊接附台灯的C51程序#include#define uchar unsigned char #define uint unsigned intsbit dula=P26;sbit wela=P27;sbit rs=P35;/液晶管脚定义sbit lcden=P34;sbit s1=P30;/功能键sbit s2=P31;/数字加键sbit s3=P32;/数字减键sbit start=P36;/音乐播放减sbit rd=P37;sbit beep=P23;/蜂鸣器uchar count,s1num;char miao,shi,fen;char cshi=12,cfen=29,cmiao=50;unsigned char code pinlv=131,110,98, 87, 73, 87, 110,98, 131,0,110,98, 87, 73, 73, 65, 98, 87,87,87,73,65,73,65,55,58,65,73,65,87,110,98,87,73,110,131,110,98,87,65,73,73,0,87,65,65,73,82,87,98,87,73,131,110,98,0,110,98,87,73,65,55,58,65,73,87,65,65; /让我们荡起双桨的频率unsigned int code jiepai=110,131,147,494,196,165,131,294,440,1,131,147,165,588,196,440,294,660,330,165,196,880,588,220,262,124,110,196,220,330,131,147,495,196,262,220,131,147,165,220,784,392,2,660,660,220,196,175,330,588,495,196,110,131,147,2,131,147,330,392,440,524,247,220,196,165,880,880;/节拍uchar code table= 2013-6-01 MON;/初始显示uchar code table1= 00:00:00;void delay(uint z)/延迟函数uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);void delay1(unsigned int i) unsigned char j;while(i-)for(j=0;j125;j+);void write_com(uchar com)/1602液晶写指令令函数rs=0;lcden=0;P0=com;delay(5);lcden=1;delay(5);lcden=0;void write_date(uchar date)/1602写数据函数rs=1;lcden=0;P0=date;delay(5);lcden=1;delay(5);lcden=0;void init()/初始函数uchar num;dula=0;wela=0;lcden=0;write_com(0x38);/液晶的预设write_com(0x0c);write_com(0x06);write_com(0x01);write_com(0x80);for(num=0;num15;num+)write_date(tablenum);delay(5);write_com(0x80+0x40);for(num=0;num12;num+)write_date(table1num);delay(5);TMOD=0x01;/选用定时器1的方式0TH0=(65536-50000)/256;TL0=(65536-50000)%256;/TH1=243;/TL1=243;EA=1;ET0=1;TR0=1;/ET1=1;/TR1=1;void write_sfm(uchar add,uchar date)/液晶写时分秒函数uchar shi,ge;shi=date/10;ge=date%10;write_com(0x80+0x40+add);write_date(0x30+shi);write_date(0x30+ge);void keyscan()/键盘检测函数rd=0;if(s1=0)delay(5);if(s1=0)s1num+;while(!s1);if(s1num=1)TR0=0;write_com(0x80+0x40+10);write_com(0x0f);if(s1num=2)write_com(0x80+0x40+7);if(s1num=3)write_com(0x80+0x40+4);if(s1num=4)write_sfm(10,cmiao);write_sfm(7,cfen);write_sfm(4,cshi);write_com(0x80+0x40+10);if(s1num=5)write_com(0x80+0x40+7);if(s1num=6)write_com(0x80+0x40+4);if(s1num=7)s1num=0;write_com(0x0c);write_sfm(10,miao);write_sfm(7,fen);write_sfm(4,shi);TR0=1;if(s1num!=0)if(s2=0)delay(5);if(s2=0)while(!s2);if(s1num=1)miao+;if(miao=60)miao=0;write_sfm(10,miao);write_com(0x80+0x40+10);if(s1num=2)fen+;if(fen=60)fen=0;write_sfm(7,fen);write_com(0x80+0x40+7);if(s1num=3)shi+;if(shi=24)shi=0;write_sfm(4,shi);write_com(0x80+0x40+4);if(s1num=4)cmiao+;if(cmiao=60)cmiao=0;write_sfm(10,cmiao);write_com(0x80+0x40+10);if(s1num=5)cfen+;if(cfen=60)cfen=0;write_sfm(7,cfen);write_com(0x80+0x40+7);if(s1num=6)cshi+;if(cshi=24)cshi=0;write_sfm(4,cshi);write_com(0x80+0x40+4);if(s3=0)delay(5);if(s3=0)while(!s3);if(s1num=1)/*if(miao=0)miao=59;write_sfm(10,miao);write_com(0x80+0x40+10);*/miao-;if(miao=-1)miao=59;write_sfm(10,miao);write_com(0x80+0x40+10);if(s1num=2)fen-;if(fen=-1)fen=59;write_sfm(7,fen);write_com(0x80+0x40+7);if(s1num=3)shi-;if(shi=-1)shi=23;write_sfm(4,shi);write_com(0x80+0x40+4);if(s1num=4)cmiao-;if(cmiao=-1)cmiao=59;write_sfm(10,cmiao);write_com(0x80+0x40+10);if(s1num=5)cfen-;if(cfen=-1)cfen=59;write_sfm(7,cfen);write_com(0x80+0x40+7);if(s1num=6)cshi-;if(cshi=-1)cshi=23;write_sfm(4,cshi);w

温馨提示

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

评论

0/150

提交评论