Агуулгын хүснэгт:

Arduino -г IP сүлжээнд холбох өөрийн WIFI гарцыг хэрхэн яаж хийх вэ?: 11 алхам (зурагтай)
Arduino -г IP сүлжээнд холбох өөрийн WIFI гарцыг хэрхэн яаж хийх вэ?: 11 алхам (зурагтай)

Видео: Arduino -г IP сүлжээнд холбох өөрийн WIFI гарцыг хэрхэн яаж хийх вэ?: 11 алхам (зурагтай)

Видео: Arduino -г IP сүлжээнд холбох өөрийн WIFI гарцыг хэрхэн яаж хийх вэ?: 11 алхам (зурагтай)
Видео: Arduino - Анхан шатны сургалт элсэлтээ авч эхэллээ 2024, Долдугаар сарын
Anonim
Arduino -г IP сүлжээнд холбох өөрийн WIFI гарцыг хэрхэн яаж хийх вэ?
Arduino -г IP сүлжээнд холбох өөрийн WIFI гарцыг хэрхэн яаж хийх вэ?

Олон хүмүүсийн үзэж байгаагаар Arduino бол гэрийн автоматжуулалт, робот хийх маш сайн шийдэл юм

Гэхдээ харилцааны хувьд Arduinos зүгээр л цуваа холбоосоор ирдэг.

Би хиймэл оюун ухааны кодыг ажиллуулдаг сервертэй байнгын холбоотой байх ёстой робот дээр ажиллаж байна, би дотоод сүлжээнд ашигладаг шигээ RF сүлжээг ашиглахыг оролдсон боловч энэ нь хангалттай үр дүнтэй биш юм. Робот хөдлөхөд би Ethernet Arduino Shield ашиглаж чадахгүй. Arduino Wifi Shield нь үнэтэй бөгөөд надад хуучин загвар шиг санагддаг.

Надад серверт өгөгдөл солилцох маш энгийн бөгөөд үр дүнтэй арга хэрэгтэй байсан.

Тийм ч учраас би маш хямд, эрчим хүчний хэмнэлттэй ESP8266 микроконтроллер дээр суурилсан гарц зохион бүтээхээр шийдсэн юм

Энд та электрон бүрэлдэхүүн хэсгийг хэрхэн бүтээх, програм хангамжийг татаж авах боломжтой.

Би энэ гарцыг гэрийн автоматжуулалт болон роботын хувьд ашигласан.

Энэ бол дэлхийн гэрийн автоматжуулалтын дэд бүтцийн нэг хэсэг бөгөөд эндээс үзэх боломжтой

Би ESP8266 бамбай ашигладаг, гагнахаас зайлсхийдэг өөр нэг зааварчилгаа өгсөн

Хангамж

Би энэ сэдвээр өөр зааварчилгаа бичсэн

Алхам 1: Энэ нь хэрхэн ажилладаг вэ?

Энэ яаж ажилдаг вэ ?
Энэ яаж ажилдаг вэ ?

Гарц нь ESP8266 модуль дээр суурилдаг

Энэ модуль нь нөгөө талаасаа цуваа холбоосоор Wifi ашиглан IP сүлжээнд холбогддог.

Энэ нь хар хайрцагны үүргийг гүйцэтгэдэг. Цуваа холбоосоос ирж буй өгөгдлийн пакетуудыг IP/Udp порт руу илгээдэг.

Та гарцыг асаахад анх удаа өөрийн тохиргоог (IP, WIFI…) тохируулах хэрэгтэй.

Энэ нь түүхий ASCII болон хоёртын өгөгдлийг шилжүүлэх боломжтой (HTTP байхгүй, JSON …)

Энэ нь богино хэмжээний өгөгдлийн багцыг хурдан, байнга дамжуулах шаардлагатай серверийн гэрийн хийсэн програм хангамжтай объектуудыг холбох зориулалттай.

Нэгээс олон UART (жишээ нь Arduino Mega) байдаг боловч НҮБ -тай ажиллах боломжтой Arduino Mega -ийг ашиглахад хамгийн хялбар байдаг.

Алхам 2: Үндсэн функцууд юу вэ?

Ихэнх тохиолдолд энэ нь цуваа өгөгдлийг UDP пакет руу хоёр аргаар хөрвүүлж, илгээдэг хар хайрцаг юм.

Энэ нь гарцны байдал, хөдөлгөөнийг харуулдаг 3 LED -тэй.

Энэ нь гарцыг WIFI болон IP холбогдсон байхыг хүлээхийн тулд Arduino ашиглаж болох GPIO -ийг өгдөг.

Энэ нь унтраалгаар тохируулсан 3 өөр горимд ажилладаг.

  • Gateway горим бол ердийн горим юм
  • Параметрүүдийг тохируулахад ашигладаг тохиргооны горим
  • Дебаг хийх горимд зориулсан дибаг хийх горим

Ихэнх параметрүүдийг таны хэрэгцээнд нийцүүлэн өөрчилж болно.

Алхам 3: Материалыг бүрдүүлэх

Материалын бүтэц
Материалын бүтэц

Arduino -ийн орой дээр танд хэрэгтэй болно

  • 1 x ESP8266 модуль-Би 5 еврогийн үнэтэй Olimex-аас MOD-WIFI-ESP8266-DEV-ийг сонгодог бөгөөд ашиглахад тун хялбар.
  • 1 x 5V тэжээлийн эх үүсвэр
  • 1 x 3.3v цахилгаан зохицуулагч - Би LM1086 ашигладаг
  • 1 x 100 микрофарад конденсатор
  • 1 x ULN2803 APG модуль (3 удаа транзистороор сольж болно)
  • 8 x резистор (3 x 1K, 1 x 2K, 1 x 2.7k, 1x 3.3K, 1x 27K, 1x 33k)
  • 3 x LED (улаан, ногоон, цэнхэр)
  • 1 x Breadboard ПХБ
  • зарим утас ба холбогч

Зөвхөн барилгын үе шатанд танд хэрэгтэй болно

  • Тохиргооны хувьд 1 x FTDI 3.3v
  • Гагнуурын төмөр ба цагаан тугалга

Гагнахаас өмнө бүх бүрэлдэхүүн хэсгүүдийг самбар дээр тохируулж, бүх зүйл зөв эсэхийг шалгах нь чухал юм.

Алхам 4: Breadboard дээрх электрон төхөөрөмжөөс эхэлье

Талхны самбар дээрх электроноос эхэлье!
Талхны самбар дээрх электроноос эхэлье!

Цахим зохион байгуулалтыг Fritzing форматаар авах боломжтой

Та эндээс 1 -р алхамыг татаж авах боломжтой.

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

Зүгээр л хүчдэлийг анхаарч схем болгон хий.

ESP8266 нь 3.3v -ээс дээш хүчдэлийг дэмждэггүй бөгөөд FTDI -ийг 3.3v болгож тохируулах ёстой гэдгийг санаарай.

Алхам 5: Програм хангамж руу явцгаая

Програм хангамж руу явцгаая!
Програм хангамж руу явцгаая!

Gateway талаас эхэлье

Би кодыг Arduino IDE ашиглан бичсэн. Тиймээс IDE -ийн самбар гэж нэрлэгдэхийн тулд танд ESP8266 хэрэгтэй болно. Багаж хэрэгсэл / самбар цэснээс тохирох самбарыг сонгоно уу.

Хэрэв та жагсаалтад ESP266 -ийг олж харахгүй байгаа бол ESP8266 Arduino Addon -ийг суулгах шаардлагатай болж магадгүй гэсэн үг юм (та эндээс процедурыг олох боломжтой).

Танд хэрэгтэй бүх кодыг GitHub дээрээс авах боломжтой. Үүнийг татаж авах цаг боллоо!

Хаалганы гол код нь энд байна:

Стандарт Arduino болон ESP8266 дээр үндсэн 2 код хэрэгтэй бөгөөд үүнд: мөрүүдийг удирдахад ашигладаг LookFoString байгаа бөгөөд

Eeprom ans дахь параметрүүдийг унших, хадгалахад ашигладаг ManageParamEeprom энд байна:

Бүх кодыг авсны дараа үүнийг ESP8266 -д байршуулах цаг болжээ. Эхлээд FTDI -ийг компьютерийн USB порт руу холбоно уу.

Байршуулахаасаа өмнө холболтоо шалгахыг зөвлөж байна.

  • Arduino цуваа мониторыг шинэ USB порт руу тохируулна уу.
  • Хурдыг 115200 болгон тохируулаарай cr nl аль аль нь (Olimex -ийн деформацийн хурд)
  • Талхны самбарыг асаах (ESP8266 нь AT командуудтай ажилладаг програм хангамжтай ирдэг)
  • Цуваа хэрэгслийн тусламжтайгаар "AT" илгээнэ үү.
  • Та хариуд нь "OK" авах ёстой.

Хэрэв та холболтоо шалгаагүй бол ESP8266 техникийн үзүүлэлтүүдийг үзээрэй.

Хэрэв танд "OK" байгаа бол кодыг байршуулахад бэлэн байна

  • Талхны самбарыг унтраагаад хэдэн секунд хүлээ.
  • ESP8266-ийн хар бичил эргэлтийг дарна уу. Цуваа дэлгэц дээр хог хаях нь хэвийн үзэгдэл юм.
  • Arduino -ийн хувьд байршуулах IDE дээр дарна уу.
  • Байршуулж дууссаны дараа цуваа хурдыг 38400 болгож тохируулна.

Та зурган дээрх шиг зүйлийг харах болно.

Кодыг амжилттай байршуулсанд баяр хүргэе!

Алхам 6: Тохиргоог хийцгээе

Тохиргоог хийцгээе!
Тохиргоог хийцгээе!

Тохиргооны горимд орохын тулд configGPIO -ийг 1 болгож тохируулсан байх ёстой

Эхлээд WIFI -ийг сканнердахын тулд ScanWifi командыг оруулна уу. Та илрүүлсэн сүлжээний жагсаалтыг харах болно.

  • Дараа нь "SSID1 = yournetwork" гэж оруулаад SSID -ээ тохируулна уу.
  • Дараа нь "PSW1 = yourpassword" гэж оруулаад нууц үгээ оруулна уу.
  • Дараа нь одоогийн сүлжээг тодорхойлохын тулд "SSID = 1" гэж оруулна уу
  • Гарцыг өөрийн Wi -Fi сүлжээнд холбохын тулд "Дахин эхлүүлэх" гэж оруулна уу.
  • Та "ShowWifi" руу орсноор IP авсан гэдгээ баталгаажуулах боломжтой.
  • Цэнхэр LED асах бөгөөд улаан LED анивчих болно.

4 дэд хаягийг (Java тестийн кодыг ажиллуулах сервер) оруулснаар IP серверийн хаягаа тодорхойлох цаг болжээ. Жишээлбэл:

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

Хамгийн сүүлийн шаардлагатай алхам бол "listenPort = xxxx" гэж оруулаад UDP серверийн сонсох портыг тохируулах явдал юм.

Eeprom дээр хадгалсан зүйлээ шалгахын тулд "ShowEeprom" оруулна уу

Тохиргооны горимоос гарахын тулд GPIO2 -ийг газардуул

Таны гарц ажиллахад бэлэн боллоо

Баримт бичгээс олж болох өөр хэдэн тушаалууд байдаг.

Алхам 7: Arduino талыг хийцгээе

Arduino талыг хийцгээе!
Arduino талыг хийцгээе!
Arduino талыг хийцгээе!
Arduino талыг хийцгээе!

Эхлээд Arduino -г холбоно уу

Хэрэв танд мега байгаа бол үүнийг эхлүүлэх нь хамгийн хялбар байх болно. Гэсэн хэдий ч та Uno ашиглаж болно.

Ажлаа шалгахын тулд жишээг ашиглах нь хамгийн сайн арга юм.

Та эндээс татаж авч болно:

Үүнд энд байгаа SerialNetwork кодыг оруулсан болно:

Кодыг өөрийн Arduino дотор оруулна уу.

Ногоон LED нь Arduino мэдээлэл илгээх бүрт анивчдаг.

Алхам 8: Серверийн талыг хийцгээе

Серверийн талыг хийцгээе!
Серверийн талыг хийцгээе!
Серверийн талыг хийцгээе!
Серверийн талыг хийцгээе!

Серверийн жишээ бол эндээс татаж авах боломжтой Java програм юм:

Зүгээр л ажиллуул

Java консолыг үзнэ үү.

Arduino дэлгэцийг хараарай.

Arduino 2 өөр багц илгээдэг.

  • Эхнийх нь 2 -оос 6 хүртэлх дижитал тээглүүрийг агуулдаг.
  • Хоёр дахь нь санамсаргүй 2 утгыг агуулдаг, mV дахь A0 хүчдэлийн түвшин ба нэмэгдэх тоолуур.

Java програм

  • хүлээн авсан өгөгдлийг арван зургаатын хэлбэрээр хэвлэх
  • Arduino LED -ийг асаах/унтраахын тулд санамсаргүй асаах/унтраах утгатай эхний төрлийн өгөгдөлд хариу өгөх
  • хүлээн авсан тоо, санамсаргүй утгатай хоёр дахь төрлийн өгөгдөлд хариулах.

Алхам 9: Гагнуур хийх цаг болжээ

Гагнуур хийх цаг болжээ!
Гагнуур хийх цаг болжээ!
Гагнуур хийх цаг болжээ!
Гагнуур хийх цаг болжээ!
Гагнуур хийх цаг болжээ!
Гагнуур хийх цаг болжээ!

Энэ нь талхны самбар дээр ажилладаг!

ПХБ дээр эд ангиудыг гагнах замаар илүү бат бөх болгох цаг болжээ

Талхны самбар дээр хийсэн зүйлийнхээ дээр та 3 холбогч нэмэх ёстой.

  • C1 1 х зүү нь сүлжээний мөрдөх горимд ороход хэрэглэгддэг.
  • C2 3 x тээглүүр нь ажиллаж байгаа болон тохиргооны горим хооронд шилжихэд ашиглагддаг.
  • C3 6 х голтой гарцыг Arduino эсвэл FTDI -тэй холбоход ашигладаг.

Хэрэв та сүлжээний мөрийг идэвхжүүлэхийг хүсч байвал GPIO2 -т холбогдсон C1 гараар газардуулагдах ёстой.

GPIO 4 -т холбогдсон C2 -ийг 2 өөр байрлалд тохируулж болно. Нэг нь хэвийн ажиллаж байгаа горимд, нөгөө нь тохиргооны горимд ороход 3.3v хүртэл тохируулагдсан.

ПХБ -ийн бүх бүрэлдэхүүн хэсгүүдийг схемийн дагуу байрлуулаад дараа нь эцсийн бүтээгдэхүүнийг авахын тулд гагнах ажлыг эхлүүлнэ үү!

Алхам 10: Эцсийн шалгалтыг хийцгээе

Image
Image

Java тест програмыг эхлүүлнэ үү.

Arduino -г холбоно уу.

Гарцыг асаах.

Java консол, Arduino монитор, Arduino LED, Gateway LED -ийг үзээрэй.

Алхам 11: Та энэ загварыг өөрийн шаардлагад нийцүүлэн өөрчлөх боломжтой

Тоног төхөөрөмжийн талаар

  • Хэрэв та өөр ESP8266 -ийг сонговол та техникийн үзүүлэлтүүдийг өөрчлөх хэрэгтэй болно.
  • Хэрэв та 3.3V өөр зохицуулагчийг сонговол 500 мА -аас дээш гүйдэл дамжуулах ёстой бөгөөд та конденсаторыг дасан зохицох хэрэгтэй болно.
  • Гэрэлтүүлгийг тохируулахын тулд та LED резисторыг өөрчилж болно.
  • Та бүх LED -ийг дарж болно, гэхдээ би ядаж улаан өнгийг асаахыг зөвлөж байна.
  • Та ULN2803 -ийг 3 транзистороор сольж болно (эсвэл 3 LED -ийг хадгалахгүй байхыг би сонгосон).
  • Би туршилт хийсэн боловч тэнд 3.3V Arduino самбартай ажиллах ёстой. Tx Rx -ийг 3.3v холбогчтой холбоход л хангалттай.

Тохиргооны талаар

  • Та 2 өөр SSID хадгалж, сольж болно
  • Та ашигласан GPIO -г өөрчилж болно

Програм хангамжийн тухайд

Зөвлөмж болгож буй: