Data Science: Weather Prediction
Halo gaesss, Assalamu’alaikum Warrahmatullahi Wabarakatuh… Di sini ada yang baru nih… apaan ya? Yuk langsung saja,
Untuk rangkaiannya seperti ini yaa, ada 2 Arduino… yang sebelah kiri sebagai Transmitter (pengirim) dan di sebelah kanan Receiver (penerima)
Di rangkaian sebelah kiri (Transmitter):
tmp36: Sensor suhu
Arduino: Microcontroller R3 UNO
Di rangkaian sebelah kanan (Receiver):
LED: lampu
LCD 16x2: Liquid Crystal
Buzzer: Pengeluar Suara
Arduino: Microcontroller R3 UNO
Untuk Rangkaian Programnya seperti ini:
// Transmitter
#include <SoftwareSerial.h>
#define rxPin 2
#define txPin 3SoftwareSerial mySerial = SoftwareSerial(rxPin, txPin);
int Temp;void setup()
{
pinMode(rxPin, INPUT);
pinMode(txPin, OUTPUT);
mySerial.begin(9600);
Serial.begin(9600);
}void loop()
{
Temp = analogRead(A0);
Temp = map(Temp, 0, 1024, 0, 255);
Serial.println(Temp);
mySerial.write(Temp);
delay(10);
}// Receiver
#include <SoftwareSerial.h>
#include <LiquidCrystal.h>#define rxPin 10
#define txPin A5
SoftwareSerial mySerial = SoftwareSerial(rxPin, txPin);#define LedGreen 7
#define LedBlue 6
#define LedRed 8LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int Temp = 0;
void setup() {
pinMode(rxPin, INPUT);
pinMode(txPin, OUTPUT);
mySerial.begin(9600);pinMode(LedGreen, OUTPUT);
pinMode(LedBlue, OUTPUT);
pinMode(LedRed, OUTPUT);Serial.begin(9600);
pinMode(A1, INPUT);
pinMode(A2, OUTPUT);lcd.begin(16, 2);
}void loop() {
if (digitalRead(A1) == HIGH)
{
mySerial.listen();
if (mySerial.available() > 0)
{
Temp = mySerial.read();
Temp = map(Temp, 4, 89, -40, 125);if (Temp <= 125 && Temp >= -40)
{
//Serial.println(Temp);
lcd.print(“Temperature: “);
lcd.setCursor(12, 0);
lcd.print(Temp);
lcd.setCursor(15, 0);
lcd.print(“C”);if ( Temp >= -40 && Temp <= 0)
{
digitalWrite(LedBlue, HIGH);
digitalWrite(LedGreen, LOW);
digitalWrite(LedRed, LOW);
}
else if ( Temp > 0 && Temp <= 40)
{
digitalWrite(LedBlue, LOW);
digitalWrite(LedGreen, HIGH);
digitalWrite(LedRed, LOW);
}
else
{
digitalWrite(LedBlue, LOW);
digitalWrite(LedGreen, LOW);
digitalWrite(LedRed, HIGH);
}
if (Temp > 100) tone(A2, 10000, 100);
delay(30);
lcd.clear();
noTone(A2);
}
}
}
else
{
digitalWrite(LedBlue, LOW);
digitalWrite(LedGreen, LOW);
digitalWrite(LedRed, LOW);
noTone(A2);
}
}
Jadi kurang lebih konfigurasi nya seperti itu… Mungkin cukup sampai sini aja, terimakasih … Wassalamu’alaikum warrahmatullahi wabarakatuh..