Talaan ng mga Nilalaman:

Tagapakain ng Proyekto: 14 Mga Hakbang
Tagapakain ng Proyekto: 14 Mga Hakbang

Video: Tagapakain ng Proyekto: 14 Mga Hakbang

Video: Tagapakain ng Proyekto: 14 Mga Hakbang
Video: TPNC S7E23 - DA-4A Organic Agriculture Program Promotion and Advocacy Point Person Crissel Tenolete 2024, Nobyembre
Anonim
Tagapakain ng Proyekto
Tagapakain ng Proyekto

Nais mo bang pakainin ang iyong mga alaga habang wala sa bahay, o mula lamang sa ginhawa ng iyong sofa? Kung gayon, para sa iyo ang proyektong ito! Ang Project Feeder ay isang bukas na proyekto ng mapagkukunan na nagbibigay-daan sa iyo upang awtomatikong pakainin ang iyong mga alaga, o manu-mano mula sa iyong telepono o pc. Maaari mo ring sundin ang isang livestream at subaybayan ang pag-uugali ng pagkain ng iyong alaga.

Bago ka magsimula!

Ang proyektong ito ay isang gawaing ginawa para sa kolehiyo at nakagapos sa oras, kaya't napaka "isinasagawa". Ito ang dahilan kung bakit alam ko na may mga bagay na maaaring mapabuti at maaaring ma-update sa hinaharap. Hinihimok ko kayo na maging malikhain, pagbutihin at palawakin ang konseptong ito.

Upang magsimula susubukan namin ang mga kinakailangan upang mabuo ang proyektong ito. Kakailanganin mo talaga ang mga kasanayan at tool na nakalista sa ibaba.

Mga kasanayan sa gumagawa:

  • 3D-print o pag-access sa isang serbisyo sa pag-print
  • Paghihinang
  • Pangunahing kaalaman sa electronics

Mga tool:

  • 3d printer
  • Panghinang
  • Mainit na baril ng pandikit, o iba pang pandikit na gumagana ng mga 3D-printer filament compound
  • Screwdrivers

Mga gamit

Ang kabuuang halaga ng pagbuo ng proyektong ito ay nasa € 120 depende sa kung saan mo binibili ang bahagi at kung anong uri ng mga diskwento ang iyong nakuha.

Mahalaga:

Ang ilang mga bahagi ay minarkahan ng "Natatanging", nangangahulugan ito na ito ay tiyak sa disenyo ng istruktura ng pagbuo at kailangan mo ng eksaktong kopya ng bahaging iyon.

Raspberry Pi 4 Model B / 2GB + 16GB (min. Kinakailangan) Micro SD card

Ang stock sa Rasberry Pi ay napaka-limitado sa ngayon, kakailanganin nito ang ilang pagtingin sa paligid.

12V 60W Power Supply Adapter

www.banggood.com/AC-100-240V-to-DC-12V-5A-…

5.5mm X 2.1mm DC Power Supply Jack Socket (Natatanging)

www.banggood.com/10pcs-5_5-x-2_1mm-DC-Powe…

DC-DC 12V To 5V 3A Buck Step Down Power Module (Natatanging)

www.banggood.com/LM2596-DC-DC-Voltage-Regu…

42mm 12V Nema 17 Dalawang Phase Stepper Motor

www.banggood.com/42mm-12V-Nema-17-Two-Phas…

L298N Dual H Bridge Module

www.banggood.com/Wh Wholesale-L298N-Dual-H-Br…

GY6180 VL6180X Oras Ng Flight Distance Sensor

www.banggood.com/GY6180-VL6180X-Time-Of-Fl…

Infrared Sensor ng Pag-iwas sa Obstacle (x3)

www.banggood.com/3Pcs-Infrared-Obstacle-Av…

USB camera

www.banggood.com/Electronic-Camera-Module-…

Backlight 16 × 2 LCD, 8051 microcontroller I2C

www.hobbyelectronica.nl/product/1602-lcd-d…

Shifter sa antas ng bidirectional

www.banggood.com/nl/Two-Channel-IIC-I2C-Lo…

Karaniwang mga resistors ng halaga (10k, 220R, 470R)

www.banggood.com/Wh Wholesale-Geekcreit-600pc…

LED's (x2)

Mga Diode (x2)

12V ON / OFF switch (Natatanging)

www.banggood.com/5pcs-12V-Round-Rocker-Tog…

Mga Nuts: 3x8mm, 3x10mm, 3x12mm

Hakbang 1: Flashing ang SD Card

Flashing ang SD Card
Flashing ang SD Card

Para sa hakbang na ito kakailanganin mong i-flash ang iyong SD card na may ibinigay na imahe:

thomy.stackstorage.com/s/KbCfVgoU0t8gU3C

Ang imahe ay nilagyan ng isang pre-build na apache web server, database at code sa interface sa feeder. Kaya't hindi mo kailangang gumawa ng anumang bagay na nagsasangkot ng pag-set up ng software.

Kung nais mong tingnan ang code, maaari mong makuha ang lahat ng kinakailangang code mula sa:

github.com/VanIseghemThomas/ProjectFeeder

Tiyaking alam mo kung paano maayos na i-flash ang SD card o huwag matakpan ang proseso dahil maaaring magresulta iyon sa isang nasirang card. Para sa pag-flashing ng card ginamit ko ang software na tinatawag na Win32DiskManager. Ang isang iba pang program na alam kong gumagana at medyo friendly ang isang user ay tinatawag na Ethcer. Parehas na gumagana nang maayos.

Hakbang 2: SSH Sa Pi

SSH Sa Pi
SSH Sa Pi

Kapag tapos na ang flashing maaari mo na ngayong ilagay ang SD card sa pi at i-on ito. Tiyaking naka-plug ka sa iyong pi gamit ang isang ethernet cable. Ngayon ay dapat na makakonekta dito gamit ang SSH sa ip 169.254.10.1. Gumagamit ako ng isang programa na tinatawag na PuTTY, ngunit kung hindi mo nais mag-install ng software maaari mong laging i-type ang sumusunod na utos sa prompt ng utos:

ssh [email protected]

Ngayon buksan ang isang session. Kapag kumokonekta sa kauna-unahang pagkakataon makakasalubong ka ng isang babala, maaari mong balewalain iyon at magpatuloy lamang. Hihilingin sa iyo na mag-log in bilang isang gumagamit at pagkatapos nito ang password, para sa imaheng ito gamitin ang mga sumusunod na kredensyal:

  • Gumagamit: feederpi
  • Password: Redeef1

Aktibo din ang gumagamit na 'pi' ngunit hindi ka makakapag-log-in dito. Ito ay dahil naka-set up ito upang awtomatikong mag-log in sa kapangyarihan at patakbuhin ang programa. Ito ang dahilan kung bakit makakaharap mo ang sumusunod kapag naka-log in:

[sudo] password para sa feederpi:

Pindutin lamang ang crtl + c at dapat mayroon ka ng shell ngayon.

I-type ngayon ang sumusunod:

sudo -i

Ngayon ay naka-log in ka bilang ugat.

Hakbang 3: Pag-set up ng Wifi

Pagse-set up ng Wifi
Pagse-set up ng Wifi

Ngayon ay naka-log in ka bilang ugat at maaaring mag-type:

wpa_passphrase "Ang iyong SSID" "Ang iyong Password" >> /etc/wpa_supplicant/wpa_supplicant.conf

Upang suriin kung naidagdag nang tama ang iyong pagsasaayos i-type ang sumusunod. Maaari mo ring tanggalin ang simpleng text password para sa seguridad kung nais mo, ngunit tiyaking i-save ang mga pagbabago sa paglabas.

nano /etc/wpa_supplicant/wpa_supplicant.conf

Ngayon ay maaari mong i-reboot ang iyong pi sa pamamagitan ng pag-type:

reboot ngayon

Ngayon bigyan ang pi ng ilang oras upang mag-boot at mag-log in muli gamit ang SSH tulad ng dati, upang makita kung mayroon kang koneksyon sa wifi na nai-type mo:

ip a

Sa ilalim ng wlan0 interace dapat mong makita ang isang bagay na katulad sa isang ip-address, nangangahulugan ito na matagumpay kang nakakonekta sa iyong wifi. Mamaya kapag ang lahat ay nai-hook up, ipapakita ng software ito sa isang LCD.

Hakbang 4: Pagpi-print ng Mga Bahagi

Ang mga bahagi na kakailanganin mo para sa proyektong ito ay matatagpuan dito:

www.thingiverse.com/thing[459996

Ang pag-print sa lahat ng mga bahaging ito ay magtatagal, kaya kakailanganin mo ng kaunting pasensya.

Ito ang mga setting na ginamit ko (PLA):

  • Taas ng layer: 0.3mm
  • Bilis ng pag-print: 50-60mm / s
  • Temp ng nozzle: 200 ° C
  • Temp temp ng kama: 60 ° C

Walang masasabi tungkol dito maliban, magsaya sa pag-print.

Hakbang 5: Pag-iipon ng Mga Bahagi (intro)

Pagtitipon ng Mga Bahagi (intro)
Pagtitipon ng Mga Bahagi (intro)
Pagtitipon ng Mga Bahagi (intro)
Pagtitipon ng Mga Bahagi (intro)

Sige ngayon nagpapatuloy kami sa pag-iipon ng lahat. Bago ko ipaliwanag ang lahat ng ito ay sasabihin ko ang ilang mga bagay na dapat tandaan at makakatulong ito sa iyo na matapos ito.

TIP 1:

Napagpasyahan kong gawin ang lahat ng mga butas na 2.5mm maliban sa 3mm tulad ng mga bolt. Ito ay upang maaari mong i-tap ang isang thread sa pamamagitan ng pag-screw sa bolts at tinanggal ang pangangailangan ng mga mani. Ang pagkuha ng bolt ay medyo mahirap, gamitin ang iyong soldering iron upang mapalawak ang tuktok, gagawing madali upang makuha ang bolt at simulan ang pag-screw.

TIP 2:

Kung tulad ko ay mababa ka sa bolts, turnilyo lamang sa mga pares na dayagonal. Makakatipid ito ng marami sa kanila at gumagana nang maayos.

Hakbang 6: Pag-iipon ng Nangungunang (Dispenser)

Pag-iipon ng Nangungunang (Dispenser)
Pag-iipon ng Nangungunang (Dispenser)
Pag-iipon ng Nangungunang (Dispenser)
Pag-iipon ng Nangungunang (Dispenser)
Pag-iipon ng Nangungunang (Dispenser)
Pag-iipon ng Nangungunang (Dispenser)

Ang mga bahagi ay inilatag tulad ng sa larawan.

Pinagsama nila ang tinatawag na 'plate'. Ang isa sa mga plato ay nagtitipon sa iyong stepper motor.

Siguraduhin na ang tuktok ng mga bolts ay may flush sa ibabaw, kung hindi ang pag-feed ay mai-block up. Dapat mong gamitin ang 3x8mm bolts para dito at ang modelo ng "Stepper_offset" sa pagitan ng stepper at labas ng plato.

Ngayon ilagay ang mill sa stepper, dapat itong magpatuloy na medyo madali. Kung hindi, maaari kang gumamit ng ilang vaseline.

Ang natitira ay medyo tuwid, kumuha lamang ng isang turnilyo kung saan nakakita ka ng isang butas.

Hakbang 7: Pag-iipon ng Nangungunang (Lalagyan)

Pag-iipon ng Nangungunang (Container)
Pag-iipon ng Nangungunang (Container)
Pag-iipon ng Nangungunang (Lalagyan)
Pag-iipon ng Nangungunang (Lalagyan)
Pag-iipon ng Nangungunang (Lalagyan)
Pag-iipon ng Nangungunang (Lalagyan)

Narito makikita mo kung paano ko ginawa ang aking lalagyan. Ang canister ay orihinal na ginagamit para sa mga tuyong piraso ng unyon.

Sa tuktok, nais mong ikabit ang TOF-sensor, ang isang ito ay gagamitin upang sukatin kung magkano ang natitirang pagkain sa lalagyan. Sa mga larawan makikita mo kung paano ko ito naidikit. Una natunaw ko ang mga butas para sa mga pin gamit ang aking bakal na panghinang, pagkatapos ay nakadikit ang sensor sa lugar na may ilang mainit na pandikit habang ang mga kable ay konektado.

Para sa pagsasara ng lalagyan gumawa ako ng 2 butas gamit ang aking panghinang at sinukat sa 2 bolts. Ang isang goma, zip tie o wire ay maaaring magamit upang isara ito sa ganoong paraan.

Hakbang 8: Pagtitipon sa Ibabang

Pagtitipon sa Ibabang
Pagtitipon sa Ibabang
Pagtitipon sa Ibabang
Pagtitipon sa Ibabang
Pagtitipon sa Ibabang
Pagtitipon sa Ibabang

Para sa paglalagay ng iba't ibang mga module na sanggunian ang mga larawan, ang mga ito ay medyo nagpapaliwanag. Ang bahagi ng mga larawang ito ay mayroon nang mga kable sa kanila, dapat mong tingnan ito sa ngayon. Ang mga larawan kung saan kinunan sa gitna ng pagbuo ng proyektong ito. Sa una ang plano ay upang ilagay sa isang cell ng pag-load at timbangin ang pagkain ngunit dahil sa aking pag-load ng cell ng load sa huling sandali, kailangan kong i-scrap ang tampok na iyon at palitan ito ng isang live na video stream na medyo maayos din. Ang pagpipilian ay palaging naroon upang magdagdag ng isang cell ng pag-load, ngunit kakailanganin mong maghukay sa code at mag-edit ng ilang bagay.

Hakbang 9: Electronics, Sensors at Actuator

Electronics, Sensors at Actuator
Electronics, Sensors at Actuator
Electronics, Sensors at Actuator
Electronics, Sensors at Actuator
Electronics, Sensors at Actuator
Electronics, Sensors at Actuator
Electronics, Sensors at Actuator
Electronics, Sensors at Actuator

Ngayon ay oras na upang ilagay ang soldering iron. Nagbigay ako ng 2 representasyon ng kung ano ang kailangan mong gawin, isang karaniwang iskemang de-kuryente, isang representasyong visual. Masidhi kong iminumungkahi na gamitin mo ang iskematikong elektrikal sapagkat nagbibigay ito ng maraming higit pang pananaw sa kung paano gumagana ang lahat at nakakonekta sa bawat isa sa aking palagay. Ang tanging dahilan lamang na narito ang isa pa, ay dahil sapilitan ito. Dahilan sinabi ko ito, ay dahil walang buong puwang para sa mga cable, kaya't kailangan mong maging mahusay sa mga kable na GND, + 5V, atbp na nakasalalay sa kung paano mo nais patakbuhin ang iyong mga kable. Kaya't huwag wire ang lahat nang eksakto sa bawat isa tulad ng eskematiko, gagana ito ngunit hindi magkakasya.

Para sa switch na makikita mong na-wire ko ang lahat ng 3 ng mga lead, ito ay dahil ang switch ay may built-in na LED na nagpapahiwatig kung ang kapangyarihan ay nakabukas. Ang 2 walang kulay na mga lead ay kumikilos bilang switch, ang kulay na tingga ay pupunta sa GND.

Sa pangkalahatan ito ang order na na-wire ko ang lahat:

  1. Seksyon ng kuryente: power jack, h-bridge, boost buck converter, switch
  2. Raspberry Pi (Tingnan ang susunod na hakbang para sa karagdagang impormasyon)
  3. IR-sensor
  4. LED's
  5. Mga input ng stepper
  6. I2C na bahagi: 3.3V, SDA, SCL

Ito ay hindi mahalaga ngunit kapaki-pakinabang upang magkaroon ng isang prototyping pcb na inilalagay sa paligid ng panghinang tulad ng ginawa ko.

Gayundin huwag kalimutang i-hook up ang camera sa isang USB port ng pi.

Mahalaga:

Tiyaking ayusin ang boost buck converter sa 5V bago i-hook up ang 5V na bahagi ng circuit. Iba pa maaari mong patakbuhin ang panganib na iprito ang lahat. Upang ayusin ito buksan mo ang potensyomiter at tingnan ang readout ng boltahe sa screen.

Hakbang 10: Electronics, Raspberry Pi

Electronics, Raspberry Pi
Electronics, Raspberry Pi

Dahil sa mga limitasyon sa software upang iguhit ang eskematiko hindi ako nakaguhit kung paano i-hook up ang raspberry pi.

Para sa + 5V maaari ka lamang mag-wire sa 5V pin ng pi, ngunit daanan nito ang kaligtasan tulad ng piyus. Kung titingnan mo sa ibaba dapat mong makita ang ilang mga pad na may label na TPxx, sa aming kaso naghahanap kami para sa TP1 o TP2. Paghinang ng iyong + 5V na humantong sa isa sa mga ito ngunit mag-ingat na huwag tulay sa iba pang mga bakas. Malamang na maaalis din nito ang warranty. Personal kong sinubukan ang hooking ito sa parehong mga pad ng pagsubok at dumating sa konklusyon marahil ito ang pinakamadali at pinakaligtas na gamitin ang TP2, malayo ito sa iba pang mga nakalantad na pad at walang maraming mga bakas sa paligid nito.

Para sa GND kumuha lamang ng isa sa mga pin sa itaas tulad ng mga eskematiko na palabas, ito ay perpektong pagmultahin ngayon.

Hakbang 11: Pagsubok sa Elektronika

Kapag ang lahat ay nai-hook up nang tama ito ay mahusay na kasanayan upang unang subukan ang lahat bago ganap na tipunin ang lahat.

Narito ang isang checklist:

  • Ipinapakita ang IPV4 address sa lcd
  • Makakakonekta sa IP sa pamamagitan ng browser
  • Nagawang i-on ang stepper sa pamamagitan ng "pagpapakain" at makita ang ilaw ng LED
  • Basahin at i-update ang katayuan ng lalagyan
  • Live na stream mula sa camera
  • Pagtuklas ng mga kaganapan sa pagkain

Pag-troubleshoot:

Inililista ko rito ang ilan sa mga problemang nakuha ko at kung paano ayusin ang mga ito.

- Ang aking LCD ay nag-iilaw ngunit walang ipinapakita:

1) Sa oras ng pagsulat nito, kailangan ng pi ng halos 2 minuto upang ganap na mag-boot kaya't bibigyan mo ito ng dagdag na oras.

2) Hindi mo nakakonekta nang tama ang LCD mo. Maaari mong makita kung ikinonekta mo ito nang tama sa pamamagitan ng pag-type ng sumusunod na utos sa isang shell:

sudo i2cdetect -y 1

Kailangan nitong ibalik ang 2 mga address: 0x27 (= LCD) at 0x29 (= TOF sensor). Kung ang 0x27 ay hindi magpapakita kailangan mong suriin ang mga kable ng lcd. Kung kapwa hindi nagpapakita, kailangan mong suriin ang mga kable ng mga pin ng SDA at SCL. Hal. suriin kung pinagpalit mo ang dalawa nang hindi sinasadya. Pinakamasamang kaso na nagawa mong mali sa 2 indibidwal na mga sangkap o may nasira.

- Ang aking LCD ay natigil sa "Pagkonekta sa WiFi"

Nangangahulugan ito na ang iyong pi ay natigil sinusubukan upang kumonekta sa isa sa mga network na na-configure mo upang kumonekta. Nangangahulugan ito na alinman wala ka sa saklaw ng acces point o gumawa ka ng isang mali habang nag-configure hal. isang typo. Sa kasong iyon bumalik sa "Pagse-set up ng WiFi" at ulitin ito muli.

Ang software ay naka-set up din upang kumonekta sa mga network ng bahay na may isang IP address na nagsisimula sa "192.168". Kung ang iyong network ay na-set up sa isang iba pang mga pribadong saklaw tulad ng "10.0" o "172.16" kailangan mong pumunta sa /home/pi/project/main.py at sa pagpapaandar get_ips () baguhin: kung "192.168" sa ip kung "Ang iyong pribadong saklaw dito" sa ip.

- Ipinapakita ng aking LCD ang ip ngunit hindi ako makakonekta:

1) Siguraduhin na kumokonekta ka sa 192.168. X. X ip, ang iba pang ip 169.254.10.1 ay laging naka-configure upang kumonekta sa paglipas ng ethernet diretso sa iyong pc. Hindi ito gagana kung hindi ka naka-plug in.

2) Tiyaking nasa parehong network ka, o pinagana mo ang pagpapasa ng port sa iyong network kung nais mong i-access ang feeder mula sa labas ng network.

- Ang stepper ay nanginginig at hindi lumiliko:

Nangangahulugan ito na hindi mo wastong naidugtong ang mga input o output ng dalawahang H-tulay. Subukang palitan ang mga ito hanggang sa ito ay gumagana.

Hakbang 12: Pagkumpleto

Pagkumpleto
Pagkumpleto
Pagkumpleto
Pagkumpleto
Pagkumpleto
Pagkumpleto
Pagkumpleto
Pagkumpleto

Ngayon naisip mo kung paano tatakbo ang lahat, oras na upang pagsamahin ang lahat. Kailangan kong isama ang 2 bahagi kasama ang tape, ito dahil ang disenyo ng mga butas ay hindi sapat na matibay upang hawakan ang pag-igting at basag ito para sa akin. Ito ay isang pangunahing bagay na dapat mapabuti sa hinaharap. Ang isang mas malinis na pagpipilian ay idikit lamang ang dalawang bahagi nang magkasama ngunit maaaring ito ay isang problema kapag ang isang bagay sa loob ay nasira at nais mong makakuha ng access sa loob. Iyon ang dahilan kung bakit nagpunta ako gamit ang mahusay na lumang electrical tape.

Kapag nagpunta ka sa website dapat kang masalubong ng isang dashboard kung saan maaari kang gumawa ng mga bagay tulad ng manu-manong pagpapakain, suriin ang katayuan, tumingin sa data at magdagdag ng mga preset.

Hakbang 13: Dagdag: Extension ng Chrome

Dagdag: Extension ng Chrome
Dagdag: Extension ng Chrome
Dagdag: Extension ng Chrome
Dagdag: Extension ng Chrome
Dagdag: Extension ng Chrome
Dagdag: Extension ng Chrome

Kung hindi mo nais na mag-browse sa dashboard at nais lamang na mabilis na suriin ang katayuan o feed maaari mong gamitin ang extension ng Chrome. Dahil sa wala ito sa opisyal na web store ng Chrome, kakailanganin mong i-load ito tulad ng pagbuo mo ng gayong pakete.

Siguraduhin muna na i-download mo ang folder ng Extension ng Feeder mula sa direktoryo ng github:

github.com/VanIseghemThomas/ProjectFeeder

Pumunta sa sumusunod na URL:

chrome: // mga extension /

Kapag nandiyan, paganahin ang mode ng developer at i-load ang folder ng extension. Ngayon dapat itong lumitaw bilang isang extension.

Kung hindi ito lilitaw sa iyong Chrome bar maaari mo itong makita sa menu ng Chrome.

Hakbang 14: Ang Software

Ang software
Ang software

Kung nais mong mag-tinker gamit ang software o para sa ilang kadahilanan na kailangan ng isang bagong kopya ng isang file, ang lahat ng mga file na kailangan mo ay matatagpuan sa GitHub na lugar na ginawa ko:

Nagbigay din ako ng isang EER-eskematiko para sa database, kung sakaling gusto mong magdagdag ng mga tampok sa API. Ang isang pagtapon ng database ay matatagpuan sa GitHub repository pati na rin. Ang lahat ng backend code ay nakasulat sa Python. Ginagamit ang Flask para sa pagruruta at Socket.io para sa websockets.

Inirerekumendang: