Talaan ng mga Nilalaman:

IoT Treat Dispenser para sa Mga Alagang Hayop: 7 Hakbang (na may Mga Larawan)
IoT Treat Dispenser para sa Mga Alagang Hayop: 7 Hakbang (na may Mga Larawan)

Video: IoT Treat Dispenser para sa Mga Alagang Hayop: 7 Hakbang (na may Mga Larawan)

Video: IoT Treat Dispenser para sa Mga Alagang Hayop: 7 Hakbang (na may Mga Larawan)
Video: MGA IBA'T IBANG URI O KULAY NG REGLA NA DAPAT MONG MALAMAN#menstration#mgaiba't-ibangkulayngmens 2024, Nobyembre
Anonim
Image
Image
IoT Treat Dispenser para sa Mga Alagang Hayop
IoT Treat Dispenser para sa Mga Alagang Hayop

Mayroon akong dalawang mga pusa, at ang pagkakaroon upang bigyan sila ng mga tinatrato tungkol sa 3 beses sa isang araw ay naging isang istorbo. Tiningnan nila ako ng kanilang mga nakatutuwa na mukha at matinding mga titig, pagkatapos ay tumatakbo sa isang kahon na puno ng mga berde ng pusa, umangal at nagmamakaawa para sa kanila. Napagpasyahan kong sapat na. Hindi na nakakakuha ng up upang bigyan lamang ang isang pusa ng ilang mga paggamot. Ngayon na ang oras para sa isang makina ng dispensing, sapagkat tulad ng sinabi: "Umiiral ang mga programmer upang gumawa ng mga kumplikadong bagay upang gumawa ng mas simpleng mga bagay."

Itinaguyod ng DFRobot ang proyektong ito.

Listahan ng mga bahagi:

  • DFRobot Raspberry Pi 3
  • DFRobot Raspberry Pi Camera Module
  • DFRobot Stepper Motor na may Planeta Gear
  • I2C LCD 16x2
  • Barrel Jack papunta sa Terminal
  • DRV8825 Stepper Motor Driver
  • Kapasitor 100 µF
  • Arduino UNO at Genuino UNO
  • Jumper wires (generic)

Hakbang 1: Lumilikha ng isang Disenyo

Lumilikha ng isang Disenyo
Lumilikha ng isang Disenyo

Una ay ang pagpipilian kung paano makontrol ang aking bagong naisip na makina. Ang Bluetooth ay maaaring magkaroon ng masyadong maikli sa isang saklaw, sa 30 talampakan lamang na walang mga hadlang. Sa impormasyong ito, pinili kong gumamit ng WiFi. Ngunit ngayon, paano ko magagamit ang WiFi upang makontrol ang makina? Ang isang Raspberry Pi 3 ay nagtayo ng mga kakayahan sa WiFi, pinapayagan akong gumamit ng Flask upang mag-host ng isang webpage. Susunod ay ang paksa ng enclosure at kung paano magtapon ng mga paggamot. Napagpasyahan ko ang isang umiikot na disenyo ng gulong, kung saan ang mga gamutin ay mahuhulog sa maliliit na seksyon, paikutin, at pagkatapos ay ang mga paggamot ay babagsak papunta sa isang rampa at maglakbay sa harap ng makina.

Hakbang 2: Paggawa ng Modelong Fusion 360

Paggawa ng Modelong Fusion 360
Paggawa ng Modelong Fusion 360
Paggawa ng Modelong Fusion 360
Paggawa ng Modelong Fusion 360
Paggawa ng Modelong Fusion 360
Paggawa ng Modelong Fusion 360

Nagsimula ako sa pamamagitan ng paglikha ng isang batayang modelo para sa container ng paggamot. Ang mga paggamot ay nahuhulog sa isang mini-hopper kung saan sila dadalhin sa isang umiikot na gulong.

Susunod na idinagdag ko ang Raspberry Pi 3 sa disenyo ng Fusion, kasama ang iba pang mga electronics, kasama ang isang module ng LCD at Raspberry Pi camera. Gumawa rin ako ng isang hopper na maaaring mag-imbak ng mga karagdagang paggagamot.

Ang mga pader para sa dispenser ng paggamot ay dapat na putulin ng 1/4 pulgada na playwud sa isang router ng CNC. Mayroong 7 piraso dito, 4 dingding, sahig, at isang tuktok at takip na takip na maaaring buksan at isara upang mailantad ang mga paggagamot.

Panghuli, lumikha ako ng isang "magarbong" hawakan upang buksan ang takip.

Hakbang 3: Pag-set up ng Pi

Inabot ako ng DFRobot at ipinadala ang kanilang Raspberry Pi 3 at Raspberry Pi Camera Module. Kaya pagkatapos kong buksan ang mga kahon ay nakarating ako sa trabaho sa pamamagitan ng pagse-set up ng SD card. Una akong nagpunta sa pahina ng Mga Pag-download ng Raspberry Pi at na-download ang pinakabagong bersyon ng Raspbian. Kinuha ko pagkatapos ang file at ilagay ito sa isang maginhawang direktoryo. Hindi mo maaaring kopyahin / i-paste lamang ang isang.img file sa isang SD card, kailangan mong "sunugin ito" sa card. Maaari kang mag-download ng nasusunog na utility tulad ng Etcher.io upang madaling mailipat ang imahe ng OS. Matapos ang.img file ay nasa aking SD card ay ipinasok ko ito sa Raspberry Pi at binigyan ito ng lakas. Matapos ang halos 50 segundo ay inalis ko ang kurdon at tinanggal ang SD card. Susunod na ibalik ko ang SD card sa aking PC at pumunta sa direktoryo ng "boot". Binuksan ko ang Notepad at nai-save ito bilang isang blangko na file na pinangalanang "ssh" na WALANG extension. Mayroon ding isang file na idinagdag kong tinawag na "wpa_supplicant.conf" at ilagay dito ang teksto: network = {ssid = psk =} Pagkatapos ay nai-save ko at inilabas ang card at ibalik ito sa Raspberry Pi 3. Maaari na itong payagan ngayon ang paggamit ng SSH at pagkonekta sa WiFi.

Hakbang 4: Pag-install ng Software

Mayroong maraming magkakaibang mga softwares na maaaring mag-stream ng video, tulad ng VLC at paggalaw, ngunit napagpasyahan kong gamitin ang mjpeg-streamer dahil sa mababang latency at madaling mai-install. Ayon sa mga tagubilin sa site, gawin ang: git clone https://github.com/jacksonliam/m.jpg-streamer.git Sa isang folder, pagkatapos ay i-type ang: sudo apt-get install cmake libjpeg8-dev Upang mai-install ang mga kinakailangang aklatan. Palitan ang iyong direktoryo sa folder na iyong na-download at pagkatapos ay i-type: gawin Sinundan ni: sudo gumawa ng pag-install Upang maipon ang software. Panghuli ipasok: i-export ang LD_LIBRARY_PATH =. At upang patakbuhin itong uri:./m.jpg_streamer -o "output_http.so -w./www" -i "input_raspicam.so" Maaari mong ma-access ang stream sa pamamagitan ng heading sa: https:// Ang lokal na ip ng ip: 8080 / stream. html Upang matingnan ang stream.

Hakbang 5: Pagse-set up ng isang Webserver

Upang makontrol ang makina sa labas ng WiFi kailangan ko ng isang webserver. Karaniwang naghahatid ang isang webserver ng mga webpage kapag hiniling, karaniwang sa pamamagitan ng isang browser. Nais ko ng isang bagay na mabilis at simpleng i-setup at gamitin, inaalis ang Apache sa mesa. Nais ko ring i-interface ang webserver sa Python upang makontrol ko ang Arduino Uno sa PySerial. Ang paghahanap na ito sa huli ay humantong sa akin sa Flask, isang magandang library ng Python na mabilis na lumikha ng mga gumagamit ng isang webserver. Ang buong code ay nakakabit sa pahina ng proyekto na ito. Karaniwang nagtatakda ang python script ng 2 mga webpage, isa na naka-host sa root Directory, '/', at isa pa na naka-host sa '/ dispense'. Ang pahina ng index ay may isang form na HTML na kapag naisumite ay nagpapadala ng isang kahilingan sa pag-post sa pahina ng dispense. Sinusuri ng pahina ng dispense kung tama ang halaga ng post, at kung ito ang mensahe na 'D / n' na ipinadala sa pamamagitan ng serial sa Arduino Uno.

Hakbang 6: Pagkontrol sa IO

Pagkontrol sa IO
Pagkontrol sa IO
Pagkontrol sa IO
Pagkontrol sa IO
Pagkontrol sa IO
Pagkontrol sa IO
Pagkontrol sa IO
Pagkontrol sa IO

Napagpasyahan kong gamitin ang DRV8825 upang himukin ang aking stepper motor, higit sa lahat dahil sa nangangailangan lamang ito ng 2 IO pin kasama ang pagkakaroon ng naaayos na kasalukuyang nililimitahan. Sinubukan kong gumamit ng isang L293D ngunit hindi nito mahawakan ang pagkarga ng stepper motor. Ang DRV8825 ay kinokontrol ng pag-pulso ng STEP pin sa pamamagitan ng PWM, at ang direksyon ay kinokontrol ng paghila ng DIR pin na mataas o mababa. Ang stepper motor na ginagamit ko ay may 1.2 amp draw, kaya inayos ko ang boltahe ng VREF sa.6V. Susunod ay ang LCD. Nais kong gamitin ang I2C upang mabawasan ang dami ng kailangan ng IO at upang gawing simple ang code. Upang mai-install ang library, maghanap lamang para sa "LiquidCrystal_I2C" at i-install ito. Sa wakas, ang Arduino Uno ay sumusuri para sa bagong impormasyon sa serial buffer at kung tumutugma ito sa 'D'. Kung gagawin ito, sanhi ng Uno na ilipat ang stepper motor ng 180 degree at pagkatapos ay -72 degree upang maiwasan ang pagtamo ng mga paggamot.

Inirerekumendang: