Tartalomjegyzék:

A Raspberry Pi csatlakoztatása az internethez: 9 lépés
A Raspberry Pi csatlakoztatása az internethez: 9 lépés

Videó: A Raspberry Pi csatlakoztatása az internethez: 9 lépés

Videó: A Raspberry Pi csatlakoztatása az internethez: 9 lépés
Videó: You can learn Arduino in 15 minutes. 2024, Július
Anonim
A Raspberry Pi csatlakoztatása az internethez
A Raspberry Pi csatlakoztatása az internethez

Ebben a leckében megtanulhatja, hogyan kell weblapot létrehozni, adatokat gyűjteni a világháló használatával, és API -k segítségével képeket közzétenni a Tumblr -ben és a Twitteren.

1. lépés: Ügyfél és szerver

A számítástechnikában az ügyfél-szerver egy szoftvermodell, amely két részből áll: egy kliensből és egy szerverből. Mindkettő számítógépes hálózaton vagy ugyanazon a számítógépen kommunikál. Az ügyfél egy olyan program vagy számítógép, amely szoftverrel rendelkezik, és szolgáltatáskéréseket küld a kiszolgálónak. A szerver egy számítógépes program vagy eszköz, amely képes elfogadni ezeket a kéréseket, feldolgozni azokat, és visszaadni a kért információkat az ügyfélnek. Néha bonyolult kitalálni, melyik melyik, ha több feladatot egyszerre végző gépekkel dolgozik. Íme néhány jellemző, amelyek segítenek megkülönböztetni az ügyfelet és a szervert.

Ügyfél jellemzői:

  • Ez az első aktív
  • Kéréseket küld a szervernek
  • Várakozásokat vár és fogad a szervertől
  • Általában közvetlenül lép kapcsolatba a végfelhasználókkal bármilyen felhasználói felület, például grafikus felhasználói felület használatával

Szerver jellemzői:

  • Kezdetben passzív
  • Figyelő, kész válaszolni az ügyfelek által küldött kérésekre
  • amikor kérés érkezik, válaszol a kért adatokkal az ügyfeleknek
  • A végfelhasználók általában nem lépnek közvetlenül kapcsolatba a szerverrel, hanem egy ügyfelet használnak.
Kép
Kép

A kliens és szerver kapcsolat gyakori példája a webböngésző (kliens), amely webkiszolgálón tárolt weboldalfájlokat kér és fogad.

2. lépés: Hozzon létre egy helyi webszervert

A Raspberry Pi webszerverré válhat szerveralkalmazás telepítésével és futtatásával. Két népszerű nyílt forráskódú szerveralkalmazás: NGINX (kiejtett motor x) és Apache. Ebben a leckében az Apache -t fogja használni, mert ebben az írásban erősebben dokumentált. Ez megkönnyíti az online válaszok keresését tanulás közben.

A Raspberry Pi olyan webhelyet fog üzemeltetni, amelyhez ugyanazon a hálózaton bármely eszköz hozzáférhet. Lássunk neki!

Lépés: Telepítse az Apache programot

Telepítse az apache2 csomagot. A -y jelző választ ad a telepítés előtti biztonsági kérdésre.

sudo apt -get install apache2 -y

Az Apache tartalmaz egy teszt HTML fájlt, amely helyőrző weboldalt hoz létre a telepítés tesztelésére. Ez a teszt HTML fájl az Apache gyökérkönyvtárában található. Alapértelmezés szerint az Apache úgy van beállítva, hogy ebben a könyvtárban keres webes dokumentumokat, hogy tartalmat hozzon létre egy webböngészőben. Ha meg szeretné tekinteni ezt a tesztoldalt, és meg akarja győződni arról, hogy az Apache valóban helyesen telepítette, húzza fel a böngészőjében az alábbi URL -cím beírásával:

localhost/

Ha az Apache helyesen van telepítve, akkor az Apache teszt weboldalát fogja látni a böngészőben:

Kép
Kép

Keresse meg Raspberry Pi IP -címét

A Raspberry Pi használata közben a localhost címet használhatja a weboldal eléréséhez. A weboldal eléréséhez másik számítógépről szüksége van a Raspberry Pi IP -címére. Az IP -cím típusának megkeresése az LXTerminalban:

ifconfig

Kép
Kép

Az asztalon is megtalálhatja, ha az egérmutatót a WiFi vétel szimbóluma fölé viszi.

Kép
Kép

4. lépés: Készítsen statikus weboldalt

A Raspberry Pi mostantól egy weboldalt és az azon közzétett tartalmat tárolhat. Két alapvető típusú weboldal létezik: statikus és dinamikus. A statikus oldal tartalma nem változik. A dinamikus oldal képes megjeleníteni a változó adatokat, például az érzékelő leolvasását vagy a változó időt és dátumot.

Kezdjük egy statikus oldallal. Ennek létrehozásához használnia kell egy HTML nevű nyelvet. Amikor egy weboldalra megy, az első dolog, amit megjelenik, valószínűleg egy index.html oldal. Ez az oldal az alapértelmezett oldal, amelyet a böngésző mutat, ha nincs megadva egy másik oldal. Alapértelmezés szerint az Apache itt keresi az index.html fájlt:

/var/www/html

Ezt nevezik dokumentumgyökérnek, és ez egy rejtett mappa. Weblapok tárolására van kijelölve. Menj oda és nézz körül:

cd/var/www/html

ls

Látni fogja az alapértelmezett teszt index.html fájlt. Ha el szeretné menteni az alapértelmezett fájlt, nevezze át alapértelmezettként az defaultIndex.html fájlra az mv paranccsal.

sudo mv index.html defaultIndex.html

ha nem szeretné menteni, távolítsa el a fájlt az rm paranccsal:

sudo rm index.html

Most létrehozhatja és szerkesztheti saját index.html fájlját:

sudo nano index.html

Ne felejtse el használni a sudo -t, mert a www és a html könyvtárak a root tulajdonában vannak, ezért rootként kell eljárniuk az adott könyvtárakban található fájlok létrehozásához, szerkesztéséhez és kezeléséhez.

Alap HTML oldal

A HTML egy mélyreható nyelv. Sokat tehetsz vele. Ha többet szeretne megtudni, nézze meg a W3Schools webhelyét, ahol számos oktatóanyagot talál a HTML használatáról a webhely felépítéséhez. Kezdjük egy egyszerű HTML oldallal.

Először mondja el a böngészőnek, hogy a HTML melyik verzióját használja. Ezt a dokumentumot HTML5 dokumentumnak nyilvánítják:

Kezdje a html és a body címkékkel:

A tartalom nagy része ezután következik, a törzscímkék között. Legyen az első sor címsor a h1 címkével. A "h" utáni szám határozza meg a cím fontosságát, amely befolyásolja a betűméretet. Használja a p címkét egy bekezdés meghatározásához:

A Raspberry Pi -nek van weboldala

Mit tegyek ide?

Fejezze be az oldalt a törzs, a html és a címkék bezárásával:

Mentse el a dokumentumot.html utótaggal, és keresse fel a localhost webhelyet a böngészőben. Látni fogja weboldalát!

Kép
Kép

Mit kell feltenni a weboldalra? Tegyünk fel egy képet, vagy még jobb, az animateMe.gif! Annak érdekében, hogy bármely tartalom megjelenjen ezen a weboldalon, azt az Apache dokumentumgyökérébe kell helyezni. Másolja és illessze be, hogy a boof/fotos könyvtárban is maradjon. Fájl másolásához és beillesztéséhez parancssorba használja a cp parancsot. Először is, cd a saját könyvtárába:

cd ~

Másolja és illessze be az animateMe-g.webp

sudo cp boof/fotos/animateMe.gif/var/www/html

Menj vissza a html könyvtárba:

cd/var/www/html

Nyissa meg újra az index.html fájlt a kép hozzáadásához:

sudo nano index.html

Egy kép meghatározásához és beágyazásához egy HTML -oldalra használja az img címkét. Tegye a következő sort a cím és a bekezdés közé.

Nyissa meg az oldalt a böngészőben, és így fog kinézni, kivéve saját stílusos szelfi-g.webp

Kép
Kép

5. lépés: Adjon hozzá egy stílust

Az oldal kissé unalmasnak tűnik. Nincs szín és nincs stílus. Itt jön be a CSS. Ez egy olyan nyelv, amely együtt dolgozik a HTML-szel, hogy vonzóbbá és vizuálisan kreatívabbá tegye a weboldalakat. Itt csak érinteni fog, de ha többet szeretne megtudni, vegyen részt a W3 iskolákban, hogy többet megtudjon.

Például változtassuk meg a háttér színét úgy, hogy CSS -t adunk hozzá a HTML -fájlhoz. Számos módja van a weboldal stílusának CSS használatával. Ebben az osztályban a stíluscímkék használatával CSS -t közvetlenül a HTML -fájlba ágyazhat be.

Tegye a következő sorokat a HTML -oldal tetején lévő első html és törzscímkék közé:

body {background-color: powderblue;} címkék. Így fog kinézni:

Kép
Kép

body {background-color: powderblue;}

Kép
Kép

6. lépés: Telepítse a PHP -t

Statikus oldal helyett olyan dinamikus oldalt készíthet, amely képes változtatni anélkül, hogy manuálisan feltöltené a fájlokat. Ennek népszerű módja a PHP nevű szkriptnyelv használata. A PHP használatához a Raspberry Pi -n először telepítenie kell az Apache modulcsomagjával:

sudo apt-get install libapache2-mod-php5 php5 -y

7. lépés: Készítsen dinamikus weboldalt

Kombinálja a PHP -t a HTMLA -kkal, amíg a PHP -kód tartalmazza a címkéket, akkor beillesztheti azt egy HTML -fájlstruktúrába. Például egyesítse a jelenlegi HTML- és PHP -szkripteket, és HTML -címkék használatával növelje a szöveget.

Vegyünk egy egyszerű PHP szkriptet, amely megjeleníti a dátumot és az időt. Illessze be a címkék közé a következőket:

Mentse a fájlt a Ctrl + o billentyűkombinációval, de módosítsa a kiterjesztést.html -ről.php -re, ami új fájlt ment. A böngésző összetévesztése érdekében távolítsa el a régi.html verziót:

sudo rm index.html

Frissítse a localhostot a böngészőben. A kimenet így fog kinézni:

Kép
Kép

Ok, akkor mi a különbség? Úgy néz ki, mint egy normál HTML -oldal, nem? Frissítse az oldalt, és nézze meg a varázslatot. Az a varázslat, hogy az idő megváltozik! Ez a PHP és a beépített date () függvény, amellyel dinamikus weboldalakat készíthet.

8. lépés: Hozzon létre egy Tumblr API -ügyfelet

A Raspberry Pi kérhet és kérhet információkat más szoftveralkalmazásokról online egy API (Application Programming Interface) segítségével. Egy API megkönnyíti, hogy a Raspberry Pi, például a Weboldal összes adata átvágjon, és csak a hasznos dolgokat kapja meg. A Raspberry Pi beszéljen a Tumblr -rel, a Twitteren és az weather.com -on, hogy tweeteljen, képeket tegyen közzé és megjelenítse az időjárás -előrejelzéseket.

Raspberry Pi és Tumblr

A következő gyakorlat beszélgetést hoz létre a Raspberry Pi és a Tumblr között. Ügyfélként a Raspberry Pi adattöredékeket fog kérni a Tumblr -től, hogy fel tudja tölteni a képeket a Tumblr távoli szerverére, ami azt eredményezi, hogy a képeket egy Tumblr -fiókba teszik közzé. Ahhoz, hogy a Raspberry Pi API -val dolgozzon, valószínűleg már rendelkezésre áll egy könyvtár, amelyet használhat. A Tumblr -hez van Pytumblr. Az ügyfél egy Python programban jön létre a Pytumblr-ben létrehozott beépített függvény használatával. Ez a funkció négy Tumblr által generált jogosultsági kódot használ:

  • fogyasztói kulcs
  • fogyasztói titok
  • token kulcs
  • jelképes titok

A Tumblr API használatához négy kulcsot kell beszereznie (hasonlóan a jelszavakhoz). Ahhoz, hogy megszerezze őket, kövesse az alábbi lépéseket:

  1. Hozzon létre egy ingyenes Tumblr fiókot, és jelentkezzen be.
  2. Alkalmazás regisztrálása. Csak olyan alapvető információkat kell megadnia, mint a cím (próbálja ki a "My Raspberry Pi" -t), a leírás, az e -mail cím és a webhely (ezt használja, ha nincs). A regisztráció után megkapja a fogyasztói kulcsot és a fogyasztói titkot. Másolja és illessze be őket biztonságos helyre, például szöveges fájlba vagy e -mailbe. Ahhoz, hogy újra hozzáférhessen hozzájuk, lépjen a Tumblr fiókoldalára, válassza a Beállítások lehetőséget a Fiók menüben, majd kattintson az Alkalmazások elemre.
  3. Jelentkezzen be a fejlesztői konzolba a kulcsaival és titkos jogosultsági kódjaival. Kattintson az engedélyezésre, amikor megkérdezi, hogy szeretné -e, hogy az Ön nevében tegyen közzé.
  4. Miután bejelentkezett a fejlesztői konzolba, példakódot láthat több különböző nyelven. Vagy kattintson a Python fülre, és másolja le az OAuth blokkot, vagy a felső menüben kattintson a Kulcsok megjelenítése lehetőségre a token kulcs és a jogkivonat titkos kódjai megtekintéséhez a már meglévő két kóddal együtt.

Tegyük működésbe ezeket a kódokat, és készítsünk egy Python programot, amely közzéteszi az animateMe-g.webp

A Pytumblr első telepítése:

sudo apt-get update

sudo pip telepítse a pytumblr -t

Az otthoni könyvtárból írjon le egy CD -t a Boof mappába, és hozzon létre egy Python -fájlt:

cd szar

Hozza létre fájlját az IDLE szerkesztőjével, hogy megkönnyítse a nagyon hosszú jogosultsági kódok kivágását és beillesztését. Tegye ezt a testPytumblr.py fájljába, frissítse a négy kulcsot és a felhasználónevét:

import pytumblr

# Hitelesíti az OAuth -on keresztül, másolja a https://api.tumblr.com/console/calls/user/info client = pytumblr. TumblrRestClient ('saját_fogyasztói_kulcsa', 'saját_fogyasztói_címke', 'saját_szolgáltató', 'saját_szolgáltatói titkos') kliens.cre/ 'your_account_username', state = "published", tags = ["raspberrypi", "picamera"], data = "fotos/animateMe.gif") print ("feltöltve")

A program "raspberrypi" és "picamera" címkével jelöli az Ön számára feltöltött fotót. Ha szeretné, eltávolíthatja, helyettesítheti vagy hozzáadhatja ezeket a címkéket. Ezeket a client.create_photo () fájlban használt címkéknek nevezett változó tárolja.

A program futtatásához nyomja meg az F5 billentyűt. Hiba lesz … de már telepítette a Pytumblr -t, akkor miért mondja a Python, hogy nem találja a modult? Ez azért van, mert a Pytumblr nem támogatja a Python 3 -at, csak a Python 2 -ben*működik. Nyissa meg a Python 2 IDLE szerkesztőt, vágja ki és illessze be a kódot, írja felül a Python 3 programot, majd futtassa. Miután feltöltötte a-g.webp

Ez az izgalmas rész! Lépjen a Tumblr oldalára, és nézze meg a-g.webp

Kép
Kép

*Az osztály közzététele után egy másik github -felhasználó elágazta az eredetit, és támogatást adott a Python 3 -hoz bizonyos parancsokhoz.

Ha a bejegyzés nem jelenik meg, ellenőrizze ismét, hogy helyesen adta -e meg négy kulcsát és a Tumblr felhasználónevét, és hogy a Pi internetkapcsolata aktív -e. A szkriptet a parancssorból is futtathatja a Python 2 használatával (cd a mappájába, ha még nem tartózkodik ott):

python tesztPytumblr.py

9. lépés: Készítsen képernyőképet a Tumblr -ről és/vagy a webhelyről

Hozzon létre egy webhelyet-g.webp

Ajánlott: