Satura rādītājs:

R.O.B. Tālruņa paziņojumu palīgs: 13 soļi
R.O.B. Tālruņa paziņojumu palīgs: 13 soļi

Video: R.O.B. Tālruņa paziņojumu palīgs: 13 soļi

Video: R.O.B. Tālruņa paziņojumu palīgs: 13 soļi
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Novembris
Anonim
R. O. B. Tālruņa paziņojumu palīgs
R. O. B. Tālruņa paziņojumu palīgs

Seko vairāk autoram:

Neiznīcināms bērnu dīvāns!
Neiznīcināms bērnu dīvāns!
Neiznīcināms bērnu dīvāns!
Neiznīcināms bērnu dīvāns!
Ātri un vienkārši pie sienas piestiprināmi datori
Ātri un vienkārši pie sienas piestiprināmi datori
Ātri un vienkārši pie sienas piestiprināmi datori
Ātri un vienkārši pie sienas piestiprināmi datori
Digitālais kamīna ekrāns
Digitālais kamīna ekrāns
Digitālais kamīna ekrāns
Digitālais kamīna ekrāns

Par: 3D drukāšana un RaspberryPI projektu izstrāde jau dažus gadus Vairāk par khinds10 »

Galddatoru paziņojumu palīgs ar (R. O. B.) robotu darbības draugu

1. darbība: RaspberriPi cietā diska mirgošana / nepieciešamās programmatūras instalēšana (izmantojot Ubuntu Linux)

Izveidojiet jauno cieto disku DashboardPI

Ievietojiet microSD datorā, izmantojot USB adapteri, un izveidojiet diska attēlu, izmantojot komandu dd

Atrodiet ievietoto microSD karti, izmantojot komandu df -h, atvienojiet to un izveidojiet diska attēlu ar komandu disk copy dd

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

$ umount /dev /sdb1

Uzmanību: pārliecinieties, ka komanda ir pilnīgi precīza, ar šo komandu varat sabojāt citus diskus

if = RASPBIAN JESSIE LITE attēla faila atrašanās vieta = jūsu microSD kartes atrašanās vieta

$ sudo dd bs = 4M, ja =/ceļš/uz/raspbian-jessie-lite.img no =/dev/sdb (piezīme: šajā gadījumā tas ir/dev/sdb,/dev/sdb1 bija esošs rūpnīcas nodalījums microSD)

RaspberriPi iestatīšana

Ievietojiet jauno microSD karti avenes un ieslēdziet to, izmantojot monitoru, kas pievienots HDMI portam

Pieslēgties

lietotājs: pi pass: aveņu

Drošības nolūkos nomainiet sava konta paroli

sudo passwd pi

Iespējot RaspberriPi papildu opcijas

sudo raspi-config

Izvēlieties:

1 Izvērsiet failu sistēmu

9 Papildu opcijas

A2 resursdatora nosaukums mainiet to uz "RobbieAssistant"

A4 SSH Iespējot SSH serveri

A7 I2C Iespējot i2c saskarni

Iespējojiet angļu/ASV tastatūru

sudo nano/etc/noklusējuma/tastatūra

Mainiet šādu rindu: XKBLAYOUT = "mēs"

Pārstartējiet PI, lai tastatūras izkārtojuma izmaiņas / failu sistēmas izmēru maiņa stātos spēkā

$ sudo izslēgšana -r tagad

Automātisks savienojums ar WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Pievienojiet šādas rindiņas, lai jūsu aveņu pipari automātiski izveidotu savienojumu ar jūsu mājas WiFi (ja jūsu bezvadu tīkla nosaukums ir "linksys", piemēram, šajā piemērā)

tīkls = {ssid = "linksys" psk = "BEZVADA PAROLE ŠEIT"} Pārstartējiet PI, lai izveidotu savienojumu ar WiFi tīklu

$ sudo izslēgšana -r tagad

Tagad, kad jūsu PI beidzot ir lokālajā tīklā, varat tajā attālināti pieteikties, izmantojot SSH. Bet vispirms jums ir jāiegūst IP adrese, kas tai pašlaik ir.

$ ifconfig Meklējiet "inet addr: 192.168. XXX. XXX" šajā komandas izejā jūsu PI IP adresei

Dodieties uz citu mašīnu un piesakieties savā raspberrypi, izmantojot ssh

$ ssh [email protected]. XXX. XXX

Sāciet nepieciešamo pakotņu instalēšanu

$ sudo apt-get atjauninājums

$ sudo apt-get jauninājums

$ 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-pieprasījumi python3-setuptools python3-urllib python3-urllib3 python3-pieprasījumi vim git python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi. 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 instalēšanas pieprasījumi

Atjauniniet vietējās laika joslas iestatījumus

$ sudo dpkg-pārkonfigurēt tzdata

izmantojot interfeisu, izvēlieties savu laika joslu

Iestatiet vienkāršo direktoriju l komanda [pēc izvēles]

vi ~/.bashrc

pievienojiet šādu rindu:

pseidonīms l = 'ls -lh'

avots ~/.bashrc

Labot VIM noklusējuma sintakses izcelšanu [pēc izvēles]

sudo vi/etc/vim/vimrc

norakstiet šādu rindu:

sintakse ir ieslēgta

izveidojiet žurnālu mapi, lai lietojumprogramma palaistu mkdir/home/pi/RobbieAssistant/logs

chmod 777/home/pi/RobbieAssistant/logs

Konfigurējiet lietojumprogrammu, lai tā pareizi darbotos iestatījumu.py konfigurācijas failā Atrodiet faila settings-shadow.py mapi / include / un nokopējiet to uz settings.py un pielāgojiet pašreizējiem iestatījumiem

# prognoze.io API atslēga vietējai laika informācijai

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

weatherAPIKey = 'JŪSU API ATSLĒGA PROGNOZEI. IO'

# pēc izvēles, lai palaistu attālo temperatūras/mitruma reģistrētāju

dashboardServer = 'mydevicelogger.com'

# meklējiet Google, lai iegūtu Latitude/Longitude jūsu mājas atrašanās vietai

platums = 41.4552578

garums = -72,1665444

2. darbība. Nepieciešamie materiāli

Nepieciešamie piederumi
Nepieciešamie piederumi
Nepieciešamie piederumi
Nepieciešamie piederumi
Nepieciešamie piederumi
Nepieciešamie piederumi
Nepieciešamie piederumi
Nepieciešamie piederumi

RaspberriPi Zero

Mitrinātājs DHT11

LED gaismas (x4) zaļš / dzeltens / zils / sarkans 2,6 collu digitālais displejs

3. darbība: izveidojiet un pievienojiet ierīci vadam

Izveidojiet un pievienojiet ierīci vadam
Izveidojiet un pievienojiet ierīci vadam

Sagatavojiet Digole displeju i2C

Digole displeja aizmugurē pielodējiet džemperi, lai displejam piešķirtu i2c protokola izmantošanu

4. darbība. Izmantojot 3D printeri, izdrukājiet vāku, kastīti un aizmugurējos paneļus

Izmantojot 3D printeri, izdrukājiet vāku, kastīti un aizmugurējos paneļus
Izmantojot 3D printeri, izdrukājiet vāku, kastīti un aizmugurējos paneļus

Izmantojot šādus X STL failus mapē 3DPrint, R. O. B. Robots, LED vadi un displeja stiprinājums

buttonContainer-base.stl

buttonContainer-lid.stl

displaymount-final.stl

led-zirglietas-final.stl

MiniNintendoROB.zip

Robotu drukātājs: Mini Nintendo R. O. B. - RabbitEngineering

www.thingiverse.com/thing:1494964

Es izmantoju birokrātiju, lai padarītu acis sarkanas ar melno viziera fonu

5. darbība: komponentu vadu savienošana

Komponentu vadi
Komponentu vadi

Digole displejs

GND -> GND

DATI -> SDA

CLK -> SCL

VCC -> 3V

Mitrinātājs DHT11

VCC -> 5V

GND -> GND

DATI -> GPIO 25

ZILS rezistors

VCC -> GPIO 17 (ar 270 omu rezistoru)

GND -> GND

DZELTENS rezistors

VCC -> GPIO 13 (ar 270 omu rezistoru)

GND -> GND

ZAĻAIS rezistors

VCC -> GPIO 6 (ar 270 omu rezistoru)

GND -> GND

SARKANS rezistors

VCC -> GPIO 12 (ar 270 omu rezistoru)

GND -> GND

SARKANA īslaicīga spiedpoga

VCC -> GPIO 16 (ar 270 omu rezistoru)

GND -> GND

ZILA mirkļa spiedpoga

VCC -> GPIO 26 (ar 270 omu rezistoru)

GND -> GND

6. darbība: pievienojiet komponentus robotam

Pievienojiet komponentus robotam
Pievienojiet komponentus robotam
Pievienojiet komponentus robotam
Pievienojiet komponentus robotam
Pievienojiet komponentus robotam
Pievienojiet komponentus robotam

Kad ekrāna turētājs ir izdrukāts, pievienojiet to digola displejam

Pievienojiet displeju RPi ar pietiekami daudz vadu, lai pielīmētu RPi robota aizmugurē

Izdrukājiet kontrolieri un pievadiet pogas ar pietiekami daudz vadu, lai tas nonāktu robota aizmugurē

Pabeidziet elektroinstalāciju un robota montāžu, ja RPi ir savienots ar aizmuguri un DHT11 ir pielīmēts apakšā

7. darbība: pārbaudiet I2C konfigurāciju

Sāciet savu RaspberryPi un pārliecinieties, vai I2C kopne atpazīst visus jūsu savienotos 7/14 segmenta displejus. [katram displejam tiek piešķirta unikāla adrese, kas aprakstīta iepriekš, lodējot katra displeja džemperus dažādās kombinācijās]

Ja displejs ar džemperi ir lodēts pareizi, komandai i2cdetect jābūt šādai izvadei:

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

8. solis: instalējiet DHT11

$ cd ~

$ git klons

$ cd Adafruit_Python_DHT/

$ sudo python setup.py instalēt

$ sudo python ez_setup.py

$ cd piemēri/

$ vi simpletest.py Mainiet šādu rindu:

sensors = Adafruit_DHT. DHT11

Komentējiet līniju

pin = 'P8_11'

Noņemiet komentāru no rindas un mainiet tapas numuru uz 16

tapa = 25

Izpildiet testu

python simpletest.py

Jums vajadzētu redzēt komandrindā parādītu metrisko temperatūras un mitruma rādījumu.

9. solis: Klonēt repozitoriju

$ cd ~ $ git klons

10. darbība: pievienojiet Pushbullet API (izmantojot Python 3.5)

Izmantojot tālrunim paredzēto lietotni pushbullet, reģistrējieties, lai saņemtu API atslēgu, lai būtu vienkāršs python skripts, lai varētu uztvert un virzīt datu centrmezgla paziņojumus un indikatoru karodziņus

Asyncio funkcionalitātei instalējiet Python 3.5

$ 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 Ja kādu no pakotnēm nevar atrast, izmēģiniet jaunāku versijas numuru (piemēram, libdb5.4-dev, nevis 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. -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 Instalējiet atkarības no python3

$ sudo apt-get instalēt python3-setuptools

git clone https://github.com/rharder/asyncpushbullet cd asyncpushbullet && sudo /usr/local/opt/python-3.5.2/bin/python3.5 setup.py install Apmeklējiet sava konta pushbullet iestatījumu lapu, lai ģenerētu API atslēga izmantošanai

Konfigurējiet skriptu pushbullet-listener.py, lai tam būtu pareizs API un informācijas paneļa centrālais resursdators

# jūsu API atslēga no PushBullet.com API_KEY = "o. XXXYYYZZZ111222333444555666"

# informācijas paneļa centrālā servera resursdatora informācijas panelisServer = 'MY-SERVER-HERE.com'

11. solis: pievienojiet skriptu sākumam pie paneļa sāknēšanas un restartējiet informācijas paneli 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

12. darbība: pēc izvēles: izveidojiet savus Nintendo attēlus, lai tie tiktu parādīti displejā

Augšupielādējiet savu 128x128 failu uz šādu URL:

www.digole.com/tools/PicturetoC_Hex_converter.php

Izvēlieties augšupielādējamo attēla failu, pievienojiet ekrānā izmēru (platums/augstums)

Nolaižamajā izvēlnē "Izmantot" atlasiet "256 krāsa krāsu OLED/LCD (1 baits/pikseļi)".

Iegūstiet sešstūra izvadi.

Pievienojiet heksadecimālo izvadi displeja/ uzbūves/ galvenes (.h) failam, pārējos izmantojiet kā sintakses vadlīnijas.

Iekļaujiet jauno failu failā digole.c #include myimage.h

Iekļaujiet savā komandā jaunu komandrindas āķi savā attēla failā. Piezīme: zemāk esošā komanda saka: zīmējiet attēlu 10 pikseļu pozīcijā virs 10 pikseļiem uz leju. Jūs varat mainīt to uz dažādām X, Y koordinātām, jūs varat arī mainīt vērtības 128, 128 uz jebkura izmēra jūsu jauno attēlu.

} cits if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariable Šeit ir definēts jūsu (.h) failā}

Tagad atjaunojiet (ignorējiet kļūdas) zemāk, lai jūsu jaunais attēls tiktu atveidots ar šādu komandu.

$./digole myimage

Pārveidojiet [iekļauts] Digole displeja draiveri, lai veiktu izvēles izmaiņas

$ cd displejs/būvējums

$ gcc digole.c

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

$ chmod +x../../digole

13. solis: pabeigts

Jūs esat pabeidzis!

Ieteicams: