Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: CXIV Международной научно-практической конференции «Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ» (Россия, г. Новосибирск, 13 июня 2022 г.)

Наука: Информационные технологии

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Заховаев М.И. РАЗРАБОТКА ПРОТОКОЛА ПЕРЕДАЧИ ПРОМЫШЛЕННОЙ СЕТИ ДЛЯ УПРАВЛЕНИЯ УСТРОЙСТВАМИ ПО СХЕМЕ ВЕДУЩИЙ-ВЕДОМЫЙ // Научное сообщество студентов XXI столетия. ТЕХНИЧЕСКИЕ НАУКИ: сб. ст. по мат. CXIV междунар. студ. науч.-практ. конф. № 6(113). URL: https://sibac.info/archive/technic/6(113).pdf (дата обращения: 30.11.2024)
Проголосовать за статью
Конференция завершена
Эта статья набрала 0 голосов
Дипломы участников
Диплом Выбор редакционной коллегии

РАЗРАБОТКА ПРОТОКОЛА ПЕРЕДАЧИ ПРОМЫШЛЕННОЙ СЕТИ ДЛЯ УПРАВЛЕНИЯ УСТРОЙСТВАМИ ПО СХЕМЕ ВЕДУЩИЙ-ВЕДОМЫЙ

Заховаев Максим Игоревич

магистрант, Кафедра электроники, радиотехники и систем связи, Орловский государственный университет имени И.С. Тургенева,

РФ, г. Орёл

DEVELOPMENT OF AN INDUSTRIAL NETWORK TRANSMISSION PROTOCOL FOR MASTER-SLAVE CONTROL

 

Maksim Zakhovaev

Master, Department of Electronics, Radio Engineering and Communication Systems, Orel State University named after I.S. Turgenev,

Russia, Orel

 

АННОТАЦИЯ

Современное производство и промышленность невозможны без высокоэффективных автоматизированных систем управления технологическими процессами (АСУТП). При проектировании АСУТП возникают проблемы организации процедуры взаимодействия элементов системы, определения алгоритмов обмена и обработки данных. Разработка промышленных сетей является ключевой частью в развитии систем автоматизации производства. В данной статье будет представлено техническое решение по разработке протокола передачи на примере решаемых задач конкретной промышленной сети.

ABSTRACT

Modern production and industry are impossible without highly efficient process control systems (PCS). When designing an automated process control system, there are problems in organizing procedures for the interaction of system elements, determining algorithms for exchanging and processing data. The development of industrial networks is a key part of the development of industrial automation systems. This article will present a technical solution for the development of a transmission protocol for the implementation of the tasks to be solved for a specific industrial network.

 

Ключевые слова: АСУТП, передача данных, промышленная сеть, протокол, ведущий-ведомый, пакет, ШИМ.

Keywords: process control system, data transmission, industrial network, protocol, master-slave, package, PWM.

 

Постановка задачи на разработку протокола

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

Данная промышленная сеть должна обеспечивать взаимодействие между частотными преобразователями, работающими параллельно на общую нагрузку. Преобразователи частоты задают режим работы мощного трехфазного двигателя. При этом мощность каждого преобразователя меньше мощности двигателя. Один частотный преобразователь назначается ведущим: он рассчитывает ШИМ сигнал для всех устройств сети, а также осуществляет их синхронизацию на каждом периоде модуляции, несколько остальных узлов назначаются ведомыми: они отправляют параметры своего состояния по запросу ведущего узла. Рассмотрим задачу, где в сети 1 ведущее, и 3 ведомых устройства. Максимальная частота ШИМ сигнала – 3 кГц, скорость передачи – 10 Мбит/с.

Процедура обмена осуществляется по оптоволоконному каналу связи, с использованием топологии «звезда». В качестве интерфейса используется асинхронный посимвольный способ передачи (UART).

Разрабатываемый протокол должен отвечать ряду требований:

1. к архитектуре обмена – необходимо разработать алгоритм, который обеспечит оптимальную структуру запросов и ответов, для выполнения функций промышленной сети, описанных в задании, в частности, чтения внутреннего состояния ведомых и записи данных о параметрах ШИМ на каждом периоде модуляции;

2. к синхронизации – необходимо разработать решение, которое обеспечит синхронизацию ШИМ сигналов всех устройств по моменту начала и длительности импульса. Это требуется, так как при наличии временного рассогласования выходных сигналов возникает переток тока с выхода одного преобразователя на выход другого. При значительном рассогласовании происходит аварийное отключение. Необходимо чтобы синхронизация происходила в конце каждого периода модуляции;

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

Разработка протокола передачи

Ввиду сравнительно маленького допустимого временного рассогласования (1-2мкс), разработан режим работы, важной особенностью которого является широковещательная рассылка пакетов, позволяющая синхронизировать ШИМ всех ведомых устройств на каждом такте сеанса обмена. Мастер посылает всем ведомым пакет синхронизации в момент окончания периода модуляции, а именно по фронту перехода состояния из 0 в 1. Другие преобразователи принимают синхросигнал и обнуляют таймеры ШИМ по прерыванию. Таким образом, мастеру неважно текущее состояние ШИМ сигнала ведомого, при любом состоянии, получая данный пакет, подчиненное сбрасывает значение ШИМ. Подобным образом синхронизация осуществляется на каждом периоде модуляции.

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

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

суммы.

Помимо этого, целостность данных контролируется за счет знания приемной стороной длины принимаемого кадра. С этой целью в каждом пакете указывается его ID. Данное поле содержит информацию о типе посылаемого кадра. Устройства заранее знают размер пакета в соответствии с конкретным типом, поэтому для получения информации о длине принятого кадра, достаточно распознать его тип. Также каждый тип пакета имеет свое управляющее значение и вызывает для обработки соответствующую логику программы.

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

Организация множественного доступа к каналу происходит за счет временного разделения моментов отправки пакета. Для избежания коллизий для каждого подчиненного заранее программно определяется момент времени отправки ответа или подтверждения. Интервалы между отправками равны и примерно составляют один интервал длины пакета ответа .

Алгоритм работы ведущего устройства

Для описания архитектуры обмена был разработан алгоритм ведущего устройства:

1. На первом этапе работы алгоритма происходит инициализация переменных, констант и буферов для работы данного алгоритма.

2. Затем логика программы обращается к буферной памяти, в которой находится заданная пользователем информация о частоте и длительности ШИМ сигнала.

3. В первом такте сеанса обмена мастер формирует и отсылает всем ведомым пакет данных на «запись», содержащий взятую из буфера информацию о параметрах ШИМ сигнала. Тип посылки – широковещательный.

4. После передачи данной команды мастер запускает тайм-аут максимального времени ответа и переходит в режим ожидания подтверждения ACK. В данном режиме устройство «слушает» канал – проверяет буфер приемника на наличие принятой информации.

5. Получив подтверждения от каждого ведомого узла, ведущий узел убеждается, что данные были доставлены, после чего переходит к следующему шагу. Если подтверждение не было получено по истечении тайм-аута, пакет на «запись» отправляется повторно. При этом, если подтверждение не было получено только от одного устройства, мастер отправляет посылку на адрес этого устройства. Если подтверждение не пришло от двух и более устройств, ведущее отправляет повторно широковещательный пакет, затем переходит в режим ожидания подтверждения.

6. После получения подтверждения от последнего узла, мастер отправляет «старт» пакет. Его получение ведомыми будет сигнализировать о начале формирования ШИМ сигнала на выходе устройств. Одновременно с ведомыми, ведущее начинает формирование собственного ШИМ сигнала на выходе.

7. Следующим шагом мастер отправляет всем устройствам запрос на «чтение». Тип посылки – широковещательный. Получив данный пакет, ведомые измеряют параметры своего текущего состояния, значения токов и напряжений, затем формируют пакет ответа.

8. После передачи данной команды мастер переходит в режим ожидания ответа.

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

11. Оставшийся промежуток времени до окончания периода ШИМ выходного сигнала, мастер проверяет буфер данных, задаваемых пользователем, на наличие обновленной информации о параметрах сигнала.

12. Если параметры ШИМ изменились, то следующим шагом перед окончанием периода ШИМ произойдет формирование и отправка пакета на «запись» (п. 3) и далее повторение цикла описанных пунктов. Если параметры сигнала не изменились, то по окончанию периода, при переходе состояния ШИМ сигнала ведущего из 0 в 1, будет отправлен пакет синхронизации.

При неизменных параметрах сигнала, основной цикл работы будет сосредоточен в п. 7-12.

Блок-схема алгоритма работы ведущего устройства представлена на рисунке 1.

 

Рисунок 1. Блок схема алгоритма работы ведущего устройства

 

Алгоритм работы подчиненных узлов

1. В момент включения происходит инициализация переменных и констант, буферов UART приемника и передатчика, таблиц показателей параметров состояния.

2. Затем запускается бесконечный цикл, в теле которого слушаются запросы и выполняется логика работы программы.

3. На первом этапе сеанса обмена ведомые устройства находятся в режиме ожидания запроса. В этом состоянии устройства «слушают» канал.

4. При приеме устройством какой-либо информации, программная логика осуществляет проверку ID пакета. В первую очередь, путем сравнения адреса получателя, находящегося переданном пакете с собственным идентификатором или широковещательным адресом. Если адрес не совпал, устройство переходит в режим ожидания.

5. На этом же этапе определяется тип принятого пакета. Если была принята синхронизирующая посылка, то выполняется соответствующая ей логика программы. В частности, после считывания из буфера последнего бита принятого кадра происходит прерывание, в результате которого уровень выходного ШИМ сигнала будет сброшен в 0.

6. Для всех остальных типов посылок проверяется целостность принятых данных путем считывания контрольной суммы пакета. Если контрольная сумма не совпала, дальнейшая логика программы выполняться не будет и ведомое устройство перейдет в режим ожидания.

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

8. Отправив ответ, устройства снова переходят в режим ожидания.

 

Рисунок 2. Блок схема алгоритма работы ведомых устройств

 

Временные характеристики сеанса обмена

На рисунке 6 представлена временная диаграмма обмена данными:

Рисунок 3. Временная диаграмма обмена

 

Для описания диаграммы обмена данными, представлены следующие временные характеристики:

– время передачи пакета, равно отношению его разрядности (в битах) к скорости передачи (бит/с). Разрядность пакета определяется в зависимости от типа. Всего для обмена используется 6 типов пакетов:

  1. Пакет данных с запросом на «Запись», PACKp (9 байт);
  2. 2Пакет запроса на «Чтение» PACKg, (3 байта);
  3. Пакет данных ответа (9 байт);
  4. «Старт-пакет» PACKs, (2 байта);
  5. Кадр подтверждения, ACK (2 байта);
  6. Синхронизирующая посылка, PACKsnq, (2 байта).

Таким образом, время передачи пакетов будет иметь следующее значение:

,                                              (1)

по этой же формуле , .

,, – интервалы времени отправки подтверждений ведомыми устройствами, значение составляет 1,6 мкс;

,,– интервалы времени отправки пакета данных ответа ведомыми устройствами, значение составляет 2,4 мкс;

– среднее значение времени обработки пакета, приблизительно составляет 2 мкс;

 – значение времени чтения измеренных параметров и формирования пакета для отправки ответа, значение приблизительно составляет 3 мкс;

– период ШИМ сигнала, приблизительно равен 333 мкс;

 – общая длительность для определенных тактов обмена, если данные переданы без ошибки. Рассчитывается по формулам:

 – полное время такта передачи запроса на запись, с получением подтверждения, 17,6 мкс.

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

 – полное время такта передачи старт-пакета, 3,6 мкс;

 – полное время такта передачи запроса «на чтение», с получением ответа, 43,4 мкс;

 – полное время такта передачи синхронизирующей посылки, 3,6 мкс.

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

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

Заключение

Таким образом, в данной научной работе на примере конкретной промышленной сети был разработан протокол передачи.

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

 

Список литературы:

  1. Аристова Н.И. И снова о промышленных сетях // Автоматизация в промышленности. 2012. №12. С. 7-11.
  2. Титаев А. А. Промышленные сети: учеб. пособие / А. А. Титаев; Министерство науки и высшего образования РФ. — Екатеринбург: Изд­во Урал. ун­та, 2020. — 124 с.
  3. Энциклопедия АСУ ТП: 2 Промышленные сети и интерфейсы [Электронный ресурс]. – Режим доступа: https://bookasutp.ru/Chapter2_1.aspx (дата обращения: 21.05.2022)
  4. UART – Последовательный интерфейс передачи данных [Электронный ресурс]. – Режим доступа: https://voltiq.ru/wiki/uart-interface (дата обращения: 19.05.2022)
Проголосовать за статью
Конференция завершена
Эта статья набрала 0 голосов
Дипломы участников
Диплом Выбор редакционной коллегии

Оставить комментарий

Форма обратной связи о взаимодействии с сайтом
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.