Category Archives: ПЛК. Ликбез

Функция ModBUS 01

01 Чтение статуса выходов

ОПИСАНИЕ

Читает статуса ON/OFF дискретных выходов в подчиненном.

ЗАПРОС

Запрос содержит адрес начального выхода и количество выходов для чтения. Выхода адресуются начиная с нуля: выхода 1-16 адресуются как 0-15.

Ниже приведен пример запроса на чтение выходов 20-56 с подчиненного устройства 17.

Имя поля                                                                                             Пример

(Hex)

Адрес подчиненного                                                                           11

Функция                                                                                              01

Начальный адрес Hi                                                                            00

Начальный адрес Lo                                                                            13

Количество Hi                                                                                      00

Количество Lo                                                                                     25

Контрольная сумма (CRC или LRC)                                 —

 

ОТВЕТ

Статус выходов в ответном сообщении передается как один выход на бит.

Если возвращаемое количество выходов не кратно восьми, то оставшиеся биты в последнем байте сообщения будут установлены в 0. Счетчик байт содержит количество байт передаваемых в поле данных.

Имя поля                                                                                             Пример

(Hex)

Адрес подчиненного                                                                           11

Функция                                                                                              01

Счетчик байт 4                                                                                     005

Данные(Выхода 27-20)                                                                       CD

Данные(Выхода 35-28)                                                                       6B

Данные(Выхода 43-36)                                                                       B2

Данные(Выхода 51-44)                                                                       0E

Данные(Выхода 56-52)                                                                       1B

Контрольная сумма (CRC или LRC)                                 —

Режимы передачи данных по протоколу ModBUS

В сетях MODBUS может быть использован один из двух способов передачи: ASCII или RTU. Пользователь выбирает необходимый режим вместе с другими параметрами (скорость передачи, режим паритета и т.д.) во время конфигурации каждого контроллера.

Режим ASCII.

При использовании ASCII — режима каждый байт сообщения передается как два ASCII символа. Главное преимущество этого способа время между предачей символов может быть до 1 сек. без возникновения ошибок при передаче.

Формат каждого байта в ASCII-режиме:

Система кодировки: Шестнадцатиричная, ASCII-символы 0-9, A-F

Назначение битов: 1 старт бит 7 бит данных, младшим битом вперед 1 бит паритета; нет бита паритета 1 стоп бит если есть паритет; 2 бита если нет паритета

Контрольная сумма: Longitudinal Redundancy Chek (LRC)

Режим RTU.

При использовании ASCII — режима каждый байт сообщения содержит два 4-х битных шестнадцатиричных числа. Каждое сообщение передается непрерывным потоком.

Формат каждого байта в RTU-режиме: Система кодировки: 8-ми битовая двоичная, шестнадцатиричная 0-9, A-F Две шестнадцатиричные цифры содержатся в каждом 8-ми битовом байте сообщения.

Назначение битов: 1 старт бит 8 бит данных, младшим значащим разрядом вперед 1 бит паритета; нет бита паритета 1 стоп бит если есть паритет; 2 бита если нет паритета

Контрольная сумма: Cyclical Redundancy Check (CRC) Содержание сообщения MODBUS. ASCII фрейм. В ASCII-режиме, сообщение начинается с «двоеточия» (:, ASCII 3A hex), и заканчивается последовательностью «возврат каретки-перевод строки» (CRLF, ASCII 0D и 0A hex). Допустимые символы для передачи — это шестнадцатиричные цифры 0-9, A-F. Монитор сетевого устройства в сети непрерывно отслеживает символ «двоеточие». Когда он принят, каждое устройство декодирует следующие поле сообщения (поле адреса) и т.д. Интервалы между символами сообщения могут быть до 1 сек. Если интервал больше, то принимающее устройство распознает это как ошибку. Типичный фрейм сообщения показан ниже.

——T——T——T——T——T——¬ ¦

старт¦адрес ¦ ф-ия ¦данные¦ LRC ¦конец¦

+——+——+——+——+——+——+

¦1 сим¦2 сим ¦2 сим ¦n сим ¦2 сим¦2 сим¦

¦ : ¦ ¦ ¦ ¦ ¦CR LF¦

L——+——+——+——+——+——

Исключение: В контроллерах типа 584 и 984A/B/X ASCII-сообщение может нормально заканчиваться после контрольной суммы без CRLF последовательности. Интервалы меньше 1 сек допускаются.

RTU фрейм. В RTU режиме сообщение начинается с интервала тишины равного времени передачи 3.5 символов при данной скорости передачи в сети. Первым полем затем передается адрес устройства. Вслед за последним передаваемым символом также следует интервал тишины продолжительностью не менее 3.5 символов. Новое сообщение может начинаться после этого интервала. Фрейм сообщения передается непрерывно. Если интервал тишины продолжительностью 1.5 возник во время передачи фрейма, принимающее устройство заканчивает прием сообщения и следующий байт будет воспринят как начало следующего сообщения. Таким образом, если новое сообщение начнется раньше 3.5 интервала, принимающее устройство воспримет его как продолжение предыдущего сообщения. В этом случае устанавливается ошибка, так как будет несовпадение контрольных сумм. Типичный фрейм сообщения показан ниже.

————T———T———T———T———T————¬

¦ старт ¦ адрес ¦функция ¦ данные ¦ CRC ¦ конец ¦

+————+———+———+———+———+————+

¦T1-T2-T3-T4¦ 8 бит ¦ 8 бит ¦n x бит ¦ 16 бит ¦T1-T2-T3-T4¦

L————+———+———+———+———+————

Содержание адресного поля.

Адресное поле фрейма содержит два символа (ASCII) или 8 бит (RTU). Допустимый адрес передачи находится в диапазоне 0 — 247. Каждому подчиненному устройству присваивается адрес в пределах от 1 до 247. Адрес 0 используется для широковещательной передачи, его распознает каждое устройство. Когда MODBUS протокол используется на более высоком уровне сети, широковещательная передача может не поддерживаться или может быть реализована другими методами. Содержание поля функции. Поле функции фрейма содержит два символа (ASCII) или 8 бит (RTU). Диапазон числа 1 -255. Некоторые функции работают на всех контроллерах, некоторые — на определенных моделях, другие же коды зарезервированы для будущего использования.  Когда подчиненный отвечает главному, он использует поле кода функции для фиксации ошибки. В случае нормального ответа подчиненный повторяет оригинальный код функции. Если имеет место ошибка, возвращается код функции с установленным в 1 старшим битом. Например, сообщение от главного подсиненному прочитать группу регистров имеет следующий код функции: 0000 0011 ( 03 hex) Если подчиненный выполнил затребованное действие без ошибки, он возвращает такой же код. Если имеет место ошибка, то он возвращает: 1000 0011 ( 83 hex) В добавление к изменению кода функции, подчиненный размещает в поле данных уникальный код, который говорит главному какая именно ошибка произошла или причину ошибки. Содержание поля данных. Поле данных в сообщении от главного к подчиненному содержит дополнительную информацию, которая необходима подчиненному для выполнения указанной функции. Оно может содержать адреса регистров или выходов, их количество, счетчик передаваемых байтов данных. Например, если главный запрашивает у подчиненного прочитать группу регистров (код функции 03), поле данных содержит адрес начального регистра и количество регистров. Если главный хочет записать группу регистров (код функции 10 hex), поле данных содержит адрес начального регистра, количество регистров, счетчик количества байтов данных и данные для записи в регистры. Поле данных может не существовать (иметь нулевую длину) в определенных типах сообщений. Содержание поля контрольной суммы. В MODBUS — сетях используются два метода контроля ошибок передачи. Содержание поля контрольной суммы зависит от выбранного способа передачи. ASCII Когда используется ASCII-режим поле контрольной суммы содержит два ASCII-символа. Контрольная сумма является результатом вычисления Longitudinal Redundancy Check (LRC) сделанного над содержанием сообщения начиная с «:» и заканчивая CRLF. RTU Когда используется RTU-режим поле контрольной суммы содержит 16-ти битовую величину. Контрольная сумма является результатом вычисления Cyclical Redundancy Check сделанного над содержанием сообщения. CRC добавляется к сообщению последним полем младшим байтом вперед. Формат передачи символов. Передача символов идет младшим битом вперед. ASCII фрейм С контролем четности

——T——T——T——T——T——T——T——T——T——¬

¦старт¦ 1 ¦ 2 ¦ 3 ¦ 4 ¦ 5 ¦ 6 ¦ 7 ¦ Пар ¦Стоп ¦ L——

+——+——+——+——+——+——+——+——+——

Без контроля четности

——T——T——T——T——T——T——T——T——T——¬

¦старт¦ 1 ¦ 2 ¦ 3 ¦ 4 ¦ 5 ¦ 6 ¦ 7 ¦Стоп ¦Стоп ¦ L——

+——+——+——+——+——+——+——+——+——

RTU фрейм С контролем четности

——T——T——T——T——T——T——T——T——T——T——¬

¦старт¦ 1 ¦ 2 ¦ 3 ¦ 4 ¦ 5 ¦ 6 ¦ 7 ¦ 8 ¦ Пар ¦Стоп ¦ L——

+——+——+——+——+——+——+——+——+——+——

Без контроля четности

——T——T——T——T——T——T——T——T——T——T——¬

¦старт¦ 1 ¦ 2 ¦ 3 ¦ 4 ¦ 5 ¦ 6 ¦ 7 ¦ 8 ¦Стоп ¦Стоп ¦ L——

+——+——+——+——+——+——+——+——+——+——

Методы контроля ошибок.

Стандартная MODBUS сеть использует два метода контроля ошибок. Контроль паритета (even/odd) и контрольная сумма. Обе эти проверки генерируются в головном устройстве. Подчиненное устройство проверяет каждый байт и все сообщение в процессе приема. Пользователь может устанавливать продолжительность интервала таймаута в течении которого головное устройство будет ожидать ответа от подчиненного. Если подчиненный обнаружил ошибку передачи, то он не формирует ответ главному. Контроль паритета. Пользователь может конфигурировать контроллеры на проверку четного или нечетного паритета (Even/Odd). Например, 8 бит RTU-режима содержат следующую информацию: 1100 0101 Общее количество единиц — 4. Если используется четный паритет, то бит паритета будет равен 0, и общее количество 1-иц будет по прежнему четным числом. Если используется нечетный паритет, то бит паритета будет равен 1, тогда общее количество 1-иц вместе с битом паритета будет равно 5, т.е. нечетному числу. Контрольная сумма LRC. Метод LRC проверяет содержание сообщения исключая начальный символ «:» и пару CRLF. LRC это 1 байт. LRC вычисляется передающим устройством и добавляется в конец сообщения. Принимающее устройство вычисляет LRC в процессе приема сообщения и сравнивает его с принятым от главного. Если есть несовпадение, то имеет место ошибка. Контрольная сумма CRC. Контрольная сумма CRC состоит из двух байт. Контрольная сумма вычисляется передающим устройством и добавляется в конец сообщения. Принимающее устройство вычисляет контрольную сумму в процессе приема и сравнивает ее с полем CRC принятого сообщения. Счетчик контрольной суммы предварительно инициализируется числом FF hex. Только восемь бит данных используются для вычисления контрольной суммы CRC. Старт и стоп биты, бит паритета, если он используется, не учитываются в контрольной сумме. Во время генерации CRC каждый байт сообщения складывается по исключающему ИЛИ с текущим содержимым регистра контрольной суммы. Результат сдвигается в направлении младшего бита, с заполнением нулем старшего бита. Если младший бит равен 1, то производится исключающее ИЛИ содержимого регистра контрольной суммы и определенного числа. Если младший бит равен 0, то исключающее ИЛИ не делается. Процесс сдвига повторяется восемь раз. После последнего (восьмого) сдвига, следующий байт складывается с текущей величиной регистра контрольной суммы, и процесс сдвига повторяется восемь раз как описано выше. Конечное содержание регистра и есть контрольная сумма CRC.

 

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

 

К управлению доступом к шине PROFIBUS предъявляются два существенных требования.

С одной стороны для надежных коммуникаций между равноправными приборами автоматизации или РС необходимо, чтобы каждый участник в течение определенного временного окна получал доступ к шине для решения своих коммуникационных задач.

С другой стороны для обмена данными между сложными приборами автоматизации или РС и простой децентрализованной периферией требуется быстрый обмен данными с возможно малыми издержками протокола. Это достигается благодаря гибридно построенному управлению доступом к шине, состоящим из децентрализованного обмена маркером (токеном) между активными участниками (Master.ами) и централизованного обмена Master-Slave для обмена данными между активными и пассивными участниками шины PROFIBUS.

Активный участник, который владеет маркером, берет на себя в данное время функции мастра на шине, чтобы проводить коммуникации с пассивными и активными участниками.

Обмен сообщениями по шине происходит при этом через адресацию участников. Каждому PROFIBUS-участнику назначается однозначный адрес. Адрес назначается из области от 0 до 126. При этом максимальное число участников, находящихся на шине, не превышает 127.

С этим управлением доступом к шине могут быть реализованы следующие конфигурации системы:

  • Чистая. система Master-Master (обмен маркером)
  • Чистая. система Master-Slave (Master-Slave)
  • Комбинация обоих методов

Метод доступа к PROFIBUS не зависит от используемой среды передачи, например, медь или оптоволокно, и соответствует EN 50170, том 2.

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

Активные участники, подключенные к PROFIBUS, упорядочены по возрастанию их адреса в логическое маркерное кольцо (Token-Ring) (рис.1). Под маркерным кольцом (Token Ring) здесь понимается организационное кольцо из активных участников, в котором маркер (Token) всегда передается от одного участника к следующему. Маркер, а с ним и право на доступ к среде передачи, передается при этом через специальную маркер-телеграмму между активными участниками. Исключение представляет активный участник с наивысшим на шине адресом HSA (Highest Station Address). Он передает маркер исключительно активному участнику с наименьшим шинным адресом, чтобы замкнуть маркерное кольцо.

Время одного обращения маркера через всех активных участников называется временем обращения маркера. С помощью устанавливаемого заданного времени обращения маркера Ttr (Time Target Rotation) определяется максимально разрешенное время обращения маркера.

Управление доступом к шине активных участников (MAC . Medium Access Control) осуществляется как на фазе инициализации, так и на фазе функционирования маркерного кольца.

Рисунок 1Метод обмена маркером (токеном)

 

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

Метод Master-Slave

 

Если логическое маркерное кольцо состоит только из одного активного и нескольких пассивных участников, то это соответствует .чистой. системе Master- Slave (рис.2).

Метод Master-Slave делает возможным мастеру (активному участнику), который имеет право прямой передачи, опрашивать назначенных ему Slaves (пассивных участников). Мастер при этом имеет возможность принимать сообщения от Slave, и соответственно, передавать.

Типичная стандартная шинная конфигурация PROFIBUS-DP базируется на этом методе управления шиной. Активная станция (DP-Master) обменивается в циклической последовательности данными с пассивными станциями (DP-Slaves).

Рисунок 2. Метод доступа Master-Slave

Прикладной уровень PROFIBUS (Layer 7)

 

Уровень 7 модели ISO/OSI представляет в распоряжение пользователя полезные коммуникационные службы. Этот пользовательский уровень состоит в PROFIBUS из FMS (Fieldbus Message Spesification) и LLI (Lower Layer Interface) слоев.

Профиль FMS

 

Коммуникационные службы FMS соответствуют функциям прибора, т.е. в FMS- профилях PNO определен необходимый объем функций для конкретных требований. Эти FMS-профили устанавливают, что приборы различных производителей имеют одни и те же коммуникационные функции.

Для FMS определены следующие профили:

1.     Коммуникации между контроллерами (3.002)

Этот коммуникационный профиль устанавливает, какие FMS-службы применяются для коммуникаций между PLC. При помощи точно определенных классов контроллеров, установлены службы, параметры и типы данных, которые каждый PLC должен поддерживать.

2.     Профиль для автоматизации зданий (3.011)

Этот профиль  отраслевой (специализированный) профиль и основа для многих открытых стандартов в автоматизации зданий. Описывает, как осуществляется обмен, управление, регулирование, обслуживание, обработка и архивирование сигналов (Alarm) в системах автоматизации зданий через FMS.

3.     Коммутационные низковольтные приборы (3.032)

Этот профиль  отраслевой пользовательский FMS-профиль. Он определяет пользовательский образ действий низковольтных коммутационных приборов при коммуникациях через FMS.

Пользовательский интерфейс  DP и DP-профили

 

PROFIBUS-DP применяет уровни 1 и 2. Через пользовательский интерфейс становятся доступными необходимые пользовательские функции, а также системные и аппаратные действия различных типов устройств PROFIBUS-DP.

Протокол PROFIBUS-DP открыто определяет, как передаются между участниками пользовательские данные по шине. Оценка передаваемых по протоколу пользовательских данных не происходит. Благодаря точно установленным параметрам профиля, приборы разных производителей могут совершать обмен.

В настоящее время установлены следующие профили PROFIBUS-DP:

1.     Профиль для NC/RC (3.052)

Профиль описывает, как происходит управление и обслуживание роботов через PROFIBUS-DP. На основании конкретной блок-схемы программы описывается движение и программное управление роботом.

2.     Профиль для Encoder.а (преобразователя угол-код) (3.062)

Профиль описывает присоединение различных Encoder.ов к PROFIBUS-DP. Определены два аппаратных класса основных и дополнительных функций, как, например, масштабирование сигналов и расширенная диагностика.

3.     Профиль для приводов с изменяемым числом оборотов (3.072)

Ведущие производители техники приводов разработали общий PROFIDRIVE- профиль. Профиль устанавливает, как приводы параметрируются и передают заданные и истинные значения. Благодаря этому становится возможным обмен данными приводов различных производителей.

Профиль содержит необходимые установки для вида работы регуляторов числа оборотов и позиционирования. Профиль устанавливает основные функции приводов и дает достаточное свободное пространство для специфических пользовательских расширений. Профиль содержит описание пользовательских функций DP или альтернативных функций FMS.

4.     Профиль для управления и наблюдения, HMI (Human Machine Interface) (3.082)

Профиль устанавливает для приборов обслуживания и наблюдения (HMI) правила подключения этих приборов через PROFIBUS-DP к компонентам автоматизации. Профиль использует для коммуникаций расширенные функции PROFIBUS-DP.

5.     Профиль для защищенной от ошибок передачи данных через PROFIBUS-DP (3.092)

В этом профиле устанавливаются дополнительные механизмы защиты данных для коммуникаций с защищенными от ошибок компонентами, как например, Not-AUS.

 

Fieldbus Data Link PROFIBUS (Layer 2)

Согласно модели OSI на втором уровне реализуются функции управления доступом к шине (раздел 1.2), обеспечение безопасности данных, а также выполнение протокола передачи и формирование телеграмм. Уровень 2 обозначается в PROFIBUS как FDL-уровень (Fieldbus Data Link).

Формат телеграммы уровня 2 (рис.1) способствует большей безопасности передачи. Вызывающая телеграмма имеет расстояние Хемминга HD (Hamming Distance) = 4. При HD = 4 может быть распознано до 3-х одновременных ошибок в фальсифицированных битах телеграммы данных. Это достигается благодаря применению особых стартового и завершающего знаков телеграммы, постоянно скользящей синхронизации, биту четности и контрольному байту.

При этом могут быть распознаны следующие ошибки:

  • Ошибка символьного формата (четность, переполнение, ошибка фрейма)
  • Ошибки протокола
  • Ошибки разделителей начала и окончания
  • Ошибки байта проверки фрейма
  • Ошибки длины телеграммы

Телеграмма, у которой распознана ошибка, повторяется по крайней мере, один раз. Имеется возможность повторять телеграммы, проходящие по уровню 2 до 8 раз (шинный параметр .Retry.). Уровень 2 может осуществлять наряду с передачей данных .точка к точке., также коммуникации во многие точки . Broadcast и Multicast.

При коммуникациях Broadcast активный участник посылает сообщение всем остальным участникам (Master.ам и Slave.ам). Прием данных не квитируется.

При коммуникациях Multicast активный участник посылает сообщение группе участников (Master.ам и Slave.ам). Прием данных не квитируется.

Службы, предлагаемые уровнем 2, приведены в табл. 1.

Табл. 1.5 Службы передачи PROFIBUS

Служба

Функции DP PA FMS 
SDA Посылка данных с квитированием x
SRD Данные посылаются и принимаются с квитированием x x x
SDN Данные посылаются без квитирования x x x
CSRD Циклическая посылка и прием с квитированием x

В PROFIBUS-DP и .PA применяется, соответственно, подмножество служб уровня 2. Так, например, PROFIBUS-DP использует только службы SRD и SDN.

Службы вызываются через точки доступа к службе, SAP (Service Access Point), уровня 2 из выше стоящего уровня. В PROFIBUS-FMS используются эти точки доступа для адресации логических коммуникационных связей. В PROFIBUS-DP и . PA применяемые точки доступа строго упорядочены. У всех активных и пассивных участников можно использовать параллельно несколько точек доступа. Различаются точки доступа источника SSAP (Source Service Access Point) и точки доступа цели DSAP (Destination Service Access Point).

Рисунок 1 Формат PROFIBUS-телеграмм

L — длина информационного поля;

SC (Single Character) отдельный символ, используется только для квитирования (SC=E5h);

SD1-SD4 (Start Delimiter) стартовый байт для отличия различных форматов телеграмм (SD1=10h, SD2=68h, SD3=A2h, SD4=DCh);

LE / LEr  (LEngth) байт длины, указывает длину информационных полей у телеграмм с переменной длиной;

DA (Destination Adress) байт адреса цели, содержит информацию о приемнике;

SA (Source Adress) байт адреса источника, содержит информацию о передатчике;

FC (Frame Control) контрольный байт содержит информацию о службе для данного сообщения и приоритет сообщения;

Data Unit — поле данных, может также содержать возможные расширения адреса телеграммы пользовательских данных;

FCS (Frame Check Sequence) проверочный байт, содержит контрольную сумму телеграммы, которая образуется операцией .И. без бита переполнения ED (End Delimiter) оконечный байт, указывает на конец телеграммы (ED=16h)

Физический уровень (Layer 1) для PROFIBUS PA

В PROFIBUS-PA используется передающая техника по IEC 1158-2. Эта техника позволяет достигнуть электробезопасности и питания полевых приборов прямо через шину. Для передачи данных используется бит-синхронизированный, с манчестерским кодом протокол передачи без постоянной составляющей (обозначается также как H1). При передаче данных с помощью манчестерского кода бинарный .0. передается как смена фронта с 0 на 1, а бинарная .1. . как смена фронта с 1 на 0. Данные передаются с помощью модуляции +/-9mA основного тока шинной системы IB (рис.1).

Рис. 1 Передача данных в PROFIBUS-PA с помощью модуляции тока (Манчестерский код II)


Скорость передачи составляет 31,25 кбит/c. В качестве среды передачи используется витой экранированный или неэкранированный провод. Шина  состоит из сегментов, к которым подключены участники, сегменты замкнуты на RC-цепочки. К сегменту шины PA может быть подключено максимум 32 участника. Максимальная длина сегмента сильно зависит от применяемого источника питания, типа провода и потребления тока подключенными участниками.

Шинный провод

В качестве среды передачи для PROFIBUS-PA применяется 2-жильный кабель, технические данные которого не установлены/не нормированы. Свойства типов кабелей определяют максимальную длину шины, число подключаемых участников и чувствительность к электромагнитным шумам. На основании этого установлены для стандартных типов кабелей электрические и механические свойства.

В DIN 61158-2 предложены для применения стандартные кабели для PROFIBUS PA, называемые типами A.D.

Табл. 1. Предлагаемые типы кабеля для PROFIBUS-PA

Тип А (основной) Тип B Тип C Тип D
Структура кабеля Витой, двухжильный, экранированный Одна или несколько витых пар, экранир. Несколько витых пар, неэкранир. Несколько невитых пар, неэкранир.
Площадь сечения (номинальная) 0,8 мм2 (AWG18) 0,32 мм2 (AWG22) 0,13 мм2 (AWG26) 1,26 мм2 (AWG16)
Погонное сопротивление (пост. ток) 44 Ω/km 112 Ω/km 264 Ω/km 40 Ω/km
Волновое сопротивление при 31,25 kHz 100Ω±20% 100Ω±30%
Затухание при 39 kHz 3dB/km 5dB/km 8dB/km 8dB/km
Емкостное рассогласование 2nF/km 2nF/km
Групповое время запаздывания (7,9.39 kHz) 1,7μs/km
Cтепень экранирования 90%
Рекомендуемая длина сети, включая ¼- волновые согласующие шлейфы 1900 m 1200 m 400 m 200 m

 

Физический уровень (Layer 1) для DP/FMS (световоды)

Дальнейшее использование уровня 1 PROFIBUS по норме PNO (Profibus Nutzer Organisation .нем.) .Техника оптической передачи для PROFIBUS., версия 1.1 от 07.1993г. . это передача данных с помощью световодов. Благодаря оптоволокну внутри установки PROFIBUS между участниками может быть достигнуто расстояние до 15 km. Световодная техника устойчива к электромагнитным помехам и устанавливает безопасную разность потенциалов между участниками.

Благодаря простой технике подключения световодов, специальным пластиковым световодам, эта техника пришла на полевой уровень.

Среда передачи

В качестве среды передачи используются световоды со стеклянными или пластиковыми волокнами. В зависимости от используемого типа проводника длина связи может быть до 15 km при стеклянных световодах и до 80 m при пластиковых.

Подключение шины

Для подключения участников к световоду имеется различная техника (различные модули):

  • Модули OLM (Optical Link Module). Похож на репитер RS-485. Имеет два функционально разделенных электрических канала и выходы для одного или двух оптических канолов. Модули OLM соединяются с отдельными участниками или сегментами шины через интерфейс RS-485 (см. рис.1).
  • Модули OLP (Optic Link Plug). С помощью модулей OLP можно соединять друг с другом оптическим волокном пассивных участников (Slave). Модули OLP подключаются прямо на 9-и штырьковый штекер участника. OLP получает энергию от участника и поэтому не нуждается в напряжении питания. Как видно из рис.2, для подключения активных участников шины (Master) к OLP- кольцу всегда используется OLM.
  • Интегрированное LWL-подключение (Licht Wellen Leiter . нем.). Прямое подключение участников PROFIBUS к световоду. Возможно у приборов со встроенным LWL-вводом.

Рис 1 Пример шинной конфигурации с OLM-техникой

Рис 2 Оптическое однопроводное кольцо с OLM-техникой

 

Физический уровень (Layer 1) для DP/FMS (RS485)

В основной версии для экранированной витой пары уровеню 1 PROFIBUS соответствует симметричная передача данных по стандарту EIA RS485 (также обозначается H2). Проводники шинных сегментов замкнуты с обеих сторон, скручены и экранированы (см. рис. 1)

Способ передачи

Для PROFIBUS назначен способ передачи RS485, базирующийся на полудуплексной, асинхронной синхронизации. Данные передаются внутри 11- разрядного кадра (рис. 2) в NRZ-коде (Non Return to Zero). Значения сигнала (биты) не изменяются во время передачи сигнала.

В то время, как передача бинарного значения .1. соответствует положительному значению на проводнике RxD/TxD-P (Receive/Transmit-Data-P), напротив, на проводнике RxD/TxD-N (Receive/Transmit-Data-N) присутствует .0.. Состоянию покоя между отдельными телеграммами соответствует двоичный сигнал .1 (рис.3).

Рис. 1. Структура шинного сегмента RS485


Рис. 2 PROFIBUS UART-кадр

В литературе часто также оба проводника PROFIBUS обозначают как А-проводник и В-проводник. При этом А-проводник соответствует RxD/TxD-N, а В-проводник — RxD/TxD-P.

Рис. 3 Структура сигнала при передаче NRZ- кодом


Шина

В табл. 1 приведена максимально допустимая длина провода (длина сегмента) системы PROFIBUS. Эта длина зависит от скорости передачи. Внутри сегмента может быть до 32 участников.

Табл. 1.1. Максимальная длина сегмента в зависимости от скорости

Скорость передачи (kBit/s) 9,6-187,5 500 1500 12000
Длина сегмента (m) 1000 400 200 100

Данные о максимальной длине сегмента в табл.1.1 взяты из норм PROFIBUS. В табл.2 приведены параметры кабеля типа А.

Табл.2. Спецификации PROFIBUS-кабеля типа А

Волновое сопротивление От 135 до 165 Оm при частотах измерения от 3 до 20 MHz
Погонная емкость < 30pF/m
Площадь сечения > 0,34 mm2, соотв. AWG22
Тип кабеля Витая пара, 1×2 или 2×2 или 1×4 провода
Погонное сопротивление < 110 Om/km
Затухание сигнала Max 9dB на всей длине отрезка провода
Экранирование Медная оплетка или оплетка и экран из фольги

Подключение шины

В качестве стандарта для подключения участников к шине в нормах PROFIBUS EN 50170 рекомендуется 9-и штырьковый штекер, который изображен в табл.3. У каждого участника есть такой разъем с бухтовыми контактами, шинный кабель имеет разъем со штырьковыми контактами

.

Табл.1.3  Расположение контактов

Окончание шины

Шинные провода данных с обеих сторон замкнуты на согласованные нагрузки (см. рис.1). Благодаря этим сопротивлениям устанавливается безопасный потенциал покоя на проводах шины, когда участники не обмениваются сообщениями (потенциал покоя между телеграммами). Шинные нагрузки имеются почти во всех стандартных разъемах PROFIBUS и могут быть активизированы с помощью переключателей.

Если используется шина со скоростью передачи более 1500 kBit/s, то нужно на основании потребляемой мощности подключенных участников и отраженной мощности использовать шинный штекер с дополнительной индуктивностью.

Рис. 4. Схема шинного штекера для скорости передачи более 1500 кБит/c

Основы PROFIBUS (PROcess FIeld BUS)

Введение

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

Экономия средств здесь образуется благодаря меньшей стоимости кабеля (кабель имеет меньшую длину) и применению полевых приборов. Это возможно, однако, только при стандартизованной и открытой полевой шине.

В 1987 году для немецкой промышленности был разработан и принят стандарт DIN E 19245 PROFIBUS. В 1996 году этот стандарт стал международной нормой EN 50170.

Модель ISO/OSI

Архитектура протоколов PROFIBUS ориентирована на уже установленные национальные и международные нормы. Так, архитектура протоколов базируется на модели OSI (Open System Interconnection).

На рис.1 изображена модель ISO/OSI для коммуникационных стандартов, состоящая из 7 уровней, подразделяющихся на два класса:

— ориентированных на пользователя с уровня 5 по уровень 7;

— ориентированных на сеть (уровни 1-4).

Уровни с 1 по 4 описывают пересылку передаваемых данных из одного пункта в другой, в то время как уровни с 5 по 7 предоставляют в распоряжение пользователя доступ к сети в соответствующей форме.

Рис.1 Модель ISO/OSI для стандартов


Архитектура протоколов и профили

Из рис.2, представляющего архитектуру протоколов PROFIBUS, можно видеть, что в ней реализованы уровни 1,2 и 7. Для уровней 1 и 2 принят стандарт США EIA (Electronic Industries Association) RS485, международные нормы IEC 870-5-1 (Telecontrol Equipment and System) и EN 60870-5-1. Метод доступа к сети, службы передачи и управления данными ориентируются на DIN 19241, части 1-3 и нормы IEC 955 Process Data Highway/Typ C. Функции управления (FMA7) ориентированы на ISO DIS 7498-4 (Management Framework). С точки зрения пользователя PROFIBUS подразделяется на 3 профиля протокола: DP, FMS и PA.

PPOFIBUS-DP

PROFIBUS-DP применяет уровни 1 и 2, а также пользовательский интерфейс. Уровни с 3 по 7 не используются. Благодаря такой архитектуре достигается быстрая передача данных. Direct Data Link Mapper (DDLM) организует доступ к уровню 2. В основу пользовательского интерфейса положены необходимые пользовательские функции, а также системные и аппаратно-зависимые функции различных типов PROFIBUS-DP-приборов.

Этот профиль протокола PROFIBUS оптимизирован для быстрого обмена данными специально для коммуникаций между системами автоматизации и децентрализованной периферией на полевом уровне.

Рис. 2 Архитектура протоколов PROFIBUS


PROFIBUS-FMS

В PROFIBUS-FMS применяются уровни 1,2 и 7. Пользовательский уровень состоит из FMS (Fieldbus Message Specification) и LLI (Lower Layer Interface).

FMS содержит пользовательский протокол и предоставляет в распоряжение коммуникационные службы. LLI реализует различные коммуникационные связи и создает для FMS аппаратно- независимый доступ к уровню 2. FMS применяется для обмена данными на уровне ячеек (PLC и PC). Мощные FMS-сервисы открывают широкие области использования и большую гибкость при передаче больших объемов данных. PROFIBUS-DP и PROFIBUS-FMS применяют одинаковую технику передачи и единый протокол доступа к шине и поэтому могут работать через общий кабель.

PROFIBUS-PA

PROFIBUS-PA применяет расширенный PROFIBUS-DP-протокол передачи данных. Техника передачи согласно IEC 1158-2 обеспечивает надежность и питание полевых приборов через шину. Приборы PROFIBUS-PA могут благодаря применению специальных устройств (PROFIBUS-PA-Links) в простейшем случае интегрироваться в PROFIBUS-DP-сеть. PROFIBUS-PA . специальная концепция, позволяющая подключать к общей шине датчики и приводы, находящиеся во взрывоопасной зоне.

 

Возможные альтернативы языкам стандарта МЭК 61131-3

В качестве альтернативы можно попытаться использовать средства, встроенные в SCADA-системы.Разумеется, такое решение допустимо лишь в некритичных задачах супервизорного контроля.

В большинстве случаев штатная эксплуатация систем управления не предусматривает наличие средств проектирования алгоритмов. Стандартный подход – это создание базового алгоритма с возможностью его настройки через ограниченное число доступных пользователю параметров. Это позволяет проектировать базовый алгоритм управления квалифицированными специалистами и адекватными языковыми средствами, а сопутствующую этому сложность “скрывать” за дружественным интерфейсом оператора, который создается, например, с помощью тех же SCADA-пакетов.

В принципе, допустимо решение об использовании для задач управления языков Си/Си++. Такой подход может быть оправдан при наличии штата квалифицированных специалистов, отлаженной культуре разработки ПО и больших объемах тиражируемых изделий. Си++ предоставляет хорошие возможности для адаптации языка к широкому спектру задач, так что создание паттернов и набора классов, ориентированных на приведенную выше специфику, вполне осуществимо. Однако при использовании алгоритмического языка для задач автоматизации невозможно обеспечить должный уровень контроля корректности программ, ее семантическую целостность. Сложность подхода – высокие квалификационные требования к программистам, существенные затраты на обеспечение надежности и низкая сопровождаемость программ, трудности с вовлечением в процесс разработки конечного пользователя.

Достаточно популярно в России обсуждение т.н.switch-технологии. В основе подхода лежит известная реализация конечного автомата, в котором состояния автомата (некий набор функций) пронумерованы, а номер текущего состояния хранится в выделенной ячейке памяти. Текущая функция определяется через Си-конструкцию табличного выбора switch (этот факт и был использован при выборе названия). Дополнительно к этой базе предлагается набор приемов по разработке алгоритма, его отладке, специфицируется идентификационная система для переменных. Подход обеспечивает цикличность, логический параллелизм, достаточную свободу в организации вычислений и, несомненно, имеет право на рассмотрение как вариант “пишу на Си”. Switch-подход успешно используется в учебном процессе. К сожалению, подход нуждается в проработке методов синхронизации, структуризации и абстрагирования. Не прописаны процедуры связи с УСО. Вызывает вопросы предлагаемая идентификационная система, присутствуют отклонения от действующих в России стандартов.

Как дополнительные варианты Си-подхода можно рассматривать работы, исследующие проблемы адаптации алгоритмических языков Си, Си++, Java к задачам автоматизации через создание специализированных библиотек, классов, паттернов, направленных на введение в базовые языки необходимых свойств параллелизма, событийности и структурности. Основной недостаток перечисленных подходов заключается в невозможности достигнуть необходимую степень комфортности программирования и безопасности получаемых программ. Остается очень большое число рутинных операций, выполняемых вручную. Контроль специфической семантики программ, появляющейся при расширении языков общего назначения, не автоматизирован. Отсутствует унификация привязки к УСО. Присутствует и следующий нюанс. Концептуально большинство таких подходов базируется на теории конечных автоматов, разрабатываемой, в первую очередь, для синтеза управляющих контроллеров из электронных компонентов. Это обстоятельство повлияло на понятийный аппарат теории и на современном этапе приводит к серьезным психологическим проблемам при освоении методики выпускниками учебных заведений, т.к. в настоящее время образование ориентировано на информационные технологи и программирование, а не на схемотехнику. Особый интерес вызывает работа над стандартом МЭК-61499 [15], в котором разработчики предприняли попытку преодолеть ограничения языков МЭК61131-3 и скомбинировать в одном языковом средстве и поддержку логического параллелизма, и поддержку событийности. Цель стандарта – предоставить методологию разработки сложных алгоритмов. Программные компоненты представлены функциональными блоками специального вида: кроме обычных для языка FBD входных и выходных данных, интерфейс функционального блока стандарта МЭК-61499 предполагает событийные входы/выходы. Несомненно, это нововведение частично решает проблему событийности для классических функциональных блоков. К сожалению, этот несомненно прогрессивный стандарт не поддержан ведущими производителями ПЛК, и известные в настоящий момент реализации стандарта носят скорее исследовательский характер.

Для преодоления ограничений языков МЭК61131-3 на сложность алгоритма и недостатков прямого Си-подхода в Институте автоматики и электрометрии СО РАН был разработан специализированный язык программирования Reflex, который также может рассматриваться в качестве варианта. По своим свойствам язык вполне конкурентоспособен. При его разработке ставилась цель легкости освоения, сопровождения и соответствия задачам автоматизации. Язык Reflex выполнен как диалект Си, что обеспечивает его легкое освоение. В проекте Reflex язык Си расширен понятием процесса – циклически исполняемой, параллельной сущности. Программа описывается как совокупность взаимодействующих процессов. Процессы можно запускать, останавливать, проверять их текущее состояние. Поэтому язык Reflex иногда называют “Си с процессами”. Предусмотрена гибкая структуризация алгоритма управления. Событийность алгоритма обеспечивается через механизм состояний процесса. Язык позволяет абстрагироваться от УСО и описывать алгоритм в терминах технологического процесса. Синтаксис Си расширен средствами синхронизации. При программировании на языке Reflex пользователь освобожден от рутинных действий и может полностью сконцентрировать свое внимание на сути создаваемого алгоритма. Математическая модель программы терминологически ориентирована на современные тенденции в образовании, что позволяет снять психологические проблемы при освоении методики.

Транслятор обеспечивает расширенную диагностику ошибок и контроль семантической корректности программы. Выходные файлы трансляции – файлы на языке Си. Кодогенерация обеспечивается штатным транслятором целевой платформы, что существенным образом снижает расходы на поддержание средства разработки и мобильность пользовательских программ. Переносимость языка базируется на Си: все платформо-зависимые части сконцентрированы в открытую для редактирования библиотеку.

Отладка программ ведется в текстовом режиме. Предоставлены базовые функции трассировки потока управления, которые открыты для развития пользователем. Язык (используется с 1990 г.) прошел серьезную проверку в серии проектов. В частности, в задаче автоматизации выращивания монокристаллического кремния, предполагающей работу с типичными для промышленной автоматизации устройствами (сетевые интеллектуальные датчики, 4-координатную систему перемещений, приводы, дублированную газовакуумную станцию, систему охлаждения, термосистему, контроль и упреждение аварийных ситуаций, набор аналоговых и дискретных входов). Аппаратная платформа – MicroPC (Fastwel), укомплектованная серийно выпускаемыми компонентами фирм Fastwel, Octagon Systems, Grayhill. В настоящее время рассматривается вопрос о передаче языка Reflex в свободный доступ.