Innehållsförteckning:

RÅNA. Telefonmeddelandeassistent: 13 steg
RÅNA. Telefonmeddelandeassistent: 13 steg

Video: RÅNA. Telefonmeddelandeassistent: 13 steg

Video: RÅNA. Telefonmeddelandeassistent: 13 steg
Video: Kärleksproblem på förskolan: "Vi kan väl hålla handen?" - Nyhetsmorgon (TV4) 2024, November
Anonim
RÅNA. Telefonmeddelandeassistent
RÅNA. Telefonmeddelandeassistent

Av khinds10www.kevinhinds.com Följ mer av författaren:

Oförstörbar barn soffa!
Oförstörbar barn soffa!
Oförstörbar barn soffa!
Oförstörbar barn soffa!
Snabba och enkla väggmonterade datorer
Snabba och enkla väggmonterade datorer
Snabba och enkla väggmonterade datorer
Snabba och enkla väggmonterade datorer
Skärm för digital eldstad
Skärm för digital eldstad
Skärm för digital eldstad
Skärm för digital eldstad

Om: 3D -utskrift och design av RaspberryPI -projekt sedan några år tillbaka Mer om khinds10 »

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

Steg 1: Blinkande RaspberriPi -hårddisk / Installera nödvändig programvara (med Ubuntu Linux)

Skapa din nya hårddisk för DashboardPI

Sätt i microSD till din dator via USB -adapter och skapa diskavbildningen med kommandot dd

Leta reda på ditt isatta microSD -kort via kommandot df -h, avmontera det och skapa diskavbildningen med kommandot disk copy dd

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

$ umount /dev /sdb1

Varning: se till att kommandot är helt korrekt, du kan skada andra diskar med det här kommandot

if = plats för RASPBIAN JESSIE LITE bildfil av = plats för ditt microSD -kort

$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of =/dev/sdb (Obs: i det här fallet är det/dev/sdb,/dev/sdb1 en befintlig fabrikspartition på microSD)

Konfigurera din RaspberriPi

Sätt i ditt nya microSD -kort i raspberrypi och slå på det med en bildskärm ansluten till HDMI -porten

Logga in

användare: pi pass: hallon

Ändra ditt kontolösenord för säkerhets skull

sudo passwd pi

Aktivera RaspberriPi Advanced Options

sudo raspi-config

Välja:

1 Expandera filsystemet

9 Avancerade alternativ

A2 -värdnamn ändra det till "RobbieAssistant"

A4 SSH Aktivera SSH -server

A7 I2C Aktivera i2c -gränssnitt

Aktivera engelska/amerikanska tangentbordet

sudo nano/etc/default/keyboard

Ändra följande rad: XKBLAYOUT = "oss"

Starta om PI för ändringar av tangentbordslayout / storlek på filsystem för att träda i kraft

$ sudo avstängning -r nu

Anslut automatiskt till din WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Lägg till följande rader så att din raspberrypi automatiskt ansluter till ditt hem -WiFi (om ditt trådlösa nätverk heter "linksys" till exempel i följande exempel)

network = {ssid = "linksys" psk = "WIRELESS PASSWORD HERE"} Starta om PI för att ansluta till WiFi -nätverk

$ sudo avstängning -r nu

Nu när din PI äntligen finns på det lokala nätverket kan du fjärrlogga till den via SSH. Men först måste du få den IP -adress som den har för närvarande.

$ ifconfig Leta efter "inet addr: 192.168. XXX. XXX" i följande kommandos utdata för din PI: s IP -adress

Gå till en annan maskin och logga in på din raspberrypi via ssh

$ ssh [email protected]. XXX. XXX

Börja installera nödvändiga paket

$ sudo apt-get uppdatering

$ sudo apt-get uppgradering

$ 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-förfrågningar python3-setuptools python3-urllib python3-urllib3 python3-förfrågningar vim git python-smbus i2c-verktyg 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 installationsförfrågningar

Uppdatera lokala tidszoninställningar

$ sudo dpkg-omkonfigurera tzdata

välj din tidszon med gränssnittet

Konfigurera det enkla katalog l -kommandot [valfritt]

vi ~/.bashrc

lägg till följande rad:

alias l = 'ls -lh'

källa ~/.bashrc

Fixa VIM -standardsyntaxmarkering [valfritt]

sudo vi/etc/vim/vimrc

kommentera följande rad:

syntax på

skapa loggmappen för programmet för att köra mkdir/home/pi/RobbieAssistant/logs

chmod 777/home/pi/RobbieAssistant/logs

Konfigurera programmet så att det körs korrekt i settings.py-konfigurationsfilen Hitta filinställningarna-shadow.py i / inkluderar / mappen i projektet och kopiera det till settings.py och anpassa till dina nuvarande inställningar

# forecast.io API -nyckel för lokal väderinformation

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

weatherAPIKey = 'DIN API -nyckel för prognos. IO'

# valfritt för att köra fjärrkontrollen för temp/fuktighet

dashboardServer = 'mydevicelogger.com'

# sök på google för att få latitud/longitud för din hemplats

latitud = 41.4552578

longitud = -72,1665444

Steg 2: Tillbehör som behövs

Tillbehör som behövs
Tillbehör som behövs
Tillbehör som behövs
Tillbehör som behövs
Tillbehör som behövs
Tillbehör som behövs
Tillbehör som behövs
Tillbehör som behövs

RaspberriPi Zero

DHT11 Humidistat

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

Steg 3: Bygg och anslut enheten

Bygg och anslut enheten
Bygg och anslut enheten

Förbered Digole Display för i2C

På baksidan av Digole -skärmen löd du bygeln för att tilldela displayen att använda i2c -protokollet

Steg 4: Skriv ut omslaget, lådan och baksidan med en 3d -skrivare

Skriv ut omslaget, lådan och bakpanelen med en 3d -skrivare
Skriv ut omslaget, lådan och bakpanelen med en 3d -skrivare

Med följande X STL -filer i mappen 3DPrint, R. O. B. Robot, LED -sele och displayfäste

buttonContainer-base.stl

knappContainer-lock.stl

displaymount-final.stl

led-sele-final.stl

MiniNintendoROB.zip

Robotutskrift av: Mini Nintendo R. O. B. - av RabbitEngineering

www.thingiverse.com/thing:1494964

Jag använde byråkrati för att göra ögonen röda med den svarta visirbakgrunden

Steg 5: Komponentledningar

Komponentledningar
Komponentledningar

Digole Display

GND -> GND

DATA -> SDA

CLK -> SCL

VCC -> 3V

DHT11 Humidistat

VCC -> 5V

GND -> GND

DATA -> GPIO 25

BLÅT motstånd

VCC -> GPIO 17 (med 270ohm motstånd)

GND -> GND

Gult motstånd

VCC -> GPIO 13 (med 270ohm motstånd)

GND -> GND

GRÖNT motstånd

VCC -> GPIO 6 (med 270ohm motstånd)

GND -> GND

RÖDT motstånd

VCC -> GPIO 12 (med 270ohm motstånd)

GND -> GND

RÖD tillfällig tryckknapp

VCC -> GPIO 16 (med 270ohm motstånd)

GND -> GND

BLÅ tillfällig tryckknapp

VCC -> GPIO 26 (med 270ohm motstånd)

GND -> GND

Steg 6: Anslut komponenter till roboten

Anslut komponenter till roboten
Anslut komponenter till roboten
Anslut komponenter till roboten
Anslut komponenter till roboten
Anslut komponenter till roboten
Anslut komponenter till roboten

När du har skrivit ut skärmhållaren ansluter du den till digolskärmen

Anslut skärmen till RPi med tillräckligt med kablar för att limma RPi på baksidan av roboten

Skriv ut kontrollenheten och koppla in knapparna med tillräckligt med kablar för att komma till baksidan av roboten

Slutför Kabeldragning och montering av roboten med RPi ansluten till baksidan och DHT11 limmad på botten

Steg 7: Kontrollera I2C -konfiguration

Starta din RaspberryPi och se till att I2C -bussen känner igen alla dina anslutna 7/14 segmentdisplayer. [varje display får en unik adress som beskrivs ovan genom hur du lödar varje bildskärms hoppare i olika kombinationer]

Om du har displayen med bygel lödd korrekt bör du ha följande utdata för kommandot 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: -- -- -- -- -- -- -- --

Steg 8: DHT11 -installation

$ cd ~

$ git -klon

$ cd Adafruit_Python_DHT/

$ sudo python setup.py installera

$ sudo python ez_setup.py

$ cd exempel/

$ vi simplestest.py Ändra följande rad:

sensor = Adafruit_DHT. DHT11

Kommentera raden

pin = 'P8_11'

Avmarkera raden och ändra PIN -numret till 16

stift = 25

Kör testet

python simplestest.py

Du bör se en metrisk avläsning av Temp och fuktighet visas på kommandoraden.

Steg 9: Klonförvar

$ cd ~ $ git klon

Steg 10: Lägg till Pushbullet API (med Python 3.5)

Med hjälp av pushbullet -appen för din telefon kan du registrera dig för att få en API -nyckel för att få ett enkelt python -skript att kunna fånga och skicka data -hubbaviseringar och indikatorflaggor

Installera Python 3.5 för asyncio -funktionalitet

$ sudo apt-get uppdatering 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 Om ett av paketen inte kan hittas, prova ett nyare versionsnummer (t.ex. libdb5.4-dev istället för 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 gör 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 Installera python3 -beroende

$ sudo apt-get install python3-setuptools sudo apt-get install python3-pip sudo pip3 install asyncpushbullet sudo pip3 installationsförfrågningar Valfritt sätt Ladda ner python-förvaret direkt för att få pythonberoende utan att pip installerar 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ök pushbullet-inställningssidan i ditt konto för att skapa en API -nyckel för att använda

Konfigurera ditt pushbullet-listener.py-skript för att ha rätt API och centralvärd för instrumentpanelen

# din API -nyckel från PushBullet.com API_KEY = "o. XXXYYYZZZ111222333444555666"

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

Steg 11: Lägg till skriptet för att starta vid Dashboard Boot och starta om 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

Steg 12: VALFRITT: Skapa egna Nintendo -bilder som ska återges på displayen

Ladda upp din egen 128x128 -fil till följande URL:

www.digole.com/tools/PicturetoC_Hex_converter.php

Välj din bildfil att ladda upp, lägg till vilken storlek du vill att den ska ha på skärmen (bredd/höjd)

Välj "256 färger för färg OLED/LCD (1 byte/pixel)" i rullgardinsmenyn "Används för"

Skaffa hex -utgången.

Lägg till hex -utdata till en display/ build/ header (.h) -fil, använd de andra som vägledningar för syntax.

Inkludera den nya filen i digole.c -filen #include myimage.h

Inkludera en ny kommandoradshake till din bildfil i. Obs! Kommandot nedan säger att du ritar din bild på position 10 pixlar över 10 pixlar nedåt. Du kan ändra den till olika X-, Y -koordinater, du kan också ändra värdena 128, 128 till vilken storlek din nya bild faktiskt är.

} annars if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariableHere definieras i din (.h) -fil}

Bygg nu om (ignorera felen) nedan så att din nya bild återges med följande kommando.

$./digole myimage

Re-Building [Inkluderat] Digole Display Driver för dina valfria ändringar

$ cd display/build

$ gcc digole.c

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

$ chmod +x../../digole

Steg 13: Avslutad

Du är klar!

Rekommenderad: