在本教程中,我們將學習如何使用兩個dht傳感器,HC12模塊和I2C LCD制作遠程遠程氣象站
步驟1:您需要什么
硬件部件:
DHT11溫濕度傳感器(3針) × 1個
DHT22溫濕度傳感器 × 1個
Arduino UNO × 2
Adafruit HC-12模塊× 2
字母數(shù)字LCD,20 x 4 × 1個
跳線(通用) × 1個
軟件應用程序和在線服務:
Arduino IDE
步驟2:電路-發(fā)送器
將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步:發(fā)送方-在Visuino中添加,設置和連接組件
添加“脈沖發(fā)生器”組件,然后在屬性窗口中將頻率設置為5Hz
添加“濕度和溫度計DHT11 / 21/22 / AM2301”組件,然后在屬性窗口中選擇類型,在本例中為DHT22
添加“ Analog To Analog Array”,然后在屬性窗口中將Input Pins設置為2
添加“數(shù)據(jù)包”組件,雙擊它,然后在“元素”窗口中將“模擬數(shù)組”拖到左側,然后關閉“元素”窗口。
將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中添加和設置組件
添加“脈沖發(fā)生器”組件,然后在屬性窗口中將頻率設置為5
添加“濕度和溫度計DHT11 / 21/22 / AM2301”組件,并在屬性窗口中設置“類型”(在本例中為DHT11)
添加“液晶顯示器(LCD)-I2C”組件,然后在屬性窗口中將“列數(shù)”設置為20,將“行數(shù)”設置為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代碼
對于發(fā)送方和接收方:
在Visuino中,在底部單擊“構建”選項卡,確保選擇了正確的端口,然后單擊“編譯/構建和上載”按鈕。
很重要!確保在上傳代碼時,Arduino上的Pin RX斷開連接,并在上傳后將其重新連接。
步驟8:播放
如果為兩個Arduino UNO模塊供電,接收器上的顯示器將開始顯示兩個傳感器的溫度和濕度。您可以將發(fā)送器放在外面,并且可以監(jiān)視內部和外部溫度。
恭喜你!您已經(jīng)完成了Visuino的項目。
責任編輯:pj
-
傳感器
+關注
關注
2542文章
50241瀏覽量
750045 -
接收器
+關注
關注
14文章
2451瀏覽量
71701 -
應用程序
+關注
關注
37文章
3221瀏覽量
57499
發(fā)布評論請先 登錄
相關推薦
評論