====== Svrha projekta ======
Olakšati slijepim, slabovidnim ili osobama s lošijim vidom kupovinu u trgovinama.
====== Korisnici projekta ======
Sustav je prvenstveno namijenjen slijepim, slabovidnim i osobama s lošijim vidom.\\
Pogodan je za korištenje svim ljudima u svrhu lakše identifikacije proizvoda.
====== Ciljevi projekta ======
* Olakšati kupovinu u trgovinama slijepim, slabovidnim osobama te osobama s lošijim vidom.
* Očitavati RFID oznake na proizvodima i policama.
* Sustav vraća glasovne upute koje sadrže lokaciju i informacije o proizvodu.
* Povezati sustav s Android aplikacijom Bluetoothom HC-06.
* Unos glasovnih naredbi, prikaz cijene i proizvođača.
====== Resursi ======
Očitavanje RFID oznake na proizvodima vršit će se RFID čitačem MFRC522. \\ Informacije o proizvodu obrađivat će se na Arduinu. \\ Na Arduino će se priključiti MP3 modul za koji će glasovnim zapisima informirati korisnika o proizvodu. \\ Korisnik će informaciju primati korištenjem Android aplikacije, a veza između Arduina i pametnog telefona s Android sustavom ostvarit će se Bluetoothom HC-06. \\ Laptop ili osobno računalo.
====== Ograničenja ======
Nedovoljno brzo ažuriranje glasovnih zapisa prilikom promjene cijena i mjesta na kojima se nalazi proizvod. \\ Nemogućnost instaliranja aplikacije na iOS uređaje. \\ Glasnoća zvučnih zapisa može oštetiti sluh. \\ Nepoznavanje alata i programskih jezika koji se koriste izradu i dizajniranje Android aplikacije.
====== Ciljana skupina ======
Provedeno je malo istraživanje potencijalnih korisnika našeg sustava.
Prema podacima iz izvješća o osobama s invaliditetom u Hrvatskoj 2016. godine od oštećenja vida pati 17 377 ljudi, odnosno svaki 250. stanovnik Hrvatske od čega je 3326 osoba slijepo na oba oka. Prezbiopija ili starosna dalekovidnost dio je prirodnog procesa starenja oka. Počinje se javljati u ranim četrdesetim godinama. Prema popisu stanovništva iz 2011. godine je u Hrvatskoj bilo 4 284 889 stanovnika od čega čak 2 258 187 stariji od 40 godina što čini 52.7% stanovništva koji podliježu starosnoj dalekovidnosti. Upravo osobe koje imaju problema s vidom prilikom svakodnevne kupovine u dućanima teško ili nikako ne mogu pročitati cijenu proizvoda, informacije s deklaracije ili čak prepoznati o kojem se proizvodu radi. Cilj ovog projekta je projektirati sustav koji će slijepim, slabovidnim te osobama sa slabijim vidom pomoći prilikom kupovine. Ideja je da se na police gdje se sada nalaze papirići s cijenama i barkodovima doda RFID (Radio-frequency identification) oznaka koja sadrži jedinstveni broj proizvoda. Uređajem koji je projektiran moguće je takvu oznaku očitati nakon čega se na slušalice reproducira glasovna poruka koja sadrži osnovne informacije o proizvodu te lokaciju proizvoda. Uređaj se može bluetooth komunikacijom spojiti s pametnim telefonom pa se glasovna poruka reproducira i na njemu te se preko cijelog zaslona velikim fontom ispisuju osnovne informacije o proizvodu i cijena. Iz ranije navedenih podatak vidi se da je broj potencijalnih korisnika velik, a važno je naglasiti da sustav mogu koristi svi.
====== Projektiranje sustava ======
==== Ideja ====
Svaki proizvod i police imaju jedinstvene RFID pasivne oznake. Prilikom očitavanja RFID oznake na proizvodu uređaj započne reprodukciju glasovne poruke koja sadrži lokaciju proizvoda, ime proizvoda, ime proizvođača te cijenu samog proizvoda. Prilikom očitavanja RFID oznake na polici uređaj započne reprodukciju glasovne poruke koja sadrži lokaciju odnosno redni broj police. Svaki proizvod je jedinstven pa tako ima i jedinstven RFID identifikacijski broj zapisan na RFID oznaci. Uređaj ima mogućnost spajanja sa pametnim telefonom ili tabletom pomoću Android aplikacije. Prilikom očitanja RFID oznake prozivoda na zaslonu mobilnog uređaja se velikim fontom prikaže cijena proizvoda.
Sustav se sastoji od slijedećih podsustava:
* Centralna jedinica - [[https://store.arduino.cc/usa/arduino-uno-rev3|Arduino ]]
* mp3 modul [[https://www.ebay.com/itm/TF-Card-U-Disk-Mini-YX5200-MP3-Player-Audio-Voice-Module-Arduino-DFPlay-Board/112042336627?ssPageName=STRK:MEBIDX:IT&_trksid=p2057872.m2749.l2649|DFPlayer YX5200 MP3 module]]
* RFID čitač [[https://www.nxp.com/docs/en/data-sheet/MFRC522.pdf|MFRC522]]
* Bluetooth modul [[https://www.olimex.com/Products/Components/RF/BLUETOOTH-SERIAL-HC-06/resources/hc06.pdf|HC-06]]
===== Arduino Uno/Duemilanove - Centralna jedinica =====
Arduino Duemilanove je razvojna platforma zasnovana na [[http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-42735-8-bit-AVR-Microcontroller-ATmega328-328P_Datasheet.pdf|ATmega328p]] mikrokontroleru. Ima 14 ulazno-izlaznih pinova (izvoda) od kojih 6 može biti iskorišteno za pulsno-širinsku modulaciju (engl. //pulse-width modulation, PWM//), 6 analognih ulaza, kvarcni oscilator frekvencije 16MHz, USB konektor za spajanje s računalom, konektor za napajanje, ICSP ( In Circuit Serial Programming ) konektor te tipkalo za reset mikrokontrolera.
Specifikacije
{{:2018:karlo_siladi:uno_specifications.png?nolink&436x500|Arduino Uno specifications}}
U našem sustavu Arduino Duemilanove je centralna jedinica koja je zadužena za komunikaciju s ostalim podsustavima.
**mp3 modul DFPlayer YX5200**
Komunikacija s modulom se ostvaruje asinkronom serijskom UART komunikacijom. Potrebne su dva digitalna izvoda: Tx i Rx na Arduinu koji se spajaju na Rx i Tx izvode (UOČI: Rx→Tx; Tx→Rx) na mp3 modulu. Za rad mp3 modula potrebno je dovesti i napajanje (GND i +5V) s Arduino Duemilanove razvojne platforme. Na Arduino Duemilanove razvojnoj platformi odnosno na ATmega328p mikrokontroleru postoji sklopovlje za asinkronu serijsku komunikaciju koje je spojeno na USB kako bi se mogla ostvariti komunikacija s računalom. Zbog uhodavanja i nadogradnje sustava asinkrona serijska komunikacija sa mp3 modulom ostvarit će se programski. Pritom će se koristiti ugrađena biblioteka [[https://www.arduino.cc/en/Reference/SoftwareSerial|SoftwareSerial]] koja se već nalazi u Arduino IDE.
===== RFID čitač MFRC522 =====
RFID čitač MFRC522 proizvođača ID Innovations namjenjen je za očitavanje 125kHz RFID oznaka. Ima ugrađenu antenu koja osigurava domet od oko 12cm. Približavanjem RFID oznake čitač prosljeđuje jedinstveni identifikacijski broj oznake asinkronom serijskom komunikacijom na Arduino Duemilanove razvojnu platformu.
**Bluetooth HC-06 modul **
Bluetooth HC-06 modul postiže serijski bežični prijenos podataka radne frekvencije od 2.4 GHz ISM koja se svrstava u najpopularniji frekvencijski pojas (tj. industrijski, znanstveni i medicinski pojas). Funkcija ovog modula je poslati serijskim bežičnim prijenosom podatke koje se pročitaju s RFID čitača na Arduino Duemilanove te spojiti se na Android mobilnu aplikaciju.
===== Shema spajanja sustava =====
{{:2018:karlo_siladi:shema_sustava2.png?nolink&400x285}}{{:2018:karlo_siladi:sustav_ozicenje.png?nolink&400x284}}
====== Prototipno kućište ======
Uređaj je prenosiv pa je napajanje izvedeno baterijom nazivnog napona 9V. Napredak: punjive baterije, prekidač
Za lakše rukovanje sustav je smješten u plastično kućište. Zbog malog dometa RFID čitača isti je postavljen izvan kućišta. Također izvan se nalaze i slušalice.
{{:2018:karlo_siladi:kuciste.jpg?nolink&300x400|kuciste.jpg}}
====== Komunikacija s vanjskim sustavima ======
Uređaj se povezuje s mobilnom aplikacijom pomoću Bluetooth komunikacije. Napredak: koristiti BLE zbog manje potrođnje
Ako dođe do greške prilikom povezivanja preko bluetooth veze, sustav može komunicirati izravno nakon očitavanja jedinstvenog koda proizvoda preko .mp3 modula odnosno reproducirati glasovni zapis s informacijama o proizvodu. Napredak: baza glasovnih zapisa na vanjskom poslužitelju. Snimanje zapisa na samom uređaju.
====== Android aplikacija ======
===== Android Studio =====
Za izradu Android aplikacije potrebno je instalirati razvojni alat Android Studio. Najnovija verzija trenutno je 3.1.3. a dostupna je za preuzimanje na sljedećoj poveznici:[[https://developer.android.com/studio/|https://developer.android.com/studio/]] .
Detaljne upute za instalaciju razvojnog alata Android Studio
[[https://developer.android.com/studio/install|https://developer.android.com/studio/install]]
====== Komunikacija s vanjskim sustavima ======
Ako dođe do greške prilikom povezivanja preko Bluetooth veze, sustav može komunicirati izravno nakon očitavanja jedinstvenog koda proizvoda preko .mp3 modula.
====== Komunikacija s ostalim podsustavima ======
Povezivanje putem Bluetooth veze na mobitel i korištenje Android aplikacije koja daje informacije o proizvodu nakon očitavanja jedinstvenog koda.
====== Uloga na projektu ======
Istražiti specifikacije i načine korištenja Bluetooth HC-06 modula. \\
Razviti podršku za navedeni modul. \\
Upoznati se s alatom i programskim jezicima koji se koriste izradu i dizajniranje Android aplikacije.
**Zadatak**
Moj zadatak je bio ostvariti komunikaciju između Bluetooth HC-06 modula i Arduino Duemilanove te dizajnirati Android aplikaciju. Aplikacija reproducira zvučne zapise o detaljima proizvoda i akcijama u trgovini.
Prvo je bilo potrebno povezati i ostvariti komunikaciju u sustavu (Arduino Duemilanove, RFID čitača, Bluetooth HC-06 modula i DFPlayer mp3 modula) koristeći rezultate projektnih zadataka kolegice i kolega iz grupe. Inicijalizacija Bluetootha ostvarena je naredbom BT.begin (Baudrate) u kojoj kao argument upisujemo brzinu slanja informacija. Na osnovu dohvaćenog ID-a, podatak se šalje Bluetooth komunikacijom do mobilnog uređaja i ispisuje na Bluetooth terminal HC-05. Prije toga potrebno je mogućiti Bluetooth vezu na mobilnom uređaju i instalirati Bluetooth terminal HC-05.
Sljedeće, dizajnirati Android aplikaciju. Bilo je potrebno izraditi aktivnost AboutProjectActivity. Zadatak aktivnosti je prikaz korisničkog sučelja programa i omogućavanje interakcije korisnika s aplikacijom. Kroz padajući izbornik moguće je pokrenuti prikaz informacija o projektu i slika članova tima. Pritiskom na „O projetku“ pokreće se ProjectAboutActivity kojem je zadatak prikazivanje dizajna definiranog u activity_project_about.xml.Prikaz teksta ostvaren je oznakom .U res direktoriju bilo je potrebno razraditi izgled samog sučelja. Prikaz slika ostvaren je oznakom, a slike je najprije potrebno dodati u direktorij res/drawable.Raspored komponenti na zaslonu ostvaren jeraspoređivačem i omogućeno pomicanje zaslona gore-dolje oznakom . \\ Izraditi ikonu aplikacije u activity_product_info_input.xml.
Kako bi se slijepim, slabovidnim i osobama sa slabijim vidom olakšalo rukovanje aplikacijom napravila sam da cijeli zaslon//(engl. layout)// na aplikaciji predstavlja veliki gumb tako da se pritiskom na zaslon pokreće govorno pretraživanje proizvoda na akciji i informacija o traženom proizvodu.
Snimiti video, dodati glazbu i titlove.
**Rezultati projekta**
U sklopu projekta izrađen je uređaj i Android mobilna aplikacija spremna za korištenje. Uređaj je napajan baterijski te je izrađeno prototipno kućište. Uređaj može raditi samostalno ili ga je moguće povezati s mobilnom aplikacijom. Trenutni nedostatak je dohvaćanje novih glasovnih zapisa i upisa novih u bazu proizvoda. Jedno od rješenja je postaviti bazu proizvoda i bazu glasovnih zapisa na vanjski poslužitelj. Također, zbog ograničenosti sklopovlja RFID čitač ima mali domet, dok se na slušalicama zvučni zapis reproducira relativno tiho. Rješenje je koristiti kvalitetnije sklopovlje. Od ovog projekta korist imaju slijepe, slabovidne i osobe sa slabijim vidom jer im olakšavamo svakodnevni odlazak u trgovinu dok se, s druge strane, trgovinama povećava broj kupaca i poboljšava usluga koju nude. Kao tim smo dobili bolje razumijevanje korištenih tehnologija i uvid u izradu sustava s Arduinom Duemilanove na kojeg se povezuje RFID čitač, Bluetooth HC-06 modul i DFPlayer mp3 modul te Android aplikacija. Daljnjim razvijanjem aplikacije moguće ju je pripremiti za korištenje u stvarnom svijetu i pomoć slijepim i slabovidnim osobama.