ความรู้แน่น ฟรีสำหรับชุมชน ArduinoAll ที่นี่เท่านั้น

ฟรีและดีที่สุด คอร์สอบรม Arduino + NodeMCU
ทำเพื่อแบ่งปัน ห้ามนำไปจำหน่าย หรือเก็บเงินค่าเรียน
  !!!


  


AllNewStep รับประกันคุณภาพทุกชิ้น วันจันทร์-ศุกร์แจ้งชำระสินค้าก่อน 14.00 จัดส่งทันทีวันนี้ค่ะ

กรุงเทพ /ภาคกลาง ได้พรุ่งนี้


*** สินค้าทุกชิ้น ถ้าสามารถทำรายการสั่งซื้อได้ แสดงว่ามีครบทุกรายการค่ะ *** 

พิมพ์ค้นหาบทความ หัวข้อกระทู้ และสินค้าในเว็บ AllNewStep ได้ที่นี่
QUOTE 

สอบถามเรื่องเขียนโปรแกรม Delay Arduino 4 CH ต่อกับ Arduino Uno R3 + DHT22 ครับ

Thongchai

สอบถามเรื่องการต่อวงจร DHT22 + Uno R3 ตามลิงค์สอน https://www.youtube.com/watch?v=_B5Tyzv7sHM กับ Delay 4 CH (รหัสสินค้า A901) เพื่อควบคุมไฟกับปั้มน้ำหน่อยครับ

อยากถามว่าโปรแกรมมันเขียนยังไงเหรอครับ พอดีเขียนลองผิดลองถูกแล้วก็ยังไม่ติดตามคำสั่งครับ

ต่อการให้ไฟติดเมื่ออุณหภูมิต่ำกว่า 25 องศา และต้องการให้ปั้มน้ำทำงานตอนความชื้นน้อยกว่า 80% ครับ

 

#include "DHT.h"

 

DHT dht;

 

void setup()

{

  Serial.begin(9600);

  Serial.println();

  Serial.println("Status\tHumidity (%)\tTemperature (C)\t(F)");

  

  pinMode (2,INPUT);

  pinMode (5,OUTPUT);

  pinMode (6,OUTPUT);

  pinMode (7,OUTPUT);

  dht.setup(2);

}

 

void loop()

{

  delay(dht.getMinimumSamplingPeriod());

 

  float humidity = dht.getHumidity();

  float temperature = dht.getTemperature();

 

  Serial.print(dht.getStatusString());

  Serial.print("\t");

  Serial.print(humidity, 1);

  Serial.print("\t\t");

  Serial.print(temperature, 1);

  Serial.print("\t\t");

  Serial.println(dht.toFahrenheit(temperature), 1);

 

if (digitalRead(2), humidity <= 80)

  {

    digitalWrite (5,HIGH);

    delay (1000);

 

    digitalWrite (6,HIGH);

    delay (1000);

  }

 

if (digitalRead(2), temperature <= 25)

{

    digitalWrite (7,HIGH);

    delay (1000);

  }

}

 

 

นี้ครับโปรแกรมที่เขียนไว้ อยากทราบว่ามันผิดตรงไหนบ้างครับ
//ขอบคุณล่วงหน้าครับ

 

QUOTE 
ความคิดเห็นที่ #1
เจ้าของร้าน

ทดลองตามนี้ครับ

1. ก็อปโคดตามตัวอย่างในบทความแล้วรันดูผลลัพธ์ ศึกษาการใช้งานไลบารี จะได้วิธีดึงค่า อุณหภูมิ และความชื้น เก็บไว้ในตัวแปร

2. เขียนโปรแกรมสั่งงาน relay โดยใช้คำสั่ง digitalWrite() ก็สามารถสั่งเปิดปิดได้แล้ว

3. เขียนโปรแกรมเช็ค IF แยกส่วนกับอุณหภูมิและความชื้น โดยฟิกค่าใส่ตัวแปรไว้ เช็คการทำงานแบบไม่ต้องต่อ

สุดท้ายเอาความรู้ที่ได้ มาเขียนโปรแกรมรวมกัน โคดไม่ยาก ลองเล่นแล้วจะสนุกครับ

อีกโคดที่แนะนำ ดูคำสั่ง แปลง string เป็น ตัวเลขตามนี้ครับ https://www.arduino.cc/en/Tutorial/StringToInt

 

QUOTE 
ความคิดเห็นที่ #2
Thongchai

ได้แล้วครับ ขอบคุณมากครับผม

QUOTE 
ความคิดเห็นที่ #3
เจ้าของร้าน

ยินดีครับ LaughingLaughingLaughing

แสดงความคิดเห็นที่ 1-3 จากทั้งหมด 3 ความคิดเห็น
ขาย ARDUINO
คุณภาพ อันดับ 1

ได้รับรางวัลร้านยอดเยี่ยม
ตั้งแต่ปี 2558
ขาย Arduino
วีดีโอสอน Arduino

สอน esp8266

สอน Arduino IoT
สอน Arduino แบบเร็ว

สอน NodeMCU

อุปกรณ์ Arduino

MEMBER ZONE

พูดคุย-สอบถาม