Маленькі ядра для великої артилерії. Програмовані логічні контролери

13.09.2015

Маленькі ядра для великої артилерії. Програмовані логічні контролери ПЛК
Петров Ігор

Програмовані логічні контролери (ПЛК) — це базові елементи систем промислової автоматики. Сьогодні на їх основі побудовані всі АСУ ТП, системи моніторингу, контролю функціонування, телеметрії, забезпечення безпеки і багато інші.

Мозком ПЛК є обчислювальне ядро, можливо, таке ж, як і в звичайному персональному комп’ютері (ПК). Принципова їх відмінність в тому, що ПК орієнтований на роботу з людиною, контролер працює з технологічним обладнанням. Засобом введення для нього є різноманітні датчики стану, положення, швидкості, температури, тиску, рівня тощо [1]. Результатом роботи ПЛК є вплив на керуючі органи: реле, пускачі, двигуни, регулятори, клапани, засувки та ін

Іноді контролери (ПЛК) плутають з мікроконтролерами. Насправді це принципово різні речі. Мікроконтролер — це мікросхема, а ПЛК— закінчений виріб в корпусі (рис. 1). Виходи ПЛК здатні комутувати струм до десятків ампер, оснащені гальванічною розв’язкою, захистом від перевантажень, засобами самодіагностики. Визначення ПЛК та основні його характеристики описані в міжнародному стандарті МЕК 61131-1 [2].

Маленькі ядра для великої артилерії. Програмовані логічні контролери

Рис.1. ПЛК

Ще однією відмінністю, зовні менш помітним, є принципово інший підхід до програмування. Для роботи з мікроконтролером потрібно детально розібратися з його пристроєм, ассемблером, безліччю системних регістрів, тимчасовими діаграмами периферійних пристроїв. Подивіться інтернет-конференції з програмування мікроконтролерів — ви не знайдете там обговорення високорівневих прикладних алгоритмів. Зате в достатку описані проблеми і «глюки» конкретних типів мікроконтролерів. На боротьбу з цим йде велика частина часу програміста. Половину з її залишку забирає вивчення впливу на програму «оптимізації розведення друкованої плати» і т. п.

Для програмування ПЛК застосовуються 5 стандартних мов, з яких 3 графічні [3]. Тобто програма не вводиться з клавіатури, а «малюється» або компонується з готових модулів (рис. 2). Мови ПЛК визначені стандартом МЭК61131-3. Всі вони є апаратно незалежними. Для всіх типових задач передбачені набори готових рішень, що становлять стандартні бібліотеки.

Маленькі ядра для великої артилерії. Програмовані логічні контролери

Рис. 2. Приклад програмування ПЛК у CoDeSys

Програміст ПЛК думає тільки про прикладної задачі. На якому процесорі виконаний контролер і що всередині, його не цікавить абсолютно. Більш того, для роботи з ПЛК професійний програміст взагалі не потрібно. Вся технологія контролерів націлена на те, щоб бути доступною навіть неспеціалістам у галузі інформатики. Будь-який грамотний інженер-технолог (наприклад, зоотехнік) цілком здатний реалізувати необхідний йому алгоритм керування обладнанням самостійно. Практика доводить, що це дійсно так. Після деякої роботи з МЕК-мовами повернення до асемблера сприймається так само, як і перспектива зібрати комп’ютер на транзисторах МП39.

Можливо, вас вже втомило настільки широке введення. Давайте звернемося до трьох простих практичних питань. Чи існують в нашій повсякденній практиці завдання, де потрібно застосовувати контролери? Що дешевше — ПЛК або спеціалізована плата на мікроконтролері? Можна зробити ПЛК своїми руками, спираючись на обладнання, наявне в невеликій ремонтній майстерні або навіть домашньої лабораторії?

ської або навіть домашньої лабораторії? Перше питання простий. Контролери сьогодні застосовуються скрізь. Будь-яка сучасна пральна машина, автомобіль з інжекторним уприскуванням, ліфт, електронний замок і навіть телевізор мають у своєму складі контролер, керуючий логічною частиною. Кількість завдань для контролерів величезне не тільки в складних промислових установках, але і в побуті. З’явився навіть спеціальний термін «мала автоматизація» [4]. Тут же ви знайдете і детальне керівництво з проектування таких систем на мікроконтролерах.

Друге питання не настільки очевидний. Більшість ПЛК — це зовсім недешеві вироби, але вони володіють широкою універсальністю і високою надійністю. ПЛК незамінний в системах, де алгоритм управління змінюється часто, і час його корекції (простою дорогого устаткування) є дуже важливим. Хороші ПЛК мають зручні засоби монтажу, виконані у відповідності з жорсткими вимогами різних галузей. У системах малої автоматизації ПЛК не отримали поширення. Вони тут надмірні і дороги. Звичайно, іноді дуже хочеться і з гармати по горобцях, і в булочну на таксі, але.

насправді, існує компромісне рішення, що дозволяє застосувати всю міць технології ПЛК в будь-яких конструкціях. Відповідь на третє питання — так. Причому без застережень. Тобто наша мета — це не створення сильно усіченого прототипу, схожого на ПЛК. Мова йде про пристрій, що володіє функціональними можливостями, притаманними продукції світових брендів.

Рішення полягає в заміні мікроконтролера разом з традиційною обв’язкою на пристрій, що об’єднує апаратне ядро і програмне забезпечення ПЛК.

Ядро ПЛК

Ідея зібрати мікроконтролер з усією необхідною обв’язкою на мініатюрну універсальну мезонинную плату не нова. У Росії найбільш відомим виробником таких модулів є компанія «Каскод» (www.kaskod.ru). Модулі (контролери) її виробництва побудовані на швидкодіючих 16-розрядних мікроконтролерах Infineon. Вони включають потужний обчислювальне ядро, достатню зовнішню пам’ять (ОЗП і Flash), вбудований та зовнішній АЦП, годинник реального часу, інтерфейс RS232 і універсальну магістраль розширення. Більшість модулів підтримують промислову мережу CAN, причому навіть з гальванічною розв’язкою і елементами захисту.

Все це зібрано на платі розміром із сірникову коробку (рис. 3). Цікаво, що всі деталі схеми просто не розкладаються (в один шар) на платі таких розмірів. «Не розкладаються» вони і по ціні при покупці комплектуючих виробів в роздрібному магазині. Причому немає гарантії, що вони завжди є в наявності.

Маленькі ядра для великої артилерії. Програмовані логічні контролери

Рис. 3. Мікропроцесорний МЕК контролер

Застосування мініатюрних мезонінних мікропроцесорних контролерів знімає проблеми комплектації, налагодження апаратури, досягнення мінімальних габаритів без придбання дорогого устаткування і багатошарових друкованих плат. Силову частину схеми не представляє праці виконати на звичайній двосторонній друкованій платі. При цьому досягаються і прийнятні габариы і хороша ремонтопридатність виробу.

Принципово новим рішенням для вітчизняного ринку є серія мікропроцесорних МЕК-контролерів, розроблена спільно компаніями «Пролог» і «Каскод». Фактично це ті ж контролери, але оснащені вбудованою системою підтримки програмування МЕК 61131-3 CoDeSys SP. У комплект постачання включений CD з системою програмування CoDeSys, докладною документацією, набором бібліотек та ліцензією виробника. Наявність ліцензії гарантує технічний супровід.

Як ми вже сказали, застосування МЕК-контролерів є самим швидким способом створення спеціалізованих систем управління при мінімальних витратах. Але є і ще одне фундаментальне відмінність, виділяє МЕК-контролери в окремий клас пристроїв — апаратно-програмні ядра ПЛК (у зарубіжних джерелах — PLC kernel). Повноцінну можливість програмування отримує не тільки виробник такої системи, але і кінцевий користувач.

CoDeSys

CoDeSys — це універсальний комплекс МЕК-програмування вищого класу від німецької компанії Smart Software Solutions (3S). Сьогодні CoDeSys займає лідируючі позиції на ринку систем програмування ПЛК в Європі. Внутрішня структура цього комплексу досить складна (як, наприклад, MS Office), але з точки зору користувача він дуже простий в освоєнні.

Комплекс CoDeSys включає спеціалізовані редактори МЕК-мов і конфігуратор контролера, що забезпечує підтримку промислових мереж та багато іншого [3]. Основна його особливість — це вбудований компілятор коду. МЕК-програми безпосередньо перетворюються в машинні коди мікропроцесора. В результаті досягається дуже висока швидкодія прикладних проектів. Крім цього, комплекс забезпечує багатозадачність у прикладних проектах (циклічні і викликаються з подій завдання). Середовище програмування має вбудований графічний інтерактивний відладчик і емулятор, багатоканальний графічний аналізатор, вбудовану систему візуалізації об’єкта і програми управління (на ПК, в контролері і через Інтернет), розвинений набір бібліотек. Забезпечується гаряча корекція коду прикладної програми без зупинки роботи контролера!

CoDeSys орієнтований на застосування в ПЛК середнього і вищого класу. Практика показала, що на популярних 8-розрядних мікроконтролерах (8051, PIC, AVR) можна побудувати універсальний ПЛК тільки з певними обмеженнями (обчислення з плаваючою комою, розмір пам’яті, підтримка мереж). 16-розрядні мікроконтролери дозволяють створити ПЛК, що володіє всіма необхідними можливостями. Таким чином, поєднання CoDeSys SP і мікроконтролерів Infineon є оптимальним рішенням, що дозволяє отримати відмінні технічні характеристики контролера.

Середу програмування CoDeSys і документацію російською мовою можна безкоштовно завантажити з сайту компанії «Пролог» www.prolog.smolensk.ru. Тут ви знайдете більш докладний опис і демонстраційні версії програмного забезпечення для мікропроцесорних контролерів.

Література

  1. Болтон У. Кишеньковий довідник інженера-метролога. М. Додека-XXI. 2002.
  2. ГОСТ Р 51840-2001 (МЕК 61131-1-92). Програмовані контролери. Загальні положення та функціональні характеристики.
  3. Петров В. В. Програмовані контролери. Стандартні мови і прийоми прикладного проектування / Під ред. проф.
  4. П. Дьяконова. М. СОЛОН-Прес. 2004.
  5. Ніколайчук О. І. Системи малої автоматизації. М. СОЛОН-Прес. 2003.

Інші статті по даній темі:

Короткий опис статті: плк Маленькі ядра для великої артилерії. Програмовані логічні контролери ПЛК ПЛК, мікроконтролери, гальванічна розв’язка

Джерело: Маленькі ядра для великої артилерії. Програмовані логічні контролери ПЛК

Також ви можете прочитати