Sisukord:
- 1. samm: UUENDA
- Samm: osade loend
- Samm 3: USB -laser -vöötkoodi lugeja
- 4. samm: UPC andmebaas
- Samm: tekst kõneks muutmiseks
- 6. samm: akutoide
- Samm 7: I osa - heli lisamine Pi Zero -le
- 8. samm: II osa - tarkvara installimine
- 9. samm: tõrkeotsing
- 10. samm: III osa - veebiserver
- Samm: veebiserveri tõrkeotsing
- 12. samm: lisa
Video: Vaarika Pi rääkiv vöötkoodi lugeja: 12 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
Joonis 1 DX.com vöötkoodiskanner
Ülevaade
Värskendus: lühike video demo on saadaval
Mu ema ei saa enam toidupoodidel silte lugeda, nii et ma otsisin lahendusi. Nähes, et pimedate vöötkoodilugejad maksavad sadu dollareid, tahtsin näha, mida saaks teha Raspberry Pi ja USB -vöötkoodilugeja abil.
Teine oluline jäljend oli see, et see peaks toimima ILMA Interneti -ühenduseta (näiteks poes või sõbra kodus). Seega pidi andmebaas ja tekst kõneks muutma iseseisev.
Proovisin vöötkoodilugeja kaamerapõhist versiooni, kuid valgustus ja kaamera asukoht tekitasid usaldusväärsuse probleeme neile, kes ei näe selgelt. Need nõudsid ka rakenduse seadistamiseks ja kasutamiseks nägemist. Niisiis läksin üle USB Laseri vöötkoodilugejale, eriti kuna need on nüüd saadaval alla 30 dollari eest ja Raspbian Jessie toetab neid kohe karbist välja.
Proovisin ka uut Amazon Dash Wandi, kuid see ei räägi skannitud üksusest ja selle toimimiseks on vaja Interneti -ühendust.
Idee oli skannida üksus ja lasta Raspberry päringul sisestada UPC-koodide andmebaas ning seejärel rääkida tekstist kõneks toote kirjeldus.
Seadme võimalikult väikeseks muutmiseks tahtsin kasutada Raspberry Pi Zero. Samuti tahtsin seadme aku tühjaks laadida.
Nende nõuete täitmiseks oli vaja mõningaid kompromisse. Kuna Zerol pole välist helipistikut, kasutasin uuesti oma projekti „Earthquake Pi” helikujundust, kuna see oli odav (umbes 6 dollarit) ja väga väike. Teise võimalusena võib „One Transistor Audio” asendada Pi Zeroga.
Laser -vöötkoodi skanneri jaoks leidsin selle saidilt DX.com. See on välja lülitatud Raspberry USB -lt ja maksab umbes 25 dollarit. (vt osi allpool)
1. samm: UUENDA
Raspberry Pi Zero W saabudes lähen sellele üle. Siin on kõik sama, välja arvatud see, et peate Pi -ga WiFi -ühenduse seadistama. See tähendab, et te ei vaja seadistamiseks ja kasutamiseks Zero jaoks USB -jaoturit.
WiFi seadistamiseks saate kasutada järgmist.
thepihut.com/blogs/raspberry-pi-tutorials/…
Kas sa teadsid?
Kui installite Raspbian Jessie SD -kaardile Windowsi personaalarvuti abil, saate enne Raspberryle käivitamist luua kaardile kaks faili, et konfigureerida WiFi ja SSH -juurdepääs?
Oletame, et teie SD -kaart on praegu arvutisse paigaldatud K:
1) Installige SD -le uusim Raspbian Jessie pilt. Selle projekti jaoks peaks Jessie Lite töötama.
www.raspberrypi.org/downloads/raspbian/
2) Märkmiku abil looge fail nimega “ssh” ja kasutage nuppu Salvesta nimega “Kõik failid” asukohta K: / ssh
Fail võib sisaldada kõike. Tähtis on failinimi. Ei tohi olla “ssh.txt” !!!
3) Märkmiku abil looge fail nimega “wpa_supplicant.conf” järgmiselt:
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdevupdate_config = 1
võrk = {
ssid = "mySSID" psk = "mypassword" key_mgmt = WPA-PSK}
Kasutage käsku Salvesta kui „Kõik failid” aadressile K: / wpa_supplicant.conf Jällegi, ärge laske Notepadil seda muuta „wpa_supplicant.conf.txt” !!
Vaarika esmakordsel käivitamisel otsib Jessie need üles ja loob ühenduse teie WiFi -ga. IP -aadressi peate siiski otsima oma ruuterist, kuna see on automaatselt määratud.
Samm: osade loend
- Raspberry Pi Zero (või mis tahes Raspberry Pi, kui suurus pole probleem)
-
USB -vöötkoodi skanner
www.dx.com/p/ls-4209-laser-bar-code-scanner…
- Raspi Zero jaoks lisage Adafruit I2S 3W D klassi võimendihttps://www.adafruit.com/products/3006
- Väike kõlar. (Pi 2, 3 puhul kasutage välist võimendit ja kõlarit.)
- USB Micro to USB OTG adapterhttps://www.adafruit.com/products/2910
- 5V 1Amp USB aku, näiteks
- USB -mikro -USB -kaabel aku jaoks.
- USB- ja Ethernet -jaotur (vähemalt esialgseks seadistamiseks, pole Zero W või Raspi 2, 3 jaoks vajalik)
- GITHUBi tarkvara:
Samm 3: USB -laser -vöötkoodi lugeja
Laser -vöötkoodilugejad on UPC -etiketi skaneerimisel andestavamad kui kaamerad. Need töötavad hästi ka halvasti valgustatud või halvasti paigutatud siltidel.
Selle Zero ühendamiseks vajate USB -USB mikroadapterit.
Skanneri käepide ja päästik muudavad selle kasutamise lihtsaks.
See annab tagasisidet ka siis, kui skaneerib edukalt.
Tulevased ülesanded:
Lõppkokkuvõttes lõikaksin kaabli selle lühendamiseks alla ja jootan otse Zero USB -nööpnõelte külge, et vähendada pistiku rikke suurust ja tõenäosust. Null ja aku kinnitatakse 3D -prinditud ümbrises otse skanneri käepideme põhja.
4. samm: UPC andmebaas
See on projekti kõige halvasti kaetud osa, kuna allalaadimiseks on sõna otseses mõttes miljoneid UPC-koode ja väga vähe avatud lähtekoodiga andmebaase. Kahjuks on enamik UPC andmebaase üsna hinnalised ja vajavad Interneti -ühendust.
Ma suutsin paar avatud lähtekoodiga andmebaasi kokku panna (allikad alltoodud lisas), kuid isegi ligi 700 000 üksuse puudumisel on suur hulk puudu.
Selleks olen teinud kahte asja; üks on keskenduda spetsiaalselt toidupoodidele ja teine on lisada Raspberryle veebiserver, mis võimaldab uute UPC -koodide käsitsi lisamist, kuid see nõuab vähemalt kohaliku võrguühendust.
Tulevased ülesanded:
Ma teeksin Zero W -st "leviala", et saaksite sellega ühenduse luua kõikjal, et lisada uusi UPC -koode.
Samm: tekst kõneks muutmiseks
Ma kasutasin teksti kõneks programmi nimega “Flite”, kuna sellel oli Zero -s parim kompromiss hääle kvaliteedi ja teisendamise kiiruse vahel. Teised kõlasid veidi paremini, kuid olid konverteerimiseks liiga aeglased.
Samuti saate vaadata Adafruit'i õpetust:
Pange tähele, et kõnekäändega harjumiseks kulub natuke kõrvaõpetust, kuid see pole liiga halb.
Sama üksuse uuesti skannimisel korratakse heli.
Tulevane ülesanne
Võib -olla lisada kõrvaklappide pesa, et eakatel oleks mürarikastes kohtades lihtsam häält kuulda.
6. samm: akutoide
Süsteemi saab käitada 5 V USB -patareist, näiteks mobiiltelefonide laadimiseks.
Konks on selles, et kui aku lahti ühendada või aku tühjaks saab, kukub Pi kokku ja võib SD -draivi rikkuda.
Selle lahendamiseks on vaja nuppu, mis käivitab väljalülitamise käsu. Tõenäoliselt kasutan sellist:
www.element14.com/community/docs/DOC-78055…
(Jah … järjekordne "Tulevane ülesanne!")
Samm 7: I osa - heli lisamine Pi Zero -le
(Kui see null puudub, jätke see osa vahele!)
Pi Zero puhul peate lisama välise heli, kuna see pole sisseehitatud. Kasutasin odavat “Adafruit I2S 3W võimendi läbimurret MAX98357A”
See nõuab seadistamist, kasutades Adafruit'i suurepärast õpetust aadressil:
Ühendage, nagu on näidatud õpetuse juhtmestiku osas:
• Amp Vin to Raspi Zero Pi 5V • Amp GND to Raspi Zero Pi GND • Amp DIN to Raspi Zero Pi #21 • Amp BCLK to Raspi Zero Pi #18 • Amp LRCLK to Raspi Zero Pi #19
Ühendage väike kõlar tahvli helijuhtmetega.
Pi Zero Adafruit helitarkvara seadistamine Samuti näidatakse Adafruit tarkvara häälestusõpetuses, täitke allolev käsk CURL:
$ curl -sS https://raw.githubusercontent.com/adafruit/Raspbe…> | lööma
Pärast taaskäivitamist kontrollige heli kõlaritesti abil:
$ speaker -test -c2 --test = wav -w /usr/share/sounds/alsa/Front_Center.wav
Kui teil on probleeme, minge tagasi Adafruit'i õpetuse kaudu, alustades ülevaatest. Kõigi värskendatud failide kontrollimiseks peate võib -olla läbima õpetuse jaotise „Üksikasjalik installimine”.
Olulised vajalikud sammud Zero & Max98357 heli jaoks: Vaikimisi töötab ALSA heli ainult stereosüsteemis, samal ajal kui Flite tekst kõneks on mono. Lisaks on helil "hüppab" sisse iga kord, kui see mängima hakkab.
(Vaata:
Peate tegema järgmist.
1) Lisage rida failile /boot/config.txt
$ sudo nano /boot/config.txt
dtoverlay = i2s-mmap
2) Asendage /etc/asound.conf
$ sudo nano /etc/asound.conf
pcm.hifiberry {type hw card 0} pcm.! default {type plug slave.pcm "dmixer"} pcm.dmixer {type dmix ipc_key 1024 ori {pcm "hifiberry" kanalid 2}} ctl.dmixer {type hw card 0}
3) Taaskäivitage oma Pi.
Proovige kõlaritesti uuesti. See peaks nüüd paremini kõlama. Kui olete häälestusõpetuse, sealhulgas helitestid, lõpetanud, peaks heli olema valmis.
Pange tähele, et kui soovite selle toidupoodi või mürarikkasse keskkonda viia, võite heli jaoks lisada kõrvaklappide pesa.
8. samm: II osa - tarkvara installimine
See eeldab, et teil on Raspbian Jessie juba installitud ja pääsete juurde Linuxi käsureale. Te ei vaja Raspbiani GUI -versiooni, kuid seda saab kasutada.
Te ei vaja hetkel USB -skannerit, kui vajate USB -porti Etherneti või klaviatuuri/hiire jaoks.
Veenduge, et teie OS oleks ajakohane:
$ sudo apt-get update $ sudo apt-get upgrade
Minge käsurealt pi kodukataloogi ja laadige alla GITHUBi hoidla:
$ cd/home/pi $ sudo apt install git $ git kloon https://github.com/rgrokett/TalkingBarcodeReader….> https://github.com/rgrokett/TalkingBarcodeReader….> $ cd TalkingBarcodeReader $./install. sh
See võtab natuke aega, eriti kui see on esimene kord ja veebiserver ja PHP tuleb installida või värskendada. Vajadusel saate seda käivitada mitu korda. Muu hulgas installib see vöötkoodifailid ja UPC andmebaasi aadressile:/var/www/html/upc
Seejärel redigeerige /etc/rc.local ja lisage järgmine rida enne väljumist 0
$ sudo nano /etc/rc.local
fi sudo /var/www/html/upc/bin/run.sh exit 0
Kui installimine on lõpule viidud, lülitage Pi välja ja ühendage USB -vöötkoodilugeja ning taaskäivitage.
$ sudo sulgub kohe
Lülitage see sisse ja peaksite kuulda lühikest käivituskõnet.
Kui jah, proovige toidupoest vöötkoodi skannida. Kui kõik läks hästi, peaksite kuulma, kuidas see üksus räägib (või lausuge „Ei leitud”). Vastasel korral vaadake järgmiselt tõrkeotsingu juhendit.
9. samm: tõrkeotsing
Kui te ei kuule helisid, peate proovima järgmisi käske:
1) Veenduge, et tekst kõneks heli töötab:
$ sudo flite -voice awb -t "testimine"
Kui kuvatakse tõrge, veenduge, et flite oleks installitud:
$ sudo apt install flite
Kui kuvatakse järgmine tõrge, värskendage kindlasti /boot/config.txt ja /etc/asound.conf, mis on näidatud Raspi Zero ülaltoodud jaotises Heli häälestus: audio_open_alsa: ebaõnnestus kanalite arvu määramine väärtusele 1. Vale argument.
Kui te ei saa viga ega heli, veenduge, et teie Raspberry heli töötab.
sudo aplay /usr/share/sounds/alsa/Front_Center.wav
1) Võimalik, et peate heli helipistikust välja sundima: (vt joonist 1 ülal)
$ sudo raspi -config -> 7 Täpsemad valikud -> A4 heli
2) Kui olete heli ja tekst kõneks kinnitanud, kontrollige vöötkoodilugejat:
cd/var/www/html/upc/binsudo python./test.py
Vöötkoodi skannimisel peaksite nägema numbrilist vöötkoodi numbrit. (Testprogramm EI sisalda heliväljundit ega andmebaasiühendusi.)
3) Kui see kõik on hea, kontrollige veateateid failist „nohup.out”:
cd/var/www/html/upc/binsudo cat nohup.out
Tõenäoliselt on probleemideks puuduvad paketid või halvad õigused (või vead koodis!). Veenduge, et teie OS oleks ajakohane ja käivitage install.sh uuesti.
Loodetavasti töötate praeguseks!
10. samm: III osa - veebiserver
Kuna UPC -koode on miljoneid ja enamik avalikult (st tasuta) saadaolevaid andmebaase on vaid väike koodide alamhulk, keskendus see projekt toidukaupade UPC -koodidele. See sisaldab mitusada tuhat eset, kuid palju -palju jääb leidmata.
Kui teil on vaja UPC andmebaasi lisada või värskendada, on saadaval kaks programmi; käsurea ja üks veebibrauser. (asendage numbrid oma UPC kauba numbriga)
$ cd/var/www/html/upc/bin
$ sudo./addDB.sh 01234567890 “Minu uus üksus”
See lisab andmebaasi kirje. Vastasel juhul on soovitatav kasutada veebibrauseri DB -funktsiooni.
Veebiserveri GUI jaoks vajate oma vaarika IP -aadressi.
IP -aadressi leidmiseks võite kasutada järgmist.
$ hostinimi -I 192.168.1.108
Minge arvuti brauseris aadressile: https://192.168.1.108/upc/Ne peaksite nägema ülaltoodud joonisel 2 kuvatut.
Kui jah, saate kirjeid lisada/värskendada ja kustutada. Navigeerige viimasele lehele, kasutades nuppu („> |”) „Viimane kirje”, et näha oma uusimaid kirjeid, nagu need on andmebaasi lõppu lisatud.
TURVAMÄRKUS, et see veebiteenus ei ole turvatud (puudub autentimine, SSL puudub), seega on parem mitte avalikustada seda avalikule Internetile. (Aga kuna see pole WiFi pääsupunktiks seadistatud, on see poodi kaasaskandmine ohutu.)
Kuigi selle kohta pole privaatseid andmeid, võib halvim juhtuda see, et keegi manipuleerib UPC andmetega.
Samuti saate piirata juurdepääsu teatud IP -aadressidele, et teised ei pääseks sisse. Asendage siin lihtsalt need IP -d, mida soovite lubada. Kõigil teistel on juurdepääs blokeeritud:
$ sudo vi /etc/lighttpd/lighttpd.conf
$ HTTP ["remoteip"] = ~ "127.0.0.1 | 192.168.1.108" {url.access-deny = ("")} $ sudo /etc/init.d/lighttpd restart
MUUTA ka PI vaikeparooli! Kõik teavad, et vaikimisi on pi/vaarikas
$ passwd
Samm: veebiserveri tõrkeotsing
Minge oma brauseri abil oma Vaarika IP -aadressile järgmiselt.
192.168.1.108/
Peaksite nägema vaikeekraani /var/www/html/index.html (joonis 1 ülal)
Samuti veenduge, et veebiserver töötab:
$ ps -ef | grep lighttpd
PHP hea olemasolu kontrollimiseks looge php testfail:
$ sudo nano /var/www/html/phpinfo.php
Seejärel minge aadressile
Te peaksite nägema sellist ekraani nagu joonis 2 ülal
Kui kuvatakse vead või tühjad ekraanid, kontrollige vigade olemasolu
$ sudo kass /var/log/lighttpd/error.log
Jällegi võib install.sh uuesti käivitamine parandada puuduvaid sõltuvusi.
12. samm: lisa
SUUR TÄNU järgneb järgmisele suure UPC andmebaasi kättesaadavaks tegemise eest.
Avage toidukaupade UPC DB
www.grocery.com/open-grocery-database-proje…
Avage Data DB
www.grocery.com/open-grocery-database-proje…
www.upc-search.org/perl/upc-search.pl?q=84…
Tänu EasyUI -le lihtsa veebipõhise CRUD GUI eest
www.jeasyui.com/index.php
Soovitan:
Superstock (varud, mida kontrollib vöötkoodi skanner): 5 sammu
Superstock (laos kontrollitud vöötkoodi skanneriga): selles juhendis räägin teile, kuidas ehitada Superstock, minu kooliprojekt 1MCT jaoks Howestis. Kontseptsioon on kasutajasõbraliku andmebaasi loomine, millele pääsete juurde veebisaidi kaudu, et pidada silmas seda, mis teil laos on (minu puhul riided minu
Apple'i vöötkoodi graveerija (Photonics Hackathon Phablabs): 3 sammu
Apple'i vöötkoodi graveerija (Photonics Hackathon Phablabs): Tere kõigile! Meie Phablabs Photonics väljakutse raames paluti meil luua seade, mis oleks võimeline asendama puuviljade kleebiseid. Kas vihkate ka puuviljakleebiseid? Ja kas soovite teha keskkonnasõbralikke muudatusi? Siis tahaksime teada
Liikuv ja rääkiv hiiglane Lego Hulk MiniFig (10: 1 skaala): 14 sammu (koos piltidega)
Liikuv ja rääkiv hiiglane Lego Hulk MiniFig (10: 1 skaala): Olen lapsena alati legodega mänginud, kuid mul polnud ühtegi uhket legot, vaid klassikalisi legoklotse. Olen ka Marvel Cinematic Universe'i (MCU) suur fänn ja mu lemmiktegelane on Hulk. Miks mitte ühendada need kaks ja teha hiiglane
Raputamist tuvastav rääkiv müts Circuit Playground Expressiga: 12 sammu (piltidega)
Raputamist tuvastav rääkiv müts Circuit Playground Expressiga: see lihtne ja kiire õpetus õpetab teile rääkiva mütsi valmistamist! See vastaks küsimuse esitamise korral hoolikalt töödeldud vastusega ja võib -olla aitaks teil otsustada, kas teil on muresid või probleeme. Oma kantavate tehnoloogiate klassis olen
Odavad iPhone'i makroobjektiivid vöötkoodi skannimiseks: 6 sammu (koos piltidega)
Odavad iPhone'i makroobjektiivid vöötkoodi skannimiseks: iPhone'i kaamera silmatorkav probleem on suutmatus fokuseerida lähemale kui ~ 1 jala kaugusele. Mõned järelturu lahendused aitavad seda probleemi lahendada, näiteks Griffini tehnoloogia iClarifi. See iPhone 3G ümbris võimaldab teil veidi libistada