Научная статья на тему 'Development of an Arduino-based PLC with GUI'

Development of an Arduino-based PLC with GUI Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
203
31
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ARDUINO-BASED PLC / COMPLETE

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Enkov Sletoslav, Mihajlov Todor

This article presents the development of an Arduino-based PLC controller equipped with a big color display allowing full-featured programming through an intuitive and user-friendly GUI instead of complicated external software as in most regular PLCs. A complete set of features, inputs, outputs, and full emulation of the logics of a standard PLC have been implemented along with support for real-time, SD memory cards, I2C extension modules, and opto-isolated inputs and outputs. The key advantages are its low cost, short learning curve, and flexibility allowing easy modifications due to the use of open-source environments and libraries in its development.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Development of an Arduino-based PLC with GUI»

Научни трудове на Съюза на учените в България - Пловдив Серия В. Техника и технологии, том XIII., Съюз на учените, сесия 5 - 6 ноември 2015 Scientific Works of the Union of Scientists in Bulgaria-Plovdiv, series C. Technics and Technologies, Vol. XIII., Union of Scientists, ISSN 1311-9419, Session 5 - 6 November 2015.

РАЗРАБОТВАНЕ НА PLCC GUI, БАЗИРАН НА ARDUINO

Свето слав Енков,Тодор Михайл ов Пловдивски Университет „П аисий Хилендарски", ФМИ

DEVELOPMENT OF AN ARDUINO-BASED PLC WITH GUI Sletoslav Enkov, Todor Mihajlov

Abstract

This article presents the development of an Arduino-based PLC controller equipped with a big color display allowing full-featured programming through an intuitive and user-friendly GUI instead of complicated external software as in most regular PLCs. A complete set of features, inputs, outputs, and full emulation of the logics of a standard PLC have been implemented along with support for real-time, SD memory cards, I2C extension modules, and opto-isolated inputs and outputs. The key advantages are its low cost, short learning curve, and flexibility allowing easy modifications due to the use of open-source environments and libraries in its development. Резюме

Тази статия представя разработването на Arduino-базиран PLCконтролер, разполагащ с вграден голям цветен сензорен дисплей, позволяващ пълноценно програмиране чрез интуитивен и лесен за използване GUI, вместо с помощта на усложнен външен софтуер, както е при повечето стандартни PLC. Имплементиран е пълен набор от функции, входове, изходи и пълна емулация на логиката на стандартен PLC, разполага с поддръжка на реално време, SDкарти памет, ^разширителни модули,както и опто-изолирани входове и изходи. Основните предимства са ниската цена, бързото усвояване на работата с него и възможността за лесни промени, поради използването на open-sourceсреди и библиотеки при разработката му.

1. Въведение

Основната идея на разработката е създаване на програмируемо логическо устройство (PLC, програмируем логически контролер) [Wikipedia-PLC], удобно за автоматизация на производствените процеси. Съществуват многобройни решения на този проблем, най различни фирми предлагат богат избор от PLC модули за различни сфери на автоматизацията, предлагащи многобройни функции и предимства и съответно също толкова неудобства при адаптацията с тях. Голяма част от този тип контролери се предлагат със сложни и неразбираеми за обикновеният потребител компютърни софтуери или с вграден потребителски интерфейс, предлагайки ограничени възможности за манипулация.Анализирани са стандартите и изискванията към PLC и са разгледани наличните софтуерни и хардуерни решения. [Wikibooks-PRG, AutoMatic'11]

В резултат е разработено устройство,съчетаващо функционалността на бърз и адекватен програмируем логически контролер с приятен вграден потребителски сензорен интерфейс, улесняващ максимално работата на потребителя и премахващ нуждата от създаването на сложни логически програмичрез външен софтуер. Устройството е снабдено с голям набор от виртуални инструменти за бърза и лесна настройка и корекция на логиката на контролера.

2. Анализ на съществуващите решения и стандарта

Първите програмируеми контролери, известни още като „програмируеми логически контролери" (PLC), започват да се използват в края на 60-те години. Основната причина за тяхното въвеждане е желанието да се намалят големите разходи, свързани със сложните релейни системи за логическо управление в производството. Компанията Bedford Associates първа предлага устройство, наречено „Модулен Цифров Контролер" (MODICON) за използване в голяма автомобилостроителна компания. Контролерът MODICON 084 е първият PLC с промишлено приложение. В средата на 70-те години основно приложение намират PLC, основани на използването на bit-slice микропроцесори, конвенционалните процесори от това време рядко се използват поради недостатъчните си мощност и бързодействие. Основни производители на PLC стават фирми като Allen-Bradley, Siemens, Festo, Fanuc, HoneyWell, Philips, Telemecanique, General Electric и други. [Nule'13]

През 1973 се появяват и PLC с комуникационни възможности - първата такава система е Modbus на MODICON. Така PLC могат да обменят информация помежду си и да се намират на големи разстояния от процесите и технологичните агрегати, които са обект на управление. За съжаление, липсата на стандартизация и постоянно развиващите се технологии водят до създаването на изключително голямо многообразие от комуникационни решения, повечето от които са напълно несъвместими помежду си.През 80-те години започват опити за стандартизиране на комуникациите в областта на PLC. General Motors създава протокола MAP (ManufacturingAutomationProtocol) и през 90-те години се наблюдава значително намаляване на броя на използваните протоколи, както и модернизиране на много от съществуващите. Последният международен стандарт IEC 1131-3 е въведен с цел унифициране на програмните средства и езици в областта на PLC.

Представа за развитието на системите с PLC дава следната статистика (Fost & Sullivan): през 1990 г. са продадени 5.6 млн. PLC на стойност 3.3 млрд. долара, докато за 1999 г. тези числа са съответно 16.2 млн. броя и 8 млрд. долара.[Dawkins'14]

Arduinoе платформа за хоби, роботика и physicalcomputing проекти, базирана навходно-изходна платка и среда за програмиране, близка до езика Processing/Wiring. Ардуино може да се използва за създаване на самостоятелни интерактивни предметиили да си взаимодейства с външни софтуерни програми като Flash, Processing, MaxMSP, PureData. Средата за програмиране, която също е с отворен код, може да бъде свалена безплатноза Windows, Mac OS X и Linux.Ниската цена на Arduino и модулите за него позволява създаването на устройства с достъпна цена и лесно приложение в проекти за автоматизация на производствена, стопанска и домашна дейност. [Arduino]

Идеята за осъществяването на този проект е породена от реална поръчка на клиент, с цел да се изгради и автоматизира климатичен агрегат -термопомпа с голяма мощност за климатизиране на сграда. След проучване на наличните на пазара PLC, които предлагат ограничени възможности на цените, вписващи се в бюджета на проекта, се конструира напълно ново оптимизирано мултифункционално устройство, което може да намери широко приложение в най-различни проекти за автоматизиране на процеси.

3. Реализация на Arduino-базиран PLCc интуитивен GUI

Задачите. които са изпълнени в проекта са:

• Създаване и съчетаване на програмируем логически контролер, базиран на ArduinoMega 2560 с3.2" сензорен цветен дисплей, визуализиращ интуитивно и удобно за работа меню, пълен набор от инструменти и позволяващ лесна настройка;

• Голям и удобен за наблюдение регистър, показващ точното местоположение на дадена настройка или стойност в EEPROM паметта на устройството;

• Контрол на сервизните менюта, позволяващ индивидуално криптиране на паролите в EEPROM паметта за всяко едно устройство;

• Удобни менюта за настройване на логиката, входните параметри, последователността на стартиране на устройства, броячите за изчакване на проверки и броячите за старт на управляваните устройства;

• Контрол на аналоговите входове - температура (°Сили °F), входно напрежение (шУ),свето-чувствителни сензори, за измерване на налягане, СОи други резистивни сензори;

• Контрол на цифровите входове - към тях могат да бъдат прикачени пресостати, потребителски бутони, обратни сигнали от термо-защити на електромотори, сензори за ниво на течностии много други датчици с цифров сигнал (0 или 1);

• Контрол на последователността за проверка на стойности и стартирането на съответното устройство,на което се следят дадените входове;

• Задаване на време-изчакване за проверка на аналоговите и цифровите стойности за съответното устройство и задаване на време-изчакване за стартиране на устройството;

• Запаметяване на няколко различни сценария на логика под различни имена, защитени с пароли и нива на достъп;

• Възможност за разширяване на броя I/O входове и изходи чрез свързване на допълнителни сензори и разширители, поддържащи I2C протокол.

Дадени са изглед на главното меню на ОШна РЬСконтролера и на екран за настройване на аналогов вход като датчик за температура:

4. Тестване и внедряване в практиката

Конфигурирането на такъв тип контролер, базиран на Ардуино среда за разработки, позволява съчетаването на разнообразни модули за постигането на крайната цел, на достъпна цена. Крайната цена за окомплектоване на Агёшпо-базиран РЬСконтролер е 120 лв - за сравнение такъвРЬСконтролер от известния производител 81ешешсъс сходни хардуерни характеристики е на стойност 600 лв. Естествено, това е доказала се марка предлагаща високо качество и функционалност, но е наблегнато главно на това. Наблюденията показват, че потребителите, използващи81ешешРЬСконтролери, изпитват силно неудобство и колебание при програмирането и адаптирането на тези устройства, като в повечето случаи се налага да се прибягва до професионална помощ. Изискванията

за инсталация наБ1етешРЬСса познания върху специализиран софтуер за създаване и качване на програмния код, познания за използване на логически оператори или създаване на логически схеми и технически познания.

Разглежданият в тази статия продукт е внедрен за тестова експлоатация в автоматизирането на климатичен агрегат (термопомпа).Характеристиките на този агрегат позволяват почти пълнооползотворяване на възможностите наРЬСконтролера, което от своя страна дава поле за изява и тест на устройството.

На този етап потребителското мнение сочи високо задоволство по отношение съотношението цена функционалност и удобство при въвеждане на програмната логика посредством 3.2 инчовия цветен сензорен дисплей, предлагащ многобройни възможности.

В практиката за автоматизирането на такъв тип климатик стандартно се използва конкретен прибор от наложил се производител в тази сфера. Този прибор не разполага с графичен цветен дисплей, а със сегментен такъв, има твърдо заложена логика на работа, в която потребителя единствено може да настройва работните параметри. Това от своя страна не дава възможност за гъвкаво оптимизиране на работния процес, който в дадената ситуация е възможно да не позволява стандартна реализация. Споменатият прибор е производство на Б1хе11и цената му е 300 лв. Чрез използването на Ардуино-базиранияРЬСконтролер клиента спестява средства и увеличава възможностите за прецизно настройване на управлявания агрегат.

5. Заключение

Създаденият PLC е с интуитивен GUI, базиран е на основата на ArduinoMega 2560 контролер, използва цветен 3.2" сензорен екран с резолюция 320х480 и има оптимизиран програмен код, позволяващ бърза реакция при промяна на състоянието на физическите входове на контролера, сигнализирането на грешки и предприемането на действия, заложени в логиката от потребителя. Контролерът е реално внедрен и функционално завършен.

Използвана литература

[Arduino]Официален сайт на Arduino,https://www.arduino.cc/, посетен на 15.10.2015.

[AutoMatic'11] Онлайн курс по проект „AutoMatic - Разработване на учебна програма и иновативни инструменти за обучение по системи за индустриална автоматизация, насочени към хора, заети в МСП", Глава ППрограммируем логически контролер,http://www.automatic-proiect.eu/Modu1es bg/Modu1e%204,%20Chapter%202.pdf, посетен на 15.10.2015.

[Dawkins'14] Dawkins Nick, Automation and Controls: A guide to Automation, Controls, PLC's and PLC Programming, Kindle Edition, Nick Dawkins, 2014, ASIN B00K91FYV0.

[Nule'13] NuleKiran, S.Vishwakarma, Introduction to Programmable Logic Controller and Ladder Logic, Kindle Edition, Nick Dawkins, 2013, ASINB00E5X306U.

[Wikibooks-PRG] Introductory PLC Programming,

https://en.wikibooks.org/wiki/Introductory PLC Programming, посетен на 15.10.2015. [Wikipedia-PLC] Programmable logic controller, https://en.wikipedia.org/wiki/Programmable logic controller, посетен на 15.10.2015.

i Надоели баннеры? Вы всегда можете отключить рекламу.