Cântar de bucătărie

Introducere

Deoarece mi-am dorit să folosesc în viața de zi cu zi proiectul pe care îl fac, m-am decis să construiesc un cântar de bucătărie. Acesta va afișa cu exactitate greutatea obiectelor puse pe el în grame și uncii. Va dispune și de un buton care va reseta greutatea curentă la 0.

Consider că acest cântar este util oricărui om care vrea să gătească un fel de mâncare acasă, fie că vorbim de ceva simplu și la îndemână precum o tavă de brioșe cu ciocolată, sau de un preparat avansat și minuțios, ca o lasagna făcută de la zero, deoarece știind greutățile ingredientelor, poți urma rețeta mai precis și mai corect.

Cântarul poate suporta până la 5 kilograme și dispune de un LED RGB care anunță utilizatorul cât de aproape este de limită prin următoarele culori:

  1. Verde: greutatea se află departe de limită (0 - 4.5kg)
  2. Galben: greutatea se apropie de limită (4.5 - 5 kg)
  3. Roșu: greutatea a depășit limita ( > 5 kg)

Descriere generală

Funcționalitate

Celula de încărcare va converti presiunea obiectelor așezate pe cântar într-un semnal de output analog ce va fi primit și interpretat de modulul de citire de greutate HX711, care îl va converti într-un semnal digital. Acesta, la rândul său, va fi trimis către microcontrollerul Arduino, unde va putea suferi diverse modificări (în caz că vrem să schimbăm unitatea de măsură), în final, greutatea fiind afișată pe ecranul LCD și LED-ul fiind aprins cu culoarea corespunzătoare.

Hardware Design

Listă de piese necesare:

  • Arduino NANO
  • Ecran LCD 16×2 I2C
  • Celulă de încărcare 5kg
  • Modul citire greutate HX711
  • Buton
  • BreadBoard
  • LED RGB
  • Fire
  • Stativ
  • Disc ce susține greutățile
  • Suport pentru ecran

Schema circuitului în EAGLE:

Circuitul fizic:

*Pentru schema EAGLE nu am putut găsi celula de greutate și adaptorul I2C pentru ecran

Software Design

  • Mediu de dezvoltare: Arduino IDE
  • Librării Arduino IDE utilizate: HX711_ADC, LiquidCrystal_I2C

Algoritmul proiectului urmărește ca greutatea recepționată de celula de sarcină să ajungă să fie afișată pe ecran, LED-ul RGB luminând culoarea potrivită. Pentru a realiza acest lucru, ea va trebui să fie convertită dintr-un semnal analog într-unul digital, lucru care se întâmplă cu ajutorul modulului de citire de greutate HX711.

Am creat funcția primaryColors ce primește 3 parametri redValue, greenValue și blueValue, care va colora LED-ul corespunzător.

Restul algoritmului funcționează în felul următor:

  1. Se inițializează bibliotecile și obiectele necesare pentru comunicația cu componentele cântarului (convertorul HX711 și ecranul LCD)
  2. Se conficurează pinii și stările inițiale
  3. În bucla principală, se afișează valoarea măsurată în grame și uncii. Dacă aceasta este una negativă se va afișa un ”-” înaintea ei
  4. În funcție de valoarea măsurată, se aprinde LED-ul în diferite culori
  5. Dacă greutatea este prea mare, pe ecran va apărea mesajul “Supraincarcare”
  6. Dacă se apasă butonul, cântarul se va reseta, valoarea afișată fiind 0

Rezultate Obţinute

În urma realizării componentelor hardware și software, am obținut următorul cântar funcțional

Concluzii

Realizare acestui proiect a fost o experiență satisfăcătoare. Prin implementarea algoritmului și utilizarea componentelor hardware adecvate am reușit să înțeleg exact cum funcționează mecanismul din spatele cântarului.

Am învățat cum să utilizez biblioteci specifice pentru a comunica cu modulul HX711 și ecranul LCD, precum și cum să configurez pinii și să manipulez valorile în codul Arduino.

Download

Bibliografie/Resurse

pm/prj2023/ncaroi/cantar-de-bucatarie.txt · Last modified: 2023/05/28 19:23 by mihai.stanila1906
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