Talaan ng mga Nilalaman:
- Mga gamit
- Hakbang 1: Pangkalahatang-ideya ng Disenyo
- Hakbang 2: Pangkalahatang-ideya ng Code
- Hakbang 3: Paglalakip sa Nema 17 sa Base Plate at Auger
- Hakbang 4: Mga kable L298N & RTC
- Hakbang 5: Pag-coding Sa Mga Komento
- Hakbang 6: Mga problema at Paano Ko Inayos ang mga Ito
Video: Auto Dog Feeder: 6 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:10
Ito ang aking proyekto ng isang Auto Pet Feeder. Ang pangalan ko ay Parker nasa Baitang 11 ako at ginawa ko ang proyektong ito noong Nobyembre 11 2020 bilang isang CCA (Aktibong Culminating na Aktibidad) sa proyektong ito ay ipapakita ko sa iyo kung paano gumawa ng isang Awtomatikong Tagapakain ng Alagang Hayop sa Arduino UNO. Maaari kang pumili ng oras kung saan maaari mong baguhin. Ang pagkain ay magtatapon sa pamamagitan ng isang auger at pakainin ang iyong mga alagang hayop!
Mga gamit
Elektronikong:
- Arduino UNO
- L298N - 10 $ - Kinokontrol ang Nema 17
- NEMA 17 - 10 $ - Pinapalitan ang auger kaya't ang mga pagkain ay naipamahagi
- RTC (DS1307) - 10 $ - Nagbibigay ng oras
- 12V Power Supply - 5 $ - Pinapagana ang lahat
- Mini Breadboard - Para sa labis na puwang ng mga kable
- Jumper Wires - Kumokonekta sa lahat
- Babae sa Mga kawad na lalaki - Kumokonekta sa lahat
Hardware:
- 3D filament ng pag-print - para sa 3d printer
- 2 M4 Bolts - Hawakan ang base plate sa lugar
- 4 Nema 17 bolts - I-hold down ang nema
- Ang PVC T 48mm sa loob ng sukat na 66mm sa labas ng sukat - 3 $
Mga tool:
- 3d printer
- Drill
- Baril na panghinang
Hakbang 1: Pangkalahatang-ideya ng Disenyo
Ang disenyo ng pet feeder ay napaka-simple. Ang isang hopper ay papunta sa tuktok ng PVC T. Pagkatapos ng isang takip ay pupunta sa likod ng PVC T (tulad ng ipinakita sa larawan) na may nakakabit na Nema 17 dito. Pagkatapos ang Nema 17 ay itutulak sa likuran ng Auger na makikita sa itaas at isang bolt ang pupunta sa gilid upang hawakan ito sa lugar upang hindi ito makapangit ng butas na makikita sa itaas!
Pagkatapos ay itutulak lamang ng auger ang pagkain mula sa tubo at sa isang mangkok!
Hakbang 2: Pangkalahatang-ideya ng Code
Ang RTC & Ang stepper ay may libaryong tinatawag na RTClib.h at Stepper.h na nagdaragdag ng pinasimple na code para sa RTC & Stepper. Ang kung pahayag ay napaka-simple sinasabi nito kung ang oras at minuto ay katumbas ng nasabing oras ay paikutin nito ang nema na magbibigay ng pagkain. Ang natitirang code ay napakadaling maintindihan kahit para sa isang taong may karanasan sa araw.
Hakbang 3: Paglalakip sa Nema 17 sa Base Plate at Auger
Una nais mong kunin ang iyong base plate at ilakip ito sa iyong Nema 17 gamit ang mga premade hole sa base plate. Kapag tapos na nais mong ikabit ang auger sa Nema gamit ang butas sa likuran dito. Pagkatapos ay ikonekta ang Base plate na may auger at Nema na nakakabit pagkatapos ay i-tornilyo ang M2 bolts sa bawat panig.
Hakbang 4: Mga kable L298N & RTC
Sasabihin sa iyo ng hakbang na ito kung paano i-wire ang L298N & RTC
Magsisimula kami sa mga pin na 8, 9, 10, 11 hanggang sa L298N
- I-pin ang 8 (Puti) sa IN1
- Pin 9 (Lila) hanggang IN2
- I-pin ang 10 (Pink) sa IN3
- PIN 11 (Dilaw) hanggang IN4
Susunod na ikonekta namin ang Nema 17 sa L298N
- OUT1 hanggang 1 sa NEMA
- OUT2 hanggang 2 sa NEMA
- OUT3 hanggang 3 sa NEMA
- OUT4 hanggang 4 sa NEMA
Pagkonekta ng 12v at Arduino sa L298N (Hindi mahanap ang 12V kaya isipin ang baterya ng 9V bilang lakas)
- Volts hanggang 12V
- Ground sa GND
- 5V hanggang 5V sa Breadboard
Pagkonekta sa RTC sa Arduino
- GND sa GND
- 5V hanggang 5V sa Breadboard
- SDA hanggang A5
- SCL hanggang A4
Jumper Pins
Ang lahat ng mga jumper pin ay dapat na nasa L298N
Hakbang 5: Pag-coding Sa Mga Komento
Ang code ay mas malinaw sa mga imahe sa itaas
// Pangalan: Parker Frederick
// Project Name: Auto Pet Feeder // Date: Tuesday, November 10 2020 // Teacher: M. Bonisteel // Desc: Pakainin ang iyong mga alagang hayop sa nasabing oras!
// Libaries para sa mga bagay na ginamit ko # isama ang # isama ang # isama ang "RTClib.h"
RTC_DS1307 rtc; // Sinasabi kung ano ang ginagamit ng RTC im
// Dito mo itinakda ang oras para sa pagkain
// Hours int mornFeedTime = 12; int nightFeedTime = 7; // Minutes int mornFeedTimeM = 29; int nightFeedTimeM = 00; // Seconds int mornFeedTimeS = 20; int nightFeedTimeS = 00;
char daysOfTheWeek [7] [12] = {"Sunday", "Monday", "Tuesday", "Wedsneday", "Huwebes", "Friday", "Saturday"}; // Ginagawang normal na araw ang mga araw ng linggo
const int feed = 200; // Ito ang iyong mga hakbang upang kung gaano karaming beses mo nais itong paikutin
Stepper myStepper (feed, 8, 9, 10, 11); // Ang iyong mga pin para sa Nema 17 at karamihan sa iba pang mga stepper
void setup () {Serial.begin (9600);
habang (! Serial); // Kung hindi gumagana ang RTC ipapakita ito sa serial screen kung (! Rtc.begin ()) {Serial.println ("Hindi mahanap ang RTC"); habang (1); }
// Sasabihin nito sa iyo kung tumatakbo o hindi ang Real Time Clock at ipapakita ito sa serial screen kung (! Rtc.isrunning ()) {Serial.println ("Tumatakbo ang RTC!");
rtc.adjust (DateTime (F (_ DATE_), F (_ TIME_))); // Dadalhin ang oras ng iyong computer at gagamitin ito sa RTC
// Kung nais mong magkaroon ng isang itinakdang oras sa halip na oras ng computer maaari mo itong gawin dito //rtc.adjust(DateTime(2020, 10, 29, 8, 28, 0)); // Year / Month / Day / Hour / Minute / Second} myStepper.setSpeed (200); // Bilis na nais mong lumiko ito sa}
void loop () {DateTime now = rtc.now ();
// Gagawin nitong variable ang oras na ito ngayon at iba pa int hr = now.hour (); int mi = now.minute (); int se = now.second ();
// Code kaya sa itinakdang oras ibibigay nito ang pagkain at magsulid ito ng 5 beses, kung ito para sa feed sa umaga
kung (hr == mornFeedTime && mi == mornFeedTimeM && mornFeedTimeS == se) {Serial.println ("Almusal!"); myStepper.step (-feed); pagkaantala (700);
myStepper.step (-feed); pagkaantala (700);
myStepper.step (-feed); pagkaantala (700);
myStepper.step (-feed); pagkaantala (700);
myStepper.step (-feed); pagkaantala (700);
myStepper.step (-feed); pagkaantala (700);
myStepper.step (-feed); pagkaantala (700);
}
// Code kaya sa itinakdang oras itatapon ang pagkain at ito ay iikot ng 5 beses, ito ay para sa feed ng oras sa gabi
kung (hr == nightFeedTime && mi == nightFeedTimeM && nightFeedTimeS == se) {Serial.println ("Dinner!"); myStepper.step (-feed); pagkaantala (700);
myStepper.step (-feed); pagkaantala (700);
myStepper.step (-feed); pagkaantala (700);
myStepper.step (-feed); pagkaantala (700);
myStepper.step (-feed); pagkaantala (700);
myStepper.step (-feed); pagkaantala (700);
myStepper.step (-feed); pagkaantala (700); }
// Ipapakita nito ang TAON, MONTH, DAY, HOUR, MINute, SECOND sa serial
Serial.print (now.year (), DEC); Serial.print ('/'); Serial.print (now.month (), DEC); Serial.print ('/'); Serial.print (ngayon.day (), DEC); Serial.print ("("); Serial.print (daysOfTheWeek [now.dayOfTheWeek ()]); Serial.print (")"); Serial.print (ngayon.hour (), DEC); Serial.print (':'); Serial.print (now.minute (), DEC); Serial.print (':'); Serial.print (ngayon.second (), DEC); Serial.println (); }
Website na ginamit ko para sa RTC Tinanggal ko ang karamihan sa mga bagay maliban sa kung ang mga pahayag na nagsasabi kung naka-on o hindi ang RTC. Pangunahin kong ginamit ang website na ito upang malaman kung paano iprograma ang RTC
Website na ginamit ko para sa Stepper motor na ito ay nakatulong sa akin na maunawaan kung paano i-program ang stepper upang patakbuhin wala talaga akong itinatago mula rito. Nakatulong lang ito sa akin na maunawaan kung paano ito mai-code
Hakbang 6: Mga problema at Paano Ko Inayos ang mga Ito
Ilang problema ko
- Kailangan ko ng 12v power supply, mayroon lamang akong 9v na baterya na nakita ko ang isa at mabilis itong nalutas.
- Kapag na-hook up ang L298N sa NEMA 17 Nagkamali ako ng mga wire sa A at A- na medyo nag-jitter. Inayos ko lang ito sa pamamagitan ng pagbabago ng mga wire sa ibang paraan.
- Sinubukan na gawing mas simple ang code dahil sa kung pahayag na myStepper.step (-feed); paulit-ulit na mukhang magulo. Kaya't kailangan kong baguhin ito.
- Nagkaroon ako ng maling sukat na base plate tulad ng nakikita sa larawan kaya kailangan kong mag-print ng 3D ng bago nang kaunti at magkasya itong perpekto!
- Ang problema ko ay ang mga jam dahil ang auger ay maliit kaya't ito jams simpleng paraan na maaari kong ayusin ay sa pamamagitan ng pagpapalaki ng auger ng isang maliit na halaga!
Inirerekumendang:
Arduino Uno Fish Feeder sa 6 Murang at Madaling Mga Hakbang !: 6 Mga Hakbang
Arduino Uno Fish Feeder sa 6 Murang at Madaling Mga Hakbang !: Kaya't kakailanganin ng kaunting backstory para sa proyektong ito. Ang mga taong may alagang hayop ay malamang na nailahad ng parehong problema sa akin: mga bakasyon at pagkalimot. Patuloy kong nakalimutan na pakainin ang aking isda at palaging nag-agawan na gawin ito bago ito mapunta sa
Dog Dog Trainer: 5 Hakbang
Dog Dog Trainer: Ayon sa AKC, (https://www.akc.org/expert-advice/nutrition/how-many-times-a-day-should-a-dog-eat/) ang laki ng bahagi ng pagkain para sa ang mga feed ay mahalaga sa mga aso, at ang laki ng kahon ay limitado rin sa bilang ng mga feed na maaaring kainin ng aso sa isang araw, "Vet
Alexa Controlled Dog Feeder: 6 Mga Hakbang (na may Mga Larawan)
Alexa Controlled Dog Feeder: Ito ang aming aso na si Bailey. Bahagi siya ng Border Collie at Australian Cattle Dog kaya't minsan mas matalino siya kaysa sa kanyang sariling kabutihan, lalo na pagdating sa pagsasabi ng oras at pag-alam kung kailan siya dapat kumain ng hapunan. Karaniwan, sinusubukan naming pakainin siya ng bandang 6 PM
Human Auto Feeder 0.5: 9 Mga Hakbang
Human Auto Feeder 0.5: Maligayang pagdating sa aking kauna-unahang itinuturo tungkol sa paggawa ng isang (sh * tty) feeder bot! Sa itinuturo na ito, susubukan ko ang aking makakaya upang ipaliwanag kung paano ko ginawa ang bot na ito nang sunud-sunod sa mga kinakailangang pamamaraan, materyales at tool! Ang talaan ng mga nilalaman: Mga Materyales & T
Pinapagana ng Arduino Dog Dog Dispenser: 10 Hakbang (na may Mga Larawan)
Pinapagana ng Arduino Powered Dog Food Dispenser: Kung ang iyong bahay ay tulad ng sa akin, ang ilang mga gawain ay maaaring makalimutan kapag nagmamadali. Huwag hayaan ang iyong alagang hayop na nakakalimutan! Ang automated dog food dispenser na ito ay gumagamit ng isang Arduino upang maihatid ang tamang dami ng kibble sa tamang oras. Lahat ng pa