สารบัญ:

สุดยอดเครื่องให้อาหารปลาอัตโนมัติ DIY: ระดับ 2: 10 ขั้นตอน (พร้อมรูปภาพ)
สุดยอดเครื่องให้อาหารปลาอัตโนมัติ DIY: ระดับ 2: 10 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: สุดยอดเครื่องให้อาหารปลาอัตโนมัติ DIY: ระดับ 2: 10 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: สุดยอดเครื่องให้อาหารปลาอัตโนมัติ DIY: ระดับ 2: 10 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: ที่ให้อาหารปลาอัตโนมัติ 2024, กรกฎาคม
Anonim
สุดยอดเครื่องให้อาหารปลาอัตโนมัติ DIY: ระดับ 2
สุดยอดเครื่องให้อาหารปลาอัตโนมัติ DIY: ระดับ 2

Tier 2 Feeder เป็นก้าวที่ยิ่งใหญ่จาก Tier 1 เวอร์ชันนี้ใช้โมดูล wifi ESP8266 เพื่อซิงค์นาฬิกาของ Arduino เพื่อควบคุมตารางการให้อาหารและแสงของถัง

ขั้นตอนที่ 1: สิ่งที่คุณต้องการ:

ทุกอย่างในระดับ 1 ยกเว้นตัวจับเวลาแสง

  • ESP8266-01
  • โปรแกรมเมอร์ FTDI (เพื่อตั้งโปรแกรม ESP8266)
  • หัวแร้ง
  • 5V RGBW LED strip (SK6812 IP 65, daylight white ฉันใช้อันนี้)
  • แถบไฟต้องกันน้ำได้ เนื่องจากน้ำจะระเหยออกจากถังและควบแน่นที่ฝาถังและติดไฟเอง
  • แหล่งจ่ายไฟ 5V (ฉันใช้อันนี้ Arduino ไม่สามารถจ่ายไฟทั้งหมดได้ด้วยตัวเอง)
  • คุณสามารถใช้แหล่งจ่ายไฟ 5V ใดก็ได้ที่คุณต้องการ เพียงตรวจสอบให้แน่ใจว่ามีพลังงานเพียงพอสำหรับจ่ายไฟทั้งหมด
  • ตัวควบคุมแรงดันไฟฟ้า 3.3V
  • ESP8266 ทำงานที่ 3.3V นี่คือสาเหตุที่อย่างอื่นเป็น 5V ง่ายกว่าในขั้นที่ 5 ลงไปที่ 3.3 มากกว่าที่จะลดระดับลง 12 เป็น 3.3
  • ตัวต้านทาน (1kOhm x2, 2kOhm x2 (หรือ 1kOhm x4), 10kOhm x1)
  • ซุปเปอร์กาว
  • กาวร้อน
  • ชิ้นส่วนที่พิมพ์ 3 มิติ x8 (ให้ไฟล์ STL)
  • เครื่องปอกสายไฟ (ฉันขอแนะนำสิ่งที่มีประโยชน์เหล่านี้)
  • เขียงหั่นขนม (สำหรับการสร้างต้นแบบสิ่ง)
  • Protoboard/Project board (สำหรับการประกอบขั้นสุดท้าย)
  • สายไฟคอมพิวเตอร์มาตรฐาน 3 ขา
  • (อุปกรณ์เสริม) มอเตอร์สั่นของโทรศัพท์มือถือ (เพื่อกวนถัง) (ฉันใช้หนึ่งในนั้น)
  • ติดตั้งไลบรารี Arduino เหล่านี้:
  • ESP8266WiFi.h
  • WiFiUdp.h
  • TimeLib.h
  • Dusk2Dawn.h
  • Adafruit_NeoPixel.h
  • ความอดทน.

ขั้นตอนที่ 2: มันทำงานอย่างไร

ESP8266 รับเวลา Unix จากเซิร์ฟเวอร์ NIST และส่งผ่านไปยัง Arduino Arduino จะใช้เวลานั้นเพื่อกำหนดพระอาทิตย์ขึ้นและตกในท้องถิ่นและซิงค์นาฬิกาภายในเพื่อกำหนดจำนวนนาทีที่ผ่านไปตั้งแต่เที่ยงคืน โดยใช้เวลาที่ผ่านไปนี้ตั้งแต่เที่ยงคืน Arduino จะกำหนดสีของไฟและรู้ว่าเมื่อใดควรเปิดใช้งานตัวป้อน ซึ่งเป็นกลไกเดียวกับตัวปล่อยระดับ 1 การตั้งค่าเริ่มต้นในรหัส Arduino ที่ฉันเขียนมีการตั้งค่าไฟเป็นรอบกลางวัน/กลางคืนที่สามารถควบคุมได้จนถึงระดับที่สองเพื่อให้จางลงอย่างราบรื่นและซิงค์กับพระอาทิตย์ขึ้นและตกของตำแหน่งของคุณ Arduino ยังรีเซ็ตตัวเองวันละครั้งเพื่อซิงค์ตัวเองกับเซิร์ฟเวอร์ NIST อีกครั้ง และตรวจสอบให้แน่ใจว่าไม่มีการโอเวอร์โฟลว์ตัวจับเวลา

ขั้นตอนที่ 3: การเขียนโปรแกรม ESP8266

การเขียนโปรแกรม ESP8266
การเขียนโปรแกรม ESP8266

ตกลงดังนั้น ESP8266 จึงเป็นโปรแกรมที่ไม่ดี

ไม่เป็นมิตรกับเขียงหั่นขนมและถ้าคุณมีสายจัมเปอร์หญิงฉันขอแนะนำให้ใช้สายเหล่านี้ หาก ESP8266 ของคุณมาโดยไม่ได้ติดตั้งเฟิร์มแวร์เหมือนของฉัน คุณจะต้องแฟลชเฟิร์มแวร์นั้น ใช้โปรแกรมเมอร์ FTDI ทำสิ่งนี้ มีคำแนะนำมากมายเกี่ยวกับวิธีการทำสิ่งนี้ที่อื่น แต่ฉันได้จัดทำแผนภาพการเดินสายเพื่อความสะดวก ตรวจสอบให้แน่ใจว่าโปรแกรมเมอร์ FTDI ให้ 3.3V! 5V จะทอด ESP8266 ของคุณ ในไดอะแกรมของฉัน สีส้มที่เชื่อมต่อระหว่าง GPI01 และ GND ควรทำเมื่อแฟลชเฟิร์มแวร์ของ ESP8266 เท่านั้น GPI01 ไม่ควรเชื่อมต่อเมื่ออัปโหลดรหัส Arduino จริงไปยังโมดูล

ถัดไป คุณจะต้องอัปโหลดโค้ดจริงของ ESP8266 คราวนี้ใช้โปรแกรมเมอร์ FTDI ร่วมกับ Arduino IDE คุณจะต้องดาวน์โหลดและติดตั้งไลบรารีทั้งหมดที่ใช้ การตั้งค่าที่ใช้ในการอัปโหลดโค้ดด้วย arduino 1.8 อยู่ในส่วนที่แสดงความคิดเห็นในตอนเริ่มต้น อย่าลืมอัปเดตรหัสด้วยเครือข่าย wifi และรหัสผ่านของคุณ

ขั้นตอนที่ 4: เชื่อมต่อ ESP8266 กับ Arduino

เชื่อมต่อ ESP8266 กับ Arduino
เชื่อมต่อ ESP8266 กับ Arduino
เชื่อมต่อ ESP8266 กับ Arduino
เชื่อมต่อ ESP8266 กับ Arduino

เมื่ออัปโหลดรหัสแล้ว คุณสามารถยกเลิกการเชื่อมต่อโปรแกรมเมอร์ FTDI และเชื่อมต่อ ESP8266 ตามที่แสดงในแผนภาพ ตัวต้านทานถูกใช้เป็นตัวแบ่งแรงดันไฟฟ้าเพื่อให้แน่ใจว่า Arduino ไม่ได้ปั๊ม 5V ลงในการสื่อสารของ ESP8266 และพินรีเซ็ต ทำขั้นตอนนี้บน breadboard เพื่อทำการดีบัก เราจะใส่มันบนโปรโตบอร์ดในภายหลัง

เมื่อเสียบปลั๊ก ESP8266 แล้ว คุณจะเห็นไฟสีฟ้ากะพริบเมื่อเชื่อมต่อกับแหล่งจ่ายไฟ หลังจากนั้นไม่กี่วินาทีต่อมา ก็ควรได้รับเวลา Unix จากอินเทอร์เน็ต และส่งไปที่ Arduino จากนั้นจะมีช่องว่างว่างเปล่า () จะอยู่จนกว่าจะรีเซ็ต เช่นเดียวกับตัวป้อน Tier 1

เพื่อให้แน่ใจว่า ESP8266 ใช้งานได้ คุณจะต้องอัปโหลดรหัสจากขั้นตอนถัดไปไปยัง Arduino และเปิดจอภาพแบบอนุกรม

ขั้นตอนที่ 5: การอัปโหลดรหัส Arduino และการแก้ไขปัญหา

การอัปโหลดโค้ด Arduino และการแก้ไขปัญหา
การอัปโหลดโค้ด Arduino และการแก้ไขปัญหา

อัปโหลดโค้ดไปที่ Arduino nano แล้วเปิดจอภาพแบบอนุกรม คุณควรเห็นตัวอย่างข้างต้น Arduino จะรีเซ็ตเมื่อคุณเปิดมอนิเตอร์แบบอนุกรม ดังนั้น ESP8266 จะถูกรีเซ็ตในเวลาเดียวกัน มอนิเตอร์แบบอนุกรมจะเริ่มนับวินาทีตั้งแต่เที่ยงคืนของวันที่ 1 มกราคม 1970 จนกว่า ESP8266 จะส่งเวลา Unix ปัจจุบัน เมื่อสิ่งนั้นเกิดขึ้น คุณควรเห็นสิ่งนี้:

อาจใช้เวลา 3-15 วินาทีในการดำเนินการนี้ ดังนั้นโปรดอดทนรอ ฉันไม่ค่อยเห็นมันใช้เวลานานกว่า 10 วินาที แต่ให้เวลา 15 ก่อนที่คุณจะเริ่มแก้ไขปัญหา

หาก ESP8266 ของคุณไม่ส่งเวลาไปยัง Arduino ให้ลองทำตามขั้นตอนเหล่านี้:

· ตรวจสอบให้แน่ใจว่าทุกอย่างมีสายตรงตามที่ควรจะเป็น

· ตรวจสอบอีกครั้งว่าคุณใส่ SSID และรหัสผ่านของ wifi ที่ถูกต้องลงใน ESP8266 หากไม่เป็นเช่นนั้น คุณจะต้องเชื่อมต่อกลับไปยังโปรแกรมเมอร์ FTDI เพื่ออัปโหลดข้อมูลที่ถูกต้อง จากนั้นจึงต่อสายไปยัง Arduino อีกครั้ง (SSID หรือรหัสผ่านที่ยาวมากอาจทำให้เกิดปัญหาบางอย่าง แต่เครือข่าย wifi ของฉันมีอักขระมากกว่า 20 ตัวในทั้งสองฟิลด์ ดังนั้นเครือข่ายในบ้านส่วนใหญ่จึงใช้ได้)

· ตรวจสอบหน้าผู้ดูแลระบบของเราเตอร์ของคุณ (ถ้าทำได้) สำหรับอุปกรณ์ที่เชื่อมต่อซึ่งจะปรากฏขึ้นเมื่อเปิด ESP8266 เท่านั้น เพื่อให้แน่ใจว่ายังคงเปิดอยู่ในขณะที่คุณตรวจสอบสิ่งนี้ (Arduino ปิดการใช้งาน) เชื่อมต่อสายที่นำไปสู่พินรีเซ็ตของ ESP8266 โดยตรงกับ 3.3V ทำให้มันสูงจะทำให้ ESP8266 เปิดอยู่ อย่าลืมยกเลิกการดำเนินการนี้หลังจากตรวจสอบแล้ว

ขั้นตอนที่ 6: การปรับแต่งรหัส Arduino

เมื่อ ESP8266 ของคุณเชื่อมต่อและส่งเวลาไปยัง Arduino แล้ว Arduino ที่ตั้งโปรแกรมไว้จะนับเวลาและแสดงข้อมูลการดีบักอื่นๆ อีกสองสามส่วน เช่น พระอาทิตย์ขึ้นและตก เราสามารถปรับแต่งค่าเหล่านี้บางส่วนในโค้ดของ Arduino ได้ ส่วนที่เหลือก็อยู่ที่นั่น ดังนั้นฉันสามารถดีบักทั้งระบบได้

เพื่อให้เข้าใจวิธีที่ Arduino คำนวณพระอาทิตย์ขึ้นและตกได้ดีขึ้น โปรดอ่านเอกสารประกอบใน Dusk2Dawn Library คุณจะต้องป้อนละติจูดและลองจิจูดของคุณ (หากคุณเปลี่ยนชื่อตำแหน่งของคุณ ตรวจสอบให้แน่ใจว่ามีการเปลี่ยนแปลงทุกที่ในรหัส!) Dusk2Dawn ใช้พิกัด GPS ของคุณ (ซึ่งคุณสามารถหาได้บน Google Maps) และเวลาท้องถิ่น กำหนดเวลาที่ดวงอาทิตย์ขึ้นและตกในเวลาไม่กี่นาทีตั้งแต่เที่ยงคืน ตัวแปร minfromMid คือนาทีปัจจุบันตั้งแต่เที่ยงคืน และเปรียบเทียบกับพระอาทิตย์ขึ้น พระอาทิตย์ตก เวลาให้อาหาร และเวลาพลบค่ำเพื่อบอก Arduino ว่าจะต้องทำอะไรเมื่อใด อย่าลืมอัปเดตเขตเวลาของคุณด้วย ค่าเริ่มต้นคือ EST

เมื่อตั้งค่าตำแหน่งของคุณแล้ว ให้ตั้งเวลาพลบค่ำเพื่อบอก Arduino ว่าคุณต้องการให้พลบค่ำนานแค่ไหน ซึ่งจะควบคุมระยะเวลาระหว่างกลางวันและกลางคืน โดยแสดงเป็นนาที ค่าเริ่มต้นคือ 90 นาที ดังนั้นไฟ RGBW จะจางลงจากกลางวันเป็นกลางคืนหรืออีกทางหนึ่งในช่วงเวลานั้น

ถัดไป ตั้งเวลาให้อาหารที่คุณต้องการ เวลาป้อนอาหารจริงถูกกำหนดในวิธี getTime() เพื่อให้การป้อนอาหารตรงกันกับวัน/คืน หากคุณต้องการให้อาหารปลาของคุณในเวลาเดียวกันในแต่ละวันแทน ให้แสดงความคิดเห็นเกี่ยวกับการตั้งค่าที่เกี่ยวข้องและใช้การตั้งค่าเริ่มต้นในตอนต้นของรหัส จำไว้ว่าเวลาเหล่านี้อยู่ในหน่วยนาทีจากเที่ยงคืน การใช้เวลาป้อนอาหารเริ่มต้นโดยกำหนดรหัสตายตัวอาจรบกวนแสงหากเวลาป้อนอาหารตกลงมาในช่วงที่แสงตกระหว่างพลบค่ำและกลางวัน (ตอนพระอาทิตย์ขึ้นและพระอาทิตย์ตก) ค่าเริ่มต้นสำหรับรหัสคือ 15 นาทีก่อนและหลังพระอาทิตย์ตกและพระอาทิตย์ขึ้นตามลำดับ สามารถเพิ่มเวลาให้อาหารเพิ่มเติมได้หากต้องการ

ถัดไป ตั้งเวลาที่คุณต้องการรีเซ็ต Arduino เพื่อให้แน่ใจว่าไม่มีการโอเวอร์โฟลว์และซิงค์นาฬิกาอีกครั้ง ฉันแนะนำให้ทำสิ่งนี้ในตอนกลางวันเมื่อคุณไม่อยู่ เนื่องจากกระบวนการรีเซ็ตทำให้ไฟสว่างเต็มที่ ในเวลากลางวันจะไม่เป็นปัญหาสำหรับปลา แต่ในตอนกลางคืนหรือในตอนเช้า/ตอนเย็น แสงแฟลชอาจรบกวนปลาของคุณหรือทำลายรูปลักษณ์ของตู้ปลาไปชั่วครู่ขณะที่คุณกำลังเพลิดเพลินกับปลา

สุดท้าย ตรวจสอบจำนวน LED ในแถบที่คุณมี My strip มี 60 แต่คุณควรอัปเดตค่านี้ในรหัสการตั้งค่าสำหรับ LED จำนวนเท่าใดก็ได้ที่คุณใช้

ขั้นตอนที่ 7: แสงสว่าง

แสงสว่าง
แสงสว่าง

ต่อแถบ LED ของคุณหากคุณยังไม่ได้ทำ

กำลัง (สีแดง) ถึง 5V, กราวด์ (สีขาว) ถึงกราวด์, สัญญาณ (สีเขียว) ถึงพิน 6 (หรืออะไรก็ตามที่คุณตั้งค่าไว้) เมื่อรีเซ็ต Arduino ไฟจะสว่างเต็มที่จนกว่า ESP8266 จะส่งเวลาไปยัง Arduino และกำหนดตำแหน่งที่อยู่ในวงจรแสง ทางที่ดีควรตั้งค่านี้ในตอนเย็นหรือตอนกลางคืน เนื่องจากแสงที่เปลี่ยนไปจะรุนแรงกว่า หากไฟไม่เปลี่ยนภายใน 30 วินาที ให้รีเซ็ต Arduino รหัสรีเซ็ตของฉันควรใช้งานได้ แต่ฉันไม่ใช่โปรแกรมเมอร์โดยการแลกเปลี่ยน ดังนั้นอาจมีข้อบกพร่องสองสามประการที่นี่หรือที่นั่น คุณสามารถทดสอบว่าการรีเซ็ตใช้งานได้โดยตั้งเวลารีเซ็ตเป็นนาทีหลังจากที่คุณอัปโหลดรหัสอีกครั้งและรอ (วินาทีรีเซ็ตจะถูกสุ่ม ดังนั้นอาจใช้เวลา 1-2 นาทีในการรีเซ็ตจริง ๆ) คุณสามารถทำเคล็ดลับเดียวกันได้ในภายหลัง เพื่อให้แน่ใจว่าเซอร์โวทำงานโดยเปลี่ยนเวลาป้อนอาหาร เพียงให้แน่ใจว่าได้เปลี่ยนเวลาเหล่านี้กลับคืนก่อนที่จะปล่อยให้มันทำงาน

ตารางการจัดแสงเริ่มต้นนั้นค่อนข้างง่าย:

ในตอนกลางคืน ไฟทั้งหมดจะดับลง ยกเว้นสีน้ำเงิน ซึ่งเป็นค่าต่ำสุด (2/2555) เมื่อเวลาใกล้พระอาทิตย์ขึ้น สีฟ้าจะเพิ่มขึ้นจนเต็ม (255) ซึ่งถึงตอนพลบค่ำ ในช่วงพลบค่ำ สีแดงและสีเขียวจะเพิ่มขึ้นจากระดับสูงสุด 255 เมื่อพระอาทิตย์ขึ้น สีแดง น้ำเงิน และเขียวอยู่ที่ 255 ทั้งหมด แต่กลางวันเป็นสีขาว ดังนั้นในอีก 2 นาทีข้างหน้า สีแดง สีน้ำเงิน และสีเขียวจะค่อยๆ จางลงและสีขาวจะจางลง ตลอดช่วงเวลาที่เหลือของวัน สีขาวจะสว่างเต็มที่ จนถึง 2 นาทีก่อนพระอาทิตย์ตก เมื่อสีจางลงและถูกแทนที่ด้วยสีแดง น้ำเงิน และเขียวอีกครั้ง เมื่อพระอาทิตย์ตก แสงจะกลับเข้าสู่ช่วงพลบค่ำ ยกเว้นเวลานี้สีแดงและสีเขียวเริ่มต้นที่ความเข้มเต็มที่และค่อยๆ จางลง โดยปล่อยให้สีน้ำเงินสว่างเต็มที่เมื่อถึงเวลากลางคืน จากตรงนี้ สีน้ำเงินจะค่อยๆ จางหายไปเป็นค่าต่ำสุด ซึ่งจะถึงตอนเที่ยงคืน

มีโค้ดอื่นๆ อยู่ที่ส่วนท้ายของภาพสเก็ตช์ Arduino สำหรับโหมดการจัดแสงอื่นๆ ดังนั้นอย่าลังเลที่จะลองใช้คณิตศาสตร์เพื่อให้แสงจางลงในรูปแบบต่างๆ หรือเปลี่ยนสีในช่วงเวลาต่างๆ ของวัน จำไว้ว่าคณิตศาสตร์ใช้รูปแบบ float แต่ค่าสีจะต้องเป็น int ดังนั้นการแปลงระหว่างค่าทั้งสองจึงจำเป็นกับการคำนวณแสงแบบใหม่ที่คุณใช้

ขั้นตอนที่ 8: การพิมพ์ชิ้นส่วน

หากคุณยังไม่ได้พิมพ์ชิ้นส่วนสำหรับระดับนี้ ให้ดำเนินการดังกล่าว ตัวเครื่องมีขนาดใกล้เคียงกับหน่วยกรองขนาดกลาง และฉันใช้เวลาพิมพ์ทั้งคืน ทำความสะอาดชิ้นส่วน ใส่ตัวแบ่งผนังกั้น โดยให้ร่องหงายขึ้นและให้ขอบมนหันออก เซอร์โวได้รับการติดตั้งแบบเดียวกับในเทียร์ 1 และหากคุณกำลังเปลี่ยนระบบเทียร์ 1 ฮ็อปเปอร์ ฝา และล้อป้อนจะเหมือนกัน ดังนั้น คุณจะไม่ต้องพิมพ์ซ้ำหากยังใช้งานได้

โฟลเดอร์.zip มีไฟล์ STL สองชุด ชุดหนึ่งสำหรับเซอร์โวมอเตอร์ SM22 ดั้งเดิมที่ฉันใช้ และอีกชุดสำหรับเซอร์โว SG90 ทั่วไป ทั้งสองไฟล์มีไฟล์ Fusion 360 หากคุณต้องการ/จำเป็นต้องแก้ไขส่วนใดส่วนหนึ่ง SM22 STL เข้ากันได้ดีจริง ๆ เพราะฉันเคยใช้มาแล้ว ฉันไม่ได้พิมพ์หรือทดสอบชิ้นส่วน SG90

สำหรับวัสดุ ฉันแนะนำให้ใช้พลาสติกที่ปลอดภัยสำหรับอาหาร ฉันใช้ Raptor PLA จาก makergeeks ซึ่งมีหลายสีและแข็งแรงมากหลังจากที่คุณอบมันเป็นเวลา 10 นาที สามารถทำได้โดยการต้มชิ้นส่วน ซึ่งผมแนะนำให้คุณทำแค่ล้อเท่านั้น ถ้ามันไม่ค่อยพอดีเนื่องจากการอบอ่อนจะทำให้ชิ้นส่วนหดตัวประมาณ.3%

ฉันพิมพ์ตัวเรือนที่ด้านข้าง (โดยหันด้านบนไปด้านข้างและด้านที่เปิดอยู่หงายขึ้น) ซึ่งใช้วัสดุรองรับน้อยกว่าการวางแนวอื่นๆ ถังสามารถพิมพ์กลับด้านเพื่อหลีกเลี่ยงวัสดุรองรับทั้งหมดบนนั้น ฝาถังควรพิมพ์กลับหัว แต่ฝาใหญ่ควรพิมพ์โดยหันขวาขึ้น

นอกจากนี้ยังมีชิ้นส่วน 'endstop' เพื่อรองรับด้านล่างของตัวเครื่อง หลังจากปล่อยตัวป้อนให้อยู่กับที่เป็นเวลาสองสามสัปดาห์ ฉันสังเกตว่ามันเริ่มหย่อนคล้อยและงอจากน้ำหนักของแหล่งจ่ายไฟ และนั่นก็ส่งผลต่อความสามารถของกรวยในการป้อนอาหารเข้าไปในล้อ เพียงใช้กาวร้อน 1-2 endstops ที่ด้านล่างของกล่องเพื่อให้ทุกอย่างอยู่ในระดับเดียวกัน

ขั้นตอนที่ 9: การประกอบ

การประกอบ
การประกอบ
การประกอบ
การประกอบ
การประกอบ
การประกอบ
การประกอบ
การประกอบ

ใช้โปรโตบอร์ดเพื่อเชื่อมต่อทุกอย่าง ฉันใช้สายจัมเปอร์ดังนั้นฉันจึงไม่ต้องบัดกรีมาก แต่นี่คือจุดที่คุณจะบัดกรีได้มากที่สุด ตราบใดที่การเชื่อมต่อยังเหมือนเดิม ระบบจะทำงานเหมือนที่ทำบนเขียงหั่นขนม ฉันประสานหมุดส่วนหัวเข้าด้วยกันเพื่อสร้าง "ราง" พลังงานสำหรับกราวด์ 5V, 3.3V รวมถึงพอร์ตสัญญาณเซอร์โวและสัญญาณ 3.3V ที่ไม่มีกำลังไปยัง ESP8266 (RX, CH_PD และ RST) ฉันวางหมุดทั้งหมดไว้ที่ด้านล่างของโปรโตบอร์ด โดยให้ส่วนประกอบอยู่ด้านบน

เมื่อคุณสร้างโปรโตบอร์ดเสร็จแล้ว ให้เสียบเข้าไปในช่องด้านบนของตัวเรือนและต่อเซอร์โวมอเตอร์ สายไฟจะหลุดออกจากรอยบากในฝาปิดของตัวเครื่อง และแหล่งจ่ายไฟจะพอดีกับช่องด้านล่าง ช่องด้านล่างมีลักษณะโค้งมนและมีความลาดเอียงเล็กน้อยเพื่อระบายน้ำที่สามารถเข้าไปในตัวเครื่องให้ห่างจากอุปกรณ์อิเล็กทรอนิกส์ได้ เชื่อมต่อขั้วบวกและขั้วลบของแหล่งจ่ายไฟเข้ากับระบบ และเพิ่มฝาครอบด้านข้าง

หากคุณยังไม่ได้ดำเนินการนี้กับแหล่งจ่ายไฟของคุณ ให้ตัดปลายสายไฟที่ไม่ได้เสียบเข้ากับผนังและดึงสายไฟออกให้เพียงพอเพื่อใส่ลงในขั้วต่อที่ถูกต้องของแหล่งจ่ายไฟ หากคุณมีปลายจีบที่คุณสามารถใส่ที่ปลายผมขอแนะนำให้ใช้ถ้าไม่ใช่ทองแดงเปล่าก็ไม่เป็นไร แค่ต้องแน่ใจว่าไม่มีอะไรลัดวงจร! จำไว้ว่าสิ่งนี้จะถูกเสียบเข้ากับไฟที่ผนังบ้านของคุณ ปลอดภัยและไม่เคยใช้งานกับระบบที่เสียบอยู่

ต่อไปต้องเพิ่มแถบไฟในถัง ถอดฝาถังออกแล้วเช็ดให้แห้ง ตรวจสอบให้แน่ใจว่าพื้นผิวของฝาปิดสะอาดและแห้งก่อนเพิ่มไฟ แถบที่ได้มามีแถบกาวด้านหลัง ซึ่งไม่สามารถยึดแถบไฟได้ แต่จะวางแถบไฟไว้ตามขอบฝา (หรือตำแหน่งที่คุณวางไว้) ฝาถังน้ำมันมีขนาดพอดีกับแถบไฟ ดังนั้นฉันจึงไม่ต้องต่อสายไฟใดๆ เพียงต้องแน่ใจว่าสายไฟที่เปิดอยู่ทั้งหมดนั้นหุ้มด้วยวัสดุกันน้ำก่อนที่คุณจะใส่ฝากลับเข้าไปในถัง ฉันใช้กาวร้อนปิดปลาย แต่นั่นอาจใช้ไม่ได้ผลในระยะยาว เมื่อไฟถูกจัดเรียงตามที่คุณต้องการแล้ว ให้ติดกาวให้เข้าที่ ฉันต้องใช้กาวพิเศษตรงมุมเนื่องจากแถบ LED ยกขึ้นที่นั่น ปล่อยให้กาวแห้งสักสองสามนาทีก่อนที่คุณจะปิดฝากลับเข้าไปในแท็งก์ เพื่อให้แน่ใจว่าไม่มีอะไรหยดลงไป เมื่อเปิดฝาแล้ว ให้ต่อสายไฟเข้ากับ Arduino

ชุดตัวป้อนจะเหมือนกับตัวป้อนระดับ 1 ทุกประการ เซอร์โวพอดีกับโพรงโดยติดล้อป้อนไว้ กระเป๋าของล้อป้อนควรชี้ขึ้นไปที่ถังพักเมื่อเซอร์โวอยู่ที่ตำแหน่ง 0 (และหมุนไปทางถังในตำแหน่ง 180) หากคุณกำลังใช้มอเตอร์แบบสั่นซึ่งเป็นอุปกรณ์เสริม ให้บัดกรีสายตะกั่วบางเส้นเข้ากับมันแล้วเสียบเข้าไปในฮอปเปอร์ จะมีช่องในช่องเซอร์โวสำหรับมอเตอร์นั้น ส่งสายตะกั่วของมอเตอร์ไปตามเส้นทางเดียวกับสายเซอร์โวและเชื่อมต่อกับกราวด์และพินของมอเตอร์บน Arduino กาวฮอปเปอร์กับฐานร้อน

เมื่อเชื่อมต่อทุกอย่างแล้ว คุณสามารถเสียบปลั๊กไฟเข้ากับผนังได้ Arduino ควรผ่านลำดับการเริ่มต้นและไฟจะเปลี่ยนเมื่อถึงเวลา หากไม่เป็นเช่นนั้น ให้รีเซ็ตบอร์ดจนกว่าจะถึงเวลา ฉันติดกาวฝาตู้ให้เข้าที่ แต่ปล่อยฝาด้านข้างทิ้งไว้เพื่อที่ฉันจะสามารถเข้าถึง Arduino เพื่อรีเซ็ตหรือตั้งโปรแกรมใหม่ได้

ยินดีด้วย! เครื่องให้อาหารปลาระดับ 2 ของคุณเสร็จแล้ว! ตื่นตาตื่นใจกับแสงสีที่สวยงามและความสามารถในการให้อาหารปลาของคุณเมื่อคุณไม่อยู่! อย่าลืมตรวจสอบระบบในอีกสองสามวันข้างหน้าเพื่อให้แน่ใจว่าทุกอย่างทำงานอย่างถูกต้องและปลาของคุณได้รับอาหารจริงๆ

ขั้นตอนที่ 10: สิ่งที่ควรดูในตอนแรก:

สิ่งที่ต้องดูในตอนแรก
สิ่งที่ต้องดูในตอนแรก
สิ่งที่ต้องดูในตอนแรก
สิ่งที่ต้องดูในตอนแรก
สิ่งที่ต้องดูในตอนแรก
สิ่งที่ต้องดูในตอนแรก

เมื่อฉันตั้งค่าของฉันครั้งแรก ฉันต่อสายเซอร์โวกับพินสัญญาณที่ไม่ถูกต้องโดยไม่ได้ตั้งใจ ดังนั้นปลาจึงไม่ได้รับอาหารเป็นเวลาหลายวันจนกว่าฉันจะตระหนักถึงข้อผิดพลาด (ฉันให้อาหารพวกมันด้วยตนเองในเวลากลางคืนเพื่อตอบสนองต่อข้อผิดพลาดถัดไป) ลองตั้งเวลาให้อาหารเป็นเวลาที่คุณน่าจะอยู่ใกล้ที่สุดเพื่อยืนยันว่าปลาของคุณได้รับอาหารแล้ว

ข้อผิดพลาดอื่นที่น่าจับตามองคือการรีเซ็ต ตัวอย่างเช่น หากคุณกลับถึงบ้านหลังจากพระอาทิตย์ตกดิน และรถถังของคุณยังเปิดไฟในเวลากลางวัน มีโอกาสที่ฟังก์ชันรีเซ็ตจะล้มเหลว และ Arduino ไม่เคยได้รับเวลาจาก ESP8266 นี่ยังหมายความว่าปลาของคุณไม่ได้ให้อาหารตั้งแต่เวลารีเซ็ต ดังนั้นคุณควรให้อาหารมันเองในขณะที่กดปุ่มรีเซ็ตบน Arduino ฉันแน่ใจ 99% ว่าฉันกำจัดสิ่งนี้ออกไปแล้ว แต่การเขียนโปรแกรมไม่ใช่อาชีพของฉัน ดังนั้นโปรดระวังให้ดี

นอกจากนี้ อย่าลืมตรวจสอบอาหารในถังพักทุกสัปดาห์หรือสองสัปดาห์ เติมอาหารตามต้องการ และตรวจดูให้แน่ใจว่าไม่มีอะไรเสียหาย

หากคุณกำลังจะไปเที่ยวพักผ่อน อย่าลืมเปลี่ยนน้ำและบำรุงรักษาถังพื้นฐานอื่นๆ ก่อนออกเดินทาง เครื่องให้อาหารจะทำให้แน่ใจว่าอาหารและแสงจะไม่เป็นจุดสิ้นสุดของปลาของคุณหากคุณหายไปนานเกินไป คุณไม่ควรใช้เครื่องป้อนวันหยุดอีกต่อไป!

แนะนำ: