- Potrebni materiali
- Predpogoji
- Namestite TTS Engine (Espeak) za Raspberry Pi
- Ustvarjanje grafičnega uporabniškega vmesnika za govorilno budilko Raspberry Pi
- Oblikovanje GUI z uporabo Qt Designer
» Dobro jutro. Ura je 7:00. Vreme v Malibuju je 72 stopinj z razpršeno oblačnostjo. Pogoji za deskanje so pošteni z visokimi linijami do pasu. Plima bo ob 10:52 ". Vsakič, ko slišim ta glas Jarvisa v filmu Iron Man, me pozebe po hrbtenici. Prepričan sem, da bi tako kot jaz tudi mnogi sanjali, da bi živeli tako prefinjeno življenje kot Tony Stark. Toda na žalost nismo napredovali s tehnologijo za miniaturni reaktor z oblokom ali tako inteligentno umetno inteligenco kot JARVIS. Toda naše dolgočasne jutranje budilke je mogoče zamenjati s tistimi, ki so podobne Jarvisu z uporabo Raspberry Pi. Na koncu tega projekta bomo ustvarili zelo osnovni grafični uporabniški vmesnik, s pomočjo katerega lahko nastavimo alarm, in ko se alarm sproži, bomo imeli glas, ki nam bo sporočil trenutni čas in dan z nekaj vnaprej določenim besedilom. Sliši se v redu !! Torej, zgradimo ga.
Potrebni materiali
- Raspberry Pi
- 3,5-palčni zaslon TFT LCD
- Zvočnik
- AUX kabel
- Internetna povezava
Predpogoji
Predpostavlja se, da je vaš Raspberry Pi že nameščen z operacijskim sistemom in se lahko poveže z internetom. V nasprotnem primeru sledite navodilom za začetek uporabe Raspberry Pi. Tu uporabljamo Rasbian Jessie, nameščen Raspberry Pi 3.
Predpostavlja se tudi, da imate dostop do pi-ja bodisi prek terminalskih oken bodisi prek druge aplikacije, s katero lahko pišete in izvajate programe python ter uporabljate terminalsko okno.
Morda boste želeli preveriti tudi, kako povezati 3,5-palčni TFT LCD z Raspberry Pi, saj ga bomo uporabili v tem projektu.
Namestite TTS Engine (Espeak) za Raspberry Pi
Kot je zapisano v naslovu projekta, bomo zgradili govorilno uro. Da bi vaš Pi govoril, potrebujemo mehanizem za pretvorbo besedila v govor (TTS). Izbirate lahko med toliko možnostmi, vendar sem zaradi poenostavitve izbral Espeak Engine. Če želite namestiti Espeak na vaš Pi, preprosto zaženite naslednji ukaz na terminalu
sudo apt-get namestite espeak sudo apt-get namestite espeak python-espeak
Ustvarjanje grafičnega uporabniškega vmesnika za govorilno budilko Raspberry Pi
Za ta projekt moramo razviti GUI, ki predstavlja budilko, tako da lahko uporabnik vidi trenutni čas in tudi nastavi alarm. Obstaja veliko možnosti za razvoj grafičnega uporabniškega vmesnika s pomočjo Pythona, toda najbolj priljubljen in vsestranski je PyQt4, zato ga bomo uporabili za razvoj našega uporabniškega vmesnika. V spodnjih nekaj naslovih bomo razpravljali o tem, kako uporabiti PyQt4 za oblikovanje lastnega grafičnega uporabniškega vmesnika, če pa vas to ne zanima, lahko neposredno preskočite na naslov » Program za govorno budilko «.
Namestitev PyQt4 z Qt oblikovalcem na vaš računalnik z operacijskim sistemom Windows
Ker načrtujemo grafični uporabniški vmesnik, bomo najprej začeli s programiranjem na prenosnem računalniku (Windows / Linux), nato pa bomo ta skript python prenesli na naš Pi. Ker ima PyQt4 zelo dobro prenosljivost, večina razvijalcev to počne, saj je razvoj v prenosnem računalniku enostaven in hitrejši, kot ga dejansko počne na Raspberry Pi.
Na svoj računalnik Windows sem namestil pakete python in PQt; če vas to ne zanima, lahko razvijete svoj grafični uporabniški vmesnik na samem vašem malinu pi, tako da preprosto preskočite ta korak. Če želite namestiti PQt v sistem Windows, prenesite to datoteko exe in med namestitvenim postopkom preverite, ali ste preverili programsko opremo Qt designer, saj jo bomo uporabljali za naš projekt.
Namestitev PyQt na stroje Pi / Linux / MAC
Če želite namestiti PyQt na Linux, preprosto zaženite naslednjo vrstico na ukaznem terminalu
sudo apt-get namestite python-qt4
Oblikovanje GUI z uporabo Qt Designer
Ena opazna prednost uporabe PyQt4 za vaše zasnove grafičnega uporabniškega vmesnika je ta, da ima programsko opremo Qt designer. S to programsko opremo lahko ustvarjate gumbe, zaslone, besedila in druge grafike tako, da preprosto povlečete stvari na zaslon in jih postavite kamor koli je to potrebno. To nam prihrani veliko časa, saj nam ni treba ročno podajati velikosti in položaja predmetov na zaslonu. Qt designer sem skupaj s Pythonom in PyQt4 namestil na svoj prenosnik s sistemom Windows z uporabo datoteke exe, kot je opisano v zgornjem odstavku. Po namestitvi odprite svoj Qt Designer in dobili boste ta zaslon.
Na levi strani najdete postavitev, distančnike, gumbe in druge predmete, ki jih preprosto uporabite tako, da jih povlečete v okno. Predmete lahko po potrebi prilagodite tudi z okni na desni. Za ustvarjanje uporabniškega vmesnika za našo budilko sem uporabil 7-segmentni LCD zaslon, gumb, besedilno vrstico in nastavljen časovni predmet. Po uporabi postavitev za postavitev vseh predmetov na želeno mesto in velikost je bilo moje okno spodaj videti nekako tako
Ko je vaš GUI pripravljen, lahko svoj dizajn shranite kot datoteko .ui . Kasneje, kadar koli želite spremeniti svoj grafični uporabniški vmesnik, lahko preprosto odprete to datoteko in izvedete spremembe, ne da bi se morali v programu pomikati gor in dol. Datoteko.ui za govorno uro lahko prenesete, če želite spremeniti to zasnovo. Ko ste zadovoljni z zasnovo grafičnega uporabniškega vmesnika, jo lahko izvozite kot kodo python, od koder lahko začnete s programiranjem pythona.
Vem, da bi se marsikaj tu preneslo nad glavo, vendar ni mogoče razložiti, kako uporabiti knjižnico Qt4 v enem samem priročniku. Če želite vedeti, se lahko obrnete na vadnice serije sentdex PyQt4