Kazalo:
- 1. korak: utripanje trdega diska RaspberriPi / namestitev potrebne programske opreme (z uporabo Ubuntu Linux)
- 2. korak: Potrebne zaloge
- Korak: Zgradite in ožičite napravo
- 4. korak: S 3D tiskalnikom natisnite naslovnico, škatlo in hrbtne plošče
- 5. korak: ožičenje komponent
- 6. korak: Povežite komponente z robotom
- 7. korak: Preverite konfiguracijo I2C
- 8. korak: Namestite DHT11
- 9. korak: Kloniraj skladišče
- 10. korak: Dodajte API Pushbullet (z uporabo Python 3.5)
- 11. korak: Dodajte skript za začetek pri zagonu nadzorne plošče in znova zaženite nadzorno ploščo Pi
- 12. korak: NEOBVEZNO: Ustvarjanje lastnih slik Nintendo za upodabljanje na zaslonu
- 13. korak: Končano
Video: R.O.B. Pomočnik za obvestila telefona: 13 korakov
2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-13 06:58
Avtor khinds10www.kevinhinds.comSledi več avtorja:
O: 3D tiskanje in oblikovanje projektov RaspberryPI že nekaj let Več o khinds10 »
Pomočnik za obvestila za namizni telefon z (R. O. B.) robotskim operativnim prijateljem
1. korak: utripanje trdega diska RaspberriPi / namestitev potrebne programske opreme (z uporabo Ubuntu Linux)
Ustvarite nov trdi disk za DashboardPI
Vstavite kartico microSD v računalnik prek adapterja USB in ustvarite podobo diska z ukazom dd
Poiščite vstavljeno kartico microSD z ukazom df -h, jo odstranite in ustvarite sliko diska z ukazom dd copy copy
$ df -h/dev/sdb1 7,4G 32K 7,4G 1%/mediji/XXX/1234-5678
$ umount /dev /sdb1
Pozor: preverite, ali je ukaz popolnoma natančen, s tem ukazom lahko poškodujete druge diske
if = lokacija slikovne datoteke RASPBIAN JESSIE LITE = lokacija vaše kartice microSD
$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of =/dev/sdb (opomba: v tem primeru je to/dev/sdb,/dev/sdb1 je bila obstoječa tovarniška particija na microSD)
Nastavitev vašega RaspberriPi
Novo kartico microSD vstavite v raspberrypi in jo vklopite z monitorjem, priključenim na vrata HDMI
Vpiši se
uporabnik: pi pass: malina
Zaradi varnosti spremenite geslo računa
sudo passwd pi
Omogoči dodatne možnosti RaspberriPi
sudo raspi-config
Izberite:
1 Razširite datotečni sistem
9 Napredne možnosti
Ime gostitelja A2 ga spremenite v "RobbieAssistant"
A4 SSH Omogoči strežnik SSH
A7 I2C Omogoči vmesnik i2c
Omogočite angleško/ameriško tipkovnico
sudo nano/etc/default/tipkovnica
Spremenite naslednjo vrstico: XKBLAYOUT = "mi"
Znova zaženite PI za spremembe postavitve tipkovnice / spreminjanje velikosti datotečnega sistema
$ sudo shutdown -r zdaj
Samodejna povezava z WiFi
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Dodajte naslednje vrstice, da se vaš raspberrypi samodejno poveže z vašo domačo WiFi (če je vaše brezžično omrežje na primer v naslednjem primeru imenovano "linksys")
network = {ssid = "linksys" psk = "TUKAJ BREZŽIČNA GESLO"} Znova zaženite PI za povezavo z omrežjem WiFi
$ sudo shutdown -r zdaj
Zdaj, ko je vaš PI končno v lokalnem omrežju, se lahko nanj na daljavo prijavite prek SSH. Najprej pa morate dobiti naslov IP, ki ga trenutno ima.
$ ifconfig Poiščite "inet addr: 192.168. XXX. XXX" v izhodu tega ukaza za IP naslov vašega PI
Pojdite na drug stroj in se prijavite v svoj raspberrypi prek ssh
$ ssh [email protected]. XXX. XXX
Začnite nameščati potrebne pakete
$ sudo apt-get posodobitev
$ sudo apt-get nadgradnja
$ sudo apt-get install build-bistven tk-dev libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev libncurses5-dev libncursesw5-dev pipdeb pip python3-zahteve python3-setuptools python3-urllib python3-urllib3 python3-zahteve vim git python-smbus i2c-tools python-imaging python-smbus build-bistven python-dev rpi.gpio python3 python3-pip ip-pip gim orodja python-imaging python-smbus build-bistven python-dev rpi.gpio python3 python3-pip libi2c-dev vim git python-smbus i2c-tools python-slikanje python-smbus build-bistven python-dev rpi.gpio python3 python3 python3 -gpiozero python-psutil xz-utils
$ sudo pip zahteve za namestitev
Posodobite nastavitve lokalnega časovnega pasu
$ sudo dpkg-ponovno konfigurirajte tzdata
z vmesnikom izberite časovni pas
Nastavitev preprostega ukaza l imenika [neobvezno]
vi ~/.bashrc
dodaj naslednjo vrstico:
vzdevek l = 'ls -lh'
vir ~/.bashrc
Popravi označevanje privzete sintakse VIM [neobvezno]
sudo vi/etc/vim/vimrc
odkomentirajte naslednjo vrstico:
sintaksa vklopljena
naredite mapo dnevnikov za izvajanje aplikacije mkdir/home/pi/RobbieAssistant/logs
chmod 777/home/pi/RobbieAssistant/dnevniki
Konfigurirajte aplikacijo za pravilen zagon v nastavitveni datoteki settings.py Poiščite datoteko settings-shadow.py v mapi / includes / projekta in jo kopirajte v settings.py in se prilagodite trenutnim nastavitvam
# weather.io ključ API za lokalne vremenske informacije
weatherAPIURL = 'https://api.forecast.io/forecast/'
weatherAPIKey = 'VAŠ KLJUČ ZA API ZA FORECAST. IO'
# neobvezno za zagon daljinskega zapisovalnika temp./vlažnosti
dashboardServer = 'mydevicelogger.com'
# poiščite google, da dobite zemljepisno širino/dolžino za vašo domačo lokacijo
zemljepisna širina = 41,4552578
zemljepisna dolžina = -72,1665444
2. korak: Potrebne zaloge
RaspberriPi nič
DHT11 Vlažilec
LED luči (x4) Zelena / rumena / modra / rdeča 2,6 -palčni zaslon z diagonalo
Korak: Zgradite in ožičite napravo
Pripravite zaslon Digole za i2C
Na hrbtni strani zaslona Digole spajkajte mostiček, da zaslonu dodeli uporabo protokola i2c
4. korak: S 3D tiskalnikom natisnite naslovnico, škatlo in hrbtne plošče
Z uporabo naslednjih datotek X STL v mapi 3DPrint R. O. B. Robot, LED pasovi in nosilec za zaslon
buttonContainer-base.stl
buttonContainer-lid.stl
displaymount-final.stl
led-harness-final.stl
MiniNintendoROB.zip
Robot Print: Mini Nintendo R. O. B. - avtor RabbitEngineering
www.thingiverse.com/thing:1494964
Z birokracijo sem naredil oči rdeče s črnim ozadjem vizirja
5. korak: ožičenje komponent
Zaslon Digole
GND -> GND
PODATKI -> SDA
CLK -> SCL
VCC -> 3V
DHT11 Vlažilec
VCC -> 5V
GND -> GND
PODATKI -> GPIO 25
MODRI Upor
VCC -> GPIO 17 (z uporom 270 ohmov)
GND -> GND
RUMENI Upor
VCC -> GPIO 13 (z uporom 270 ohmov)
GND -> GND
ZELEN Upor
VCC -> GPIO 6 (z uporom 270 ohmov)
GND -> GND
RDEČI Upor
VCC -> GPIO 12 (z uporom 270 ohmov)
GND -> GND
RDEČI trenutni gumb
VCC -> GPIO 16 (z uporom 270 ohmov)
GND -> GND
Modri trenutni gumb
VCC -> GPIO 26 (z uporom 270 ohmov)
GND -> GND
6. korak: Povežite komponente z robotom
Ko natisnete držalo zaslona, ga povežite z zaslonom digole
Priključite zaslon na RPi z dovolj ožičenja, da RPi prilepite na zadnjo stran robota
Natisnite krmilnik in ožičite gumbe z dovolj ožičenja, da pridejo na zadnjo stran robota
Dokončajte ožičenje in sestavljanje robota z RPi, priključenim na zadnji strani, in DHT11, prilepljenim na dno
7. korak: Preverite konfiguracijo I2C
Zaženite RaspberryPi in se prepričajte, da vodilo I2C prepozna vse vaše povezane zaslone segmentov 7/14. [vsak zaslon ima edinstven naslov, opisan zgoraj, kako spajkate skakalce vsakega zaslona v različnih kombinacijah]
Če imate pravilno spajkan zaslon z mostičkom, morate imeti za ukaz i2cdetect naslednji izhod:
sudo i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f 00: - - - - - - - - - - - - -
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- 27 -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
8. korak: Namestite DHT11
$ cd ~
klon $ git
$ cd Adafruit_Python_DHT/
$ sudo python setup.py install
$ sudo python ez_setup.py
$ cd primeri/
$ vi simpletest.py Spremenite naslednjo vrstico:
senzor = Adafruit_DHT. DHT11
Komentirajte črto
pin = 'P8_11'
Odkomentirajte vrstico in spremenite številko PIN na 16
pin = 25
Zaženite test
python simpletest.py
V ukazni vrstici bi morali biti prikazani metrični odčitki Temp in Vlažnost.
9. korak: Kloniraj skladišče
klon $ cd ~ $ git
10. korak: Dodajte API Pushbullet (z uporabo Python 3.5)
Z aplikacijo pushbullet za telefon se prijavite, če želite prejeti ključ API, da bo preprost skript python lahko zajel in potisnil obvestila in zastavice indikatorja podatkovnega vozlišča
Namestite Python 3.5 za funkcijo asyncio
$ sudo apt-get update sudo apt-get install build-bistven tk-dev sudo apt-get install libncurses5-dev libncursesw5-dev libreadline6-dev sudo apt-get install libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev sudo apt-get install libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev Če enega od paketov ni mogoče najti, poskusite z novejšo različico različice (npr. libdb5.4-dev namesto libdb5.3-dev).
$ wget https://www.python.org/ftp/python/3.5.2/Python-3…. tar zxvf Python-3.5.2.tgz cd Python-3.5.2./configure --prefix =/usr/local/opt/python-3.5.2 naredi sudo make namesti sudo ln -s/usr/local/opt/python -3.5.2/bin/pydoc3.5 /usr/bin/pydoc3.5 sudo ln -s /usr/local/opt/python-3.5.2/bin/python3.5 /usr/bin/python3.5 sudo ln -s /usr/local/opt/python-3.5.2/bin/python3.5m /usr/bin/python3.5m sudo ln -s /usr/local/opt/python-3.5.2/bin/pyvenv-3.5 /usr/bin/pyvenv-3.5 sudo ln -s /usr/local/opt/python-3.5.2/bin/pip3.5 /usr/bin/pip3.5 cd ~ echo 'vzdevek python35 = "/usr/local /opt/python-3.5.2/bin/python3.5 "'>>.bashrc echo' vzdevek idle35 ="/usr/local/opt/python-3.5.2/bin/python3.5 "'>>.bashrc Namestite odvisnosti python3
$ sudo apt-get install python3-setuptools sudo apt-get install python3-pip sudo pip3 namestite asyncpushbullet sudo pip3 zahteve za namestitev Neobvezen način Prenesite shrambo python neposredno, da pridobite odvisnosti od pythona, ne da bi ga namestili pip
git clone https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py install Obiščite stran z nastavitvami pushbullet v svojem računu, da ustvarite Ključ API za uporabo
Konfigurirajte svoj skript pushbullet-listener.py tako, da ima pravilen API in osrednji gostitel nadzorne plošče
# vaš ključ API iz PushBullet.com API_KEY = "o. XXXYYYZZZ111222333444555666"
# nadzorna plošča osrednjega strežnika dashboardServer = 'MY-SERVER-HERE.com'
11. korak: Dodajte skript za začetek pri zagonu nadzorne plošče in znova zaženite nadzorno ploščo Pi
$ crontab -e
@reboot nohup /usr/local/opt/python-3.5.2/bin/python3.5 /home/pi/PushBullet/pushbullet-listener.py>/dev/null 2> & 1
@reboot nohup /usr/local/opt/python-3.5.3/bin/python3.5 /home/pi/RobbieAssistant/PushBullet/pushbullet-listener.py>/dev/null 2> & 1
@reboot nohup python /home/pi/RobbieAssistant/Robbie.py>/dev/null 2> & 1
@reboot nohup python /home/pi/RobbieAssistant/Temp.py>/dev/null 2> & 1
@reboot nohup python /home/pi/RobbieAssistant/Weather.py>/dev/null 2> & 1
12. korak: NEOBVEZNO: Ustvarjanje lastnih slik Nintendo za upodabljanje na zaslonu
Naložite svojo datoteko velikosti 128 x 128 na naslednji URL:
www.digole.com/tools/PicturetoC_Hex_converter.php
Izberite slikovno datoteko za nalaganje, dodajte želeno velikost zaslona (širina/višina)
V spustnem meniju "Uporablja se za" izberite "256 barv za barvni OLED/LCD (1 bajt/slikovna pika)"
Pridobite šesterokotni izhod.
Dodajte šestnajstiški izhod v datoteko display/ build/ header (.h), druge uporabite kot vodila za sintakso.
Novo datoteko vključite v datoteko digole.c #include myimage.h
V slikovno datoteko vključite nov kavelj ukazne vrstice. Opomba: spodnji ukaz pravi, da narišite sliko na položaju 10 slikovnih pik nad 10 slikovnih pik navzdol. Lahko ga spremenite v različne koordinate X, Y, spremenite pa lahko tudi vrednosti 128, 128 na kakršno koli velikost vaše nove slike.
} else if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariableHere je definirano v vaši (.h) datoteki}
Zdaj obnovite (prezrite napake) spodaj, da bo vaša nova slika upodobljena z naslednjim ukazom.
$./digole moja slika
Obnovite [Vključeno] gonilnik zaslona Digole za vaše izbirne spremembe
$ cd prikaz/izdelava
$ gcc digole.c
$ mv a.out../../digole
$ chmod +x../../digole
13. korak: Končano
Končali ste!