This shows you the differences between two versions of the page.
pm:prj2024:sseverin:rares.dumitrescu [2024/05/27 15:12] rares.dumitrescu [Descriere generală] |
pm:prj2024:sseverin:rares.dumitrescu [2024/05/27 15:28] (current) rares.dumitrescu [Software Design] |
||
---|---|---|---|
Line 9: | Line 9: | ||
===== Descriere generală ===== | ===== Descriere generală ===== | ||
- | Folosind un Arduino împreună cu un potentiometru, voi putea seta cantitățile dorite pentru fiecare ingredient. La fiecare ingredient setat împreună cu măsurătorile dorite, valorile fiind afișate pe ecranul LED, plăcuta va trimite o comanda către unul dintre modulele cu driver pentru a activa pompa dorită, sursa de alimentare contribuind cu necesarul de curent. Din timp in timp, Arduino se va folosi de valoarea data de către modulul de citire al greutății, aceasta fiind măsurată de senzorul de greutate, când aceasta depășește un anumit prag, pompa se oprește si Arduino așteaptă comanda pentru următorul ingredient(cantitatea acestuia). Pompele peristaltice se folosesc de crearea presiunii pentru a face posibilă turnarea lichidelor(prin tubul de silicon). Mufa jack va fi folosită pentru a trimite curent modulelor cu driver de motoare de la sursa de alimentare. | + | Folosind un Arduino împreună cu un senzor de atingere, voi putea seta cantitățile dorite pentru fiecare ingredient. La fiecare ingredient setat împreună cu măsurătorile dorite, valorile fiind afișate pe ecranul LED, plăcuta va trimite o comanda către unul dintre modulele cu driver pentru a activa pompa dorită, sursa de alimentare contribuind cu necesarul de curent. Din timp in timp, Arduino se va folosi de valoarea data de către modulul de citire al greutății, aceasta fiind măsurată de senzorul de greutate, când aceasta depășește un anumit prag, pompa se oprește si Arduino așteaptă comanda pentru următorul ingredient(cantitatea acestuia). Pompele peristaltice se folosesc de crearea presiunii pentru a face posibilă turnarea lichidelor(prin tubul de silicon). Mufa jack va fi folosită pentru a trimite curent modulelor cu driver de motoare de la sursa de alimentare. |
{{:pm:prj2024:sseverin:schemablocdumitrescumatei.png?700|}} | {{:pm:prj2024:sseverin:schemablocdumitrescumatei.png?700|}} | ||
Line 21: | Line 21: | ||
* Arduino UNO R3 | * Arduino UNO R3 | ||
* Ecran LED IIC | * Ecran LED IIC | ||
- | * Potentiometru | + | * Senzor de atingere |
* Senzor Greutate | * Senzor Greutate | ||
* Modul citire greutate(hx711 ADC IC) | * Modul citire greutate(hx711 ADC IC) | ||
Line 27: | Line 27: | ||
* 3 X pompe dozatoare peristaltice | * 3 X pompe dozatoare peristaltice | ||
* Jack DC | * Jack DC | ||
- | * Sursa alimentare 15V 5A | + | * Sursa alimentare 6V 1200mA |
* Tub silicon 10mm | * Tub silicon 10mm | ||
Line 147: | Line 147: | ||
lcd.print("Preparing your"); | lcd.print("Preparing your"); | ||
lcd.setCursor(0, 1); | lcd.setCursor(0, 1); | ||
- | lcd.print("Cuba Libre"); | + | lcd.print("Cocktail!"); |
- | Serial.println("Activating Pump 1 (rum)"); | + | Serial.println("Activating Pump 1"); |
digitalWrite(PUMP1_IN1, HIGH); | digitalWrite(PUMP1_IN1, HIGH); | ||
digitalWrite(PUMP1_IN2, LOW); | digitalWrite(PUMP1_IN2, LOW); | ||
- | delay(3000); | + | delay(22000); |
digitalWrite(PUMP1_IN1, LOW); | digitalWrite(PUMP1_IN1, LOW); | ||
digitalWrite(PUMP1_IN2, LOW); | digitalWrite(PUMP1_IN2, LOW); | ||
- | Serial.println("Activating Pump 2 (cola)"); | + | Serial.println("Activating Pump 2"); |
digitalWrite(PUMP2_IN3, HIGH); | digitalWrite(PUMP2_IN3, HIGH); | ||
digitalWrite(PUMP2_IN4, LOW); | digitalWrite(PUMP2_IN4, LOW); | ||
- | delay(5000); | + | delay(40000); |
digitalWrite(PUMP2_IN3, LOW); | digitalWrite(PUMP2_IN3, LOW); | ||
digitalWrite(PUMP2_IN4, LOW); | digitalWrite(PUMP2_IN4, LOW); | ||
- | Serial.println("Activating Pump 3 (lime juice)"); | + | Serial.println("Activating Pump 3"); |
digitalWrite(PUMP3_IN1, HIGH); | digitalWrite(PUMP3_IN1, HIGH); | ||
digitalWrite(PUMP3_IN2, LOW); | digitalWrite(PUMP3_IN2, LOW); | ||
- | delay(1000); | + | delay(15000); |
digitalWrite(PUMP3_IN1, LOW); | digitalWrite(PUMP3_IN1, LOW); | ||
digitalWrite(PUMP3_IN2, LOW); | digitalWrite(PUMP3_IN2, LOW); | ||
lcd.clear(); | lcd.clear(); | ||
lcd.setCursor(0, 0); | lcd.setCursor(0, 0); | ||
- | lcd.print("Enjoy your Cuba"); | + | lcd.print("Enjoy your"); |
lcd.setCursor(0, 1); | lcd.setCursor(0, 1); | ||
- | lcd.print("Libre!"); | + | lcd.print("Cocktail!"); |
delay(5000); | delay(5000); | ||
lcd.clear(); | lcd.clear(); | ||
Line 189: | Line 189: | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
- | <note tip> | + | Video demonstrativ: https://www.youtube.com/shorts/6Av4EtJQRUY |
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | |
- | </note> | + | |
===== Concluzii ===== | ===== Concluzii ===== | ||
+ | |||
+ | După nopți nedormite și multă perseverență, proiectul este unul reușit. Laboratoarele folosite sunt cele de I2C (ecran LCD), ADC (senzor de greutate) și PWM (motoarele care alimentează pompele). Pentru a putea îmbunătăți proiectul pe viitor, se pot ajusta motoarele L298N pentru a varia viteza de umplere a paharului în funcție de lichidele folosite pentru Cocktail. De asemenea, se poate îmbunătăți carcasa dispozitivului pentru a-l face mai rezistent. | ||
===== Download ===== | ===== Download ===== |