window.pipedriveLeadboosterConfig = { base: pipedrive.com', companyId: 11580370, playbookUuid: '22236db1-6d50-40c4-b48f-8b11262155be', version: 2, } ;(function () { var w = window if (w.LeadBooster) { console.warn('LeadBooster on jo olemassa') } else { w.LeadBooster = { q: [], on: function (n, h) { this.q.push({ t: 'o', n: n, h: h }) }, trigger: function (n) { this.q.push({ t: 't', n: n }) }, } } })() Automaattinen kissanruokinta-automaatti - The Codest
Codest
  • Tietoa meistä
  • Palvelut
    • Ohjelmistokehitys
      • Frontend-kehitys
      • Backend-kehitys
    • Staff Augmentation
      • Frontend-kehittäjät
      • Backend-kehittäjät
      • Tietoinsinöörit
      • Pilvi-insinöörit
      • QA insinöörit
      • Muut
    • Se neuvoa-antava
      • Tilintarkastus & konsultointi
  • Toimialat
    • Fintech & pankkitoiminta
    • E-commerce
    • Adtech
    • Terveysteknologia
    • Valmistus
    • Logistiikka
    • Autoteollisuus
    • IOT
  • Arvo
    • TOIMITUSJOHTAJA
    • CTO
    • Toimituspäällikkö
  • Tiimimme
  • Tapaustutkimukset
  • Tiedä miten
    • Blogi
    • Tapaamiset
    • Webinaarit
    • Resurssit
Työurat Ota yhteyttä
  • Tietoa meistä
  • Palvelut
    • Ohjelmistokehitys
      • Frontend-kehitys
      • Backend-kehitys
    • Staff Augmentation
      • Frontend-kehittäjät
      • Backend-kehittäjät
      • Tietoinsinöörit
      • Pilvi-insinöörit
      • QA insinöörit
      • Muut
    • Se neuvoa-antava
      • Tilintarkastus & konsultointi
  • Arvo
    • TOIMITUSJOHTAJA
    • CTO
    • Toimituspäällikkö
  • Tiimimme
  • Tapaustutkimukset
  • Tiedä miten
    • Blogi
    • Tapaamiset
    • Webinaarit
    • Resurssit
Työurat Ota yhteyttä
Takaisin nuoli PALAA TAAKSE
2020-04-28
Codest

Automaattinen kissanruokkija

Arkadiusz Buras

Kuvittele tällainen tilanne: kello on 6:00 lauantaiaamuna, makoilet mukavasti sängyssäsi ja nukut yhä syvään. Yhtäkkiä kuulet kissasi raapivan ovea, sen kovaääniset määkimiset muuttuvat sietämättömiksi ja kissallasi on kaikki maailman aika kertoa sinulle, mitä se tarvitsee. Tiedätkö, mitä se todella tarvitsee?

Kuvittele tällainen tilanne: kello on 6:00 lauantaiaamuna, makoilet mukavasti sängyssäsi ja nukut yhä syvään. Yhtäkkiä kuulet kissasi raapivan ovea, sen kovaääniset määkimiset muuttuvat sietämättömiksi ja kissallasi on kaikki maailman aika kertoa sinulle, mitä se tarvitsee. Tiedätkö, mitä se todella tarvitsee? Tiedän - kissasi haluaa nyt ruokaa! Juuri nyt! Mistä minä sen tiedän? Koska jossain vaiheessa aloin ruokkia kissaani juuri tuohon aikaan... Ja siitä tuli tietenkin uusi vakioaika ruoan saamiselle.

Tämä skenaario innoitti minua rakentamaan automaattisen kissanruokinta-automaatin, joka poistaisi kissan aamuruokintaan liittyvät ongelmat ja pitäisi kissan tyytyväisenä.

Ensimmäinen sukupolvi

Ensimmäisen sukupolven kissansyöttölaite oli yksinkertainen... MVP tehty pahvista, yksinkertaisesta servosta ja ESP WeMosista. Se käytti servoa kääntämään yläastiaa 180 astetta ruoan jakamiseksi.

Mikrokontrolleri oli kytketty paikalliseen Wi-Fi-yhteyteeni ja kommunikoi HomeAssistantia käyttävän Smart Home -palvelimen kanssa MQTT-protokollan kautta. Tämän ansiosta pystyin käyttämään HomeAssistant-automaatiojärjestelmää ruokinnan ja ruoan annostelun ajoittamiseen Google Home -komennoilla. Jokainen ruokinta määriteltiin erityiseksi tapahtumaksi Google-kalenterissa. Näin pystyin helposti valvomaan kissan ruokinta-aikaa ja muuttamaan sitä tarvittaessa.

Tämä sukupolvi kohtasi tietysti joitakin ongelmia:

  • yläsäiliö irtosi joskus servokahvasta ja kaatoi koko ruoan (kutsuin sitä "Jackpot-ilmiöksi"),
  • sen muotoilu ei ollut paras mahdollinen,
  • pahvi alkoi rapistua.

Kuten useimpia MVP-laitteita, sitä käytettiin vain kaksi vuotta, kunnes se hajosi.

Toinen sukupolvi

Päätin, että seuraavan kissan syöttölaitteen pitäisi:

  • rakennetaan 3D-tulostetuista osista,
  • käytä Raspberry Pi 3:a,
  • on pieni kamera, jolla voi seurata, miten kissa reagoi ja mitä eläin teki.

Aloitin koko prosessin ruoan jakamisen peruselementtien suunnittelusta. Kun mallit olivat valmiit, kaikki elementit tulostettiin Creality Ender-3:lla ja PLA:lla.

Osat

Kun olin varmistanut, että kaikki toimi, jatkoin loput osat suunnittelua ja tulostamista:

RaspberryPi-alusta (taso 0)

Siinä on erityiset paikat ruuveille Raspberry Pi:n asentamisen helpottamiseksi. Lisäksi etupuolella on pieni reikä, josta pääsee helposti käsiksi Raspberry Pi:n SD-korttiin.

Kulhon pidike

Tätä muoviosaa käytetään metallisen ruokakupin sijoittamiseen (tietysti se tulostettiin kultaisilla filamenteilla kissani maineen ja kunnian vuoksi). Se on liitetty pohjaan 2 neodyymimagneetilla.

Servopidike (taso 1)

Tätä tasoa käytetään servon pitämiseen, kun se pyörittää seuraavalla tasolla olevaa osaa. Siinä on myös pieni kaltevuus ruoan tarjoilun helpottamiseksi.

Annosmekanismin säiliö (taso 2)

Tämä on yksinkertainen yleinen taso, joka jakaa ruokaa yläpuolella olevasta astiasta. Sitä pyörittää servo.

Elintarvikesäiliön pidike (taso 3)

Tätä osaa käytetään ruoka-astian pitämiseen. Se on ainoa muoviosista, jota ei ole 3D-tulostettu. Halusin minimoida ruokakontaktin 3D-tulostettujen osien kanssa. Teoriassa läpinäkyvässä PLA-muovissa ei ole myrkyllisiä epäpuhtauksia, mutta ostin halvimman muroannostelijan ja otin ruokasäiliön osan varmuuden vuoksi. Lisäksi se näyttää todella siistiltä.

Kotelo ja kansi

Kaksi viimeistä osaa olivat kotelo ja kansi. Ei mitään erikoista tässä, paitsi lisää kultaa, jotta se näyttäisi paremmalta ja voittaisi kissan ihailun.

Kaikki osat

Lopullinen kokoonpano

Ohjelmisto

Vadelma Pi on käynnissä Raspbian provisioitu käyttäen the ansible-pelikirja käyttää näitä palveluja:

MotionEye

MotionEye on avoimen lähdekoodin ohjelmisto oman yksityisen seurannan rakentamiseen. Se havaitsee minkä tahansa Raspberry Pi:hen liitetyn kameran. Lisäksi saat valmiiksi liikkeentunnistuksen, päätepisteen streamien jakamiseen ja webhook-tuen.

Servopalvelu

Tämä palvelu ohjaa servon pyörimistä. Se on yksinkertainen Python skripti, joka muodostaa yhteyden MQTT-palvelimeen, jolla Smart House -ohjelmistoni toimii, ja odottaa viestiä, joka käynnistää kierron.

Johdettu palvelu

Aivan kuten servopalvelu, se toteuttaa protokollan MQTT:n ohjaamaa valonlähdettä varten. HomeAssistent.

Kodin avustajan automaatio

Ja lopuksi HomeAssistant-automaatio, joka käynnistää ruokinnan.

Se käynnistää ruoan annostelun kahdessa tilanteessa:

  • kun ruokinta-aika ilmestyy kalenteriin,
  • kun kansainvälinen avaruusasema on kotipaikkani yläpuolella.

Tämä automaatio koodi näyttää tältä:

- alias: Syötä kissa
laukaista:
- foorumi: valtio
entity_id: "binary_sensor.iss".
from: 'off'
to: 'on'
- foorumi: valtio
entity_id: calendar.cat_feed_schedule
from: 'off'
to: 'on'
toiminta:
- palvelu: script.feed_the_cat

Yhteenveto

Tämä versio ei tietenkään ole viimeinen. Mutta se palvelee tarkoitustaan - kissa on hyvin ravittu ja minulla on laiskat aamut 🙂 .

Lue lisää:

– E-commerce: Pelin uusi tila 2020 (raportti)

– Miten johtaa yritystä kriisin aikana?

– Ruby-ohjelmointi. Aloittelijan terminaali - osa 2

Aiheeseen liittyvät artikkelit

Codest

The Codest Ydinarvo #1

The Codest uskoo neljään keskeiseen arvoon, jotka ovat kaikkien The Codest-tiimien toimien ytimessä. Tässä artikkelissa CEO ja toinen perustajamme Greg Polec selittää, mitä...

Codest
Greg Polec TOIMITUSJOHTAJA
Codest

The Codest:n menestystarina: Finance Lead Iza

Tässä artikkelisarjassa kerromme tarinoita The Codest:n joukkuetovereista, jotka ovat vaikuttaneet yrityksemme nykyiseen muotoon. Seuraavassa artikkelissa kysymme....

Codest
Monika Krupa Markkinointipäällikkö
Codest

The Codest:n menestystarina: Lukasz Brzeszcz

Tällä kertaa The Codest Success Storyn tähti on Lukasz Brzeszcz, Ruby-ohjelmiston kehittäjämme ja ohjelmoijamme. Miten Lukaszin matka The Codest:n kanssa alkoi ja mikä auttoi häntä...

Codest
Monika Krupa Markkinointipäällikkö
Codest

MVP-lähestymistapaa käytettiin menestyksekkäästi The Codest:n brändin uudistamiseen.

Jokin aika sitten kerroimme The Codest:n uudesta avauksesta. Toteutimme intensiivisen uudelleenbrändäysprosessin ja esittelimme sen maailmalle muutama päivä sitten. Se...

Codest
Jakub Czosnyka Markkinointipäällikkö
Codest

TheCodestReview #2 - viikoittainen ohjelmistotekniikan mehu

Hei ja lämpimästi tervetuloa TheCodesReview-sarjamme 2. jaksoon. Tällä viikolla olemme keskittyneet laatuun ohjelmistoprojekteissa, frontend-arkkitehtuurin merkitykseen ja siirtymiseen....

Codest
Kamil Ferens Kasvupäällikkö

Tilaa tietopankkimme ja pysy ajan tasalla IT-alan asiantuntemuksesta.

    Tietoa meistä

    The Codest - Kansainvälinen ohjelmistokehitysyritys, jolla on teknologiakeskuksia Puolassa.

    Yhdistynyt kuningaskunta - pääkonttori

    • Toimisto 303B, 182-184 High Street North E6 2JA
      Lontoo, Englanti

    Puola - Paikalliset teknologiakeskukset

    • Fabryczna Office Park, Aleja
      Pokoju 18, 31-564 Krakova
    • Brain Embassy, Konstruktorska
      11, 02-673 Varsova, Puola

      Codest

    • Etusivu
    • Tietoa meistä
    • Palvelut
    • Tapaustutkimukset
    • Tiedä miten
    • Työurat
    • Sanakirja

      Palvelut

    • Se neuvoa-antava
    • Ohjelmistokehitys
    • Backend-kehitys
    • Frontend-kehitys
    • Staff Augmentation
    • Backend-kehittäjät
    • Pilvi-insinöörit
    • Tietoinsinöörit
    • Muut
    • QA insinöörit

      Resurssit

    • Faktoja ja myyttejä yhteistyöstä ulkoisen ohjelmistokehityskumppanin kanssa
    • Yhdysvalloista Eurooppaan: Miksi amerikkalaiset startup-yritykset päättävät muuttaa Eurooppaan?
    • Tech Offshore -kehityskeskusten vertailu: Tech Offshore Eurooppa (Puola), ASEAN (Filippiinit), Euraasia (Turkki).
    • Mitkä ovat teknologiajohtajien ja tietohallintojohtajien tärkeimmät haasteet?
    • Codest
    • Codest
    • Codest
    • Privacy policy
    • Verkkosivuston käyttöehdot

    Tekijänoikeus © 2025 by The Codest. Kaikki oikeudet pidätetään.

    fiFinnish
    en_USEnglish de_DEGerman sv_SESwedish da_DKDanish nb_NONorwegian fr_FRFrench pl_PLPolish arArabic it_ITItalian jaJapanese ko_KRKorean es_ESSpanish nl_NLDutch etEstonian elGreek fiFinnish