基于HMI智能串口屏显示的温湿度测量系统

2018-11-05 10:15刘寺杰徐敏张晨宇赵娅丽
科教导刊 2018年24期
关键词:温湿度多元化智能

刘寺杰 徐敏 张晨宇 赵娅丽

摘 要 傳统的OLED显示编程繁琐,开发复杂,USART HMI屏开发界面友好,利用上位机进行界面开发,可以直接同步到屏幕上显示。系统采用STM32F407作为控制芯片,选用DHT11作为温湿度采集的传感器,最终将采集的温度以多元化的方式显示在HMI串口屏上。如果温湿度不符合设定要求,蜂鸣器就会启动报警。系统经测试,开发容易,工作稳定可靠。

关键词 HMI 智能 多元化 温湿度

中图分类号:TP302.7 文献标识码:A DOI:10.16400/j.cnki.kjdkx.2018.08.029

Abstract The traditional OLED display programming is complicated and complicated to develop. USART HMI screen development friendly interface, the use of host computer interface development, can be directly synchronized to the screen display. The system uses STM32F407 as the control chip and DHT11 as the sensor for temperature and humidity acquisition. Finally, the collected temperature is displayed on the HMI serial screen in a diversified manner. If the temperature and humidity do not meet the set requirements, the buzzer will start the alarm. The system has been tested and developed with ease and reliability.

Keywords HMI; smart; diversification; temperature and humidity

0 引言

随着人们生活水平的不断提高,电气设备已经走进千家万户,温湿度对于电气设备来说一直是一个重要的环境因素,因此越来越多的传感器被应用到电气设备中。系统采用STM32F407作为控制芯片,选用DHT11作为温湿度采集的传感器,最终将采集的温度以多元化的方式显示在HMI串口屏上。如果温湿度不符合设定要求,蜂鸣器就会启动报警。系统具有智能化、多元化、性价比高等多个优点。

1 系统总体设计

系统主要的功能是温湿度采集,数据的多元化显示以及超出范围的报警。系统处理单元为STM32F407,采集的传感器为DHT11显示部分为HMI智能串口屏。传感器先采集温度,然后以串口的形式把数组发送给处理器,处理器对温湿度进行判断和处理,若不满足程序的判断语句,就会触发蜂鸣器模块,同时将数据以串口的形式传送给HMI智能串口屏。设计系统的总体框图如图1所示。

2 系统硬件设计

2.1 处理器

针对本系统设计的要求,系统CPU选用STM32F407,该处理器芯片基于ARM Cortex-M4内核设计。STM32F4拥有192KB的片内SRAM,带摄像头接口(DCMI)、USB高速OTG等。对于相同的外设部分,STM32F4具有更快的模/数转换速度,更低的ADC/DAC工作电压、4KB的电池备份SRAM以及更快的USART和SPI通信速度。另外在时钟的最高运行频率上,STM32F4可达到168MHz,拥有的ART自适应实时加速器可以达到相当于FLASH零等待的性能,STM32F4的功耗为238 A/MHz, 满足了开发需求。

2.2 HMI智能串口屏

HMI智能串口屏是可编辑的智能LCD触摸显示屏,拥有先进的人机界面处理系统和美观的嵌入式图形界面。串口屏的界面制作是在USART HMI的上位机上完成的,STM32用串口与显示屏交互传送指令,开发效率得到了提高。串口屏不仅可以用串口下载,还可以用SD卡下载,插入SD卡后,串口屏自动更新。在调试方面,不仅有电脑端模拟的调试方式,还可以用模拟器和串口屏同步调试。

2.3 DHT11温湿度传感器

DHT11可以检测环境的温度和湿度,湿度范围为20~95%RH,误差在?%;温度测量范围为0℃~50℃,误差为?℃,工作电压在5V左右。一个测温元件和一个电阻式测湿度的器件组成了传感器,通过插入的方式就可以与处理器建立连接,该传感器价格低,稳定性强,这也是选择这种型号传感器的原因。

3 系统软件设计

3.1 DHT11温湿度采集

DHT11温湿度传感器使用一条总线,数据在传感器和处理器之间来回传输。数据包的大小是5Byte。数据包又分成小数和整数数据,高位先输出。格式为:8比特湿度整数、8比特湿度小数、8比特温度整数、8比特温度小数、8比特校验和。核心代码如下:

u8 DHT11_Bit(void)

{

u8 time=0;

while(DHT11_DQ_IN&&time;<100)

{

time++;

delay_us(1);

}

time=0;

while(!DHT11_DQ_IN&&time;<100)

{

time++;

delay_us(1);

}

delay_us(40);

if(DHT11_DQ_IN)return1;

else return 0;

}

u8 DHT11_Byte(void)

{

u8 i,dat;

dat=0;

for (i=0;i<8;i++)

{

dat<<=1;

dat|=DHT11_Bit();

}

return dat;

}

u8 DHT11_Data(u8 *temper,u8 *humini)

{

u8 buf[5];

u8 i;

DHT11_Rst();

if(DHT11_Check()==0)

{

for(i=0;i<5;i++)

{

buf[i]=DHT11_Byte();

}temper

if((buf[0]+buf[1]+buf[2]+buf[3])==buf[4])

{

*temper=buf[0];

*humini=buf[2];

}

}

else return 1;

return 0;

3.2 HMI智能串口屏显示

串口屏人机界面的设计基于上位机软件USART HMI完成,这个上位机软件操作方便,功能强大,扩展性强,上位机可以同步页面的显示,并且通过代码控制控件可以多元化显示数据。同时要注意的是,为确保串口HNI正常通信,显示前先发送结束符。核心代码如下:

void HMISends(char *buf2)

{

u8 p=0;

while(1)

{

if(buf2[p]!=0)

{

USART_SendData(USART2,buf2[p]);

while(USART_GetFlagStatus(USART2,USART_FLAG_TXE)==RESET){};

i++;

}

else

return;

}

}

void HMISendEND(void) //结束符发送函数

{

HMISendb(0xff);

HMISendb(0xff);

HMISendb(0xff);

}

void Sendb(u8 m)

{

USART_SendData(USART2,m); //发送一个字节

while(USART_GetFlagStatus(USART2,USART_FLAG_TXE)==RESET){};

return;

}

3.3 STM数据处理

STM32F407负责发送温度和湿度,针对不同的控件,用不同的文本类型传输。当温度大于28或者湿度大于90时,蜂鸣器就会触发。下面是部分代码:

//给文本控件赋值

HMISends("t0.txt="); //发送字符串

HMISendb(34); //发送引号

DHT11_Data(&temperature;,&humidity;); //读取温湿度

zifu_Send(temperature); //分解温度为字符,单字节发给串口屏HMISendb(34);

HMISendEND();

HMISends("j0.val=");

zifu_Send(temperature*2);

HMISendEND(); //发送结束符

if(temperature>28||humidity>90)

{BEEP=1;

}

else

{

BEEP=0;

}

4结果

在HMI智能串口屏上設计两个页面。第一个是加载页面,从0缓冲到100;第二个是读取温湿度页面,屏幕上不仅可以显示对应的温湿度数据,还提供了多元化的显示,用温度计的形式显示温度,用圆盘的形式显示湿度。具体结果如图2和图3。

5 结束语

系统的设计是功耗低,处理快,功能较多,显示多元化的温湿度测量系统。特别是显示屏的开发部分更加友好,界面也更美观。不足的是没有加入无线传输模块和手机终端,要是将两者加入,系统的功能也会更加完善和强大。

参考文献

[1] 卜永波.基于DHT11传感器的温湿度采集系统[J].计算机与现代化,2013(11):133-135.

[2] 颜丽娜 基于DHT11温湿度测控系统的设计[J].测控技术,2013(12):397-399.

[3] 邱建东基于STM32和嵌入式Web服务的智能温度监测系统[J].宁夏大学学报,2015(1):40-43.

[4] 方威,孙玉坤.基于SHT75的温湿度监测网络设计[J].农机化研究,2009(3):86-88.

[5] 王海燕,高之圣.基于数字温度传感器DS18B20的智能温度控制器的设计[J].科技信息(科学教研),2007(13):21-23.

猜你喜欢
温湿度多元化智能
探讨构成因素在当代雕塑语言中的多元化体现
巧用“多元化”,赋能“双减”作业
蛋鸡育雏育成舍环境控制技术
智能烹饪机
档案库房温湿度记录统计及调控
超智能插秧机
自由光2.4L专业版+智能包
变电站高压配电智能温湿度控制装置的研发与应用
专业化PK多元化
档案库房温湿度调控思考