Sadržaj:

Feeder projekta: 14 koraka
Feeder projekta: 14 koraka

Video: Feeder projekta: 14 koraka

Video: Feeder projekta: 14 koraka
Video: Леонид Корыткин – Хата на тата 7 сезон. Выпуск 14 от 26.11.2018 2024, Novembar
Anonim
Feeder projekta
Feeder projekta

Jeste li ikada htjeli nahraniti svoje ljubimce izvan kuće ili samo iz udobnosti svoje sofe? Ako je tako, ovaj projekt je za vas! Project Feeder je projekt otvorenog koda koji vam omogućuje da hranite svoje ljubimce automatski, ili ručno s telefona ili računara. Također možete pratiti prijenos uživo i pratiti prehrambeno ponašanje vašeg ljubimca.

Prije nego počnete!

Ovaj projekt je zadatak za fakultet i bio je vremenski ograničen, tako da je vrlo "nedovršen". Zato sam svjestan da postoje stvari koje se mogu poboljšati i koje bi se mogle ažurirati u budućnosti. Potičem vas da budete kreativni, poboljšate i proširite ovaj koncept.

Za početak ćemo preći preko uslova za izgradnju ovog projekta. Zaista će vam trebati dolje navedene vještine i alati.

Vještine stvaraoca:

  • 3D štampanje ili pristup usluzi štampanja
  • Lemljenje
  • Osnovno znanje o elektronici

Alati:

  • 3D štampač
  • Lemilica
  • Pištolj za vruće ljepilo ili drugo ljepilo koje djeluje na mješavinu vlakana 3D štampača
  • Odvijači

Supplies

Ukupni troškovi izgradnje ovog projekta su oko 120 €, ovisno o tome gdje kupujete dio i kakve popuste ostvarujete.

Bitan:

Neki dijelovi su označeni sa "Unique", što znači da je specifično za konstrukcijski dizajn građevine i potrebna vam je tačna kopija tog dijela.

Raspberry Pi 4 model B / 2GB + 16GB (min. Zahtjev) Micro SD kartica

Zalihe na Rasberry Pi -u su trenutno vrlo ograničene, za to će biti potrebno malo razgledavanja.

12V 60W adapter za napajanje

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

Utičnica za napajanje istosmjernom strujom 5,5 mm X 2,1 mm (jedinstvena)

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

DC-DC 12V do 5V 3A Buck Step Down modul napajanja (jedinstveno)

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

42mm 12V Nema 17 Dvofazni koračni motor

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

L298N Dvostruki H mostni modul

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

GY6180 VL6180X Senzor udaljenosti vremena leta

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

Infracrveni senzor za izbjegavanje prepreka (x3)

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

USB kamera

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

Pozadinsko osvetljenje 16 × 2 LCD, 8051 mikrokontroler I2C

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

Dvosmjerni mjenjač nivoa

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

Otpornici uobičajene vrijednosti (10k, 220R, 470R)

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

LED diode (x2)

Diode (x2)

Prekidač za uključivanje/isključivanje 12V (jedinstveno)

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

Matice: 3x8mm, 3x10mm, 3x12mm

Korak 1: Bljeskanje SD kartice

Treptanje SD kartice
Treptanje SD kartice

Za ovaj korak morat ćete zamijeniti SD karticu s ponuđenom slikom:

thomy.stackstorage.com/s/KbCfVgoU0t8gU3C

Slika dolazi opremljena sa unaprijed izgrađenim apache web serverom, bazom podataka i kodom za povezivanje sa ulagačem. Dakle, ne morate učiniti ništa što uključuje postavljanje softvera.

Ako želite pogledati kôd, sav potreban kôd možete dobiti sa:

github.com/VanIseghemThomas/ProjectFeeder

Uvjerite se da pravilno bljeskate SD karticu ili nemojte prekidati proces jer to može dovesti do oštećenja kartice. Za prebacivanje kartice koristio sam softver koji se zove Win32DiskManager. Drugi program za koji znam da radi i koji je malo prilagođeniji korisniku zove se Ethcer. Oboje rade podjednako dobro.

Korak 2: SSH u Pi

SSH u Pi
SSH u Pi

Kad treptanje završi, sada možete umetnuti SD karticu u pi i uključiti je. Provjerite jeste li priključeni na svoj pi pomoću Ethernet kabela. Sada biste se trebali moći povezati s njim pomoću SSH -a s ip 169.254.10.1. Koristim program pod nazivom PuTTY, ali ako vam se ne sviđa instaliranje softvera, uvijek možete unijeti sljedeću naredbu u naredbeni redak:

ssh [email protected]

Sada otvorite sesiju. Prilikom prvog povezivanja naići ćete na upozorenje, to možete zanemariti i samo nastaviti. Od vas će se tražiti da se prijavite kao korisnik, a nakon toga lozinku, za ovu sliku koristite sljedeće vjerodajnice:

  • Korisnik: feederpi
  • Lozinka: Redeef1

Korisnik 'pi' je također aktivan, ali nećete se moći prijaviti kao on. To je zato što je postavljen za automatsko prijavljivanje na napajanje i pokretanje programa. Zbog toga ćete prilikom prijavljivanja naići na sljedeće:

[sudo] lozinka za feederpi:

Samo pritisnite crtl+c i sada biste trebali imati ljusku.

Sada upišite sljedeće:

sudo -i

Sada ste prijavljeni kao root.

Korak 3: Postavljanje Wi -Fi -ja

Postavljanje Wi -Fi -ja
Postavljanje Wi -Fi -ja

Sada ste prijavljeni kao root i možete upisati:

wpa_passphrase "Vaš SSID" "Vaša lozinka" >> /etc/wpa_supplicant/wpa_supplicant.conf

Da biste provjerili je li vaša konfiguracija ispravno dodana, upišite sljedeće. Ako želite, možete i izbrisati lozinku za običan tekst radi zaštite, ali svakako sačuvajte promjene po izlasku.

nano /etc/wpa_supplicant/wpa_supplicant.conf

Sada možete ponovo pokrenuti svoj pi upisivanjem:

restartujte sada

Sada dajte pi -u neko vrijeme da se podigne i ponovo se prijavi sa SSH -om kao i prije, da provjerite imate li vezu s WiFi -jem koji upisujete:

ip a

Ispod wlan0 interakcije trebali biste vidjeti nešto slično s ip adresom, to znači da ste se uspješno povezali na svoj WiFi. Kasnije, kada se sve spoji, softver će to prikazati na LCD -u.

Korak 4: Odštampajte delove

Dijelovi koji će vam trebati za ovaj projekt nalaze se ovdje:

www.thingiverse.com/thing:4459996

Štampanje svih ovih dijelova će potrajati pa će vam trebati malo strpljenja.

Ovo su postavke koje sam koristio (PLA):

  • Visina sloja: 0,3 mm
  • Brzina štampe: 50-60mm/s
  • Temperatura mlaznice: 200 ° C
  • Temperatura kreveta: 60 ° C

Nema se šta puno reći o ovome osim, zabavite se sa štampanjem.

Korak 5: Sklapanje dijelova (uvod)

Sklapanje dijelova (uvod)
Sklapanje dijelova (uvod)
Sklapanje dijelova (uvod)
Sklapanje dijelova (uvod)

U redu, sada idemo na sastavljanje svega. Prije nego što sve objasnim, preći ću na neke stvari koje treba imati na umu, a koje će vam pomoći da ovo obavite.

SAVJET 1:

Odlučio sam sve rupe napraviti 2,5 mm osim 3 mm poput vijaka. To je tako da možete nabosti navoj uvrtanjem vijaka i eliminirati potrebu za maticama. Umetanje vijka je prilično teško, upotrebite lemilicu za proširenje vrha, što će olakšati umetanje vijka i početak uvrtanja.

SAVJET 2:

Ako vam kao meni nedostaje vijaka, samo uvrnite dijagonalne parove. Ovo ih mnogo štedi i radi dobro.

Korak 6: Sastavljanje gornjeg dijela (dozatora)

Sklapanje vrha (dozator)
Sklapanje vrha (dozator)
Sklapanje vrha (dozator)
Sklapanje vrha (dozator)
Sastavljanje vrha (dozator)
Sastavljanje vrha (dozator)

Delovi su raspoređeni kao na slici.

Drže ih zajedno takozvane 'ploče'. Jedna od ploča montira se na vaš stepper motor.

Pazite da gornji dio vijaka bude u ravnini s površinom, u protivnom će se ulaganje blokirati. Za ovo biste trebali koristiti vijke 3x8 mm i model "Stepper_offset" između stepera i vanjske strane ploče.

Sada stavite mlin na steper, to bi trebalo ići prilično lako. U suprotnom bi vam poslužio vazelin.

Ostatak je prilično naprijed, samo uzmite zavrtanj gdje pronađete rupu.

Korak 7: Sklapanje gornjeg dijela (spremnika)

Sklapanje vrha (kontejnera)
Sklapanje vrha (kontejnera)
Sklapanje vrha (kontejnera)
Sklapanje vrha (kontejnera)
Sklapanje vrha (kontejnera)
Sklapanje vrha (kontejnera)

Ovdje vidite kako sam napravio svoj kontejner. Kanister se izvorno koristi za osušene komade spoja.

Na vrhu želite spojiti TOF-senzor, ovaj će se koristiti za mjerenje koliko hrane je ostalo u spremniku. Na slikama možete vidjeti kako sam ih pričvrstio. Prvo sam lemilicom otopio rupe za pinove, a zatim zalijepio senzor na mjestu vrućim ljepilom dok su kabeli spojeni.

Za zatvaranje kontejnera napravio sam lemilicom 2 rupe i uvrnuo 2 vijka. Gumena traka, patentni zatvarač ili žica mogu se koristiti za zatvaranje na taj način.

Korak 8: Sklapanje dna

Sklapanje dna
Sklapanje dna
Sklapanje dna
Sklapanje dna
Sklapanje dna
Sklapanje dna

Za postavljanje različitih modula, pogledajte slike, prilično su razumljive. Dio ovih slika već ima ožičenje, trebali biste za sada pogledati pored toga. Slike su nastale usred razvoja ovog projekta. U početku je plan bio staviti mjernu ćeliju i izvagati hranu, ali zbog toga što mi se pojačalo pojačalo mjerne ćelije u posljednjem trenutku, morao sam ukinuti tu funkciju i zamijeniti je video prijenosom uživo koji je također prilično uredan. Opcija uvijek postoji za dodavanje mjerne ćelije, ali ćete morati kopati po kodu i urediti neke stvari.

Korak 9: Elektronika, senzori i aktuatori

Elektronika, senzori i aktuatori
Elektronika, senzori i aktuatori
Elektronika, senzori i aktuatori
Elektronika, senzori i aktuatori
Elektronika, senzori i aktuatori
Elektronika, senzori i aktuatori
Elektronika, senzori i aktuatori
Elektronika, senzori i aktuatori

Sada je vrijeme da stavite lemilicu. Ponudio sam 2 prikaza onoga što trebate učiniti, jednu standardnu električnu shemu, jednu vizuelnu predstavu. Toplo vam predlažem da koristite električnu shemu jer ona daje puno bolji uvid u to kako sve funkcionira i po mom mišljenju je povezana. Jedini razlog zašto je drugi ovdje je to što je bio obavezan. Razlog koji ovo govorim je taj što nema puno prostora za kabele, pa ćete morati biti efikasni u ožičenju GND, +5V itd. Što ovisi o tome kako želite provoditi svoje kabele. Zato nemojte sve međusobno povezivati baš poput sheme, to će funkcionirati, ali neće odgovarati.

Za prekidač možete vidjeti da sam spojio sva 3 vodiča, to je zato što prekidač ima ugrađenu LED diodu koja pokazuje je li napajanje uključeno. 2 neobojena izvoda djeluju kao prekidač, obojeni kabel ide u GND.

Općenito, ovo je redoslijed kojim sam sve povezao:

  1. Odeljak za napajanje: utičnica za napajanje, h-most, pretvarač pojačanja, prekidač
  2. Raspberry Pi (za više informacija pogledajte sljedeći korak)
  3. IR senzori
  4. LED diode
  5. Steper ulazi
  6. I2C dio: 3.3V, SDA, SCL

Nije bitno, ali je korisno imati prototipnu PCB postavljenu oko za lemljenje kao ja.

Također ne zaboravite spojiti kameru na USB priključak pi.

Bitan:

Prije priključivanja 5V dijela kola obavezno podesite pretvarač potiskivanja na 5V. Inače biste mogli riskirati da sve ispečete. Da biste to prilagodili, okrenite potenciometar i pogledajte očitanje napona na ekranu.

Korak 10: Elektronika, Raspberry Pi

Elektronika, Raspberry Pi
Elektronika, Raspberry Pi

Zbog ograničenja u softveru za crtanje sheme, nisam uspio nacrtati kako spojiti malinu pi.

Za +5V možete samo spojiti na 5V pin pi, ali to zaobilazi sigurnost poput osigurača. Ako pogledate pri dnu, trebali biste vidjeti neke jastučiće označene kao TPxx, u našem slučaju tražimo TP1 ili TP2. Lemite svoj +5V vod do jednog od njih, ali pazite da ne premostite druge tragove. Ovo će najvjerojatnije također poništiti jamstvo. Osobno sam ga pokušao spojiti na oba testna jastučića i došao do zaključka da je vjerovatno najjednostavniji i najsigurniji za korištenje TP2, udaljen je od drugih izloženih jastučića i nema puno tragova oko sebe.

Za GND samo uzmite jedan od pinova na vrhu, kao što je prikazano na shemi, ovo je sada sasvim u redu.

Korak 11: Testiranje elektronike

Kada je sve ispravno spojeno, dobra je praksa prvo sve testirati prije nego što sve potpuno sastavite.

Evo kontrolne liste:

  • IPV4 adresa se prikazuje na LCD -u
  • Mogućnost povezivanja na IP putem preglednika
  • Može okrenuti steper tako što će "ubaciti" i vidjeti LED lampicu koja svijetli
  • Status spremnika se čita i ažurira
  • Prijenos uživo s kamere
  • Otkrivanje događaja ishrane

Rješavanje problema:

Ovdje navodim neke probleme u koje sam ušao i kako ih riješiti.

- Moj LCD svijetli, ali ne prikazuje ništa:

1) U vrijeme pisanja ovoga, pi je potrebno oko 2 minute da se potpuno podigne pa mu morate dati dodatno vrijeme.

2) Niste pravilno povezali LCD ekran. Možete provjeriti jeste li ga pravilno povezali upisivanjem sljedeće naredbe u ljusku:

sudo i2cdetect -y 1

Ovo mora vratiti 2 adrese: 0x27 (= LCD) i 0x29 (= TOF senzor). Ako se 0x27 ne pojavi, morate provjeriti ožičenje LCD -a. Ako se oba ne pojavljuju, morate provjeriti ožičenje SDA i SCL pinova. Npr. provjerite jeste li ih slučajno zamijenili. U najgorem slučaju ste učinili nešto pogrešno s 2 pojedinačne komponente ili se nešto pokvarilo.

- Moj LCD se zaglavio na "Povezivanje na WiFi"

To znači da je vaš pi zaglavljen pokušavajući se povezati s jednom od mreža na koje ste konfigurirali povezivanje. To znači da ili niste u dometu pristupne točke ili ste učinili nešto pogrešno prilikom konfiguriranja npr. štamparska greška. U tom slučaju vratite se na "Postavljanje WiFi -a" i ponovo ga pregledajte.

Softver je također postavljen za povezivanje s kućnim mrežama s IP adresom koja počinje s "192.168". Ako je vaša mreža postavljena s drugim privatnim rasponom, poput "10.0" ili "172.16", morat ćete otići u /home/pi/project/main.py i u funkciji get_ips () promijeniti: ako je "192.168" u ip ako je "Vaš privatni raspon ovdje" u ip.

- Moj LCD prikazuje ip, ali ne mogu se povezati:

1) Provjerite da li se povezujete na 192.168. X. X ip, drugi ip 169.254.10.1 je uvijek konfiguriran za povezivanje putem etherneta direktno na vaš računar. Ovo neće funkcionirati ako niste priključeni.

2) Provjerite jeste li na istoj mreži ili ste omogućili prosljeđivanje portova na svojoj mreži ako želite pristupiti ulagaču izvan njegove mreže.

- Steper se trese i ne okreće:

To znači da niste pravilno povezali ulaze ili izlaze dvostrukog H-mosta. Pokušajte ih zamijeniti dok ne uspije.

Korak 12: Završetak

Završetak
Završetak
Završetak
Završetak
Završetak
Završetak
Završetak
Završetak

Sada ste shvatili kako sve pokrenuti, vrijeme je da sve spojite. Morao sam spojiti dva dijela s trakom, jer dizajn rupa nije dovoljno čvrst da zadrži napetost i napukao mi je. Ovo je jedna od glavnih stvari koje treba poboljšati u budućnosti. Čistija opcija je da samo zalijepite dva dijela zajedno, ali to bi mogao biti problem kada se nešto unutra pokvari i želite pristupiti unutrašnjosti. Zato sam otišao sa dobrom starom električnom trakom.

Kada posjetite web stranicu, trebala bi vas dočekati nadzorna ploča na kojoj možete raditi stvari poput ručnog hranjenja, provjeravati status, pregledavati podatke i dodavati unaprijed postavljene postavke.

Korak 13: Dodatno: Chrome proširenje

Dodatno: Chrome proširenje
Dodatno: Chrome proširenje
Dodatno: Chrome proširenje
Dodatno: Chrome proširenje
Dodatno: Chrome proširenje
Dodatno: Chrome proširenje

Ako vam se ne sviđa pregledavanje nadzorne ploče i samo želite brzo provjeriti status ili sažetak sadržaja, možete upotrijebiti proširenje za Chrome. Budući da nije u službenoj Chrome web trgovini, morat ćete ga učitati kao da biste razvili takav paket.

Prvo provjerite preuzmite mapu Feeder Extension iz direktorija github:

github.com/VanIseghemThomas/ProjectFeeder

Idite na sljedeću URL adresu:

hrom: // proširenja/

Kad stignete tamo, omogućite način za programere i učitajte mapu proširenja. Sada bi se trebao pojaviti kao nastavak.

Ako se ne pojavi na Chrome traci, možete je pronaći u Chromeovom meniju.

Korak 14: Softver

Softver
Softver

Ako volite petljati sa softverom ili vam je iz nekog razloga potrebna nova kopija datoteke, sve potrebne datoteke nalaze se u spremištu GitHub -a koje sam napravio:

Također sam dao EER-shemu za bazu podataka, u slučaju da želite dodati značajke u API. Dump baze podataka se takođe može naći u spremištu GitHub. Sav pozadinski kôd je napisan u Pythonu. Flask se koristi za usmjeravanje, a Socket.io za websockets.

Preporučuje se: