Indholdsfortegnelse:

RØVE. Telefonmeddelelsesassistent: 13 trin
RØVE. Telefonmeddelelsesassistent: 13 trin

Video: RØVE. Telefonmeddelelsesassistent: 13 trin

Video: RØVE. Telefonmeddelelsesassistent: 13 trin
Video: Возведение перегородок санузла из блоков. Все этапы. #4 2024, November
Anonim
RØVE. Telefonmeddelelsesassistent
RØVE. Telefonmeddelelsesassistent

Af khinds10www.kevinhinds.com Følg mere af forfatteren:

Uforgængelig børnesofa!
Uforgængelig børnesofa!
Uforgængelig børnesofa!
Uforgængelig børnesofa!
Hurtig og nem vægmonteret pc
Hurtig og nem vægmonteret pc
Hurtig og nem vægmonteret pc
Hurtig og nem vægmonteret pc
Digital pejs skærm
Digital pejs skærm
Digital pejs skærm
Digital pejs skærm

Om: 3D -udskrivning og design af RaspberryPI -projekter i et par år nu Mere om khinds10 »

Desktop Phone Notification Assistant Featuring (R. O. B.) Robotic Operating Buddy

Trin 1: Blinkende RaspberriPi -harddisk / Installer påkrævet software (ved hjælp af Ubuntu Linux)

Opret din nye harddisk til DashboardPI

Indsæt microSD til din computer via USB -adapter, og opret diskbilledet ved hjælp af kommandoen dd

Find dit indsatte microSD -kort via kommandoen df -h, afmonter det, og opret diskbilledet med kommandoen disk copy dd

$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/media/XXX/1234-5678

$ umount /dev /sdb1

Forsigtig: sørg for, at kommandoen er fuldstændig nøjagtig, du kan beskadige andre diske med denne kommando

hvis = placering af RASPBIAN JESSIE LITE billedfil af = placering af dit microSD -kort

$ sudo dd bs = 4M hvis =/path/to/raspbian-jessie-lite.img af =/dev/sdb (Bemærk: i dette tilfælde er det/dev/sdb,/dev/sdb1 var en eksisterende fabrikspartition på microSD)

Opsætning af din RaspberriPi

Indsæt dit nye microSD -kort i raspberrypi, og tænd det med en skærm tilsluttet HDMI -porten

Log på

bruger: pi pass: hindbær

Skift din kontos adgangskode for sikkerheden

sudo passwd pi

Aktiver RaspberriPi Avancerede indstillinger

sudo raspi-config

Vælge:

1 Udvid filsystemet

9 Avancerede indstillinger

A2 -værtsnavn ændre det til "RobbieAssistant"

A4 SSH Aktiver SSH -server

A7 I2C Aktiver i2c -interface

Aktiver engelsk/amerikansk tastatur

sudo nano/etc/default/keyboard

Skift følgende linje: XKBLAYOUT = "os"

Genstart PI for tastaturlayoutændringer / ændring af filsystemets størrelse for at træde i kraft

$ sudo shutdown -r nu

Tilslut automatisk til din WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Tilføj følgende linjer for at få din hindbær til automatisk at oprette forbindelse til dit WiFi i hjemmet (hvis dit trådløse netværk f.eks. Hedder "linksys" i følgende eksempel)

network = {ssid = "linksys" psk = "WIRELESS PASSWORD HERE"} Genstart PI for at oprette forbindelse til WiFi -netværk

$ sudo shutdown -r nu

Nu hvor din PI endelig er på det lokale netværk, kan du eksternt logge ind på den via SSH. Men først skal du få den IP -adresse, den har i øjeblikket.

$ ifconfig Søg efter "inet addr: 192.168. XXX. XXX" i følgende kommandos output til din PI's IP -adresse

Gå til en anden maskine og log ind på din raspberrypi via ssh

$ ssh [email protected]. XXX. XXX

Start installation af nødvendige pakker

$ sudo apt-get opdatering

$ sudo apt-get opgradering

$ 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 libreadline6-dev python3-pip python3-forespørgsler python3-setuptools python3-urllib python3-urllib3 python3-anmodninger vim git python-smbus i2c-værktøjer python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip vim git python-bus python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev vim git python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip python -gpiozero python-psutil xz-utils

$ sudo pip installationsanmodninger

Opdater lokale tidszoneindstillinger

$ sudo dpkg-omkonfigurer tzdata

vælg din tidszone ved hjælp af grænsefladen

Opsæt kommandoen simple bibliotek l [valgfrit]

vi ~/.bashrc

tilføj følgende linje:

alias l = 'ls -lh'

kilde ~/.bashrc

Fix VIM standardsyntaksfremhævelse [valgfrit]

sudo vi/etc/vim/vimrc

kommenter følgende linje:

syntaks på

lav logfilen til applikationen til at køre mkdir/home/pi/RobbieAssistant/logs

chmod 777/home/pi/RobbieAssistant/logs

Konfigurer applikationen til at køre korrekt i settings.py-konfigurationsfilen Find filindstillingerne-shadow.py i / inkluderer / mappen i projektet, og kopier den til settings.py og juster til dine aktuelle indstillinger

# forecast.io API -nøgle til lokale vejroplysninger

weatherAPIURL = 'https://api.forecast.io/forecast/'

weatherAPIKey = 'DIN API -NØGLE FOR FORECAST. IO'

# valgfri til at køre den eksterne temp/fugtighedslogger

dashboardServer = 'mydevicelogger.com'

# søg på google for at få Latitude/Longitude for din hjemmeposition

breddegrad = 41.4552578

længdegrad = -72,1665444

Trin 2: Nødvendige forbrugsvarer

Nødvendige forsyninger
Nødvendige forsyninger
Nødvendige forsyninger
Nødvendige forsyninger
Nødvendige forsyninger
Nødvendige forsyninger
Nødvendige forsyninger
Nødvendige forsyninger

RaspberriPi Zero

DHT11 Humidistat

LED -lys (x4) Grøn / gul / blå / rød 2,6 Digole -display

Trin 3: Byg og tilslut enheden

Byg og forbind enheden
Byg og forbind enheden

Forbered Digole Display til i2C

På bagsiden af Digole -skærmen loddes jumperen for at tildele skærmen til at bruge i2c -protokollen

Trin 4: Brug en 3d -printer til at udskrive dækslet, æsken og bagpanelerne

Brug en 3d -printer til at udskrive dækslet, æsken og bagpanelerne
Brug en 3d -printer til at udskrive dækslet, æsken og bagpanelerne

Brug af følgende X STL -filer i 3DPrint -mappen, R. O. B. Robot, LED -sele og displaymontering

buttonContainer-base.stl

knapContainer-låg.stl

displaymount-final.stl

led-sele-final.stl

MiniNintendoROB.zip

Robotprint af: Mini Nintendo R. O. B. - af RabbitEngineering

www.thingiverse.com/thing:1494964

Jeg brugte bureaukrati til at gøre øjnene røde med den sorte visirbaggrund

Trin 5: Komponentledninger

Komponentledninger
Komponentledninger

Digole Display

GND -> GND

DATA -> SDA

CLK -> SCL

VCC -> 3V

DHT11 Humidistat

VCC -> 5V

GND -> GND

DATA -> GPIO 25

BLÅ modstand

VCC -> GPIO 17 (med 270ohm modstand)

GND -> GND

GUL modstand

VCC -> GPIO 13 (med 270ohm modstand)

GND -> GND

GRØN Modstand

VCC -> GPIO 6 (med 270ohm modstand)

GND -> GND

RØD modstand

VCC -> GPIO 12 (med 270ohm modstand)

GND -> GND

RØD momentan trykknap

VCC -> GPIO 16 (med 270ohm modstand)

GND -> GND

BLÅ øjeblikkelig trykknap

VCC -> GPIO 26 (med 270ohm modstand)

GND -> GND

Trin 6: Tilslut komponenter til robotten

Tilslut komponenter til robotten
Tilslut komponenter til robotten
Tilslut komponenter til robotten
Tilslut komponenter til robotten
Tilslut komponenter til robotten
Tilslut komponenter til robotten

Når du har udskrevet skærmholderen, skal du slutte den til digoleskærmen

Tilslut skærmen til RPi'en med tilstrækkelige ledninger til at lime RPi'en bag på robotten

Udskriv controlleren, og led knapperne med tilstrækkelige ledninger til at komme bag på robotten

Afslut ledninger og samling af robotten med RPi forbundet til bagsiden og DHT11 limet til bunden

Trin 7: Kontroller I2C -konfiguration

Start din RaspberryPi, og sørg for, at I2C -bussen genkender alle dine tilsluttede 7/14 segmentdisplays. [hvert display får en unik adresse beskrevet ovenfor ved, hvordan du lodder hvert displays jumpere i forskellige kombinationer]

Hvis du har displayet med jumper loddet korrekt, skal du have følgende output til i2cdetect -kommandoen:

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: -- -- -- -- -- -- -- --

Trin 8: DHT11 Installer

$ cd ~

$ git -klon

$ cd Adafruit_Python_DHT/

$ sudo python setup.py installation

$ sudo python ez_setup.py

$ cd eksempler/

$ vi simpletest.py Skift følgende linje:

sensor = Adafruit_DHT. DHT11

Kommenter linjen

pin = 'P8_11'

Fjern kommentaren fra linjen, og skift pinkoden til 16

pin = 25

Kør testen

python simplestest.py

Du bør se en metrisk aflæsning af Temp og fugtighed vist på kommandolinjen.

Trin 9: Klonlager

$ cd ~ $ git klon

Trin 10: Tilføj Pushbullet API (ved hjælp af Python 3.5)

Ved hjælp af pushbullet -appen til din telefon kan du tilmelde dig for at modtage en API -nøgle for at få et simpelt python -script til at kunne fange og skubbe datahub -meddelelser og indikatorflag

Installer Python 3.5 for asyncio -funktionalitet

$ sudo apt-get opdatering 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 Hvis en af pakkerne ikke kan findes, kan du prøve et nyere versionsnummer (f.eks. libdb5.4-dev i stedet for 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 lav sudo make install 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 Installer python3 -afhængigheder

$ sudo apt-get install python3-setuptools sudo apt-get install python3-pip sudo pip3 install asyncpushbullet sudo pip3 installationsanmodninger Valgfri måde Download python-depotet direkte for at få python-afhængigheder uden brug af pip installere det

git-klon https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py install Besøg pushbullet-indstillingssiden i din konto for at generere en API -nøgle til brug af

Konfigurer dit pushbullet-listener.py-script til at have den korrekte API og den centrale vært på dashboardet

# din API -nøgle fra PushBullet.com API_KEY = "o. XXXYYYZZZ111222333444555666"

# dashboard central server host dashboardServer = 'MY-SERVER-HERE.com'

Trin 11: Tilføj scriptet til Start ved Dashboard Boot og genstart din Dashboard 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

Trin 12: VALGFRIT: Oprettelse af dine egne Nintendo -billeder til gengivelse på displayet

Upload din egen 128x128 -fil til følgende URL:

www.digole.com/tools/PicturetoC_Hex_converter.php

Vælg din billedfil, der skal uploades, tilføj den størrelse, du vil have den på skærmen (bredde/højde)

Vælg "256 farver til farve OLED/LCD (1 byte/pixel)" i rullemenuen "Anvendes til"

Få hex -output.

Tilføj hex -output til en display/ build/ header (.h) -fil, brug de andre som vejledninger til syntaks.

Medtag den nye fil i digole.c -filen #include myimage.h

Inkluder en ny kommandolinjekrog til din billedfil i. Bemærk: Kommandoen herunder siger tegne dit billede på position 10 pixels over 10 pixels ned. Du kan ændre det til forskellige X-, Y -koordinater, du kan også ændre værdierne 128, 128 til den størrelse, dit nye billede faktisk er.

} ellers hvis (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128 og myimageVariableHere, 0); // myimageVariableHere er defineret i din (.h) fil}

Genopbyg nu (ignorer fejlene) herunder for at få dit nye billede gengivet med følgende kommando.

$./digole myimage

Genopbygning [inkluderet] Digole Display Driver til dine valgfrie ændringer

$ cd display/build

$ gcc digole.c

$ mv a.out../../digole

$ chmod +x../../digole

Trin 13: Færdig

Du er færdig!

Anbefalede: