Indholdsfortegnelse:
- Forbrugsvarer
- Trin 1: Hvordan fungerer det?
- Trin 2: Hvad er hovedfunktionerne?
- Trin 3: Byg af materiale
- Trin 4: Lad os starte med elektronikken på brødbrættet
- Trin 5: Lad os gå til softwaren
- Trin 6: Lad os lave konfigurationen
- Trin 7: Lad os gøre Arduino -siden
- Trin 8: Lad os gøre serversiden
- Trin 9: Det er på tide at lave lodning
- Trin 10: Lad os lave den sidste test
- Trin 11: Du kan tilpasse dette design til dine egne krav
Video: Sådan laver du din egen WIFI -gateway til at forbinde din Arduino til IP -netværk?: 11 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
Som så mange mennesker tror du, at Arduino er en meget god løsning til hjemmeautomatisering og robot
Men med hensyn til kommunikation kommer Arduinos bare med serielle links.
Jeg arbejder på en robot, der skal være permanent forbundet med en server, der kører kunstig intelligens -kode. Jeg forsøgte at bruge RF -netværk, som jeg plejede at gøre for domotic, men det er ikke effektivt nok. Når robotten bevæger sig, kan jeg ikke bruge Ethernet Arduino Shield. Arduino Wifi Shield er dyre og forekommer mig at være gammelt design.
Jeg havde brug for noget, der kan udveksle data på en meget enkel og effektiv måde med en server.
Derfor besluttede jeg at designe en Gateway baseret på den meget billige og energieffektive ESP8266 mikrokontroller
Her kan du finde, hvordan du bygger den elektroniske komponent og downloader softwaren.
Jeg brugte denne gateway til hjemmeautomatisering og til robotik.
Dette tager del af en global infrastruktur til hjemmeautomatisering, du kan se her
Jeg lavede en anden instruerbar, der bruger et ESP8266 -skjold og undgår lodning
Forbrugsvarer
Jeg skrev en anden instruerbar om dette emne
Trin 1: Hvordan fungerer det?
Gateway er baseret på et ESP8266 -modul
Dette modul er forbundet fra den ene side med det serielle link fra den anden side til IP -netværket med Wifi.
Det fungerer som en sort boks. Datapakker, der kommer fra det serielle link, sendes til en IP/Udp -port og omvendt.
Du skal bare indstille din egen konfiguration (IP, WIFI …), første gang du tænder for Gateway.
Det kan overføre enten rå ASCII og binære data (ingen HTTP, JSON …)
Det er designet til at forbinde objekter med server hjemmelavede software, der kræver hurtige og hyppige overførsler af korte pakker med data.
Det er nemmest at bruge med Arduino Mega, der har mere end en UART (f.eks. Arduino Mega), men kan også køre med en UNO.
Trin 2: Hvad er hovedfunktionerne?
For det meste er det en sort boks, der konverterer og sender serielle data til UDP -pakken på begge måder.
Den har 3 LED'er, der angiver status og trafik for Gateway.
Det giver en GPIO, der kan bruges af Arduino til at vente på, at Gateway er WIFI og IP tilsluttet.
Det kører i 3 forskellige tilstande, der er indstillet med kontakter:
- Gateway -tilstand, der er den normale tilstand
- Konfigurationstilstand, der bruges til at indstille parametrene
- Fejlfindingstilstand, der er til fejlretningstilstand
De fleste parametre kan ændres, så de passer til dine behov.
Trin 3: Byg af materiale
Oven på din Arduino får du brug for
- 1 x ESP8266-modul-jeg vælger MOD-WIFI-ESP8266-DEV fra Olimex, der koster omkring 5 euro, som er ret let at bruge.
- 1 x 5v strømkilde
- 1 x 3.3v effektregulator - jeg bruger LM1086
- 1 x 100 mikrofarad kondensator
- 1 x ULN2803 APG -modul (kan erstattes af 3 x transistorer)
- 8 x modstande (3 x 1K, 1 x 2K, 1 x 2.7k, 1x 3.3K, 1x 27K, 1x 33k)
- 3 x LED (rød, grøn, blå)
- 1 x Breadboard PCB
- nogle ledninger og stik
Kun under byggetrinnene skal du bruge
- 1 x FTDI 3.3v til konfigurationen
- Loddejern og tin
Inden lodning er det vigtigt at opsætte alle komponenterne på brødbrættet og kontrollere, at alt er ok.
Trin 4: Lad os starte med elektronikken på brødbrættet
Det elektroniske layout er tilgængeligt i Fritzing -format
Du kan downloade det her trin 1:
github.com/cuillerj/Esp8266IPSerialGateway/blob/master/GatewayElectronicStep1.fzz
Gør bare som skema ved at passe på spændingen.
Husk, at ESP8266 ikke understøtter spænding højere end 3.3v. FTDI skal indstilles til 3.3v.
Trin 5: Lad os gå til softwaren
Lad os starte med Gateway -siden
Jeg skrev koden med Arduino IDE. Så du har brug for ESP8266 for at blive kendt som board af IDE. Vælg det relevante bord med menuen Værktøjer / tavler.
Hvis du ikke kan se nogen ESP266 på listen, betyder det, at du muligvis skal installere ESP8266 Arduino Addon (du kan finde proceduren her).
Al den kode, du har brug for, er tilgængelig på GitHub. Det er tid til at downloade det!
Hovedkoden for Gateway er der:
Oven på standard Arduino og ESP8266 inkluderer hovedkoden behov disse 2 inkluderer: LookFoString, der bruges til at manipulere strenge og er der:
ManageParamEeprom, der bruges til at læse og gemme parametre i Eeprom ans er der:
Når du har fået al koden, er det tid til at uploade den til ESP8266. Først tilslut FTDI til en USB -port på din computer.
Jeg foreslår, at du tjekker forbindelsen, før du prøver at uploade.
- Indstil Arduino seriel skærm til den nye USB -port.
- Indstil hastigheden til 115200 begge cr nl (defaut -hastighed for Olimex)
- Tænd for brødbrættet (ESP8266 leveres med software, der beskæftiger sig med AT -kommandoer)
- Send "AT" med det serielle værktøj.
- Du skal få "OK" til gengæld.
Hvis ikke, tjek din forbindelse, og se på dine ESP8266 -specifikationer.
Hvis du har "OK", er du klar til at uploade koden
- Sluk for brødbrættet, vent et par sekunder,
- tryk på den sorte mikroswith i ESP8266. Det er normalt at få noget skrald på den serielle skærm.
- Tryk på upload IDE som for en Arduino.
- Efter upload er indstillet seriel hastighed til 38400.
Du vil se noget som på billedet.
Tillykke med at du har uploadet koden!
Trin 6: Lad os lave konfigurationen
ConfigGPIO skal indstilles til 1 for at komme ind i konfigurationstilstand
Først scannes WIFI ved at indtaste kommandoen: ScanWifi. Du får vist en liste over det registrerede netværk.
- Indstil derefter dit SSID ved at indtaste "SSID1 = ditnetværk"
- Indstil derefter din adgangskode ved at indtaste "PSW1 = dit adgangskode"
- Indtast derefter "SSID = 1" for at definere det aktuelle netværk
- Indtast "Genstart" for at forbinde gatewayen til dit WIFI.
- Du kan bekræfte, at du har en IP ved at indtaste "ShowWifi".
- Den blå LED lyser, og den røde LED blinker.
Det er tid til at definere din IP -serveradresse ved at indtaste de 4 underadresser (server, der kører Java -testkoden). For eksempel:
- "IP1 = 192"
- "IP2 = 168"
- "IP3 = 1"
- "IP4 = 10"
Det sidste nødvendige trin er at indstille UDP -serverens lytteport ved at indtaste "listenPort = xxxx".
Indtast "ShowEeprom" for at kontrollere, hvad du lige har gemt i Eeprom
Tilslut nu GPIO2 til jorden for at forlade konfigurationstilstanden
Din Gateway er klar til at fungere
Der er nogle andre kommandoer, du kan finde i dokumentationen.
Trin 7: Lad os gøre Arduino -siden
Tilslut først Arduino
Hvis du har en Mega, vil det være lettest at starte med. Ikke desto mindre kan du bruge en Uno.
For at kontrollere dit arbejde er det bedst at bruge eksemplet.
Du kan downloade det der:
Den inkluderer SerialNetwork -kode, der er her:
Upload bare koden inde i din Arduino.
Den grønne LED blinker hver gang Arduino sender data.
Trin 8: Lad os gøre serversiden
Servereksemplet er et Java -program, som du kan downloade her:
Bare kør det
Se på Java -konsollen.
Se på Arduino -skærmen.
Arduino sender 2 forskellige pakker.
- Den første indeholder status for de digitale ben 2 til 6.
- Den anden indeholder 2 tilfældige værdier, spændingsniveauet A0 i mV og inkrementeltælling.
Java -programmet
- udskriv de modtagne data i hexadecimalt format
- besvare den første slags data med en tilfældig tænd/sluk -værdi for at tænde/slukke Arduino LED
- besvare den anden slags data med det modtagne antal og en tilfældig værdi.
Trin 9: Det er på tide at lave lodning
Det fungerer på brødbrættet!
Det er på tide at gøre det mere robust ved at lodde dele på et printkort
Ud over det, du gjorde med brødbrættet, skal du tilføje 3 stik.
- C1 1 x pin one, der skal bruges til at komme ind i netværkssporingstilstand.
- C2 3 x pins en, der skal bruges til at skifte mellem løb og konfigurationstilstand.
- C3 6 x pins en, der bruges til at forbinde gatewayen enten til en Arduino eller en FTDI.
C1, der er forbundet til GPIO2, skal jordes manuelt, hvis du vil aktivere netværkssporene.
C2 tilsluttet GPIO 4 kan indstilles i 2 forskellige positioner. En der satte sig til jorden for den normale driftstilstand og en til 3.3v for at komme ind i konfigurationstilstand.
Indstil alle komponenterne på printet i henhold til diagrammet, og begynd derefter at lodde for at få det endelige produkt!
Trin 10: Lad os lave den sidste test
Start Java -testprogrammet.
Tilslut Arduino.
Tænd for gatewayen.
Og se på Java -konsollen, Arduino -skærmen, Arduino LED og Gateway LED'erne.
Trin 11: Du kan tilpasse dette design til dine egne krav
Med hensyn til hardware
- Hvis du vælger en anden ESP8266, skal du tilpasse dig specifikationerne.
- Hvis du vælger en anden 3.3v regulator, skal den levere over 500mA, og du bliver nødt til at tilpasse kondensatoren.
- Du kan ændre LED -modstandene for at justere lysstyrken.
- Du kan undertrykke al LED'en, men jeg anbefaler at holde mindst den røde tændt.
- Du kan erstatte ULN2803 med 3 transistorer (eller mindre jeg vælger ikke at beholde de 3 LED).
- Jeg testede, men der må det fungere med 3.3v Arduino boards. Tilslut bare Tx Rx til 3.3v -stikket.
Angående konfiguration
- Du kan gemme 2 forskellige SSID og skifte
- Du kan ændre den anvendte GPIO
Angående softwaren
Anbefalede:
Sådan laver du din egen Night Vision Device !: 5 trin (med billeder)
Sådan laver du din egen Night Vision Device !: I dette projekt vil jeg vise dig, hvordan du opretter en night vision -enhed. Det består hovedsageligt af et sikkerhedskamera, en lille skærm og et brugerdefineret printkort, der har IR -lysdioder og en LED -driver. Efter at have tændt enheden med en USB Type-C PD powerbank, kan du
Sådan laver du din egen spilkonsol: 6 trin (med billeder)
Sådan laver du din egen spilkonsol: Har du nogensinde ønsket at lave din egen videospilkonsol? En konsol, der er billig, lille, kraftfuld og som endda passer perfekt i lommen? Så i dette projekt vil jeg vise jer, hvordan man laver en spillekonsol ved hjælp af en Raspberry Pi. Men hvad er en Raspberry
Sådan laver du din egen USB -billader til enhver iPod eller andre enheder, der oplades via USB: 10 trin (med billeder)
Sådan laver du din egen USB -billader til enhver iPod eller andre enheder, der oplades via USB: Opret en USB -billader til enhver iPod eller anden enhed, der oplades via USB ved at splitte en biladapter, der udsender 5v og USB Female -stik. Den vigtigste del af dette projekt er at sikre, at output det valgte biladapter er sat på
Sådan laver du din egen Scratchtable: 5 trin (med billeder)
Sådan laver du din egen Scratchtable: Sådan laver du din egen Scratchpad/Pladespiller ved hjælp af en pizzaboks og en optisk mus! ************* Se videoen for en oversigt
Techduino -- Sådan laver du din egen hjemmelavede Arduino Uno R3 --: 9 trin (med billeder)
Techduino || Sådan laver du din egen hjemmelavede Arduino Uno R3 ||: Hvis du er ligesom mig, efter jeg fik min Arduino og udførte en sidste programmering på min første chip, ville jeg trække den af min Arduino Uno R3 og sætte den på mit eget kredsløb. Dette ville også frigøre min Arduino til fremtidige projekter. Efter at have læst mange