Orodha ya maudhui:

Jinsi ya kutengeneza WIFI yako mwenyewe Lango la Kuunganisha Arduino yako kwa Mtandao wa IP?: Hatua 11 (na Picha)
Jinsi ya kutengeneza WIFI yako mwenyewe Lango la Kuunganisha Arduino yako kwa Mtandao wa IP?: Hatua 11 (na Picha)

Video: Jinsi ya kutengeneza WIFI yako mwenyewe Lango la Kuunganisha Arduino yako kwa Mtandao wa IP?: Hatua 11 (na Picha)

Video: Jinsi ya kutengeneza WIFI yako mwenyewe Lango la Kuunganisha Arduino yako kwa Mtandao wa IP?: Hatua 11 (na Picha)
Video: CS50 2013 - Week 9 2024, Novemba
Anonim
Jinsi ya Kufanya WIFI yako mwenyewe Lango la Kuunganisha Arduino yako kwenye Mtandao wa IP?
Jinsi ya Kufanya WIFI yako mwenyewe Lango la Kuunganisha Arduino yako kwenye Mtandao wa IP?

Kama watu wengi unafikiria Arduino ni suluhisho nzuri sana kufanya vifaa vya nyumbani na roboti

Lakini katika kipindi cha mawasiliano Arduino huja tu na viungo vya serial.

Ninafanya kazi kwenye roboti ambayo inahitaji kushikamana kabisa na seva inayotumia nambari ya ujasusi bandia. Nilijaribu kutumia mtandao wa RF kama nilivyozoea kufanya kwa kijeshi lakini haina ufanisi wa kutosha. Wakati roboti inahamia siwezi kutumia Ethernet Arduino Shield. Arduino Wifi Shield ni ghali na inaonekana kwangu kuwa muundo wa zamani.

Nilihitaji kitu ambacho kinaweza kubadilishana data kwa njia rahisi na nzuri na seva.

Ndio sababu niliamua kubuni Gateway kulingana na mtawala mdogo sana na mwenye nguvu wa ESP8266

Hapa unaweza kupata jinsi ya kujenga sehemu ya elektroniki na kupakua programu.

Nilitumia lango hili la otomatiki ya Nyumbani na Robotic.

Hii inachukua sehemu ya miundombinu ya nyumbani ya kiotomatiki ambayo unaweza kuangalia hapa

Nilitengeneza nyingine inayoweza kufundishwa ambayo hutumia ngao ya ESP8266 na epuka kutengenezea

Vifaa

Niliandika nyingine inayoweza kufundishwa juu ya mada hii

Hatua ya 1: Inafanyaje Kazi?

Inafanyaje kazi ?
Inafanyaje kazi ?

Gateway inategemea moduli ya ESP8266

Moduli hii imeunganishwa kutoka upande mmoja na kiunga cha serial kutoka upande mwingine hadi mtandao wa IP na Wifi.

Inafanya kama sanduku nyeusi. Pakiti za data zinazokuja kutoka kwa kiunga cha serial hutumwa kwa bandari ya IP / Udp na visivyo hivyo.

Lazima tu uweke usanidi wako mwenyewe (IP, WIFI…) mara ya kwanza utakapokuwa na nguvu kwenye Lango.

Inaweza kuhamisha data mbichi ya ASCII na ya binary (hakuna HTTP, JSON…)

Imeundwa kuunganisha vitu na vifaa vya laini vilivyotengenezwa nyumbani ambavyo vinahitaji uhamishaji wa haraka na mara kwa mara wa pakiti fupi ya data.

Ni rahisi kutumia na Arduino Mega ambayo ina UART zaidi ya moja (Arduino Mega kwa mfano) lakini inaweza kukimbia pia na UNO.

Hatua ya 2: Je! Ni Kazi zipi Kuu?

Hasa ni sanduku jeusi ambalo hubadilisha na kutuma data ya serial kwa pakiti ya UDP kwa njia zote mbili.

Ina 3 LED inayoonyesha hali na trafiki ya Gateway.

Inatoa GPIO ambayo inaweza kutumiwa na Arduino kusubiri Lango kuwa WIFI na IP imeunganishwa.

Inatumia njia 3 tofauti ambazo zimewekwa na ubadilishaji:

  • Njia ya lango ambayo ni hali ya kawaida
  • Hali ya usanidi inayotumika kuweka vigezo
  • Hali ya utatuzi ambayo ni ya hali ya utatuaji

Vigezo vingi vinaweza kubadilishwa ili kutoshea mahitaji yako.

Hatua ya 3: Ujenzi wa Nyenzo

Ujenzi wa Nyenzo
Ujenzi wa Nyenzo

Juu ya Arduino yako utahitaji

  • 1 x Moduli ya ESP8266 - Ninachagua MOD-WIFI-ESP8266-DEV kutoka Olimex ambayo inagharimu karibu euro 5 ambayo ni rahisi kutumia.
  • Chanzo cha nguvu cha 1 x 5v
  • 1 x 3.3v mdhibiti wa nguvu - ninatumia LM1086
  • 1 x 100 microfarad capacitor
  • 1 x ULN2803 APG moduli (inaweza kubadilishwa na 3 x transistors)
  • Vipimo 8 x (3 x 1K, 1 x 2K, 1 x 2.7k, 1x 3.3K, 1x 27K, 1x 33k)
  • 3 x LED (nyekundu, kijani, bluu)
  • 1 x PCB ya mkate
  • waya na viunganisho vingine

Wakati wa hatua za ujenzi tu, utahitaji

  • 1 x FTDI 3.3v kwa usanidi
  • Chuma cha kutengeneza na bati

Kabla ya kuuza ni muhimu kusanikisha vifaa vyote kwenye ubao wa mkate na angalia kila kitu ni sawa.

Hatua ya 4: Wacha tuanze na Elektroniki kwenye ubao wa mkate

Wacha tuanze na Elektroniki kwenye Bodi ya mkate!
Wacha tuanze na Elektroniki kwenye Bodi ya mkate!

Mpangilio wa elektroniki unapatikana katika muundo wa Fritzing

Unaweza kuipakua hapa hatua ya 1:

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

Fanya tu schema kwa kutunza voltage.

Kumbuka kwamba ESP8266 haisaidii voltage ya juu kuliko 3.3v. FTDI lazima iwekwe kwa 3.3v.

Hatua ya 5: Wacha tuende kwenye Programu

Wacha tuende kwenye Programu!
Wacha tuende kwenye Programu!

Wacha tuanze na upande wa Gateway

Niliandika nambari hiyo na Arduino IDE. Kwa hivyo unahitaji ESP8266 kujulikana kama bodi na IDE. Chagua ubao unaofaa na menyu ya Zana / bodi.

Ikiwa hautaona ESP266 yoyote kwenye orodha ambayo inamaanisha kuwa utalazimika kusanikisha ESP8266 Arduino Addon (unaweza kupata hapa utaratibu).

Nambari yote unayohitaji inapatikana kwenye GitHub. Ni wakati wa kuipakua!

Nambari kuu ya Lango iko pale:

Juu ya kiwango cha Arduino na ESP8266 ni pamoja na nambari kuu inahitaji hizi 2 ni pamoja na: LookFoString ambayo hutumiwa kudhibiti masharti na iko:

DhibitiParamEeprom ambayo hutumiwa kusoma na kuhifadhi vigezo katika Eeprom ans iko:

Mara tu unapopata nambari yote ni wakati wa kuipakia kwenye ESP8266. Kwanza unganisha FTDI kwenye bandari ya USB ya kompyuta yako.

Ninapendekeza uangalie unganisho kabla ya kujaribu kupakia.

  • Weka mfuatiliaji wa mfululizo wa Arduino kwenye bandari mpya ya USB.
  • Weka kasi hadi 115200 zote mbili cr nl (kasi ya kutofautisha kwa Olimex)
  • Nguvu kwenye ubao wa mkate (ESP8266 inakuja na programu inayohusika na amri za AT)
  • Tuma "AT" na chombo cha serial.
  • Lazima upate "Sawa" kwa malipo.

Ikiwa sio angalia muunganisho wako na angalia uainishaji wako wa ESP8266.

Ikiwa una "Sawa" wako tayari kupakia nambari hiyo

  • Zima ubao wa mkate, subiri sekunde chache,
  • bonyeza kitufe nyeusi nyeusi cha ESP8266. Ni kawaida kupata takataka kwenye mfuatiliaji wa serial.
  • Bonyeza kwenye upload IDE kama Arduino.
  • Baada ya upakiaji kukamilika kuweka kasi ya serial hadi 38400.

Utaona kitu kama kwenye picha.

Hongera umefanikiwa kupakia nambari!

Hatua ya 6: Wacha Tufanye Usanidi

Wacha Tufanye Usanidi!
Wacha Tufanye Usanidi!

ConfigGPIO lazima iwekwe 1 kwa kuingia katika hali ya usanidi

Mara ya kwanza soma WIFI kwa kuingiza amri: ScanWifi. Utaona orodha ya mtandao uliogunduliwa.

  • Kisha weka SSID yako kwa kuingia "SSID1 = yournetwork"
  • Kisha weka nywila yako kwa kuingiza "PSW1 = neno la siri"
  • Kisha ingiza "SSID = 1" kufafanua mtandao wa sasa
  • Ingiza "Anzisha upya" ili uunganishe Lango la WIFI yako.
  • Unaweza kuthibitisha kuwa una IP kwa kuingia "ShowWifi".
  • LED ya samawati itawashwa na taa nyekundu iking'ara.

Ni wakati wa kufafanua anwani yako ya seva ya IP kwa kuingiza anwani ndogo 4 (seva ambayo itaendesha nambari ya mtihani wa Java). Kwa mfano:

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

Hatua ya mwisho inayohitajika ni kuweka bandari ya usikilizaji wa seva ya UDP kwa kuingia "listenPort = xxxx".

Ingiza "ShowEeprom" ili uangalie kile ulichohifadhi tu kwenye Eeprom

Sasa ingiza GPIO2 chini ili kuacha hali ya usanidi

Lango lako liko tayari kufanya kazi

Kuna amri zingine ambazo unaweza kupata kwenye hati.

Hatua ya 7: Wacha Tufanye Upande wa Arduino

Wacha Tufanye Upande wa Arduino!
Wacha Tufanye Upande wa Arduino!
Wacha Tufanye Upande wa Arduino!
Wacha Tufanye Upande wa Arduino!

Kwanza unganisha Arduino

Ikiwa unayo Mega itakuwa rahisi kuanza nayo. Walakini unaweza kutumia Uno.

Kuangalia kazi yako bora ni kutumia mfano.

Unaweza kuipakua hapo:

Ni pamoja na nambari ya SerialNetwork ambayo iko hapa:

Pakia tu nambari ndani ya Arduino yako.

LED ya kijani inaangaza kila wakati Arduino inapotuma data.

Hatua ya 8: Wacha Tufanye Upande wa Seva

Wacha Tufanye Upande wa Seva!
Wacha Tufanye Upande wa Seva!
Wacha Tufanye Upande wa Seva!
Wacha Tufanye Upande wa Seva!

Mfano wa seva ni programu ya Java ambayo unaweza kupakua hapa:

Endesha tu

Angalia koni ya Java.

Angalia mfuatiliaji wa Arduino.

Arduino tuma pakiti 2 tofauti.

  • Ya kwanza ina pini za dijiti 2 hadi 6 hali.
  • Ya pili ina maadili 2 ya nasibu, kiwango cha voltage ya A0 katika mV na hesabu ya nyongeza.

Programu ya Java

  • chapisha data iliyopokea katika muundo wa hexadecimal
  • jibu aina ya kwanza ya data na thamani ya kuzima / kuzima ili kuwasha / kuzima Arduino LED
  • jibu aina ya pili ya data na hesabu iliyopokelewa na thamani ya nasibu.

Hatua ya 9: Ni Wakati wa Kufanya Kugawanyika

Ni Wakati wa Kufanya Kugawanyika!
Ni Wakati wa Kufanya Kugawanyika!
Ni Wakati wa Kufanya Kugawanyika!
Ni Wakati wa Kufanya Kugawanyika!
Ni Wakati wa Kufanya Kugawanyika!
Ni Wakati wa Kufanya Kugawanyika!

Inafanya kazi kwenye ubao wa mkate!

Ni wakati wa kuifanya iwe imara zaidi kwa sehemu za kutengeneza kwenye PCB

Juu ya kile ulichofanya na ubao wa mkate, lazima uongeze viunganisho 3.

  • C1 1 x siri moja ambayo itatumika kwa kuingia katika hali ya ufuatiliaji wa mtandao.
  • C2 3 x pini moja ambayo itatumika kubadili kati ya hali ya kukimbia na usanidi.
  • C3 6 x pini moja ambayo itatumika kuunganisha Gateway ama kwa Arduino au FTDI.

C1 iliyounganishwa na GPIO2 inapaswa kuwekwa chini ikiwa unataka kuamsha athari za mtandao.

C2 iliyounganishwa na GPIO 4 inaweza kuwekwa katika nafasi 2 tofauti. Moja ambayo imewekwa chini kwa hali ya kawaida ya kukimbia na moja imewekwa kwa 3.3v kwa kuingia katika hali ya usanidi.

Weka vifaa vyote kwenye PCB kulingana na mchoro na baadaye anza kutengeneza ili kupata bidhaa ya mwisho!

Hatua ya 10: Wacha Tufanye Mtihani wa Mwisho

Image
Image

Anza programu ya mtihani wa Java.

Unganisha Arduino.

Nguvu kwenye Lango.

Na angalia kiweko cha Java, mfuatiliaji wa Arduino, Arduino LED na LED za Gateway.

Hatua ya 11: Unaweza Kubadilisha muundo huu na Mahitaji Yako mwenyewe

Kuhusu vifaa

  • Ukichagua nyingine ESP8266 itabidi urekebishe vipimo.
  • Ikiwa unachagua mdhibiti mwingine wa 3.3v lazima itoe zaidi ya 500mA na itabidi ubadilishe capacitor.
  • Unaweza kurekebisha vipinga vya LED ili kurekebisha mwangaza.
  • Unaweza kukandamiza LED zote lakini ninapendekeza kuweka angalau nyekundu.
  • Unaweza kuchukua nafasi ya ULN2803 na transistors 3 (au chini mimi unachagua kutoweka 3 LED).
  • Nilijaribu lakini hapo lazima ifanye kazi na bodi za Arduino 3.3v. Unganisha tu Tx Rx kwa kontakt 3.3v.

Kuhusu usanidi

  • Unaweza kuhifadhi SSID 2 tofauti na ubadilishe
  • Unaweza kurekebisha GPIO iliyotumiwa

Kuhusu programu

Ilipendekeza: