- Потребни материјали:
- Методологија рада:
- Предуслови:
- Рад даљинског управљача наизменичном струјом:
- Шема и објашњење:
- Декодирање даљинских сигнала наизменичном струјом:
- Главни Ардуино програм:
- Инсталирање Андроид апликације:
- Рад мобилног телефона под контролом:
У данашњем модерном свету, где год да кренемо, око нас је пуно електронских уређаја. Али, од свих, постоји само један уређај који лично стално имамо у џепу. Да, то су наши мобилни телефони. Сада су мобилни телефони постали више од уређаја који се користи за комуникацију, то су наше камере, наше мапе, наша куповина и шта још не?
С овом способношћу у нашим рукама, заиста је досадна идеја користити даљинске управљаче за контролу било којих електронских апликација у нашем дому попут ТВ-а, клима уређаја, кућног биоскопа итд. Увек је фрустрирајуће посегнути за даљинским управљачем из удобне удобности нашег кревета или софу. Стога ћемо у овом пројекту направити малу поставку помоћу које можете управљати клима уређајем путем паметног телефона помоћу Блуетоотх-а и Ардуина. Звучи занимљиво, тачно! Направимо један
Потребни материјали:
- Ардуино Мега 2560
- ТСОП (ХС0038)
- ИР Лед
- Било која ЛЕД у боји и 1К отпорник (опционално)
- ХЦ-06
- Бреадбоард
- Повезивање жица
Методологија рада:
Сви даљински управљачи у нашем дому које користимо за управљање ТВ-ом, кућним биоскопом, АЦ-ом итд. Раде уз помоћ ИР Бластера. ИР Бластер није ништа друго него инфрацрвени Лед који би могао Бластер сигнал са понављањем пулсирања; овај сигнал ће читати пријемник у електроничком уређају. За свако различито дугме на даљинском управљачу огласиће се јединствени сигнал који се након очитавања пријемника користи за извршавање одређеног унапред дефинисаног задатка. Ако будемо могли да читамо овај сигнал који долази са даљинског управљача, онда можемо да опонашамо исти сигнал помоћу ИР ЛЕД-а када је то икад потребно за извршење тог одређеног задатка. Претходно смо направили склоп ИР Бластера за универзални ИР даљински управљач и за аутоматску контролу температуре наизменичне струје.
БГА представља ИР пријемник који може да се користи за декодирање сигнала који долази из даљинских управљача. Користићемо овај ТСОП за декодирање свих информација са нашег даљинског управљача и њихово складиштење на Ардуино. Затим, користећи те информације и ИР лед, можемо поново створити ИЦ сигнале од нашег Ардуина кад год је то потребно.
Предуслови:
За овај Ардуино Блуетоотх Цонтроллед АЦ пројекат, уверите се да имате Ардуино Мега, а не било коју другу верзију Ардуина, јер је величина кода велика. Инсталирајте ИР удаљену библиотеку помоћу ове везе за рад са ТСОП-ом и ИР Бластером.
Рад даљинског управљача наизменичном струјом:
Пре него што наставимо са пројектом, одвојите мало времена и приметите како ваш даљински управљач наизменичном струјом ради. АЦ даљински управљачи раде на мало другачији начин у поређењу са ТВ, ДВД ИР даљинским управљачима. На даљинском управљачу може бити само 10-12 тастера, али они ће моћи да пошаљу пуно различитих врста сигнала. То значи да даљински управљач не шаље исти код сваки пут за исто дугме. На пример, када смањите температуру помоћу дугмета за доле да бисте постигли 24 ° Ц (степен Целзијуса), добићете сигнал са скупом података, али када га поново притиснете за подешавање 25 ° Ц, нећете добити исти подаци јер је температура сада 25, а не 24. Слично томе, код за 25 такође ће се разликовати за различите брзине вентилатора, подешавања мировања итд. Дакле, немојмо се петљати око свих опција и само концентрирати само вредности температуре са константном вредношћу за остала подешавања.
Други проблем је количина података која се шаље за свако притискање дугмета, нормални даљински управљачи са словима од 24 бита или 48 бита, али даљински управљач наизменичном струјом може послати до 228 бита, јер сваки сигнал садржи пуно информација као што су Темп, Спеед Фан Време спавања, стил љуљачке итд. То је разлог зашто нам је потребан Ардуино Мега за боље могућности складиштења.
Шема и објашњење:
Срећом, хардверско подешавање овог клима уређаја под контролом мобилног телефона је врло једноставно. Једноставно можете користити плочу за повезивање и успоставити везе како је приказано доле.
Следећа табела се такође може користити за верификацију ваших веза.
С.Но: |
Компонентни пин |
Ардуино Пин |
1 |
ТСОП - Вцц |
5В |
2 |
ТСОП - Гнд |
Гнд |
3 |
ТСОП - Сигнал |
8 |
4 |
ИР лед - катода |
Гнд |
5 |
ИР лед - анода |
9 |
6 |
ХЦ-05 - Вцц |
5В |
7 |
ХЦ05 - Гнд |
Приземље |
8 |
ХЦ05 - Тк |
10 |
9 |
ХЦ05 - Рк |
11 |
Једном када повежете, требало би да изгледа овако некако приказано доле. Користио сам Бреадбоард за сређивање ствари, али можете и директно да повежете све мушке и женске жице да спојите све компоненте
Декодирање даљинских сигнала наизменичном струјом:
Први корак за контролу АЦ-а је употреба ТСОП1738 за декодирање ИЦ кодова даљинског управљача. Успоставите све везе како је приказано на схеми кола и уверите се да сте инсталирали све поменуте библиотеке. Сада отворите пример програма „ ИРрецвДумпВ2 “ који се може наћи у Датотека -> Примери -> ИРремоте -> ИРрецвДумпВ2 .
инт рецвПин = 8; ИРрецв ревоцв (рецвПин);
Пошто је наш ТСОП повезан на пин 8, промените линију број 9 у инт рецПин = 8 као што је приказано горе. Затим отпремите програм на свој Ардуино Мега и отворите серијски монитор.
Усмерите даљински управљач према ТСОП и притисните било које дугме, за свако дугме које притиснете одговарајући сигнал ће читати ТСОП1738, декодирати Ардуино и приказивати на серијском монитору. За сваку промену температуре на даљинском управљачу добићете различите податке. Сачувајте ове податке јер ћемо их користити у нашем главном програму. Ваш серијски монитор ће изгледати отприлике овако, показао сам и Ворд датотеку на којој сам сачувао копиране податке.
Снимак екрана приказује код за подешавање температуре на 26 ° Ц за мој даљински управљач наизменичном струјом. На основу даљинског управљача добићете другачији сет кодова. На сличан начин копирајте кодове за све различите нивое температуре. Можете да проверите све ИР кодове даљинског управљача клима уређаја у Ардуино коду датом на крају овог водича.
Главни Ардуино програм:
Комплетан Главни Ардуино програма може бити на дну ове странице, али не можете да користите исти програм. Морате да промените вредности сигналног кода које смо управо добили на примеру скице. Отворите главни програм на свом Ардуино ИДЕ-у и померите се доле до овог подручја приказаног доле, где морате да замените вредности низа вредностима које сте добили за свој даљински управљач.
Имајте на уму да сам користио 10 низова, од којих смо двојица користили УКЉУЧИВАЊЕ и ИСКЉУЧАВАЊЕ наизменичне струје, док се остатак 8 користи за подешавање различите температуре. На пример, Темп23 се користи за подешавање 23 * Ц на вашем АЦ, па користите одговарајући код у том низу. Једном када то завршите, морате само да отпремите код на свој Ардуино.
За овај пројекат морамо да увеземо две библиотеке. Једна је ИРремоте библиотека коју смо управо додали у Ардуино, а друга је уграђена софтверска серијска библиотека која нам помаже у коришћењу Блуетоотх модула.
#инцлуде
Затим иницијализујемо Блуетоотх модул на пин 10 и 11, а затим користимо објекат назван ирсенд за приступ свим ИЦ функцијама библиотеке.
СофтвареСериал БТ_модуле (10, 11); // РКС, ТКС ИРсенд ирсенд;
Следе врло важне линије кода. Овде су присутне информације за контролу АЦ. Доље приказани је за мој даљински управљач наизменичном струјом, а свој сте требали добити у претходном кораку.
Следеће унутар функције подешавања празнине , иницијализујемо две серијске комуникације. Један је Блуетоотх са брзином од 9600 бауд, а други је серијски монитор са брзином од 57600 бауд.
воид сетуп () {БТ_модуле.бегин (9600); // БТ ради на 9600 Сериал.бегин (57600); // Серијски монитор, радни син 57600}
Унутар наше празнине петље (бесконачне петље), проверавамо да ли Блуетоотх модул нешто прима. Ако се нешто прими, те податке чувамо у променљивој БлуетоотхДата .
вхиле (БТ_модуле.аваилабле ()) // Ако долазе подаци {БлуетоотхДата = БТ_модуле.реад (); // прочитајте и сачувајте Сериал.принтлн (БлуетоотхДата); // исписати на серијски ради тестирања}
Информације које прими Блуетоотх засниваће се на дугмету притиснутом на нашој Андроид апликацији коју ћемо инсталирати у следећем кораку. Једном када примимо информације, само морамо покренути одговарајући ИР код као у наставку
иф (БлуетоотхДата == '2') {ирсенд.сендРав (Темп23, сизеоф (Темп23) / сизеоф (Темп23), кхз); делаи (2000); // Пошаљите сигнал за подешавање температуре 23Ц}
Овде ако примимо код „2“ морамо подесити температуру на 23 ° Ц. Слично имамо и код од 0 до 9 за обављање свих основних контролних функција АЦ. На крају ове странице можете се обратити комплетном ардуино коду.
Инсталирање Андроид апликације:
Последњи корак Клима уређаја којим управља паметни телефон је инсталирање Андроид апликације. Андроид апликација за овај пројекат креирана је помоћу Обраде Андроид режима. Обрада је одличан алат за стварање.ЕКСЕ датотека или АПК датотека за ваше уграђене пројекте. То је платформа отвореног кода баш као и Ардуино и стога је потпуно бесплатна за преузимање.
Ако не желите да се превише удубите у то, једноставно можете преузети АПК датотеку одавде унутар зип датотеке и инсталирати је директно на свој мобилни телефон. Отворите апликацију и добићете екран као што је приказано доле након чега можете да пређете на следећи корак и уживате у раду са пројектом. Али ако желите да прилагодите програм апликације како би га прилагодио вашим потребама, можете прочитати даље.
Комплетан програм фајл за прераду код може преузети одавде. Овај Зип ће имати код и извор слике помоћу којих апликација ради. Након отварања кода можете прилагодити следеће редове како бисте га прилагодили својим потребама.
Као што је раније речено, обрада је слична Ардуину. Дакле, такође има функције за воид сетуп и воид лооп (овде цртање) функције. Унутар функције за подешавање празнина, наложићемо Блуетоотх телефону да се повеже са Блуетоотх-ом Ардуино. Моје име уређаја овде је „ХЦ-05“, тако да ће бити моја линија кода
бт.старт (); // почињемо да слушамо БТ везе бт.гетПаиредДевицеНамес (); бт.цоннецтТоДевицеБиНаме ("ХЦ-05"); // Повежите се са нашим блуетоотх модулом ХЦ-06
Следеће унутар функција лоад_буттонс () можете нацртати онолико дугмади колико желите. Нацртао сам 10 дугмади као што је приказано у апликацији. Након тога имамо функцију реад_буттонс () која се користи за откривање притиснутог дугмета. Свако дугме има одређену боју, па када корисник додирне екран, проверавамо коју је боју додирнуо и утврђујемо које је дугме додирнуо. Пример кода за креирање дугмета и одабир на основу боје приказан је испод
попуни (255,145,3); рецт (ширина / 2-ширина / 4, висина / 2, ширина / 4, висина / 12); испунити (255); текст ("25Ц", ширина / 2-ширина / 4, висина / 2); // дугме 5 иф (цолор_вал == - 13589993) {бајтни подаци = {'0'}; бт.броадцаст (подаци);}
Ред „бајтни подаци = {'0'};“ је врло важна линија. Овде одлучујемо који код треба послати Ардуину преко Блуетоотх-а. Овде ако се притисне ово дугме, с Блуетоотх-а се шаље знак „0“ на Ардуино. Слично томе, можемо послати различит знак за различите тастере. Затим се ови ликови могу упоређивати на Ардуино страни и предузимати одговарајуће радње.
Само напред и петљајте око кода, ако сумњате да ме контактирате путем одељка за коментаре и потрудићу се да вам помогнем.
Рад мобилног телефона под контролом:
Када будете спремни са својим хардвером, Ардуино кодом и андроид апликацијама, време је да уживате у резултатима. Отпремите Ардуино код на свој хардвер и поставите га окренутим према АЦ. Сада отворите андроид апликацију на свом мобилном телефону, ако све ради како се очекивало, требало би да видите „ Цоннецтед то: девице_наме (неки код) “ као што је приказано испод
Сада само притисните било које дугме на Андроид апликацији и то би требало да покрене одговарајућу акцију на АЦ као да користите даљински управљач. Можете да додате колико год желите дугмета тако што ћете изменити код, а такође чак и аутоматизовати свој АЦ на основу ваше собне температуре или присуства. Проверите комплетан Ардуино код и видео испод.
Надам се да вам се свидео пројекат и разумели сте концепт који стоји иза њега. Као и увек ако имате било каквих проблема у обављању овог посла, форуме можете користити за постављање питања и њихово решавање.
АПК датотеку за инсталирање Андроид апликације можете преузети овде.