2.6 Arduinoで雨を判定しLCD表示する(6)
2017/08/27
PR
2.6 Arduinoで雨を判定しLCD表示する(6)
LM393雨滴センサー天気センサーで雨を検出しシリアル通信でデータを見てみましょう。
雨滴センサー天気センサー
今回使ったのはこれ
LM393雨滴センサー接続 手順
1.LM393雨滴センサーを接続
2.LCD接続
LM393雨滴センサー接続
ではLM393雨滴センサーを接続しましょう。
VO →5.0V
GND →GND
DO →D13
AO →A1
に接続します
スケッチ LM393
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
#include <Wire.h> #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x3F, 16, 2); // I2C: 0x3F, 16x2 LCD int nRainIn = A1; int nRainDigitalIn = 13; int nRainVal; boolean bIsRaining = false; String strRaining; void setup() { Serial.begin(9600); Serial.println("LM393"); lcd.init(); lcd.backlight(); lcd.setCursor(0, 0); lcd.print("start"); lcd.setCursor(0, 1); lcd.print(" (^^)/"); pinMode(2,INPUT); } void loop() { delay(3000); nRainVal = analogRead(nRainIn); bIsRaining = !(digitalRead(nRainDigitalIn)); if(bIsRaining){ strRaining = "YES"; } else{ strRaining = "NO"; } lcd.setCursor(0, 0); lcd.print("Rain : "); lcd.print(strRaining); lcd.print(" "); lcd.setCursor(0, 1); lcd.print("Level : "); lcd.print(nRainVal); lcd.println(" "); Serial.print("Rain : "); Serial.print(strRaining); Serial.println(" "); Serial.print("Level : "); Serial.print(nRainVal); Serial.println(" "); } |
結果
DO・・・濡れるとTRUE、乾くとFALSE
A0・・・濡れると300ぐらいから乾くと1023ぐらい