Универзални мерно аквизициони систем базиран на Java програмском језику Душан Диковић Факултет техничких наука, Чачак Електротехничко и рачунарско инжењерство, даљинско управљање, 2013/2014 e-mail dikovic.dusan@gmail.com Ментор рада др Александар Пеулић Апстракт Полупроводничком револуцијом рачунари постају неизоставни у мерно аквизиционим системима, што се посебно одражава појавом микроконтролера. Улазак микропроцесорске технологије у производњу мерних претварача омогућио је већу функционалност, као што је могућност уградње интелигентне и дигиталне комуникације у претвараче. Са друге стране, подударање општих принципа рада и архитектуре, микроконтролера и персоналних рачунара омогућава њихову интеракцију у мерно аквизиционим системима. У овом раду представљено је могуће решење мерно аквизиционог система за праћење параметара животне средине, базираног на интеграцији микроконтролера и персоналног рачунара на чијим је основама у области мастер рада публикован рад [1]. Кључне речи мерно аквизициони систем, микроконтролер PIC 18F4550, Java aпликација 1 УВОД Напредак науке и технологије уско је повезан са прогресом метрологије, а посебно делом метрологије који се базира на електричним методaма мерења електрометрологијом. Крајем двадесетог века, развојем електронске опреме и рачунара, мерна инструментација се од наједноставнијих система развила у врло сложене мерне системе уско повезане са информационим системима [2]. Један од најзначајнијих аспеката примене рачунара у системима за надзор и управљање представља могућност памћења информација о стању процеса током времена, односно реализација закона на бази рачунарског програма, чиме се постиже висок степен флексибилности целокупног система, јер при промени закона нису потребне хардверске промене као у случају класичних управљачких система [3]. Употреба микроконтролера у мерно аквизиционим системима омогућава употребу широког спектра мерних претварача за праћење параметара животне средине, с обзиром да микроконтролери могу вршити обраду како аналогних тако и дигиталних улазних сигнала. Са друге стране поседовање дигиталних излаза омогућава остваривање одговарајуће прекидачке логике чиме се уз помоћ релеја може реализовати управљачки систем [4]. 2 КОНЦЕПТ СИСТЕМА При конципирању система пошло се од идеје да комуникација између рачунарских модула мерно аквизиционог система буде жичана, па је обзиром на боље карактеристике одабран USB (Universal Serial Bus) интерфејс [5]. Такође, било је од значаја реализовати у што већем степену универзални систем који не би био зависан од одговарајућег сензора, односно који би омогућио посматрање различитих параметара животне средине. Модуларним приступом при пројектовању мерно аквизиционог система конципиран је систем који омогућава дуплекс комуникацију између рачунарских модула. Под тим се подразумева слање података са микроконтролера преко USB интерфејса на рачунар, као и слање података са рачунара на микроконтролер чиме се остварује одговарајући облик. би ове функционалности биле доступне крајњем кориснику дизајнирана је апликација са графичко корисничким интерфејсом која омогућава употребу овог система (слика 1). Животна средина Мерно претварачки Мерно аквизициони Персонални рачунар управњања Слика 1. Концепт система
На бази захтеване функционалности мерно аквизициони систем садржи следеће ове (слика 2): ски који треба да реализује примарну обраду података, обезбеди управљачка својстава и реализацију комуникационог протокола; Рачунарски треба да обезбеди реализацију комуникационог протокола и доступност квантитативних података крајњем кориснику; Управљачки преко кога се на систем може повезати објекат ; Сензорски опциони преко кога се на систем могу повезати различити сензори чиме се омогућава праћење жељених параметара животне средине. Сензори ски Рачунарски Управљачки Слика 2. Блок шема мерно аквизиционог система Посебна пажња посвећена је реализацији рачунарског и микроконтролерског а обзиром на идеју о реализацији система независног од сензорског а. Од компонената за реализацију микроконтролерског а поред процесне снаге, захтевају се одговарајуће комуникационе карактеристике у смислу повезивања са рачунарским ом, као и поседовање одговарајућег А/Д (аналогно дигиталног) конвертора за обраду аналогних сигнала. С друге стране потребно је одабрати компоненте прихватљиве и са аспекта доступности, цене и енергетске ефикасности како би реализација оваквог система била оправдана. Велики број комерцијално расположивих микроконтролера обезбеђује повољне услове за избор оптималног решења по свим параметрима. Савремени микроконтролери располажу низом комуникационих интерфејса као што су RS-232, USB, SPI (Serial Peripheral Interface), I2C (Inter Integrated Circuit) и др. Такође, велики број микроконтролера поседује аналогне улазе што подразумева постојање уграђених А/Д и Д/А конверторских модула. Ови уређаји омогућавају употребу широког спектра сензора и прикупљање података са њих. Рачунарски поред комуникационих карактеристика у смислу повезивања са микроконтролерским системом треба да обезбеди интеракцију мерно аквизиционог система са крајњим корисником. С обзиром да је рачунарски најближи крајњем кориснику потребно је реализовати једноставан и функционалан графичко кориснички интерфејс који би на најбољи начин омогућио експлоатацију система. При одабиру вишег програмског језика за реализацију корисничке апликације разматрани су аспекти достуности, цене и портабилности (независности од платформе). Истраживање, на бази кога је настао овај рад, подразумевало је проналажење хардверско-софтверског решења на плану мониторинга и. У наредној секцији биће приказано могуће решење које је усвојено као основа за реализацију мерно аквизиционог система. 3 РЕАЛИЗАЦИЈА Основни циљ при реализацији мерно аквизиционог система био је мониторинг аналогних и дигиталних улаза и контрола дигиталних излаза микроконтролера. Полазећи од претходних искустава у развоју сличних система и употреби сличних компонената реализован је систем према шеми на слици 3. Сензор Улази Улази/Излази Напајање USB интерфејс Слика 3. Блок шема реализованог система
3.1 Улога микроконтролера у мерно аквизиционом систему За реализацију мерно аквизиционог система коришћен је мироконтролер PIC18F4550 фирме Microchip [6]. је базиран на 8-битној RISC (Reduced Instruction Set Computing) архитектури и са по једним SPI, I2C, USART (Universal Synchronous/Asynchronous Receiver/Transmitter) i USB каналом у потпуности задовољава функционалне захтеве који су постављени за мерно аквизициони систем. Поседује такође 10-битни А/Д конвертор и 13 аналогних улазних канала што омогућава прикључење сензора са аналогним излазима на систем. Поред USB интерфејса главну функцију микроконтролерског а обавља А/Д конвертор употребљеног микроконтролера. На А/Д конвертор микроконтролера могу се доводити сигнали са жељених аналогних улаза. Улога А/Д конвертора употребљеног микроконтролера приказана је шемом на слици 4. u1(t) u2(t) u3(t) un(t) Мултиплексер MUX Коло задршке Sample and Hold А/Д конвертор ADC еквивалент Слика 4. Улога А/Д конвертора микроконтролера У једном циклусу је потребно извршити конверзију са кориснички задатог броја аналогних улаза, односно канала А/Д конвертора. PIC18F4550 поседује 10-битни А/Д конвертор са сукцесивним апроксимацијама [7]. Пинови PORTA и PORTB овог микроконтролерa се могу конфигурисати као аналогни улази па се сигнали са истих могу довести на улазе А/Д конвертора. 5. Поред мониторинг режима микроконтролер треба ба оствари функцију према шеми на слици улази ОR AND XOR NOT излази Слика 5. Улога микроконтролера при режиму PIC18F4550 поседује и одређен број пинова који се могу конфигурисати као дигитални и могу се користити као улазни или излазни. 4 СОФТВЕРСКА ПОДРШКА За примену разматраног уређаја неопходан је развој две врсте софтверске подршке. Наведени софтвер реализује се на нивоу микроконтролера, док је са друге стране ради приказивања података и контролисања система потребно реализовати апликацију са графичко корисничким интерфејсом на нивоу рачунарског а. 4.1 Реализација програма за микроконтролер Структура софтверске подршке за мерно аквизициони систем приказана је на слици 6. Конверзија Припрема за слање Слање Анализа пакета Пријем Пријем/ Слање Обрада Приказ/ Памћење Контрола Desktop апликација Firmware MCU Рачунар Слика 6. Структура софтверске подршке за мерно аквизициони систем
При реализацији софтверске подршке за микроконтролер развијен је firmware који омогућава конекцију уређаја преко виртуелног серијског порта на оперативни систем рачунара, што омогућава миграцију RS232 комуникације на USB интерфејс [8]. Реализовани firmware врши анализу пакета пристиглих преко виртуелног RS232 COM (Communication) порта и на основу формата пакета одређује даљи ток програма. Поједностављен алгоритамски приказ firmware-а дат је на слици 7. ПОЧЕТАК while(true) ли стижу подаци преко VCOM-a? ли је запамћен Анализа података примљених преко виртуелног COM Порта и памћење режима Подешавање А/Д конвертора на основу пристиглих података Контрола дигиталних излаза на основу дигиталних улаза Форматирање и слање резултата А/Д конверзије Слика 7. Алгоритамски приказ firmware-а мерно аквизиционог система У зависности од формата примљеног низа бајтова firmware врши селекцију аналогних канала и А/Д конверзију сигнала присутних на улазима микроконтролера или контролу дигиталних излаза микроконтролера у зависности од стања на дигиталним улазима. Реализовани firmware је развијан у интегрисаном развојном окружењу MPLAB IDE (Integrated Development Environment) компаније Microchip. MPLAB IDE представља Windows базирано окружење намењено програмирању Microchip микроконтролера и нуди подршку за велики број компајлера [9]. За уписивање firmware-а у програмску меморију микроконтролера употребљен је MPLAB ICD 2 In-Circuit Debugger због његове компатибилности са развојним окружењем MPLAB IDE. 4.2 Реализација апликације са графичким интерфејсом Од софтверских модула, реализованих у оквиру рачунарског а најзначајнији су модул за примање, односно слање података, модул за обраду података као и модул за приказ, односно памћење података. Поједностављен алгоритамски приказ реализованог апликативног софтвера приказан је на слици 8. Апликација је реализована у вишем програмском језику Java. Java се од сродних виших програмских језика разликује по независности од платформе, односно оперативног система на коме се извршава због постојања јава виртуелне машине (Јava Virtual Machine), по томе што је бесплатна (free software) и подржава идеју отвореног кода (open source). Апликација поседује графичко кориснички интерфејс и вођена је догађајима, односно акцијама корисника. Омогућава два режима рада. Један режим омогућава контролу аналогних улаза, као и употребу А/Д конвертора микроконтролера, што се остварује слањем бајтова преко виртуелног серијског порта на основу којих се корисников избор пресликава на ниво микроконтролера. Као одговор на корисников избор апликацијом је обезбеђен приказ резултата конверзије у кориснички погодном облику, што се остварује пријемом бајтова резултата преко виртуелног серијског порта, чиме се резултати конверзије са нивоа микроконтролера пресликавају на рачунар. Други режим омогућава кориснику одабир дигиталних улаза на основу чијих се стања на нивоу микроконтролера може вршити контрола стања дигиталних излаза по аналогном принципу слања и пријема бајтова као у претходном режиму.
ПОЧЕТАК Избор режима Одабир VCOM порта Одабир VCOM порта Подешавање А/Д конвертора и селекција аналогних канала Одабир дигиталних улаза и закона Отварање порта и слање низа бајтова Отварање порта и слање низа управљачких бајтова while(true) Пријем података преко VCOM порта и провера формата Графички приказ вредности Слика 8. Дијаграм тока реализованог софтвера Дијаграмом тока нису илустровани изузеци који настају као резултат некоректне употребе програма од стране корисника, али су они у самом програму обрађени. 5 ЗАКЉУЧАК Циљ развоја мерно аквизиционог система, који је предмет овог рада био је добијање функционалног уређаја за мониторинг параметара животне средине и управљање одређеним објектима. При томе је питање енергетске ефикасности рада оваквог система остављено за наредна истраживања. Такође, у наставку истраживања се планира галванско одвајање улазних сигнала и коришћење Web сервиса за дистрибуцију података. ЛИТЕРАТУРА [1] A. Dostanić, D. Diković, N. Mijailović, and A. Peulić, Kompjutersko merenje i nadzor elektromagnetnog polja u radnoj i životnoj sredini, Zbornik radova YU INFO 13, pp. 273-278, 2013. [2] А. Milovanović, M. Bjekić, and B. Koprivica, Virtuelna instrumentacija, Čačak:Tehnički fakultet, 2010. [3] A. Peulić, and S. RanĎić, Upravljački računarski sistemi, unpublished. [4] D. Andrioaia, D. Rotar and G. Puiu, Creating a communication between a PIC18F4550 microconroller and a PC via USB port type in order to achieve industrial automation, Journal of Engineering Studies and Research, vol. XVIII, No. 2, pp. 14 17, 2012. [5] Y. Watanabe, A. Yamada, M. Nitta, and K. Kato, Psseudo-real-time control of USB I/O device under Windows 7, in Control Automation and System, pp. 975-980, 2010. [6] Microchip PIC18F2455/2550/4455/4550 datasheet, Microchip Technology Inc., 2009. [7] A. M. Zagar, Successive Approximation Analog to Digital Converter, 2010. [8] Microchip, Migrating Application to USB from RS-232 USART with Minimal Impact on PC Software, Microchip Technology Inc., 2004. [9] Microchip, MPLAB IDE USER S GUIDE, Microchip Technology Inc., 2005.