Skip to content
This repository has been archived by the owner on May 11, 2023. It is now read-only.

Softwarelager til eksamensprojekt i Informatik B, der går ud på at lave en automatisk katte fodrer med indbygget vægt, så man kan følge sin kats vægt.

License

Notifications You must be signed in to change notification settings

jehaj/automatisk-katte-fodrer

Repository files navigation

Aukafo

Aukafo står for automatisk katte fodrer. Dette projekt er softwarelageret til eksamensprojektet i Informatik B.

Man kan se en video om produktet på YouTube (https://youtu.be/m1rreF02XZE). Hjemmesiden, der bruges til at interagere med det fysiske produkt, findes her.

Billede af Aukafo

Design valg

Produktet er færdigt. Jeg valgte at bruge en ESP8266 (mikrocontroller) i stedet for en Raspberry Pi. Det er både billigere og resulterer i en mindre formfaktor. Derudover betyder det også, at produktet er nemmere at sætte op - som vil sænke prisen yderligere, hvis det blev masseproduceret.

Fremtidige ændringer

Den elektroniske del af produktet virker, men der er problemer med at få fodret fra kassen ned til sneglen, der skubber fodret ned i skålen. Så det virker et par gange, men så ryger der ikke længere mad ned til sneglen, fordi det hober sig op i kassens munding. Det kunne måske løses ved at ændre designet af kassen ved f.eks. at gøre hullet større eller ændre opbevaringskassens design - designet er i øjeblikket (1). Designs til foder opbevaringskassen

Eftersom at serveren (APIen) kører på Heroku, sættes den til at sove, når den ikke bruges i længere tid. Det er et problem på grund af, at indstillingerne (tidspunkterne og mængden katten skal fodres) er kun "gemt" i en variabel og derfor bliver nulstillet når serveren vækkes. Målene fra vægten bliver gemt i en PostgreSQL database, så det er ikke et problem der. Løsningen kunne være at også gemme indstillingerne i en database.

ToDo-list

  • Begynd på projekt
  • Server API (Node.js)
    • Modtag data fra Raspberry Pi (post request)
    • Gem data i DB (sqlite / mongodb)
    • Være i stand til at sende data til hjemmeside (json)
    • Opdater indstillinger
      • websocket opdaterer indstillinger til Raspberry Pi
      • lav en get request fra mikrocontrolleren med intervaller for at se om indstillingerne har ændret sig.
  • Raspberry Pi (Python)
    • Drej servomotor
    • Få data fra vægt (maks 15 min efter foder er givet venter den)
    • Send data til server (post request)
  • Hjemmeside (html/css/js css:bulma)
    • Lav hjemmeside
      • Indstillinger (tidspunkt på dagen og hvor meget foder skal af gives)
      • Sektion til data
    • Modtag data fra server API
    • Vis graf på hjemmeside
  • Mikrocontroller (C++/Arduino) - I stedet for Raspberry Pi
    • Drej servomotor
    • Få data fra vægt
    • Send data til server

About

Softwarelager til eksamensprojekt i Informatik B, der går ud på at lave en automatisk katte fodrer med indbygget vægt, så man kan følge sin kats vægt.

Resources

License

Stars

Watchers

Forks