- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机与信息学院
电子信息工程系综合课程设计报告
专 业 班 级 电子信息科学与技术 学生姓名及学号 指导教师 老师 课题名称 基于51单片机智能家庭小管家 ~2014 学年第 三 学期 课题的基本描述
目标:本课题目标主要是通过多点采集室内温度、湿度、光线强度、以及检测室内是否有人来控制室内一些家用电器的自动工作。采集到的温度和湿度显示与实际温度和湿度误差小于1度;控制速度小于10分钟。具体家用电器涉及到:1、空气加湿器;2、电风扇;3、应急灯等。
意义:在一定程度上解放人类的双手,对人们日常生活中本来就不太注意的一些生活细节通过单片机进行自动控制,以此提高人们日常生活的质量。
设计的基本要求
本课题通过热释电人体红外传感器检测室内是否有人,如果检测到有人则控制家用电器正常工作,否则所控制的家电则自动断电。
各个家用电器的控制过程:
对应急灯的控制:应急灯只在有人晚上回家时自动打开,以避免人晚上回到家时屋内漆黑一片所造成的不便;并且当有人打开屋内的日常照明灯时则自动关闭应急灯;但是当晚上人们关灯睡觉后应急灯也不会自动打开。
对空气加湿器的控制:一般人们处在湿度在40%~50%之间会感觉比较舒适,当湿度过低或者过高时则会引起人们的不适;所以当湿度低于50%时空气加湿器就自动打开,并且湿度越低加湿器运行速度越快、湿度越接近50%运行速度越慢,当室内湿度超过50%时则自动断电。
对电风扇的控制:当温度高于25 ℃时人体就会开始从外界吸收热量,当温度高于30℃人就会热得比较难受时,为了保证电风扇的工作有意义,所以只有当从机2能检测到人时才会打开。所以当温度高于25 ℃并且从机2能检测到人时电风扇就会打开一档,当温度高于30 ℃时打开二档。
技术方案及关键问题
从实际考虑出发,由于各个家用电器可能处于屋内的不同地方,甚至相隔比较远,而且家电还可能根据个人需要移动位置,所以如果想只用一块单片机通过有线的方式去控制所有家电的话不太现实、也不够灵活。因此我设计成主从机模式,一个主机、多个从机,采用星型方式通过无线模块进行相互通信。同时为了使所采集到的信息能够更加准确的反应室内的真实情况,主机和每个从机都携带了相关的传感器。其中主机主要实现人机对话,以及将接收到的从从机发来的数据整理并打包之后再发向各个从机;并且还执行向从机发送指令的任务;而从机主要实现接收主机发来的数据并将数据进行相关分析处理,之后根据处理结果对家电进行相关控制。
对于热释电人体红外感应模块,当感应到有人时会输出高电平(3.3V),当感应不到人时输出低电平(0V);而且其最大感应距离是7米,因此为了避免人体感应存在盲区,所以在整个屋内放置多个人体感应模块是很有必要的。又由于当其感应到有人时只输出3.3V的高电平,而我设计时使用的是5V电压的51系列单片机,所以需要将感应器输出的3.3V的电压转变为5V电压。图1即为3.3V电压转变成5V电压的电路图。图2为热释电人体感应器电路图。
图图
图图
图
图图图图 (2)程序算法部分:图10 是主机的主程序框图。图11是主机调时间、输入指令模式框图,图12是主机正常运行模式框图。
否 是 是
否
图
是 否
是
否
否 否 是
是 是 否
否 否 否
是 是 是
否 否
是 是 是
图
否
是 否
否 否 否 是 是 是 是 图
图
图 开始
LCD12864初始化
NRF24L01初始化
AD转换初始化
定时器初始化
运行日历程序
无线模块发送数据
无线模块接收数据
每隔10秒读取一次温湿度并检测是否有人
应急灯控制
按键key3按下?
调时间、输入指令模式
正常运行模式
退出调时间、输入指令模式?
输入时 开始
按键key3按下?
keynum++
退出调时间、输入指令模式
keynum 0 ?
keynum 3 ?
keynum 2 ?
keynum 1 ?
输入分
输入秒
keynum 6 ?
keynum 5 ?
keynum 4 ?
输入日
输入年
输入月
keynum 9 ?
keynum 8 ?
keynum 7 ?
keynum 0
输入风扇自动调档指令
输入星期
开始
第一个5秒时间间隔
第二个5秒时间间隔
第三个5秒时间间隔
第四个5秒时间间隔
显示主机温湿度
显示2号机温湿度
显示3号机温湿度
显示日历
调时间、输入指令模式
退出调时间、输入指令模式? 开始
NRF24L01初始化
LCD1602初始化
AD转换初始化
定时器初始化
每隔4秒读一次温湿度并进行一次光电转换和检测是否有人
无线模块接收数据
无线模块发送数据
显示本地温湿度
根据温度控制电风扇 开始
NRF24L01初始化
LCD1602初始化
AD转换初始化
文档评论(0)