Sisukord:

Projekti etteandja: 14 sammu
Projekti etteandja: 14 sammu

Video: Projekti etteandja: 14 sammu

Video: Projekti etteandja: 14 sammu
Video: Yamaha DT Projekti Osa 7 | Mopon Kasaus & First Start 2024, November
Anonim
Projekti toitja
Projekti toitja

Kas olete kunagi tahtnud oma lemmikloomi kodust eemal või lihtsalt diivanilt mugavalt toita? Kui jah, siis see projekt on teie jaoks! Project Feeder on avatud lähtekoodiga projekt, mis võimaldab toita oma lemmikloomi automaatselt või käsitsi telefonist või arvutist. Samuti saate jälgida otseülekannet ja jälgida oma lemmiklooma söömiskäitumist.

Enne kui alustad!

See projekt on ülikoolile tehtud ülesanne ja oli ajaliselt piiratud, seega on see väga pooleli. Seetõttu olen teadlik, et on asju, mida saab parandada ja mida võidakse tulevikus värskendada. Julgustan teid olema loov, täiustama ja laiendama seda kontseptsiooni.

Alustuseks vaatame üle selle projekti ehitamise nõuded. Teil on tõesti vaja allpool loetletud oskusi ja tööriistu.

Tegija oskused:

  • 3D-printimine või juurdepääs printimisteenusele
  • Jootmine
  • Elektroonika põhiteadmised

Tööriistad:

  • 3D-printer
  • Jootekolb
  • Kuumliimipüstol või muu liim, mis töötab 3D-printeri hõõgniitühenditega
  • Kruvikeerajad

Tarvikud

Selle projekti ehitamise kogumaksumus on umbes 120 eurot, sõltuvalt sellest, kust osad ostate ja milliseid allahindlusi saate.

Tähtis:

Mõnele osale on märgitud "Unikaalne", see tähendab, et see on ehitise konstruktsioonile omane ja vajate selle osa täpset koopiat.

Raspberry Pi 4 mudel B / 2 GB + 16 GB (minimaalne nõue) Micro SD -kaart

Rasberry Pi varud on praegu väga piiratud, see vajab veidi ringi vaatamist.

12V 60W toiteadapter

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

5,5 mm x 2,1 mm alalisvoolu toiteploki pistikupesa (ainulaadne)

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

DC-DC 12V kuni 5V 3A Buck Tootemoodul (ainulaadne)

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

42mm 12V Nema 17 kahefaasiline samm -mootor

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

L298N Dual H Bridge moodul

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

GY6180 VL6180X Lennuaja kaugusandur

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

Infrapuna takistuste vältimise andur (x3)

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

USB kaamera

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

Taustavalgustus 16 × 2 LCD, 8051 mikrokontroller I2C

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

Kahesuunaline taseme nihutaja

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

Ühise väärtusega takistid (10k, 220R, 470R)

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

LEDid (x2)

Dioodid (x2)

12V ON/OFF lüliti (ainulaadne)

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

Mutrid: 3x8mm, 3x10mm, 3x12mm

Samm: SD -kaardi vilkumine

SD -kaardi vilkumine
SD -kaardi vilkumine

Selle sammu jaoks peate oma SD -kaarti kaasasoleva pildiga välgutama:

thomy.stackstorage.com/s/KbCfVgoU0t8gU3C

Pildil on etteantud apache veebiserver, andmebaas ja sööturiga liidestamiseks vajalik kood. Nii et te ei pea tegema midagi, mis hõlmab tarkvara seadistamist.

Kui soovite koodiga tutvuda, saate kogu vajaliku koodi siit:

github.com/VanIseghemThomas/ProjectFeeder

Veenduge, et teate, kuidas SD -kaarti õigesti välgutada, või ärge katkestage protsessi, sest see võib põhjustada kaardi rikutud. Kaardi vilkumiseks kasutasin tarkvara nimega Win32DiskManager. Teine programm, mida ma tean, töötab ja on pisut kasutajasõbralikum, kannab nime Ethcer. Mõlemad töötavad võrdselt hästi.

2. samm: SSH Pi -sse

SSH piirkonda
SSH piirkonda

Kui vilkumine on lõpetatud, saate nüüd SD -kaardi pi sisse panna ja sisse lülitada. Veenduge, et olete Etherneti kaabli abil oma pi -ga ühendatud. Nüüd peaksite saama sellega ühenduse luua SSH abil, kasutades ip 169.254.10.1. Ma kasutan programmi nimega PuTTY, kuid kui te ei soovi tarkvara installida, võite alati käsureale sisestada järgmise käsu:

ssh [email protected]

Nüüd avage seanss. Esmakordsel ühenduse loomisel ilmub hoiatus, võite seda ignoreerida ja lihtsalt jätkata. Teil palutakse kasutajana sisse logida ja pärast seda kasutada selle pildi jaoks parooli.

  • Kasutaja: feederpi
  • Parool: uuesti 1

Kasutaja 'pi' on samuti aktiivne, kuid te ei saa end sellisena sisse logida. Seda seetõttu, et see on seadistatud automaatselt sisse logima ja programmi käivitama. Sellepärast näete sisselogimisel järgmist:

[sudo] parool feederpi jaoks:

Lihtsalt vajutage crtl+c ja teil peaks nüüd olema kest.

Nüüd tippige järgmine:

sudo -i

Nüüd olete sisse logitud rootina.

3. toiming: WiFi seadistamine

Wifi seadistamine
Wifi seadistamine

Nüüd olete sisse logitud rootina ja saate sisestada:

wpa_passphrase "Teie SSID" "Teie parool" >> /etc/wpa_supplicant/wpa_supplicant.conf

Kontrollimaks, kas teie konfiguratsioon on õigesti lisatud, tippige järgmine. Soovi korral saate turvalisuse huvides ka lihtteksti parooli kustutada, kuid väljumisel salvestage muudatused kindlasti.

nano /etc/wpa_supplicant/wpa_supplicant.conf

Nüüd saate oma pi taaskäivitada, tippides:

Taaskäivita nüüd

Andke pi -le natuke aega alglaadimiseks ja SSH -ga uuesti sisse logimiseks nagu varem, et näha, kas teil on ühendus teie sisestatud WiFi -ga:

ip a

Wlan0 interaktsiooni all peaksite nägema midagi sarnast IP-aadressiga, see tähendab, et olete oma wifi-ga edukalt ühenduse loonud. Hiljem, kui kõik on ühendatud, kuvab tarkvara selle LCD -ekraanile.

4. samm: osade printimine

Selle projekti jaoks vajalikud osad leiate siit:

www.thingiverse.com/thing:4459996

Kõigi nende osade printimine võtab natuke aega, seega vajate kannatust.

Need on minu kasutatavad seaded (PLA):

  • Kihi kõrgus: 0,3 mm
  • Prindikiirus: 50-60 mm/s
  • Düüsi temperatuur: 200 ° C
  • Voodi temperatuur: 60 ° C

Selle kohta pole palju öelda, välja arvatud lõbusat printimist.

Samm: osade kokkupanek (sissejuhatus)

Osade kokkupanek (sissejuhatus)
Osade kokkupanek (sissejuhatus)
Osade kokkupanek (sissejuhatus)
Osade kokkupanek (sissejuhatus)

Olgu, nüüd hakkame kõike kokku panema. Enne kui ma seda kõike selgitan, vaatan üle mõned asjad, mida meeles pidada, ja see aitab teil seda teha.

NIPP 1:

Olen otsustanud teha kõik augud 2,5 mm peale 3 mm nagu poldid. See võimaldab teil keermest kinni keerata, keerates poldid sisse, ja välistab mutrite vajaduse. Poldi sisestamine on üsna keeruline, kasutage jootekolvi, et laiendada ülaosa, see hõlbustab poldi sissevõtmist ja kruvimise alustamist.

NÕUANNE 2:

Kui teil, nagu minul, on poldid otsas, keerake ainult diagonaalpaare. See säästab neid palju ja töötab hästi.

6. samm: ülaosa (jaotur) kokkupanek

Ülaosa kokkupanek (jaotur)
Ülaosa kokkupanek (jaotur)
Ülaosa kokkupanek (jaotur)
Ülaosa kokkupanek (jaotur)
Ülaosa kokkupanek (jaotur)
Ülaosa kokkupanek (jaotur)

Osad on paigutatud nii nagu pildil.

Neid hoiavad koos nn plaadid. Üks plaatidest ühendatakse teie samm -mootoriga.

Veenduge, et poltide ülaosa oleks pinnaga samal tasemel, vastasel juhul blokeerub etteanne. Selle ja "Stepper_offset" mudeli jaoks peaksite kasutama 3x8 mm polte sammude ja plaadi väliskülje vahel.

Nüüd pange veski stepperile, see peaks minema üsna lihtsalt. Kui ei, siis võite kasutada vaseliini.

Ülejäänud on üsna otse ette, võtke lihtsalt kruvi, kust leiate augu.

7. samm: ülaosa (konteineri) kokkupanek

Ülemine osa (konteiner)
Ülemine osa (konteiner)
Ülemine osa (konteiner)
Ülemine osa (konteiner)
Ülemine osa (konteiner)
Ülemine osa (konteiner)

Siin näete, kuidas ma oma konteineri tegin. Kanistrit kasutatakse algselt kuivatatud liivatükkide jaoks.

Ülaosas soovite kinnitada TOF-anduri, selle abil saab mõõta, kui palju toitu on anumasse jäänud. Piltidelt näete, kuidas ma selle kinnitasin. Kõigepealt sulatasin jootekolviga tihvtide augud, seejärel liimisin anduri mõne kuuma liimiga paika, kuni kaablid on ühendatud.

Mahuti sulgemiseks tegin jootekolbiga 2 auku ja keerasin 2 polti sisse. Selle sulgemiseks võib kasutada kummipaela, tõmblukku või traati.

8. samm: põhja kokkupanek

Põhja kokkupanek
Põhja kokkupanek
Põhja kokkupanek
Põhja kokkupanek
Põhja kokkupanek
Põhja kokkupanek

Erinevate moodulite paigutamisel viidatakse piltidele, need on üsna iseenesestmõistetavad. Mõnel neist piltidest on juhtmestik juba sees, praegu peaksite sellest mööda vaatama. Pildid on tehtud selle projekti arendamise keskel. Esialgu oli plaan panna koormusandur ja kaaluda toit, kuid kuna minu koormusanduri võimendi purunes viimasel hetkel, pidin selle funktsiooni maha võtma ja asendama selle video otseülekandega, mis on samuti üsna korralik. Koormusanduri lisamise võimalus on alati olemas, kuid peate koodi süvenema ja mõnda asja muutma.

9. samm: elektroonika, andurid ja ajamid

Elektroonika, andurid ja ajamid
Elektroonika, andurid ja ajamid
Elektroonika, andurid ja ajamid
Elektroonika, andurid ja ajamid
Elektroonika, andurid ja ajamid
Elektroonika, andurid ja ajamid
Elektroonika, andurid ja ajamid
Elektroonika, andurid ja ajamid

Nüüd on aeg jootekolb peale panna. Olen esitanud kaks kujutist sellest, mida peate tegema, üks tavaline elektriskeem, üks visuaalne esitus. Soovitan tungivalt kasutada elektriskeemi, sest see annab palju rohkem teavet selle kohta, kuidas kõik töötab ja on minu arvates üksteisega ühendatud. Ainus põhjus, miks teine siin on, on see, et see oli kohustuslik. Põhjus, miks ma seda ütlen, on see, et kaablite jaoks pole palju ruumi, nii et peate olema tõhus GND, +5V jne juhtmete ühendamisel, mis sõltub sellest, kuidas soovite oma kaableid juhtida. Nii et ärge ühendage kõike täpselt üksteise külge nagu skeemil, see töötab, kuid ei sobi.

Lüliti puhul näete, et ühendasin kõik kolm juhtmest, sest lülitil on sisseehitatud LED, mis näitab, kas toide on sisse lülitatud. 2 värvimata juhet toimivad lülitina, värviline juhe läheb GND -le.

Üldiselt on kõik need juhtmed ühendatud:

  1. Toiteosa: toitepistik, h-sild, võimendusmuundur, lüliti
  2. Raspberry Pi (lisateabe saamiseks vaadake järgmist sammu)
  3. IR-andurid
  4. LEDid
  5. Stepper sisendid
  6. I2C osa: 3.3V, SDA, SCL

See ei ole hädavajalik, kuid kasulik, kui PCB prototüüp pannakse jootma nagu mina.

Samuti ärge unustage ühendada kaamera pi USB -porti.

Tähtis:

Enne ahela 5V osa ühendamist reguleerige kindlasti võimendusmuundur 5 V -le. Vastasel juhul võite riskida kõikide praadimisega. Selle reguleerimiseks keerake potentsiomeetrit ja vaadake ekraanil olevat pingenäitu.

Samm: elektroonika, Raspberry Pi

Elektroonika, Raspberry Pi
Elektroonika, Raspberry Pi

Skeemi joonistamise tarkvara piirangute tõttu ei suutnud ma joonistada, kuidas vaarika pi ühendada.

+5 V puhul võite lihtsalt juhtme ühendada pi 5V pistikuga, kuid see möödub ohutusest, näiteks kaitsmest. Kui vaatate alt, peaksite nägema mõnda padja, millel on silt TPxx, meie puhul otsime TP1 või TP2. Jootke oma +5V juhe ühele neist, kuid olge ettevaatlik, et mitte silduda teiste jälgedega. Suure tõenäosusega kaotab see ka garantii. Olen isiklikult proovinud seda mõlema testpadjaga ühendada ja jõudsin järeldusele, et TP2 kasutamine on ilmselt kõige lihtsam ja ohutum, kuna see on teistest katmata padjadest eemal ja selle ümber pole palju jälgi.

GND jaoks võtke lihtsalt üks tihvtidest ülevalt nagu skemaatiliselt, see on nüüd täiesti korras.

11. samm: elektroonika testimine

Kui kõik on õigesti ühendatud, on hea tava enne kõike täielikult kokku panna.

Siin on kontrollnimekiri:

  • IPV4 -aadress kuvatakse LCD -ekraanil
  • Võimalik brauseri kaudu IP -ga ühenduse luua
  • Võimalik stepperit "söötmise" abil pöörata ja näha, kuidas LED -tuli süttib
  • Konteineri olekut loetakse ja värskendatakse
  • Otseülekanne kaamerast
  • Söömisürituste tuvastamine

Veaotsing:

Siin loetlen mõned probleemid, millesse sattusin, ja kuidas neid parandada.

- Minu LCD süttib, kuid ei näita midagi:

1) Selle kirjutamise ajal vajab pi täielikult käivitamiseks umbes 2 minutit, nii et peate sellele lisaaega andma.

2) Te ei ühendanud LCD -ekraani õigesti. Näete, kas ühendasite selle õigesti, tippides kesta järgmise käsu:

sudo i2cdetect -y 1

See peab tagastama 2 aadressi: 0x27 (= LCD) ja 0x29 (= TOF -andur). Kui 0x27 ei ilmu, peate kontrollima LCD juhtmestikku. Kui mõlemad ei ilmu, peate kontrollima SDA ja SCL -kontaktide juhtmeid. Nt. kontrollige, kas vahetasite neid kahte kogemata. Halvimal juhul tegite kahe üksiku komponendiga midagi valesti või midagi läks katki.

- Minu LCD on ummikus "WiFi -ühendusega"

See tähendab, et teie pi on ummikus, püüdes ühenduse luua mõne võrguga, millega olete ühenduse loonud. See tähendab, et te ei ole juurdepääsupunkti levialas või tegite midagi valesti, nt. kirjaviga. Sellisel juhul minge tagasi jaotisse "WiFi seadistamine" ja vaadake see uuesti üle.

Tarkvara on seadistatud ka koduvõrkudega ühenduse loomiseks IP -aadressiga, mis algab "192.168". Kui teie võrk on seadistatud mõne muu privaatse vahemikuga, näiteks "10.0" või "172.16", peate minema aadressile /home/pi/project/main.py ja muutma funktsiooni get_ips (): kui "192.168" ip kui ip -s "Sinu privaatvahemik siin".

- Minu LCD -ekraanil kuvatakse ip, kuid ma ei saa ühendust luua:

1) Veenduge, et ühendate seadmega 192.168. X. X ip, teine ip 169.254.10.1 on alati konfigureeritud nii, et see ühendatakse otse arvutiga Etherneti kaudu. See ei tööta, kui te pole võrku ühendatud.

2) Veenduge, et olete samas võrgus või olete lubanud oma võrgus pordi suunamise, kui soovite feederile juurde pääseda väljastpoolt võrku.

- Stepper raputab ja ei pööra:

See tähendab, et te ei ühendanud topelt-H-silla sisendeid ega väljundeid õigesti. Proovige neid vahetada, kuni see töötab.

12. samm: lõpuleviimine

Lõpetamine
Lõpetamine
Lõpetamine
Lõpetamine
Lõpetamine
Lõpetamine
Lõpetamine
Lõpetamine

Nüüd olete välja mõelnud, kuidas kõik toimima saada, on aeg kõik kokku panna. Pidin need kaks osa teibiga kokku panema, kuna aukude konstruktsioon ei ole piisavalt tugev, et pinget hoida ja see mõras minu jaoks. See on üks oluline asi, mida tulevikus parandada. Puhtam variant on need kaks osa lihtsalt kokku liimida, kuid see võib olla probleem, kui midagi seest katki läheb ja soovite juurdepääsu sisemusele. Seetõttu läksin vana hea elektrilindiga.

Veebisaidile minnes peaks teid tervitama armatuurlaud, kus saate teha näiteks käsitsi söötmist, kontrollida olekut, vaadata andmeid ja lisada eelseadeid.

13. toiming: lisa: Chrome'i laiendus

Lisateave: Chrome'i laiendus
Lisateave: Chrome'i laiendus
Lisateave: Chrome'i laiendus
Lisateave: Chrome'i laiendus
Lisateave: Chrome'i laiendus
Lisateave: Chrome'i laiendus

Kui te ei soovi juhtpaneeli sirvida ja soovite lihtsalt olekut või voogu kiiresti kontrollida, võite kasutada Chrome'i laiendust. Kuna see ei ole ametlikus Chrome'i veebipoes, peate selle laadima nii, nagu te sellist paketti arendaksite.

Esmalt laadige kindlasti alla kaust Feeder Extension kataloogist github:

github.com/VanIseghemThomas/ProjectFeeder

Minge järgmisele URL -ile:

chrome: // extensions/

Kui olete seal, lubage arendaja režiim ja laadige laienduskaust. Nüüd peaks see ilmuma laiendina.

Kui seda Chrome'i ribal ei kuvata, leiate selle Chrome'i menüüst.

14. samm: tarkvara

Tarkvara
Tarkvara

Kui teile meeldib tarkvaraga nokitseda või vajate mingil põhjusel faili uut koopiat, leiate kõik vajalikud failid minu loodud GitHubi hoidlast:

Esitasin andmebaasi jaoks ka EER-skeemi, kui soovite lisada API-le funktsioone. Andmebaasi prügimäe leiate ka GitHubi hoidlast. Kogu taustaprogramm on kirjutatud Pythonis. Kolvi kasutatakse marsruutimiseks ja Socket.io veebipistikute jaoks.

Soovitan: