Vending Machine

Introducere


Proiectul urmărește realizarea unui vending machine de dimensiuni reduse de la care poți cumpăra orice are loc în aparat :-) .

Motivul pentru care am ales să fac acest proiect este că:

“Am ales să fac asta, altceva n-a fost,
Și vreau să fac bani din asta, altfel n-are rost,”
Caddy

De asemenea am fost mereu curios cum functioneaza si cat de greu e sa faci unul. Ma lasa masca si pretul ridicat :)) acum stiu insa de ce e asa. La proiect ma gandeam de la inceputul anului.

Sfatul meu este ca daca stii ce ai sa faci, sau daca te uite cu cateva luni inainte ce ai vrea sa faci and all, sa te gandesti bine la componente si sa dai comanda de majoritatea din China, ca e mult mai ieftin si dureaza pana vin.

Descriere generală


Schema bloc:

Schema electrica:

Microcontroller-ul ATmega324 de pe plăcuța de bază va controla un număr de steppere ce învârt spiralele în care se află produsele. De asemenea va decide ce fel de monede au fost inserate și va afișa pe un ecran numărul de credite disponibile.

Hardware Design


Lista de piese & materiale:

^ COMPONENTA ^ PRET/Buc. ^ CANTITATE ^ PROVENIENTA ^ PRET ^

Placaj 1220x610x5mm19,95 lei3Brico Depot59,85lei
Panza Bomfaier Metal+Plastic 300x20x0,65 24/141,26 lei1Dedeman1,26 lei
Sarma Neagra 3mm 0,4kg (5,05lei/kg)2,02 lei1Dedeman2,02 lei
Spary Metalic Negru 400ml Den Braven14,60 lei1Mat Haus14,60 lei
Surub pal/lemn 3×10,04 lei36,1Mat Haus1,37 lei
Pastile autoadezive (din alea sa nu alunece)2,59 lei1Mat Haus2,59 lei
Balama semilata2,36 lei3Mat Haus7,08 lei
Pilon de Metal M3 4mm0,79 lei12Optimus Digital9,48 lei
Pilon de Metal M3 8mm1,00 lei16Optimus Digital16,00 lei
Piulita M30,20 lei30Optimus Digital6,00 lei
Surub M3 4mm0,20 lei40Optimus Digital8,00 lei
Surub M2 16mm0,15 lei10Optimus Digital1,50 lei
Surub M3 16mm0,25 lei20Optimus Digital5,00 lei
Fir negru cu diametru de 1mm1,95 lei1Optimus Digital1,95 lei
Fir galben cu diametru de 1mm1,95 lei1Optimus Digital1,95 lei
Fir alb cu diametru de 1mm1,95 lei1Optimus Digital1,95 lei
Fir rosu cu diametru de 1mm1,95 lei1Optimus Digital1,95 lei
Fir verde cu diametru de 1mm1,95 lei1Optimus Digital1,95 lei
Diall cuie 1mm diam, L15mm 125g2,95 lei1Brico Depot2,95 lei
MG Fierastrau 300mm14,50 lei1Brico Depot14,50 lei
Smirghel rulou P603,98 lei1Brico Depot3,98 lei
Placuta test 4*6cm10,00 lei1Din Camin10,00 lei
Magnet Ferita disc D5mm H5mm, putere 100g0,99 lei6Arca Hobber5,94 lei
Magnet Ferita disc D10mm H3mm, putere 200g1,24 lei6Arca Hobber7,44 lei
Magnet neodim disc, D10 mm H1mm, putere 500 g1,93 lei10Arca Hobber19,30 lei
Magnet neodim disc, D8 mm H3mm, putere 1,5 kg2,89 lei10Arca Hobber28,90 lei
Modul senzor IR infrarosu - evita obstacole4,51 lei6Ardu Shop27,06 lei
Motor DC 3V-6V cu reductor 1:4812,96 lei4Ardu Shop51,84 lei
Buton MARE - Push Button - Culoare : Roșu 2,45 lei4Ardu Shop9,80 lei
Spirala protectie cabluri - Culoare : Negru4,99 lei2Ardu Shop9,98 lei
10 x Fire Dupont mama-mama 10cm3,44 lei3Ardu Shop10,32 lei
Breadboard 4005,49 lei1Ardu Shop5,49 lei
Modul ecran Nokia 5110 - roșu15,47 lei1Ardu Shop15,47 lei
10 x Fire Dupont mama-tata 10cm3,44 lei1Ardu Shop3,44 lei
40 x Fire Dupont mamă-tată 30cm16,07 lei1Ardu Shop16,07 lei
Suport letcon universal9,76 lei1Ardu Shop 9,76 lei
Multimetru digital DT-830B32,93 lei1Ardu Shop32,93 lei
Punte H (H-Bridge) L9110S pentru motor DC8,47 lei1Ardu Shop8,47 lei
Rola leduri 2835 SMD alb rece 5m 60led/m32,13 lei1Ardu Shop32,13 lei
Breadboard 170 puncte - Culoare : Verde2,46 lei1Ardu Shop2,46 lei
Breadboard 170 puncte - Culoare : Negru2,46 lei1Ardu Shop2,46 lei
Pistol lipit cu baton 20,00 lei1Jumbo20,00 lei
Zip ties multicolor4,00 lei1Jumbo4,00 lei
Zip ties negru3,00 lei1Jumbo3,00 lei
Batoane lipivi5,00 lei1Jumbo5,00 lei
Vopsea Well Negru Metalic (spay) 400ml22,00 lei2Brico Depot44,00 lei
Set Protectie (masca si ochelari)3,70 lei1Brico Depot3,70 lei
Letcon15,00 lei1Jumbo15,00 lei
Placuta PM10,00 lei1Facultate10,00 lei
Componente de baza30,00 lei1Farnell30,00 lei
Croisant Boromir Ciocolata cu Alune 50g1,25 lei4Carrefour5,00 lei
KitKat Dark 41,5g1,90 lei4Carrefour7,60 lei
Napolitane Joe 40g1,35 lei4Carrefour5,40 lei
Skittles Crazy Sours 38g1,40 lei4Carrefour5,60 lei
TOTAL (aproximativ)633,49 lei

Aceasta ar fi lista completa de componente si unelte ce au fost achizitionate pentru a face proiectul. Majoritatea au fost utilizate, unele fiind de test (breadbords) sau de rezerva (drivere). Au mai fost mici unelte si materiale ce le aveam mai demult, sau ce le-am luat cu imprumut.

La capitolul hardware am muncit cel ma mult. Am inceput prin a-mi face o mica idee de ce as avea nevoie si cam cat de mare as vrea sa fie, apoi am incercat sa cumpar o data tot sau cel putin majoritatea chestiilor, dar mereu mai era ceva de luat. Dupa ce am desenat pe placaj aproximatic ce si cum, am inceput sa tai de mana tot. Pe masura ce avansam imi dadeam seama daca mai e sau nu nevoie de ceva.

Arcurile ce aveau sa tina produsele au fost facute de mana, cu o sarma suficient de groasa dar ce putea fi indoita de mana din Dedeman. Am folosit o doza de RedBull ce statea prin camera pentru a creea arcul. Cred ca e si o poza mai jos. Doza aia a fost perfecta pentru ca buza ei are un mic sant care era cat sarma mea si puteam sa plec cu baza arcului usor. Ele au fost mai tarziu montate pe un suport printat 3D, modificat dintr-o roate de pe Thingiverse si care se gaseste in resursele de mai jos. Acea roata avea deja facut locasul pentru piciorul motoraselor mele si era aproape perfect. Desigur, printerul nefiind prea bine calibrat (Tevo Tarantula) gaurile au fost usor largite cu o sarma incinsa, pentru ca avea erori de cativa milimetri si nu intra asa usor, insa dupa a mers ca uns. Arcul a fost lipit cu HotGlue de ele.

Am inceput montarea cutiei, care este prinsa in cuisoare mici, iar peretele ce separa partea electrica de sertarase, a fost gandit sa fie modular pentru a face usor mentenanta si pentru a fi usor de prezentat fiecare aspect al proiectului. El se afla prins intre niste fante facute din piese mici de placaj, bine slefuite si lipite cu hotglue. Pe el si pe peretele opus sunt prinse niste suporti printati la care am adaugat niste buze de 5mm, pentru sertare, ca slid-ul sertarelor sa se faca usor si sa nu atinga banda led.

Ca pas urmator a fost sa fac sertarele si sa le fac gaurile pentru motorase, la care m-am chinuit ceva ca nu aveam spiral asa mare si bormasina imprumutata era cam slaba, fiid foarte scumpa o alta. Dupa ce am proiectat pe placaj, si am calculat de 3 ori, am taiat, am montat, in cuisoare o forma de L, partea lunga fiind spatiul util al sertarului, iar pe parte celalta am montat suruburi lipite cu hot glue care sa tina in loc atat motorasele cat si driverul pentru cele 2 motorase. Motorasele au fost lipite cu fire colorate la fel pe ambele sertare prinse cu zipties colorate diferit in functie de sertar, cu fir lasat lung, pentru a putea lucra cu ele.

Inainte de a monta insa orice, odata ce am taiat tot si am montat chestiile ce trebuiau sa fie fixe, am vopsit totul, in principal spatiul vezibil, cu spay acrilic negru, la ghena in camin cu masca si manusi, nu uitati protectia :)). Spray-ul s-a uscat rapid, insa trebuiau ceva mai multe straturi sa iasa bine vopseaua, da, mna, de unde atatia bani :)).

Dupa ce am lasat-o sa se usuce, am incercat sa ma ocum de senzorul IR, pe care a trebuit sa-l modific putin, si sa conectez la pacuta componentele pentru a le modifica. Senzorul IR a trebuit modificat pentru dupa cum sti, sau o sa vezi, atat dioda emitor cat si cea receptor sunt una langa alta, ceea ce pe mine nu ma ajuta modelul coin acceptorului fiind gandit altfel. Anume, a trebuit sa adaug niste fire la fiecare dioda (mare grija la + si -) pentru a le putea pune sa bata direct una in alta, deoarece ea functiona asa: Pentru a separa monedele de 50bani de celelalte, m-am folosit de dimensiunea lor, picajul fiind vertical, la jumatatea caderii, se afla niste sine pe care nu pot sa intre decat 50bani orice alta moneda trecand printre ele si ajungand direct la rest. Dupa ce moneda corecta a alunecat pe canalul corect, undeva pe canal se afla diodele senzorului ce mentin mereu contact, deoarece emitorul bate direct in receptor. Cand moneda trece conexiunea se intrerupe, si asa iti dai seama daca a fost introdusa sau nu o moneda de 50 de bani. Pentru a accepta mai multe tipuri de monede ar trebui sa se faca ceva mai complex si mai mare si pe langa infrarosu sa se foloseasca un senzor electromagnetic pentru a determina tipul de metal din care e facuta asta presupunand ca s-au bagat monede corecte. Este explicat mai bine intr-un articol aflat la resurse.

Ca si hardware eram aproape gata, am mai dat niste gauri in spate pentru a scoate un cablu usb type B pentru placuta si firele pentru sursa ce alimenteaza ledurile care se afla la 12V (n-am verificat cand am cumparat, dar in final a fost ok). Am montat ce s-a putut rapid ca sa ma ocup de lectronice. A da, era sa uit de usita. Acolo am incercat sa o montez in asa fel incat sa vina la fata cu restul masinii. Daca va jucati putin cu balamalele o sa intelegeti ce vreau sa zic, ideea e ca am gasit o solutie care apare intr-o poza mai jos, pentru a face usita la fata, si sa acoper golul lasat de balama, cu o bucata de 5mm de placaj, pentru a “etansa” cat e posibil si sa nu apara alte gauri. E o atentie la detalui, pe care nu o sesizezi poate, dar care face diferenta si de care sunt foarte mandru :)). Also suruburile in care au fost prinse balamalele si suportii pentru sertare, era prea lungi desi erau cele mai mici pentru lemn, asa ca am taiat varfurile cu un patent (destul de greu). Geamul e facut din plastic, manerul e printat si pe interior, atat usa cat si unde se inchide au magneti de niodium, care sa le inchida.

Aceiasi magneti se regasesc si la fata ce contine ecranul, butoanele, si coin acceptor-ulin cele 4 colturi pentru modularitate si usurinta in mentenanta. Din pacate nu tin cum ma asteptam, deoarece am taiat placajele cam stramb (de mana in camin, mna) si se ating componentel;e si se trag una pe alta, uneori. De asemenea nu am calculat exact unde or sa pice magnetii pe placaj, si unii nu fac contact complet. Puteam folosi magneti mai puternici, de care aveam, dar n-am mai avut timp sa modific si e ok si asa cum e acum. Also magnetii sunt fking expensive AF.

Butoanele au fost lipite pe o placa de test si cam tot ce e montat in vending e prins in suruburi, piulite sau distantiere lipite cu hotglue sau lipici, in functie de cat de “stresate” urmau sa fie componentele, deoarece lipiciul lipeste super string, hot glue poate fi deslipit cu mana, sau incalzit usor cu feonul si se inmoaie imediat.

Aici urma sa fac parte de soft, dupa ce am facut un cod de culori de fire si zipties pentru fiecare componenta si am notat pporturi si pini pe niste foi. Fiecare componenta are o anume culoare la zipties pentru firele ei, iar mai multe fire de la mai multe componente sunt prinse cu zipties negre acolo unde se poate. Alimentarea se poate face atat de la laptop cat si de la baterie externa. Motorasele au fost mai tarziu legate la baterii externe, initial nerealizand ca placuta nu poate duce 4 motorase de 5V =))).

Pe moment nu stiu daca am uitat sau nu ceva, dar daca ai nevoie ai mailul meu mai sus. Also urmeaza sa fac un video putin mai detaliat in care sa explic toate astea cu suport vizual :D

Software Design


Implementarea software a fost facuta pe Linux Mint folosind compilatorul avr-gcc. Ca prim pas a fost implementarea si testatrea motoraselor cu drivere. Fiind motoare DC a fost usor de implementat. In continuare a trebuit sa ma asigur ca prin apasarea butoanelor pot controla un anume motor, apoi am facut o variabila globala ce reprezenta creditul disponibil, ce se modifica in functie de rezultatul senzorului IR care detecta cand o moneda era inserata. Creditul mai este desigur modificat cand este apasat un buton pentru un anume produs si exista suficient. Dupa ce am rezolvat toate aceste probleme am putut sa ma axez pe LCD, si pe afisaj, pentru care am folosit o biblioteca ce se afla in surse.

Rezultate

Concluzii


In concluzie proiectul a fost unul super tare. A fost un proiect destul de complex, care a necesitat multe aptitudini de inginer. Au fost momente cand am fost stresat sau disperat cand nu intelegeam cum functioneaza anumite chestii, cand a trebuit sa improvizez sau sa fac compromisuri. Desi stiam inca de pe la inceputul anului ce voiam sa fac, m-am apucat duminica iar prezentarea a fost vinerea ce venea, asadar timpul a fost scurt. Ca si proiectare aveam in cap o imagine de ansamblu la care m-am gandit mai mult inainte. Au fost cateva zile la un moment dat in care am invatat sa fac proiectare 3d, am cautat piese online si am modificat/facut unele de care aveam nevoie. Am lucrat incontinuu dar mi-a placut si imi pare rau ca nu am reusit sa implementez tot ce aveam in minte. Pentru cine va mai vrea sa faca un astfel de proiect, nu iti recomand decat daca iti place sa mesteresti. Ca si soft nu a fost foarte complicat majoritatea chestiilor ghasindu-se online. Am reusit sa il fac sa arate bine si sa functioneze perfect, intr-un timp scurt cu cunostinte minime intr-o saptamana, in principiu pentru a-mi demonstra mie ceva si pentru ca mi-a fost lene sa ma apuc la inceput dar pe masura ce lucram imi placea mai tare. Sfat: masoara tot de 3 ori si verifica pinii si tot de 3 ori cel putin.

Download

Bibliografie/Resurse

pm/prj2019/dionita/420.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