Среда, 06 мая 2015 19:48

Вивчення середовища програм CoDeSys

Автор
Оцените материал
(1 Голосовать)

Основні положення

Програмовані логічні контролери Програмовані логічні контролери, скорочено ПЛК ( PLC - Programmable Logic Controller ) вперше з’являються у 1969р. для автоматизації автомобільної промисловості. Зараз ПЛК використовуються в енергетиці, хімічній промисловості, системах забезпечення безпеки, харчовому виробництві, машинобудуванні, транспорті тощо.

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

Програмований контролер - це програмно керований дискретний автомат, що має певну кількість входів, підключених за допомогою давачів до об'єкта керування, і деяку кількість виходів, підключених до виконуючих пристроїв. ПЛК контролює стан входів і виробляє певні послідовності програмно заданих дій, що відображаються в зміні виходів. Завданням прикладного програмування ПЛК є реалізація алгоритму керування конкретним об’єктом керування (машиною, агрегатом). Опитування входів і виходів контролер здійснює автоматично, незалежно від способу фізичного з’єднання. Цю роботу виконує системне програмне забезпечення. В ідеальному випадку прикладний програміст зовсім не цікавиться, як приєднані й де розмішені давачі й виконавчі механізми. Крім того, його робота не залежить від того, з яким контролером й якою фірмою він працює. Завдяки стандартизації мов програмування прикладна програма виявляється переносимою. Це означає, що її можна використати в будь - якому ПЛК, що підтримує даний стандарт. ПЛК призначений для роботи в режимі реального часу в умовах промислового середовища і повинен бути доступним для програмування неспеціалістом в області інформатики. З самого початку ПЛК призначалися для керування послідовними логічними процесами, що й обумовило слово «логічний» у назві ПЛК. Сучасні ПЛК крім простих логічних операцій здатні виконувати цифрову обробку сигналів, керування приводами, регулювання, функції операторського керування тощо. Конструкція ПЛК може бути найрізноманітнішою - від мініатюрних мікроПЛК до стояка заповненого апаратурою (рис. 2).

Задачі керування вимагають неперервного циклічного контролю. У будь - яких цифрових пристроях неперервність досягається за рахунок застосування дискретних алгоритмів, що повторюються через досить малі проміжки часу. Таким чином, обчислення в ПЛК завжди повторюються циклічно. Одна ітерація, що включає вимірювання і розрахунок впливу, називається робочим циклом ПЛК. Виконувані дії залежать від значення входів контролера, попереднього стану і визначаються користувацькою програмою. При вмиканні живлення ПЛК виконує самотестування і настроювання апаратних ресурсів, очищення оперативної пам’яті даних (ОЗП), контроль цілісності прикладної програми користувача. Якщо прикладна програма збережена в пам’яті, ПЛК переходить до основної роботи, що складається з постійного повторення послідовності дій, що входять до робочого циклу. Робочий цикл ПЛК складається з декількох фаз: 1. Початок циклу. 2. Читання стану входів. 3. Виконання коду програми користувача. 4. Запис стану виходів. 5. Обслуговування апаратних ресурсів ПЛК. 6. Монітор системи виконання (системне програмне забезпечення ПЛК). 7. Контроль часу циклу. 8. Перехід на початок циклу. Стандарт МЕК 61131 Стандарт МЕК 61131 було впроваджено у 1982 р з метою вирішення проблем уніфікації устаткування промислової автоматизації. Він охоплює вимоги до апаратних засобів, монтажу, тестування, документації, зв’язку і програмування ПЛК. Мови програмування відносяться до розділу МЕК 61131 - 3. Стандартом описується 5 мов програмування. Текстові: - Instruction List (IL) - список інструкцій; - Structured Text (ST) - структурований текст. Графічні: - Sequential Function Chart (SFC) - послідовні функційні діаграми; - Function Block Diagram (FBD) - функціонально - блокові діаграми; - LadderDiagram ( LD ) - сходинкова діаграма, мова релейно - контактних схем. Розглянемо кожну з цих мов детальніше. Мова IL - список інструкцій - є типовим асемблером з акумулятором та переходами за позначками. Набір інструкцій стандартизовано, він не залежить від конкретної цільової платформи. Мови IL дозволяє працювати з будь - якими типами даних, викликати функції та функціональні блоки, реалізовані будь - якою мовою. Таким чином, на IL можна реалізувати алгоритм будь - якої складності, хоча текст буде досить громіздким. Мова ST - структурований текст - це мова високого рівня. Синтаксично ST являє собою трохи адаптовану мову Паскаль. Замість процедур мови Паскаль в ST використовуються компоненти програм стандарту МЕК. Для фахівців, знайомих з мовою С, освоєння ST також не викличе ніяких складностей. У більшості комплексів програмування ПЛК мова ST за замовчуванням пропонується для опису ді й та умов переходів SFC . Це дійсно максимально потужний тандем, що дозволяє ефективно вирішувати будь - які задачи. У сімействі мов МЕК SFC - діаграми стоять окремо, а точніше, вище відносно інших чотирьох мов. Діаграми SFC є високорівневим графічним інструмент ом. Графічна діаграма SFC складається із кроків і переходів між ними. Дозвіл переходу визначається умовою. Із кроком пов'язані певні дії. Опис дії виконується будь - якою мовою МЕК. Сам SFC не містить керуючих команд ПЛК, дії необхідно описати на IL , ST , LD або FBD . Мова FBD - функціонально - блокові діаграми - нагадує принципову схему електронного пристрою на мікросхемах. Провідники в FBD можуть проводити сигнали (передавати змінні) будь - якого типу (логічний, аналоговий, час тощо). Виходи блоків можуть бути підімкнені на входи інших блоків або безпосередньо на виходи ПЛК. Самі блоки, подані на схемі як «чорні ящики» можуть виконувати будь - які функції. FBD - схеми дуже чітко описують взаємозв'язок входів і виходів діаграми. Якщо алгоритм добре описується з позиції сигналів, то його FBD - подання завжди виходить наочніше, ніж у текстових мовах. Мова LD - сходинкова діаграма або мова релейно - контактних схем (РКС) - графічна мова, що реалізує структури електричних ланцюгів. Графічно LD - діаграма представлена у вигляді двох вертикальних шин живлення. Між ними розмішені ланцюги, утворені з'єднанням контактів. Навантаженням кожному ланцюгу служить реле. Кожне реле має контакти, які можна використати в інших ланцюгах. Послідовне (І), паралель не (АБО) з'єднання контактів та інверсія (НЕ) утворюють базис Буля. У результаті LD ідеально підходить не тільки для побудови релейних автоматів, але й для програмної реалізації комбінаційних логічних схем. Завдяки можливості включення в LD функцій і функціональних блоків, виконаних іншими мовами, сфера застосування мови практично не обмежена. Включення в стандарт п'яти мов пояснюється в першу чергу історичними причинами. Розроблювачі стандарту зіткнулися з наявністю величезної кількості різних варіацій схожи х мов програмування ПЛК. Мови, що увійшли в стандарт, створені на основі найбільш популярних мов програмування, найпоширеніших у світі контролерів. Якщо взяти будь - який контролер, що працює в сучасному виробництві, то його програму можна перенести в середовище МЕК 61131 - 3 із мінімальними затратами. Після прийняття стандарту з'явилася можливість створення апаратно - незалежних бібліотек. Це регулятори, фільтри, керування приводами, модулі з нечіткою логікою тощо. Комплекс CoDeSys CoDeSys - це сучасний інструмент для програмування контролерів ( CoDeSys утворюється від слів Controllers Development System ). CoDeSys надає програмісту зручне середовище для програмування контролерів мовами стандарту МЕК 61131 - 3. Використовувані редактори та налагоджувальні засоби базуються на широко відомих і добре зарекомендованих принципах, знайомих по інших популярних середовищах професійного програмування ( Visual C++ тощо). Комплекс CoDeSys не прив'язаний до конкретної апаратної платформи, існує кілька модифікацій спеціально оптимізованих під різні мікропроцесори. Для прив'язки до конкретного ПЛК потрібна адаптація програми до низкорівневих ресурсів - розподілу пам'яті, інтерфейсів зв'язку та інтерфейсів уводу - виводу. Серед особливостей середовища CoDeSys можна відзначити такі: - пряма генерація машинного коду, що забезпечує високу швидкодію програм користувача; - повноцінна реалізація мов МЕК; - «розумні» редактори мов побудовані в такий спосіб, що не дають робити типові для початківців помилки; - вбудований емулятор контролера, що дозволяє проводити налагодження проекту без додаткових апаратних засобів; - вбудовані елементи візуалізації дають можливість створити модель об'єкту керування та проводити налагодження проекту без виготовлення засобів імітації; - набір бібліотек і готових сервісних функцій. Базовий склад комплексу програмування ПЛК складається із двох обов'язкових частин: системи виконання й робочого місця програміста. Система виконання функціонує в контролері. Крім безпосереднього виконання керуючої програми вона забезпечує завантаження коду прикладної програми і функції її налагодження. Система виконання повинна мати зв'язок з комп'ютером робочого місця програміста. Не важливо як фізично організований зв'язок ПК і ПЛК, у найпростішому випадку ПЛК підключається до комп'ютера через стандартний COM - порт ( RS - 232) нуль - модемним кабелем. В умовах цеху може використовуватися більш завадостійкий і далекобійний інтерфейс ( RS - 422, RS - 485 або струмова петля). У комплексі CoDeSys посередником між середовищем розробки та ПЛК слугує спеціальний додаток - шлюз зв'язку ( gateway ). Шлюз зв'язку взаємодіє з інтегрованим середовищем через Windows - сокет з'єднання, побудоване на основі протоколу TCP/IP. Таке з'єднання забезпечує однакову взаємодію додатків, що працюють на одному комп'ютері або в мережі (рис. 3) . Завдяки цьому програміст може абсолютно повноцінно працювати на віддаленому комп'ютері. Причому віддаленість не обмежується рамками локальної мережі. ПК, що виконує роль шлюзу зв'язку, може одночасно взаємодіяти із ПК програміста через Інтернет і із ПЛК через модемне з'єднання. За замовчуванням шлюз зв'язку настроєний на локальну роботу й запускається автоматично при встановленні зв'язку з ПЛК із інтегрованого середовища. Для з'єднання з ПЛК через СОМ - порт достатньо настроїти параметри драйвера інтерфейсу відповідно до керівництва по застосуванню ПЛК (порт, швидкість, контроль паритету та число стоп - бітів). До складу будь - якого комплексу обов'язково входить посібник із застосування та електронна довідкова система. Асортименти додаткових додатків CoDeSys включають сервери даних ( DDE й OPC ), утиліти конфігурування комплексу, засоби керування проектами і версіями, текстові інструменти, спеціалізовані бібліотеки функцій та функціональних блоків. Організація роботи у середовищі розробки CoDeSys Програми у середовищі розробки CoDeSys зберігаються у виді проектів. Життєвий цикл проекту має такий вид: - визначення конфігурації ПЛК відповідно до апаратних засобів; - створення програмних компонентів, необхідних для вирішення проблеми; - написання програмного коду для створе них компонентів; компіляція проекту, виправлення помилок; - налагодження проекту у режимі симуляції; - запис результатів компіляції і налагодження у ПЛК. Проект містить ряд різнорідних об'єктів: програмні компоненти (POU – Program Organization Unit ), дані різних типів, елементи візуалізації й ресурси. Кожний проект зберігається в окремому файлі. До програмних компонентів ( POU ) відносяться функціональні блоки, функції й програми. Окремі POU можуть включати дії (підпрограми). Перший програмний компонент родміщується в новому проекті автоматично і дістає назву PLC_PRG. Саме з нього і починається виконання процесу (за аналогією з функцією main у мові С), з нього будуть викликатися інші програмні блоки (програми, функції й функціональні блоки). POU можуть викликати інші POU, але рекурсії неприпустимі. Кожен програмний компонент складається з розділу оголошень і коду. Для написання всього коду POU використовується тільки одна з мов МЕК програмування (IL, ST, FBD, SFC, LD або CFC). CoDeSys підтримує всі описані стандартом МЕК компоненти. Для їхнього використання досить включити у свій проект бібліотеку standard.lib. Головне вікно середовища розробки CoDeSys (рис. 4) складається з таких елементів (у вікні вони розміщені зверху вниз): Меню. Панель інструментів. На ній знаходяться кнопки для швидкого виклику команд меню. Організатор об'єктів, що має вкладки POU , Datatypes , Visualizations і Resources . Розділювач Організатора об'єктів і робочої області CoDeSys . Робоча область, в якій знаходиться редактор. Вікно повідомлень. Рядок статусу, що містить інформацію про поточний стан проекту.

Панель інструментів, Вікно повідомлень і рядок статусу не є обов'язковими елементами Головного вікна. Меню знаходиться у верхній частині Головного вікна. Воно містить всі команди CoDeSys. Кнопки н а Панелі інструментів (див. рис. 5) забезпечують більш швидкий доступ до команд Меню. Викликана за допомогою кнопки на панелі інструментів команда автоматично виконується в активному вікні. Команда виконається, як тільки натиснута на Панелі інструментів кн опка буде відпущена. Якщо встановити покажчик миші на кнопку панелі інструментів, то через невеликий проміжок часу побачите назву цієї кнопки в підказці. Кнопки на Панелі інструментів різні для різних редакторів CoDeSys . Одержати інформацію щодо призначення цих кнопок можна в описі редакторів.

Організатор об'єктів ( Object Organizer ) керує списком усіх об'єктів Вашого проекту. Він завжди знаходиться в лівій частині Головного вікна CoDeSys . У нижній частині організатора об'єктів знаходяться вкладки POUs , Datatypes (типи даних), Visualizations (візуалізації) і Resources (ресурси). Переключатися між відповідними об'єктами можна за допомогою миші або клавіш переміщення. Розділювач екрана - це межа між двома непересічними вікнами. В CoDeSys є такі розділювачі: між організатором об'єктів і робочою областю, між розділом оголошень і розділом коду POU , між робочою областю й вікном повідомлень. Ви можете переміщати роздільники за допомогою миші, натиснувши її ліву кнопку. Розділювач зберігає своє положення навіть при зміні розмірів вікна. Якщо Ви більше не бачите розділювича на екрані, це, означає, що потрібно змінити розміри вікна. Робоча область знаходиться в правій частині головного вікна CoDeSys . Всі редактори, а також менеджер бібліотек відкриваються саме в цій області. Ім'я відкритого об'єкта знаходиться в заголовку вікна. Вікно повідомлень відділене від робочої області розділювачем. Саме в цьому вікні з'являються повідомлення компілятора, результати пошуку й список перехресних посилань. При подвійному клацанні мише ю або при натисканні клавіші < Enter > на повідомленні буде відкритий об'єкт, до якого стосується дане повідомлення. За допомогою команд “ Edit - > Next error ” і ” Edit - > Previous error ” можна швидко переміщатися між повідомленнями про помилки. Вікно повідомлень можна прибрати або включити за допомогою команди “ Window Message ”. Статусний рядок знаходиться в нижній частині головного вікна CoDeSys і надає інформацію про проект і команди меню. При виборі пункту меню його опис з'являється в лівій части ні рядка статусу. Якщо Ви працюєте в режимі online, то напис Online у рядку статусу виділяється чорними кольорами. В іншому випадку напис сірий. За допомогою статусного рядка в режимі online можна визначити, у якому стані перебуває програма: SIM - у режимі емуляції, RUN - програма запущена, BP - установлена точка зупинки, FORCE - відбувається фіксація змінних. При роботі в текстовому редакторі в рядку статусу вказується позиція, у якій знаходиться курсор (наприклад, Line :5, Col .:11). У режимі заміни напис “ OV ” виділяється чорними кольорами. Натискаючи клавішу < Ins > можна перемикатися між режимом вставлення і заміни. При візуалізації в статусному рядку виводяться координати курсора X та Y , які відраховуються щодо верхнього лівого кута вікна. Якщо курсор миші знаходиться на елементі або над елементом і проводяться будь - які дії, тоді вказується номер цього елемента. При вставленні елемента в рядку статусу вказується його назва (наприклад, Rectangle ). Якщо Ви помістили курсор на пункт меню, то в рядку статусу з'являється його короткий опис. Замість того, щоб використовувати головне меню для виклику команд, можна скористатися контекстним меню. Це меню, викликуване правою кнопкою миші, містить найбільш часто використовувані команди. Існує російськомовна версія пакета CoDeSys ( CoDeSysV 2.39 x ). Переклад виконаний Промисловим комплексом ПК “Пролог”, Росія м. Смоленськ. Програмний пакет CoDeSys постійно вдосконалюється й розвивається. Тому його нові версії можуть мати трохи інший вигляд різних вікон програм, додаткові функції, опції тощо.

ОВЕН ПЛК160 Програмовані логічні контролери ОВЕН ПЛК160 виконані в повній відповідності зі стандартом ГОСТ Р 51840 - 2001 (IEC 61131 - 2), що забезпечує високу апаратну надійність. З електромагнітної сумісності контролери відповідають класу А за ГОСТ Р 51522 - 99 (МЕК 61326 - 1 - 97) і ГОСТ Р 51841 - 2001, що підтверджено неодноразовими випробуваннями вироби. Обчислювальні ресурси У контролері спочатку закладені потужні обчислювальні ресурси при відсутності операційної системи: • високопродуктивний процесор RISC архітектури ARM9, з частотою 180МГц компанії Atmel; • великий обсяг оперативної пам'яті - 8МБ; • великий обсяг постійної пам'яті - Flash пам'ять, 4МБ; • обсяг незалежної пам'яті, для зберігання значень змінних - до 16КБ; • час циклу за замовчуванням становить 1мс при 50 логічних операціях, за відсутності мережевого обміну. Додатково Широкі можливості самодіагностики контролера. Вбудований акумулятор, що дозволяє «перечікувати» пропажа харчування - виконувати програму при пропажі живлення, і переводити вихідні елементи в «безпечний стан». Час «перечікування» налаштовується користувачем при створенні проекту. Вбудований годинник реального часу. Можливість створювати і зберігати архіви на Flash контролера. Умови експлуатації • Розширений температур ний робочий діапазон навколишнього повітря: від мінус 10 ° С до +50 ° С • Закриті вибухобезпечні приміщення або шафи електроустаткування без агресивних парів і газів • Верхня межа відносної вологості повітря - 80% при 25 ° С і більш низьких температурах без конденсації вологи • Атмосферний тиск від 84 до 106,7 кПа По стійкості до кліматичних впливів при експлуатації ПЛК160 відповідає групі виконання В4 по ГОСТ 12997 - 84. По стійкості до механічних впливів при експлуатації ПЛК160 відповідає групі виконання N2 по ГОСТ 12997. По стійкості до займання та поширенню полум'я FV1 корпус контролера відповідає ГОСТ Р 51841, розділу 6. Конструктивні особливості Контролери виконані в компактному DIN - рейковому корпусі. Габаритні та установчі розміри відрізняються в залежності від модифікації, і наведені в кінці розділу. Розширення кількості точок введення \ виводу здійснюється шляхом підключення зовнішніх модулів вводу \ виводу по кожному з вбудованих інтерфейсів. Електричні параметри Два варіанти харчування для кожного контролера: • змінний струм: (90 - 265) У, (47 ... 63) Гц; • постійний струм: (18 - 29) У. Невелика споживана потужність до 10Вт. Контролер ПЛК160 Дискретні входи 16 Дискретні виходи 12 Аналогові входи 8 Аналогові виходи 4 Всі дискретні входи контролера вимірюють сигнал 24В. Тип сигналу може бути як npn, так і pnp. Кількість «швидких» дискретних входів залежить від модифікації контролера. Дискретні виходи типу: Р - реле. Кількість швидких дискретних виходів залежить від модифікації контролера. «Швидкі» аналогові входи, для підключення уніфікованих датчиків струму, напруги. Дискретні виходи контролерів даної лінійки можуть бути налаштовані на видачу ШІМ, або генератора з високою точністю. Аналогові виходи можуть бути • По струму 4 - 20мА • По напрузі 0 - 10В • Універсальні - програмно перемикані ток \ напруга Інтерфейси і протоколи Усі контролери даної лінійки мають велику кількість інтерфейсів на борту, що працюють незалежно один від одного: • Ethernet; • До трьох послідовних портів; • USB Device для програмування контролера. Програмування Програмування контролерів здійснюється в професійній, поширеною середовищі CoDeSys v.2.3.x, максимально відповідає стандарту МЕК 61131: • підтримка 5 мов програмування, для фахівців будь - якої галузі; • потужний засіб розробки та налагодження комплексних проектів автоматизації на базі контролерів; • функції документування проектів; • кількість логічних операцій обмежується тільки кількістю вільної пам'яті контролера; • практично необмежену кількість використовуваних в проекті лічильників, тригерів, генераторів. Програмуються контролери даної лінійки з будь - якого з нижчеперелічених інтерфейсів o Ethernet o Debug RS - 232 o USB Device Кабель для програмування йде в комплекті поставки (для Debug RS - 232), або використовується стандартний кабель. Відмінні особливості лінійки • Невелика кількість точок введення \ виводу • Розширене кількість інтерфейсів «на борту» контролерів • Наявність порту Ethernet • Підтримка протоколів обміну ModBus (RTU, ASCII), ОВЕН, DCon • Можливість роботи безпосередньо з портами контролера, що дозволяє підключати зовнішні пристрої з нестандартними протоколами • Контролер має вбудований годинник, що дозволяє створювати системи управління з урахуванням реального часу • Вбудований акумулятор, що дозволяє організувати ряд додаткових сервісних функцій: можливість короткочасного перечікування зникнення живлення, переклад вихідних елементів в безпечний стан • Наявність Flash пам'яті дозволяє організовувати архівування даних на самому ПЛК.

View the embedded image gallery online at:
https://www.promprog.biz/blogs/15-codesys.html#sigProId541b0e3d63

Прочитано 151 раз
Другие материалы в этой категории: « Среда программирования OWEN Logic Ошибка работы Modbus »

Комментарии  

Sem
0 #1 RE: Вивчення середовища програм CoDeSysSem 08.11.2020 19:36
Программировал в CoDeSys ОВЕН ПЛК 110
Цитировать

Добавить комментарий


Защитный код
Обновить