- Компоненте потребне
- Шема Блуетоотх модула ЕСП8266 ХЦ-05
- ХЦ-05 Блуетоотх модул
- Коришћење серијског Блуетоотх терминала (Андроид апликација)
- Програмирање НодеМЦУ ЕСП8266 за повезивање са Блуетоотх-ом
Блуетоотх је данас постао саставни део дигиталних уређаја и уграђен је у већину уређаја као што су паметни телефон, лаптоп, рачунар, камера, сатови, фитнес бендови и многи други. Блуетоотх је одувек доминирао протоколом у бежичној комуникацији од када је откривен. Иако је Блуетоотх технологија у основи систем за замену кабла, али такође користи универзални мост ка постојећим мрежама података и ад хоц механизам повезивања за број уређаја у различитим конфигурацијама. Користили смо Блуетоотх модул ХЦ05 и ХЦ06 са многим другим микроконтролерима како бисмо им омогућили бежичну комуникацију:
- Повезивање Блуетоотх ХЦ-05 са СТМ32Ф103Ц8 плавом пилулом: ЛЕД за управљање
- Повезивање ХЦ-05 Блуетоотх модула са АВР микроконтролером
- Робот под контролом Андроид-а помоћу микроконтролера 8051
- Контрола Распберри Пи ГПИО помоћу Андроид апликације преко Блуетоотх-а
- Аутомобил под контролом Блуетоотх-а који користи Ардуино
Данас ћемо повезати ХЦ-05 Блуетоотх модул са популарним Ви-Фи модулом ЕСП8266 и управљати ЛЕД бежично слањем команди преко Блуетоотх-а. Ову ЛЕД може заменити релеј и уређај наизменичне струје за изградњу апликације за аутоматизацију куће.
Компоненте потребне
Хардвер:
- НодеМЦУ ЕСП8266
- ХЦ-05 Блуетоотх модул
Софтвер:
- Ардуино ИДЕ
- Серијски Блуетоотх терминал (апликација за Андроид): за надгледање Блуетоотх података на паметном телефону.
Шема Блуетоотх модула ЕСП8266 ХЦ-05
Шема кола за повезивање Блуетоотх модула ХЦ-05 са НодеМЦУ ЕСП8266 је врло једноставна и приказана је доле:
Спољни Блуетоотх модул је потребан код ЕСП8266, јер нема уграђени Блуетоотх попут ЕСП32. ЕСП32 има уграђени Блуетоотх Лов Енерги (БЛЕ) и Цлассиц Блуетоотх, на којима смо претходно обрадили неколико водича:
- ЕСП32 БЛЕ сервер - ГАТТ услуга за индикацију нивоа батерије
- ЕСП32 БЛЕ клијент - повезивање на фитнес траку за покретање сијалице
- Како се користи серијски Блуетоотх у ЕСП32
ХЦ-05 Блуетоотх модул
ХЦ-05 је серијски Блуетоотх модул. Може се конфигурисати помоћу АТ команди. Може радити у три различите конфигурације (Мастер, Славе, Лооп бацк). У нашем пројекту ћемо га користити као роба. Карактеристике ХЦ-05 модула укључују,
- Типична осетљивост од -80дБм.
- Подразумевана брзина преноса: 9600 бпс, 8 битова података, 1 зауставни бит, без паритета.
- Аутоматско упаривање пин кода: подразумевани пин код „1234“ или „0000“.
- Има 6 пинова.
- Вцц и Гнд пинови се користе за напајање ХЦ-05.
- Тк и Рк пинови се користе за комуникацију са микроконтролером.
- Омогућите пин за активирање ХЦ-05 модула. када је низак, модул је онемогућен
- Државни пин делује индикатор статуса. Када није упарен / повезан са било којим другим Блуетоотх уређајем, ЛЕД непрекидно трепће. Када је повезан / упарен са било којим другим Блуетоотх уређајем, ЛЕД трепће са константним кашњењем од 2 секунде.
Да бисте сазнали више о Блуетоотх модулу, прођите кроз друге наше пројекте повезане са Блуетоотхом.
Коришћење серијског Блуетоотх терминала (Андроид апликација)
Коришћење ове апликације је врло једноставно и захтева неколико корака. Снимке екрана су дате у наставку са корацима. Само упарите ХЦ-05 са паметним телефоном. Подразумевани код је „0000“ или „1234“, али углавном ради „1234“.
- Прво преузмите и инсталирајте апликацију, а затим идите на уређаје да бисте пронашли ХЦ-05 модул. Изаберите модул ХЦ-05 који се претражује у апликацији. Ако није пронађен, проверите да ли је ХЦ-05 правилно напајан.
- Након клика на ХЦ-05 успоставиће се веза. Сада откуцајте било коју поруку у оквир за поруку и пошаљите је. Штампаће се на Ардуино серијском монитору.
Програмирање НодеМЦУ ЕСП8266 за повезивање са Блуетоотх-ом
За програмирање НодеМЦУ ЕСП8266 помоћу АрдуиноИДЕ, само га прикључите на преносни рачунар или рачунар помоћу микро УСБ кабла и отворите Ардуино ИДЕ. За ову лекцију користиће се серијски хардвер и софтверска серија. Серијски хардвер ће се користити за читање и писање података на Ардуино серијски монитор, а софтверски серијски ће се користити за комуникацију са ХЦ-05. Као и увек комплетан код и демо видео је дат на крају упутства.
У почетку укључите серијску библиотеку софтвера јер ће се користити у овом упутству.
#инцлуде
Дефинишите РКС и ТКС пин за серијску комуникацију софтвера, такође дефинишите лед пин повезан на НодеМЦУ. Користимо интерну ЛЕД диоду НодеМЦУ која је на Пин Д4.
СофтвареСериал бтСериал (Д2, Д3); // РКС, инт лед = Д4;
Покрените серијски софтвер и хардвер брзином од 9600 бауд-ова. Подесите Лед Пин као излаз. Одштампајте неку поруку добродошлице и отклањања грешака.
Сериал.бегин (9600); бтСериал.бегин (9600); пинМоде (Д4, ИЗЛАЗ); Сериал.принтлн ("Започето…");
Прво прочитајте са Блуетоотх модула и дефинишите случај да ако Блуетоотх модул прими „Б“ са телефона, а затим почните трептати Лед повезаним на Д4 НодеМЦУ, уколико добије „С“, а затим престаните да трепћете. Овде не користимо делаи () . Али Ардуино 'миллис' ће се користити да не омета перформансе Ардуина.
иф (бтСериал.аваилабле ()> 0) { цхар подаци = бтСериал.реад (); прекидач (подаци) { случај 'Б': ледБ = "трептај"; пауза; случај 'С': ледБ = "стоп"; пауза; подразумевано: бреак; } }
Милис се дефинише и постави кашњење на 500мс, односно лед ће трептати након сваких 500мс. Такође можете да конфигуришете лед кашњење променом вредности „интервал“. ЛЕД стање ће се пребацити.
унсигнед лонг цуррентМиллис = миллис ();
иф (ледБ == "блинк") { Сериал.принтлн ("трептање започето"); иф (цуррентМиллис - превиоусМиллис> = интервал) { превиоусМиллис = цуррентМиллис; ако (ледСтате == ЛОВ) { ледСтате = ХИГХ; } елсе { ледСтате = ЛОВ; } дигиталВрите (лед, ледСтате); } }
Ово ће завршити програмирање НодеМЦУ да трепће ЛЕД бежично користећи Блуетоотх. Такође можете да промените програм тако да обавља различите задатке са ЛЕД-ом, попут ЛЕД-а који може да се замени релејем са уређајем наизменичне струје да би се направио пројекат кућне аутоматизације Блуетоотх-а. У случају било какве сумње или предлога, контактирајте наш форум или коментар испод.