- Шта је ЕСП8266?
- Основе теорије ВиФи-а:
- Типови програмирања са ЕСП8266:
- Хардвер за програмирање модула ЕСП8266:
- Потребни материјали:
- Објашњење кола:
- Грађевински одбор за програмирање ЕСП8266:
Интернет ствари и аутоматизација куће заиста је пречувана тема последњих дана. Сами градимо нешто што може да комуницира са Интернетом и коме се може приступити са било ког места на свету, заиста звучи цоол зар не?
Али чекај!!! Такође звучи компликовано ???….
Учинио то и за мене, мислио сам да ће бити потребно огромно време и вештина за изградњу ствари које могу да комуницирају са Интернетом. НЕ, потпуно сам погрешио захваљујући овом фантастичном модулу названом ЕСП8266 компаније Еспрессиф Системс. Сада можете лако отворити врата за ИоТ пројекте уз помоћ овог модула. Овај јефтини модул мале величине може учинити чуда и заиста је једноставан и лак за употребу, под условом да следимо праве кораке.
Циљ ових водича је да вас упозна с овим модулом ЕСП8266-01 и помогне вам да започнете с њим. Можда сте већ донели свој модул и заглавили сте док сте покушавали да га користите. Тада нисте сами, не брините, многим људима је врло тешко започети рад са модулом јер за то модул не постоје одговарајућа упутства или документација. Ово је разлог за израду овог водича. Следите упутства овде и могли бисте зачас да покренете и покренете свој модул ЕСП8266-01, овде ћемо за програмирање ЕСП8266 користити ФТДИ УСБ то ТТЛ серијски адаптер модул. Погледајте детаљан видео запис на крају водича.
Пре него што уђемо у тему, објаснимо неке основе о модулу ЕСП8266-01.
Шта је ЕСП8266?
Већина људи назива ЕСП8266 као ВИФИ модул, али заправо је то микроконтролер. ЕСП8266 је назив микроконтролера који је развио Еспрессиф Системс, компанија са седиштем из Шангаја. Овај микроконтролер има могућност да обавља активности повезане са ВИФИ-ом, па се зато широко користи као ВИФИ модул.
Доступно је много врста модула ЕСП8266, у распону од ЕСП8266-01 до ЕСП8266-12. Она коју користимо у водичу је ЕСП8266-01 јер је најјефтинија и лако доступна. Међутим, сви ЕСП модули имају само један тип ЕСП процесора, оно што се разликује је само врста преломног бард-а који се користи. Прекидачка плоча ЕСП8266-01 имаће само 2 ГПИО пина, док ће на осталим плочама бити виша.
Комплетна спецификација модула дата је у доњој табели
Напон |
3.3В |
Потрошња струје |
10уА-170мА |
Максимална потрошња струје током трептања |
800мА |
Флеш меморија |
16МБ (512К нормално) |
Процесор |
Тенсилица Л106 32 бита |
Брзина процесора |
80-160МХз |
РАМ |
32К + 80К |
ГПИО |
17 (али већина је мултиплексирана) |
Аналогно-дигитални претварач |
1 (10-бит) |
Максималне ТЦП везе |
5 |
У реду, неколико ствари које би вас могле изненадити у вези са спецификацијом је да, ДА, модул ЕСП8266 долази са АДЦ претварачем и троши јако велику струју од 0,8А током трептања вашег уређаја.
Такође погледајте наше разне занимљиве ИоТ пројекте засноване на ЕСП8266.
Основе теорије ВиФи-а:
Протокол за контролу преноса (ТЦП), Интернет протокол (ИП), кориснички датаграм протокол (УДП), приступна тачка (АП), станица (Ста), идентификатор скупа услуга (ССИД), интерфејс за програмирање апликација (АПИ), веб сервер…..
Да ли вам сви горе наведени појмови имају смисла?
Ако да. Затим, БИНГО можете да прескочите овај део и пређете на следећи одељак.
Ако не. Онда морате бити један од многих ученика електротехнике који су само трепнули кроз већину ових термина баш као и ја кад сам се први пут упознао са свим тим стварима. Дакле, хајде да брзо прођемо кроз све ове термине јер само тада смо могли да уђемо у свет ИОТ-а.
Протокол за контролу преноса (ТЦП):
Већина нас би знала шта ово значи. Да, ово су скуп правила на основу којих Интернет функционише. Пошто ЕСП8266 има могућност постављања ВИФИ веза. На високом нивоу Ви-Фи је могућност учествовања у ТЦП / ИП везама преко бежичне везе. Можете навести свој ЕСП да ради на ТЦП / ИП протоколу или УДП протоколу.
Кориснички протокол датаграма (УДП):
УДП је такође друга врста интернет протокола. Ова врста комуникације је бржа од ТЦП-а, али је мање тачна. Разлог је тај што ТЦП користи потврду током своје комуникације, али УДП не. ТЦП се углавном користи у мрежама где постоји потреба за високом поузданошћу. УДП се користи на местима где брзина има већи приоритет од поузданости. На пример, УДП се користи у видео конференцијама, јер тамо чак и ако се неки пиксели не преносе, то неће толико утицати на квалитет видеа, али је брзина веома важна.
Већина пројеката и кодова ЕСП8266 раде око ТЦП / ИП-а, УДП ће најмање сметати.
Приступна тачка (АП) и станица (СТА):
Једном када започнете рад са ЕСП модулом, често ћете се сусретати са ова два појма. Рецимо да бисте ви и ваш пријатељ желели да сурфате интернетом на својим паметним телефонима, али пошто нема активну интернет везу, одлучили сте да укључите своју жаришну тачку и ваш пријатељ се на њу повеже. Овде је ваш телефон који има интернетску везу приступна тачка (АП), а телефон вашег пријатеља који користи интернет зове се станица (СТА).
ЕСП8266 модул се може користити у три режима, АП режиму, СТА режиму или у оба СТА и АП режиму (комбиновано).
Идентификатор сервисног скупа (ССИД):
Ово је прилично једноставан израз. Готово сви смо користили ВИФИ. Име Ви-Фи мреже назива се њен ССИД. Када имамо више приступних тачака за станицу на коју се треба повезати, станица би требало да зна на коју приступну тачку треба да се повеже, стога свака приступна тачка (АП) добија идентитет који се назива ССИД.
Интерфејс за програмирање апликација (АПИ):
Поједностављено, АПИ је мессенгер који узима ваше захтеве, обрађује их и враћа вашем систему жељени резултат. Већина активности које радимо на Интернету користе АПИ-је, на пример када резервишете лет, извршите куповину на мрежи итд. Свака веб локација вас повезује са АПИ-јем, где се неки део посла попут регистрације, плаћања итд. Обавља за вас тамо.
ЕСП8266 користи АПИ за разговор са светом Интернета. На пример, ако жели да зна време, климу или шта год већ треба да затражи у облику АПИ-ја за одговарајућу веб локацију. Та веб локација ће примити захтев и вратити жељени резултат нашем ЕСП модулу.
Веб сервер:
Веб сервер је нешто што је одговорно за приказивање садржаја веб странице. Сав садржај те одређене веб странице биће учитан на њен веб сервер. Постоје наменски рачунари чији је задатак да се понашају само као веб сервери. Такође можемо да програмирамо наш ЕСП8266 да ради као веб сервер и да се на њега повежемо са било ког места у свету.
Ок, ово је довољно да започнемо. Сада, хајде да се докопамо хардвера.
Типови програмирања са ЕСП8266:
Постоје два начина рада са вашим модулом ЕСП8266. Овај водич ће вам помоћи да започнете са обоје. Један од начина је коришћење АТ команди. Други начин је коришћење Ардуино ИДЕ-а. Хајде да схватимо шта то значи.
Сви модули ЕСП8266 испоручени из фабрике имаће уграђен подразумевани фирмвер (СДК + АПИ). Овај фирмвер ће вам помоћи да програмирате модул ЕСП8266 помоћу АТ команди.
Други начин је директно програмирање модула ЕСП8266 користећи Ардуино ИДЕ (плоча није потребна) и његове библиотеке. Сви пројекти се могу изводити на обе методе. Али, ако почнете да користите Ардуино ИДЕ за програмирање вашег ЕСП8266, можда нећете моћи да користите АТ наредбе јер је подразумевани СДК можда оштећен. У том случају морате да флешујете ЕСП са подразумеваним подешавањима. То ћемо покрити у другом упутству.
Хардвер за програмирање модула ЕСП8266:
ЕСП8266 је 8 терминални модул. Игле из исте су приказане испод.
На жалост, овај модул није прихватљив за плочице и стога га не можемо монтирати директно на нашу плочу. Такође за разлику од Ардуина, он нема уграђени УСБ за серијски управљачки програм; стога морамо да користимо „ФТДИ УСБ за ТТЛ серијски адаптер модул“ да бисмо комуницирали са њим. Уверите се да ФТДИ плоча може радити и на 3.3В; онај који користимо у овом упутству приказан је у наставку.
Сада, као што знамо, требали бисмо напајати ЕСП8266 са 3.3В. Али тренутна потрошња је 0,8А, тако да можда неће радити како се очекивало ако се напаја из наше ФТДИ заштитне плоче. Отуда морамо да изградимо сопствени круг напајања. Овде смо користили ЛМ317 за напајање; детаљи за израду комплетног хардвера дати су у следећим одељцима.
Потребни материјали:
- Перф Боард
- ЕСП8266-01
- ФТДИ одбор за пробијање
- ЛМ317
- 0.1уф кондензатор
- 10уф кондензатор
- Баррел Јацк
- Бергстик мушко и женско
- Тастер
- Повезивање жица
- 12В адаптер за напајање плоче.
Објашњење кола:
Шеме плоче приказане су доле
Неки су можда покушали да напајају ваш ЕСП директно са ФТДИ-ја и покрећу га, али следећи су разлози да направите сопствену плочу са неколико додатних компонената:
- Само неколико ФТДИ плоча може дати довољно струје за ЕСП модул. Неколико ЕСП модула може трошити јаку струју од осталих током трептања. Стога је увек сигурно имати свој извор напајања и биће лакше интегрисати круг напајања на тачку уместо на плочу.
- Увек бисмо требали ресетовати ЕСП модул пре отпремања кода, изградња сопствене плоче ће нам помоћи да модул ресетујемо лако. Помоћу дугмета смо ресетовали ЕСП8266.
- ГПИО0 пин мора бити уземљен приликом програмирања помоћу Ардуина и мора бити остављен слободан када се користе АТ команде, то се лако може променити ако направимо сопствену плочу. Користили смо џампер за пребацивање између режима АТ команди и Ардуино ИДЕ режима програмирања.
- Све програмирање се врши помоћу серијске комуникације , ако користите плочицу, неки лабави терминали могу на пола пута проузроковати грешку и присилити нас да поново активирамо модул.
Кад се то каже, можете бирати између коришћења плоче и израде властите плоче за програмирање модула. Ако и даље желите да користите плочу за спавање, исти круг приказан горе може се направити помоћу ваше плоче. Само изглед ће бити другачији, сва остала упутства у овом упутству примењиваће се исто.
Грађевински одбор за програмирање ЕСП8266:
Дакле, овде градимо плочу за програмирање модула ЕСП8266 који има свој круг напајања за напајање ЕСП8266.
Као што је речено, нашем модулу ће бити потребно око 800мА током програмирања. Стога смо конструисали сопствени модул напајања помоћу регулатора напона ЛМ317 с променљивим напоном, јер је изворна струја ЛМ317 скоро 1,2А. Улазни напон ЛМ317 биће 12В, а даје се помоћу адаптера за зидни носач 12В 2А. Излаз ЛМ317 биће регулисан на 3.3В константно коришћењем отпорника од 220охм и 360охм. Такође проверите наш круг пуњача батерија користећи ЛМ317 да бисте сазнали више о ЛМ317.
Формуле за израчунавање излазног напона ЛМ317 дате су у наставку:
Воут = 1,25 * (1+ (Р2 / Р1))
Где је Р1 220 ома, а Р2 360 ома.
Модул ЕСП8266 повезан је према пиновима приказаним у доњој табели.
Пин Но. |
Име ЕСП пин-а |
Повезан |
1 |
Приземље |
Основа ФТДИ модула |
2 |
ГПИО2 |
Остављен слободан или повезан са берг штапом за будућу употребу |
3 |
ГПИО0 |
Пребаците се за пребацивање између режима програмирања |
4 |
Рк |
Тк модула ФТДИ |
5 |
Тк |
Рк модула ФТДИ |
6 |
ЦХ_ПХ |
3.3В од ЛМ317 |
7 |
Ресетовати |
Тастер за ресетовање модула |
8 |
Вцц |
3.3В од ЛМ317 |
Да бих се лако пребацио између режима АТ команде и режима програмирања Ардуино, ставио сам прекидач (краткоспојник) који ће повући ГПИО 0 на земљу када се користи Ардуино ИДЕ и оставити га да плута када користи АТ команде.
Постоји тастер који ће притиском ресетовати ЕСП модул. То се постиже једноставним повезивањем РСТ пина ЕСП модула са уземљивачем кроз дугме. Сваки пут пре него што програмирамо наш ЕСП модул, требало би да га ресетујемо.
Једном када склопите склоп, доле би требало да изгледа отприлике овако.
Користио сам Перф даску, али такође можете користити и даску ако сте заинтересовани (као што је горе речено). Комплетна верзија и објашњење приказани су у видео снимку испод.
Кад завршите са везама. Укључите плочу без ЕСП и ФТДИ плоча и проверите да ли смо правилно добили 3.3В на прикључцима Вцц и Гроунд на положају ЕСП модула. Сада се уверите да је ваша ФТДИ плоча у режиму од 3,3 В и повежите своје ФТДИ и ЕСП модуле са плочом.
Укључите адаптер и повежите га са плочом, ЕСП модул би требало да светли црвеном бојом.
Затим повежите ФТДИ плочу са рачунаром помоћу мини-УСБ на УСБ кабла и дођите до Управитеља уређаја на рачунару и требали бисте пронаћи ФТДИ плочу повезану са ЦОМ портом, као што је приказано доле:
Сада је време да се ухватимо за програмирање нашег модула ЕСП8266. Можете почети са коришћењем АТ-команди, а затим пређите на коришћење Ардуино ИДЕ-а. Не заборавите да погледате наше друге пројекте засноване на ЕСП8266.