9 ARDUINO ระบบรดน้ำอัตโนมัติสำหรับพืชสปริงเกลอร์
ARDUINO ระบบรดน้ำอัตโนมัติสำหรับพืชสปริงเกลอร์
บทนำ: ระบบรดน้ำ Arduino อัตโนมัติสำหรับเครื่องปลูกแบบสปริงเกอร์
เมื่อเดือนที่แล้ว Elecrow ออกจากออฟฟิศเดิมและย้ายไปอยู่ที่สำนักงานแห่งใหม่ เราจะพลาดสำนักงานต้นแบบของเราที่เราทำงานหนักมานานกว่าสองปีเราจะพลาดทุกสิ่งทุกอย่างที่นี่โต๊ะทำงานหน้าต่างและพืชกระถางเหล่านั้นที่เราดูแลเอาใจใส่กับเพื่อนบ้านของเรามากกว่าสองปี
เพื่อนบ้านทีมออกแบบของเราที่นำโดยชายชื่อคิมิเรามีความทรงจำมากมายในช่วงต้นของวันแรก ร่วมกันปลูกต้นกระถางบางส่วนไว้ในระเบียงเพื่อช่วยให้เราปล่อยเมื่อเหนื่อยหลังจากทำงานหนักตลอดทั้งวัน แต่เมื่อเราออกไปทีม Kimi ก็ประมาทมากและพวกเขามักจะออกไปแสดงบ้างพวกเราทุกคนต้องกังวลว่าพืชเหล่านี้จะกระหายเมื่อเราออกไป
ดังนั้นเราจึงตัดสินใจที่จะออกแบบระบบรดน้ำอัตโนมัติเพื่อให้แน่ใจว่าโรงงานเหล่านี้ยังมีชีวิตอยู่เมื่อเรากลับมาที่นี่ในครั้งต่อไป ตรวจสอบความชื้นในดินของพืชในกระถางหากความชื้นต่ำเกินไปปั๊มจะเริ่มสเปรย์ด้วยวิธีนี้ทีม Kimi ไม่จำเป็นต้องใช้น้ำเหล่านี้ทุกวัน
ฉันได้บันทึกวิดีโอเพื่อการอ้างอิง: http://v.youku.com/v_show/id_XNjQwNDk0ODg4.html
เพื่อนบ้านทีมออกแบบของเราที่นำโดยชายชื่อคิมิเรามีความทรงจำมากมายในช่วงต้นของวันแรก ร่วมกันปลูกต้นกระถางบางส่วนไว้ในระเบียงเพื่อช่วยให้เราปล่อยเมื่อเหนื่อยหลังจากทำงานหนักตลอดทั้งวัน แต่เมื่อเราออกไปทีม Kimi ก็ประมาทมากและพวกเขามักจะออกไปแสดงบ้างพวกเราทุกคนต้องกังวลว่าพืชเหล่านี้จะกระหายเมื่อเราออกไป
ดังนั้นเราจึงตัดสินใจที่จะออกแบบระบบรดน้ำอัตโนมัติเพื่อให้แน่ใจว่าโรงงานเหล่านี้ยังมีชีวิตอยู่เมื่อเรากลับมาที่นี่ในครั้งต่อไป ตรวจสอบความชื้นในดินของพืชในกระถางหากความชื้นต่ำเกินไปปั๊มจะเริ่มสเปรย์ด้วยวิธีนี้ทีม Kimi ไม่จำเป็นต้องใช้น้ำเหล่านี้ทุกวัน
ฉันได้บันทึกวิดีโอเพื่อการอ้างอิง: http://v.youku.com/v_show/id_XNjQwNDk0ODg4.html
ครั้งแรกที่เราจัดทำขึ้นโมดูลดังต่อไปนี้ (ทุกส่วนสามารถหาได้ในwww.elecrow.com ):
1. ความชื้นในดินเซนเซอร์ กระถางดอกไม้แต่ละชนิดจำเป็นต้องมีเซ็นเซอร์ความชื้นในดินเพื่อรวบรวมข้อมูลความอ่อนน้อมถ่อมตน ข้อได้เปรียบที่ดีที่สุดของเซนเซอร์ชนิดนี้ก็คือราคาถูกจริงๆในขณะที่ข้อเสียก็คือมันอาจจะเป็นสนิมเมื่อใช้งานในระยะยาว นอกจากนี้คุณยังสามารถใช้เซ็นเซอร์วัดความชื้นสัมพัทธ์ที่ดีกว่าเช่นเซ็นเซอร์ความชื้นในดินที่เก็บประจุได้ แต่คุณอาจต้องจ่ายเงิน 10 เท่าของราคา
2. ปั๊มขนาดเล็กพร้อมคนขับ. คนขับคือเพื่อให้กระแสไฟฟ้าเพียงพอสำหรับเครื่องสูบน้ำใบสมัครของฉันต้องใช้ระยะสเปรย์ประมาณหนึ่งเมตรดังนั้นปั๊มนี้ก็เพียงพอแล้ว แต่ถ้าคุณต้องการสร้างระบบที่ต้องการช่วงการพ่นพ่นที่มีขนาดใหญ่คุณอาจต้องใช้ปั๊มขนาดใหญ่หรือแม้แต่อุปกรณ์ที่มีแรงดันเพื่อให้กระสุนขึ้นไปไกลกว่าเช่นระบบรดน้ำในสวนชา
3. Servo and Rotating Platformเพื่อนำท่อน้ำไปรดน้ำเป้าหมาย ในการควบคุมระยะทางและมุมของสเปรย์จำเป็นต้องใช้เซอร์โวเซอร์โว 2 ตัว
4. แน่นอนว่าคอนโทรลเลอร์คือต้องใช้แพลตฟอร์มCrowduinoรวมทั้งExpansion Boardเพื่อการเชื่อมต่อที่ง่ายดาย
5. ท่อน้ำและแหล่งจ่ายไฟเป็นสิ่งสำคัญเกินไปและสายบางส่วนก็จะช่วย
ตกลงทุกอย่างพร้อมแล้วเริ่มต้นกันเถอะ
1. ความชื้นในดินเซนเซอร์ กระถางดอกไม้แต่ละชนิดจำเป็นต้องมีเซ็นเซอร์ความชื้นในดินเพื่อรวบรวมข้อมูลความอ่อนน้อมถ่อมตน ข้อได้เปรียบที่ดีที่สุดของเซนเซอร์ชนิดนี้ก็คือราคาถูกจริงๆในขณะที่ข้อเสียก็คือมันอาจจะเป็นสนิมเมื่อใช้งานในระยะยาว นอกจากนี้คุณยังสามารถใช้เซ็นเซอร์วัดความชื้นสัมพัทธ์ที่ดีกว่าเช่นเซ็นเซอร์ความชื้นในดินที่เก็บประจุได้ แต่คุณอาจต้องจ่ายเงิน 10 เท่าของราคา
2. ปั๊มขนาดเล็กพร้อมคนขับ. คนขับคือเพื่อให้กระแสไฟฟ้าเพียงพอสำหรับเครื่องสูบน้ำใบสมัครของฉันต้องใช้ระยะสเปรย์ประมาณหนึ่งเมตรดังนั้นปั๊มนี้ก็เพียงพอแล้ว แต่ถ้าคุณต้องการสร้างระบบที่ต้องการช่วงการพ่นพ่นที่มีขนาดใหญ่คุณอาจต้องใช้ปั๊มขนาดใหญ่หรือแม้แต่อุปกรณ์ที่มีแรงดันเพื่อให้กระสุนขึ้นไปไกลกว่าเช่นระบบรดน้ำในสวนชา
3. Servo and Rotating Platformเพื่อนำท่อน้ำไปรดน้ำเป้าหมาย ในการควบคุมระยะทางและมุมของสเปรย์จำเป็นต้องใช้เซอร์โวเซอร์โว 2 ตัว
4. แน่นอนว่าคอนโทรลเลอร์คือต้องใช้แพลตฟอร์มCrowduinoรวมทั้งExpansion Boardเพื่อการเชื่อมต่อที่ง่ายดาย
5. ท่อน้ำและแหล่งจ่ายไฟเป็นสิ่งสำคัญเกินไปและสายบางส่วนก็จะช่วย
ตกลงทุกอย่างพร้อมแล้วเริ่มต้นกันเถอะ
ขั้นตอนที่ 1: ติดตั้งเซ็นเซอร์วัดความชื้นในดิน
ขั้นแรกเราจะต่อเซ็นเซอร์ความชื้นกับ Crowduino ผ่านทางบอร์ดขยาย เสียบปลั๊กไปที่ Crowduino และเชื่อมต่อเซนเซอร์กับพอร์ตอะนาล็อกA0 ~ A2เป็นภาพ หม้อแต่ละชนิดต้องการเซนเซอร์ดังกล่าวเพื่อรวบรวมข้อมูลความชื้นในโครงการของฉันฉันใช้เซนเซอร์ 3 ชิ้น หากคุณต้องการมากขึ้นให้เชื่อมต่อเซ็นเซอร์อื่นกับพอร์ตอนาล็อก Crowduino ด้วย คุณสามารถใช้เซ็นเซอร์ได้มากที่สุด 5 ตัว
โปรดทราบว่าหากพบสายสั้นเกินไปคุณสามารถใช้สายต่อเพื่อขยายความยาวได้ โปรดสังเกตว่าคุณควรตรวจสอบให้แน่ใจว่าการเชื่อมต่อถูกต้องเช่นเดียวกับภาพที่สาม
เสียบเซ็นเซอร์ลงในดินเซ็นเซอร์จะรายงานข้อมูลความชุ่มชื้นให้กับ Crowduino: เฮ้หม้อนี้แห้งเกินไปคุณต้องทำอะไรสักอย่าง!เซ็นเซอร์ความชื้นในดินชนิดนี้มีราคาถูกและมีเสถียรภาพ แต่อาจกัดกร่อนหลังจากใช้งานเป็นเวลานานเช่นหนึ่งปีคุณยังสามารถใช้เซ็นเซอร์วัดความชื้นในดินอื่น ๆ เช่นเซ็นเซอร์วัดความชื้นแบบแคพติฟาย แต่อาจทำให้คุณเสียค่าใช้จ่ายได้มากขึ้น
โปรดทราบว่าหากพบสายสั้นเกินไปคุณสามารถใช้สายต่อเพื่อขยายความยาวได้ โปรดสังเกตว่าคุณควรตรวจสอบให้แน่ใจว่าการเชื่อมต่อถูกต้องเช่นเดียวกับภาพที่สาม
เสียบเซ็นเซอร์ลงในดินเซ็นเซอร์จะรายงานข้อมูลความชุ่มชื้นให้กับ Crowduino: เฮ้หม้อนี้แห้งเกินไปคุณต้องทำอะไรสักอย่าง!เซ็นเซอร์ความชื้นในดินชนิดนี้มีราคาถูกและมีเสถียรภาพ แต่อาจกัดกร่อนหลังจากใช้งานเป็นเวลานานเช่นหนึ่งปีคุณยังสามารถใช้เซ็นเซอร์วัดความชื้นในดินอื่น ๆ เช่นเซ็นเซอร์วัดความชื้นแบบแคพติฟาย แต่อาจทำให้คุณเสียค่าใช้จ่ายได้มากขึ้น
ขั้นตอนที่ 2: สร้างแพลตฟอร์ม Servo Rotating
ในขั้นตอนนี้ฉันจำเป็นต้องติดตั้งเซอร์โวลงบนแพลตฟอร์มหมุนแพลตฟอร์มนี้สามารถใช้ท่อฉีดสปริงเพื่อหมุน 160 องศาในทิศทางแนวนอนและแนวตั้ง
เมื่อติดตั้งเซอร์โวและวงเล็บเพื่อค้นหาตำแหน่งหม้อคุณต้องปรับตำแหน่ง "ศูนย์" ก่อนติดตั้งMedianValueSettingโปรแกรม เพื่อ Crowduino ของคุณและทำให้มันทำงาน จากนั้นติดตั้ง servo_1 (เซอร์โวเพื่อควบคุมตำแหน่งในแนวนอน) ไปยังทิศทางเดียวกันของฐานและเซอร์โว 2 (เซอร์โวเพื่อควบคุมตำแหน่งแนวตั้ง) ให้อยู่ในแนวตั้งกับฐานยึดตามภาพ
เมื่อติดตั้งเซอร์โวและวงเล็บเพื่อค้นหาตำแหน่งหม้อคุณต้องปรับตำแหน่ง "ศูนย์" ก่อนติดตั้งMedianValueSettingโปรแกรม เพื่อ Crowduino ของคุณและทำให้มันทำงาน จากนั้นติดตั้ง servo_1 (เซอร์โวเพื่อควบคุมตำแหน่งในแนวนอน) ไปยังทิศทางเดียวกันของฐานและเซอร์โว 2 (เซอร์โวเพื่อควบคุมตำแหน่งแนวตั้ง) ให้อยู่ในแนวตั้งกับฐานยึดตามภาพ
ขั้นตอนที่ 3: ติดตั้งท่อและปั๊ม
จำเป็นต้องใช้ท่อสองท่อในแอพพลิเคชันนี้สำหรับการป้อนน้ำและอีกอันหนึ่งสำหรับป้อนน้ำ ขั้นแรกให้เสียบปลายด้านหนึ่งของท่อส่งน้ำเข้ากับเต้าเสียบของปั๊มและติดปลายอีกข้างหนึ่งเข้ากับแพลตฟอร์มหมุนและใช้สายเชื่อมต่อเพื่อแก้ไขปัญหาคุณสามารถใช้สิ่งต่างๆเช่นกาว จากนั้นเสียบปลั๊กท่อน้ำเข้ากับปั๊มน้ำและด้านอื่น ๆ ไปยังถังเก็บน้ำเช่นขวดน้ำแร่
จากนั้นเชื่อมต่อแหล่งจ่ายไฟของปั๊มกับเต้าเสียบของบอร์ดไดรเวอร์โปรดสังเกตว่าเชื่อมต่อเสา "+" (ที่มีเครื่องหมายสีแดง) กับ "OUTC" ของไดรเวอร์และ "-" ไปที่ "OUTD"
จากนั้นเชื่อมต่อแหล่งจ่ายไฟของปั๊มกับเต้าเสียบของบอร์ดไดรเวอร์โปรดสังเกตว่าเชื่อมต่อเสา "+" (ที่มีเครื่องหมายสีแดง) กับ "OUTC" ของไดรเวอร์และ "-" ไปที่ "OUTD"
ขั้นตอนที่ 4: เชื่อมต่อ Driver Pump กับ Crowduino
เชื่อมต่ออินพุทและพอร์ตจ่ายไฟของไดรเวอร์ไปยัง Crowduino เชื่อมต่อหมุดดังต่อไปนี้:
Driver <-> Crowduino
INC <-> D6
IND <-> D7
VCC <-> VIN
GND <-> GND
Power Crowduino ผ่าน DC Jack ให้ต่อแหล่งจ่ายไฟ 9v เข้ากับพอร์ตนี้ ถึงตอนนี้ฮาร์ดแวร์ของระบบรดน้ำอัตโนมัตินี้ถูกสร้างขึ้นแล้ว
Driver <-> Crowduino
INC <-> D6
IND <-> D7
VCC <-> VIN
GND <-> GND
Power Crowduino ผ่าน DC Jack ให้ต่อแหล่งจ่ายไฟ 9v เข้ากับพอร์ตนี้ ถึงตอนนี้ฮาร์ดแวร์ของระบบรดน้ำอัตโนมัตินี้ถูกสร้างขึ้นแล้ว
ขั้นตอนที่ 5: แก้ไขระบบรดน้ำบนแพลตฟอร์มและวางไว้
เพื่อแก้ไขระบบนี้ ฉันติดตั้งระบบทั้งหมดลงในกล่องกระดาษที่เราใช้บรรจุผลิตภัณฑ์ของเรา ด้วยสกรูหรือกาวคุณสามารถติดตั้งลงบนแพลตฟอร์มใดก็ได้ที่คุณต้องการ แต่คุณต้องปรับระยะทางและตำแหน่งเพื่อให้ทำงานร่วมกับเฟิร์มแวร์ ในโปรแกรมของฉันฉันใส่ระบบด้วยกระถางของฉันเช่นเดียวกับภาพเพื่อให้แน่ใจว่าพล็อต 3 พล็อตพืชสามารถพ่นทั้งหมด (ระยะทางสูงสุด <30cm และมุม <160 องศา)
ขั้นตอนที่ 6: ปรับพารามิเตอร์ขึ้นอยู่กับแอพพลิเคชัน
จากนั้นเราเขียนเฟิร์มแวร์นี้คุณสามารถดาวน์โหลดเฟิร์มแวร์ได้โดยตรง: AutomaticWatering.zip หลังจากดาวน์โหลดโปรแกรมแล้วให้เปิดไฟล์ soucecode เราจำเป็นต้องตั้งค่าพารามิเตอร์หลัก 3 ข้อดังนี้:
1. servoPosition_x:
servoPosition_x บอกเซอร์โวว่าหมุนไปอย่างไรเมื่อพ่นน้ำไปที่กระถางดอกไม้แทนตำแหน่งของตำแหน่งหม้อที่สัมพันธ์กับ "ตำแหน่งศูนย์" ของ เซอร์โวในภาพ;
ในใบสมัครของฉันฉันตั้งกระเจี๊ยบ 3, servoPosition ของ flowerpot_1 เป็น 20 ซึ่งหมายถึงตำแหน่ง flower_1 ศูนย์คือ 20 องศาเทียบกับ "ศูนย์ตำแหน่ง" ด้วยวิธีนี้ฉันตั้งดอกไม้ 2 และ flower_3 ถึง 60 และ 105 องศา
2. รดน้ำเกณฑ์ความชื้น
เซ็นเซอร์วัดความชื้นจะรายงานข้อมูลความชื้นของแต่ละพล็อตไปยัง Crowduino ในช่วงข้อมูลอนาล็อกตั้งแต่ 0 ถึง 1023 ข้อมูลที่มากขึ้นหมายถึงพล็อตที่ชื้นมากขึ้น ดังนั้นเราจึงกำหนดเกณฑ์เพื่อกำหนดว่าเมื่อใดควรรดน้ำ ตัวอย่างเช่นฉันส่ง threshold_1 เป็น "105" นั่นหมายความว่าถ้าเซ็นเซอร์รายงานข้อมูลที่ต่ำกว่า 105 สักระยะหนึ่งแล้ว Crowduino นี้จะคิดว่า "พล็อต_1ต้องการน้ำบางส่วนฉันควรควบคุมปั๊มเพื่อรดน้ำพล็อต"
ในฐานะที่เป็นทดสอบของฉันตั้งเกณฑ์ความชื้นที่ 100 ~ 400 จะดีคุณยังสามารถกำหนดเกณฑ์ขึ้นอยู่กับชนิดของพืชคือสำหรับพืชเหล่านั้นที่ต้องการสภาพแวดล้อมชื้นจำนวนเกณฑ์มากขึ้นจะดีกว่าสำหรับผู้ที่ พืชที่ต้องการแห้งเช่นแคคตัสจำนวนครอกขยะจะดีกว่า ถ้าคุณต้องการให้เซ็นเซอร์ตรวจจับก๊าซมีข้อมูลในดินของคุณอยู่เสมอนอกจากนี้ยังมีโปรแกรมตรวจสอบความชื้นเพื่อช่วยคุณ
3. เวลารดน้ำ
พารามิเตอร์นี้บอก Crowduino ระยะเวลาในการรดน้ำหม้อที่ นั่นคือถ้าเป็นหม้อขนาดใหญ่คุณจะต้องปั๊มรดน้ำหม้อนี้เป็นเวลานานญาติถ้ามันเป็นหม้อขนาดเล็กระยะเวลาอันสั้นจะไม่เป็นไร
1. servoPosition_x:
servoPosition_x บอกเซอร์โวว่าหมุนไปอย่างไรเมื่อพ่นน้ำไปที่กระถางดอกไม้แทนตำแหน่งของตำแหน่งหม้อที่สัมพันธ์กับ "ตำแหน่งศูนย์" ของ เซอร์โวในภาพ;
ในใบสมัครของฉันฉันตั้งกระเจี๊ยบ 3, servoPosition ของ flowerpot_1 เป็น 20 ซึ่งหมายถึงตำแหน่ง flower_1 ศูนย์คือ 20 องศาเทียบกับ "ศูนย์ตำแหน่ง" ด้วยวิธีนี้ฉันตั้งดอกไม้ 2 และ flower_3 ถึง 60 และ 105 องศา
2. รดน้ำเกณฑ์ความชื้น
เซ็นเซอร์วัดความชื้นจะรายงานข้อมูลความชื้นของแต่ละพล็อตไปยัง Crowduino ในช่วงข้อมูลอนาล็อกตั้งแต่ 0 ถึง 1023 ข้อมูลที่มากขึ้นหมายถึงพล็อตที่ชื้นมากขึ้น ดังนั้นเราจึงกำหนดเกณฑ์เพื่อกำหนดว่าเมื่อใดควรรดน้ำ ตัวอย่างเช่นฉันส่ง threshold_1 เป็น "105" นั่นหมายความว่าถ้าเซ็นเซอร์รายงานข้อมูลที่ต่ำกว่า 105 สักระยะหนึ่งแล้ว Crowduino นี้จะคิดว่า "พล็อต_1ต้องการน้ำบางส่วนฉันควรควบคุมปั๊มเพื่อรดน้ำพล็อต"
ในฐานะที่เป็นทดสอบของฉันตั้งเกณฑ์ความชื้นที่ 100 ~ 400 จะดีคุณยังสามารถกำหนดเกณฑ์ขึ้นอยู่กับชนิดของพืชคือสำหรับพืชเหล่านั้นที่ต้องการสภาพแวดล้อมชื้นจำนวนเกณฑ์มากขึ้นจะดีกว่าสำหรับผู้ที่ พืชที่ต้องการแห้งเช่นแคคตัสจำนวนครอกขยะจะดีกว่า ถ้าคุณต้องการให้เซ็นเซอร์ตรวจจับก๊าซมีข้อมูลในดินของคุณอยู่เสมอนอกจากนี้ยังมีโปรแกรมตรวจสอบความชื้นเพื่อช่วยคุณ
3. เวลารดน้ำ
พารามิเตอร์นี้บอก Crowduino ระยะเวลาในการรดน้ำหม้อที่ นั่นคือถ้าเป็นหม้อขนาดใหญ่คุณจะต้องปั๊มรดน้ำหม้อนี้เป็นเวลานานญาติถ้ามันเป็นหม้อขนาดเล็กระยะเวลาอันสั้นจะไม่เป็นไร
ขั้นตอนที่ 7: ดาวน์โหลดเฟิร์มแวร์และทดลองดู!
หลังจากตั้งค่าพารามิเตอร์เหล่านี้แล้วให้อัปโหลดเฟิร์มแวร์ไปที่ Crowduino และลองใช้บางทีคุณอาจจำเป็นต้องปรับเปลี่ยนพารามิเตอร์บางครั้งเพื่อทำให้ระบบสมบูรณ์แบบทำงานร่วมกับแอ็พพลิเคชันของคุณ
มีเวลาที่ดี!
มีเวลาที่ดี!
ความคิดเห็น
แสดงความคิดเห็น