Sisällysluettelo:
- Vaihe 1: Asiakas ja palvelin
- Vaihe 2: Luo paikallinen verkkopalvelin
- Vaihe 3: Asenna Apache
- Vaihe 4: Luo staattinen verkkosivu
- Raspberry Pi: llä on verkkosivusto
- Vaihe 5: Lisää tyyliä
- Vaihe 6: Asenna PHP
- Vaihe 7: Luo dynaaminen verkkosivu
- Vaihe 8: Luo Tumblr -sovellusliittymäasiakas
- Vaihe 9: Ota kuvakaappaus Tumblrista ja/tai verkkosivustosta
Video: Raspberry Pi -laitteen yhdistäminen verkkoon: 9 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:00
Tässä oppitunnissa opit luomaan verkkosivun, keräämään tietoja maailmanlaajuisen verkon avulla ja käyttämään sovellusliittymiä kuvien lähettämiseen Tumblriin ja Twitteriin.
Vaihe 1: Asiakas ja palvelin
Laskennassa asiakas-palvelin on ohjelmistomalli, joka koostuu kahdesta osasta: asiakas ja palvelin. Molemmat kommunikoivat tietokoneverkon kautta tai yhdessä samassa tietokoneessa. Asiakas on ohjelma tai tietokone, jossa on ohjelmisto, joka perustuu palvelupyyntöjen lähettämiseen palvelimelle. Palvelin on tietokoneohjelma tai laite, joka voi hyväksyä nämä pyynnöt, käsitellä ne ja palauttaa pyydetyt tiedot asiakkaalle. Joskus on hankalaa selvittää mikä on, kun työskentelet koneiden kanssa, jotka suorittavat useita tehtäviä kerralla. Seuraavassa on joitain ominaisuuksia, joiden avulla voit erottaa asiakkaan ja palvelimen toisistaan.
Asiakkaan ominaisuudet:
- Se on ensimmäinen aktiivinen
- Lähettää pyynnöt palvelimelle
- Se odottaa ja vastaanottaa vastauksia palvelimelta
- Yleensä vuorovaikuttaa suoraan loppukäyttäjien kanssa käyttämällä mitä tahansa käyttöliittymää, kuten graafista käyttöliittymää
Palvelimen ominaisuudet:
- Se on aluksi passiivista
- Se kuuntelee ja on valmis vastaamaan asiakkaiden lähettämiin pyyntöihin
- kun pyyntö tulee, vastaa asiakkaille pyydetyt tiedot
- Loppukäyttäjät eivät yleensä ole suoraan vuorovaikutuksessa palvelimen kanssa, vaan käyttävät asiakasta.
Yleinen esimerkki asiakas- ja palvelinsuhteesta on verkkoselain (asiakas), joka pyytää ja vastaanottaa verkkopalvelimella ylläpidettyjä verkkosivutiedostoja.
Vaihe 2: Luo paikallinen verkkopalvelin
Raspberry Pi voi tulla verkkopalvelimeksi asentamalla ja suorittamalla palvelinsovelluksen. Kaksi suosittua avoimen lähdekoodin palvelinsovellusta ovat: NGINX (lausutaan moottori x) ja Apache. Tässä oppitunnissa käytät Apachea, koska tästä kirjoituksesta lähtien se on dokumentoitu voimakkaammin. Tämä helpottaa vastausten etsimistä verkossa oppimisen aikana.
Raspberry Pi isännöi verkkosivustoa, jota kaikki saman verkon laitteet voivat käyttää. Aloitetaan!
Vaihe 3: Asenna Apache
Asenna apache2 -paketti. -Y -lippu vastaa esiasennuksen turvakysymykseen puolestasi.
sudo apt -get install apache2 -y
Apachen mukana tulee HTML -testitiedosto, joka luo paikkamerkkisivun asennuksen testaamiseksi. Tämä testi -HTML -tiedosto tulee Apachen juurihakemistoon. Oletuksena Apache on asetettu etsimään tästä hakemistosta web -asiakirjoja sisällön luomiseksi verkkoselaimessa. Jos haluat katsoa tätä testisivua ja vahvistaa, että Apache on todella asentanut oikein, vedä se ylös selaimessasi kirjoittamalla tämä URL -osoite:
localhost/
Jos Apache on asennettu oikein, näet Apache -testisivun selaimessa:
Löydä Raspberry Pi: n IP -osoite
Voit käyttää localhost -osoitetta päästäksesi Web -sivulle Raspberry Pi: n ollessa. Päästäksesi Web -sivulle toiselta tietokoneelta tarvitset Raspberry Pi: n IP -osoitteen. IP -osoitetyypin löytäminen LXTerminalista:
ifconfig
Löydät sen myös työpöydältä, jos viet kohdistimen WiFi -vastaanottosymbolin päälle.
Vaihe 4: Luo staattinen verkkosivu
Raspberry Pi voi nyt isännöidä verkkosivun ja kaiken siihen julkaistavan sisällön. Verkkosivuja on kahdenlaisia: staattinen ja dynaaminen. Staattisella sivulla on sisältöä, joka ei muutu. Dynaaminen sivu pystyy näyttämään muuttuvia tietoja, kuten anturin lukemat tai muuttuvan kellonajan ja päivämäärän.
Aloitetaan staattisella sivulla. Jos haluat luoda sellaisen, sinun on käytettävä HTML -kieltä. Kun siirryt verkkosivulle, ensimmäinen näytettävä asia on todennäköisesti index.html -sivu. Tämä sivu on oletussivu, jonka selain näyttää, jos toista sivua ei ole määritetty. Oletuksena Apache etsii index.html -tiedostoa täältä:
/var/www/html
Tätä kutsutaan asiakirjan juuriksi, ja se on piilotettu kansio. Se on tarkoitettu verkkosivujen pitämiseen. Mene sinne ja katso ympärillesi:
cd/var/www/html
ls
Näet oletustesti index.html -tiedoston luettelossa. Jos haluat tallentaa oletustiedoston, nimeä se uudelleen muotoon defaultIndex.html käyttämällä mv -komentoa.
sudo mv index.html defaultIndex.html
jos et halua tallentaa sitä, poista tiedosto rm -komennolla:
sudo rm index.html
Nyt voit luoda ja muokata omaa index.html -tiedostoasi:
sudo nano index.html
Muista käyttää sudoa, www- ja html -hakemistot ovat rootin omistuksessa, joten sinun on toimittava pääkäyttäjänä luodaksesi, muokataksesi ja muokataksesi kyseisissä hakemistoissa olevia tiedostoja.
HTML -perussivu
HTML on kieli, joka menee syvälle. Voit tehdä sillä paljon. Jos haluat lisätietoja, tutustu W3Schoolsin verkkosivustoon, josta löydät monia opetusohjelmia verkkosivuston rakentamiseen HTML -koodin avulla. Aloitamme yksinkertaisella HTML -sivulla.
Kerro ensin selaimelle, mitä HTML -versiota käytät. Tämä asiakirja on ilmoitettu HTML5 -asiakirjaksi:
Aloita html- ja body -tunnisteilla:
Suurin osa sisällöstäsi siirtyy seuraavaksi body -tunnisteiden väliin. Tee ensimmäisestä rivistä otsikko h1 -tunnisteella. "H": n jälkeinen numero määrittää otsikon tärkeyden, joka vaikuttaa kirjasimen kokoon. Määritä kappale p -tunnisteella:
Raspberry Pi: llä on verkkosivusto
Mitä minun pitäisi laittaa tänne?
Viimeistele sivu sulkemalla runko ja html ja tunnisteet:
Tallenna asiakirja päätteellä.html ja käy selaimessasi osoitteessa localhost. Näet verkkosivusi!
Mitä kannattaa laittaa verkkosivulle? Laitetaan kuva ylös, tai vielä parempi, animateMe.gif! Jotta sisältö voidaan näyttää tällä verkkosivulla, se on sijoitettava Apachen asiakirjan juuriin. Kopioi ja liitä se niin, että se pysyy myös boof/fotos -hakemistossasi. Voit kopioida ja liittää tiedoston komentoriville käyttämällä cp-komentoa. Ensinnäkin, cd kotihakemistoosi:
cd ~
Kopioi ja liitä animateMe-g.webp
sudo cp boof/fotos/animateMe.gif/var/www/html
Palaa html -hakemistoon:
cd/var/www/html
Avaa index.html -tiedosto uudelleen, jotta voit lisätä kuvan:
sudo nano index.html
Voit määrittää ja upottaa kuvan HTML -sivulle käyttämällä img -tagia. Laita seuraava rivi otsikon ja kappaleen väliin.
Avaa sivu selaimessa ja se näyttää tältä, paitsi omalla tyylikkäällä selfie -GIF: lläsi.
Vaihe 5: Lisää tyyliä
Sivu näyttää hieman tylsältä. Ei väriä eikä tyyliä. Tässä CSS tulee. Se on kieli, joka toimii käsi kädessä HTML: n kanssa ja tekee verkkosivusta houkuttelevamman ja visuaalisesti luovan. Kosketat vain tätä, mutta jos haluat oppia lisää, opi lisää W3 -kouluista.
Muutetaan esimerkiksi taustan väri lisäämällä CSS HTML -tiedostoosi. Voit muotoilla verkkosivusi CSS: llä useilla tavoilla. Tässä luokassa käytät tyylitunnisteita CSS: n upottamiseen suoraan HTML -tiedostoosi.
Kirjoita seuraavat rivit HTML -sivusi yläreunan ensimmäisen html- ja body -tunnisteen väliin:
body {background-color: powderblue;} -tunnisteet. Se näyttää tältä:
runko {taustaväri: jauhesininen;}
Vaihe 6: Asenna PHP
Staattisen sivun sijasta voit luoda dynaamisen sivun, joka voi muuttua ilman, että lataat tiedostoja siihen manuaalisesti. Suosittu tapa tehdä tämä on käyttää PHP -skriptikieltä. Jos haluat käyttää PHP: tä Raspberry Pi -laitteessa, sinun on asennettava se ensin Apache -moduulipaketilla:
sudo apt-get install libapache2-mod-php5 php5 -y
Vaihe 7: Luo dynaaminen verkkosivu
Yhdistä PHP ja HTMLA niin kauan kuin PHP -koodi on tunnisteissa, voit sisällyttää sen HTML -tiedostorakenteeseen. Yhdistä esimerkiksi nykyiset HTML- ja PHP -komentosarjasi ja suurenna tekstiä käyttämällä HTML -tunnisteita.
Otetaan mukaan yksinkertainen PHP -skripti, joka näyttää päivämäärän ja kellonajan. Liitä seuraavat kohdat mihin tahansa tunnisteiden väliin:
Tallenna tiedosto näppäinyhdistelmällä Ctrl + o, mutta vaihda laajennus.html tiedostosta.php, jolloin uusi tiedosto tallennetaan. Jotta selain ei hämmenny, poista vanha.html -versio:
sudo rm index.html
Päivitä localhost verkkoselaimellasi. Tulos näyttää tältä:
Ok, mikä on ero? Näyttää siltä, että tavallinen HTML -sivu ei ole? Päivitä sivu ja katso taikuutta. Taika on, että aika muuttuu! Se on PHP ja sen sisäänrakennettu päivämäärä () -toiminto, joiden avulla voit luoda dynaamisen verkkosivun.
Vaihe 8: Luo Tumblr -sovellusliittymäasiakas
Raspberry Pi voi pyytää ja saada tietoja muista ohjelmistosovelluksista verkossa sovellusliittymän (Application Programming Interface) kautta. Sovellusliittymän avulla Raspberry Pi: n kaltaisten asioiden on helppo leikata kaikki verkkosivuston tiedot ja napata vain hyödyllisiä asioita. Pyydä Raspberry Pi: tä puhumaan Tumblrille, Twitterille ja weather.comille twiittaamaan, julkaisemaan kuvia ja näyttämään sääennusteita.
Raspberry Pi ja Tumblr
Seuraava harjoitus luo keskustelun Raspberry Pi: n ja Tumblrin välillä. Raspberry Pi pyytää asiakkaana Tumblrilta tietokatkelmia, jotta se voi ladata kuvia Tumblrin etäpalvelimelle, jolloin kuvat lähetetään Tumblr -tilille. Jotta Raspberry Pi toimisi sovellusliittymän kanssa, siellä on todennäköisesti jo kirjasto, jota voit käyttää. Tumblrille on Pytumblr. Asiakas luodaan Python-ohjelmassa käyttämällä sisäänrakennettua toimintoa, joka on luotu Pytumblrissa. Tämä toiminto käyttää neljää Tumblrin luomaa valtuutuskoodia:
- kuluttaja -avain
- kuluttajan salaisuus
- tunnuksen avain
- symbolinen salaisuus
Ennen kuin voit käyttää Tumblrin sovellusliittymää, sinun on hankittava neljä näistä avaimista (samanlainen kuin salasanat). Voit saada ne seuraavasti:
- Luo ilmainen Tumblr -tili ja kirjaudu sisään.
- Rekisteröi sovellus. Sinun tarvitsee vain antaa perustiedot, kuten otsikko (kokeile "My Raspberry Pi"), kuvaus, sähköposti ja verkkosivusto (käytä tätä, jos sinulla ei ole sellaista). Rekisteröinnin jälkeen saat kuluttaja -avaimen ja kuluttajasalaisuuden. Kopioi ja liitä ne turvalliseen paikkaan, kuten tekstitiedostoon tai sähköpostiin. Voit käyttää niitä uudelleen siirtymällä Tumblr -tilisivullesi, valitsemalla Tili -valikosta Asetukset ja napsauttamalla Sovellukset.
- Kirjaudu sisään kehittäjäkonsoliin käyttämällä avainta ja salaisia valtuutuskoodeja. Napsauta Salli, kun sinulta kysytään, haluatko sen lähettävän puolestasi.
- Kun olet kirjautunut sisään kehittäjäkonsoliin, näet esimerkkikoodin useilla eri kielillä. Napsauta joko Python -välilehteä ja kopioi OAuth -lohko tai valitse ylävalikosta Näytä avaimet, jos haluat nähdä tunnisteavaimen ja salaiset tunnuksen koodit sekä kaksi jo olemassa olevaa koodiasi.
Laitetaanko nämä koodit toimimaan ja tehdään Python -ohjelma, joka lähettää animateMe-g.webp
Asenna ensin Pytumblr:
sudo apt-get päivitys
sudo pip asenna pytumblr
Kotihakemistosta, cd boof -kansioon ja luo Python -tiedosto:
cd -paska
Luo tiedosto IDLE -editorilla, jotta pitkien valtuutuskoodien leikkaaminen ja liittäminen on helpompaa. Laita tämä testPytumblr.py -tiedostoosi päivittämällä neljä avainta ja käyttäjätunnuksesi:
tuo pytumblr
# Todentaa OAuthin kautta, kopioi osoitteesta https://api.tumblr.com/console/calls/user/info client = pytumblr. TumblrRestClient ('oma_kuluttaja -avaimesi', 'oma_tietokoneen_salainen', 'oma_sijoittaja', 'oma_sivustosi_salainen'). 'oma_tilisi_käyttäjätunnus', tila = "julkaistu", tunnisteet = ["raspberrypi", "picamera"], data = "fotos/animateMe.gif") print ("ladattu")
Ohjelma merkitsee ladatun valokuvan sinulle "raspberrypi" ja "picamera". Halutessasi voit poistaa, korvata tai lisätä nämä tunnisteet. Nämä tallennetaan muuttujaan nimeltä tagit, joita käytetään client.create_photo ().
Suorita ohjelma painamalla F5. Tulee virhe … mutta olet jo asentanut Pytumblrin, joten miksi Python sanoo, ettei se löydä moduulia? Tämä johtuu siitä, että Pytumblr ei tue Python 3: ta, se toimii vain Python 2: ssa*. Avaa Python 2 IDLE -editori ja leikkaa ja liitä koodi, korvaa Python 3 -ohjelma ja suorita se. Kun se on ladannut-g.webp
Tämä on jännittävä osa! Mene Tumblr -sivullesi ja katso GIF! Vaihda ohjelmasi "julkaistu" "luonnokseksi", jos haluat luoda sen sijaan luonnoksia.
*Tämän luokan julkaisemisen jälkeen toinen github -käyttäjä on haarukannut alkuperäisen ja lisännyt Python 3 -tuen tietyille komennoille.
Jos viesti ei tule näkyviin, tarkista, että kirjoitit oikein neljä avaintasi ja Tumblr -käyttäjänimesi ja että Pi: n internetyhteys on aktiivinen. Voit myös suorittaa komentosarjasi komentoriviltä Python 2: n avulla (cd kansioosi, jos et ole jo siellä):
python -testiPytumblr.py
Vaihe 9: Ota kuvakaappaus Tumblrista ja/tai verkkosivustosta
Luo verkkosivusto näyttääksesi sille-g.webp
Suositeltava:
Kuinka tehdä oma WIFI -yhdyskäytävä Arduinon liittämiseksi IP -verkkoon?: 11 vaihetta (kuvilla)
Kuinka tehdä oma WIFI -yhdyskäytävä Arduinon liittämiseksi IP -verkkoon?: Kuten niin monet ihmiset, Arduino on mielestäsi erittäin hyvä ratkaisu kotiautomaation ja robotin tekemiseen! Mutta viestinnän kannalta Arduinot sisältävät vain sarjaliitännät. Työskentelen robotin parissa, joka on yhdistettävä pysyvästi palvelimeen, joka toimii
Yhdistä ESP8266 WIFI -verkkoon: 3 vaihetta
Yhdistä ESP8266 WIFI -verkkoon: Edellisessä artikkelissa keskustelin siitä, miten ESP8266 voidaan tehdä tukiasemaksi. Ja tässä artikkelissa näytän sinulle, kuinka ESP8266 liitetään wifi -verkkoon (jolloin ESP8266 on asiakas). Ennen kuin jatkat opetusohjelmaan, varmista, että olet lisännyt ESP82
Verkkoon yhdistetty digitaalikello: 7 vaihetta
Web Connected Digital Clock: Löytyi 10 dollarin digitaalinen kello Amazonista. Nyt voit muokata sitä saadaksesi aikaa Internetistä
Johdanto ja tilin luominen Platform the Things -verkkoon IoT LoRaWAN: 6 vaihetta
Johdanto ja tilin luominen Platform the Things -verkkoon IoT LoRaWAN: Tässä tilaisuudessa luomme tilin The Things Network -alustalle ja teemme lyhyen johdannon, TTN on hyvä aloite verkoston luomiseksi esineiden internetille tai " IoT ". Things -verkko on toteuttanut LoR: n
NAS (verkkoon liitetty tallennustila) Raspberry Pi: n avulla: 6 vaihetta
NAS (Network Attached Storage) Raspberry Pi: n käyttäminen: Verkkoon liitetty tallennustila tai NAS lyhyesti on todella hyvä laite, jos sinulla on suuri määrä tiedostoja ja tietoja. Minulla on niin paljon työhön liittyvää sisältöä tietokoneen sisäisellä kiintolevyllä, että se ei jätä paljon tilaa henkilökohtaisille tiedoilleni, joten