Verificator preţuri realizat cu Raspberry PI 3
Ideea realizării unui verificator de preţuri este mult mai veche. Am gândit-o în urma cu mulţi ani (13-14 ani) la fostul loc de muncă însă pe vremea aia am folosit un calculator normal pe care am pus un Linux şi la care am ataşat un cititor de coduri de bare de masă cu alimentare dedicată. Era un dulap de 2m inalţime cu geam de sticla prin care se scanau produsele. 🙂
Dar acum am zis să fac o re-editare a versiunii de atunci a verificatorului de preţuri cu echipamente ceva mai actuale.
Punem un clip video cu realizarea iar mai apoi povestim sau invers. Cum vreţi voi. Click-ul vă aparţine.
Ingrediente:
– 1 bucată Raspberry PI 3 – cumparat special pentru acest proiect
– microSD card de 32GB
– un monitor LCD de 15″ ce stătea abandonat prin zonă
– un adaptor HDMI – VGA deoarece monitorul nu ştie HDMI, iar PI nu ştie VGA
– un cititor de coduri de bare Symbol LS2208 ce stătea şi el nefolosit într-o cutie mai veche
– un alimentator microUSB de 3A – luat special pentru alimentarea PI-ului pentru că necesită suficientă putere
– carcasa de lemn se poate face din ceva PAL dacă aveţi timp, îndemânare şi spaţiu. Eu de cel din urmă duc lipsă aşa că am apelat la un prieten specialist în PAL să mi-o construiască.
Tehnologii folosite:
– imaginea de Raspbian pusă pe un card microSD de 32GB
– web server httpd
– PHP pentru dezvoltarea scriptului
– mySQL – pentru stocarea interogărilor şi generarea de rapoarte de activitate
– MSSQL – server de baze de date instalat pe un main server ce ţine în spate programul de gestiune şi de vânzare din magazin. Pe el se afla baza de date principala de unde extragem informaţiile cu privire la produsele scanate.
Treaba stă cam în felul următor:
1. Se instalează şi configurează Raspbian-ul. Nume, reţea (wi-fi dacă este cazul), instalare pachete cu apt-get (apache, mysql, php).
2. Se configurează extensiile de PHP necesare. În cazul de faţă mssql.
3. Se configurează browserul chromium să pornească la boot în kiosk mode cu start page pe :localhost/script/
4. Ceva batăi de cap mi-a dat dezactivarea screensaver-ului şi a intrării în sleep din cauza inactivităţii dar pâna la urma am rezolvat-o si pe asta. Nu mai ştiu exact cum, dar soluţia este undeva pe net şi are legătura cu serverul grafic X.
Scriptul PHP:
E un script simplu (în curs de dezvoltare în continuare) ce se conecteaza la serverul MSSQL, face o interogare în baza codului de bare primit din form-ul din pagina web şi afişează rezultatul (cod produs, denumire produs, preţ predus, unitate de măsură).
Aici a fost un pic de investigat prin baza de date originală pentru a descoperi unde sunt ţinute informaţiile de care aveam nevoie deoarece nu aveam structura ei şi era vorba de mai bine de o sută de tabele separate.
Odată cu afişarea rezultatelor se introduc nişte date şi în baza locală (mysql) cu scopul urmăririi activităţii pe verificatorul de preţuri şi a întocmirii unor rapoarte periodice.
Pe frontpage am introdus o secţiune rotativă cu ofertele curente sau cu ceva publicitate de la sponsori.
În partea de jos am pus şi un widget util cu vremea locală.
TO DO
– finalizarea scriptului de statistici şi rapoarte.
– implementarea unui sistem de gestionare tip AD manager pentru zona rotativă cu promoţii pentru a înlesni schimbarea/actualizarea acestora şi de catre personalul non-geek. Momentan se încarcă fotografiile într-un folder pe server de unde sunt preluate în HTML.
– implementarea unui sistem de fotografii ale produselor verificate. Asociere fotografie cu produsul scanat.
– si multe altele care deocamdată rămân la nivel de idee.
Nah, dacă vi s-a părut interesant spuneţi ceva mai jos în comentarii sau like&share şi ce se mai poartă acum.
Sau dacă aveţi provorcări noi pentru mine în acest domeniu ştiţi pe unde mă găsiţi pe netul ăsta mare.