本网页已闲置超过3分钟,按键盘任意键或点击空白处,即可回到网页

HC-12远程气象站和DHT传感器
发布时间:2021-01-11
分享到:
HC-12远程气象站和DHT传感器
发布时间:2021-01-11
分享到:

在本教程中,我们将学习如何使用两个dht传感器,HC12模块和I2C LCD制作远程远程气象站

步骤1:您需要什么

硬件部件:

  • DHT11温湿度传感器(3针)    ×    1个    
  • DHT22温湿度传感器    ×    1个    
  • Arduino UNO    ×    2    
  • Adafruit HC-12模块×    2    
  • 字母数字LCD,20 x 4    ×    1个    
  • 跳线(通用)    ×    1个    

软件应用程序和在线服务:

  • Arduino IDE   

步骤2:电路-发送器

  • 将HC-12引脚[VCC]连接到Arduino引脚[5V]
  • 将HC-12引脚[GND]连接到Arduino引脚[GND]
  • 将HC-12引脚[TX]连接到Arduino引脚[RX]
  • 将HC-12引脚[RX]连接到Arduino引脚[TX]
  • 将DHT22(或任何其他DHT传感器)引脚输出连接到Arduino Digital引脚3
  • 将DHT22引脚VCC(+)连接到Arduino引脚5V
  • 将DHT22引脚GND(-)连接到Arduino引脚GND

注意:在Visuino中上传代码时,请确保断开Arduino引脚[RX]的连接,并在上传后将其重新连接回去。

步骤3:电路-接收器

  • 将HC-12引脚[VCC]连接到Arduino引脚[5V]
  • 将HC-12引脚[GND]连接到Arduino引脚[GND]
  • 将HC-12引脚[TX]连接到Arduino引脚[RX]
  • 将HC-12引脚[RX]连接到Arduino引脚[TX]
  • 将LCD显示引脚[VCC]连接到Arduino引脚[5V]
  • 将LCD显示引脚[GND]连接到Arduino引脚[GND]
  • 将LCD显示引脚[SDA]连接到Arduino引脚[SDA]
  • 将LCD显示引脚[SCL]连接到Arduino引脚[SCL]
  • 将DHT11(或任何其他DHT传感器)引脚输出连接到Arduino Digital引脚2
  • 将DHT11引脚VCC(+)连接到Arduino引脚5V
  • 将DHT11引脚GND(-)连接到Arduino引脚GND

注意:在Visuino中上传代码时,请确保断开Arduino引脚[RX]的连接,并在上传后将其重新连接回去。

第4步:发送方-在Visuino中添加,设置和连接组件

  • 添加“脉冲发生器”组件,然后在属性窗口中将频率设置为5Hz
  • 添加“湿度和温度计DHT11 / 21/22 / AM2301”组件,然后在属性窗口中选择类型,在本例中为DHT22
  • 添加“ Analog To Analog Array”,然后在属性窗口中将Input Pins设置为2
  • 添加“数据包”组件,双击它,然后在“元素”窗口中将“模拟数组”拖到左侧,然后关闭“元素”窗口。
  • 将PulseGenerator1引脚输出到湿度温度计1引脚时钟和Packet1引脚时钟
  • 将HumidityThermometer1引脚传感器连接到Arduino Digital引脚3
  • 将HumidityThermometer1引脚温度连接到AnalogToAnalogArray1引脚[0]和引脚Clock
  • 将HumidityThermometer1引脚的湿度连接到AnalogToAnalogArray1引脚[1]和引脚Clock
  • 将AnalogToAnalogArray1连接至Packet1> Analog Array1引脚
  • 将Packet1引脚输出连接到Arduino Serial [0]引脚输入

步骤5:接收器-在Visuino中添加和设置组件

  • 添加“脉冲发生器”组件,然后在属性窗口中将频率设置为5
  • 添加“湿度和温度计DHT11 / 21/22 / AM2301”组件,并在属性窗口中设置“类型”(在本例中为DHT11)
  • 添加“液晶显示器(LCD)-I2C”组件,然后在属性窗口中将“列数”设置为20,将“行数”设置为4
  • 双击“ LiquidCrystalDisplay1”,然后在“元素”窗口中将“文本字段”拖到左侧,然后在属性窗口中将宽度设置为20
  • 在“元素”窗口中,将另一个“文本字段”拖到左侧,然后在属性窗口中,将“行”设置为1,将宽度设置为20
  • 在“元素”窗口中,将另一个“文本字段”拖到左侧,然后在属性窗口中,将“行”设置为2,将宽度设置为20
  • 在“元素”窗口中,将另一个“文本字段”拖到左侧,然后在属性窗口中,将“行”设置为3,将宽度设置为20
  • 关闭元素窗口

添加4X“格式化文本”组件,并在属性窗口中将每个文本设置为:%0%1

双击“ FormattedText1 ”,然后在“元素”窗口中将“文本元素”拖到左侧,然后在属性窗口中将“初始值”设置为:内部TEMP:在“元素”窗口中,还将“模拟元素”拖到左侧,并在在属性窗口中将Precision设置为2关闭Elements窗口双击“ FormattedText3”,然后在Elements窗口中将“ Text Element”拖到左侧,然后在属性窗口中将Initial Value设置为:Out TEMP:在Elements窗口中也拖动“ “模拟元素”的左侧,然后在属性窗口中将“精度”设置为2双击Unpacket1,然后在“元素”窗口中拖动模拟阵列向左sideClose元素windowClose要件windowAdd“模拟阵列要模拟”分量和在属性窗口组输出引脚2

  • 双击“ FormattedText2”,然后在“元素”窗口中将“文本元素”拖到左侧,然后在属性窗口中将“初始值”设置为:内部HUM:在“元素”窗口中,还将“模拟元素”拖到左侧并在在属性窗口中将Precision设置为2关闭Elements窗口
  • 关闭元素窗口
  • 双击“ FormattedText4”,然后在“元素”窗口中将“文本元素”拖到左侧,然后在属性窗口中将“初始值”设置为:Out HUM:在“元素”窗口中还将“模拟元素”拖到左侧,并在在属性窗口中将Precision设置为2关闭Elements窗口
  • 添加“拆包”组件

步骤6:接收器-Visuino Connect组件中

  • 将“ PulseGenerator1 ”引脚连接到“ HumidityThermometer1 ”引脚时钟
  • 将“ HumidityThermometer1 ”引脚传感器连接到Arduino Digital引脚2
  • 将“ HumidityThermometer1 ”引脚温度连接到“ FormattedText1 ”> Analog Element1引脚输入和引脚时钟
  • 将“ HumidityThermometer1 ”引脚湿度连接到“ FormattedText2 ”> Analog Element1引脚输入和引脚时钟
  • 将Arduino Serial [0]引脚输出连接到“ Unpacket1 ”引脚输入
  • 连接“ Unpacket1 ”> AnalogArray1引脚输出到“ AnalogArrayToAnalog1 ”引脚输入
  • 将“ AnalogArrayToAnalog1 ”引脚[0]连接到“ FormattedText3 ”> Analog Element1引脚输入和引脚时钟
  • 将“ AnalogArrayToAnalog1 ”引脚[1]连接到“ FormattedText4 ”> Analog Element1引脚输入和引脚时钟
  • 将“ FormattedText1 ”引脚连接到“ LiquidCrystalDisplay1 ”>“文本字段1 ”引脚
  • 将“ FormattedText2 ”引脚连接到“ LiquidCrystalDisplay1 ”>“文本字段2 ”引脚
  • 将“ FormattedText3 ”引脚连接到“ LiquidCrystalDisplay1 ”>“文本字段3 ”引脚输入
  • 将“ FormattedText4 ”引脚连接到“ LiquidCrystalDisplay1 ”>“文本字段4”引脚输入
  • 将“ LiquidCrystalDisplay1 ”引脚I2C输出连接到Arduino引脚I2C输入

步骤7:生成,编译和上传Arduino代码

对于发送方和接收方:
在Visuino中,在底部单击“构建”选项卡,确保选择了正确的端口,然后单击“编译/构建和上载”按钮。
很重要!确保在上传代码时,Arduino上的Pin RX断开连接,并在上传后将其重新连接。

步骤8:播放

如果为两个Arduino UNO模块供电,接收器上的显示器将开始显示两个传感器的温度和湿度。您可以将发送器放在外面,并且可以监视内部和外部温度。
恭喜你!您已经完成了Visuino的项目。

 

加入微信技术交流群

技术交流,职业进阶

关注电路设计技能公众号

了解最新技术方案

加入电路城 QQ 交流群

与技术大牛交朋友

讨论