โปรเจกต์ Pet Feeder พร้อมชิ้นส่วน 3D Printed
นี่คือ Automatic Pet Feeder ที่ใช้งานง่าย พร้อมชิ้นส่วน 3D Printed สามารถปรับเวลาการให้อาหารและปริมาณการให้อาหารได้
นี่คือ Automatic Pet Feeder ที่ใช้งานง่าย พร้อมชิ้นส่วน 3D Printed สามารถปรับเวลาการให้อาหารและปริมาณการให้อาหารได้
Project Supporter Team
โพสต์โดย
ผมเล่นกับ microcontrollers มาสักพักแล้วและอยากจะลองขยับขยายจากการทำตามบทเรียนพื้นฐานดูบ้าง ก่อนช่วง Covid-19 ผมไม่ค่อยมีตารางเวลาที่แน่นอนและต้องทำงานนานหลายชั่วโมงต่อวัน ตารางการให้อาหารสุนัขของผมเริ่มมีปัญหาและทำให้สุนัขเริ่มแสดงอาการไม่สบายตัวให้เห็น นอกจากนี้แถวบ้านผมยังเกิดน้ำท่วมบ่อยในช่วงฤดูพายุเฮอริเคน โชคร้ายที่มีบางครั้งที่ผมไม่สามารถกลับบ้านไปให้อาหารสุนัขของผมได้ ผมจึงต้องหาทางออกเพื่อที่ว่าหากผมไม่สามารถกลับบ้านได้ สุนัขของผมจะได้ไม่ต้องหิว แทนที่จะซื้อเครื่องให้อาหารราคา $30-$40 ทำไมเราไม่สร้างมันขึ้นมาเองในราคา $100+ ล่ะ? ล้อเล่นนะครับ
เครื่องให้อาหารสุนัขของผมใช้ Arduino เป็น microcontroller มีฟีเจอร์สำคัญบางอย่างที่ผมต้องการซึ่งเครื่องให้อาหารรุ่นอื่นๆ ส่วนใหญ่ไม่มี นั่นคือทางออกสำหรับการให้อาหารหลังจากเกิดไฟดับ และการแก้ปัญหาอาหารติดในกลไกการจ่ายอาหาร พื้นที่ของผมมักจะเจอเหตุการณ์ไฟดับแบบสุ่มอยู่บ่อยๆ แต่ปกติไฟมักจะดับไม่นาน ผมจึงไม่เห็นความจำเป็นของระบบสำรองไฟ (power redundancy) นอกจากนี้ผมยังต้องการสิ่งที่ถอดประกอบและทำความสะอาดได้ง่าย ควรระวังเวลาล้างชิ้นส่วนที่ 3D printed คุณสามารถใช้น้ำอุ่นได้ แต่ห้ามใช้น้ำร้อนเด็ดขาด เว้นแต่คุณจะตั้งใจพิมพ์ด้วยวัสดุ ABS หรือ PET-G
รายการฟีเจอร์ทั้งหมดมีดังนี้:
วิดีโอ Demo กำลังจะมาเร็วๆ นี้!
ผมเพิ่งได้เครื่อง 3D printer มา และคิดว่าไม่มีวิธีไหนที่จะเรียนรู้และใช้งานมันได้ดีไปกว่าการพิมพ์ชิ้นส่วนที่ออกแบบเองสำหรับเครื่องให้อาหารสัตว์เลี้ยง ทุกอย่างถูกพิมพ์ด้วย PLA+ โดยใช้เครื่อง Ender 3 Pro และใช้ Cura เป็น slicer ไฟล์ STL สำหรับชิ้นส่วนทั้งหมดสามารถพบได้ในหน้าโครงการบน Github ลิงก์อยู่ด้านล่าง โปรดอ่านไฟล์ README สำหรับคำแนะนำในการพิมพ์และการตั้งค่า slicer

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




แม้ว่าตอนแรกผมจะทำช่องหน้าจอ LCD พลาดไป แต่ผมก็ได้กลับไปแก้ไขโมเดลใน Fusion 360 แล้ว ผมแค่ขี้เกียจกลับไปพิมพ์ใหม่อีกรอบ ผมจึงใช้สกรู M3 0.5 x 6mm ที่เหลืออยู่มายึดไว้ มีตัวรอง (spacer) สี่ตัวที่แต่ละมุมของช่อง LCD พร้อมรูเพื่อให้คุณสามารถยึดหน้าจอได้หากจำเป็น แต่น่าเสียดายที่ผมไม่ได้ถ่ายรูปฝาครอบเคสก่อนที่จะใส่ทุกอย่างลงไป
encoder wheel ทำหน้าที่สองอย่าง:
ปริมาณการให้อาหารหนึ่งส่วนเท่ากับ 1/6 (60 องศา) ของการหมุนวงล้อ ใช้เครื่องชั่งน้ำหนักอาหารเพื่อวัดปริมาณอาหารที่สัตว์เลี้ยงของคุณได้รับต่อการให้อาหารหนึ่งครั้ง จากนั้นปรับจำนวนส่วน (portion number) จนกว่าจะได้ช่วงที่พอใจ สำหรับผม การให้อาหารหนึ่งครั้งคืออาหารประมาณ 173 กรัม การตั้งขนาดส่วนที่ 17 ทำให้ผมได้ช่วงประมาณ 170-177 กรัมต่อครั้ง ทั้งนี้ขึ้นอยู่กับขนาดของเม็ดอาหาร (kibble) ของคุณด้วย ตรวจสอบให้แน่ใจว่า horn วางอยู่ระหว่างน็อต M3 hex nuts ทั้ง 8 ตัว



servo bracket ที่ออกแบบเองนี้ยังทำหน้าที่ยึด hall sensor และติดตั้ง Servo ลงบนแผ่นไม้ขนาด 1-1/2 x 1-1/2 นิ้ว (3.8 x 3.8 cm) ความยาวของไม้จะขึ้นอยู่กับตำแหน่งที่ Servo วางอยู่ (จะอธิบายเพิ่มเติมภายหลัง) ตัวยึดนี้มีระยะเผื่อความผิดพลาดได้ค่อนข้างมาก ดังนั้นอย่ากังวลมากเกินไปเรื่องความยาวที่ต้องเป๊ะ
ตรวจสอบให้แน่ใจว่าคุณเลือก Servo ที่มีกำลังมากพอและตั้งค่าเป็นแรงดันไฟฟ้าสูงสุด ตัวที่ผมเลือกให้แรงบิด 6.5 kg.cm ที่ 6 Volts





นี่คือส่วนประกอบของระบบส่งอาหาร อาหารจะตกลงมาจากเครื่องจ่ายผ่านกรวย ลงมาที่รางอาหาร (chute) และลงสู่ชามอาหาร แต่น่าเสียดายที่ผมไม่ได้ถ่ายรูปรางยึดก่อนติดตั้ง




*คำชี้แจง* ผมไม่ได้ถ่ายรูปทุกขั้นตอนของกระบวนการประกอบ รูปภาพบางรูปอาจข้ามขั้นตอนไปบ้าง แต่ผมจะยังคงนำเสนอขั้นตอนการประกอบโครงสร้างทีละขั้นตอน
อย่าลืมเจาะรูนำสำหรับสกรูทุกตัวที่คุณใช้ คุณคงไม่อยากให้ไม้แตก!
นี่คือเครื่องจ่ายซีเรียลที่ผมซื้อมาจาก Amazon มีบางรุ่นที่มีเครื่องจ่ายหลายตัวหากคุณมีสัตว์เลี้ยงหลายตัว แต่ผมต้องการเพียงตัวเดียว แบรนด์คือ Honey Can Do แต่ผมมั่นใจว่าแบรนด์ไหนก็ใช้งานได้เหมือนกัน

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



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



ต่อไป เราจะเริ่มสร้างฐานของโครงเครื่อง ผมนำไม้ขนาด 1/2 x 6 นิ้ว (1.27 x 15.24 cm) มาตัดเป็นสองชิ้น ชิ้นละ 8 นิ (20.32 cm) ซึ่งจะใช้เป็นฐานและแผ่นหลังของโครงเครื่องให้อาหาร ทากาวทาไม้และใช้สกรูเอนกประสงค์ 2 ตัวเพื่อต่อเข้าด้วยกันเป็นรูปตัว L คุณจะต้องเพิ่มตัวรองรับมุมฉากเพื่อเสริมความแข็งแรงให้กับจุดเชื่อมต่อแผ่นหลังและแผ่นล่าง ใช้สกรูเอนกประสงค์ 4 ตัวและกาวทาไม้เพื่อยึดเข้ากับทั้งแผ่นหลังและแผ่นล่าง ผมไม่มีรูปภาพขั้นตอนนี้ แต่คุณสามารถเห็นพวกมันได้ในรูปถัดไป

จากจุดนี้ คุณต้องตัดขาตั้งเครื่องจ่ายให้มีความสูงประมาณ 4.5 นิ้ว (11.43 cm) ไม่จำเป็นต้องเป๊ะมาก พยายามทำให้ใกล้เคียงที่สุดเท่าที่จะทำได้ ตัวกรวยมีระยะที่ช่วยให้ปรับขยับได้บ้าง เมื่อคุณตัดขาตั้งได้ขนาดแล้ว ให้วางมันพิงกับแผ่นหลังและตรวจสอบให้แน่ใจว่ามันวางราบไปกับฐาน เมื่อได้ตำแหน่งแล้ว ให้ใช้ดินสอหรือปากกาทำเครื่องหมายกึ่งกลางตรงจุดที่ช่องจ่ายอาหารของคอนเทนเนอร์จะอยู่ จากนั้นคุณจะต้องเจาะรูขนาด 2 นิ้ว (5.08 cm) ให้ทะลุแผ่นฐาน สิ่งสำคัญคือต้องวัดสองครั้งและตัดเพียงครั้งเดียวสำหรับจุดนี้ นั่นจะเป็นรูที่เห็นในรูปด้านบน
เมื่อเจาะรูที่แผ่นฐานเสร็จแล้ว เราก็พร้อมที่จะยึดขาตั้งเครื่องจ่ายเข้ากับแผ่นหลัง สิ่งที่คุณต้องทำคือวางขาตั้งชิดกับแผ่นหลัง (แสดงในรูปแรกด้านล่าง) มีพื้นที่ช่องว่างสองจุดใต้แหวนของขาตั้งเครื่องจ่าย นี่คือจุดที่คุณต้องการให้รูอยู่ (ดูรูปด้านล่าง) ใช้ดินสอหรือปากกาทำเครื่องหมายความสูงที่รูทั้งสองควรอยู่บนแผ่นหลัง คุณต้องการให้มันอยู่ใกล้กับกึ่งกลางของขาตั้งเครื่องจ่ายมากที่สุด มีสกรูสองตัวที่เชื่อมต่อแหวนด้านบนของขาตั้งเข้ากับส่วนล่างที่คุณตัดออก ระวังอย่าให้โดนสกรูเหล่านั้นตอนเจาะ ย้ำอีกครั้งว่า วัดสองครั้งและเจาะครั้งเดียว หรือสองครั้งในกรณีนี้



ตอนนี้เราเจาะรูเสร็จแล้ว เราสามารถยึดขาตั้งเข้ากับแผ่นหลังโดยใช้สลักเกลียว (hex bolts) ขนาด 5/16 นิ้ว, น็อตตัวเมีย (hex nuts) ขนาด 5/16 นิ้ว และแหวนรอง (washers) ขนาด 5/16 นิ้ว ให้ดันสลักเกลียวผ่านเข้าไปโดยตรวจสอบให้แน่ใจว่าได้ใส่แหวนรองที่ด้านหัวสลักเกลียวก่อน หลังจากที่โผล่ออกมาอีกด้านแล้ว ให้ใส่แหวนรองอีกชุดที่ด้านเกลียวแล้วเริ่มขันน็อตตัวเมียด้วยมือ ขั้นตอนนี้อาจจะยากนิดหน่อย หลังจากขันน็อตด้วยมือแล้ว คุณจะต้องใช้ประแจกระบอก (socket) เพื่อยึดน็อตและขันให้แน่นขึ้นอีกประมาณ 1/4 รอบ ระวังอย่าขันแน่นเกินไป


ตอนนี้เมื่อขาตั้งถูกยึดอย่างปลอดภัยแล้ว เราก็สามารถเพิ่มไม้ขนาด 1/2 x 1/2 นิ้วที่จะใช้สำหรับวาง Servo ได้ ความยาวของไม้นี้จะขึ้นอยู่กับตำแหน่งที่ Servo ของคุณจะวางอยู่ ให้ลองประกอบกลไกการจ่ายอาหารโดยยึด Servo เข้ากับ horn บน encoder wheel และยึด encoder wheel เข้ากับใบพัดยางภายในคอนเทนเนอร์พลาสติก วางคอนเทนเนอร์ลงในแหวนด้านบนและวัดระยะที่ Servo วางอยู่จากแผ่นฐาน ไม่ต้องกังวลว่าต้องเป๊ะมาก เพราะ servo bracket มีระยะเผื่อให้ขยับได้ค่อนข้างเยอะ ใช้กาวทาไม้และสกรูเอนกประสงค์ตัวเดียวเพื่อยึดฐานไม้



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

ขั้นตอนต่อๆ ไปคือ:
ยึด Servo เข้ากับ bracket โดยใช้สกรู M3 x 10 mm 4 ตัว และน็อต M3 hex nuts 4 ตัว เมื่อ Servo ถูกยึดแน่นแล้ว เราก็สามารถยึด bracket ลงบนขาตั้ง Servo ไม้ได้ ใช้สกรูเอนกประสงค์สองตัวเพื่อยึด bracket ลงบนขาตั้งไม้เบาๆ อย่าขันแน่นเกินไป มิฉะนั้นคุณจะทำให้ bracket เสียหาย ตรวจสอบให้แน่ใจว่าคุณทำตามลำดับขั้นตอนนั้น กรวยจะทำให้ Servo สูงขึ้นเล็กน้อยและมันจะพอดีกับปลายของคอนเทนเนอร์พลาสติก ดังนั้นจึงเป็นไปไม่ได้ที่จะใส่เข้าไปหากคอนเทนเนอร์พลาสติกวางอยู่ในขาตั้งแหวนด้านบนเรียบร้อยแล้ว




ขั้นตอนสุดท้ายคือการยึด slide-in bracket ของรางอาหารและตัวรางเอง คุณต้องการวางตำแหน่ง bracket ไว้หลังรูในแผ่นฐานเล็กน้อย ให้วางมันไปข้างหน้ามากที่สุดเท่าที่จะทำได้เพื่อให้ตัวรางพ้นจากโครงของเครื่องให้อาหาร ใช้สกรูเอนกประสงค์สองตัวเพื่อยึด bracket เข้ากับด้านล่างของแผ่นฐานโครงเครื่อง ทางที่ดีควรทำขั้นตอนนี้ขณะที่มีตัวรางอยู่ใน bracket เนื่องจาก bracket มีความยืดหยุ่นบ้าง และคุณคงต้องการให้ตัวรางกับ bracket สวมกันได้แน่นพอดี


น่าเสียดายที่ผมไม่เคยถ่ายรูปขั้นตอนการบัดกรีไว้เลย แต่ก็ไม่มีอะไรซับซ้อนมากนัก เพียงแค่บัดกรีส่วนประกอบแต่ละชิ้นเข้ากับ Pin ที่สอดคล้องกันก็ถือว่าเรียบร้อย หากคุณต้องการใช้ pin headers แทน คุณก็สามารถทำได้เช่นกัน มีระยะห่างที่เพียงพอทั้งใต้และเหนือช่องของ Arduino เพื่อให้ใส่ pins และตัวเชื่อมต่อได้ ผมแนะนำให้บัดกรีทุกอย่างเข้าด้วยกันก่อนที่จะวางส่วนประกอบทั้งหมดลงในช่องที่กำหนดไว้
ผมจ่ายไฟให้ Arduino ผ่าน unregulated external power pin (pin 30) ซึ่งต้องการแรงดันไฟฟ้าอินพุตระหว่าง 7-20 Volts เนื่องจากแรงดันไฟฟ้านี้จะถูกป้อนผ่าน regulator บนบอร์ดของ Arduino หากคุณต้องการจ่ายไฟผ่าน USB คุณเพียงแค่ต้องแน่ใจว่าคุณกำลังจ่ายไฟด้วยแรงดัน 5 Volts ไม่ใช่ 7-20 Volts
อย่าลืมบัดกรี 10k Ohm resistor ระหว่าง Vcc และ Signal pins บน hall sensor มิฉะนั้นคุณจะไม่อ่านค่าได้ นอกจากนี้อย่าลืมเชื่อมต่อส่วนประกอบทั้งหมดเข้ากับ ground ร่วมกัน (common ground) ผมทำพลาดโดยลืมเชื่อม ground ไปจุดหนึ่ง และระบบของผมทำงานได้สักพัก แต่สุดท้าย hall sensor ก็จะเริ่มล้มเหลว วันนั้นเป็นวันที่ดีมากสำหรับสุนัขของผม (เพราะได้กินเยอะเป็นพิเศษ)
สุดท้ายผมก็ได้ทำตัวเชื่อมต่อแบบสั่งทำสำหรับ hall sensor และการเชื่อมต่อ Servo ผมบัดกรีสายไฟเข้ากับ male pin headers ซึ่งส่วนนี้จะห้อยออกมาจากด้านล่างของตัวเคส สำหรับ hall sensor ผมได้ทำอะแดปเตอร์ตัวเมียแบบสั่งทำโดยการตัด ปอก และบัดกรีสาย Dupont connector สองสามเส้นที่ผมมีอยู่
สำหรับ Vcc และราง ground ผมตัดส่วนรางไฟฟ้ามาจาก perma-proto breadboard ที่เหลืออยู่ อะไรที่คล้ายกันที่คุณมีอยู่ก็สามารถใช้ได้ เพียงแค่ตรวจสอบการเชื่อมต่อของคุณให้ดีก่อนที่จะวางรางลงในช่องของมัน นี่เป็นสิ่งที่เอาออกยากที่สุดเมื่อใส่เข้าไปแล้ว ผมเรียนรู้เรื่องนี้มาด้วยวิธีที่ยากลำบากเช่นกัน






เท่านี้ก็เรียบร้อย! หวังว่าพวกคุณจะสนุกกับการสร้างสิ่งนี้เหมือนที่ผมทำ ในตอนแรกมันอาจจะดูท้าทาย แต่ยิ่งคุณลงมือทำมันมากเท่าไหร่ มันก็จะยิ่งง่ายขึ้นเท่านั้น แจ้งให้ผมทราบหากคุณมีคำถามใดๆ ขอให้สนุกกับการประดิษฐ์ครับ!
สนับสนุนเพื่อรับ Source Code หรือแอปพลิเคชันสำหรับโปรเจกต์นี้
Verified user reviews
ล็อกอินด้วยบัญชีบนเว็บนี้แล้วให้คะแนนหรือคอมเมนต์ได้เลย ระบบเก็บผ่าน Supabase ไม่ต้องใช้ GitHub แล้ว
ยังไม่มีรีวิวที่อนุมัติแล้ว เป็นคนแรกที่มาให้ความเห็นได้เลย