基于单片机的遥控窗帘设计文档格式.docx
- 文档编号:22031946
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:25
- 大小:691.86KB
基于单片机的遥控窗帘设计文档格式.docx
《基于单片机的遥控窗帘设计文档格式.docx》由会员分享,可在线阅读,更多相关《基于单片机的遥控窗帘设计文档格式.docx(25页珍藏版)》请在冰豆网上搜索。
1.3手动控制电路
1.4直流电机驱动电路
1.5防过卷限位电路
1.6程序设计
2系统整体方案及硬件设计
2.1系统总体方案
2.2PT2262/2272遥控模块
2.3按键电路
2.444E938防过卷电路
2.5主控制器
2.6直流电机驱动电路
3软件设计
3.1变量的定义与I/O口分配
3.2系统子功能程序设计
3.3系统主程序
4Proteus软件仿真…………………………………………………………………
5课程设计体会
参考文献
附录1:
源程序代码
附录2:
系统原理图
1概述
1.1项目背景及应用
随着科学的发展,社会的进步,人民生活水平的提高,工作压力也越来越大,人人都希望回到家或是在办公室都有一个舒适的环境。
能得到很好的休息,这就使得自动化技术快速发展。
当今,技术发展飞速,为了进一步满足人们高水准生活的需要,家用电器产品性能也在不断的更新挽代,从始初的晶体管、到电子管;
由模拟到数字;
由分立元件到集成电路;
从普通向高性能、多功能型;
由手动控制向无线遥控、向智能化发展。
遥控窗帘设计使用51单片机作为主控制器,使用PT2262遥控编码模块作为发射模块,使用PT2272解码模块作为接收模块,将遥控信号解码后转换为TTL电平,供单片机读取;
手动控制采用微动开关,低电平输入;
输出控制直流电机使用直流电机专用芯片L298N,;
窗帘的防过卷使用两个霍尔传感器44E938,通过放在窗帘上的强磁钢感应窗帘的位置,实现窗帘的防过卷。
系统的程序设计使用C编程,对按键采用软件防抖处理。
1.2遥控电路的设计
遥控部分电路使用PT2262和PT2272遥控模块,PT2262/2272是台湾普城公司生产的一种CMOS工艺制造的低功耗低价位通用编解码电路,PT2262/2272最多可有12位(A0-A11)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441地址码,PT2262最多可有6位(D0-D5)数据端管脚,设定的地址码和数据码从17脚串行输出,可用于无线遥控发射电路。
这里使用做好的遥控发射接收模块,直接将遥控解码,转化为相应的TTL电平信号,供单片机读取。
1.3手动控制电路
采用三个按键分别控制电机正转、反转、停转,软件设计时加入延时消抖,保证按键的正确响应。
1.4直流电机驱动电路
对直流电机的驱动这里使用直流电机专用驱动芯片L298N,L298N是SGS公司的产品,内部包含4通道逻辑驱动电路。
是一种二相和四相电机的专用驱动器,即内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下的电机。
本设计中使用5V直流电机,电流较小,并且只是用一路输出。
1.5防过卷限位电路
为了防止窗帘开或关到位后电机仍没有停止,需要加防过卷限位电路路这里选用霍尔传感器44E938,该器件集成了电压调节器,动态偏差补偿系统的霍尔传感器,施密特触发器和开漏输出驱动于一个封装内。
由于它宽的工作电压范围和扩展的温度范围,使其非常适合于汽车电子,工业和消费电子的应用范畴。
这里使用44E938作为限位传感器,当窗帘运行到上限或下限时,固定在窗帘上的强磁达到传感器位置,发出限位信号,主控制器停止电机,实现防过卷。
1.6程序设计
对单片机的程序设计使用汇编或C语言,汇编编程程序代码编译效率高,但程序的易读性差,不易移植;
C语言的代码效率虽然没有汇编高,但程序易读易写,且程序的可移植性好,可以借鉴其他例程或一边写好的程序模块。
本设计采用C语言编程。
2系统整体方案及硬件设计
2.1系统总体方案
遥控窗帘的硬件设计共分为三大部分:
信号采集转换电路、单片机主控电路和直流电机驱动电路,其中信号采集电路由遥控解码电路和手动按钮两部分组成。
系统框图如图1,
图1系统框图
如图1,主控制器检测来自PT2272解码模块、按键和霍尔传感器44E938的信号,根据输入端的信号控制驱动电路,驱动电路控制直流电动机带动窗帘运动。
遥控器或按键发出开、关窗帘的信号后,经单片机处理后,控制L298N输出控制电机正、反转,电机通过机械装置带动窗帘运动,当窗帘运动到上限或下限时,固定在窗帘上的强磁促发相应的霍尔传感器,霍尔传感器发出信号给单片机,单片机将电机停止。
窗帘在开关过程中按下遥控或者按键的停止按钮,则电机停止运行,实现窗帘的开关程度的控制。
2.2PT2272遥控解码模块
PT2262/2272是台湾普城公司生产的一种CMOS工艺制造的低功耗低价位通用编解码电路,编码芯片PT2262发出的编码信号由:
地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平,如果发送端一直按住按键,编码芯片也会连续发射。
当发射机没有按键按下时,PT2262不接通电源,其17脚为低电平,所以315MHz的高频发射电路不工作,当有按键按下时,PT2262得电工作,其第17脚输出经调制的串行数据信号,当17脚为高电平期间315MHz的高频发射电路起振并发射等幅高频信号,当17脚为低平期间315MHz的高频发射电路停止振荡,所以高频发射电路完全收控于PT2262的17脚输出的数字信号,从而对高频电路完成幅度键控(ASK调制)相当于调制度为100%的调幅。
PT2262每次发射时至少发射4组字码,PT2272只有在连续两次检测到相同的地址码加数据码才会把数据码中的“1”驱动相应的数据输出端为高电平和驱动VT端同步为高电平。
因为无线发射的特点,第一组字码非常容易受零电平干扰,往往会产生误码,所以程序可以丢弃处理。
PT2272解码芯片有不同的后缀,表示不同的功能,有L4/M4/L6/M6之分,其中L表示锁存输出,数据只要成功接收就能一直保持对应的电平状态,直到下次遥控数据发生变化时改变。
M表示非锁存输出,数据脚输出的电平是瞬时的而且和发射端是否发射相对应,可以用于类似点动的控制。
后缀的6和4表示有几路并行的控制通道,当采用4路并行数据时(PT2272-M4),对应的地址编码应该是8位,如果采用6路的并行数据时(PT2272-M6),对应的地址编码应该是6位PT2262和PT2272芯片如下图2,
图2
图3PT2262/2272引脚图
表1PT2262引脚功能
名称
管脚
说明
A0-A11
1-8、10-13
地址管脚,用于进行地址编码,可置为“0”,“1”,“f”(悬空),
D0-D5
7-8、10-13
数据输入端,有一个为“1”即有编码发出,内部下拉
VCC
18
电源正端(+)
VSS
9
电源负端(-)
TE
14
编码启动端,用于多数据的编码发射,低电平有效;
OSC1
16
振荡电阻输入端,与OSC2所接电阻决定振荡频率;
OSC2
15
振荡电阻振荡器输出端;
Dout
17
编码输出端(正常时为低电平)
表2PT2272引脚功能
地址管脚,用于进行地址编码,可置为“0”,“1”,“f”(悬空),必须与2262一致,否则不解码
地址或数据管脚,当做为数据管脚时,只有在地址码与2262一致,数据管脚才能输出与2262数据端对应的高电平,否则输出为低电平,锁存型只有在接收到下一数据才能转换
DIN
数据信号输入端,来自接收模块输出端
VT
解码有效确认输出端(常低)解码有效变成高电平(瞬态)
遥控模块是已做好的,使用315MHz的频率,遥控模块接收解码模块共有四个输出,当没有信号时,对应的引脚为低电平,当收到对应的通道Y有遥控信号时,如通道D2与输入信号C,则PT2272的D2引脚输出高电平。
并根据芯片类型的不同D2口的电平自锁或点动,单片机读取接收解码模块的信号做出动作。
2.3按键电路
按键是单片机的常用输入设备,电路简单且成本低,这里对按键的防抖采用软件延时处理。
按键使用常用的按钮式微动开关,按键电路如下图4,
图4按键电路
2.4霍尔传感器防过卷限位电路
限位开关用于检测窗帘运行到上、下限位置时动作发出信号给控制器,以防止窗帘过卷损坏机械设备或电机。
常用的限位装置使用行程开关、光电开关或接近开关,这里选用霍尔传感器44E938作为限位传感器。
44E938是低功耗CMOS工艺的霍尔传感器,TO-92封装的如下图5,其内部结构如图6:
图5接线原理图
图6内部结构
TO-90封装的引脚定义同TO-92封装,引脚1为电源正极VDD,引脚2为GND,44E938的工作电压为3.5-28V,引脚3为信号输出引脚OUT。
从内部结构原理图中可以看到,霍尔元件产生的霍尔电动势加到运放的同相和反向输入端,当霍尔元件受到不同方向的磁场时,传感器会输出不同的电平,如图7,
图7霍尔传感器电平输出
传感器电路如图8,
图8霍尔传感器电路
44E938感应到强磁铁的磁场后,发出信号给单片机。
2.5主控制器
遥控窗帘的主控制器选用MCS51系列单片机,MCS51是指由美国INTEL公司生产的一系列单片机的总称,这一系列单片机包括了好些品种,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的,所以人们习惯于用51来称呼MCS51系列单片机。
这里选用ATMEL公司的AT89S52单片机,AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
使用ATMEL公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52在众多嵌入式控制应用系统中得到广泛应用。
AT89S52的引脚如图9,
图9AT89S52引脚图
对AT89S52的各引脚定义和作用这里不再赘述。
2.6直流电机驱动电路
遥控窗帘的执行部件为一个5v的直流电动机,窗帘的开关通过控制直流电机的正反转实现,驱动电路的作用是接受单片机输出的控制信号并根据控制信号驱动电机正反转或停止。
要实现直流电机的正反转,只需改变加在直流电机转自线圈两端的电压极性。
实现电机的正反转控制可通过多种方法来实现,如使用两个继电器,或使用可控电力电子器件做成逆变桥(H桥),对于小功率直流电机使用小功率开关三极管如13002即可,或使用集成的直流电机控制芯片,如集成有桥式电路的电机专用驱动芯片,如L298N、LMD18200、MC33886,ML4428,性能比较稳定可靠。
这里选用L298N。
L298N是SGS公司的产品,内部包含4通道逻辑驱动电路。
其实物及引脚图10和图11所示:
图11L298N引脚图图10封装图
图12L298N内部结构原理图
如图12为L298N的内部原理图,L298有两路电源分别为逻辑电源和动力电源,上图中6V为动力电源输入端VSS。
SENSEA和SENSEB分别为A路和B路的驱动电源的输入端。
ENA、ENB为电机控制A路和B路的是能端,高电平有效;
IN1、IN2、IN3、IN4为电机的正反转控制信号端。
其控制逻辑如表3:
表3L298N控制逻辑
IN1
IN2
ENA
电机状态
X
停止
1
顺时针
逆时针
由于微控制器的工作电压多为5V和3.3V,与L298N及驱动电机的几十伏的驱动电压相差较大,常使用光电耦合电路实现通电压的信号耦合,本设计中控制电路与驱动电路使用相同的工作电压本设计中只使用A路驱动控制电机,单片机的端口驱动控制L298N的A路驱动直流电机。
硬件电路的整体设计就是这些,具体还要通过硬件的焊接完成后测试。
3软件设计
硬件系统搭建完成后,就要根据系统的控制要求和现有的硬件资源,编写合理的系统程序。
程序的编写要根据控制要求,充分运用系统的硬件资源,编写简单无漏洞的系统程序,为保证系统的可靠长时间运行,还可使用AT89S52的软件看门狗,这里程序较为简单,就不再使用。
遥控窗帘的系统软件的主要任务是检测来自键盘、遥控解码模块和霍尔传感器的信号,通过信号判断做出的动作,输出控制信号控制控制直流电机驱动模块驱动电机运行,实现窗帘的开关控制。
对系统程序的编写使用KEIL软件并使用C语言编程,在系统主函数中单片机对输入信号进行不停的扫描,当检测到输入信号时,调用相应的子函数执行动作,各子函数完成不同的动作。
3.1变量的定义与I/O口分配
C语言中可以对变量采用宏定义,以方便在程序中读懂和使用变量,在这里定义的变量与I/O口分配如下:
bita0=1;
//按键正转按下的返回值
bita1=1;
//按键反转按下的返回值
bita2=1;
//按键停转按下的返回值
sbitajz=P2^0正转;
sbitajf=P2^1反转;
sbitajt=P2^2停转;
//手动按键
sbitA=P0^4正转;
sbitD=P0^3反转;
sbitC=P0^2停转;
//无线模块输出
sbitIN1=P1^0;
sbitIN2=P1^1;
//电机输入端
sbithuo1=P2^3正转;
sbithuo2=P2^4反转;
//霍尔传感器输出
sbitZLED=P2^5正转;
sbitFLED=P2^6反转;
//电机状态指示
3.2系统子功能程序设计
系统功能的实现不同的控制功能,如窗帘的开关等,本程序中共用到以下几个子函数:
voiddelay(uintx);
//延时函数1ms
voidcsh();
//程序初始化
Voidajsm();
//按键扫描
各子函数如下:
延时函数//通过for循环执行空操作来实现延
voiddelay(ucharj)
{
ucharc,d;
for(c=j;
c>
0;
c--)
for(d=110;
d>
d--);
}
为控制器在每次启动或重启后要进行初始化,以使内部个寄存器的值被清零或置位或对程序中间变量赋予相应的值,本设计的初始化程序主要完成输入端口的置位和输出端口的置位,如下初始化函数:
voidcsh()
{IN1=0;
//电机初始状态为停转
IN2=0;
huo1=1;
//霍尔传感器正常输出为高电平
huo2=1;
ajz=1;
//按键初始状态
ajf=1;
ajt=1;
ZLED=0;
//LED初始状态全灭
FLED=0;
a0=0;
a1=0;
a2=0;
}
按键扫描程序:
ucharajsm()
{
if(ajz==0)//正转按键
{delay(10);
If(ajz=0)
{a0=1;
Returna0;
}
if(ajf==0)//反转按键
If(ajf=0)
{a1=1;
returna1;
if(ajt==0)//停转按键
If(ajt=0)
{a2=1;
returna2;
3.3系统主程序
系统主程序设计每一个C函数都必须有一个并且只有一个主函数,系统开始执行程序是从主函数开始。
本设计没有使用中断,以键盘的扫描为主,主函数内主要完成输入口状态的扫描,并调用相应子函数完成相应功能,主程序流程图如下:
图15主程序流程图
主函数中完成系统初始化后,死循环while
(1)不停地对输入端口进行检测,当对应的输入端口有使能信号时执行相应的操作,操作完成后又接着检测输入口。
到此系统的软件设计完成,还需对软件的运行情况做进一步仿真并下载到硬件测试,有漏洞及时修正。
4Proteus软件仿真
在系统硬件焊接之前,应该首先进行软件模拟调试,protues是一款对于单片机的调试非常有用的软件,Protues软件是英国Labcenterelectronics公司出版的EDA工具软件。
它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。
它是目前最好的仿真单片机及外围器件的工具。
虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。
Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。
是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。
在编译方面,它也支持IAR、keil和MPLAB等多种编译。
根据自己的实际硬件电路图,在软件中进行仿真调试,导入程序,观察是否能正常工作,软件调试顺利通过!
只有确认硬件无误并且相应的软件也正常工作后,才能进行实际的物理焊接。
本次课程设计,不经锻炼了我们的动手能力,还使我对软件的使用更为熟练,对于以后的工作和学习都有很大的作用,所以感觉确实获益匪浅!
5课程设计体会
通过这次的课程设计作品的制作让我对单片机的理论有了更加深入的了解,同时在具体的制作过程中我们发现现在书本上的知识与实际的应用存在着不小的差距,书本上的知识很多都是理想化后的结论,忽略了很多实际的因素,或者涉及的不全面,可在实际的应用时这些是不能被忽略的,我们不得不考虑这方的问题,这让我们无法根据书上的理论就轻易得到预想中的结果,有时结果甚至很差别很大。
通过这次实践使我更深刻的体会到了理论联系实际的重要性,我们在今后的学习工作中会更加的注重实际,避免只会纸上谈兵。
在进行硬件焊接的时候应提前布好元件的位置,尽量使整个板子布局更加合理,尽量使每个焊点标准焊接,防止虚焊,影响后续的硬件调试工作,
在软件的设计中,应使程序尽量简单,但是应以能满足系统要求为前提,充分考虑到可能发生的各种情况,使程序紧凑合理,防止出现明显的漏洞!
在设计的过程中,我还要特别感谢老师和同学的无私帮助,正是他们的鼓励和帮助之下,才使得我们我们的课程设计能顺利的完成;
课程设计中又让我体会到了合作和团结的力量当遇到不会或设计不了出来的地方,我们会一起相互讨论相互帮助,这次设计进一步认识了只有团结互助,才能更好的完成设计任务。
最后再次感谢老师对我们的精心指导,感谢同学们的热心帮助。
参考文献
[1]余发山,王福忠等编著.单片机原理及应用技术,江苏,中国矿业大学
[2]谭浩强.C程序设计(第三版).北京:
清华大学出版社,2005
[3]李朝青.单片机原理及接口技术(简明修订版).北京:
北京航空航天大学出版社1999
[4]何立民.单片机高级教程.北京:
北京航空航天大学出版社,1999
[5]李群芳.单片微型计算机与接口技术.北京:
电子工业出版社,2001
[6]朱定华.单片微机原理与应用.北京:
清华大学出版社,2003
[7]马淑华,王凤文,张美金编著.单片机原理与接口技术(第二版).北京:
北京邮电
大学出版社,2007
[8]李维祥.单片机原理与应用.天津:
天津大学出版设,2001
[9]钱逸秋.单片机原理与应用.北京:
电子工业出版社,2002
[10]戴佳.51单片机C语言应用程序设计实例精讲(第2版).北京,2008
[11]赵亮.单片机C语言编程与实例.人民邮电出版社:
北京,2003
[12]边海龙.单片机开发与典型工程项目实例详解.北京电子工业出版社,2008
附一:
源程序代码
#include<
reg52.h>
//库文件
#def
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 遥控 窗帘 设计