基于单片机的遥控窗帘设计.docx
《基于单片机的遥控窗帘设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的遥控窗帘设计.docx(30页珍藏版)》请在冰豆网上搜索。
基于单片机的遥控窗帘设计
《单片机应用与仿真训练》设计报告
基于单片机的遥控窗帘设计
姓名:
马超
专业班级:
自动化09-5班
指导老师:
王彦艳
所在学院:
电气工程
2011年5月日
摘要
本设计是为了跟随社会快速发展的脚步,有助实现人民生活水平的提高,瞒住人们回到家或是在办公室都有一个舒适的环境,能够得到很好的休息,遥控窗帘也逐步进入人们的生活中。
本设计是基于atmels52单片机设计的遥控卷帘系统,通过遥控器来控制电机,从而实现远距离控制窗帘的自动开合,这样的设计给人带来很大的方便,让你告别手拉窗帘的烦恼。
本设计主要有以下几个特点:
1.遥控手动双控制。
本系统不但能够远距离遥控窗帘,而且可以近距离的开关控制窗帘工作。
从而一方面避免遥控器没电或是故障给使用者带来不变,另一方面表先了本系统操作的灵活性。
2.室内温度检测功能。
本设计还有优良的温度测量装置,实时为使用者提供室内温度信息。
3.稳定的防过卷系统。
当窗帘开合完毕后,您将能听到一声“滴”的提示声,同时窗帘自动停止了开合。
本设计功能实现方法主要有:
遥控按键的功能:
遥控器上设有A、B、C三个按键,A控制窗帘的开,B控制窗帘的合,C表示停止。
窗帘的工作:
电机的正反转停止,分别代表窗帘的开、合、停三个不同的状态。
显示系统:
通过四位数码管来显示窗帘的开合工作状态以及室内温度,从而使使用者操作时更加的直观方便。
1概述
1.1课程设计的目的和意义
随着社会信息化的加快,人们的工作,生活和通讯,信息的关系日益紧密。
信息化的社会在改变人们的生活方式与工作习惯的同时,也对传统的住宅提出了挑战,社会,技术以及经济的进步更使人们的观念随之剧变。
人们对家居的要求早已不只是物理空间,更为关注的一个安全,方便,舒适的居家环境。
随着电子技术产业结构调整,生产工艺的飞速发展,人们生活水平的不断提高,家用电器逐渐普及,市场对于遥控控制系统的需求也越来越大。
高精度,多功能,低功耗,是现代科技发展的趋势。
在这种趋势下,窗帘的数字化,智能化已经成为现代生产研究的主导设计方向。
单片机在电子产品中的应用已经越来越广泛。
随着串联控制器的应用范围的日益广泛和多样,适于不同场合的窗帘控制应运而生。
因此,我们选了这个课题,用单片机来实现遥控功能。
跟随社会快速发展的脚步,有助实现人民生活水平的提高,瞒住人们回到家或是在办公室都有一个舒适的环境,能够得到很好的休息。
1.2任务及要求
1)控制窗帘的开关、利用直流电机正反转实现。
2)防过卷功能。
3)具有无线遥控和手动按键控制两种功能。
4)能够指示运行状态。
2系统总体方案及硬件设计
2.1系统总体方案分析
2.2遥控装置原理
2.2.1遥控发射模块参数
1、通讯方式:
调幅AM
2、工作频率:
315MHZ/433MHZ
3、频率稳定度:
±75KHZ
4、发射功率:
≤500MW
5、静态电流:
≤0.1UA
6、发射电流:
3~50MA
7、工作电压:
DC3~12V
数据发射模块的工作频率为315M,采用声表谐振器SAW稳频,频率稳定度极高,当环境温度在-25~+85度之间变化时,频飘仅为3ppm/度。
特别适合多发一收无线遥控及数据传输系统。
声表谐振器的频率稳定度仅次于晶体,而一般的LC振荡器频率稳定度及一致性较差,即使采用高品质微调电容,温差变化及振动也很难保证已调好的频点不会发生偏移。
发射模块未设编码集成电路,而增加了一只数据调制三极管Q1,这种结构使得它可以方便地和其它固定编码电路、滚动码电路及单片机接口,而不必考虑编码电路的工作电压和输出幅度信号值的大小。
比如用PT2262或者SM5262等编码集成电路配接时,直接将它们的数据输出端第17脚接至数据模块的输入端即可。
数据模块具有较宽的工作电压范围3~12V,当电压变化时发射频率基本不变,和发射模块配套的接收模块无需任何调整就能稳定地接收。
当发射电压为3V时,空旷地传输距离约20~50米,发射功率较小,当电压5V时约100~200米,当电压9V时约300~500米,当发射电压为12V时,为最佳工作电压,具有较好的发射效果,发射电流约60毫安,空旷地传输距离700~800米,发射功率约500毫瓦。
当电压大于l2V时功耗增大,有效发射功率不再明显提高。
这套模块的特点是发射功率比较大,传输距离比较远,比较适合恶劣条件下进行通讯。
天线最好选用25厘米长的导线,远距离传输时最好能够竖立起来,因为无线电信号传输时收很多因素的影响,所以一般实用距离只有标称距离的一半甚至更少,这点需要开发时注意。
数据模块采用ASK方式调制,以降低功耗,当数据信号停止时发射电流降为零,数据信号与发射模块输入端可以用电阻或者直接连接而不能用电容耦合,否则发射模块将不能正常工作。
数据电平应接近数据模块的实际工作电压,以获得较高的调制效果。
发射发射模块最好能垂直安装在主板的边缘,应离开周围器件5mm以上,以免受分布参数影晌。
模块的传输距离与调制信号频率及幅度,发射电压及电池容量,发射天线,接收机的灵敏度,收发环境有关。
一般在开阔区最大发射距离约800米,在有障碍的情况下,距离会缩短,由于无线电信号传输过程中的折射和反射会形成一些死区及不稳定区域,不同的收发环境会有不同的收发距离。
2.2.2PT2262/PT2272编解码集成电路原理说明
PT2262/2272是台湾普城公司生产的一种CMOS工艺制造的低功耗低价位通用编解码电路,PT2262/2272最多可有12位(A0-A11)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441地址码,PT2262最多可有6位(D0-D5)数据端管脚,设定的地址码和数据码从17脚串行输出,可用于无线遥控发射电路。
编码芯片PT2262发出的编码信号由:
地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平,如果发送端一直按住按键,编码芯片也会连续发射。
当发射机没有按键按下时,PT2262不接通电源,其17脚为低电平,所以315MHz的高频发射电路不工作,当有按键按下时,PT2262得电工作,其第17脚输出经调制的串行数据信号,当17脚为高电平期间315MHz的高频发射电路起振并发射等幅高频信号,当17脚为低平期间315MHz的高频发射电路停止振荡,所以高频发射电路完全收控于PT2262的17脚输出的数字信号,从而对高频电路完成幅度键控(ASK调制)相当于调制度为100%的调幅。
PT2262特点
1、CMOS工艺制造,低功耗
2、外部元器件少
3、RC振荡电阻
4、工作电压范围宽:
2.6-15v
5、数据最多可达6位
6、地址码最多可达531441种
应用范围
1、车辆防盗系统
2、家庭防盗系统
3、遥控玩具
4、其他电器遥控
在具体的应用中,外接振荡电阻可根据需要进行适当的调节,阻值越大振荡频率越慢,编码的宽度越大,发码一帧的时间越长。
大部分产品都是用2262/1.2M=2272/200K组合的,
模块还有一种重要的用途就是配合单片机来实现数据通讯,这时有一定的技巧:
1、合理的通讯速率
数据模块的最大传输数据速率为9.6KBs,一般控制在2.5k左右,过高的数据速率会降低接收灵敏度及增大误码率甚至根本无法工作。
2、合理的信息码格式
单片机和模块工作时,通常自己定义传输协议,不论用何种调制方式,所要传递的信息码格式都很重要,它将直接影响到数据的可靠收发。
码组格式推荐方案
前导码+同步码+数据帧,前导码长度应大于是10ms,以避开背景噪声,因为接收模块接收到的数据第一位极易被干扰(即零电平干扰)而引起接收到的数据错误。
所以采用CPU编译码可在数据识别位前加一些乱码以抑制零电平干扰。
同步码主要用于区别于前导码及数据。
有一定的特征,好让软件能够通过一定的算法鉴别出同步码,同时对接收数据做好准备。
数据帧不宜采用非归零码,更不能长0和长1。
采用曼彻斯特编码或POCSAG码等。
3、单片机对接收模块的干扰
单片机模拟2262时一般都很正常,然而单片机模拟2272解码时通常会发现遥控距离缩短很多,这是因为单片机的时钟频率的倍频都会对接收模块产生干扰,51系列的单片机电磁干扰比较大,2051稍微小一些,PIC系列的比较小,我们需要采用一些抗干扰措施来减小干扰。
比如单片机和遥控接收电路分别用两个5伏电源供电,将接收板单独用一个78L05供电,单片机的时钟区远离接收模块,降低单片机的工作频率,中间加入屏蔽等。
接收模块和51系列单片机接口时最好做一个隔离电路,能较好地遏制单片机对接收模块的电磁干扰。
接收模块工作时一般输出的是高电平脉冲,不是直流电平,所以不能用万用表测试,调试时可用一个发光二极管串接一个3K的电阻来监测模块的输出状态。
无线数据模块和PT2262/PT2272等专用编解码芯片使用时,连接很简单只要直接连接即可,传输距离比较理想,一般能达到600米以上,如果和单片机或者微机配合使用时,会受到单片机或者微机的时钟干扰,造成传输距离明显下降,一般实用距离在200米以内。
2.3L298N
L298可驱动2个电机,OUTl、OUT2和OUT3、OUT4之间分别接2个电动机。
5、7、10、12脚接输入控制电平,控制电机的正反转,ENA,ENB接控制使能端,控制电机的停转。
1298的逻辑功能如表1所列。
如图2.3.1所示,:
Intel8253输出二组PWM波,每一组PWM波用来控制一个电机的速度.另外二个I/O口可以控制电机的正反转.控制方法与控制电路都比较简单。
即P10、P11控制第一个电机的方向,输入的:
PWMl控制第一个电机的速度;P12、P13控制第二个电机的方向,输入的PWM2控制第二个电机的速度。
由于电机在正常工作时对电源的干扰很大,只用一组电源时会影响单片机的正常工作。
所以选用双电源供电。
一组5V电源给单片机和控制电路供电,另外一组5V、9V电源给L298N的VSS、VS供电。
在控制部分和电机驱动部分之间用光耦隔开,以免影响控制部分电源的品质。
图2.3.1就是一个实现智能小汽车的应用电路。
D1、Q1是一对红外发射接收对管,与LM324构成光电传感检测电路。
通过Intel8253和1298N可实现汽车的加速、减速、刹停,并可通过两个电机的不同转速实现左转和右转等功能。
图2.3.1
图2.3.2
2.4TLP521-4可控制的光电藕合器件
东芝TLP521-1,-2和-4组成的砷化镓红外发光二极管耦合到光三极管。
该TLP521-2提供了两个孤立的光耦8引脚塑料封装,而TLP521-4提供了4个孤立的光耦中16引脚塑料DIP封装。
集电极-发射极电压:
55V(最小值)经常转移的比例:
50%(最小)隔离电压:
2500Vrms(最小)
图1TLP521TLP521-2TLP521-4光藕内部结构图及引脚图
图2TLP521-2光电耦合器引脚排列图
图6开关时间测试电路
2.5霍尔传感器
2.5.1方案
此方案的测速系统主要是由开关型霍尔传感器A3144E以及磁钢构成,由它们来检测电机的转速。
工作方式为:
将磁钢安装在电机的转轴上,而霍尔传感器则放在转轴的旁边,霍尔传感器连接在电路中,当磁钢随转轴经过霍尔传感器时,由开关型霍尔传感器的工作原理知,此时将输出一个低电平信号;而当磁钢离开霍尔传感器后,又将输出一个高电平。
这样通过高低电平的转换,将其送入单片机后就可以测量它的转速。
2.5.2开关型霍尔传感器介绍
霍尔传感器是利用霍尔效应原理制成的一种磁敏传感器。
它是近年来为适应信息采集的需要而迅速发展起来的一种新型传感器,这类传感器具有工作频带宽,响应快、面积小、灵敏度高、无缺点、便于集成化、多功能化等优点,且易与计算机和其它数字仪表接口,因此被广泛用于自动监测、自动测量、自动报警、自动控制、信息传递、生物医学等各个领域。
此处主要介绍开关型霍尔传感器。
开关型霍尔传感器由稳压器A、硅霍尔片B、差分放大器C、施密特触发器D和OC门输出E五部分组成,如图3.1所示.从输入端1输入电压Vcc,经稳压器A稳压后加在硅霍尔片B的两端,以提供恒定不变的工作电流.在垂直于霍尔片的感应面方向施加磁场,产生霍尔电势差Vw,该n信号经差分放大器c放大后送至施密特触发器D整形.当磁场达到“工作点”(即B。
)时,触发器D输出高电压(相对于地电位),使三极管E导通,输出端V。
输出低电位,此状态称为“开”。
当施加的磁场达到“释放点”(即B。
)时,触发器D输出低电压,使三极管E截止,输出端y。
输出高电位,此状态称为“关”。
这样2次高低电位变换,使霍尔传感器完成了1次开关动作。
开关型霍尔传感器构成图如图3.1所示:
图3.1开关型霍尔传感器构成图
开关型霍尔集成传感器(以下简称开关型霍尔传感器)主要被应用于周期和频率的测量、转速的测量、液位控制等方面。
常用的开关型霍尔传感器有美国sPRAG1公司的UGN3000系列如UGN3020、UGN3O3O等。
它没有输入端,因磁场是由空间输入的。
规定用磁铁的S极接近开关型霍尔传感器正面时形成的B为正值,从图4.2曲线看:
当B=0时,0为高;B=Bop时,0立即变低,这点称为“工作点”。
继续升高B,0不变。
降低B到BRp时,Vo又回升。
这点称为“释放点”。
如图3.2所示,B一B称为磁滞。
在此差值内,输出电位。
保持高电位或低电位不变,因而输出稳定可靠。
图3.2开关型霍尔传感器输出电压与外加磁感应强度关系
霍尔传感器检测电路
将电机地转速表示为单片机可以识别的脉冲信号,从而进行脉冲计数。
霍尔器件作为一种转速测量系统的传感器,具有结构牢固、体积小、重量轻、寿命长、安装方便等优点,当电机转动时,带动传感器,产生对应频率的脉冲信号,经过信号处理后输出到计数器或其他的脉冲计数装置,进行转速的测量。
所谓磁钢,就是磁钢就是一种有磁性的钢铁。
在传感检测电路中将磁钢安装在电机的转轴上,而霍尔传感器则放在转轴的旁边,霍尔传感器连接在电路中,当磁钢随转轴经过霍尔传感器时,由开关型霍尔传感器的工作原理知,此时将输出一个低电平信号;而当磁钢离开霍尔传感器后,又将输出一个高电平。
这样通过高低电平的转换,将其送入单片机后就可以测量它的圈数,从而实现防过卷。
2.6DS18b20测温模块
2.6.1DS18B20工作原理
DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。
DS18B20测温原理如图3所示。
图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。
高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。
计数器1和温度寄存器被预置在-55℃所对应的一个基数值。
计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。
图3中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。
2.6.2DS18B20有4个主要的数据部件
(1)光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。
64位光刻ROM的排列是:
开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。
光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。
(2)DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:
用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。
表1:
DS18B20温度值格式表
这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。
例如+125℃的数字输出为07D0H,+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FE6FH,-55℃的数字输出为FC90H。
2.6.3DS18B20的应用电路
DS18B20测温系统具有测温系统简单、测温精度高、连接方便、占用口线少等优点。
下面就是DS18B20几个不同应用方式下的测温电路图:
DS18B20寄生电源供电方式电路图如下面图4所示,在寄生电源供电方式下,DS18B20从单
图4
线信号线上汲取能量:
在信号线DQ处于高电平期间把能量储存在内部电容里,在信号线处于低电平期间消耗电容上的电能工作,直到高电平到来再给寄生电源(电容)充电。
独特的寄生电源方式有三个好处:
1)进行远距离测温时,无需本地电源
2)可以在没有常规电源的条件下读取ROM
3)电路更加简洁,仅用一根I/O口实现测温
要想使DS18B20进行精确的温度转换,I/O线必须保证在温度转换期间提供足够的能量,由于每个DS18B20在温度转换期间工作电流达到1mA,当几个温度传感器挂在同一根I/O线上进行多点测温时,只靠4.7K上拉电阻就无法提供足够的能量,会造成无法转换温度或温度误差极大。
因此,图4电路只适应于单一温度传感器测温情况下使用,不适宜采用电池供电系统中。
并且工作电源VCC必须保证在5V,当电源电压下降时,寄生电源能够汲取的能量也降低,会使温度误差变大。
3软件设计
3.1系统分析
3.1.1软件编译环境
①编程软件keiluVision2
单片机开发中除必要的硬件外,同样离不开软件,我们写的汇编语言源程序要变为CPU可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了。
机器汇编是通过汇编软件将源程序变为机器码,用于MCS-51单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。
Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。
KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。
另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。
在开发大型软件时更能体现高级语言的优势。
下面详细介绍KeilC51开发系统各部分功能和使用。
②仿真软件proteus7
Proteus是一种功能强大的电子设计自动化软件,提供智能原理图设计系统、SPICE模拟电路、数字电路及MCU器件混合仿真系统和PCB设计系统功能。
其不仅可以仿真传统的电路分析实验、模拟电子线路实验、数字电路实验等,而且可以仿真嵌入式系统的实验,其最大的特色在于可以提供嵌入式系统(单片机应用系统、ARM应用系统)的仿真实验,这也是其它任何仿真软件无力所及的。
例如,其支持单片机和周边设备,可以仿真51系列、8086、AVR、PIC、Motorola的68系列等常用的MCU,并提供周边设备的仿真,例如373、led、示波器等。
Proteus提供了大量的元件库,有RAM、ROM、键盘、马达、LED、LCD、AD/DA、部分SPI器件、部分IIC器件等。
在编译方面,它也支持Keil和MPLAB等多种编译器。
3.1.2程序总体流程图
3.2计算参数
通过计数器1作为电机正转计数,计数器2作为电机的反转计数,从而计算出电机转过的圈数,通过电机转过的圈数求得周长来计算窗帘开合的距离。
4实验仿真
5课程设计体会
通过此次课程设计,使我更加扎实的掌握了单片机应用,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的尝试,终于层层攻克困难,并且从中学到很多,更加扎实自己的理论知识。
实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵。
在课程设计过程中,我们不断发现错误,不断改正,不断领悟,不断获取。
最终的检测调试环节,本身就是在践行“过而能改,善莫大焉”的知行观。
这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在老师的指导下,终于游逆而解。
在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,然后一一进行解决,只有这样,才能成功的做成想做的事,才能在今后的道路上劈荆斩棘,而不是知难而退,那样永远不可能收获成功,收获喜悦,也永远不可能得到社会及他人对你的认可!
通过这次课程设计,我掌握了常用元件的识别和测试;熟悉了常用仪器、仪表;了解了电路的连线方法;以及如何提高电路的性能等等,掌握了焊接的方法和技术,通过查询资料,也了解了无线收发模块、L298N驱动芯片、DS18b20以及霍尔传感器的应用和它们的使用方法。
我认为,在这次课程设计中,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。
更重要的是,在设计中,我们学会了很多学习的方法和如何解决问题的方法。
而这是日后最实用的,真的是受益匪浅。
要面对社会的挑战,只有不断的学习、实践,再学习、再实践。
这对于我们的将来也有很大的帮助。
以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。
回顾起此课程设计,至今我仍感慨颇多,从理论到实践,在这段日子里,可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。
通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。
在设计的过程中遇到问题,可以说得是困难重重,但可喜的是最终都得到了解决。
实验过程中,也对团队精神的进行了考察,让我们在合作起来更加默契,在成功后一起体会喜悦的心情。
果然是团结就是力量,只有互相之间默契融洽的配合才能换来最终完美的结果。
此次设计也让我明白了思路即出路,有什么不懂不明白的地方要及时请教或上网查询,只要认真钻研,动脑思考,动手实践,就没有弄不懂的知识,收获颇丰。
6参考文献
余发山,王福忠主编,《单片机原理及应用技术》,中国矿业大学出版社。
XX文库、21ic等网络电子资料。
附件1:
源程序代码
#include
#defineucharunsignedchar
#defineuintunsignedint
sbitDQ=P1^3;
sbit