//โปรแกรม ควบคุมอุณหภูมิ
int led_red = 2; // กำหนดตัวแปร ให้ ขา 2 led_red
int led_green = 3;
int pum = 4;
int analogPin = 5; //ประกาศตัวแปร ให้ analogPin แทนขา analog ขาที่5
int val = 0;
void setup() {
pinMode(led_red, OUTPUT); // sets the pin as output
pinMode(led_green, OUTPUT); // sets the pin as output
pinMode(pum, OUTPUT); // sets the pin as output
Serial.begin(9600);
}
void loop() {
int sensorValue = analogRead(A5);
val = analogRead(analogPin); //อ่านค่าสัญญาณ analog ขา5 ที่ต่อกับ Soil Humidity Detection Sensor V2
Serial.print("val = "); // พิมพ์ข้อความส่งเข้าคอมพิวเตอร์ "val = "
Serial.println(val); // พิมพ์ค่าของตัวแปร val
if (val > 500)
{
digitalWrite(led_green, HIGH); // สั่งให้ LED เขียว ที่ Pin2 ติด
digitalWrite(led_red, LOW); // สั่งให้ LED แดง ที่ Pin3 ดับ
digitalWrite(pum, LOW); // สั่งให้ ปั๊มน้ำหยุดทำงาน
}
else {
digitalWrite(led_green, LOW); // สั่งให้ LED เขียว ที่ Pin2 ดับ
digitalWrite(led_red, HIGH); // สั่งให้ LED แดง ที่ Pin3 ติดสว่าง
digitalWrite(pum,HIGH); // สั่งให้ ปั๊มน้ำทำงาน
}
delay(1000);
}
//TMP36 Pin Variables
int led_red = 2; // กำหนดตัวแปร ให้ ขา 2 led_red
int led_green = 3;
int pum = 4;
//int analogPin = 5; //ประกาศตัวแปร ให้ analogPin แทนขา analog ขาที่5
int sensorPin = 0; //the analog pin the TMP36's Vout (sense) pin is connected to
//the resolution is 10 mV / degree centigrade with a
//500 mV offset to allow for negative temperatures
/*
* setup() - this function runs once when you turn your Arduino on
* We initialize the serial connection with the computer
*/
void setup()
{
Serial.begin(9600); //Start the serial connection with the computer
//to view the result open the serial monitor
}
void loop() // run over and over again
{
//getting the voltage reading from the temperature sensor
int reading = analogRead(sensorPin);
// converting that reading to voltage, for 3.3v arduino use 3.3
float voltage = reading * 5.0;
voltage /= 1024.0;
// print out the voltage
Serial.print(voltage); Serial.println(" volts");
// now print out the temperature
float temperatureC = (voltage - 0.5) * 100 ; //converting from 10 mv per degree wit 500 mV offset
//to degrees ((voltage - 500mV) times 100)
Serial.print(temperatureC); Serial.println(" degrees C");
// now convert to Fahrenheit
float temperatureF = (temperatureC * 9.0 / 5.0) + 32.0;
Serial.print(temperatureF); Serial.println(" degrees F");
if (temperatureC > 60)
{
digitalWrite(led_green, LOW); // สั่งให้ LED เขียว ที่ Pin2 ดับ
digitalWrite(led_red, HIGH); // สั่งให้ LED แดง ที่ Pin3 ติด
digitalWrite(pum,HIGH); // สั่งให้ ปั๊มน้ำหยุดทำงาน
}
else {
digitalWrite(led_green, HIGH); // สั่งให้ LED เขียว ที่ Pin2 ติด
digitalWrite(led_red, LOW); // สั่งให้ LED แดง ที่ Pin3 ดับ
digitalWrite(pum,LOW); // สั่งให้ ปั๊มน้ำทำงาน
}
delay(1000); //waiting a second
}