Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Промислові мережі та інтеграційні технології
Символьний режим обміну
(character mode, ASCII)
реєстрація fieldbus_book@ukr....
Сумісність на рівні бітів/символів – цього
достатньо для побудови мережі?
23.03.2015
NET - символьний обмін
pupena_san@ukr...
Модель обміну на базі символів
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
3
символ
Те, що я знаю всі літери угор...
Модель обміну кадрами
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
4
Кадр (Frame) при асинхронній передачі - це
по...
Протоколи рівнів – правила
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
5
Задачі мережного обміну ділять на підзад...
"Однорівневий" стек протоколів
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
6
У самих примітивних мережах
правила ...
Умова роботи мережі - повна сумісність
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
7
USBRS485<->USB
RS232RS485<->...
Що значить реалізований
(implementation) протокол?
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
8
Прикладна програ...
Вирішення проблеми несумісності
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
9
Відсутність підтримки протоколів на...
Пропрієтарний протокол
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
10
RSxxxRSxxx
протокол ? протокол ?
Пропрієтар...
Принципи символьного режиму обміну
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
11
Символьний режим обміну (charac...
ASCII vs binary
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
12
128 символів (7-бітне
кодування) – числовий код
+ ...
Призначення символьного обміну
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
13
- для реалізації протоколу (пропріє...
Задачі при побудові/інтерпретації кадрів
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
14
• розмежування кадрів
• д...
Задачі, що вирішуються при символьному обміні
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
15
Задачі, що вирішують...
Розмежування кадрів в символьному режимі
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
16
Розділення на кадри необх...
Розмежування кадрів: приклади
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
17
Frame 1 Frame 2
Тиша Char 1 Char n
S...
Доставка за місцем призначення та перевірка на
цілісність (приклад)
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
1...
Принципи обміну в символьному режимі - відправка
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
19
* - тільки при ро...
Принципи обміну в символьному режимі - прийом
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
20
* - тільки при розме...
Приклад: вікно налаштування кінця кадру для
Modicon M340
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
21
1 – симво...
Приклад: вікно налаштування кінця кадру для
Simatic S7-1200
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
22
Приклад: вікно налаштування початку кадру
для Simatic S7-1200
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
23
Приклад: функція відправки/отримання кадру
Modicon М340
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
24
Приклад: функція відправки/отримання кадру
Simatic S7-1200
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
25
Приклад використання кодування ASCII при
обміні
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
26
3A 30 31 36 30 30 ...
Приклад використання AT-команд для модемного
обміну
23.03.2015
NET - символьний обмін
pupena_san@ukr.net
27
команда Опис
A...
Upcoming SlideShare
Loading in …5
×

2 2 символьний обмін

572 views

Published on

Відкритий лекцінйий курс "Промислові мережі та інтеграційні технології" 2.2. Символьний режим обміну (character mode, ASCII)

Published in: Engineering
  • Be the first to comment

  • Be the first to like this

2 2 символьний обмін

  1. 1. Промислові мережі та інтеграційні технології Символьний режим обміну (character mode, ASCII) реєстрація fieldbus_book@ukr.net автор і лектор: Олександр Пупена (pupena_san@ukr.net) зворотній зв’язок по курсу: Інтернет-форум АСУ в Україні (www.asu.in.ua) 23.03.2015 NET - символьний обмін pupena_san@ukr.net 1
  2. 2. Сумісність на рівні бітів/символів – цього достатньо для побудови мережі? 23.03.2015 NET - символьний обмін pupena_san@ukr.net 2 USBRS485<->USB RS232RS485<->RS232 RS485 RS485RS485 RS485 RS485 RS485 RS485 Усі пристрої можуть відправити і отримати послідовність біт (наприклад символи). Цього достатньо? Сумісність на фізичному рівні (фізичного інтерфейсу, рівні бітів) не достатня, щоб забезпечити цільовий обмін між пристроями! • кому призначені ці символи? • чи вірно отримані ці символи? • що означають ці символи?
  3. 3. Модель обміну на базі символів 23.03.2015 NET - символьний обмін pupena_san@ukr.net 3 символ Те, що я знаю всі літери угорського алфавіту ще не значить, що я розумію угорську! літера~ Amit tudok a magyar ábécé nem jelenti azt, hogy érti a magyar. Оміт тудок о модьор абиси тум єленті озт, ходь ирті о модьор? HU UK
  4. 4. Модель обміну кадрами 23.03.2015 NET - символьний обмін pupena_san@ukr.net 4 Кадр (Frame) при асинхронній передачі - це послідовність символів, які відправляються/приймаються пристроєм як єдина "осмислена" структура. принципи побудови речень визначається правилами мови правила побудови та доставки кадрів а також їх змісту визначається протоколами мережі ~ символ літера~ кадрречення (послідовність слів з літер) ~ літера"р" Кадр – це "осмислена" послідовність символів.
  5. 5. Протоколи рівнів – правила 23.03.2015 NET - символьний обмін pupena_san@ukr.net 5 Задачі мережного обміну ділять на підзадачі або рівні (див.1.3), правила функціонування в яких описується протоколами рівня. Повний набір протоколів формують стек протоколів мережі. символ FHEX A02F345E4569023456890A5612 символ"р" Кадр –це послідовність символів. Аналогія правил мови: в граматиці є правила написання слів (морфологія), а є правила формування речень (синтаксис). Стек = синтаксис + морфологія Кадр це послідовність символів- . символ"р"
  6. 6. "Однорівневий" стек протоколів 23.03.2015 NET - символьний обмін pupena_san@ukr.net 6 У самих примітивних мережах правила обміну описують тільки на рівні кадрів, тобто описаний тільки протокол канального рівня. символ"р" Кадр –це послідовність символів. "Словарь Вильяма Шекспира, по подсчёту исследователей, составляет 12000 слов. Словарь негра из людоедского племени «Мумбо-Юмбо» составляет 300 слов. Эллочка Щукина легко и свободно обходилась тридцатью. Вот слова, фразы и междометия, придирчиво выбранные ею из всего великого, многословного и могучего русского языка: Хамите. Хо-хо! (Выражает, в зависимости от обстоятельств, иронию, удивление, восторг, ненависть, радость, презрение и удовлетворенность.)…" Для правильної побудови речень на мові Елочки-Щукіної достатньо б було використання тільки морфологічного протоколу.
  7. 7. Умова роботи мережі - повна сумісність 23.03.2015 NET - символьний обмін pupena_san@ukr.net 7 USBRS485<->USB RS232RS485<->RS232 RS485 RS485RS485 RS485 RS485 RS485 RS485 Для функціонування мережі необхідна сумісність на всіх рівнях: • забезпечення єдиного фізичного інтерфейсу • сумісність протоколів на всіх рівнях (усього стеку) Наприклад, усі підтримують Modbus RTU, причому на боці клієнта - Modbus RTU Master, а на боці серверів - Modbus RTU Slave протокол A1 протокол A2 протокол A3 протокол A1 протокол A2 протокол A3 протокол A1 протокол A2 протокол A3 протокол A1 протокол A2 протокол A3 протокол A1 протокол A2 протокол A3 протокол A1 протокол A2 протокол A3 протокол A1 протокол A2 протокол A3 протокол A1 протокол A2 протокол A3 HU HU HU HU HU HU HU HU
  8. 8. Що значить реалізований (implementation) протокол? 23.03.2015 NET - символьний обмін pupena_san@ukr.net 8 Прикладна програма COM порт послідовність байтів для кадру Доступ до функцій (сервісів) протоколу послідовність байтів прийнятого кадру промислова мережа RS485 протокол A1 протокол A2 протокол A3 Програма протоколу рівнів А1..А3 (реалізована виробником)
  9. 9. Вирішення проблеми несумісності 23.03.2015 NET - символьний обмін pupena_san@ukr.net 9 Відсутність підтримки протоколів на одному з вузлів потребує: - використання шлюзів (перетворювачів протоколів); - або самостійної реалізації протоколів на пристрої; - або заміни несумісного пристрою RSxxxRSxxx протокол A1 протокол A2 протокол A3 протокол B1 протокол B2 протокол B3 RSxxxRSxxx протокол A1 протокол A2 протокол A3 протокол B1 протокол B2 протокол B3 RSxxx RSxxx протокол A1 протокол A2 протокол A3 протокол B1 протокол B2 протокол B3 шлюз перетворення протоколів
  10. 10. Пропрієтарний протокол 23.03.2015 NET - символьний обмін pupena_san@ukr.net 10 RSxxxRSxxx протокол ? протокол ? Пропрієтарний протокол (або мережа) – власний нестандартизований протокол (або мережа) виробника пристрою. Проблема, яка виникає при використанні в пристрої – відсутність реалізації в пристроях інших виробників, відсутність готових шлюзів. Вирішення проблеми сумісності – самостійна реалізація протоколів або заміна пристроїв.
  11. 11. Принципи символьного режиму обміну 23.03.2015 NET - символьний обмін pupena_san@ukr.net 11 Символьний режим обміну (character mode) – режим обміну програмованого пристрою (контролеру) через послідовний порт, при якому програміст реалізовує алгоритм формування послідовності байтів (character, символів) для передачі і алгоритм інтерпретації змісту кадрів по прийому. 1 char передається за 1 symbol Прикладна програма COM порт послідовність байтів для кадрів Реалізація алгоритму формування кадру Реалізація алгоритму інтерпретації кадру послідовність байтів прийнятого кадру промислова мережа Символьний режим обміну забезпечує тільки відправку та прийом кадрів, а протокол обміну реалізовується програмою користувача. - також називають ASCII-режимом або безпротокольним режимом - використовувався тільки для відправки/прийому послідовності ASCII-символів, зараз і для обміну байт-кодами. - не всі програмовані контролери (або їх послідовні порти) дають можливість працювати в символьному режимі.
  12. 12. ASCII vs binary 23.03.2015 NET - символьний обмін pupena_san@ukr.net 12 128 символів (7-бітне кодування) – числовий код + 128 (8-бітне кодування) розширення (національні літери) ASCII режим – передача літер бінарний режим – передача байт-кодів 09 "0" 30 "9" 39 ASCIIBIN
  13. 13. Призначення символьного обміну 23.03.2015 NET - символьний обмін pupena_san@ukr.net 13 - для реалізації протоколу (пропрієтарного чи стандартизованого), що не підтримується даним програмованим пристроєм - для роботи з зовнішніми модемами (по RSxxx) в якості клієнта (AT-команди) як для відправки так і для прийому; - для відправки тексту на друк чи термінал, що працюють в текстовому режимі, для прийому тексту з терміналу
  14. 14. Задачі при побудові/інтерпретації кадрів 23.03.2015 NET - символьний обмін pupena_san@ukr.net 14 • розмежування кадрів • доставка кадрів за місцем призначення • перевірка кадрів на цілісність • призначення полів (частин) кадру скажиякділитикадриякажияквказатиадресатаскажиякправльнозаповнюватиполя
  15. 15. Задачі, що вирішуються при символьному обміні 23.03.2015 NET - символьний обмін pupena_san@ukr.net 15 Задачі, що вирішуються при формуванні/інтерпретації та доставці кадрів Як вирішуються при символьному обміні розмежування кадрів налаштування порту інтерфейсу доставка за місцем призначення програмна реалізація алгоритму обробки кадру згідно протоколу, що реалізується перевірка кадрів на цілісність призначення полів (частин) кадру
  16. 16. Розмежування кадрів в символьному режимі 23.03.2015 NET - символьний обмін pupena_san@ukr.net 16 Розділення на кадри необхідне для: - структурування обміну (відповідно до протоколу); - для можливості апаратної та програмної оброки при певних обмеженнях (обмеження вхідних/вихідних буферів, обмеження часу обробки …) Тиша (+char) Beginning Повідомлення кадру End 0 … yyy chars Тиша або 1(2) chars або досягнута фіксована кількість символів Способи розділення: - по часу тиші (по таймауту); - використання спеціалізованих символів (стартові та стопові Char) - по фіксованій або вказаній в переданих даних кількості символів скажиякділитикадриякажияквказатиадресатаскажиякправльнозаповнюватиполя
  17. 17. Розмежування кадрів: приклади 23.03.2015 NET - символьний обмін pupena_san@ukr.net 17 Frame 1 Frame 2 Тиша Char 1 Char n STX CR 0D LF 0AПовідомлення кадру02 0D 0A кінець кадру?
  18. 18. Доставка за місцем призначення та перевірка на цілісність (приклад) 23.03.2015 NET - символьний обмін pupena_san@ukr.net 18 Повідомлення кадру Адреса призначення 32 Адреса відправника 65 контрольна сума 10 11 12 13 14 контрольна сума = 2+3+10+11+12+13+14 = 65 Приклад: контр. сума - арифметична сума
  19. 19. Принципи обміну в символьному режимі - відправка 23.03.2015 NET - символьний обмін pupena_san@ukr.net 19 * - тільки при розмежуванні символьною послідовністю Прикладна програма COM порт вихідний буфер вхідний буфер Повідомлення кадру End Chars* Реалізація алгоритму формування кадру Функція запису у вихідний буфер COM порт Повідомлення кадру Символьне закінчення (End Chars) та початок кадру при відправці формується прикладною програмою або апаратурою пристрою (або ОС)
  20. 20. Принципи обміну в символьному режимі - прийом 23.03.2015 NET - символьний обмін pupena_san@ukr.net 20 * - тільки при розмежуванні символьною послідовністю Прикладна програма COM порт вихідний буфер вхідний буфер Повідомлення кадру Реалізація алгоритму інтерпретації кадру Функція читання з вхідного буферу COM порт Повідомлення кадру End Chars* Закінчення кадру (по символам або паузі) визначається апаратурою пристрою (або ОС)
  21. 21. Приклад: вікно налаштування кінця кадру для Modicon M340 23.03.2015 NET - символьний обмін pupena_san@ukr.net 21 1 – символьний розмежувач кадру 2 – налаштування параметрів обміну 3 – вибір інтерфейсу і сигналів синхронізації за символами (Stop on reception) Можливі варіанти CR, LF, або заданий кодом ASCII Character Included – включити символ зупинки в повідомлення для програми користувача; по часу тиші (Stop on silence) Кінець повідомлення – один з двох вказаних (Character 1 або Character 2)
  22. 22. Приклад: вікно налаштування кінця кадру для Simatic S7-1200 23.03.2015 NET - символьний обмін pupena_san@ukr.net 22
  23. 23. Приклад: вікно налаштування початку кадру для Simatic S7-1200 23.03.2015 NET - символьний обмін pupena_san@ukr.net 23
  24. 24. Приклад: функція відправки/отримання кадру Modicon М340 23.03.2015 NET - символьний обмін pupena_san@ukr.net 24
  25. 25. Приклад: функція відправки/отримання кадру Simatic S7-1200 23.03.2015 NET - символьний обмін pupena_san@ukr.net 25
  26. 26. Приклад використання кодування ASCII при обміні 23.03.2015 NET - символьний обмін pupena_san@ukr.net 26 3A 30 31 36 30 30 30 30 30 30 30 31 30 35 0d 0a : 0 1 6 0 0 0 0 0 0 0 1 0 5 CR LF запит (HEX) запит (ASCII) відповідь (HEX) відповідь (ASCII) вікно значень параметрів (з ПЗ програматора)
  27. 27. Приклад використання AT-команд для модемного обміну 23.03.2015 NET - символьний обмін pupena_san@ukr.net 27 команда Опис AT ПЛК->M: увага OK М(модем)->ПЛК: так AT+CBST? ПЛК: запит на вибір типу носія: режими швидкості, стиснення даних, прозорості +CBST: 0,0,1 М: 0 – швидкість автоматична, 0 – стиснення відсутнє, 1 - непрозорий OK М: так AT+CBST=7,0,1 ПЛК: запит на підтримання носія OK М: так, підтримується AT+CBST=12,0,1 ПЛК: встановлення швидкості – 9600 біт/с OK М: так AT+IFC? ПЛК: запит команди управління місцевим потоком <DCE_by_DTE> та <DTE_by_DCE> +IFC: 0,0 М: не підтримується, не підтримується OK М: так AT&W ПЛК: запис поточних налаштувань в EEPROM OK М: так, записано +CMTI: "SM",1 М: отримано нове повідомлення, індекс 1 AT+CMGF=1 ПЛК: встановлення текстового режиму OK М: так, встановлено AT+CMGR=1 ПЛК: читати перше повідомлення +CMGR: "REC READ","+380 669572528",, "09/05/18,14: 09:28+12" М: прочитане повідомлення з номеру телефону +380669572528 отримано 09/05/18 о 14:09:28 Hello М: текст повідомлення OK М: так AT+CMGS=+3 80669572528 ПЛК: Відіслати повідомлення в текстовому режимі на номер +380669572528 > HELLOW() ПЛК: текст повідомлення +CMGS: 23 М: повідомлення відіслано, номер повідомлення 23 (визначається виробником) OK М: так

×