Skip to content
This repository was archived by the owner on Jul 20, 2025. It is now read-only.

8. Testiranje rada komponenata

V edited this page May 12, 2025 · 6 revisions

Prije povezivanja svih dijelova sistema, izvršeno je pojedinačno testiranje svake ključne komponente kako bi se osigurala njihova funkcionalnost.

Servo motor SG90

Servo motor je ključna komponenta u našem projektu koja omogućava precizno pozicioniranje žetona boja prema unaprijed definisanim uglovima. U ovom dijelu prikazujemo demonstraciju rada servomotora, koji je kontrolisan mikrokontrolerom putem PWM signala.

TestServo


Color 10 Click

Color 10 Click je senzor koji omogućava prepoznavanje boja i njihovo slanje mikrokontroleru.

VELM3328

Za pravilno funkcionisanje izvršena je kalibracija senzora, pri čemu su korišćeni svi dostupni kanali osim IR (infracrvenog), jer on nije bio relevantan za detekciju boja. Za komunikaciju između mikrokontrolera i senzora boje VEML3328 korišćen je I2C protokol, s obzirom na to da senzor podržava ovaj standardni serijski interfejs. Tokom kalibracije, obraćena je posebna pažnja na ponašanje RGB kanala pri različitim nivoima osvjetljenja. Utvrđeno je da prirodna svjetlost nije pouzdana jer daje različite rezultate u zavisnosti od okoline i vremena dana.

WS2812

Zbog toga je dodatno korišten WS2812 LED kako bi se obezbijedila stabilna i konstantna svjetlost. Ovaj izvor svjetla omogućava pravilno prepoznavanje boja čak i u tamnijim uslovima, što je bilo ključno za pouzdan rad uređaja. Direktno upravljanje putem PWM signala bilo bi znatno komplikovanije zbog potrebe za preciznim generisanjem vremenskih odnosa u skladu sa karakteristikama boja. Zbog toga je korišten SPI interfejs u half-duplex režimu, jer omogućava visok baud rate i preciznu kontrolu trajanja impulsa. Budući da WS2812 zahtijeva precizno definisane vremenske intervale za predstavljanje logičkih '0' i '1', gdje svaki SPI bit traje 0.125 µs. Na taj način, trajanje svakog WS2812 bita je približno 1 µs, što se nalazi unutar dozvoljene tolerancije uređaja i omogućava stabilan i tačan rad WS2812. Dokumentaciju upotrebe SPI i komunikacije sa WS2812 možete pronaći na 6. Programiranje mikrokontrolera.

Naravno, u koliko nema žetona u tubi, senzor (VELM3328) u tom slučaju očitava sve boje u spektru bijele svijetlosti za R,G,B kanale te je mikrokontroler isporgramiran da za tu vrijednost upravlja servo motorom tako da stoji u mjestu, što naglašava da više nema žetona u bojama za sortiranje.

Testiranje VELM3328 diode:

Na videu iznad, vidimo gdje je pozicioniran Color10Click senzor, dakle ispod malog otvora na koji padaju obojeni žetoni, a u nastavku će biti prikažena njegova upotreba u detekciji boja.


Aplikacija i wifi

Prvi korak u testiranju je osigurati da se desktop aplikacija može uspješno povezati s uređajem. Aplikacija, napisana u Javi, komunicira s uređajem putem Wi-Fi veze, stoga je potrebno provjeriti da su i računar i uređaj spojeni na istu mrežu. Nakon uspostavljene Wi-Fi veze između aplikacije i uređaja, korisnik može upravljati sistemom, što je istestirano. Aplikacija omogućuje slanje komandi za pokretanje (start) i resetovanje (reset) procesa, kao i konfiguraciju sortiranja boja. Komunikacija se odvija putem tekstualnih poruka preko Wi-Fi veze, što omogućuje realno praćenje statusa sistema.

12042025013 (2)

Detaljnije upute za firmware dostupne su na 6. Programiranje mikrokontrolera.


Integracija

Prikaz konačnog sistema za razvrstavanje.

colorsorter

Clone this wiki locally