Свима нам је позната реч „аутоматизација“, где је људска интеракција минимална и ствари се могу контролисати аутоматски или даљински. Кућна аутоматизација је веома популаран и захтеван концепт на пољу електронике, а такође улажемо све напоре да овај концепт постане лако разумљив и управљан као Електронски пројекти. Претходно смо развили неколико врста пројеката аутоматизације куће са функционалним видеом и кодом, молимо проверите:
- ДТМФ заснована на кућној аутоматизацији
- ГСМ аутоматизована кућа користећи Ардуино
- Аутоматизација куће помоћу ПЦ-а помоћу Ардуина
- Блуетоотх аутоматизована кућна аутоматизација помоћу 8051
- ИР даљинска контрола кућне аутоматизације помоћу Ардуина
И у овом пројекту ћемо изградити наш следећи пројекат аутоматизације куће користећи МАТЛАБ и Ардуино, који је систем за аутоматизацију куће заснован на ГУИ-у који користи Ардуино и МАТЛАБ
Компоненте:
- Ардуино УНО
- УСБ кабл
- УЛН2003
- Релеј 5 волти
- Сијалица са држачем
- Повезивање жица
- Лап топ
- Напајање
- ПВТ
Објашњење:
У овом пројекту користимо МАТЛАБ са Ардуином за контролу кућних апарата, путем графичког корисничког интерфејса у рачунару. Овде смо користили жичану комуникацију за слање података са рачунара (МАТЛАБ) у Ардуино. Са рачунарске стране, користили смо ГУИ у МАТЛАБ-у да бисмо креирали неке тастере за контролу кућних апарата. За комуникацију између Ардуина и МАТЛАБ-а, прво морамо да инсталирамо „ МАТЛАБ и подршку за Симулинк за Ардуино “ или „ Ардуино ИО пакет “. Да бисте то урадили, следите кораке у наставку или погледајте видео испод:
- Преузмите Ардуино ИО пакет одавде. Морате се регистровати пре преузимања.
- Затим нарежите / отпремите датотеку адиое.пде у Ардуино користећи Ардуино ИДЕ. Ову датотеку адиое.пде можете пронаћи у Ардуино ИО пакету - АрдуиноИО \ пде \ адиое \ адиое.пде
- Затим отворите софтвер МАТЛАБ, прођите кроз фасциклу Ардуино ИО, отворите датотеку инсталл_ардуино.м и покрените је у Матлабу. Видећете поруку „Ардуино фасцикле додате на путању“ у командном прозору МАТЛАБ-а, значи да се МАТЛАБ путања ажурира на Ардуино фасцикле.
Тако правимо Ардуино, комуницирамо са МАТЛАБ-ом. Горе наведени метод је погодан за „МАТЛАБ Р2013б или старије верзије“, ако користите старију верзију МАТЛАБ-а (попут Р2015б или Р2016а), можете директно кликнути на картицу Додаци у МАТЛАБ-у, а затим кликнути на „Преузми пакете хардверске подршке“, одакле можете да инсталирате Ардуино пакете за МАТЛАБ.
Након инсталирања датотека, сада можете да креирате ГУИ за пројекат кућне аутоматизације. У основи у ГУИ-у, стварамо тастере за контролу кућних апарата са рачунара. Дугмад се могу креирати уласком у „Графички кориснички интерфејс“ у менију „Ново“ у МАТЛАБ-у. Даље можемо подесити назив и боје ових дугмади, створили смо 8 тастера, у којима шест истовремено укључује и искључује три кућна апарата и два тастера за истовремено укључивање и искључивање.
Након креирања дугмади, када кликнете на дугме Покрени у том ГУИ прозору, затражиће се да сачувате ову ГУИ датотеку (са екстензијом.фиг), познату и као ' фиг датотека'. Чим сте сачували датотеку, она ће аутоматски створити датотеку кода (са екстензијом.м), познату и као „ датотека М“ (погледајте доњи снимак екрана), где можете ставити код (дат у одељку кода доле). ГУИ датотеку и датотеку кода за овај пројекат можете преузети овде: Хоме_Аутоматион_систем.фиг и Хоме_Аутоматион_систем.м (кликните десним тастером миша и изаберите Сачувај везу као…) или их можете сами креирати као што смо објаснили.
Након кодирања сада коначно можете покренути.м датотеку из прозора кода, у командном прозору видећете „Покушај везе..“. Тада се појављује порука „Ардуино успешно повезан“, ако све буде у реду. И на крају ћете видети претходно креирани ГУИ (дугмад) у ГУИ прозору, одакле можете да контролишете кућне апарате само кликом на дугмад на вашем рачунару. Уверите се да је Ардуино повезан са Ардуином преко УСБ кабла. Овде смо у овом пројекту користили 3 сијалице за демонстрацију, што указује на Вентилатор, Светлост и ТВ.
Рад целог пројекта, од инсталирања пакета подршке за Ардуино МАТЛАБ до укључивања или искључивања уређаја, може се разумети у видеу на крају.
Објашњење кола:
Круг овог пројекта је врло лак. Овде смо за погон релеја користили Ардуино УНО плочу и релејни управљачки програм УЛН2003. Три СПДТ релеја од 5 волти повезана су на Ардуино пин број 3, 4 и 5, преко покретача релеја УЛН2003, за контролу ЛИГХТ, ФАН и ТВ.
Објашњење програмирања:
Када притиснемо било које дугме из прозора ГУИ-а, он шаље неке команде Ардуину, а затим Ардуино извршава ту операцију. Након инсталирања Ардуино МАТЛАБ ИО пакета подршке, можемо приступити Ардуину из МАТЛАБ-а користећи исте Ардуино функције, уз неке мале варијације, попут:
За прављење пин-а ХИГХ у Ардуину пишемо код као дигиталВрите (пин, ХИГХ)
У МАТЛАБ-у ћемо користити ову функцију уз помоћ објекта или променљиве попут, и слично томе.
Пре него што то урадимо, морамо иницијализовати променљиву овако:
У овом пројекту не постоји Ардуино код осим кода или датотеке пакета подршке Ардуино МАТЛАБ. Као што је раније објашњено, датотека кода (.м датотека) се аутоматски генерише док се чува ГУИ датотека (.фиг датотека). Већ постоји неки код унапред написан у.м датотеци. У основи су ово функције повратног позива за тастере, што значи да можемо дефинисати шта треба да се деси кликом на ове тастере.
У МАТЛАБ коду прво парафирамо серијски порт и претварамо га у објекат помоћу променљиве. А онда можемо започети програмирање попут Ардуина користећи променљиву.
цлеар ар; глобал ар; ар = ардуино ('ЦОМ13'); ар.пинМоде (3, 'ИЗЛАЗ'); ар.пинМоде (4, 'ИЗЛАЗ'); ар.пинМоде (5, 'ИЗЛАЗ'); ар.пинМоде (13, 'ИЗЛАЗ');
У функцији повратног позива сваког дугмета написали смо сродни код за Укључивање или Искључивање одговарајућих кућних апарата повезаних на Ардуино путем релеја. Као на пример, функција повратног позива за укључено светло је дата испод:
функција лигхт_он_Цаллбацк (хОбјецт, евентдата, хандлес)% хОбјецт хандле то лигхт_он (сее ГЦБО)% евентдата резервирано - да се дефинише у будућој верзији МАТЛАБ% хандлес струцтуре витх хандлес анд усер дата (сее ГУИДАТА) глобал ар; ар.дигиталВрите (3, 1); ар.дигиталВрите (13, 1);
Слично томе, можемо да напишемо код у функције повратног позива свих дугмади, да бисмо контролисали остале повезане кућне уређаје, проверите пуни МАТЛАБ код (испод.м датотека).