
Gabriel Brooks
0
2616
76
Prije malo vremena pokazao sam vam kako postaviti internetski sustav kontrole za svoj Arduino Kako postaviti Arduino web kontrolu bez ethernet štita Kako postaviti Arduino web kontrolu bez ethernet štita Posljednjih nekoliko tjedana predao sam kontrolu nad osvjetljenje raspoloženja u mom studiju gledateljima tijekom live emisije Technophilia Podcast - rezultati toga mogu se vidjeti u… - ali ona je morala ostati povezana s računalom putem USB-a da bi održala internetsku vezu. Ako ipak imate Ethernet štit, to nije potrebno. Danas ćemo gledati postavljanje Arduinova kao osnovnog web poslužitelja kako bismo mogli ugostiti vlastitu web lokaciju za upravljanje uređajima.
Trebat će vam:
- Klon Arduinoa ili Arduino-a, kako je ovdje detaljnije, ne trošite novac na Arduino - izgradite svoj vlastiti za mnogo manje Ne trošite novac na Arduino - izgradite svoj vlastiti za mnogo manje, volim svoje Arduinose. U svakom trenutku imam prilično puno projekata u pokretu - izrada prototipa s njima je jednostavno tako jednostavna. Ali ponekad želim održati projekt funkcionalnim bez kupovine ...
- Ethernet štit (~ 35 USD) - pobrinite se da dobijete verziju koja odgovara vašem Arduinu, jer nisu sve kompatibilne
- Rezervni priključak na usmjerivaču ili sklopci i Ethernet kabel
- Primjer WebServera naveden u Arduino aplikaciji
Postavljanje
Ethernet štit koristi igle 10 do 13 za kontrolu mrežne veze, stoga ih izostavite iz vašeg projekta; pin 4 koristi se i za SD karticu, ali to danas nećemo koristiti.
Prvo stvari prvo - otvorite Datoteka->Primjeri->Ethernet->webserver koje se pružaju u Arduino IDE. Pronađite linije koje se odnose na MAC i IP adresu.
Na kutiji je pronađena MAC adresa za moju - vaša je možda na samom štitu. Prilagodite prvi redak vrijednosti - morate napustiti prethodni 0x malo ipak. Tehnički gledano, zapravo nije važno što ovdje postavljate sve dok na podmreži nemate sukobljene vrijednosti - ali čak i tada, proizvođač je to adresu dodijelio, tako da bismo se vjerojatno trebali držati toga. Samo znajte da ako to pogriješite, i dalje će raditi.
Sljedeća je IP adresa. Želimo određenu fiksnu adresu kako bismo mogli ispravno postaviti prosljeđivanje vrata - štit je sposoban dobiti adresu od DHCP-a, ali to je korisno samo ako će se koristiti samo kao klijent, a ne kao poslužitelj. Popunite IP adresu koja se ne koristi i pamti na vašoj lokalnoj mreži, vašem usmjerivaču IP-u i 255.255.255.0 (podmreža). Ako vam ništa od toga nema smisla, pročitajte naš besplatni i temeljni vodič za mrežno umrežavanje Sve što trebate znati o mrežnom kućanstvu Sve što trebate znati o mrežnom povezivanju u kući Postavljanje kućne mreže nije tako teško kao što mislite da jest. .
Prosljeđivanje luka
Uredite redak koji kaže EthernetServer poslužitelj (broj), i promijenite broj u 8081. Ovo će postaviti naš poslužitelj da sluša na portalu 8081 u slučaju da vaš ISP blokira mrežni promet na tradicionalnom priključku 80.
Učitajte demonstraciju u ovom trenutku i testirajte ga s lokalnog stroja. Naravno da ćete morati priključiti i Ethernet kabel. Držite USB priključen previše, koliko nam treba za napajanje - kasnije ga možete zamijeniti 9V napajanjem, ali mi još uvijek testiramo.
Noob-tip: ako ste dobili ovu pogrešku, to znači da ste pogrešno stavili glavni grad O umjesto a 0 u MAC adresnom području. Nema O u heks-vrijednostima! Ako ste stvarno novi, možda bi bilo vrijedno pogledati naš početni Arduino vodič!
Za pristup Arduinu upišite adresu i broj porta izravno iz preglednika.
Trebali biste vidjeti nešto takvo - do sada tako dobro. Nažalost, to je dostupno samo na lokalna mreža sada, pa prijeđite na stranicu s konfiguracijom porta usmjerivača da biste postavili preusmjeravanje s porta 8081 na isti port na vašem Arduinovom IP-u (Pogledajte: Što je prosljeđivanje porta? Što je prosljeđivanje porta i kako mi može pomoći? [MakeUseOf objašnjava] Što je prosljeđivanje porta i kako mi može pomoći? [MakeUseOf objašnjava] Plačete li malo unutra kad vam netko kaže da postoji problem s prosljeđivanjem luka i da zbog toga vaša sjajna nova aplikacija neće raditi? Xbox vam neće dopuštati igranje igrica, torrent vas odbija ... )
Testirajte ovo s mobilnog internetskog uređaja 3G s isključenom Wifi; ne zaboravite koristiti svoje javna IP adresa, a ne adresa vaše lokalne mreže. Vaš usmjerivač trebao bi vam to moći reći ili samo pitajte Google “što je moj ip“.
Razumijevanje rezultata
Stranica koja se prikazuje u demonstraciji čita vrijednosti s analognih pinova - ali s obzirom da tamo nema ništa povezano, dobit ćete gluposti. Pokušajte spojiti svjetlosni senzor (foto otpornik) na ulaz A0 i +5v, s 10k otpornik također na A0 i GND (ovo je razdjelnik napona, jer analogni igle mogu očitavati samo napon, a ne otpor) samo da potvrdimo da poslužitelj zapravo čita vrijednosti. Primijetite da se, kada se intenzitet svjetlosti mijenja, vrijednosti na ostalim iglicama zapravo također mijenjaju - to je zato što su sve nepovezane.
Interactive
Čitanje ovih vrijednosti dobro je i dobro, ali skok u to kontroliranje Arduino je odavde skok i izvan okvira ovog udžbenika. Umjesto da izmislite kotač, usmjerit ću vas prema korisniku Arduino foruma koji je napisao osnovni API za interakciju s digitalnim iglicama. Koristeći ovaj kôd (modificirao sam ga da radi s najnovijom Ethernet bibliotekom), spojite dugački vod LED (anode) na pin 8, a kratki kabel na pin 7 (s prikladnim otpornikom). Tada možete koristiti URL obrasce http: // ip: luka / digitalWrite / 8/1 da uključite LED i http: // ip: luka / digitalWrite / 8/0 da biste ga isključili i pročitali analogne vrijednosti pomoću analogRead / 0.
Ovaj primjer iz bildra također će vas naučiti kako kontrolirati redoslijed LED-ova čitanjem GET zahtjeva.
Možda ćete također htjeti provjeriti ovaj primjer koji prikazuje obrazac na stranici za kontrolu treptajućeg RGB LED-a, iako biste ga lako mogli prilagoditi za RGB traku poput projekta dinamičke ambijentalne rasvjete. Izgradite vlastitu dinamičku ambijentalnu rasvjetu za gradnju Media Center Vaša vlastita dinamička ambijentalna rasvjeta za medijski centar Ako gledate puno filmova na računalu ili medijskom centru, siguran sam da ste se suočili s dilemom rasvjete; potpuno isključite sva svjetla? Držite li ih u punoj eksploziji? Ili ... malo smo gradili natrag.
Pa, zabavljao sam ih gradeći, pa se nadam da ste i vi to napravili. Ako ste knjižnicu učinili jednostavnom za posluživanje stranica i kontrola, obratite se komentarima.