Sadržaj:

R.O.B. Pomoćnik za obavještenja telefona: 13 koraka
R.O.B. Pomoćnik za obavještenja telefona: 13 koraka

Video: R.O.B. Pomoćnik za obavještenja telefona: 13 koraka

Video: R.O.B. Pomoćnik za obavještenja telefona: 13 koraka
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Novembar
Anonim
R. O. B. Pomoćnik za obavještenja telefona
R. O. B. Pomoćnik za obavještenja telefona

Autor khinds10www.kevinhinds.comSlijedi Još autora:

Neuništiv dječji kauč!
Neuništiv dječji kauč!
Neuništiv dječji kauč!
Neuništiv dječji kauč!
Brzi i jednostavni računari za montiranje na zid
Brzi i jednostavni računari za montiranje na zid
Brzi i jednostavni računari za montiranje na zid
Brzi i jednostavni računari za montiranje na zid
Digitalni ekran za kamin
Digitalni ekran za kamin
Digitalni ekran za kamin
Digitalni ekran za kamin

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

Potrebne zalihe
Potrebne zalihe
Potrebne zalihe
Potrebne zalihe
Potrebne zalihe
Potrebne zalihe
Potrebne zalihe
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

Napravite i ožičite uređaj
Napravite 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

Pomoću 3D štampača odštampajte omote, kutije i zadnje ploče
Pomoću 3D štampača odštampajte omote, kutije 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

Komponentno ožičenje
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

Spojite komponente na robota
Spojite komponente na robota
Spojite komponente na robota
Spojite komponente na robota
Spojite komponente na robota
Spojite komponente na robota

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: