ชุดรดน้ำอัตโนมัติด้วย Arduino เป็นต้นแบบให้น้องได้ศึกษาระบบ Smart Farm พื้นฐาน นำไปพัฒนาต่อในอนาคต โดยใช้ Arduino Uno R3 สามารถนำไปพัฒนาใน งาน IOT หรือจะพัฒนาใน แอพพลิเคชั่น Blynk ได้อีกด้วย. (งบประมาณไม่เกิน 400 บาท) อุปกรณ์ที่ต้องใช้มีดังต่อไปนี้
ในส่วนของวงจรการต่อสายมีดังนี้ const int analogInPin = A0; // กำหนดขา input เซ็นเซอร์ const int Relay = 2; // กำหนดขา input รีเลย์ int sensorValue = 0; // ตัวแปรค่า Analog int outputValue = 0; // ตัวแปรสำหรับ Map เพื่อคิด % void setup() { Serial.begin(9600);pinMode(Relay, OUTPUT); // กำหนด รีเลย์เป็น Output}void loop() { sensorValue = analogRead(analogInPin); outputValue = map(sensorValue, 0, 1023, 100, 0); Serial.print(outputValue); Serial.println(" %");if (outputValue <= 40) { //ตั้งค่า % ที่ต้องการจะรดน้ำต้นไม้ digitalWrite(Relay, HIGH); // เมื่อความชื้นน้อยกว่า 40% ให้เปิดปั๊มน้ำ}else {digitalWrite(Relay, LOW); // เมื่อความชื้นมากกว่า 40% ปิดปั๊ม}delay(500); } เสนอแน่ะ ยังสามารถนำไปประยุกต์ใช้งานได้อีกนะครับ เช่นเพิ่มจำนวน Input เช่นเพิ่มเซ็นเซอร์ วัดอุณภูมิบนอากาศหรือติดตั้งเซ็นเซอร์ วัดความชื้นในดินเพิ่มก็สามารถทำได้ และยังสั่งส่ง Output ได้อีกเยอะเช่นสั่ง ปั๊มน้ำทีละ 5 - 10 ตัว ก็สามารถทำได้ง่าย ๆ เลยนะครับ ทั่วไปโดยปกติแล้ว พืชจะต้องการความชื้นในดินอยู่ที่ประมาณ 25-30% (แล้วแต่พืชในแต่ละชนิดด้วยน่ะครับ) Sensor วัดความชื้นในดินจะทำการวัดค่าความชื้นในดิน โดยสัญญาณที่ได้ออกมาจะเป็นแบบ Analog ป้อนไปยัง Arduino เพื่อประมวลผล เมื่อ Arduino ได้ทำการวัดตรงตามเงือนไข ก็จะทำการส่ง Logic ไปยัง Relay เพื่อทำการเปิดปั้มน้ำไปรดน้ำต้นไม้ แค่นี้ก็จะได้ โปรเจครดน้ำต้นไม้แบบง่ายๆ ในราคางบไม่เกิน 400บาทแล้วนะครับ โดยปกติแล้ว พืชจะต้องการความชื้นในดินอยู่ที่ประมาณ 40% (แล้วแต่พิชในแต่ละชนิดด้วยน่ะครับ) Sensor วัดความชื้นในดินจะทำการวัดค่าความชื้นในดิน โดยสัญญาณที่ได้ออกมาจะเป็นแบบ Analog ป้อนไปยัง Arduino เพื่อประมวลผล เมื่อ Arduino ได้ทำการวัดตรงตามเงือนไข ก็จะทำการส่ง Logic ไปยัง Relay เพื่อทำการเปิดปั้มน้ำไปรดน้ำต้นไม้ แค่นี้ก็จะได้ โปรเจครดน้ำต้นไม้แบบง่ายๆ อัพเดดเพิ่มเติม เนื่องด้วยในช่วงที่อุปกรณ์ เซมิคอนดักเตอร์ (Semiconductor) คือ สารกึ่งตัวนำ ทำให้บอร์ด Arduino Uno มีราคาแพงขึ้นทางร้านเลยอยากจะ แนะนำอุปกรณ์ใหม่ที่เหมือน Arduino หน้าตาเหมือน Arduino แต่ราคาถูกกว่า คือ Wemos D1 Uno การต่อใช้งานสามารถต่อได้เหมือนกันกับ Arduino และยังสามารถพัฒนาบอร์ดให้สามารถใช้งานในงาน IOT ได้อีกด้วย สามารถใช้งานร่วมกับ App Blynk เพื่อใช้งานทางด้าน โปรเจค IOT เปิดปิดปั้มน้ำผ่าน App หรือจะดูความชื้นในดินได้อย่าง Real Time และสั่งรดน้ำได้อย่าง Real Time อีกด้วย ส่วนของโปรแกรมสามารถ ขอ Admin ทางร้านได้ฟรีเหมือนเดิม ครับ อุปกรณ์ที่ต้องใช้ใน บทความ สอนใช้งาน โปรเจค Arduino ชุดรดน้ำอัตโนมัติวัดอุณหภูมิและความชื้นในดิน ในอากาศ
วิธีการต่ออุปกรณ์ สอนใช้งาน Arduino โปรเจค Arduino ชุดรดน้ำอัตโนมัติวัดอุณหภูมิและความชื้นในดิน ในอากาศ 1.เชื่อมต่ออุปกรณ์ตามด้านล่าง อะแดปเตอร์ 9V 2A -> Arduino UNO R3 Arduino UNO R3 -> L298N Motor Drive Module • 5V -> +5V • GND -> GND • Vin -> VCC • 3 -> IN4 L298N Motor Drive Module -> ปั้มน้ำ 3V – 5V DC • OUT3 -> สายสีดำ • OUT4 -> สายสีแดง Arduino UNO R3 -> จอแสดงผล LCD • 5V -> VCC • GND -> GND • A4 -> SDA • A5 -> SCL Arduino UNO R3 -> DHT11 • 5V -> ( + ) • GND -> ( - ) • 4 -> out Arduino UNO R3 -> Buzzer • 5V -> VCC • GND -> GND • 2 -> I/O Arduino UNO R3 -> เซ็นเซอร์วัดความชื้นในดิน • 5V -> VCC • GND -> GND • A0 -> AO *** GND ต่อร่วมกันทั้งหมด *** 2. เมื่อเชื่อมต่ออุปกรณ์เรียบร้อยแล้ว ให้ทำการดาวน์โหลด Library จากลิ้งค์ข้างล่าง ดาวน์โหลด Library
วิธีลง Library ให้ดูตัวอย่างในบทความนี้
3. ทำการแยก ไฟล์ออกมาและให้ Copy โฟลเดอร์ไปไว้ในโฟลเดอร์ libraries ของโปรแกรม Arduino IDE ตัวอย่าง Location : This PC > Document > Arduino > libralies *** สำหรับการแยกไฟล์นั้นจำเป็นที่จะต้องมีโปรแกรม WinRAR หรือ WinZip ติดตั้งอยู่ในเครื่องเสียก่อน *** 4. เปิดโปรแกรม Arduino IDE ขึ้นมา 5. จากนั้นทำการ copy โค๊ดด้านล่างไปใส่ไว้ในโปรแกรม Arduino IDE 6. เลือก port ที่ต้องการ upload โดยไปที่แถบเมนูด้านบนแล้วเลือก Tools -> Port แล้วเลือก Port ที่เชื่อมต่อกับบอร์ด 7. เลือกประเภทของบอร์ด โดยไปที่แถบเมนูด้านบนแล้วเลือก Tools -> Board แล้วเลือกประเภทของบอร์ดที่ใช้งาน 8. อัพโหลดโค๊ดลงบอร์ดโดยเลือกเมนู Upload ที่อยู่ในแถบเมนู Sketch 9. เมื่อทำการกด Upload แล้ว โปรแกรมจะปรากฏหน้าต่างสำหรับบันทึกโค๊ดขึ้นมาให้ผู้ใช้งานทำการบันทึกโค๊ด หากผู้ใช้งานไม่ต้องบันทึกโค๊ดก็ให้ปิดหน้าต่างนี้ไปได้เลย 10. รอจนกว่าโปรแกรมจะทำการอัพโหลดโค๊ดจนเสร็จ 11. เมื่อโปรแกรมทำการอัพโหลดโค๊ดเสร็จแล้วก็จะปรากฏข้อความ Done Uploading ขึ้นมา 12. เปิดหน้าจอ Serial Monitor ขึ้นมา 13. เมื่อเปิดหน้าจอ Serial Monitor ขึ้นมาแล้ว ให้ผู้ใช้งานเปลี่ยนการอ่านข้อมูล baud เป็น 9600 baud 14. เมื่อทำการเปลี่ยนค่าการอ่านข้อมูลแล้ว จะเห็นได้ว่าที่หน้าจอ Serial Monitor แสดงค่าอุณหภูมิ ความชื้นและค่าสถานะ val ขึ้นมา และหน้าจอ LCD จะแสดงค่าอุณหภูมิ ความชื้นขึ้นมาด้วย 15. ต่อมาให้ผู้ใช้งานนำแก้วมา 4 ใบโดยเป็น แก้วเปล่า 1 ใบ, แก้วบรรจุน้ำ 1 ใบ, แก้วบรรจุทรายแห้ง 1 ใบ, แก้วบรรจุทรายเปียก 1 ใบ 16. จากนั้นให้ผู้ใช้งานนำตัวเซ็นเซอร์วัดความชื้นในดินใส่ลงไปในดินเปียก ซึ่งจะเห็นได้ว่าค่า val ที่ปรากฏขึ้นมาจะมีค่าต่ำกว่า 600 ซึ่งเป็นค่าที่ได้ถูกกำหนดไว้ในโค๊ด ส่งผลให้ Buzzer และปั้มน้ำยังไม่ทำงาน 17. จากนั้นให้ผู้ใช้งานนำตัวเซ็นเซอร์วัดความชื้นในดินใส่ลงไปในดินแห้ง ซึ่งจะเห็นได้ว่าค่า val ที่ปรากฏขึ้นมาจะมีค่ามากกว่า 600 ซึ่งเป็นค่าที่ได้ถูกกำหนดไว้ในโค๊ด ส่งผลให้ Buzzer และปั้มน้ำทำงาน ทำให้ปั้มน้ำดูดน้ำจากแก้วที่มีน้ำไปยังแก้วเปล่าพร้อมทั้งมีเสียง Buzzer ดังขึ้นเป็นจังหวะ 18. ต่อมาให้ผู้ใช้งานนำตัวเซ็นเซอร์วัดความชื้นในดินใส่ลงไปในดินเปียก ซึ่งจะเห็นได้ว่าค่า val ที่ปรากฏขึ้นมาจะมีค่าต่ำกว่า 600 ซึ่งเป็นค่าที่ได้ถูกกำหนดไว้ในโค๊ด ส่งผลให้ Buzzer และปั้มน้ำจะหยุดทำงาน |