Програмування мережі між ПЛК Klockner Moeller PS4

 

Програмування віддаленої станції через Suconet-K

 

Вимоги:

Sucosoft S 30-S4 не нижче версії 2.0

PS4-141/151-MM1

PS4-201-MM1 не нижче версії 04

Дивлячись на наведені вище вимоги можливо виконати на під’єднаному Slave кожну он-лайн функцію. Виберіть функцію Test and commissioning і адресу потрібної станції. Введіть адресу станції в позиції, де мигає курсор. Використовуйте клавішу F1 щоб відобразити цілу систему. Показані номери станцій, тип контролера, назви програм, які запущені на контролерах, статус і позиції обміну.

Введіть адресу станції потрібного пристрою для адресації мережі. Всі функції Test and commissioning тепер звертаються до вибраного пристрою.

Master (головний) завжди має адресу 0. Slaves (підлеглі), які не запрограмовані завжди мають адресу 1. Slaves (підлеглі), які запрограмовані можуть мати адреси 2-31 залежно від адреси призначеної в конфігураторі пристроїв.

ПЛК можуть бути з’єднані через Suconet К в двох випадках:

1. Початкове завантаження через RS 232 точка-точка з’єднання

Пристрої спочатку завантажуються через RS 232 точка-точка програмований інтерфейс пересиланням програми користувача в кожний контролер. Програма містить програмну логіку і конфігурацію пристроїв. Після цього всі пристрої, якя були спочатку завантажені, під’єднані slaves (підлеглі) доступні з master (головного). Контролер адресований через меню, що показане перед кожною Test and commissioning функцією.

2. З’єднання пристроїв по порядку

Також можливо з’єднати пристрої індивідуально і по порядку. Якщо, наприклад, master контролер і три slave контролери були з’єднані, master під’єднаний лише до одного slave. Програма завантажується в master. Це умова для з’єднання через Suconet K.

Без програми користувача Suconet K slave завжди має адресу 1 під якою slave може бути адресований.

Програма завантажується в ПЛК через адресу 1. Нова адреса станції, призначена в конфігураторі пристроїв знаходиться в програмі користувача. Перший slave під’єднаний правильно і може бути адресований з новим номером.

Тепер може бути під’єднанийдругий slave, який має також адресу 1. Програма завантажується в цей ПЛК через адресу 1. Ця процедура повторяється для кожного slave контролера, який був під’єднаний.

Описані процедури також можуть бути виконані, якщо станції терплять невдачу протягом операції.

Якщо дві станції терплять невдачу одночасно, обидві повинні бути заново завантажені чи одна станція від’єднана шляхом від’єднання Suconet кабеля. Інша станція може тоді бути адресована під адресою 1.

Якщо програма завантажена в станцію з адресою 1, то друга станція може бути під’єднана. Тепер ця станція має адресу 1 і програма завантажується в неї.

Паралельний доступ до двох ПЛК з одного контролера може спричинити перехід ПЛК в статус Not ready.


 

Рис. 2 З’єднання ПЛК PS4 за допомогою Suconet K

 

Опишемо роботу програми обміну даних на головному контролері (PS4-201-MM1)

 

00000 BLOCK 0

001 #include ”dr1a221.k42”

00001 BLOCK 1

001 L I0.1

002 =Q0.1

003 L IB0

004 =SDB 1.2.0.0

005 L RD 1.2.0.1.1

006 =Q0.3

00002 BLOCK 2

001 EP

Робота програми

 

Завантажуємо файл конфігурації контролерів dr1a221.k42. Завантаживши значення першого цифрового входу в поточний регістр (L I0.1), виводимо (записуємо) його на перший цифровий вихід (=Q0.1). Для перевірки робото спроможності нашої мережі проведемо обмін даних між контролерами, один з яких (PS4-201-MM1) є головним (Master), а інший (PS4-141-MM1) разом з станцією віддалених входів (EM4-101-AA2B84) є підлеглим (Slave). Для цього завантажимо в поточний регістр головного контролера значення нульового байту (L IB0) і відішлемо підлеглому контролеру (=SDB 1.2.0.0). Він успішно отримав дані, в чому можна було переконатися ввімкнувши режим он-лайн моніторингу роботи мережі. Тепер виконаємо зворотний обмін. Головний контролер приймає значення першого біту і завантажує його в поточний регістр (L RD 1.2.0.1.1). Після цього виводимо дані на третій цифровий вихід (=Q0.3).

 

Рис. 3 Файл конфігурації dr1a221.k42 для головного контролера

 

Тепер опишемо роботу програми обміну даних на підлеглому контролері (PS4-141-MM1).

 

00000 BLOCK 0

001 #include ”lab5.k42”

00001 BLOCK 1

001 L I0.3

002 =Q0.5

003 L RDB0

004 =MB 20

005 L I0.1

006 =SD1.1

00002 BLOCK 2

001 EP

 

Робота програми

 

Завантажуємо файл конфігурації контролерів lab5.k42. Завантаживши значення третього цифрового входу в поточний регістр (L I0.3), виводимо (записуємо) його на п’ятий цифровий вихід (=Q0.5). Працюємо з підлеглим контролером. Проаналізуємо роботу мережі на ньому. Для цього завантажимо в поточний регістр підлеглого контролера значення нульового байту, яке він отримав по мережі від головного (L RDB0) і запишемо в регістр MB20 (=МB 20). Тепер виконаємо зворотний обмін. Підлеглий контролер завантажує в поточний регістр значення першого цифрового входу (біту) і завантажує його в поточний регістр (L І0.1). Потім він відсилає ці дані головному контролеру, який їх успішно приймає.

Нижче наводимо файл конфігурації lab5.к42 для підлеглого контролера

 

Рис. 4 Файл конфігурації lab5.к42 для підлеглого контролера

 


4. Загальні відомості, принципи побудови та класифікація промислових мереж Profibus

PROFIBUS (англ. Process Field Bus) — незалежний від виробника відкритий стандарт польової шини для широкого спектру додатків у виробничій автоматизації.

Profibus об'єднує технологічні і функціональні особливості послідовного зв'язку рівня польової шини. Вона дозволяє об'єднувати розрізнені пристрої автоматизації в єдину систему на рівні давачів і приводів. Мережа Profibus — це комплексне поняття, вона базується на декількох стандартах і протоколах.

Загальні поняття

Мережа побудована у відповідності з багаторівневою моделлю ISO 7498-OSI та складається з трьох рівнів моделі:

1 — фізичного рівня;

2 — канального рівня;

3 — прикладного рівня.

PROFIBUS Protocol (Модель OSI)

OSI-Рівень PROFIBUS
Прикладний DPV0 DPV1 DPV2 Керування
Представлення --
Сеансовий
Транспортний
Мережний
Канальний FDL
Фізичний EIA-485 Оптика MBP

Відкритість та незалежність від виробника гарантується стандартом EN 50 170, все інше реалізовано згідно стандарту DIN 19245 (техніка передачі даних, методи доступу, протоколи передачі, сервісні інтерфейси для рівня додатків, специфікація протоколів, кодування, комунікаційна модель і т. д.). За допомогою Profibus пристрої різних виробників можуть взаємодіяти без будь-яких спеціальних інтерфейсів. Розроблений Німецьким департаментом освіти та науки (BMBF) в 1989 році. Фізично Profibus — це електрична мережа, в основі якої є екранована вита пара, або оптична мережа на основі оптоволоконного кабелю. Швидкість передачі по ній може змінюватися від 9.6 кбіт/с до 12 Мбіт/с. Найчастіше використовується вита пара з інтерфейсом RS-485.

Версії протоколу PROFIBUS

Сімейство Profibus складається з трьох сумісних між собою версій, що знайшили широке застосування в сучасних виробництвах:

§ PROFIBUS DP (англ. Decentralized Peripherals — Децентралізована периферія) використовується для керування давачами та приводами керування через централізований прилад керування на виробництві. В цьому стандарті приділяється велика увага стандартним функціям діагностики обладнання.

§ PROFIBUS PA (англ. Process Automation — Автоматизація процесів) використовується для спостереження за давачами в системах автоматизації керування виробничими процесами. Цей варіант розроблений для використання у небезпечних/вибухонебезпечних зонах. Фізичний рівень (кабель передачі даних) відповідає стандарту IEC 61158-2, що дозволяє передачу даних по ньому до виробничого обладнання, та обмежити силу струму для запобігання вибухонебезпечних ситуацій навіть у випадку збоїв. Це накладає обмеження на кількість підключених приладів автоматизації процесу виробництва. Прилади автоматизації процесу виробництва передають дані зі швидкістю 31.25 кбіт/с. Однак, прилади варіанту PA використовують протокол ідентичний варіанту DP, що дозволяє підключати прилади до мережі DP через перехідник. Набагато швидший варіант DP може служити центральною шиною для передачі сигналів на прилади керування. Завдяки цьому, обладнання DP та PA можна поєднувати в єдину мережу, особливо в гібридних системах, в яких обладнання автоматизації процесів виробництва та керування тісно пов'язані між собою.

§ PROFIBUS FMS (англ. Field bus Message Specification — Специфікація повідомлень польової шини) - протокол призначений в основному для зв'язку програмованих контролерів один з одним і станціями оператора на верхньому рівні. Він використовується в тих областях, де високий ступінь функціональності важливіший ніж ніж швидкий час реакції системи. При зв'язку через FMS використовуються відносини типу клієнт-сервер. Як приклад пристроїв, сполучених по FMS протоколу можна узяти з устаткування фірми Siemens, - SIMATIC S7 з FMS-CP або, наприклад, SIMATIC S5 з CP 5431FMS.

Дуже часто використовується комбінований режим роботи пристроїв PROFIBUS FMS і PROFIBUS DP, в цьому випадку між ведучими і веденими пристроями використовується протокол DP, а між самими ведучими - протокол FMS. В даний час застосування протоколу Profibus FMS скорочується, у зв'язку з переходом до промислового Ethernet іProfinet.

Прикладний рівень

Для використання цих функцій, різних рівнів служби протоколу PROFIBUS DP були визначені:

§ DP-V0 для циклічного обміну даними і діагностики;

§ DP-V1 для ациклічного та циклічного обміну даними та обробки сигналів тривоги;

§ DP-V2 для синхронізації режиму та обміну даними між підлеглими (slave) одиницями обладнання.

Канальний рівень

Для версій Profibus існує єдиний протокол доступу до шини. Цей протокол реалізується на другому рівні моделі ISO (який називається FDL - Field bus Data Link). Даний протокол реалізує процедуру доступу за допомогою маркера (token). Мережа Profibus складається з ведучих (master) і підлеглих (slave) станцій. Ведуча станція може контролювати шину, тобто, може передавати повідомлення (без віддалених запитів), коли вона має право на це (тобто, коли вона утримує маркер). Підлегла станція може лише розпізнавати отримані повідомлення чи передавати дані після відповідного запиту. Маркер обертається в логічному кільці, що складається лише з ведучих пристроїв. Якщо система складається лише з одного ведучого пристрою, то маркер не передається (буде у чистому вигляді система “master-slave”). Мережа з мінімальною конфігурацією може складатися або з двох ведучих пристроїв, або з одного ведучого та одного підлеглого пристрою.

Фізичний рівень

На цьому рівні можуть використовуватись три різні методи передачі:

§ Передача електричних сигналів відповідно до EIA-485 витою парою з імпедансом 150 Ом у топології шини. Швидкості передачі становлять від 9,6 Кбіт/с до 12 Мбіт/с. Довжина кабелю між двома ретрансляторами обмежена від 100 до 1200 м, у залежності від потрібної швидкості передачі даних. Цей метод передачі використовується головним чином з PROFIBUS DP.

§ Передача через оптичне волокно у топології зірки, шини чи кільця. Відстань між ретрансляторами може становити до 15 км. Кільцева топологія також може бути виконана надлишково.

Рис. 5 Оптичне однопровідне кільце з OLM-технікою

При використанні MBP (Manchester Bus Powered) передача даних і живлення польової шини здійснюються одним і тим же кабелем. Потужність може бути зменшена таким чином, щоб була можливість використання у вибухонебезпечних середовищах. Топологія шини передбачає до 1900 м довжини кабеля і дозволяє розгалуження для периферійних пристроїв (максимально до 60 м на відгалуження). Швидкість передачі даних тут є фіксованою 31,25 кбіт/с. Ця технологія була спеціально створена для використання PROFIBUS PA. В якості середовища передачі для PROFIBUS-PA застосовується 2-жильний кабель, технічні дані якої не встановлено / не нормовано. Властивості типів кабелів визначають максимальну довжину шини, число підключаються учасників і чутливість до електромагнітних шумів. На підставі цього встановлені для стандартних типів кабелів електричні і механічні властивості.

 

Рис. 6 Шинний провід

 

Управління доступом до шини в PROFIBUS

 


До управління доступом до шини PROFIBUS пред'являються дві істотних вимоги.
З одного боку для надійних комунікацій між рівноправними приладами автоматизації або РС необхідно, щоб кожен учасник протягом певного часового вікна отримував доступ до шини для вирішення своїх комунікаційних завдань.
З іншого боку для обміну даними між складними приладами автоматизації або РС і простий децентралізованою периферією потрібно швидкий обмін даними з можливо малими витратами протоколу. Це досягається завдяки гібридно побудованому управління доступом до шини, що складається з децентралізованого обміну маркером (токенів) між активними учасниками (Master'ами) та централізованого обміну Master-Slave для обміну даними між активними і пасивними учасниками шини PROFIBUS. Активний учасник, який володіє маркером, бере на себе в даний час функції мастра на шині, щоб проводити комунікації з пасивними і активними учасниками.
Обмін повідомленнями по шині відбувається при цьому через адресацію учасників. Кожному PROFIBUS-учаснику призначається однозначна адреса. Адреса призначається з області від 0 до 126. При цьому максимальне число учасників, що знаходяться на шині, не перевищує 127. З цим управлінням доступом до шини можуть бути реалізовані наступні конфігурації системи:

"Чиста" система Master-Master (обмін маркером) ,

"Чиста" система Master-Slave (Master-Slave),

комбінація обох методів.

 

Метод обміну маркером

 

Активні учасники, підключені до PROFIBUS, впорядковані за зростанням їх адреси в логічне маркерне кільце (Token-Ring) (ріс.1.16). Під маркерним кільцем (Token Ring) тут розуміється організаційне кільце з активних учасників, в якому маркер (Token) завжди передається від одного учасника до наступного.Маркер, а з ним і право на доступ до середовища передачі, передається при цьому через спеціальну маркер-телеграму між активними учасниками. Виняток становить активний учасник з найвищим на шині адресою HSA (Highest Station Address). Він передає маркер виключно активному учаснику з найменшим шинним адресою, щоб замкнути маркерне кільце. Час одного звернення маркера через усіх активних учасників називається часом звернення маркера. З допомогою встановлюваного заданого часу звернення маркера Ttr (Time Target Rotation) визначається максимально дозволений час звернення маркера.
Управління доступом до шини активних учасників (MAC - Medium Access Control) здійснюється як на фазі ініціалізації, так і на фазі функціонування маркерного кільця.

 

Рис. 7 Метод обміну маркером

 

При цьому встановлюються адреси всіх наявних на шині активних учасників і заносяться в LAS (List of Active Station - список активних станцій). Для управління маркером при цьому особливо важливі адреси попередньої станції PS (Previous Station), від якої маркер виходить, і наступної станції NS (Next Station), якій маркер призначається. Крім того, LAS також потрібна, щоб при поточній роботі виключати з кільця вийшли з ладу або дефектних активних учасників і, відповідно, приймати знову з'явилися учасників без перешкод поточному обміну даними по шині.

 

Метод Master-Slave

Якщо логічне маркерне кільце складається тільки з одного активного і декількох пасивних учасників, то це відповідає "чистій" системі Master-Slave (рис.8).
Метод Master-Slave робить можливим майстру (активному учаснику), який має право прямої передачі, опитувати призначених йому Slaves (пасивних учасників). Майстер при цьому має можливість приймати повідомлення від Slave, і відповідно, передавати. Типова стандартна шинна конфігурація PROFIBUS-DP базується на цьому методі управління шиною. Активна станція (DP-Master) обмінюється в циклічній послідовності даними з пасивними станціями (DP-Slaves).

 



Рис. 8 Метод доступу Master-Slave


5. Програмування мережі між ПЛК Siemens S7-300

 

Виконаємо тепер настройку мережі для контролерів Siemens.

 

Рис. 9 Приклад застосування функціональних блоків X_SEND та X_RCV


Параметри функціонального блоку 66 «X_RCV»

 

Параметр Тип Тип даних Комірка пам’яті Опис
EN_DT Вхідний Біт (BOOL) I,Q,M,D,L,Constant Контрольний параметр «enable data transfer» (дозвіл на пересилання даних). Якщо 0, то треба перевірити чи хоча б один блок даних чекає на ввід до комірки пам’яті прийому даних; якщо 1, то копіюються блоки даних по черзі в робочу пам’ять, вказану в RD.
RET_VAL Вихідний Цілочисловий (Int) I,Q,M,D,L Якщо сталася помилка , коли виконувалася функція, змінна містить код помилки
REQ_ID Вихідний Подвійне слово (DWORD) I,Q,M,D,L Ідентифікатор даних блоку X_SEND, чиї дані є першими в черзі на відсилання. Якщо нема блоків даних на відсилання в черзі, то REQ_ID = 0
NDA Вихідний Біт (BOOL) I,Q,M,D,L Параметр статусу New data arrived (нові дані отримано) NDA = 0: нема блоків даних в черзі NDA = 1: у черзі хоча б один блок даних EN_DT = 0; найстарший лок даних в черзі був скопійований в програму EN_DT=1
RD Вихідний Будь-який (ANY) I,Q,M,D Звернення до комірки пам’яті прийому даних (receive area). Допускаються наступні типи даних: bool, byte, char, word, int, dword, dint, real, date, tod, time, s5time, date and time і масиви цих даних за виключенням біту.

 

 


Параметри функціонального блоку 65 «X_SEND»

Параметр Тип Тип даних Комірка пам’яті Опис
REQ Вхідний Біт (BOOL) I,Q,M,D,L,Constant Контрольний параметр «request to activate» (запит для активації)
CONT Вхідний Біт (BOOL) I,Q,M,D,L,Constant Контрольний параметр «continue» (продовжуватись)
DEST_ID Вхідний Слово (WORD) I,Q,M,D,L,Constant Параметр «destination ID» (ідентифікатор місця призначення). Містить MPI адресу цільового контролера.(конфігурується в Step 7)
REQ_ID Вхідний Подвійне слово (DWORD) I,Q,M,D,L,Constant Ідентифікатор даних. Використовується для ідентифікації даних на цільовому контролері
SD Вхідний Будь-який (ANY) I,Q,M,D Звернення до комірки пам’яті відправлених даних (send area). Допускаються наступні типи даних: bool, byte, char, word, int, dword, dint, real, date, tod, time, s5time, date and time і масиви цих даних за виключенням біту.
RET_VAL Вихідний Цілочисловий (Int) I,Q,M,D,L Якщо сталася помилка , коли виконувалася функція, змінна містить код помилки
BUSY Вихідний Біт (BOOL) I,Q,M,D,L Busy =1: Відсилання не завершено; Busy = 0: Відсилання завершено або немає активних функцій відсилання

 

Література

1. Практичне засвоєння роботи на програмованому мікропроцесорному контролері PS4-141-MM1. Інструкція до лабораторної роботи № 2 з курсу ”Мікропроцесорні програмні засоби автоматизації” для студентів базового напрямку "Автоматизація та комп'ютерно-інтегровані технології" /Укл. О.В. Кріль, Ф.Д. Матіко. Львів: Вид-во Націон. ун-ту “Львівська політехніка”, 2001. - 20 с.

2. Практичне засвоєння роботи на програмованому мікропроцесорному контролері Siemens S7-300. Інструкція до лабораторної роботи № 4 з курсу ”Мікропроцесорні програмні засоби автоматизації” для студентів базового напрямку "Автоматизація та комп'ютерно-інтегровані технології" /Укл. О.В. Кріль, Ф.Д. Матіко. Львів: Вид-во Націон. ун-ту “Львівська політехніка”, 2001. - 18 с.