Talaan ng mga Nilalaman:

Ang R.O.B. Katulong sa Pag-abiso sa Telepono: 13 Mga Hakbang
Ang R.O.B. Katulong sa Pag-abiso sa Telepono: 13 Mga Hakbang

Video: Ang R.O.B. Katulong sa Pag-abiso sa Telepono: 13 Mga Hakbang

Video: Ang R.O.B. Katulong sa Pag-abiso sa Telepono: 13 Mga Hakbang
Video: Kapuso Mo, Jessica Soho: 4-anyos na babae, nagdadalaga na? 2024, Nobyembre
Anonim
Ang R. O. B. Katulong sa Pag-abiso sa Telepono
Ang R. O. B. Katulong sa Pag-abiso sa Telepono

Sa pamamagitan ng khinds10www.kevinhinds.com Sundin ang Higit Pa ng may-akda:

Hindi masisira na Kids Couch!
Hindi masisira na Kids Couch!
Hindi masisira na Kids Couch!
Hindi masisira na Kids Couch!
Mabilis at Madaling Mga Wall Mount PC
Mabilis at Madaling Mga Wall Mount PC
Mabilis at Madaling Mga Wall Mount PC
Mabilis at Madaling Mga Wall Mount PC
Screen ng Digital Fireplace
Screen ng Digital Fireplace
Screen ng Digital Fireplace
Screen ng Digital Fireplace

Tungkol sa: 3D na pag-print at pagdidisenyo ng mga proyekto ng RaspberryPI sa loob ng ilang taon ngayon Higit Pa Tungkol sa khinds10 »

Katulong sa Abiso sa Desktop ng Telepono na Nagtatampok (R. O. B.) Robotic Operating Buddy

Hakbang 1: Flashing RaspberriPi Hard Disk / I-install ang Kinakailangan na Software (Paggamit ng Ubuntu Linux)

Lumikha ng iyong bagong hard disk para sa DashboardPI

Ipasok ang microSD sa iyong computer sa pamamagitan ng USB adapter at likhain ang imahe ng disk gamit ang dd command

Hanapin ang iyong ipinasok na microSD card sa pamamagitan ng utos na df -h, i-unmount ito at likhain ang imahe ng disk gamit ang disk copy dd command

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

$ umount / dev / sdb1

Pag-iingat: siguraduhin na ang utos ay ganap na tumpak, maaari mong mapinsala ang iba pang mga disk sa utos na ito

kung = lokasyon ng RASPBIAN JESSIE LITE file ng imahe ng = lokasyon ng iyong microSD card

$ sudo dd bs = 4M kung = / path / to / raspbian-jessie-lite.img ng = / dev / sdb (tala: sa kasong ito, ito ay / dev / sdb, / dev / sdb1 ay isang mayroon nang partisyon ng pabrika sa microSD)

Pagse-set up ng iyong RaspberriPi

Ipasok ang iyong bagong microSD card sa raspberrypi at paganahin ito gamit ang isang monitor na konektado sa HDMI port

Mag log in

gumagamit: pi pass: raspberry

Baguhin ang password ng iyong account para sa seguridad

sudo passwd pi

Paganahin ang Mga Advanced na Pagpipilian sa RaspberriPi

sudo raspi-config

Pumili:

1 Palawakin ang System ng File

9 Mga advanced na pagpipilian

Palitan ito ng A2 Hostname sa "RobbieAssistant"

A4 SSH Paganahin ang SSH Server

A7 I2C Paganahin ang i2c interface

Paganahin ang English / US Keyboard

sudo nano / etc / default / keyboard

Baguhin ang sumusunod na linya: XKBLAYOUT = "us"

I-reboot ang PI para sa mga pagbabago sa layout ng Keyboard / pagbabago ng laki ng file system upang magkabisa

$ sudo shutdown -r ngayon

Awtomatikong Kumonekta sa iyong WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Idagdag ang mga sumusunod na linya upang awtomatikong kumonekta ang iyong raspberrypi sa iyong WiFi sa bahay (kung ang iyong wireless network ay pinangalanang "linksys" halimbawa, sa sumusunod na halimbawa)

network = {ssid = "linksys" psk = "WIRELESS PASSWORD DITO"} I-reboot ang PI upang kumonekta sa WiFi network

$ sudo shutdown -r ngayon

Ngayon na ang iyong PI ay sa wakas ay nasa lokal na network, maaari kang mag-login nang malayuan dito sa pamamagitan ng SSH. Ngunit kailangan mo munang makuha ang IP address na kasalukuyang mayroon ito.

$ ifconfig Hanapin ang "inet addr: 192.168. XXX. XXX" sa output ng sumusunod na command para sa IP Address ng iyong PI

Pumunta sa isa pang makina at mag-login sa iyong raspberrypi sa pamamagitan ng ssh

$ ssh [email protected]. XXX. XXX

Simulang I-install ang kinakailangang mga pakete

$ sudo apt-get update

$ sudo apt-get upgrade

$ 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-hiling python3-setuptools python3-urllib python3-urllib3 python3-mga kahilingan vim git python-smbus i2c-tool python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip vim git python-smbus i2c-tool python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev vim git python-smbus i2c-tool python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip python -gpiozero python-psutil xz-utils

$ sudo pip mga kahilingan sa pag-install

I-update ang mga setting ng lokal na timezone

$ sudo dpkg-reconfigure tzdata

piliin ang iyong timezone gamit ang interface

I-setup ang simpleng direktoryo l utos [opsyonal]

vi ~ /.bashrc

idagdag ang sumusunod na linya:

alyas l = 'ls -lh'

pinagmulan ~ /.bashrc

Ayusin ang VIM default na syntax na pagha-highlight ng [opsyonal]

sudo vi / etc / vim / vimrc

i-komento ang sumusunod na linya:

syntax sa

gawin ang mga folder ng mga tala para sa application na patakbuhin ang mkdir / home / pi / RobbieAssistant / logs

chmod 777 / home / pi / RobbieAssistant / logs

I-configure ang Application upang tumakbo nang tama sa setting.py config file Hanapin ang mga setting ng file-shadow.py sa / kasama / folder ng proyekto at kopyahin ito sa setting.py at ayusin sa iyong kasalukuyang mga setting

# forecast.io API key para sa lokal na impormasyon sa panahon

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

weatherAPIKey = 'IYONG API SUSI SA PAGTATAYA. IO'

# opsyonal para sa pagpapatakbo ng remote temp / halumigmig logger

dashboardServer = 'mydevicelogger.com'

# maghanap sa google upang makuha ang Latitude / Longitude para sa lokasyon ng iyong tahanan

latitude = 41.4552578

longitude = -72.1665444

Hakbang 2: Kailangan ng Mga Kailangan

Kailangan ng mga Pantustos
Kailangan ng mga Pantustos
Kailangan ng mga Pantustos
Kailangan ng mga Pantustos
Kailangan ng mga Pantustos
Kailangan ng mga Pantustos
Kailangan ng mga Pantustos
Kailangan ng mga Pantustos

RaspberriPi Zero

DHT11 Humidistat

Mga LED Light (x4) Green / Yellow / Blue / Red2.6 Digole Display

Hakbang 3: Buuin at Wire ang Device

Buuin at Wire ang Device
Buuin at Wire ang Device

Ihanda ang Digole Display para sa i2C

Sa likuran ng Digole Display, solder ang jumper upang italaga ang display upang magamit ang i2c protocol

Hakbang 4: Gamit ang isang 3d Printer, I-print ang Cover, Box at Back Panel

Gamit ang isang 3d Printer, I-print ang Cover, Box at Back Panels
Gamit ang isang 3d Printer, I-print ang Cover, Box at Back Panels

Gamit ang mga sumusunod na X STL file sa folder na 3DPrint, R. O. B. Robot, LED Harness at Display Mount

buttonContainer-base.stl

buttonContainer-lid.stl

displaymount-final.stl

led-harness-final.stl

MiniNflixROB.zip

Robot Print ni: Mini Nintendo R. O. B. - sa pamamagitan ng RabbitEngineering

www.thingiverse.com/thing:1494964

Gumamit ako ng red tape upang mapula ang mga mata na may background na itim na visor

Hakbang 5: Mga Kable ng Component

Mga Kable ng Component
Mga Kable ng Component

Digole Display

GND -> GND

DATA -> SDA

CLK -> SCL

VCC -> 3V

DHT11 Humidistat

VCC -> 5V

GND -> GND

DATA -> GPIO 25

BLUE Resistor

VCC -> GPIO 17 (na may 270ohm resistor)

GND -> GND

YELLOW Resistor

VCC -> GPIO 13 (na may 270ohm resistor)

GND -> GND

GREEN Resistor

VCC -> GPIO 6 (na may 270ohm resistor)

GND -> GND

PULANG Resistor

VCC -> GPIO 12 (na may 270ohm resistor)

GND -> GND

PULANG sandali na PULANG

VCC -> GPIO 16 (na may 270ohm resistor)

GND -> GND

BLUE Momentary Pushbutton

VCC -> GPIO 26 (na may 270ohm resistor)

GND -> GND

Hakbang 6: Ikonekta ang Mga Sangkap sa Robot

Ikonekta ang Mga Sangkap sa Robot
Ikonekta ang Mga Sangkap sa Robot
Ikonekta ang Mga Sangkap sa Robot
Ikonekta ang Mga Sangkap sa Robot
Ikonekta ang Mga Sangkap sa Robot
Ikonekta ang Mga Sangkap sa Robot

Pagkatapos mong mai-print ang may-ari ng screen, ikonekta ito sa display ng digole

Ikonekta ang Display sa RPi na may sapat na mga kable upang kola ang RPi sa likod ng robot

I-print ang controller at i-wire ang mga pindutan na may sapat na mga kable upang magawa ito sa likuran ng robot

Tapusin ang Mga Kable at i-assemble ang robot na may koneksyon sa RPi sa likuran at ang DHT11 na nakadikit sa ilalim

Hakbang 7: Suriin ang Pag-configure ng I2C

Simulan ang iyong RaspberryPi at tiyakin na kinikilala ng I2C bus ang lahat ng iyong mga nakakonektang 7/14 na ipinapakita na segment. [ang bawat display ay binibigyan ng isang natatanging address na inilarawan sa itaas ng kung paano mo hinihinang ang bawat jumper ng bawat display sa iba't ibang mga kumbinasyon]

Kung mayroon kang display na may jumper na solder na tama, dapat ay mayroon kang sumusunod na output para sa utos na 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: -- -- -- -- -- -- -- --

Hakbang 8: I-install ang DHT11

$ cd ~

$ git clone

$ cd Adafruit_Python_DHT /

$ sudo python setup.py install

$ sudo python ez_setup.py

Mga halimbawa ng $ cd /

$ vi simpletest.pyBaguhin ang sumusunod na linya:

sensor = Adafruit_DHT. DHT11

I-comment ang linya sa linya

pin = 'P8_11'

Alisan ng puna ang linya at baguhin ang numero ng pin sa 16

pin = 25

Patakbuhin ang pagsubok

python simpletest.py

Dapat mong makita ang isang panukat na pagbabasa ng Temp at Humidity na ipinakita sa linya ng utos.

Hakbang 9: Clone Repository

$ cd ~ $ git clone

Hakbang 10: Magdagdag ng Pushbullet API (gamit ang Python 3.5)

Gamit ang pushbullet app para sa iyong telepono, pag-signup upang matanggap ang isang key ng API upang magkaroon ng isang simpleng script ng sawa na makunan at maitulak ang mga notification sa data hub at mga flag ng tagapagpahiwatig

I-install ang Python 3.5 para sa pagpapaandar ng asyncio

$ sudo apt-get update sudo apt-get install build-important 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 Kung ang isa sa mga pakete ay hindi matagpuan, subukan ang isang mas bagong numero ng bersyon (hal. libdb5.4-dev sa halip na 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 gumawa ng sudo na mag-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 I-install ang mga dependant na python3

$ sudo apt-get install python3-setuptools sudo apt-get install python3-pip sudo pip3 install asyncpushbullet sudo pip3 install requests Opsyonal na paraan I-download nang direkta ang imbakan ng python upang makuha ang mga dependant na sawa nang walang paggamit ng pip na i-install ito

git clone https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py install Bisitahin ang pahina ng mga setting ng pushbullet sa iyong account upang makabuo ng isang API key upang magamit ang

I-configure ang iyong pushbullet-listener.py script upang magkaroon ng wastong host ng API at dashboard

# iyong API Key mula sa PushBullet.com API_KEY = "o. XXXYYYZZZ111222333444555666"

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

Hakbang 11: Idagdag ang Script upang Magsimula sa Dashboard Boot at I-restart ang Iyong 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

Hakbang 12: OPSYONAL: Lumilikha ng Iyong Sariling Mga larawang Nintendo upang I-render sa Display

Mag-upload ng iyong sariling 128x128 file sa sumusunod na URL:

www.digole.com/tools/PicturetoC_Hex_converter.php

Piliin ang iyong file ng imahe upang mai-upload, idagdag kung anong laki ang gusto mong maging sa screen (Lapad / Taas)

Piliin ang "256 Kulay para sa Kulay OLED / LCD (1 byte / pixel)" sa dropdown na "Ginamit para sa"

Kunin ang hex output.

Idagdag ang hex output sa isang display / build / header (.h) file, gamitin ang iba pa bilang mga gabay para sa syntax.

Isama ang bagong file sa digole.c file # isama ang myimage.h

Isama ang isang bagong utos ng linya ng utos sa iyong file ng imahe sa. Tandaan: sinasabi ng utos sa ibaba na iguhit ang iyong imahe sa posisyon na 10 pixel na higit sa 10 mga pixel pababa. Maaari mo itong palitan sa iba't ibang mga X, Y coordinate, maaari mo ring baguhin ang mga halagang 128, 128 sa kung anumang laki talaga ng iyong bagong imahe.

} iba pa kung (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariableHere ay tinukoy sa iyong (.h) file}

Muling itayo (huwag pansinin ang mga error) sa ibaba upang maibigay ang iyong bagong imahe sa sumusunod na utos.

$./digole myimage

Muling Pagbubuo ng [Kasamang] Digole Display Driver para sa iyong mga opsyonal na pagbabago

$ cd display / build

$ gcc digole.c

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

$ chmod + x../../digole

Hakbang 13: Tapos na

Tapos ka na!

Inirerekumendang: