Innholdsfortegnelse:
- Rekvisita
- Trinn 1: Blinker SD -kortet
- Trinn 2: SSH i Pi
- Trinn 3: Konfigurere Wifi
- Trinn 4: Skrive ut delene
- Trinn 5: Montering av delene (intro)
- Trinn 6: Montering av toppen (dispenser)
- Trinn 7: Montering av toppen (beholder)
- Trinn 8: Montering av bunnen
- Trinn 9: Elektronikk, sensorer og aktuatorer
- Trinn 10: Elektronikk, Raspberry Pi
- Trinn 11: Testing av elektronikken
- Trinn 12: Fullføring
- Trinn 13: Ekstra: Chrome -utvidelse
- Trinn 14: Programvaren
Video: Prosjektmater: 14 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
Har du noen gang ønsket å mate kjæledyrene dine mens du er borte fra hjemmet, eller bare fra sofaen din? I så fall er dette prosjektet noe for deg! Project Feeder er et åpen kildekode -prosjekt som lar deg mate kjæledyrene dine automatisk, eller manuelt fra telefonen eller PCen. Du kan også følge en livestream og holde oversikt over spiseatferden til kjæledyret ditt.
Før du begynner!
Dette prosjektet er en oppgave laget for høyskole og var tidsavhengig, så det er veldig "pågår". Derfor er jeg klar over at det er ting som kan forbedres og kan oppdateres i fremtiden. Jeg oppfordrer deg til å være kreativ, forbedre og utvide dette konseptet.
For å starte vil vi gå over kravene for å bygge dette prosjektet. Du trenger virkelig ferdighetene og verktøyene som er oppført nedenfor.
Skaperferdigheter:
- 3D-utskrift eller tilgang til en utskriftstjeneste
- Lodding
- Grunnleggende elektronikk kunnskap
Verktøy:
- 3D-skriver
- Loddejern
- Varm limpistol eller annet lim som fungerer med 3D-skriver filamentforbindelser
- Skrutrekkere
Rekvisita
Den totale kostnaden for å bygge dette prosjektet er rundt € 120 avhengig av hvor du kjøper delen og hva slags rabatter du får.
Viktig:
Noen deler er merket med "Unikt", det betyr at det er spesifikt for konstruksjonens konstruksjonsdesign, og du trenger en eksakt kopi av den delen.
Raspberry Pi 4 Model B / 2GB + 16GB (min. Krav) Micro SD -kort
Aksjen på Rasberry Pi er for øyeblikket svært begrenset, dette trenger litt titt.
12V 60W strømforsyningsadapter
www.banggood.com/AC-100-240V-to-DC-12V-5A-…
5,5 mm x 2,1 mm likestrømuttak (unik)
www.banggood.com/10pcs-5_5-x-2_1mm-DC-Powe…
DC-DC 12V til 5V 3A Buck Step Down Power Module (unik)
www.banggood.com/LM2596-DC-DC-Voltage-Regu…
42mm 12V Nema 17 totrinns trinnmotor
www.banggood.com/42mm-12V-Nema-17-Two-Phas…
L298N Dual H -bromodul
www.banggood.com/Wholesale-L298N-Dual-H-Br…
GY6180 VL6180X Time Of Flight Distance Sensor
www.banggood.com/GY6180-VL6180X-Time-Of-Fl…
Infrarød hindringssensor (x3)
www.banggood.com/3Pcs-Infrared-Obstacle-Av…
USB kamera
www.banggood.com/Electronic-Camera-Module-…
Baklys 16 × 2 LCD, 8051 mikrokontroller I2C
www.hobbyelectronica.nl/product/1602-lcd-d…
Toveis nivåskifter
www.banggood.com/nl/Two-Channel-IIC-I2C-Lo…
Motstander med felles verdi (10k, 220R, 470R)
www.banggood.com/Wholesale-Geekcreit-600pc…
LED (x2)
Dioder (x2)
12V PÅ/AV -bryter (unik)
www.banggood.com/5pcs-12V-Round-Rocker-Tog…
Nøtter: 3x8mm, 3x10mm, 3x12mm
Trinn 1: Blinker SD -kortet
For dette trinnet må du blinke SD -kortet med det medfølgende bildet:
thomy.stackstorage.com/s/KbCfVgoU0t8gU3C
Bildet er utstyrt med en forhåndsbygd apache webserver, database og kode for grensesnitt med materen. Så du trenger ikke å gjøre noe som innebærer å sette opp programvaren.
Hvis du vil ta en titt på koden, kan du få all nødvendig kode fra:
github.com/VanIseghemThomas/ProjectFeeder
Sørg for at du vet hvordan du blinker SD -kortet på riktig måte eller ikke avbryter prosessen fordi det kan resultere i et ødelagt kort. For å blinke kortet brukte jeg programvare kalt Win32DiskManager. Et annet program jeg vet fungerer og er litt mer brukervennlig kalles Ethcer. Begge fungerer like godt.
Trinn 2: SSH i Pi
Når blinkingen er ferdig kan du nå sette SD -kortet i pi og slå det på. Sørg for at du er koblet til pi -en din med en ethernet -kabel. Nå bør du kunne koble til den ved hjelp av SSH med ip 169.254.10.1. Jeg bruker et program som heter PuTTY, men hvis du ikke har lyst til å installere programvare, kan du alltid skrive følgende kommando i ledeteksten:
ssh [email protected]
Nå åpner du en økt. Når du kobler til for første gang vil du støte på en advarsel, du kan ignorere det og bare fortsette. Du blir bedt om å logge på som bruker, og deretter bruker du passordet for dette bildet:
- Bruker: feederpi
- Passord: Innløs1
'Pi'-brukeren er også aktiv, men du kan ikke logge deg på som den. Dette er fordi den er konfigurert til å automatisk logge på strøm og kjøre programmet. Det er derfor du vil støte på følgende når du logger inn:
[sudo] passord for feederpi:
Bare trykk crtl+c, og du bør ha et skall nå.
Skriv nå følgende:
sudo -i
Nå er du logget inn som root.
Trinn 3: Konfigurere Wifi
Nå er du logget inn som root og kan skrive:
wpa_passphrase "Din SSID" "Ditt passord" >> /etc/wpa_supplicant/wpa_supplicant.conf
For å sjekke om konfigurasjonen din ble lagt til riktig, skriver du følgende. Du kan også slette vanlig tekstpassord for sikkerhet hvis du vil, men sørg for å lagre endringene ved avslutning.
nano /etc/wpa_supplicant/wpa_supplicant.conf
Nå kan du starte pi på nytt ved å skrive:
starte på nytt nå
Gi pi litt tid til å starte opp og logge på igjen med SSH som før, for å se om du har en forbindelse til wifi du skriver:
ip a
Under wlan0-samspillet bør du se noe lignende med en ip-adresse, dette betyr at du har lykkes med å koble til wifi. Senere når alt er koblet til, viser programvaren dette til en LCD.
Trinn 4: Skrive ut delene
Delene du trenger for dette prosjektet finner du her:
www.thingiverse.com/thing:4459996
Det vil ta litt tid å skrive ut alle disse delene, så du trenger litt tålmodighet.
Dette er innstillingene jeg brukte (PLA):
- Laghøyde: 0,3 mm
- Utskriftshastighet: 50-60 mm/s
- Dysetemperatur: 200 ° C
- Sengetemperatur: 60 ° C
Det er ikke mye å si om dette bortsett fra, ha det gøy med utskrift.
Trinn 5: Montering av delene (intro)
OK nå går vi videre til å sette sammen alt. Før jeg forklarer alt, skal jeg gå gjennom noen ting å huske på, og det vil hjelpe deg med å få dette gjort.
TIPS 1:
Jeg har bestemt meg for å gjøre alle hullene 2,5 mm bortsett fra 3 mm som boltene. Dette er slik at du kan trykke på en tråd ved å skru inn boltene og eliminerer behovet for muttere. Det er ganske vanskelig å få inn bolten, bruk loddejernet til å utvide toppen, dette vil gjøre det enkelt å få inn bolten og begynne å skru.
TIPS 2:
Hvis du som for meg er tom for bolter, bare skru inn diagonale par. Dette sparer mange av dem og fungerer bra.
Trinn 6: Montering av toppen (dispenser)
Delene er lagt opp som på bildet.
De holdes sammen av de såkalte 'platene'. En av platene monteres på trinnmotoren din.
Sørg for at toppen av boltene er i flukt med overflaten, ellers blokkerer matingen seg. Du bør bruke 3x8mm boltene til dette og "Stepper_offset" -modellen mellom trinnet og utsiden av platen.
Sett nå møllen på stepper, den skal gå ganske lett. Hvis ikke, kan du bruke vaselin.
Resten er ganske rett frem, bare ta en skrue der du finner et hull.
Trinn 7: Montering av toppen (beholder)
Her ser du hvordan jeg lagde beholderen min. Beholderen brukes opprinnelig til tørkede biter av forening.
Øverst vil du feste TOF-sensoren, denne vil bli brukt til å måle hvor mye mat det er igjen i beholderen. På bildene kan du se hvordan jeg festet den. Først smeltet jeg hullene til pinnene med loddejernet, og limte deretter sensoren på plass med litt varmt lim mens kablene er tilkoblet.
For å lukke beholderen lagde jeg 2 hull med loddejernet og skrudde inn 2 bolter. Et gummibånd, glidelås eller wire kan alle brukes til å lukke det på den måten.
Trinn 8: Montering av bunnen
For plassering av de forskjellige modulene refererer bildene, de er ganske selvforklarende. En del av disse bildene har allerede ledninger i dem, du bør se forbi det for nå. Bildene ble tatt midt i utviklingen av dette prosjektet. Opprinnelig var planen å sette inn en lastcelle og veie maten, men på grunn av at lastcelleforsterkeren min gikk i stykker i siste øyeblikk, måtte jeg kaste den funksjonen og erstatte den med en video live stream som også er ganske pen. Alternativet er alltid der for å legge til en lastcelle, men du må grave i koden og redigere noen ting.
Trinn 9: Elektronikk, sensorer og aktuatorer
Nå er det på tide å sette på loddetangen. Jeg har gitt to representasjoner av hva du trenger å gjøre, en standard elektrisk skjematisk, en visuell fremstilling. Jeg foreslår sterkt at du bruker det elektriske skjemaet fordi det gir mye mer innsikt i hvordan alt fungerer og er koblet til hverandre etter min mening. Den eneste grunnen til at den andre er her, er fordi den var obligatorisk. Grunnen til at jeg sier dette, er fordi det ikke er mye plass til kabler, så du må være effektiv med kabling av GND, +5V, etc. som avhenger av hvordan du vil kjøre kablene. Så ikke koble alt nøyaktig til hverandre som skjematisk, det vil fungere, men vil ikke passe.
For bryteren kan du se at jeg har koblet alle tre ledninger, dette er fordi bryteren har en innebygd LED som indikerer om strømmen er slått på. De to ufargede ledningene fungerer som bryteren, den fargede ledningen går til GND.
Generelt er dette rekkefølgen jeg koblet alt til:
- Strømdel: strømkontakt, h-bridge, boost buck-omformer, bryter
- Raspberry Pi (Se neste trinn for mer informasjon)
- IR-sensorer
- LED -er
- Stepper innganger
- I2C -porsjon: 3,3V, SDA, SCL
Det er ikke viktig, men nyttig å ha en prototyping PCB liggende rundt for å lodde som jeg gjorde.
Ikke glem å koble kameraet til en USB -port på pi.
Viktig:
Sørg for å justere boost buck -omformeren til 5V før du kobler til 5V -delen av kretsen. Ellers kan du risikere å steke alt. For å justere dette dreier du på potensiometeret og ser på spenningsavlesningen på skjermen.
Trinn 10: Elektronikk, Raspberry Pi
På grunn av begrensninger i programvaren for å tegne skjematisk, kunne jeg ikke tegne hvordan jeg skulle koble til bringebær -pi.
For +5V kan du bare koble til 5V -pinnen på pi, men dette omgår sikkerhet som sikringen. Hvis du ser på bunnen, bør du se noen pads som er merket som TPxx, i vårt tilfelle leter vi etter TP1 eller TP2. Lodd din +5V ledning til en av dem, men vær forsiktig så du ikke bygger bro med andre spor. Dette vil mest sannsynlig også ugyldiggjøre garantien. Jeg har personlig prøvd å koble den til begge testputene og kom til den konklusjonen at det er sannsynligvis den enkleste og sikreste å bruke TP2, den er borte fra andre utsatte pads og har ikke mange spor rundt seg.
For GND bare ta en av pinnene på toppen som skjematisk viser, dette er helt greit nå.
Trinn 11: Testing av elektronikken
Når alt er koblet til riktig, er det god praksis å først teste alt før du monterer alt helt.
Her er en sjekkliste:
- IPV4 -adressen vises på LCD -skjermen
- Kan koble til IP via nettleseren
- Kunne snu stepperen ved å "mate" og se lysdiodene lyser
- Beholderstatus leser og oppdaterer
- Livestream fra kamera
- Oppdage spisehendelser
Feilsøking:
Her viser jeg noen av problemene jeg kom inn i og hvordan jeg fikser dem.
- LCD -skjermen min lyser, men viser ingenting:
1) Når du skriver dette, trenger pi -en omtrent 2 minutter for å starte opp helt, så du må gi den litt ekstra tid.
2) Du koblet ikke LCD -skjermen riktig. Du kan se om du koblet den riktig ved å skrive følgende kommando i et skall:
sudo i2cdetect -y 1
Dette må returnere 2 adresser: 0x27 (= LCD) og 0x29 (= TOF -sensor). Hvis 0x27 ikke dukker opp, må du sjekke ledningene til LCD -skjermen. Hvis begge ikke dukker opp, må du sjekke ledningene til SDA- og SCL -pinnene. F.eks. sjekk om du byttet de to ved et uhell. I verste fall gjorde du noe galt med de to individuelle komponentene eller noe gikk i stykker.
- LCD -skjermen min sitter fast ved "Koble til WiFi"
Dette betyr at pi -en din sitter fast og prøver å koble til et av nettverkene du konfigurerte for å koble til. Dette betyr at du enten ikke er innenfor rekkevidden til tilgangspunktet, eller at du gjorde noe galt mens du konfigurerte f.eks. en skrivefeil. Gå i så fall tilbake til "Konfigurere WiFi" og gå over det igjen.
Programvaren er også konfigurert for å koble til hjemmenettverk med en IP -adresse som starter med "192.168". Hvis nettverket ditt er konfigurert med et annet privat område, for eksempel "10.0" eller "172.16", må du gå til /home/pi/project/main.py og i funksjonen get_ips () endre: hvis "192.168" i ip hvis "Ditt private område her" i ip.
- LCD -skjermen min viser IP -en, men jeg kan ikke koble til:
1) Sørg for at du kobler til 192.168. X. X ip, den andre ip 169.254.10.1 er alltid konfigurert til å koble over ethernet rett til PCen. Dette vil ikke fungere hvis du ikke er koblet til.
2) Sørg for at du er i det samme nettverket, eller at du har aktivert portvideresending på nettverket hvis du vil ha tilgang til materen fra det eksterne nettverket.
- Stepper rister og snur ikke:
Dette betyr at du ikke koblet inngangene eller utgangene til den doble H-broen riktig. Prøv å bytte dem til det fungerer.
Trinn 12: Fullføring
Nå har du funnet ut hvordan du får alt til å fungere, det er på tide å sette alt sammen. Jeg måtte sette de to delene sammen med tape, dette fordi utformingen av hullene ikke er solid nok til å holde spenningen og det sprakk for meg. Dette er en viktig ting som skal forbedres i fremtiden. Et renere alternativ er å bare lime de to delene sammen, men dette kan være et problem når noe innvendig går i stykker og du vil ha tilgang til innsiden. Derfor gikk jeg med godt gammelt elektrisk tape.
Når du går til nettstedet, bør du bli møtt med et dashbord hvor du kan gjøre ting som manuell mating, sjekke status, se på data og legge til forhåndsinnstillinger.
Trinn 13: Ekstra: Chrome -utvidelse
Hvis du ikke har lyst til å surfe til dashbordet og bare vil sjekke status eller feed raskt, kan du bruke Chrome -utvidelsen. På grunn av at den ikke er i den offisielle Chrome -nettbutikken, må du laste den inn som om du vil utvikle en slik pakke.
Sørg først for at du laster ned Feeder Extension -mappen fra github -katalogen:
github.com/VanIseghemThomas/ProjectFeeder
Gå til følgende URL:
chrome: // extensions/
Når du er der, aktiverer du utviklermodus og laster utvidelsesmappen. Nå skal den vises som en utvidelse.
Hvis den ikke vises i Chrome -linjen, kan du finne den i Chrome -menyen.
Trinn 14: Programvaren
Hvis du liker å pusle med programvaren eller av en eller annen grunn trenger en ny kopi av en fil, finnes alle filene du trenger i GitHub -depotet jeg laget:
Jeg har også levert en EER-skjematisk for databasen, hvis du har lyst til å legge til funksjoner i API. En dump av databasen finnes også i GitHub -depotet. All backend -kode er skrevet i Python. Flask brukes til ruting og Socket.io for websockets.
Anbefalt:
Arduino bilvarslingssystem for omvendt parkering - Trinn for trinn: 4 trinn
Arduino Car Reverse Parking Alert System | Trinn for trinn: I dette prosjektet skal jeg designe en enkel Arduino Car Reverse Parking Sensor Circuit ved hjelp av Arduino UNO og HC-SR04 Ultrasonic Sensor. Dette Arduino -baserte bilreverseringssystemet kan brukes til autonom navigasjon, robotavstand og andre områder
Trinn for trinn PC -bygging: 9 trinn
Steg for trinn PC -bygging: Rekvisita: Maskinvare: HovedkortCPU & CPU -kjøler PSU (strømforsyningsenhet) Lagring (HDD/SSD) RAMGPU (ikke nødvendig) CaseTools: Skrutrekker ESD -armbånd/mathermal pasta m/applikator
Tre høyttalerkretser -- Trinn-for-trinn opplæring: 3 trinn
Tre høyttalerkretser || Trinn-for-trinn opplæring: Høyttalerkretsen styrker lydsignalene som mottas fra miljøet til MIC og sender den til høyttaleren der forsterket lyd produseres. Her vil jeg vise deg tre forskjellige måter å lage denne høyttalerkretsen på:
RC -sporet robot ved hjelp av Arduino - Trinn for trinn: 3 trinn
RC -sporet robot ved bruk av Arduino - Steg for trinn: Hei folkens, jeg er tilbake med et annet kult Robot -chassis fra BangGood. Håper du har gått gjennom våre tidligere prosjekter - Spinel Crux V1 - Gesture Controlled Robot, Spinel Crux L2 - Arduino Pick and Place Robot with Robotic Arms og The Badland Braw
Hvordan lage et nettsted (en trinn-for-trinn-guide): 4 trinn
Hvordan lage et nettsted (en trinn-for-trinn-guide): I denne veiledningen vil jeg vise deg hvordan de fleste webutviklere bygger nettstedene sine og hvordan du kan unngå dyre nettstedbyggere som ofte er for begrenset til et større nettsted. hjelpe deg med å unngå noen feil som jeg gjorde da jeg begynte