Autorul poate fi contactat la adresa: teodor.poncu@gmail.com
Acest proiect are drept scop construirea unui remote pet feeder. Use case-ul este unul foarte comun intalnit, si anume cand datorita programului aglomerat sau a unei eventuale deplasari inafara localitatii, stapanul nu-si poate hrani companionul patruped la intervale de timp adecvate.
Deviceul va fi controlabil remote prin intermediul unei aplicatii mobile, astfel stapanul avand posibilitatea de a-si hrani animalul indiferent de locatia in care se afla, fie stabilind un feeding schedule, sau manual prin intermediul aplicatiei, cat timp are acces la o conexiune cu internetul.
Acest proiect are 2 componente principale:
Receiverul va astepta mesaje de la aplicatia mobila, in functie de care va face fie actiuni imediate sau programari pentru orarul de hranire.
Functionarea se va derula in felul urmator:
Schema electrica *PLACEHOLDER AS OF 05.06.2018*
Schema electrica s-a modificat de la publicarea acesteia, insa gratie licentei de Eagle nu am reusit sa o mai modific pentru ca nu ma lasa sa adaug mai mult de un custom block, iar cum nu am reusit sa gasesc pentru MG996/ESP8266 un modul .sch pe internet sa le copiez in schema, well that's the best I can provide.
Componente necesare:
Software design-ul a fost pe deoparte cea mai grea si cea mai usoara parte.
De ce grea? - pentru ca a durat ceva timp pana sa gasesc cum se comunica cu ESP8266
De ce usoara? - deinadata ce am gasit cum se comunica cu ESP8266 totul a devenit relativ usor.
In resurse este pusa o implementare a comunicarii seriale cu ESP8266 cu un ATMega16. Am modificat implementarea uploadata pentru propiile taskuri si modelul ATMega324p (o diferenta ar fi functiile de comunicare prin seriala).
Pasul 1: Tentatiza cumparat piese.
Dupa o lista initiala a componenetelor necesare, aflu ca majoritatea nu sunt pe stoc.
Pasul 2: Regandit schema electrica/componente.
Shiftarea inspre un modul ESP8266 si un alt servomotor de consum mai mic.
Pasul 3: Esp8266 are nevoie de o alimentare de 3.3V.
Deschis sheet-ul cu componente electrice de pe site-ul de PM. Cautat numele pieselor auxiliare necesare pentru alimentare pe google. Gasit stoc doar pe farnell.uk. Intrat in panica. Cautat pe google convertor 3.3V-5V. Gasit convertor. Problema rezolvata.
Pasul 4: Asamblat placa.
Cumparat o groaza de fire, vazut ca firele vin manunchi de 10, dezlipit fire 1 cate 1. Iesit o caracatita de chestie. Pe viitor nu mai dezlipesc firele.
Pasul 5: Codat.
Deschis documentatie ESP8266. Instructiuni cu caracter dubios, care nu par a cod de C. Citit documentatie multa. Gasit cod pe net pentru ATMega16 folosind tot ESP8266. Carpit cod pentru ATMega324. (Codul pentru ESP, este un wrapper pentru transmitere seriala a instructiunilor specifice ESP8266 prin seriala, codul de transmisie seriala este cel din laborator). Facut motor sa se invarta. (Mai mult cod inspirat din laborator).
Pasul 6: Lucru manual.
2 maini de stanga. Cumparat container de plexiglass de la zoomania. Decupat container.
Pasul 7: Bug fixing. –AMANAT pentru ca prelungire deadline–
Resurse Software