基于51单片机智能窗帘系统设计与实现
第2章 系统方案与总体设计
2.1系统方案
2.1.1单片机主控芯片的选择
方案一:STM单片机工作频率高,运行速度快,是挺适合做本设计系统,但是成本太高,本系统只用于模拟智能光控窗帘系统的设计,所以并不需要成本高的单片机。
方案二:51单片机与其他单片机相比,在相同条件下,它有其他单片机没有的优点,处理性强,低电压,低功耗,系统结构简单,环境适应能力好,价格便宜等优点。
综合以上的单片机的特点,51单片机在不同环境的自适应能力较强,这一方面加强了产品的稳定性,低廉的成本是我国智能窗帘发展的一大优势。因此选用51单片机作为智能窗帘的主控制单元。
2.1.2显示模块的选择
方案一:LED,由发光二极管组成的显示屏。LED在显示方面具有很大的优势,显示比较清晰。例如能显示色彩图像,甚至包括可以播放DVD等功能,价格偏贵。
方案二:LCD,液态显示屏,操作简单,接口相对简单。价格相对于LED较便宜。
综上所述,本系统对显示模块部分要求并不高,能显示数字,字符就可以了。因此选择LCD作为本次设计系统的显示部分模块。
2.1.3按键模块的选择
方案一:矩阵型按键,按键较多,开发比较复杂,但节省了I/O口,不适合少量按键设备。
方案二:独立型按键,每个按键占用一个I/O口,开发比较简单,体积较小,占用空间不大,价格便宜。适合少量按键设备。
综上所述,考虑到整个系统的结构设计,我需要的按键数量不多,占用空间小,所以本系统采用独立按键。
2.1.4红外线控制模块的选择
方案一:蓝牙技术,在无线传输上领域有较为成熟优势,它具有,可穿透障碍物、数据传输方向无限制、传输距离较远、可点对多传输、传输速率也更快,功率低等特点。价格比较昂贵。
方案二:红外线传输数据就比较局限,传输方向有限制(只能以水平方向30度以内),传输距离短,点对点传输。但价格便宜。
综上所述,考虑到设计系统整体功能,无线控制窗帘也是必不可少的一部分,我认为,红外控制窗帘跟电视遥控的想法是一样的,比较传统。当然选择蓝牙肯定会比红外线控制完美,因为红外能完成的,蓝牙能做的更好,但本次设计只是为了效仿智能窗帘系统,考虑到成本,蓝牙的价格也比红外贵,因此本设计系统选用红外线控制无线传输。
2.1.5步进电机驱动芯片的选择
方案一:L298是一种H桥驱动器芯片,可以为负载提供双向电流。适用于驱动2相或4相步进电机。
方案二:ULN2003为极电极开路驱动芯片,ULN2003只能驱动4相步进电机。该芯片可以运转步进电机,它是一个集成电路,由7对达林顿管集成的,该达林顿管具有高电压和高电流。它的承载能力很强。
综上所述,本次设计采用了ULN2003芯片与步进电机的相互配合。由于单片机输入和输出端口的驱动能力的限制,所有信号在连接到电动机之前必须先放大。因此它非常适合本次毕业设计步进电机电路。
2.2可行性分析
从技术层面上分析,选择的方案芯片之类在大学期间接触的不少,在本系统中整体功能逻辑性还是比较好理解,刚好又是运用C语言编写程序,且功能比较简单,编程较易。从自身情况出发,是可以完成的。因此认为以51单片机和光电传感器为核心的智能窗帘系统是可行的。
从经济上分析,智能窗帘系统在市面上价格普降比较昂贵,很多家庭一般不会选择,结合本设计系统,降低了成本,以最大化实现智能窗帘系统,从这方面来看,本系统是可行的。
总的来说,我们已经进入了智能化时代,所以智能窗帘对以后的发展密不可分,它也是未来发展的一大趋势。
2.3系统实现方案
通过上述论证,本系统最终是以STC89C51单片机为核心主控模块,光敏电阻作光照检测模块,负责采集光照强度。以红外控制作为输入信号;系统在光线下通过光照检测模块采集的光照强度值,然后把采集的模拟量通过AD模数转换成电信号;按键模块选择占用多I/O口的独立按键方式,实现对窗帘的控制;经过主控芯片转换后将各个模块数据显示在LCD1602液晶屏上。ULN2003芯片驱动步进电机,驱使其正转或反转。系统结构如图2-1如下。

图 2-1 系统结构图
第3章 系统硬件设计
经过方案选择与论证后,就是进行硬件设计。本章主要包括光敏电阻和其连接以及模数转换电路、ULN2003芯片与步进电机的连接、LCD1602显示电路、按键电路和红外接收一体化HS0038等等。单片机提供5V电压以满足各个硬件模块的电压要求。在此次设计中,窗帘主要分为自动控制和手动控制,自动控制由光敏电阻来感应外部光线的变动,采集到信号后经过AD转换芯片后输出数字信号,通过ULN2003芯片再以此来驱动步进电机的转动,实现窗帘的打开或关闭。手动控制则是通过按键方式,启动中断函数,实现手动控制窗帘。这两个模式下,可以随意切换模式,从而体现系统完善性。
3.1 51单片机主控模块
以51单片机是系统主控芯片,共有40个引脚,其中32个外部双向输入输出口(I/O口),5个中断优先级。主要是能实现驱动步进电机的转动、液晶屏显示,按键控制、无线控制等功能。其中P1.0P1.7是连接ULN2003芯片驱动步进电机的转动。P0P0.7分别与D0D7连接作LCD1602模块连接电路。P2作系统高8位地址总线口,也可以当I/O口使用,P2.3P2.7连接到按键电路,每个按键是串联。P3.2口作红外信号数据输入端,P3.3是定时器1中断,用于连接红外接收头。主控芯片如下图3-1所示。

图 3-1 主控芯片图
3.1.1系统时钟电路
单片机的时钟电路是将时钟信号提供给单片机的振荡器。XTAL1和XTAL2是单片机内震荡电路输入路线,用来外接石英体和微电容器,主要是可以提供单片机一定频率的脉冲, 从而进行对日期、时间进行有效计时。本系统中采用一个11.0592Mhz的晶体振荡器与2个30pf的瓷片电容构成的时钟电路。时钟电路如下图3-2所示。

图 3-2 时钟电路
3.3.4红外线控制窗帘设计
本系统增加了红外线遥控窗帘功能,该电路采用HS0038红外一体化接头来实现,将输入信号进行接收、放大、检波、整形集成一体,并输出可以让单片机识别的TTL信号。这样一来,大大简化了接收电路的复杂程度,非常方便使用。当没有信号输入时,它是高电平状态,当接收到红外信号时,按红外数据波输出负脉冲信号。P3.2口作信号输入到单片机上,P3.3端口接入红外接收器,当我们使用遥控输入信号时,P3.2被拉低信号,此时INT0申请中断,优先执行遥控输入信号,单片机进行接收及处理该信号,传到ULN2003芯片驱动步进电机转动,实现窗帘的打开和关闭。红外控制电路如下图3-8所示。

图 3-8 红外控制连接图
第4章 系统控制软件设计
本系统在光线下通过光照检测采集的光照强度值,把采集的数据通过AD模数转换成数字信号,以51单片机为主控芯片,根据实时光照强度实现窗帘打开和关闭。整个系统在各个模块的分工合作下完成,实现自动控制、手动控制、定时控制、红外控制等功能内在联系。主程序的任务是系统初始化,开关中断,对按键进行扫描,判断是否有按键按下,经过分析及处理后,执行相应的手动控制、定时控制、自动控制和红外控制等的指令,这四个模式可以自动互相切换。显示模块是将各个模块信息显示在LCD1602屏幕上。主程序还操控步进电机工作和显示步进电机的工作。系统流程图如下图4-1所示。

图 4-1 系统总流程图
第5章 系统测试
经过程序设计之后,后面就是对整个系统的调试部分。根据系统设计和要求,按照电路图,先给给板子和各个模块电路焊接完成。接着按照之前写好的程序烧录到单片机中对电路板进行测试,接通电源。经过测试,基本大部分电路都没有问题。电源和红外控制都出现问题,红外控制窗帘测试时,发现按键并不是很灵敏,后来经过检查后,发现是主电路的一个焊点虚焊,经过重新焊接之后,这个问题就理想多了。
再用万用表对整个电路检查,排除短路、开路等问题。检查芯片、各个模块是否能正常工作之后进行功能测试。
5.1功能测试
(1)显示功能。接通电源后,显示部分显示正常,LCD1602液晶屏显示光照上下限值,系统时间,以及实时光照值,程序中设定的时间是12:00:00,上限值180,下限值10;当我按下开窗、关窗按键时,屏幕先后显示“window open”“window close”。经测试,显示功能是可以实现的,如下图5-1、5-2、5-3所示。

图 5-2 关窗显示
文章底部可以获取博主的联系方式,获取源码、查看详细的视频演示,或者了解其他版本的信息。
所有项目都经过了严格的测试和完善。对于本系统,我们提供全方位的支持,包括修改时间和标题,以及完整的安装、部署、运行和调试服务,确保系统能在你的电脑上顺利运行。
更多推荐



所有评论(0)