【S183】智慧窗户
作品说明 |
作者:徐一心 郑欣怡 黄媛科
单位:南昌理工学院
指导老师:刘嘉伟 李凯
1. 引言
上世纪八十年代初,随着电子技术飞速发展,电子技术与家用电器开始结合,电子时代的到来已经从人们开始体现出来,住宅电子化也不例外,大批的宅电子设备随之窗户窗帘的智能出现。八十年代中期,将家用电器、电子通信设备与安保防火设备各自独立的功能综合为一体后,形成了住宅自动化概念;八十年代末,由于通信与信息技术的发展,智能窗户设计及对住宅中各种家用电器、电子通信、安保设备通过总线技术进行控制、监视与管理的商用系统,这在美国称为Smart Home,也就是现在智能家居的原型。
智能家居系统包含的主要子系统有家居布线系统、家庭网络系统、智能家居中央控制管理系统、家居照明控制系统、家庭安防系统、背景音乐系统、家庭影院 与多媒体系统、家庭环境控制系统等八大系统。其中智能家居中央控制管理系统、家居照明控制系统、家庭安防系统是必备系统,家居布线系统、家庭网络系统、背景音乐系统、家庭影院与多媒体系统、家庭环境控制系统为可选系统。系统包括如下几个方面的内容:智能门控系统、紧急求助、烟雾检测报警、燃气泄露报警、碎玻探测报警、红外微波探测报警等,本项目所针对的主要集中在智能窗户系统部分。
2. 场景调研
2.1 研究背景
智慧窗户作品的由来可以追溯到人类对于智能家居的不断追求和创新,随着科技的发展,人们对于家居生活的要求不再满足于基本的功能,而更加注重舒适度和智能化,智能窗帘作为智能家居的一个重要组成部分应运而生。智能窗户作为智能家居系统的一部分,被视为提升居住环境舒适度和便利性的重要手段,随着科技的进步,智能窗户的技术也不断发展,传统的窗户需要手动操作,而智能窗户则可以通过遥控器、手机应用或声控等方式进行自动控制,智能窗户可以根据不同的时间、天气和个人喜好自动调整,使室内环境更加舒适和节能。智慧窗户源于人们对于智能家居的追求和创新,通过技术的发展和不断改进,为人们提供了更加舒适、便利和智能化的居住体验。
随着科技的进步,经济的快速发展,人们对生活质量的要求越来越高,自动化设备也就逐渐被人们所喜爱,所以设计智能窗户系统具有实践意义。目前普通窗户在下雨时不能自动关闭,在刮大风有沙尘天气的时候也不能自动关闭,这给我们带来了诸多不便,也给我们带来经济损失,在这种情况下安装智能窗就可以不再让这些问题成为我们的烦恼,智能窗户代替现在的普通窗户将会成为一种趋势,基于此背景研究下,本项目展开了智慧窗户的探索与发明。
作品说明
智慧窗户
2.2 研究目标和内容
在我国,基于单片机控制的智能窗户设计已经得到了广泛关注和研究,目前国内的研究主要集中在以下几个方面:
① 控制策略的优化:针对不同的气候条件和建筑结构,设计适应性强的控制算法,以最大程度地提高能源利用效率。
② 窗户材料的研究:研究新型窗户材料的热传导性、透光性等特性,以及其在智能窗户中的应用,以实现更好的节能效果。智能窗户需要涉及到光照、温度、湿度等参数的监测和控制,通过传感器技术和自动化控制系统,智能窗户可以根据外界环境自动调整窗帘的开合程度,以为室内提供适宜的光照和温度条件。此外还可以通过智能手机应用或者云平台进行远程监控和控制,让用户随时了解室内的状态并进行合理的调整。
物联网技术的飞速发展给我们的生活带来了日新月异的,在本项目设计中结合了传统的方式和现代科学技术,突破了现有智能窗户的局限性和单一性,智慧窗户是现代电子技术、通讯技术及自动化技术相结合的产物。随着高新技术及电子器件的开展,光控、温控及遥控窗帘应运而生,在此基础上我们提出观点,致力于给人们打造舒适宜居便利的生活方式,同时给人们带来全新的体验。
智慧窗户是以家用电器、门窗和家居为平台进行设计的,智能家居控制系统是集合了各种网络和总线的应用,例如以太网、现场总线、公共电话网、无线网的传输网络,它们最终构成一个完整的集家庭通信、家庭设备自动控制、家庭安全防范等功能的控制系统。现代智能化离不开运算和控制单元,本系统采用 STC89C52RC 作为主控器件,与 MQ-2 烟雾传感器、太阳能板、DHT11 温湿度传感器和 ULN2003 步进电机驱动板组成一个整体的系统,实现了自动感应关窗的装置,该自动关窗控制系统具有性能可靠、使用寿命长、耗电低等优点。单片机应用系统由硬件和软件组成,硬件由单片机扩展的存储器、温湿度传感器、烟雾传感器以及各种实现单片机系统控制要求的接口电路和有关的外围电路芯片或部件组成;软件由单片机应用系统实现其特定控制功能的各种工作程序和管理程序组成。本项目作品完成了单片机应用系统其开发过程的系统总体设计、硬件设计、软件设计和系统调试,根据开发的实际要求,相互协调、交叉、有序的进行。
2.3 相关参数及性能指标
玻璃 | 5+12A+5mm中空/6+15A+6mm/5+5mm中空钢化玻璃 |
五金配置 | 标配 |
| 壁厚 | 3.0 |
表面 | 静电粉尘喷涂 |
3. 机器人设计
3.1 机器人本体技术路线
该系统以STC89C52单片机为主控芯片,做出了一种基于Arduino的智能窗户控制系统,以雨滴、可燃气体和空气质量检测传感器感知外界环境变化,定时采集数据并将数据通过ZigBee网络传输并汇聚到协调器节点,协调器节点综合当前环境变化合理控制窗户开关,另外协调器节点连接WiFi通讯模块以实现远程控制窗户开闭的功能。
该系统可根据外界环境变化智能控制窗户开关,用户也可通过智能手机远程控制窗户开关,实现了窗户控制系统的智能化、无线化和网络化。主控模块采用arduinonano作为主要控制模块:Arduino是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的Arduino板)和软件(ArduinolDE),由一个欧洲开发团队于2005年冬季开发。Arduino 能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境,而本次选用的Arduino Nano是一款基于MicrochipATmega328P8位微控制芯片的智能硬件开发板。
3.1.1 结构设计
本作品采用了STC89C52RC作为主控器件,与MQ-2烟雾传感器、太阳能板、DHT11温湿度传感器和ULN2003步进电机驱动板组成了一个完整的系统,采用了传感器技术设计和自动化控制设计,并主要对传感器设计采用了模块化,以便于后期的升级和维护。
3.1.2 传感器与驱动系统
对于传感器考虑了多种类型,有烟雾传感器、光强传感器、光线传感器、雨滴感受器,对于驱动系统采用了ULN2003步进电机。
3.1.3 控制系统和软件算法
控制系统的设计采用了语音、定时、APP控制,在软件算法方面使用了包括自动识别、遥控信号、准确定位算法。
3.1.4 能源管理系统
本项目的能源管理系统通过安装太阳能板和蓄电池,智能窗户可以实现断电情况下的供电,并且通过智能管理系统和电量显示提醒功能,来提高机器人的续航能力。
3.1.5 作品展示
作品正面
作品背面
3.2 详细结构方案
采用轻量且坚固的铝合金材料,保证了窗户的结构稳定性。连接部件选用高强度塑料连接件,保证折叠部分的灵活性。外观设计简约大方,采用防水、防尘的材料,提高窗户的耐用性。
3.3 控制方案
通过数字引脚将烟雾传感器和雨滴传感器接入Arduino,实现对环境的实时监测。通过PWM控制电机和舵机,实现窗户的折叠、展开和精细控制。WiFi模块连接云端,用户可以通过手机APP或者网页实现对窗户的远程监控和操作。使用Arduino编程语言编写控制程序,实现智能折叠、烟雾报警和自动关窗等功能。
4. 作品创新点与技术难题
4.1 创新点
(1)节能
目前全球建筑能耗约占所有能耗的30%~40%,其中制冷和采暖所占的比例超过一半。智能窗可以在一定的物理条件下发生着色或褪色反应,具有调节光强度和室内温度的功能, 从而减少建筑物的供暖和制冷能源需求,因而展现出较大的应用潜力,在不改变窗户结构的情况下,可通过热致变色材料,根据温度变化自主调节窗户的太阳辐射透过率和远红外热辐射反射率,实现热流的方向控制,从而达到零能耗节能的效果,是比较理想的被动式智能窗。 基于二氧化钒的变色玻璃或传统水凝胶玻璃,能实现太阳辐射波段的光谱调控,对中远红外热辐射波段的光谱调控十分有限甚至是负面调节,这种限制源自现有材料的性能制约。
(2)折叠设计
折叠阳台窗的特色之一是折叠设计,使得窗户可以轻松开启和关闭,方便用户操作,同时折叠设计还使得窗户所占空间更小,适合空间有限的的环境。
(3)多种智能控制模式-解放您的双手
① 无线遥控:在wifi内任何一个地方都可以通过遥控器控制电动窗帘的开合。
② 手机APP:比遥控器和窗帘开关面板更加方便,功能也更多,比如可以远程控制,再也不用担心出远门忘记拉家里的窗帘了。
③ 智能音箱控制:可通过智能音箱语音控制,简单一句话,就能打开关闭窗帘(智能电动窗帘可支持智能语音音箱,如天猫精灵 、小度在家、小爱同学等)。
④ 定时控制:早上9点定时开起窗帘,迎接美好的一天。
⑤ 自动/手动模式随意切换: 既能享受传统窗帘的手拉关闭的体验感,又能体验自动窗帘的科技感。
(4)智能隔热降噪-营造恬静空间
同时钢化夹层调光玻璃结合做成的窗户,打造全方位的隔音隔热减噪的效果,营造良好的睡眠环境。
(5)断电太阳能板供电一舒适安心
通过安装太阳能板和蓄电池,智能窗户可以实现断电情况下的供电并且通过智能管理系统和电量显示提醒功能,提高窗户的供电效率和安全性,为用户提供舒适、安心的使用体验。
4.2 技术难题及解决方案
4.2.1 技术难题
在生活中窗户类型多种多样,智能窗户机器人必须能够适应不同种类的窗户,如滑动窗、推拉窗、百叶窗等,这些窗户类型的开启和关闭机制差异较大,因此设计一个通用的机器人系统来适应各种窗户类型是一个重大的挑战。
(1)智能化难点
① 自动识别窗户状态
机器人需要准确判断窗户是开着的还是关着的状态,这需要克服窗户形状和光照条件的干扰,确保识别的准确性。
② 遥控信号传输
为了实现遥控窗户的功能,必须解决远距离信号传输的问题,然而信号的传输稳定性和抗干扰能力都对设计提出了较高的要求,这是一个技术上的挑战。
③ 准确定位
在控制窗户开关的过程中,需要准确定位自身和窗户的位置,这需要使用合适的传感器和算法,确保能够准确地对窗户进行操作。
(2)环境条件的复杂性
智能窗户机器人必须能够适应不同的环境条件,其周围环境条件还可能随时发生改变,如光线强度、室内温度等,这需要智能窗户机器人能够根据环境条件调整窗户的开启角度,以保证室内的舒适度,然而如何准确感应环境条件并做出相应的调整是一个困难的问题。
4.2.2 解决方案
(1)设计方案
为了满足不同类型窗户的需求,本智慧窗户机器人采用可替换模式化设计,机器人配备多种不同的窗户开启和关闭装置,根据不同窗户类型进行自动更换,同时引入深度学习技术对窗户类型进行识别,以实现自动装置更换的智能化。
(2)窗户智能化方案
① 自动识别窗户状态
采用视觉传感器和图像技术,通过识别窗户状态特征,例如窗户开合角度、反射光照等,进行准确判断,并配合适当的算法来提高识别准确性。
② 遥控信号传输
使用无线通信技术,如蓝牙或者WiFi,进行远距离信号传输,通过优化通信协议和增强信号抗干扰能力,确保稳定的信号传输,实现控制窗户的功能。
③ 准确定位
结合全局定位系统(GPS)和局部定位传感器,如超声波传感器或红外线传感器,实时获取智慧窗户的位置信息,通过数据融合算法,实现准确的定位,确保能够精准的操作窗户。
(3)环境条件感知方案
为了准确感知环境条件,智慧窗户使用了多种传感器来获取光线强度、温度、天气等参数,如光强传感器、光线传感器以及MQ-2烟雾传感器、有源蜂鸣器和雨滴传感器,通过数据融合算法,能够准确判断室内环境的舒适度,并相应调整窗户的状态。
5. 作品设计过程与评估
5.1 研究结果
通过对智慧窗户的设计与实现,本项目取得了一系列显著的研究成果:
① 智能折叠实现:成功设计并实现了窗户的智能折叠机制,通过电机和舵机的协同作用,使窗户能够在不同空间中智能地展开和折叠,提高了窗户的适应性和灵活性。
② 烟雾报警系统:引入高性能的烟雾传感器,成功实现了窗户周围环境中烟雾浓度的实时监测,一旦检测到异常情况,系统能够及时触发报警机制,有效保障了用户的生命安全。
③ 下雨自动关窗功能:雨滴传感器的引入使得窗户能够感知外部天气情况,当检测到雨滴时,系统自动关闭窗户,防止雨水进入室内,提升了窗户在不同天气条件下的自动化管理能力。
④ 远程监控与控制:利用WiFi模块实现了对窗户的远程监控和控制,用户可以通过手机APP或者网页随时随地操作窗户,增加了智能家居系统的便捷性和灵活性。
⑤ 能源管理优化:设计了可充电锂电池作为主要电源,并进行了功耗优化,延长了电池的使用寿命,此外支持外接直流电源,增加了系统的可靠性和可持续性。
5.2 展望
在取得研究成果的基础上,我们对未来智慧窗户的技术发展提出以下展望:
① 多传感器融合:引入更多的环境感知传感器,如温度、湿度等,实现对室内环境的更全面监测,使智慧窗户更加智能化和个性化。
② 人机交互优化:进一步优化用户界面和交互设计,使得用户可以更直观、简单地操作智慧窗户,考虑语音控制等新兴技术,提升用户体验。
③ 人体检测与安全性:引入人体检测技术,使得窗户能够感知室内有人时自动保持开启状态,提高室内通风效果,同时加强对窗户开启状态的安全监测,确保用户的安全。
④ 智能学习与预测:结合机器学习算法,使智慧窗户能够根据用户的习惯和生活模式进行学习,并预测用户的需求,提前作出相应的响应,进一步提升智能化水平。
⑤ 可持续能源应用:探索更环保的能源管理方案,如太阳能板的应用,以降低对传统电力的依赖,提高系统的可持续性。
总体而言,智慧窗户作为智能家居的一部分,在未来将持续融合新技术,不断提升智能化水平,以更好地满足用户对生活质量、安全性和便捷性的需求。
6. 示例程序
| #include <Servo.h>
Servo myservo1; char serialData; const int lightSensorPin = A0; // 光敏电阻连接的模拟输入引脚 const int motorPin = 9; // 电机连接的数字输出引脚 int pos1 =0; int lastMotorActionTime = 0; // 上一次电机操作的时间 const int smokeSensorPin = A4; // 烟雾传感器连接的模拟输入引脚 const int buzzerPin = 3; // 蜂鸣器连接的数字输出引脚 const int rainSensorPin = A3; // 雨滴传感器连接的模拟输入引脚 const int servoPin1 = 4; // 第一个舵机连接的数字输出引脚 const int servoPin2 = 11;
void setup() { Serial.begin(9600); pinMode(lightSensorPin, INPUT); pinMode(motorPin, OUTPUT); myservo1.attach(7); pinMode(smokeSensorPin, INPUT); pinMode(buzzerPin, OUTPUT); pinMode(rainSensorPin, INPUT); pinMode(servoPin1, OUTPUT); pinMode(servoPin2, OUTPUT); }
void loop() { int lightValue = analogRead(lightSensorPin); int currentTime = millis();
if (lightValue == 0 && currentTime - lastMotorActionTime > 100000000000000000000000000) { digitalWrite(motorPin, HIGH); delay(5000); digitalWrite(motorPin, LOW); lastMotorActionTime = currentTime; }
else if (lightValue == 1 && currentTime - lastMotorActionTime > 200000000000000000000000000) { digitalWrite(motorPin, HIGH); delay(2000); digitalWrite(motorPin, LOW); lastMotorActionTime = currentTime; }
else { digitalWrite(motorPin, LOW); } ////////////////////////////////////////////////// myservo1.write(pos1); if( Serial.available() > 0 ) {
serialData = Serial.read();
if ('f' == serialData) { pos1=60; Serial.println(serialData); } else if('b' == serialData) { pos1=0; Serial.println(serialData); }
} /////////////////////////////////////////////////////////////////////////////////// int smokeValue = analogRead(smokeSensorPin);
// 当烟雾传感器的值超过阈值时触发报警 if (smokeValue > 500) { activateAlarm(); } else { // 如果烟雾传感器的值低于阈值,关闭蜂鸣器 digitalWrite(buzzerPin, LOW); } //////////////////////////////////////////////// // 读取雨滴传感器的值 int rainValue = analogRead(rainSensorPin);
// 根据雨滴传感器的值判断是否有雨 if (rainValue > 500) { // 有雨时,舵机转动到45度 rotateServos(45); } else { // 没有雨时,舵机转动到0度 rotateServos(0); } }
void activateAlarm() { digitalWrite(buzzerPin, HIGH); // 打开蜂鸣器 delay(2000); // 报警持续2秒 digitalWrite(buzzerPin, LOW); // 关闭蜂鸣器 }
void rotateServos(int angle) { // 将角度限制在0到180之间 angle = constrain(angle, 0, 180);
// 控制两个舵机转动到指定角度 digitalWrite(servoPin1, HIGH); digitalWrite(servoPin2, HIGH); delayMicroseconds(500 + map(angle, 0, 180, 500, 2500)); digitalWrite(servoPin1, LOW); digitalWrite(servoPin2, LOW);
delay(1000); } |
* 本项目未获得作者开源授权,无法提供资料下载。
|
|