基于STM32单片机的居家智能窗

2023-08-20 16:50单申留惠雯赵新铭卢学玉
机械 2023年4期
关键词:传感器

单申 留惠雯 赵新铭 卢学玉

摘要:智能化发展的今天,大部分家庭还是依靠手动开关窗户,在防雨、防夹、感应有毒气体等各方面不能满足人们对舒适、环保、安全的家庭生活需求。本款居家智能窗是基于STM32单片机根据室外环境完成自动开关窗动作的新型居家智能窗。该智能窗主要由步进电机、滚珠丝杠、电磁铁、光敏电阻等各类传感器和电控部分组成。传感器系统将检测的雨水、空气质量等环境参数收集并传递到控制器,进而带动电机工作,通过动力传动装置实现窗户在室外恶劣环境时的自动关闭以及室内需要通风时的自动打开。此外,用户还可以通过手控按钮控制窗户的开关,体现多种控制结合的人性化设计理念。

关键词:居家智能窗;滚珠丝杠;STM32;传感器

中图分类号:TP271+.4 文献标志码:A doi:10.3969/j.issn.1006-0316.2023.04.011

文章编号:1006-0316 (2023) 04-0074-07

Home Smart Window Based on STM32 Microcontroller

SHAN Shen1,LIU Huiwen1,ZHAO Xinming2,LU Xueyu1

( 1.School of Mechanical Engineering, Jiangnan University, Wuxi 214000, China;

2.College of Automation, Jiangsu University of Science and Technology, Zhenjiang 212000, China )

Abstract:Despite the development of intelligence, most families still rely on manual opening and closing of windows, which cannot meet the needs for comfortable, environmentally friendly and safe family life in terms of rain-proof, anti-pinch protection and the induction of toxic gases. This group designed a new home smart window based on STM32 single-chip microcomputer to automatically open and close the window according to the outdoor environment. The smart window is mainly composed of various sensors and electronic control parts such as stepping motor, ball screw, electromagnet, photoresistor, etc. The sensor system collects and transmits the detected environmental parameters such as the rainwater and the air quality to the controller, which drives the motor to work. The power transmission device realizes the automatic closing of windows in harsh outdoor environments and automatic opening when ventilation is required. In addition, the user can also control the opening and closing of the window through the manual button, which reflects the humanized design concept of multiple controls.

Key words:home smart window;ball screw;STM32;sensor

開关窗户是调节室内环境的手段之一,大部分窗子的开关都是依靠人工调节,不具备根据环境情况来智能控制窗户开关,进而调节室内环境的功能[1]。科技的发展为人们生活舒适性提供了各种可能,智能窗产品也越来越受到人们的关注[2]。当前国外智能窗的研究主要倾向于电致变色的应用等,国内则尚未出现全面、自主、智能化工作的窗户产品,不能满足人们多样化的需求[3]。本文设计了一种基于STM32单片机的智能窗,以环境温度、湿度、光照等作为判断依据,完成对窗户的自动控制,并能做出相应的报警。

实验表明,该设计安全可靠、功能强大、各模块性能稳定、数据收发准确、成本低、维护方便,完全满足人与窗户“远程对话”的需求。提高人们的生活质量,增强家居生活的安全、舒适性。

1 设计目标与实现方案描述

1.1 设计目标

拟设计一种居家智能窗装置,能根据环境情况来智能控制窗户开关,进而调节室内环境,提高人们的生活质量,增强家居生活的安全、舒适性。

1.2 研究内容与实现方案描述

在提出的研究目标的基础上,结合实际做以下几个方面的内容:

(1)本设计对目前现有智能窗及智能开关窗装置从适用分类、传动装置、适用范围和智能控制等方面的研究与探讨,针对智能家居未来的发展方向设计一种新型居家智能窗,通过与现有智能窗和外附智能开关窗装置的对比[4],最终选择以电磁铁丝杠作为传动装置的居家智能窗作为最终设计方案。

(2)完成本课题所研究的居家智能窗的整体结构设计,这个设计主要包括机械传动装置部分、传感系统部分、电控驱动部分、机械传动部分和安全模块。

(3)运用三维建模软件UG NX 12.0对升

降旋转式自行车自动停车装置进行整体建模,包括焊接钢结构框架部分、升降系统部分、抓取与进给部分、回转部分。

(4)电控部分选择STM32F4芯片来控制。

2 智能窗户总体结构设计

2.1 居家智能窗装置工作原理

如图1所示,居家智能窗由窗户框架部分、传感系统部分、电控驱动部分、机械传动部分和安全模块等组成。窗户框架部分与传统窗户一样,主要由窗框、玻璃、活动构件组成,其中活动构件与窗框之间的相对运动依赖导轨;传感系统部分,由各类的传感器组成,主要用于收集需要进行判断的数据;电控驱动部分,由步进电机、相应的联轴器以及各种检测电路组成,用于判断环境情况并根据环境情况选择性地给机械传动结构提供动力;机械传动部分由电磁连接开关、丝杠及在上面运动的滑块组成,是控制窗户开关的执行部分[5]。基本工作过程为:传感器接收环境信号,并将信号传给对应检测电路,检测电路根据设定好的程序控制步进电机,步进电机控制丝杠机构以及电磁连接件的连接与松开,进而控制窗户的开关。

2.2 智能窗户的控制要求

本设计系统主要是基于STM32F4单片机的控制,根据室内的空气状况、室外情况以及是否有人接近来控制窗户的开合。

本设计主要有以下几个控制要求:

(1)当外界有雨时,雨水传感器感应到信号,并将其传输给单片机,由单片机来控制窗户的闭合;

(2)当有人在窗口停留时,将阻止红外探测器发射和接收路径,设置一定时间后窗户将被关闭,并发出报警信号;

(3)当昼夜交替时,信号会被光强传感器接收,并将其传输给单片机,以控制天黑时窗户的闭合。

(4)当室内一氧化碳含量达到一定浓度时,装置会发出警报,并自动打开窗户[6]。

2.2.1 智能窗户控制原理

该智能窗户本着为用户提供更舒适便捷的生活条件、提高生活水平的目的,利用了步进电机和丝杠的传动机构,通过电磁磁力机构联接窗体,实现开关动作,控制系统结合光敏传感器、雨滴传感器、CO传感器等多种传感元器件实现了面对下雨、煤气泄漏、早晚光线改变等不同的环境条件自动控制窗户的开合的功能[7]。

一般情况下,在智能化控制系统中,核心控制元件会采用PLC[8]或者单片机。本智能化控制系统采用了STM32F4单片机,系统运行更稳定,避免了使用过多的继电器,简化了设计,控制更加灵活、安全;可检测故障,尽可能保障运行的安全;可实现报警功能,实时监测;能够复杂控制系统,可便于添加子功能,以实现更多的功能,且成本低廉、执行可靠。

2.2.2 确定智能窗户执行方案

当传感器感受到外界变化后,将信号传输给单片机,然后通过联轴器将电机的转动以螺旋传动的方式转化为滚珠丝杠上滑块的直线运动,进而实现窗户的开闭。

此方案不仅能够使窗户完成在不同环境下做出相应操作的功能,而且拥有运行平稳、结构简单紧凑、传动精度高、磨损较小、使用寿命长等优点。

综上所述,可设计出窗体模型如图3所示。

3 智能窗户硬件设计与选型计算

3.1 智能窗户的组成参数

根据窗户的开闭状态和载荷的重量,选择

的执行机构组成如图4所示。窗体移动速度

为3.2 m/min,窗体的重量w=10 kg,尺寸为1500 mm×600 mm,定位精度20 μm,重复定位精度15 μm,摩擦因数u=0.2。

3.2 滚珠丝杠副的尺寸选择计算[9]

3.2.1 初算导程

导程计算如下:

式中: 为滚珠丝杠的导程,mm; 为滚珠丝杠副的最大移动速度,即窗体移动速度,根

据窗户大小与开关窗时间选定为3200 mm/min; 为滚珠丝杠的最大相对转速,即电机最大转速,初步选定为400 r/min。

计算得 =8 mm。

3.2.2 计算额定动载荷

3.2.5 确定丝杠的规格型号

查表[10],按上述估算的Ph、Cam及dzm的值,选出合适的规格为T8-2-D8。

3.2.6 滚动轴承型号选择

选型原因:不仅要求滚珠丝杠副精度高,还要求支撑的设计要满足高精度、高刚度。还要注意对于轴向刚度、摩擦力矩、高精度运动轴承等的选择。螺钉主要承受轴向载荷(径向载荷除外)。在一般情况下,主轴承螺钉无外部负载时,需要更高的精度和轴向刚度,且摩擦力矩要尽可能小。

组配方式:采用背靠背组配方式,此类组配方式中,力的作用线向外侧发散,使得轴承有效支点距离增大,这种组配方式可以同时承受轴向载荷和径向载荷,且其承受倾斜力矩的能力较高。

因此,选择与丝杠配套的KP08带座轴承[11]。

3.3 联轴器选型

选定金属滑块联轴器,查表得D=20 mm、m=0.45 kg[12]。

3.4 电动机选型

为实现较高的精度要求,同时保持负载运行稳定,参考对比同类型装置,选取电动机的步进角1.8°,电压3.6 V,电流1.7 A,相数3,最大转矩0.5 N·m,重量1.1 kg,转速360 r/min。

3.5 传感器选型

传感器方面需要包括的类型有光强传感器、气敏传感器、雨滴传感器以及人体红外感应探头。光强传感器选择高精度MAX44009模块、串口光强度模块;气敏传感器选择MQ-9一氧化碳、可燃氣体传感器;雨滴传感器选择

一般的雨水模块传感器;人体红外感应探头选择HC-SR501、RD-624人体红外感应电子模块传感器[13]。图5~图8为不同类型的传感器。

4 智能窗户控制系统硬件设计

4.1 单片机的选择

本设计选择意法半导体集团的STM32F4系列单片机,如图9所示。它是基于ARM公司Cortex-M4内核的高性能微控制器,具有以下几方面的优点:

(1)12位ADC,数模转换与模数转换精度及转换速度高;

(2)CPU运算速度快,指令丰富,存储容量大,适应现代控制技术;

(3)I/O点多、响应迅速,适应实时控制的要求;

(4)通讯组网能力强,配有全双工I2C、高速SPI和高速USART;

(5)高可靠性,集合了CPU模块,输入/输出模块,通讯模块,结构简化,易于使用。

4.2  I/O端口的分配

本设计所选单片机为STM32F407ZGT6,开发板为正点原子探索者开发板[14],各传感器链接I/O端口如表1所示。

5 软件实现

5.1 基本原理

该设计的软件实现的基本原理是,通过预先下载入单片机的程序,控制单片机循环检测各个传感器的状态,并根据状态反馈控制电机转动,从而带动机构实现窗户的开关。其中,雨水传感器、一氧化碳传感器均选择开关量作为输出量,主要原因为该设计基本功能实现无需判断雨水、一氧化碳的具体含量,仅使用开关量作为输出量,大大简化了程序的复杂程度,从而提高了检测与判断的效率。光强传感器选择使用具体量作为输出量,单位为Lux,当光强小于1 Lux时,即认定黑天,控制电机运转。电机使用常见的脉冲宽度调制(pulse-widthmodulation,PWM)输出控制,通过改变连接引脚的高低电平控制电机正、反转,脱机、待机等。而防夹功能则通过人体传感器输出的开关量触发中断实现。

5.2  STM32F4编程

5.2.1 电动机编程

电动机采用PWM输出控制。在程序中,设立了两个变量,分别记录需要发送的脉冲数以及已经发送的脉冲数,当需要发送的脉冲数和已经发送的脉冲数不相等时,通过定时器2以2000 Hz的频率触发中断发送脉冲,直到需要发送的脉冲数与已经发送的脉冲数相等,电机控制结束。对于电机正反转的控制,当需要发送的脉冲数大于已经发送的脉冲数时,电机正转,反之反转。

另外,为了在电机空闲时节约能源,程序中设立了一个标志位变量,作为判断需要发送的脉冲数和已经发送的脉冲数是否相等的标志位,若两个脉冲数一致,则关闭电机电源,反之开启电源,运转电机,直至两个脉冲数一致。

5.2.2 传感器编程

雨水传感器、一氧化碳传感器使用开发板自带的3.3 V电源供电,使用开关量作为输出量。在程序主函数的while循环中反复检测其开关量数值,当出现雨水预警、一氧化碳预警时,单片机首先控制蜂鸣器报警,雨水预警会

触发短暂的蜂鸣声,而涉及生命危险的一氧化碳预警会触发较长的蜂鸣声,随后单片机判断窗户开关状态,从而作出反应。当发生一氧化碳预警时,如果用户在开窗的情况下,电机并不会运转,但是蜂鸣器仍会正常工作,发出警报。

光强传感器自带一枚MCU处理片上各个传感器的综合数据,并通过串口通信的方式发送给单片机。在串口接收完毕后,单片机读取光强并换算,得到以Lux为单位的光强数值。当此数值小于1时,可以近似认为进入黑天的状态,从而控制窗户关闭。由于黑天不存在预警情况,故此传感器不会触发蜂鸣器报警。

人体传感器作为防夹功能实现的传感器。由于人体传感器通过红外线探测到人体后输出高电平,故在程序中设置上升沿触发的外部中断,当人体传感器检测到人体后输出高电平触发中断,进入中断服务函数。中断服务函数首先清除中断线上的中断标志位(此行动仅需要ms级时间,不影响安全性),随后立即停止控制PWM输出的定时器2,电机随之停止运转[15]。

5.2.3 其他

除了传感器、电动机的编程外,还涉及到按键、小型液晶显示屏、串口的基本外设编程。其中,为了实时反馈各项指标,程序中设计了“智能窗系统监控”的用户界面,可在开发板配备的3.5寸液晶显示屏上实时看到雨水、一氧化碳、光强等各项指标的状态,同时也可以显示电机的脉冲数,方便技术人员调试。

6 结论

本设计针对智能家居系统的使用要求,采用STM32、传感器、丝杠与窗户等进行了全自动智能化设计,克服了传统窗户的可靠性较低,通风性不好,稳定性较差,自动化程度不高的缺点,逐步实现可靠性强,使用方便,高效利用,维护简单等特点。

本设计具有以下优点:

(1)自动化程度高;

(2)系统具有故障和管理能力,即可以通过自动、手动控制两种方式来确保窗户的开启与关闭;

(3)STM32与传感器相结合,设计较合理,运用较先进;

(4)采用丝杠传动,精度高、反应快、传动平稳;

(5)设计了一种由3D打印[16]制作出的电磁连接开关,实现丝杠滑块与窗户活动构建件之间选择性的断连。

参考文献:

[1]朱孜,钟应. 浅议建筑智能门窗发展意义及发展趋势[J]. 低碳世界,2021,11(5):136-137.

[2]张治海,倪笑宇,常旺辰,等. 智能窗户与智能家居一体化发展研究[J]. 无线互联科技,2021,18(17):115-116.

[3]刘玮,郝雨楠. 智能窗发展现状研究[J]. 门窗,2017(8):12

[4]陈晓冬. 窗户性能及形式的发展[J]. 建材与装饰,2017(25):150-151.

[5]胡钰,杨应洪,刘欣,等. 基于STM32智能窗户的设计与实现[J]. 机械工程与自动化,2019(2):105-106,109.

[6]魏鸿图,陈光,史艳文,等. 新一代智能窗户[J]. 科技创新与应用,2021,11(24):48-50.

[7]梁森. 自动检测与转换技术[M]. 北京:机械工业出版社,2001.

[8]郭宗仁,吴亦锋,郭永. 可编程控制器应用系统设计及通信网络技术[M]. 北京:人民邮电出版社,2009.

[9]王少怀. 机械设计实用手册[M]. 北京:机械工业出版社,2012.

[10]闻邦椿. 机械设计手册[M]. 6版. 北京:机械工业出版社,2018.

[11]张松林. 轴承手册[M]. 南昌:江西科学技术出版社,2004.

[12]闻邦椿. 机械设计手册[M]. 6版. 北京:机械工业出版社,2018.

[13]谢文和. 传感技术及其应用[M]. 北京:高等技术出版社,2003.

[14]张洋,刘军,严汉宇,等. 精通STM32F4[M]. 北京:北京航空航天大学出版社,2019.

[15]刘火良,杨森. STM32库开发实战指南[M]. 北京:机械工业出版社,2013.

[16]杨振贤,张磊,樊彬. 3D打印:从全面了解到亲手制作[M]. 北京:化学工业出版社,2015.

收稿日期:2022-10-11

作者简介:单申(2003-),男,山东菏泽人,主要研究方向为机械电子工程,E-mail:ss15562081756@163.com;卢学玉(1974-),女,江苏淮安人,硕士,副教授,主要研究方向為机构创新设计及理论。

猜你喜欢
传感器
康奈尔大学制造出可拉伸传感器
简述传感器在物联网中的应用
“传感器新闻”会带来什么
跟踪导练(三)2
光电传感器在自动检测和分拣中的应用
基于扩展卡尔曼滤波的PMSM无位置传感器控制