Dispozitiv Recunoastere Bancnote

Introducere

Dispozitivul creat se va folosi de un senzor de culoare pentru a recunoaste diferite tipuri de bancnote. Cu ajutorul unui ecran LCD va afisa ce tip de bancnota a recunoscut, iar cu ajutorul unui difuzor va spune, sonor, tipul bancnotei.

Hardware Design

Ca piese pe care le voi folosi, avem urmatoarele:

  • Placuta Arduino
  • LCD
  • Senzor de culoare
  • Difuzor
  • Fire
  • Breadboard

Am creat o schema a legarii componentelor, ca in imaginea de mai jos, pentru a vedea mai usor ce fire sa leg.

Iar aici este ceea ce am reusit sa leg, pana acum (16.05.2024):

Proiectul final arata in felul urmator:

Software Design

Proiectul a fost conceput pentru a detecta diferite tipuri de bancnote folosind un senzor de culoare RGB, pentru a afusa tipul detectat pe un ecran LCD si pentru a reda un fisier audio corespunzator.

Ca IDE, am folosit Arduino IDE, si doua biblioteci:

  • LiquidCristal_I2C - pentru ecranul LCD
  • DFRobotDFPlayerMini - pentru modului de mp3

Functionalitatea codului

  • Functia setup()

In functia setup(), am initializat LCD-ul si am configurat pinii senzorului de culaore, frecventa de iesire fiind la 20%. Apoi am initializat comunicarea cu DFPlayer-ul. Daca initializarea a avut succes, setez volumul si redau un sunet de confirmare.

  • Functia loop()

In functia loop(), citesc frecventele de la senzorul de culaore si verific tipul bancnotei. Pe baza tipului bancnotei, afisez pe LCD raspunsul corect si redau fisierul audio corespunzator. Daca nu introduc o bancnota, afisez un mesaj de eroare si redau un fisier care sa arate asta.

  • Functia de citire a frecventelor pentru fiecare culoare

Citesc frecventele corespunzatoare pentru culorile rosu, verde si albastru. Masor durata impulsurilor cu functia de pulseIn. Repet aceasta masuratoare de 10 ori pentru a obtine o medie a frecventelor, reducand variabilitatea.

  • Functia check_bill_type()

Determina tipul bancnotei pe baza valorilor frecventelor RGB citite. Se folosesc intervale pentru culori stabilite experimental (a durat o vesnicie sa nimeresc intervale okay).

Concluzii

A fost un proiect fun, care mi-a placut. A fost destul de dificil sa gasesc intervalele corecte pentru bancnote, dar per total a iesit chiar bine. Momentan, senzorul citeste doar bancnote de 1 LEU, 5LEI, 10 LEI, dar revin cu mai multe pentru PMFair ;).

Download

Jurnal

  • 15.05.2024 → am primit piesele, intr-un final
  • 20.05.2024 → a inceput sa arate conectarea lor mai okay
  • 22.05.2024 → am reusit, dupa multe incercari, sa gasesc intervalele corecte pentru senzorul de culoare
  • 23.05.2024 → DONE

Bibliografie/Resurse

pm/prj2024/alucaci/ioana_cosmina.capra.txt · Last modified: 2024/05/23 11:27 by ioana_cosmina.capra
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