Примена микроконтролера у електричним инсталацијаma Студент: Александар Марковић Факултет техничких наука, Чачак Техника и информатика, 2015/2016 aca00788@gmail.com Ментор рада: проф. др Момчило Вујичић Апстракт Увидели рмо рвс рложеноре USB комсникације, а жпиеом и жпеднореи и могсћнореи која она донори. Овај пад може жорлсжиеи ресденеима да изсче USB комсникацијс и жпименс микпоконеполепа с елекепичним инреалацијама и да жпеко USB сз жомоћ микпоконеполепа да сжпављајс неким жоцером. Кљтчне речи CPU, USB модсл, mикпоконеполеп 1. УВОД Гледано потпуно уопштено у сваком процесу постоји неки улаз (информација, материјал, сигнал...) који се мења унутар њега, и напушта га у измењеној форми (излаз процеса). Пошто ниједан процес није савршен увек постоји нека корекција или измена у циљу управљања тог процеса. То се може постићи смањењем времена, енергије и сл... да би се остварио жељени резултат пројектује се управљчки систем који за циљ има да мења просечне променљиве у циљу побољшавања перформанси процеса. Тако формиран систем се зове систем аутоматског управљања (SAU). 2. МИКРОКОНТРОЛЕРИ На слици 1 приказан је блок дијаграм микропроцесора. CPU чине следећи блокови: ALU, PS, SP, одређени број радних регистара, кола за тактовање и синхронизацију и кола која се користе за прихватање захтева за прекид. Да би се комплетирао микрорачунарски систем поред микропроцесора потребно је додати ROM, RAM меморијске декодере, осцилатор, одређени број улазноизлазних уређаја, какви су паралелни и серијски портови за податке, А/D и D/А конвертори и друго. Поред улазно-излазних уређаја специјалне намене, често се јавља и потреба да се уграде и контролери прекида, DMA контролери, као и бројачи/тајмери чији је задатак да ослободе CPU од обављања U/I активности. Када се у систем инсталирају и уређаји за масовно меморисање (хард диск, CD драјвер), као и тастатура, миш и CRT дисплеј тада се тај ''мали рачунар'' може користити за различите апликације опште намене. Основна намена CPU-а је да прибавља податке, обавља израчунавања над подацима и меморише резултате израчунавања на диску као и да за потребе корисника прикаже те резултате на дисплеју (CRT, TFT, LED и др.). Програми које користи микропроцесор меморисани су на диску одакле се читају и смештају у RAM. Део програма, најчешће малог обима, се обично смешта и у ROM-у. Слика 1. Блок диаграма микропроцесора (CPU-a) 3. Микроконтролер PIC 18F4550 PIC18F4550 припада 18F серији микроконтролера компаније Microchip. Микроконтролери овог произвођача се одликују малом ценом и што је важније бесплатном техничком подршком (компајлери, развојни системи, програматори). С обзиром да поседују харвард структуру, меморијска мапа је подељена на програмску и меморију за податке као и EPROM. Процесор (CPU) микроконтролера користи технику преклапања, како би се све инструкције (осим гранања) извршавале један циклус. Због тога се основни такт дели са 4, јер се фазе извршења наредби преклапају. Све наредбе су фиксне дужине од 2 бајта, тако да је адресирање меморије ограничено. Због
тога се меморија дели на 16 страница, а избор странице се врши у одговарајућим контролним регистрима. Ова особина значајно успорава рад микроконтролера међутим напреднији компајлери врше интелигентно планирање расподеле меморије како би се варијабле које се заједно користе налазиле у истој memorijskoj банци. Програмска меморија је 32KB док је RAM величине 2 KB. Такође постоји и 256B EPROM-а. Процесор поседује проширени скуп инстукција у односу на раније серије (16 и 17) као и нове начине адреси-рања. Тако су додате наредбе за хардверско множење и дељење, инкрементирање и декрементрирање са условним скоком, наредбе за читање табела и друге. Програмски бројач је ширине 21 bit и њему се може приступати само индиректно преко одређених регистара. Режими рада микроконтролера: Run mode: i CPU и периферија су укључени Idle mode: CPU је искључен а периферија укључена Sleep mode: i CPU и периферија су искључени Idle mode struja je do 5.8 μa Sleep mode struja je do 0.1 μa Oscilator Timer1: 1.1 μa, 32 khz, 2V Watchdog tajmer: 2.1 μa Двобрзински стартни осцилатор. 4. USB МОДУЛ Најбитнија карактеристика PIC18F4550 која га издваја од осталих из фамилије је usb комуникациони модул и интерфејс. Usb комуникација је веома сложена и није јединствена због чега ћемо само укратко описати особине usb модула коришћеног микроконтролера. Блок шема модула приказана је на слици 2: Слика 2. Блок шема USB модула Због своје комплексности која углавном вишеструко премашује сложеност већине апликација рад са usb портом и микроконтролером се најчешће изводи помоћу готових модула. Поготово треба имати у виду да је за оживљавање usb комуникације потребно писање посебног драјвера уређаја на страни хоста као и одговарајућег софтвера у микроконтролеру. Захваљујући поменутом HID стандарду и готовим програмским модулима овај велики проблем се веома лако решава поготово ако се ради са PIC микроконтролерима. Све детаљније информације везане за usb комуникациони стандард се могу наћи на званичном сајту стандарда. 5. USB КОМУНИКАЦИЈА Први PC рачунари су користили три порта, и то: један за штампач (LPT) и два серијска (COM1 и COM2), при чему је један од њих већином био заузет од стране серијског миша. Међутим, њихова све већа примена је резултовала појавом различитих уређаја који се на њих укључују, као што су скенери, дигиталне фотоапарати и слично[8]. То је узроковало увођење USB порта (Universal Serial Bus), његовим увођењем се настојало се решавање следећих проблема: Решење у вези ограничења броја слотова на основној плочи, као и броја портова PC рачунара. Једноставно проширења PC рачунара употребом софтверских драјвера. Могућност напајања екстерних уређаја који мало троше од стране рачунара. Омогућено је прикључење до 127 екстерних уређаја на главни USB порт, па се тиме решава ограничење које је пре постојало: један уређај - један слот.
Омогућене су велике брзине преноса до 478 Mb/s. Поједностављују се каблови за прикључење уређаја а њихова дужина се повећава. Омогућена је контрола потрошње екстерних уређаја. Подржано је аутоконфигурисање ових уређаја по принципу PnP детекције нових уређаја у рачунару. USB стандард дефинисан је 1996 године као верзија 1.0, а која је допуњена 1998 године када је настала верзија 1.1. Стандард 1.1 подржава две брзине преноса, и то: пуну брзину када се пренос креће до 12 Мb у секунди, и за спорије уређаје нижу брзину преноса до 1.5 Мb у секунди и омогућује напајање уређаја који не троше висе од 500rnA. У априлу 2000. године дат је нови стандард USB верзије 2.0 које подржава велике брзине преноса до 480 Mb у секунди. За прикључак на USB порт користи се четверо жични кабл преко кога се преносе подаци и напајање са импедансом 90 Ω, што је приказано на слици 3. Слика 10. Пперек USB kabla 6. USB протоколи Свака USB трансакција је садржана од: Токен Пакета (његово заглавље дефинише шта ће даље следити) Опционалног Дата Пакета (садржи податке) Статус Пакета (користи се у контроли трансакција и омогућује корекцију грешки) Хост иницира све трансакције. Први пакет је токен и омогућује хосту да опише шта ће даље следити и које ће бити врсте трансакција података тј. читања или уписивања као и која је адреса уређаја и одговарајући еndpoint. Следећи пакет је генерално пакет података иза кога следи handshake пакет ако је Data пакет исправно примљен, односно Stall пакет ако то није случај. Обично се пакети састоје од следећих поља: Почетак сваког пакета почиње синхронизационим бајтом SOP(SYNC), док се следећи пакет раздваја од претходног са ЕОP што је приказано на слици 4. Слика 4. Ппиказ рлања жодаека на USB магиреали На почетку сваког пакета шаље се синхронизациони бајт (SYNC) који се састоји од седам нула и једне јединице (80H) за споре USB јединице и 32 бита за USB јединице са пуном и великом брзином преноса. На основу овог бајта синхроно коло на страни пријемника генерише тактни сигнал. Након синхронизационог бајта следи поље за идентификацију пакета PID (Packet Identifier), код кога се прва 4 бита користе за идентификацију врсте пакета, док су следећа четири бита (веће тежине) инвертовани битови PID-а, на основу чега се проверава тачност примљеног PID-а. Поље PID дефинише врсту пакета и његов формат, као и тип детекције грешке. 7. О ПРОГРАМУ ЗА УПРАВЉАЊЕ РЕЛЕИМА ПРЕКО USB ПОРТА Изглед програма за управљање релеима преко USB порта слика 5.
Слика 5. Изглед жпозoпа жпогпама када микпоконеполеп није жовезан ра пацснапом. Слика 6. Изглед жпозопа жпогпама када је микпоконеполеп жовезан ра пацснапом 8. ХАРДВЕРСКА РЕАЛИЗАЦИЈА За хардверску реализацију коришћен је програмски пакет Proteus 8.5 PCB Design & Simulation. Систем се састоји од микроконтролера PIC18F4550, као централног елемента, који има улогу да опслужује USB комуникацију и контрролише RELE као излазни блок. Систем микропроцесоа користи напајање са USB порта, док се релеи напајају са посебним извором од 12V и мрезним напоном од 220V. Слика 7.а) Блок сема реализованог кола Излазно коло чине осам RELEA са пратећим елементима за повезивање. Повезане су на PORTB. Контролер прима информације о стању апликације за контролу система и на основу њих укључује поједине реле. USB конектор је типа B. Повезан је на PORTC микроконтролера можемо да видимо на електричној шеми. ЗАКЉУЧАК
Приликом реализације система упознали смо са детаљима USB комуникације и улоге микроконтролера, као и са практичним радом при реализацији исте. Увидели смо сву сложеност USB комуникације, а притом и предности и могућности која она доноси. Овај рад може послужити студентима да изуче USB комуникацију и примену микроконтролера у електричним инсталацијама и да преко USB уз помоћ микроконтролера да управљају неким поцесом. Да ли је то реле, електровентил или грејач као излазни делови процеса, који зависе од температуре, притиска, промене неког стања, да се на практичном примеру упознају са овим видом комуникације.
ЛИТЕРАТУРА [1] PIC18F4550, DATASHEET, Microchip Tecnology Inc, 2004. [2] SIMULACIJA PLC KONTROLERA PREKO MIKROKONTROLERA PIC16F877, M. Mladenović, A. Petrović, I. Stojanović, Elektronski fakultet Niš (seminarski rad), http://es.elfak.ni.ac.yu [3] UVOD U USB PORT, Vojo Milanović, http://milan.milanovic.org/skola [4] USB EKSPERIMENTALNO KOLO SA PIC 18F4550, Vojo Milanović, http://milan.milanovic.org/skola [5] USB PORT, Elektrotehnički fakultet Podgorica, [6] mikroc Help, Mikroelektronika, http://mikroe.com [7] www.ccsinfo.com/content.php?page=compilers [8] www.usb.org