Sadržaj:
- Korak 1: Bljeskanje RaspberriPi tvrdog diska / instaliranje potrebnog softvera (pomoću Ubuntu Linuxa)
- Korak 2: Potrebne zalihe
- Korak 3: Izgradite i ožičite uređaj
- Korak 4: Pomoću 3D štampača odštampajte poklopac, kutiju i zadnje ploče
- Korak 5: Komponentno ožičenje
- Korak 6: Povežite komponente s robotom
- Korak 7: Provjerite I2C konfiguraciju
- Korak 8: Instalirajte DHT11
- Korak 9: Klonirajte spremište
- Korak 10: Dodajte Pushbullet API (koristeći Python 3.5)
- Korak 11: Dodajte skriptu za početak pri pokretanju nadzorne ploče i ponovo pokrenite svoju nadzornu ploču Pi
- Korak 12: OPCIONALNO: Kreiranje vlastitih Nintendo slika za iscrtavanje na ekranu
- Korak 13: Završeno
Video: R.O.B. Pomoćnik za obavještenja telefona: 13 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:04
Autor khinds10www.kevinhinds.comSlijedi Još autora:
O: 3D štampanje i dizajniranje RaspberryPI projekata već nekoliko godina Više o khinds10 »
Pomoćnik za obavještenja za desktop telefone s (R. O. B.) robotskim operativnim prijateljem
Korak 1: Bljeskanje RaspberriPi tvrdog diska / instaliranje potrebnog softvera (pomoću Ubuntu Linuxa)
Kreirajte svoj novi tvrdi disk za DashboardPI
Umetnite microSD u računalo putem USB adaptera i kreirajte sliku diska pomoću naredbe dd
Pronađite umetnutu microSD karticu pomoću naredbe df -h, demontirajte je i kreirajte sliku diska naredbom dd copy copy
$ df -h/dev/sdb1 7,4G 32K 7,4G 1%/mediji/XXX/1234-5678
$ umount /dev /sdb1
Oprez: provjerite je li naredba potpuno točna, ovom naredbom možete oštetiti druge diskove
if = lokacija datoteke slike RASPBIAN JESSIE LITE = lokacija vaše microSD kartice
$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of =/dev/sdb (napomena: u ovom slučaju to je/dev/sdb,/dev/sdb1 je bila postojeća tvornička particija na microSD)
Postavljanje vašeg RaspberriPi -ja
Umetnite svoju novu microSD karticu u raspberrypi i uključite je s monitorom spojenim na HDMI priključak
Ulogovati se
korisnik: pi pass: malina
Iz sigurnosnih razloga promijenite lozinku računa
sudo passwd pi
Omogućite RaspberriPi napredne opcije
sudo raspi-config
Odaberite:
1 Proširite Sistem datoteka
9 Napredne opcije
A2 ime hosta promijenite u "RobbieAssistant"
A4 SSH Omogući SSH server
A7 I2C Omogući i2c sučelje
Omogućite englesku/američku tastaturu
sudo nano/etc/default/keyboard
Promijenite sljedeći red: XKBLAYOUT = "mi"
Ponovo pokrenite PI za promjene rasporeda tastature / promjenu veličine datotečnog sistema kako bi stupile na snagu
$ sudo shutdown -r sada
Automatsko povezivanje na WiFi
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Dodajte sljedeće redove kako bi se vaš raspberrypi automatski povezao s kućnom WiFi mrežom (ako je vaša bežična mreža na primjer "linksys", u sljedećem primjeru)
network = {ssid = "linksys" psk = "BEŽIČNA LOZINKA OVDJE"} Ponovo pokrenite PI za povezivanje na WiFi mrežu
$ sudo shutdown -r sada
Sada kada je vaš PI konačno na lokalnoj mreži, možete se daljinski prijaviti na njega putem SSH -a. Ali prvo morate dobiti IP adresu koju trenutno ima.
$ ifconfig Potražite "inet addr: 192.168. XXX. XXX" u sljedećem izlazu naredbe za IP adresu vašeg PI -ja
Idite na drugu mašinu i prijavite se na svoj raspberrypi putem ssh -a
$ ssh [email protected]. XXX. XXX
Počnite instalirati potrebne pakete
$ sudo apt-get update
$ sudo apt-get nadogradnja
$ sudo apt-get install build-essential tk-dev libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev libncurses5-dev libncursesw5-dev lipbad-piv python3-zahtjevi python3-setuptools python3-urllib python3-urllib3 python3-zahtjevi vim git python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip vim git alati python-imaging python-smbus build-bistvena python-dev rpi.gpio python3 python3-pip libi2c-dev vim git python-smbus i2c-tools python-imaging python-smbus build-bistvena python-dev rpi.gpio python3 python3 python3 -gpiozero python-psutil xz-utils
$ sudo pip zahtjevi za instaliranje
Ažurirajte postavke lokalne vremenske zone
$ sudo dpkg-rekonfigurirajte tzdata
odaberite svoju vremensku zonu pomoću sučelja
Postavite jednostavnu naredbu l direktorija [opcionalno]
vi ~/.bashrc
dodajte sledeći red:
alias l = 'ls -lh'
izvor ~/.bashrc
Ispravite označavanje zadane sintakse VIM -a [nije obavezno]
sudo vi/etc/vim/vimrc
raskomentirajte sljedeći redak:
sintaksa uključena
napravite mapu dnevnika da aplikacija pokrene mkdir/home/pi/RobbieAssistant/logs
chmod 777/home/pi/RobbieAssistant/logs
Konfigurirajte aplikaciju za ispravno pokretanje u datoteci settings.py config Pronađite datoteku settings-shadow.py u / include / mapi projekta i kopirajte je u settings.py i prilagodite se trenutnim postavkama
# weather.io API ključ za lokalne vremenske informacije
weatherAPIURL = 'https://api.forecast.io/forecast/'
weatherAPIKey = 'VAŠ API KLJUČ ZA FORECAST. IO'
# opcionalno za pokretanje udaljenog zapisnika temp./vlažnosti
dashboardServer = 'mydevicelogger.com'
# pretražite google da dobijete zemljopisnu širinu/dužinu za vašu kućnu lokaciju
zemljopisna širina = 41,4552578
geografska dužina = -72,1665444
Korak 2: Potrebne zalihe
RaspberriPi Zero
DHT11 Humidistat
LED svjetla (x4) Zelena / Žuta / Plava / Crvena 2,6 Digole zaslon
Korak 3: Izgradite i ožičite uređaj
Pripremite Digole zaslon za i2C
Na stražnjoj strani Digole ekrana zalemite kratkospojnik kako biste ekranu dodijelili korištenje i2c protokola
Korak 4: Pomoću 3D štampača odštampajte poklopac, kutiju i zadnje ploče
Koristeći sljedeće X STL datoteke u mapi 3DPrint, R. O. B. Robot, LED kabelski svežanj i nosač za ekran
buttonContainer-base.stl
buttonContainer-lid.stl
displaymount-final.stl
led-uprtač-final.stl
MiniNintendoROB.zip
Robot Štampa: Mini Nintendo R. O. B. - od RabbitEngineering
www.thingiverse.com/thing:1494964
Koristio sam birokratiju kako bih oči zacrvenio s crnom pozadinom vizira
Korak 5: Komponentno ožičenje
Digole Display
GND -> GND
PODACI -> SDA
CLK -> SCL
VCC -> 3V
DHT11 Humidistat
VCC -> 5V
GND -> GND
PODACI -> GPIO 25
PLAVI Otpornik
VCC -> GPIO 17 (sa 270ohm otpornikom)
GND -> GND
ŽUTI Otpornik
VCC -> GPIO 13 (sa 270ohm otpornikom)
GND -> GND
ZELENI Otpornik
VCC -> GPIO 6 (sa 270ohm otpornikom)
GND -> GND
RED Resistor
VCC -> GPIO 12 (sa 270ohm otpornikom)
GND -> GND
CRVENO Trenutno dugme
VCC -> GPIO 16 (sa 270ohm otpornikom)
GND -> GND
PLAVO Trenutačno dugme
VCC -> GPIO 26 (sa 270ohm otpornikom)
GND -> GND
Korak 6: Povežite komponente s robotom
Nakon što odštampate držač ekrana, povežite ga sa ekranom digole
Priključite zaslon na RPi s dovoljno ožičenja da zalijepite RPi na stražnju stranu robota
Odštampajte kontroler i ožičite dugmad sa dovoljno žica da dođu do stražnje strane robota
Završite ožičenje i sastavljanje robota sa RPi povezanim na stražnjoj strani i DHT11 zalijepljenim na dno
Korak 7: Provjerite I2C konfiguraciju
Pokrenite svoj RaspberryPi i provjerite da I2C sabirnica prepoznaje sve vaše povezane 7/14 segmentne zaslone. [svakom zaslonu je dodijeljena jedinstvena adresa gore opisana načinom na koji ste lemili kratkospojnike svakog zaslona u različitim kombinacijama]
Ako imate ispravno lemljen ekran sa kratkospojnikom, trebali biste imati sljedeći izlaz za naredbu i2cdetect:
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: -- -- -- -- -- -- -- --
Korak 8: Instalirajte DHT11
$ cd ~
$ git klon
$ cd Adafruit_Python_DHT/
$ sudo python setup.py install
$ sudo python ez_setup.py
$ cd primjeri/
$ vi simpletest.pyPromijenite sljedeći red:
senzor = Adafruit_DHT. DHT11
Komentarišite liniju
pin = 'P8_11'
Dekomentirajte liniju i promijenite pin broj na 16
pin = 25
Pokrenite test
python simpletest.py
Trebali biste vidjeti metričko očitanje temperature i vlažnosti prikazano na komandnoj liniji.
Korak 9: Klonirajte spremište
$ cd ~ $ git klon
Korak 10: Dodajte Pushbullet API (koristeći Python 3.5)
Koristeći aplikaciju pushbullet za vaš telefon, prijavite se da biste dobili API ključ kako bi jednostavna python skripta mogla hvatati i gurati obavijesti u hub podataka i zastavice indikatora
Instalirajte Python 3.5 za asyncio funkcionalnost
$ sudo apt-get update sudo apt-get install build-essential 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 Ako se jedan od paketa ne može pronaći, isprobajte noviju verziju broja (npr. libdb5.4-dev umjesto 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 učiniti sudo make instalirati 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 'alias python35 = "/usr/local /opt/python-3.5.2/bin/python3.5 "'>>.bashrc echo' alias idle35 ="/usr/local/opt/python-3.5.2/bin/python3.5 "'>>.bashrc Instalirajte zavisnosti python3
$ sudo apt-get install python3-setuptools sudo apt-get install python3-pip sudo pip3 instaliraj asyncpushbullet sudo pip3 zahtevi za instalaciju Neobavezan način Preuzmite python spremište direktno da biste dobili python zavisnosti bez upotrebe pip-a koji ga instalira
git clone https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py install Posjetite stranicu postavki pushbullet na svom računu kako biste generirali API ključ za upotrebu
Konfigurirajte svoju skriptu pushbullet-listener.py tako da ima ispravan API i centralni host nadzorne ploče
# vaš API ključ s PushBullet.com API_KEY = "o. XXXYYYZZZ111222333444555666"
# nadzorna ploča centralnog servera host dashboardServer = 'MY-SERVER-HERE.com'
Korak 11: Dodajte skriptu za početak pri pokretanju nadzorne ploče i ponovo pokrenite svoju nadzornu ploču 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
Korak 12: OPCIONALNO: Kreiranje vlastitih Nintendo slika za iscrtavanje na ekranu
Otpremite vlastitu datoteku 128x128 na sljedeću URL adresu:
www.digole.com/tools/PicturetoC_Hex_converter.php
Odaberite datoteku slike za učitavanje, dodajte željenu veličinu na ekranu (širina/visina)
Odaberite "256 boja za OLED/LCD u boji (1 bajt/piksel)" u padajućem izborniku "Koristi se za"
Dobijte šesterokutni izlaz.
Dodajte heksadecimalni izlaz u datoteku display/ build/ header (.h), a ostale koristite kao vodiče za sintaksu.
Uključite novu datoteku u datoteku digole.c #include myimage.h
Uključite novu poveznicu naredbene linije u datoteku slike u. Napomena: naredba ispod kaže da nacrtajte svoju sliku na poziciji 10 piksela preko 10 piksela prema dolje. Možete ga promijeniti u različite X, Y koordinate, a također možete promijeniti vrijednosti 128, 128 na bilo koju veličinu vaše nove slike.
} else if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariableHere je definirano u vašoj (.h) datoteci}
Sada ponovo napravite (zanemarite greške) u nastavku kako bi se vaša nova slika iscrtala sa sljedećom naredbom.
$./digole moja slika
Ponovna izgradnja [Uključeno] Digole upravljačkog programa za vaše izborne izmjene
$ cd prikaz/izrada
$ gcc digole.c
$ mv a.out../../digole
$ chmod +x../../digole
Korak 13: Završeno
Gotovi ste!
Preporučuje se:
Pošaljite ThingSpeak obavještenja Mi Bandu 4: 6 koraka
Slanje ThingSpeak obavijesti na Mi Band 4: Otkad sam kupio svoj Xiaomi Mi Band 4, razmišljao sam o mogućnosti praćenja nekih podataka sa moje meteorološke stanice koji su dostupni na ThingSpeaku putem mog Mi Band 4. Međutim, nakon nekog istraživanja, otkrio sam da mogućnosti Mi Band 4 ar
Mapifikator - Mapiranje + Sistem obavještenja: 9 koraka
Mapifikator - Mapiranje + Sistem obavještenja: Noćna vožnja je prilično zabavna. Ali često se ispostavi da je to noćna mora, u obliku životinja koje prelaze cestu (posebno onih mačaka i pasa lutalica, koje čekaju da se približite njima kako bi mogle prijeći !!). Pa sam mislio da napravim tako
Lampica za obavještenja Kodak Pi iz 1930 -ih: 6 koraka (sa slikama)
Kodak Pi lampica za obavijesti iz 1930 -ih: Ovo je Kodak Table Viewer iz 1930 -ih godina koji sam prilagodio za prikaz obavještenja i upozorenja pomoću niza svijetlih boja. Izvor svjetlosti je Unicorn pHAT, programabilna matrica svijetlih LED dioda, a to kontrolira Raspberry Pi Zero W, koji
Čudesna obavještenja - Ironman Edition: 5 koraka (sa slikama)
Čudesna obavještenja - Ironman Edition: " Excelsior " - Stan Lee.Marvellous Notifications! Ovo uputstvo je posvećeno pokojnom ocu mojih omiljenih superheroja. Neko vrijeme sam imao ovu statuu Iron-man-a na polici. To je igračka sumnjivog porijekla koja mi je dana nakon svađe
Senzor obavještenja mašine za pranje rublja: 6 koraka (sa slikama)
Senzor obavještenja mašine za pranje rublja: Ovaj senzor mašine za pranje rublja nalazi se na vrhu moje mašine za pranje rublja i koristi mjerač ubrzanja za otkrivanje vibracija iz mašine. Kad osjeti da je ciklus pranja završen, šalje mi obavještenje na telefon. Napravio sam ovo jer je sama mašina