Introducere - The Mixologist

Proiectul presupune implementarea unui robot de facut cocktail-uri.

Nimanui nu ii place sa faca pe barmanul la o petrecere. The Mixologist este aici sa te lase sa te distrezi!

Descriere generala

Aparatul foloseste o aplicatie Android pentru a selecta bautura dorita, si o prepara rapid si usor.

Am folosit un motor pas cu pas pentru a misca paharul la sticla dorita, iar un alt motor se ocupa de dozarea a exact 40ml de bautura din fiecare tip.

Scopul final al proiectului este ca produsul rezultat sa fie cat mai usor de folosit, si cat mai autonom.

Singura interactiune cu utilizatorul este introducerea unui pahar in dispozitiv, si selectarea bauturii, folosind aplicatia Android.

Hardware Design

Lista piese hardware:

  • 2x NEMA 17 motor
  • 2x A4988 Stepper Driver
  • 2x Tije metalice cu filet, pentru ghidajul dispenserului de bauturi.
  • 2x Sine cu rulmenti, pentru ghidajul paharului
  • 1x Curea transmisie, pentru actionarea dispozitivului de ghidaj al paharului.
  • 2x Endstop button, pentru obinerea referintelor la locatia de start a axelor de miscare.
  • 6x Bar optics dispenser, pentru dozarea a exact 40ml de alcool.
  • 4x Tranzistor Tip31C, pentru controlul benzilor de LED-uri si posibilitatea unor upgrade-uri suplimentare.
  • 1x Wemos D1 Mini, pentru comunicarea wireless cu dispozitivul.

Proiectul contine o serie de piese 3D printate. Modelele folosite se gasesc pe profilul meu de thinkercad: lsNNZC0tzV5-mihailupeagmailcom.

Scheme electrice:

Schema driverului de motoare:

Schema driverului de LED-uri:

Pentru modulul de WiFi, am folosit un WeMos D1 Mini, conectand 4 pini ca output, si inca un pin pe post de CLK. Cand primesc o comanda noua, setez cei 4 pini, reprezentand o valoare pe 4 biti, si updatez CLK-ul pentru a anunta microcontrollerul ca o valoare noua este pregatita. Am decis sa nu atasez si acest modul, intrucat pe viitor comunicarea va fi realizata folosind I2C, pentru o comunicare bidirectionala si mai avansata.

Software Design

Dezvoltarea a fost realizata folosind Atmel Studio. Nu am folosit librarii externe, totul fiind implementat folosind timere si semnale. Am decis sa merg pe o varianta non-blocanta a main loop-ului, folosind un State Machine.

Astfel, controllerul meu are 4 stari posibile:

  • Waiting : Astept sa primesc o instructiune noua.
  • Homing : Axele isi cauta originea, nu ar trebui sa fac nicio alta actiune in acest moment.
  • Moving Glass : Transport paharul catre sticla din care urmeaza sa torn.
  • Pouring : Actionez motorul care imi toarna in pahar.
  • Pause : Astept. State implementat pentru a permite umplerea unui pahar pentru a turna iar din aceeasi sticla.

In starea de Waiting se realizeaza majoritatea procesarii.

  • Daca am deja o comanda de bautura, verific daca mai am de adaugat ingrediente.
  • Daca nu mai am de adaugat ingrediente, inseamna ca am terminat bautura.
  • Daca nu am o comanda de bautura, verific daca am primit una noua de la modulul de WiFi.

Pot pastra maxim inca o comanda in memorie in timp ce realizez comanda curenta, datorita modului de implementare al OrderReader-ului.

Headerele modulelor contin declaratiile pinilor folositi, pentru o modificare usoara a acestora.

Rezultate Obţinute

Pe masura dezvoltarii proiectului, acesta a trecut prin multe etape. Scheme de circuite diferite, drivere de motor arse, etc. Circuitele finale au fost lipite pe PCB-uri si urmeaza sa renunt la modularitate in favoarea fiabilitatii lipiturilor, in locul firelor si a conectorilor.

Varianta finala a proiectului se poate vedea in urmatoarea fotografie:

As dori sa le multumesc prietenilor mei de la @Club 229 pentru sustinerea de care au dat dovada. As fi renuntat de mult si as fi facut doar o sticla si o pompa de apa pentru dozarea alcoolului daca nu erau ei!

Proiectul a fost un succes, aparatul fiind folosit la prima petrecere imediat dupa PM Fare :)

Download

Sursa proiectului se gaseste pe Gihub:

Proiect-PM---Mixologist

Modelele 3D se gasesc pe contul meu de Thinkercad, cu tag-ul MIXOLOGIST.

lsNNZC0tzV5-mihailupeagmailcom

Aplicatia Android a fost realizata pe MIT App Inventor.

aZXn7e6gAD46e

Codul pentru WeMos D1 Mini.

helloserver.zip

Bibliografie/Resurse

pm/prj2019/dionita/robo-mixologist.txt · Last modified: 2021/04/14 17:07 (external edit)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0