- Коришћене хардверске компоненте:
- Програмирање модула ЕСП-01 помоћу ЦП2102 УСБ-ТТЛ претварача:
- Веза ЕСП-01 са ЦП2102 модулом:
- Програмирање ЕСП-01 модула за Алека кућну аутоматизацију
- Шема кола
- Подесите апликацију Амазон Алека за кућну аутоматизацију
Паметни звучници попут Амазон Ецхо или Гоогле хоме данас постају популарни и обојица имају способност да интегришу прилагођену вештину или радњу за контролу било ког уређаја помоћу тих паметних звучника. Раније смо направили сопствени паметни звучник користећи Распберри Пи и Алека, а такође смо контролисали и кућне уређаје помоћу овог паметног звучника Распберри Пи.
Кућна аутоматизација постала је врло честа данас и људи користе ИоТ за аутоматизацију свега у свом дому. Овде ћемо у овом упутству користити звучник са стварним Амазон Ецхо тачкама и створити прилагођену вештину за контролу кућних апарата наизменичне струје као што су светла, вентилатори, телевизори и утичнице помоћу Амазон Ецхо дот звучника. Овде ћемо користити Ардуино УНО и ЕСП8266-01 Ви-Фи модул за повезивање Ецхо дот звучника са АЦ уређајима. После овог упутства, моћи ћете да контролишете било који уређај преко Алека.
Коришћене хардверске компоненте:
- Ардуино УНО
- ЕСП-01 модул
- Амазон Алека ецхо дот
- ЦП2102 УСБ-ТТЛ претварач
- Бреадбоард
- 5В релејни модул
- АЦ уређаји
- Скакачи
Програмирање модула ЕСП-01 помоћу ЦП2102 УСБ-ТТЛ претварача:
Овде је ЕСП-01 програмиран помоћу ЦП2102 УСБ-ТТЛ претварача; такође се може програмирати помоћу Ардуино УНО плоче. Овде сам, у мом случају, користио ЦП2102 модул и кораци за то су објашњени у наставку.
ЕСП-01 модул
ЕСП8266 ЕСП-01 је Ви-Фи модул који је веома популаран у дизајнирању ИоТ апликација и користи се за омогућавање микроконтролера попут Ардуино УНО да се повежу са Интернетом. Овај модул је самостални систем на чипу (СОЦ) који може да делује као мали рачунар. Долази са унапред инсталираним АТ фирмвером, па га можемо програмирати помоћу Ардуино ИДЕ-а. Пратећи везу можете сазнати више о ЕСП-01 Ви-Фи примопредајнику и његовом програмирању помоћу Ардуино ИДЕ.
Опис пин-а:
ВЦЦ: Пин за напајање ЕСП-01 који се може напајати са 3.3В једносмерне струје
ГНД: Уземљени референтни клин ЕСП-01
ТКСД: Користи се као пин за УАРТ предајник
РКСД: Користи се као пин УАРТ пријемника
РЕСЕТ: Користи се за ресетовање модула и активан је ЛОВ пин.
ЦХ_ПД: Управо је пин за омогућавање чипа активан ХИГХ пин.
ГПИО0: Овај пин служи у две сврхе. Једна је као улаз / излаз опште намене, а друга је омогућавање режима програмирања ЕСП-01
ГПИО2: Ово је улазно / излазни пин опште намене.
Веза ЕСП-01 са ЦП2102 модулом:
На доњој слици је приказан дијаграм пиноут -а претварача ЦП2102 УСБ-ТТЛ. Повежите ЕСП-01 модул са ЦП2102 УСБ-ТТЛ модулом претварача према доњој табели.
ЕСП-01 модул |
ЦП2102 модул |
ВЦЦ |
3.3В |
ГНД |
ГНД |
РКСД |
ТКСД |
ТКСД |
РКСД |
ЦХ_ПД |
3.3В |
РЕСЕТОВАТИ |
Без конекције |
ГПИО0 |
ГНД |
ГПИО2 |
Без конекције |
Након успешног завршетка горње везе, коло би требало да изгледа отприлике доле:
Затим повежите модул ЦП2102 са нашим рачунаром за програмирање. Пре отпремања кода на ЕСП-01, прво проверите да ли постоји комуникациони порт. За ово идите на старт-> и потражите управитељ уређаја. Затим кликните на ЦОМ-ови и портови. Под овом опцијом требало би да добијемо ЦОМ порт са именом УСБ-ТТЛ претварача попут „ Силицон лабс ЦП21кк УСБ-УАРТ Бридге “ као што је приказано на доњој слици:
Након успешног завршетка горњих корака, отворите Ардуино ИДЕ и одаберите плочу као „ Генерички модул ЕСП8266 “ у менију Алати и изаберите ЦОМ порт који смо добили у претходној фази.
Програмирање ЕСП-01 модула за Алека кућну аутоматизацију
Комплетна шифра дата је на крају овог пројекта. Ево детаљног објашњења кода који се поставља на модул ЕСП-01. Први корак је укључивање свих потребних библиотека. Библиотеку „фаукмоЕСП.х“ можете преузети са везе овде.
#инцлуде #инцлуде
У овом кораку морамо да дефинишемо све акредитиве потребне за повезивање ЕСП-01 са Интернетом. Ажурирајте свој мрежни ССИД и податке о лозинци у програму.
#дефине ССИД "*******" #дефине пасс "*******"
Следеће дефинишите назив уређаја који треба да контролишемо од Алека. У мом случају сам узео називе својих уређаја као „ осветљење спаваће собе “, „ вентилатор спаваће собе “ и „ паметна утичница “.
#дефине девице1 "лампица за спаваћу собу" #дефине девице2 "вентилатор за спаваћу собу" #дефине девице3 "смарт соцкет"
Функција ВиФи.моде користи се за постављање модула ЕСП-01 као режим станице, а функција ВиФи.бегин користи се за повезивање модула ЕСП-01 са Интернетом који узима ССИД и лозинку мреже као своје аргументе.
ВиФи.моде (ВИФИ_СТА); ВиФи.бегин (ссид, пасс);
Следећи део је иницијализација свих функција класе Фаукмо попут креирања сервера, омогућавање броја порта за Алека уређај, омогућавање уређаја итд. Затим додајте све уређаје помоћу фаукмо.аддДевице који смо раније креирали.
фаукмо.цреатеСервер (тачно); фаукмо.сетПорт (80); фаукмо.енабле (тачно); фаукмо.аддДевице (уређај1); фаукмо.аддДевице (уређај2); фаукмо.аддДевице (девице3);
Затим напишите функцију за упоређивање наших гласовних команди са унапред дефинисаним именима уређаја. Ако се наредба подудара, пошаљите знак на Ардуино серијске терминале помоћу Сериал.принт.
фаукмо.онСетСтате ((непотписани цхар уређај_ид, цонст цхар * име_ уређаја, стање боол, непотписана вредност знака) {иф (стрцмп (име_ уређаја, уређај1) == 0) {иф (стање) Сериал.принт ("1"); елсе Сериал.принт ("2");}}
У воид лооп () функцији, функција фаукмо.хандле ће само проверити долазне податке из Алека и предузеће радње користећи функцију онСетстате () .
воид лооп () {фаукмо.хандле (); }
Сада отпремите комплетан код дат на крају на модул ЕСП-01 и осигурајте успешно отпремање.
Ардуино код:
После тога, време је да отпремите код у Ардуино. Код за Ардуино је врло једноставан. Прима само знакове послане са ЕСП-01 модула преко својих УАРТ терминала и упоређује га да би сигнал за укључивање / искључивање послао релеју. Комплетни програм за Ардуино приказан је испод:
цхар подаци; воид сетуп () {Сериал.бегин (115200); пинМоде (7, ИЗЛАЗ); пинМоде (6, ИЗЛАЗ); пинМоде (5, ИЗЛАЗ); дигиталВрите (7, ЛОВ); дигиталВрите (6, ЛОВ); дигиталВрите (5, ЛОВ); } воид лооп () {иф (Сериал.аваилабле ()> 0) {дата = Сериал.реад (); Сериал.принт (подаци); Сериал.принт ("\ н"); иф (подаци == '1') дигиталВрите (7, ВИСОКО); иначе иф (подаци == '2') дигиталВрите (7, ЛОВ); иначе иф (подаци == '3') дигиталВрите (6, ХИГХ); иначе иф (подаци == '4') дигиталВрите (6, ЛОВ); иначе иф (подаци == '5') дигиталВрите (5, ХИГХ); иначе иф (подаци == '6') дигиталВрите (5, ЛОВ); }}
Након успешног отпремања, код на Ардуино, Следеће повежите хардвер у складу са шемама датим у наставку.
Шема кола
Шема кола за аутоматизацију куће помоћу Алека је приказана доле:
Овде смо залепили све компоненте на Перфбоард тако да делује као Ардуино штит.
Слично томе, такође смо изградили релејни модул на Перфбоард:
Подесите апликацију Амазон Алека за кућну аутоматизацију
Након успешног завршетка постављања и кодирања хардвера, сада је време за подешавање апликације Алека за Андроид. Прво, морамо потражити било који паметни уређај у близини путем ове апликације. Да бисте то урадили, укључите свој Алека уређај, а затим отворите своју Алека апликацију и кликните на опцију „ Уређаји “, а затим кликните на знак „+“ који тражи да додате „ уређај “. Затим кликните на „ Додај уређај “, у типу уређаја кликните „ остало “, а затим одаберите откривање уређаја. Тада би ваша апликација Алека требала потражити уређај што може потрајати до 45 секунди.
Напомена: Уређаје такође можемо открити и помоћу гласовне команде „ Алека, откриј уређаје “
Након завршетка откривања уређаја, требали бисте добити 3 нова уређаја по имену која смо навели у коду. У мом случају, то су спаваћа соба светло , спаваћа соба вентилатор, и паметна утичница . Сада је поставка спремна за тестирање, само тестирајте изговарањем „ Алека, Укључи светло у спаваћој соби “, а требало би да вам се врате повратне информације и каже „У реду“, а светло би требало да се укључи. Слично томе, можемо тестирати и све остале наредбе.
Ево како ће изгледати комплетна поставка кућних апарата са Амазон Ецхо тачком:
Комплетна шифра за ЕСП-01 са демонстрацијским видео записом дата је у наставку.