Sisällysluettelo:

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?: 11 vaihetta (kuvilla)

Video: Kuinka tehdä oma WIFI -yhdyskäytävä Arduinon liittämiseksi IP -verkkoon?: 11 vaihetta (kuvilla)

Video: Kuinka tehdä oma WIFI -yhdyskäytävä Arduinon liittämiseksi IP -verkkoon?: 11 vaihetta (kuvilla)
Video: Home Automation: How to use 7 Program 0.1s to 9999 minutes Relay Timer XY-LJ02 2024, Marraskuu
Anonim
Kuinka tehdä oma WIFI -yhdyskäytävä Arduinon liittämiseksi IP -verkkoon?
Kuinka tehdä oma WIFI -yhdyskäytävä Arduinon liittämiseksi IP -verkkoon?

Kuten monet ihmiset, luulet Arduinon olevan erittäin hyvä ratkaisu kotiautomaation ja robotin tekemiseen

Mutta viestinnän kannalta Arduinot sisältävät vain sarjalinkkejä.

Työskentelen robotin parissa, joka on yhdistettävä pysyvästi tekoälykoodia käyttävään palvelimeen. Robotin liikkuessa en voi käyttää Ethernet Arduino Shieldiä. Arduino Wifi Shield ovat kalliita ja näyttävät minusta vanhalta suunnittelulta.

Tarvitsin jotain, joka voi vaihtaa tietoja hyvin yksinkertaisella ja tehokkaalla tavalla palvelimen kanssa.

Siksi päätin suunnitella yhdyskäytävän, joka perustuu erittäin halpaan ja tehokkaaseen ESP8266 -mikrokontrolleriin

Täältä löydät ohjeet elektronisen komponentin rakentamiseen ja ohjelmiston lataamiseen.

Käytin tätä yhdyskäytävää kodin automaatioon ja robottiin.

Tämä on osa maailmanlaajuista kodin automaatioinfrastruktuuria, jonka voit katsoa täältä

Tein toisen ohjeen, joka käyttää ESP8266 -suojaa ja välttää juottamista

Tarvikkeet

Kirjoitin aiheesta toisen ohjeen

Vaihe 1: Miten se toimii?

Kuinka se toimii ?
Kuinka se toimii ?

Yhdyskäytävä perustuu ESP8266 -moduuliin

Tämä moduuli on yhdistetty toiselta puolelta sarjaliitännän kanssa toiselta puolelta IP -verkkoon Wifin avulla.

Se toimii mustana laatikkona. Sarjayhteydestä tulevat datapaketit lähetetään IP/Udp -porttiin ja päinvastoin.

Sinun on vain määritettävä oma kokoonpanosi (IP, WIFI …), kun yhdistät Gatewayn ensimmäisen kerran.

Se voi siirtää joko raakaa ASCII- ja binääridataa (ei HTTP, JSON …)

Se on suunniteltu yhdistämään esineitä palvelimen kotitekoisiin ohjelmistoihin, jotka tarvitsevat nopeaa ja toistuvaa lyhyen datapaketin siirtoa.

Se on helpoin käyttää Arduino Megan kanssa, jossa on useampi kuin yksi UART (esimerkiksi Arduino Mega), mutta joka voi toimia myös UNO: n kanssa.

Vaihe 2: Mitkä ovat päätoiminnot?

Useimmiten se on musta laatikko, joka muuntaa ja lähettää sarjatietoja UDP -pakettiin molemmilla tavoilla.

Siinä on 3 LEDiä, jotka ilmaisevat yhdyskäytävän tilan ja liikenteen.

Se tarjoaa GPIO: n, jota Arduino voi käyttää odottamaan yhdyskäytävän WIFI- ja IP -yhteyden.

Se toimii 3 eri tilassa, jotka on asetettu kytkimillä:

  • Yhdyskäytävätila, joka on normaali tila
  • Konfigurointitila, jota käytetään parametrien asettamiseen
  • Virheenkorjaustila, joka on virheenkorjaustilaa varten

Suurinta osaa parametreista voidaan muokata tarpeidesi mukaan.

Vaihe 3: Materiaalin rakentaminen

Materiaalin rakenne
Materiaalin rakenne

Arduinon päällä tarvitset

  • 1 x ESP8266-moduuli-valitsen MOD-WIFI-ESP8266-DEV Olimexilta, joka maksaa noin 5 euroa ja on melko helppokäyttöinen.
  • 1 x 5V virtalähde
  • 1 x 3.3v tehonsäädin - käytän LM1086
  • 1 x 100 mikrofaradin kondensaattori
  • 1 x ULN2803 APG -moduuli (voidaan korvata 3 x transistorilla)
  • 8 x vastusta (3 x 1K, 1 x 2K, 1 x 2,7k, 1x 3,3K, 1x 27K, 1x 33k)
  • 3 x LED (punainen, vihreä, sininen)
  • 1 x leipälevyn piirilevy
  • joitakin johtoja ja liittimiä

Vain rakennusvaiheiden aikana tarvitset

  • 1 x FTDI 3.3v kokoonpanolle
  • Juotin ja tina

Ennen juottamista on tärkeää asentaa kaikki leipälevyn komponentit ja tarkistaa, että kaikki on kunnossa.

Vaihe 4: Aloitetaan leipälaudan elektroniikasta

Aloitetaan elektroniikasta leipälaudalla!
Aloitetaan elektroniikasta leipälaudalla!

Sähköinen asettelu on saatavana Fritzing -muodossa

Voit ladata sen täältä vaihe 1:

github.com/cuillerj/Esp8266IPSerialGateway/blob/master/GatewayElectronicStep1.fzz

Tee vain skeemana huolehtimalla jännitteestä.

Muista, että ESP8266 ei tue yli 3,3 V: n jännitettä. FTDI on asetettava arvoon 3,3 V.

Vaihe 5: Mennään ohjelmistoon

Mennään ohjelmistoon!
Mennään ohjelmistoon!

Aloitetaan yhdyskäytävän puolelta

Kirjoitin koodin Arduino IDE: llä. Joten tarvitset ESP8266: n, jotta IDE tunnistaa sen korttina. Valitse sopiva levy Työkalut / levyt -valikosta.

Jos luettelossa ei ole ESP266: a, sinun on ehkä asennettava ESP8266 Arduino Addon (löydät täältä menettelyn).

Kaikki tarvitsemasi koodit ovat saatavilla GitHubissa. On aika ladata se!

Gatewayn pääkoodi on siellä:

Standardin lisäksi Arduino ja ESP8266 sisältävät pääkoodin, johon nämä kaksi sisältyvät: LookFoString, jota käytetään merkkijonojen manipulointiin ja joka on olemassa:

ManageParamEeprom, jota käytetään parametrien lukemiseen ja tallentamiseen Eeprom ansiin, on siellä:

Kun olet saanut kaiken koodin, on aika ladata se ESP8266 -laitteeseen. Liitä ensin FTDI tietokoneen USB -porttiin.

Suosittelen tarkistamaan yhteyden ennen lataamista.

  • Aseta Arduino -sarjamonitori uuteen USB -porttiin.
  • Aseta nopeudeksi 115200 molemmat cr nl (oletusnopeus Olimexille)
  • Käynnistä leipälevy (ESP8266: n mukana tulee ohjelmisto, joka käsittelee AT -komentoja)
  • Lähetä "AT" sarjatyökalulla.
  • Sinun on saatava "OK" vastineeksi.

Jos et, tarkista yhteys ja katso ESP8266 -määrityksiäsi.

Jos saat "OK", olet valmis lataamaan koodin

  • Sammuta leipälauta, odota muutama sekunti,
  • paina ESP8266: n mustaa mikrokytkintä. On normaalia, että sarjamonitoriin tulee roskia.
  • Paina lataus -IDE: tä kuten Arduinoa varten.
  • Aseta latauksen jälkeen sarjanopeudeksi 38400.

Näet jotain kuten kuvassa.

Onnittelut koodin lataamisesta!

Vaihe 6: Tehdään kokoonpano

Tehdään kokoonpano!
Tehdään kokoonpano!

ConfigGPIO -asetukseksi on asetettava 1, jotta voit siirtyä kokoonpanotilaan

Skannaa ensin WIFI kirjoittamalla komento: ScanWifi. Näet luettelon havaitusta verkosta.

  • Aseta sitten SSID kirjoittamalla "SSID1 = yournetwork"
  • Aseta sitten salasanasi kirjoittamalla "PSW1 = yourpassword"
  • Määritä sitten nykyinen verkko kirjoittamalla "SSID = 1"
  • Kirjoita "Käynnistä uudelleen" yhdistämällä yhdyskäytävä WIFI -verkkoon.
  • Voit vahvistaa IP -osoitteesi syöttämällä "ShowWifi".
  • Sininen LED palaa ja punainen LED vilkkuu.

On aika määrittää IP -palvelimen osoite syöttämällä 4 aliosoitetta (palvelin, joka suorittaa Java -testikoodin). Esimerkiksi:

  • "IP1 = 192"
  • "IP2 = 168"
  • "IP3 = 1"
  • "IP4 = 10"

Viimeinen pakollinen vaihe on asettaa UDP -palvelimen kuunteluportti kirjoittamalla "listenPort = xxxx".

Kirjoita "ShowEeprom" ja tarkista mitä olet juuri tallentanut Eepromiin

Liitä nyt GPIO2 maahan, jotta voit poistua kokoonpanotilasta

Yhdyskäytäväsi on valmis toimimaan

Dokumentaatiossa on joitain muita komentoja.

Vaihe 7: Tehdään Arduinon puoli

Tehdään Arduinon puoli!
Tehdään Arduinon puoli!
Tehdään Arduinon puoli!
Tehdään Arduinon puoli!

Liitä ensin Arduino

Jos sinulla on Mega, se on helpoin aloittaa. Voit kuitenkin käyttää Unoa.

Paras tapa tarkistaa työsi on käyttää esimerkkiä.

Voit ladata sen täältä:

Se sisältää SerialNetwork -koodin, joka on täällä:

Lataa koodi vain Arduinoosi.

Vihreä LED vilkkuu joka kerta, kun Arduino lähettää tietoja.

Vaihe 8: Tehdään palvelinpuoli

Tehdään palvelinpuoli!
Tehdään palvelinpuoli!
Tehdään palvelinpuoli!
Tehdään palvelinpuoli!

Palvelimen esimerkki on Java -ohjelma, jonka voit ladata täältä:

Aja vain

Katso Java -konsolia.

Katsokaa Arduinon näyttöä.

Arduino lähettää 2 erilaista pakettia.

  • Ensimmäinen sisältää digitaalisten nastojen 2-6 tilan.
  • Toinen sisältää kaksi satunnaisarvoa, jännitetaso A0 mV ja inkrementaalilukema.

Java -ohjelma

  • tulostaa vastaanotetut tiedot heksadesimaalimuodossa
  • vastaa ensimmäisen tyyppisiin tietoihin satunnaisella päälle/pois -arvolla Arduino -LED -valon kytkemiseksi päälle/pois
  • vastaa toisen tyyppisiin tietoihin vastaanotetulla lukumäärällä ja satunnaisella arvolla.

Vaihe 9: On aika juottaa

On aika juottaa!
On aika juottaa!
On aika juottaa!
On aika juottaa!
On aika juottaa!
On aika juottaa!

Toimii leipälaudalla!

On aika tehdä siitä vankempi juottamalla osat piirilevylle

Leipälevyn kanssa tekemiesi asioiden lisäksi sinun on lisättävä 3 liitintä.

  • C1 1 x nastainen, jota käytetään verkon jäljitystilaan siirtymiseen.
  • C2 3 x nastat, joita käytetään vaihtamaan käyttö- ja kokoonpanotilan välillä.
  • C3 6 x nastat, joita käytetään yhdistämään yhdyskäytävä joko Arduinoon tai FTDI: hen.

GPIO2: een yhdistetty C1 on maadoitettava manuaalisesti, jos haluat aktivoida verkkojäljet.

GPIO 4: een kytketty C2 voidaan asettaa kahteen eri asentoon. Toinen, joka asetettiin normaaliin käyttötilaan, ja toinen arvoon 3.3v kokoonpanotilaan siirtymiseen.

Aseta kaikki komponentit piirilevyyn kaavion mukaisesti ja aloita sitten juottaminen lopputuotteen saamiseksi!

Vaihe 10: Tehdään viimeinen testi

Image
Image

Käynnistä Java -testausohjelma.

Yhdistä Arduino.

Käynnistä yhdyskäytävä.

Ja katso Java -konsolia, Arduino -näyttöä, Arduino -LEDiä ja Gateway -LED -valoja.

Vaihe 11: Voit mukauttaa tämän mallin omiin vaatimuksiisi

Laitteiston suhteen

  • Jos valitset jonkin muun ESP8266: n, sinun on sopeuduttava teknisiin tietoihin.
  • Jos valitset muun 3,3 V: n säätimen, sen on annettava yli 500 mA ja sinun on mukautettava kondensaattoria.
  • Voit muokata LED -vastuksia kirkkauden säätämiseksi.
  • Voit sammuttaa kaikki LED -valot, mutta suosittelen pitämään vähintään punaisen päällä.
  • Voit korvata ULN2803 3 transistorilla (tai vähemmän, jos päätät olla pitämättä 3 LEDiä).
  • Tein testin, mutta siellä sen on toimittava 3.3v Arduino -levyjen kanssa. Liitä vain Tx Rx 3.3v -liittimeen.

Kokoonpanon suhteen

  • Voit tallentaa 2 eri SSID -tunnusta ja vaihtaa
  • Voit muokata käytettyä GPIO: ta

Mitä tulee ohjelmistoon

Suositeltava: