APP下载

基于单片机的汽车天窗控制系统的设计

2021-12-09梁东云吴晓云

微型电脑应用 2021年11期
关键词:天窗按键温湿度

梁东云, 吴晓云

(商洛学院 电子信息与电气工程学院, 陕西 商洛 726000)

0 引言

汽车天窗已经是汽车的标配,它不仅是汽车的一个装饰,还能在车内温湿度改变时及时调节天窗的开合,怎样实现它随着车内的温度、湿度、光线的改变自动开合成为了一个研究课题[1]。本设计改善了车内空气的温度和湿度,弥补了传统天窗的不足,最大程度地提高了采光率[2]。它能在驾驶时把人解放出来,减少外界环境的改变对驾驶员的干扰,专心驾车,增加了车内环境的舒适度,提高安全性。

1 硬件设计

硬件设计是一个设计的基础,是软件设计和运行的前提,本设计以STC89C52单片机为核心,将传感器模块采集到的温度、湿度和光照强度进行转换后并通过显示模块进行显示,STC89C52微控制器经过信息的判断和处理后发送指令驱动电机的旋转,通过直流电机的正转和反转来模拟汽车天窗的开与合,达到车内温湿度以及光照强度的自动调节[3-4]。设计主要包括控制模块、传感器模块,显示模块和电机驱动模块4大部分,系统总体框架如图1所示。

图1 系统框架总图

1.1 温湿度采集模块

DHT12是一款新型单总线数字式温湿度传感器,内部包括一个感湿元件和一个NTC测温元件,微处理器之间具有独特的单总线通讯方式[5]。外部电路如图2所示。

图2 与单片机接口图

1.2 光照采集模块

通过光敏二极管PD采集光线,集成运算放大器将PD电流转化为PD电压,再由模数转换器获取16位数字数据,然后被逻辑和IC界面进行数据处理和储存[6-7]。引脚中SDA管脚与单片机的P1.0口连接,SCL管脚与单片机的P1.1口连接,利用I2C协议进行通信。

1.3 液晶显示模块

本设计采用LCD1602与STC89C52单片机进行不断通信,利用1602液晶的显示特性,将车内温湿度,光照强度以及天窗开合等信息在液晶显示屏上实时显示出来[8]。

1.4 直流电机

本设计选择TB6612电机驱动模块,该模块具有体积小、效率高、在额定范围内芯片发热量低的特点。本设计通过单片机控制电机的运动模式,实现直流电机的正传、反转和停止[9]。

1.5 按键电路的设计

本设计采用3个独立按键,分别接单片机P1.4、P1.5、P1.6,由程序扫描这3个口,其中SW2是设置按键,SW3和SW4分别对应加减按键,通过这3个按钮来设定车内温湿度的阈值。按键与单片机接口如图3所示。

图3 键电路

2 系统软件设计

2.1 DHT12温湿传感模块

2.1.1 数据格式

DHT12与单片机之间通过单总线协议进行数据传输。每次传送40位的数据,其数据格式为8 bit湿度整数数据+8 bit湿度小数数据+8 bit温度整数数据+8bit温度小数数据+8bit校验位[10]。若8bit湿度整数数据+8 bit湿度小数数据+8 bit温度整数数据+8 bit温度小数数据=校验码,则表示校验通过,代表这次读取出来的温度湿度正确[11];若校验不通过,那么就代表这次读取出来的温湿度值是错误的,单片机将自动删除数据。

2.1.2 DHT12的通信流程

DHT12与单片机的通信过程中,DHT12为从机,STC89C52单片机为主机,通信流程如下:①主机发送起始信号②DHT12响应信号③DHT12通知主机准备接受信号④DHT12发送准备好的数据⑤DHT12发送结束信号⑥DHT12内部重新检测室内环境温湿度并记录数据,等待下一次主机发送的起始信号[12]。主机、从机的通信过程如图4所示。

图4 DHT12时序图

2.2 BH1750光照传感模块

BH1750光照传感器的通信流程,BH1750为从机,STC89C52单片机为主机,具体的通信流程分2步。

(1) 主机向从机发送起始信号,发送设备地址和写信号,发送完毕后等待BH1750应答,然后单片机再发送内部寄存器地址,等待从机的应答,得到回应后停止发送命令[13]。再发送“连续高分辨率模式”指令,时序如图5所示。

图5 写操作

(2) 单片机等待BH1750的回应,读取BH1750返回的信息,信息有16位数据,数据分为高8位和低8位。先读取高8位数据,并发送应答信号,再读取低8位数据,随后主机发送停止信号,整个采集过程结束。时序如图6所示。

图6 读操作

2.3 系统软件设计流程

汽车天窗开合控制系统软件设计主程序框架设计如图7所示。

图7 主程序设计框架

3 系统功能测试

以室内温湿度模拟车内温湿度对汽车天窗开合控制系统进行测试,通过按键电路设定温湿度阈值,检测系统是否能正确地按照指令进行开关窗操作。

(1) 系统初始化:给系统供电,使控制系统中的各个模块初始化,显示程序设定,第一行是温度和湿度,第二行是光照强度。系统初始化如图8所示。

图8 实物图

(2) 当温度不在设定范围时:设定温度阈值max=25 ℃,min=20 ℃,湿度阈值max=60%,min=30%,当温度T=26 ℃,湿度RH=43%,温度T不在阈值范围内时,电机正转,显示开窗标志00。控制系统工作正常。如图9所示。

图9 液晶显示开窗标志图

(3) 当湿度不在设定范围时:设定温度阈值max=30 ℃,min=20 ℃,湿度阈值max=25%,min=20%,当温度T=29 ℃,湿度RH=29%,湿度不在阈值范围内时,电机正转,显示开窗标志00。控制系统工作正常。如图10所示。

图10 液晶显示开窗标志

3 总结

本设计利用STC89C51单片机作为控制芯片,温湿度传感器作为车内温湿度的采集模块,液晶显示屏实时显示车内温湿度,当温湿度不再设定范围时,芯片及时控制电动机开合及关闭,实现了汽车天窗及时的开合及关闭,本设计简单明了,造价低,具有美好的市场前景。

猜你喜欢

天窗按键温湿度
基于有限状态机的按键检测程序设计
基于AT89C51的数字型蚕用温湿度计的设计
基于DSP的多路温湿度监测系统
自制新款天窗固定器
基于MoldFlow的汽车天窗注射模浇注系统分析
按键消抖在单片机和FPGA实验教学中的应用
基于温湿度控制的天气预测装置
迈腾车天窗无法关闭
蒸发冷却温湿度独立控制空调系统的应用
一种多方向导光按键结构设计