Sisukord:

IoT -raviaparaat lemmikloomadele: 7 sammu (piltidega)
IoT -raviaparaat lemmikloomadele: 7 sammu (piltidega)

Video: IoT -raviaparaat lemmikloomadele: 7 sammu (piltidega)

Video: IoT -raviaparaat lemmikloomadele: 7 sammu (piltidega)
Video: Учим цвета Разноцветные яйца на ферме Miroshka Tv 2024, Detsember
Anonim
Image
Image
IoT -raviaparaat lemmikloomadele
IoT -raviaparaat lemmikloomadele

Mul on kaks kassi ja umbes kolm korda päevas neile maiustuste andmine muutus üsna tüütuks. Nad vaataksid mulle otsa oma armsate nägude ja ägedate pilkudega, jooksid siis kasti täis rohelisi, nurisesid ja palusid neid. Olin otsustanud, et piisab. Enam ei pea tõusma, et anda kassile paar maiust. Nüüd oli aeg maiustuste väljastamise masina jaoks, sest nagu öeldakse: "Programmeerijad on olemas selleks, et teha keerulisi asju, et lihtsaid asju vähem teha."

DFRobot sponsoreeris seda projekti.

Osade nimekiri:

  • DFRobot Raspberry Pi 3
  • DFRobot Raspberry Pi kaameramoodul
  • DFRobot samm -mootor koos planeetide käiguga
  • I2C LCD 16x2
  • Barrel Jack terminali
  • DRV8825 samm -mootori juht
  • Kondensaator 100 µF
  • Arduino UNO ja Genuino UNO
  • Jumper juhtmed (üldine)

Samm: kujunduse loomine

Disaini loomine
Disaini loomine

Esiteks oli valik, kuidas juhtida oma äsja mõelnud masinat. Bluetoothi leviulatus oleks olnud liiga lühike, vaid 30 jalga ja ilma takistusteta. Selle teabe põhjal otsustasin kasutada WiFi -d. Aga kuidas nüüd masina juhtimiseks WiFi -d kasutada? Raspberry Pi 3 -l on sisseehitatud WiFi -võimalused, mis võimaldavad mul kasutada veebisaidi majutamiseks Flaski. Järgmine oli korpuse teema ja maiustuste väljastamine. Otsustasin pöörleva ratta konstruktsiooni järgi, kus maiustused jagunevad väikesteks osadeks, pööratakse ümber ja seejärel kukuvad maiustused kaldteele ja liiguvad masina ette.

2. samm: mudeli Fusion 360 valmistamine

Fusion 360 mudeli valmistamine
Fusion 360 mudeli valmistamine
Fusion 360 mudeli valmistamine
Fusion 360 mudeli valmistamine
Fusion 360 mudeli valmistamine
Fusion 360 mudeli valmistamine

Alustasin sellest, et lõin maiuspala alusmudeli. Maiustused satuvad minipunkrisse, kus need võetakse seejärel pöörlevasse ratasesse.

Järgmisena lisasin Fusion disainile Raspberry Pi 3 koos muu elektroonikaga, sealhulgas LCD ja Raspberry Pi kaameramooduliga. Tegin ka punkri, kuhu sai täiendavaid maiustusi salvestada.

Maitsedosaatori seinad tuleks CNC -ruuteril 1/4 tolli vineerist välja lõigata. Sellel on 7 tükki, 4 seina, põrand ning ülemine ja kaaneosa, mida saab maiustuste avamiseks avada ja sulgeda.

Lõpuks lõin kaane avamiseks "uhke" käepideme.

Samm: Pi seadistamine

DFRobot võttis minuga ühendust ja saatis oma Raspberry Pi 3 ja Raspberry Pi kaameramooduli. Nii et pärast kastide avamist hakkasin SD -kaardi seadistamisega tööle. Kõigepealt läksin lehele Raspberry Pi Downloads ja laadisin alla Raspbiani uusima versiooni. Seejärel ekstraheerisin faili ja panin selle mugavasse kataloogi.. Img -faili ei saa lihtsalt SD -kaardile kopeerida/kleepida, vaid peate selle "põletama" kaardile. OS -i pildi hõlpsaks teisaldamiseks saate alla laadida põletava utiliidi, näiteks Etcher.io. Pärast seda, kui.img -fail oli minu SD -kaardil, sisestasin selle Raspberry Pi -sse ja andsin sellele jõudu. Umbes 50 sekundi pärast ühendasin juhtme lahti ja eemaldasin SD -kaardi. Järgmisena panin SD -kaardi oma arvutisse tagasi ja läksin "boot" kataloogi. Avasin Notepadi ja salvestasin selle tühja failina nimega "ssh" ilma laiendita. Seal oli ka minu lisatud fail nimega "wpa_supplicant.conf" ja panin selle teksti: network = {ssid = psk =} Siis salvestasin ja eemaldasin kaardi ning panin selle tagasi Raspberry Pi 3. See peaks nüüd võimaldama SSH kasutamine ja WiFi -ga ühenduse loomine.

Samm: tarkvara installimine

Video voogesitamiseks on mitu erinevat tarkvara, näiteks VLC ja motion, kuid otsustasin kasutada mjpeg-streamerit selle madala latentsuse ja hõlpsa paigaldamise tõttu. Vastavalt saidil olevatele juhistele tehke järgmist: git kloon https://github.com/jacksonliam/mjpg-streamer.git Kausta, seejärel tippige: sudo apt-get install cmake libjpeg8-dev Vajalike teekide installimiseks. Muutke oma kataloog allalaaditud kausta ja tippige seejärel: make Järgneb: sudo make install Tarkvara kompileerimiseks. Lõpuks sisestage: export LD_LIBRARY_PATH =. Ja selle käivitamiseks tippige:./mjpg_streamer -o "output_http.so -w./www" -i "input_raspicam.so" Ojale pääsete juurde, minnes aadressile: https:// Pi kohalik ip: 8080/stream. html Oja vaatamiseks.

Samm: veebiserveri seadistamine

Selleks, et masinat saaks WiFi kaudu väliselt juhtida, vajasin veebiserverit. Veebiserver teenindab põhimõtteliselt veebilehti, kui seda tavaliselt nõuab brauser. Tahtsin midagi kiiret ja lihtsat seadistada ja kasutada, võttes Apache laualt maha. Tahtsin ka veebiserveri Pythoniga liidestada, et saaksin Arduino Unot PySerialiga juhtida. See otsing viis mind lõpuks Flaski, kena Pythoni raamatukokku, mis võimaldab kasutajatel kiiresti veebiserveri luua. Kogu kood on lisatud sellele projektilehele. Pythoni skript seab põhimõtteliselt 2 veebilehte, millest üks on juurkataloogi '/' ja teine '/dispense'. Indeksilehel on HTML -vorm, mille saatmisel saadetakse väljastamislehele postitustaotlus. Seejärel kontrollib väljastamisleht, kas postituse väärtus on õige, ja kas see on teade „D / n” saadetakse jada kaudu Arduino Unole.

6. samm: IO juhtimine

IO juhtimine
IO juhtimine
IO juhtimine
IO juhtimine
IO juhtimine
IO juhtimine
IO juhtimine
IO juhtimine

Otsustasin samm -mootori juhtimiseks kasutada DRV8825 -d, peamiselt seetõttu, et see vajab ainult 2 IO -tihvti ja reguleeritavat voolupiirangut. Proovisin kasutada L293D -d, kuid see ei suutnud samm -mootori koormust taluda. DRV8825 juhitakse STEP -tihvti pulseerides PWM -i kaudu ja suunda juhitakse, tõmmates DIR -tihvti kõrgele või madalale. Kasutataval samm -mootoril on 1,2 amprit, seega seadsin VREF -i pinge väärtusele.6V. Järgmine oli LCD. Tahtsin kasutada I2C -d vajaliku IO hulga vähendamiseks ja koodi lihtsustamiseks. Raamatukogu installimiseks otsige lihtsalt "LiquidCrystal_I2C" ja installige see. Lõpuks kontrollib Arduino Uno, kas jadapuhvris on uut teavet ja kas see vastab „D” -le. Kui see juhtub, paneb Uno samm -mootori liikuma 180 kraadi ja seejärel -72 kraadi, et vältida maiustuste sattumist.

Soovitan: