เซ็นเซอร์วัดความชื้นในดิน ทำงานผิดปกติ ต้องแก้ยังไงคับ

ปกติข้อต่อตรงนี้หุ่มกันน้ำรึป่าวครับ

ภาพ

ก่อนหน้านี้ ใช้ท่อหดหุ้มไว้นะครับ
IMG_20210925_183751

แต่ตัวนี้ ยังไม่ได้หุ้ม แต่มีขวดกันไว้ข้างบน (ลองดูก่อน)

อันนี้ปลูกขายหรือกินเองครับนี้

ปลูกกินเองครับ เนื้อที่ประมาณ 4 แปลง ๆ กว้าง 0.5 เมตร ยาว 2 เมตร ^^

น้ำเข้าตรงนี้รึป่าวครับ

ภาพ

คาดว่าอาจจะเข้า แต่ตอนนี้ เอาขวดมาครอบด้านบนแล้ว น่าจะหมดปัญหาน้ำเข้านะ (หวังว่า)

1 Likes

ฝื้นมาได้บ้างแล้วนะ ^^

ปกติ ควรตั้งค่าความชื้นในดินไว้ที่เท่าไหร่หรอครับ

ปล. อัพเกรดตัวรับสัญญานเซ็นเซอร์ รับรองน้ำไม่เข้าแน่นอน

1 Likes

เท่าไหร่ดีครับ @SK.smartfarmgarden1

1 Likes

@ ntcommMitree รูปแรก คือการต่อที่ผมต่อใช้งานอยู่ตอนนี้ ตัวเซ็นเซอร์ ทำงานไม่ดีเท่าไหร่ เลยจะเปลี่ยนไปใช้เซ็นเซอร์อีกตัว แต่ปัญหาคือสายไฟที่ผมใส่ไว้ในท่อมี 4 เส้น

คำถามคือว่า ผมสามารถต่อสายกราวน์ร่วมกัน ระหว่างไฟ 5v กับ 12v เหมือนในรูปที่ 2 ได้ไหมครับ เพราะเซ็นเซอร์ตัวใหม่ที่จะใช้งาน มี 3 เส้น ??

ทำได้ครับ ไม่น่าติดปัญหาอะไร

1 Likes

ตอนนี้ ต่อตามภาพแล้ว แต่ค่าความชื้นไม่ขึ้นครับ หรือต้องเปลี่ยนค่าในโค๊คด้วย (ตอนนี้ (0,1023,100,0))

ต้องเปลี่ยนค่าที่เท่าไหร่ครับ

ของผมใช้แบบนี้ครับ

mappedValue[0] = map(moistureValue, 0, 3000, 0, 100);

3000 ได้มาจากค่าเซนเซอร์ ที่อ่านได้สูงสุด อาจจะไม่เท่ากันได้

ตอนนี้ผักเริ่มโตแล้ว แต่โปรแกรมก็ยังไม่เสถียร ^^

1 Likes

ติดอะไรบ้างครับตอนนี้

void setup()
{
  Serial.begin(9600);
}

void loop()
{
  int sensorVal = analogRead(A0);

  int percentageHumididy = map(sensorVal, 0, 3000, 0, 100);

  Serial.print(percentageHumididy);
  Serial.println("%");

  delay(100);
}

โค๊ดนี้ ใช้อ่านค่าเซ็นเซอร์ได้ใช่ไหมครับ แต่ดูเหมือนว่า เซอร์เซอร์จะอ่านค่าไม่ได้

จุ่มน้ำ กับ เอาออกจากน้ำ ก็มีค่าเท่าเดิม หรือมันต้องเสียบดินเท่านั้น

ค่ามันสลับกันอยู่รึป่าวนะ

ลอง Serial.print จาก sensorVal มาดูว่าได้เท่าไหร่

จุ่มน้ำ กับ เอาขึ้นจากน้ำ ค่าก็เท่าเดิม

กำหนดโหมดให้ A0 อ่านค่าด้วยครับ

void setup()
{
  Serial.begin(9600);
  pinMode(A0, INPUT);
}

void loop()
{
  int sensorVal = analogRead(A0);

  int percentageHumididy = map(sensorVal, 0, 3000, 0, 100);

  Serial.print(percentageHumididy);
  Serial.println("%");
  Serial.print("A0 = ");
  Serial.println(sensorVal);
  delay(100);
}

สถานะนี้ เซนเซอร์จุ่มอะไรไหม