Sisukord:

Kuidas luua oma WIFI -lüüs, et ühendada Arduino IP -võrguga?: 11 sammu (piltidega)
Kuidas luua oma WIFI -lüüs, et ühendada Arduino IP -võrguga?: 11 sammu (piltidega)

Video: Kuidas luua oma WIFI -lüüs, et ühendada Arduino IP -võrguga?: 11 sammu (piltidega)

Video: Kuidas luua oma WIFI -lüüs, et ühendada Arduino IP -võrguga?: 11 sammu (piltidega)
Video: Брата А4 сожрала SCP ГОРКА ПОЖИРАТЕЛЬ? Нашли коробку в горке и открыли! АлояВера Директор ютуба 2024, November
Anonim
Kuidas luua oma WIFI -lüüs, et ühendada Arduino IP -võrguga?
Kuidas luua oma WIFI -lüüs, et ühendada Arduino IP -võrguga?

Nagu paljud inimesed, arvate, et Arduino on väga hea lahendus koduautomaatika ja robotite tegemiseks

Kuid suhtluse mõttes on Arduinodel lihtsalt jadalinkid.

Ma töötan roboti kallal, mis peab olema püsivalt ühendatud tehisintellekti koodi käitava serveriga. Proovisin kasutada raadiosagedusvõrku, nagu olen harjunud tegema domootiliseks, kuid see pole piisavalt tõhus. Roboti liikudes ei saa ma kasutada Etherneti Arduino kilpi. Arduino Wifi Shield on kallid ja mulle tundub vana disain.

Vajasin midagi, mis suudaks serveriga väga lihtsalt ja tõhusalt andmeid vahetada.

Seetõttu otsustasin kavandada Gateway väga odava ja energiatõhusa mikrokontrolleri ESP8266 põhjal

Siit saate teada, kuidas elektroonilist komponenti ehitada ja tarkvara alla laadida.

Ma kasutasin seda lüüsi koduautomaatika ja robotite jaoks.

See hõlmab osa ülemaailmsest koduautomaatika infrastruktuurist, mida saate siit vaadata

Tegin veel ühe juhendatava, mis kasutab ESP8266 kilpi ja väldib jootmist

Tarvikud

Kirjutasin sellel teemal veel ühe juhendi

Samm: kuidas see toimib?

Kuidas see töötab ?
Kuidas see töötab ?

Gateway põhineb ESP8266 moodulil

See moodul on ühelt poolt ühendatud jadaühendusega teisest küljest IP -võrku Wifi abil.

See toimib musta kastina. Jadaühendusest pärinevad andmepaketid saadetakse IP/Udp -porti ja vastupidi.

Gateway esmakordsel sisselülitamisel peate lihtsalt määrama oma konfiguratsiooni (IP, WIFI …).

See võib edastada kas toores ASCII ja kahendandmeid (puudub HTTP, JSON …)

Selle eesmärk on ühendada objekte serveri kodus valmistatud tarkvaraga, mis vajab kiiret ja sagedast lühikese andmepaketi edastamist.

Seda on kõige lihtsam kasutada koos Arduino Mega, millel on rohkem kui üks UART (näiteks Arduino Mega), kuid mida saab kasutada ka UNO -ga.

2. samm: millised on peamised funktsioonid?

Enamasti on see must kast, mis teisendab ja saadab seeriaandmeid UDP -paketti mõlemal viisil.

Sellel on 3 LED -i, mis näitavad Gateway olekut ja liiklust.

See pakub GPIO -d, mida Arduino saab kasutada, et oodata Gateway WIFI- ja IP -ühendust.

See töötab kolmes erinevas režiimis, mis on seadistatud lülititega:

  • Lüüsi režiim, mis on tavaline režiim
  • Parameetrite seadistamiseks kasutatav konfigureerimisrežiim
  • Silumisrežiim, mis on silumisrežiimi jaoks

Enamikku parameetreid saab vastavalt teie vajadustele muuta.

Samm: materjali ehitamine

Materjali ehitus
Materjali ehitus

Arduino peale vajate

  • 1 x ESP8266 moodul-valin Olimexilt MOD-WIFI-ESP8266-DEV, mis maksab umbes 5 eurot ja mida on üsna lihtne kasutada.
  • 1 x 5V toiteallikas
  • 1 x 3.3v võimsuse regulaator - kasutan LM1086
  • 1 x 100 mikrofarad kondensaator
  • 1 x ULN2803 APG moodul (saab asendada 3 x transistoriga)
  • 8 x takistit (3 x 1K, 1 x 2K, 1 x 2,7k, 1x 3,3K, 1x 27K, 1x 33k)
  • 3 x LED (punane, roheline, sinine)
  • 1 x leivaplaadi trükkplaat
  • mõned juhtmed ja pistikud

Ainult ehitusetappide ajal vajate

  • 1 x FTDI 3.3v konfiguratsiooni jaoks
  • Jootekolb ja tina

Enne jootmist on oluline seadistada kõik leivalaua komponendid ja kontrollida, kas kõik on korras.

4. samm: alustame leivalaual elektroonikaga

Alustame elektroonikast leival!
Alustame elektroonikast leival!

Elektrooniline paigutus on saadaval Fritzingi vormingus

Selle saate alla laadida siit, samm 1:

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

Tehke lihtsalt skeemi järgi, hoolitsedes pinge eest.

Pidage meeles, et ESP8266 ei toeta kõrgemat kui 3,3 V pinget. FTDI peab olema seatud väärtusele 3,3 V.

Samm: lähme tarkvara juurde

Läheme tarkvara juurde!
Läheme tarkvara juurde!

Alustame Gateway poolega

Kirjutasin koodi Arduino IDE abil. Nii et teil on vaja ESP8266, et IDE oleks tahvlina tuntud. Valige menüüst Tööriistad / lauad sobiv tahvel.

Kui te ei näe loendis ühtegi ESP266, tähendab see, et peate võib -olla installima ESP8266 Arduino Addoni (protseduuri leiate siit).

Kogu vajalik kood on saadaval GitHubis. On aeg see alla laadida!

Gateway peamine kood on seal:

Lisaks standardile Arduino ja ESP8266 sisaldab põhikoodi, vajavad need 2 järgmist: LookFoString, mida kasutatakse stringidega manipuleerimiseks ja mis on olemas:

Seal on ManageParamEeprom, mida kasutatakse Eepromi ans parameetrite lugemiseks ja salvestamiseks:

Kui olete kogu koodi saanud, on aeg see ESP8266 -sse üles laadida. Kõigepealt ühendage FTDI arvuti USB -porti.

Soovitan enne üleslaadimist kontrollida ühendust.

  • Seadke Arduino jadamonitor uuele USB -pordile.
  • Määrake kiiruseks 115200 mõlemat cr nl (Olimexi vaikekiirus)
  • Lülitage paneel sisse (ESP8266 on kaasas tarkvaraga, mis tegeleb AT -käskudega)
  • Saatke "AT" jadatööriistaga.
  • Vastutasuks peate saama "OK".

Kui ei, siis kontrollige ühendust ja vaadake oma ESP8266 spetsifikatsioone.

Kui olete "OK", olete valmis koodi üles laadima

  • Lülitage leivalaud välja, oodake mõni sekund,
  • vajutage ESP8266 musta mikrolülitit. See on normaalne, kui jadamonitorile satub prügi.
  • Vajutage üleslaadimise IDE -d nagu Arduino puhul.
  • Pärast üleslaadimist seadke seeriakiiruseks 38400.

Näete midagi nagu pildil.

Palju õnne, koodi üleslaadimine õnnestus!

Samm: teeme konfigureerimise

Teeme konfiguratsiooni!
Teeme konfiguratsiooni!

Konfiguratsioonirežiimi sisenemiseks peab configGPIO olema seatud väärtusele 1

Esmalt skannige WIFI, sisestades käsu: ScanWifi. Näete tuvastatud võrgu loendit.

  • Seejärel määrake oma SSID, sisestades "SSID1 = teie võrk"
  • Seejärel määrake oma parool, sisestades "PSW1 = teie parool"
  • Seejärel sisestage praeguse võrgu määratlemiseks "SSID = 1"
  • Sisestage "Restart", et ühendada Gateway oma WIFI -ga.
  • IP -aadressi saamist saate kontrollida, sisestades "ShowWifi".
  • Sinine LED süttib ja punane LED vilgub.

On aeg määratleda oma IP -serveri aadress, sisestades 4 alam -aadressi (server, mis käivitab Java testkoodi). Näiteks:

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

Viimane nõutav samm on UDP -serveri kuulamisporti seadistamine, sisestades "listenPort = xxxx".

Sisestage "ShowEeprom", et kontrollida, mida just Eepromi salvestasite

Nüüd ühendage GPIO2 seadistusrežiimist väljumiseks maandusega

Teie Gateway on tööks valmis

Dokumentatsioonist leiate veel mõned käsud.

Samm: teeme Arduino poole

Teeme Arduino poole!
Teeme Arduino poole!
Teeme Arduino poole!
Teeme Arduino poole!

Kõigepealt ühendage Arduino

Kui teil on Mega, on kõige lihtsam alustada. Sellegipoolest saate Unot kasutada.

Oma töö kontrollimiseks on kõige parem kasutada näidet.

Selle saate alla laadida siit:

See sisaldab SerialNetwork koodi, mis on siin:

Laadige kood lihtsalt Arduino sisse.

Roheline LED vilgub iga kord, kui Arduino andmeid saadab.

8. samm: teeme serveripooli

Teeme serveripoolt!
Teeme serveripoolt!
Teeme serveripoolt!
Teeme serveripoolt!

Serverinäide on Java -programm, mille saate alla laadida siit:

Lihtsalt käivitage see

Vaadake Java konsooli.

Vaadake Arduino monitori.

Arduino saadab 2 erinevat paketti.

  • Esimene sisaldab olekut 2 kuni 6.
  • Teine sisaldab 2 juhuslikku väärtust, pingetase A0 mV -s ja juurdekasv.

Java programm

  • printige vastuvõetud andmed kuueteistkümnendsüsteemis
  • Arduino LED -i sisse- ja väljalülitamiseks vastake esimest tüüpi andmetele juhusliku sisse/välja väärtusega
  • teist tüüpi andmetele vastamiseks saadud arvu ja juhusliku väärtusega.

Samm: on aeg teha jootmist

On aeg teha jootmist!
On aeg teha jootmist!
On aeg teha jootmist!
On aeg teha jootmist!
On aeg teha jootmist!
On aeg teha jootmist!

See töötab leivaplaadil!

On aeg muuta see tugevamaks, jootes osad trükkplaadile

Lisaks sellele, mida tegite leivaplaadiga, peate lisama 3 pistikut.

  • C1 1 x tihvt, mida kasutatakse võrgujälgimisrežiimi sisenemiseks.
  • C2 3 tihvti, mida kasutatakse jooksva ja konfigureerimisrežiimi vahel vahetamiseks.
  • C3 6 x tihvtid, mida kasutatakse lüüsi ühendamiseks kas Arduino või FTDI -ga.

GPIO2 -ga ühendatud C1 tuleb võrgujälgede aktiveerimiseks käsitsi maandada.

GPIO 4 -ga ühendatud C2 saab seada 2 erinevasse asendisse. Üks, mis läks tavapäraseks töörežiimiks ja teine seadistusrežiimi sisenemiseks 3.3v.

Seadke kõik komponendid trükkplaadile vastavalt skeemile ja hakake hiljem jootma, et saada lõpptoode!

Samm: teeme lõpliku testi

Image
Image

Käivitage Java testimisprogramm.

Ühendage Arduino.

Lülitage Gateway sisse.

Ja vaadake Java konsooli, Arduino monitori, Arduino LED -i ja Gateway LED -e.

Samm: saate selle disaini kohandada vastavalt oma vajadustele

Riistvara osas

  • Kui valite mõne muu ESP8266, peate kohanduma spetsifikatsioonidega.
  • Kui valite muu 3,3 V regulaatori, peab see andma üle 500 mA ja peate kondensaatori kohandama.
  • Heleduse reguleerimiseks saate muuta LED -takisteid.
  • Saate kõik LED -id summutada, kuid soovitan vähemalt punast põleda.
  • ULN2803 saate asendada kolme transistoriga (või vähem, kui otsustate 3 LED -i mitte säilitada).
  • Tegin testi, kuid seal peab see töötama 3.3v Arduino plaatidega. Lihtsalt ühendage Tx Rx 3.3v pistikuga.

Mis puutub konfiguratsiooni

  • Saate salvestada 2 erinevat SSID -d ja lülituda
  • Saate muuta kasutatud GPIO -d

Tarkvara osas

Soovitan: