多语言实现Arduino“高温监控仪”
2021-09-08牟晓东
牟晓东
借助于温度传感器、风扇模块和几个LED灯,我们利用Arduino开发制作一个“高温监控仪”:当环境温度处于较适宜的温度范围时(比如28℃以下),绿色LED灯亮,风扇模块无动作;当温度有小幅度升高时(28℃以上、30℃以下),黄色LED灯发光进行预警,同时风扇模块低速转动进行风力降温,直至恢复正常;当温度较高时(30℃以上),红色LED灯发光进行报警,风扇模块高速转动进行风力快速降温……在整个过程中,屏幕每隔3秒钟就显示一次实时检测到的温度数据。
1.实验器材与电路连接
实验器材:Arduino UNO主板一个,DHT11温湿度传感器一个,风扇模块一个,绿色、黄色和红色LED灯各一支,面包板一块,各色杜邦线若干;对照设计好的电路接线图进行器材连接(如图1)。
首先,将Arduino的5V和GND通过杜邦线连接至面包板一侧的红色和蓝色线槽;接着,将绿色、黄色和红色LED灯的短腿(负极)均插接至蓝色线槽,长腿(正极)则分别插接至a列某行插孔中,再通过同种颜色的杜邦线将正极与Arduino的11号、12号和13号数字引脚相连;然后,将温度传感器和风扇模块的VCC端和GND端均通过杜邦线与面包板的红色、蓝色线槽连接,二者的信号端则分别插接至Arduino的2号和3号数字引脚;最后,通过数据线将Arduino与计算机USB接口连接,完成电路连接(如图2)。
2.Arduino IDE代码编程实现“高温监控仪”
在Arduino IDE中对DHT11温湿度传感器进行编程控制的前提是要安装DHT.h库,首先依次点击菜单“项目”-“加载库”-“管理库”项,在弹出的“库管理器”中以“DHT11”为关键词进行搜索,会出现一个名为“DHT sensor library(by Adafruit)”的库,显示支持DHT11(目前最新版本为1.4.2);接着,点击“安装”按钮(如图3),在弹出的提示窗口中点击“Install all”按钮进行下载和安装;结束后返回“加载库”中查看,底部“推荐的库”中就会显示有“DHT sensor library”项,说明安装成功。
首先导入DHT.h库:“#include
在loop()函数中先定义浮点型变量Temperature,通过“float Temperature = dht.readTemperature();”语句实现对检测温度数据的读取,然后将该数据在串口监视器中输出:“Serial.print("当前温度为:");”“Serial.print(Temperature);”和“Serial.println("℃");”;接着,构建“if…else if…else…”三分支选择结构,对温度数据进行数值区间判断:如果温度在28℃以下——“if (Temperature <= 28.00)”,则控制绿色LED灯发光:“digitalWrite(GreenLED, HIGH);”;如果温度在28℃-30℃之间——“else if (Temperature > 28.00 && Temperature <= 30.00)”,则控制黄色LED灯发光、风扇低速转动:“digitalWrite(YellowLED,HIGH);”“analogWrite(Fan, 127);”;如果温度超过30℃,则控制红色LED发光、风扇高速转动:“digitalWrite(RedLED, HIGH);”“analogWrite(Fan, 255);”。