Материал: Изучение работы протокола Modbus RTU и программируемого логического контроллера

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

// ---- PortName = "COM4", Baud Rate = 9600, Parity = None,

// ---- Data Bits = 8, Stop Bits = One, Handshake = None_serialPort = new SerialPort("COM4", 9600, Parity.None, 8, StopBits.One);

_serialPort.Handshake = Handshake.None;

// Открытие последовательного порта

//Считываение из входного буфера SerialPort определенного число байтов и их запись в //байтовый массив, начиная с указанной позиции.

//Запись указанного числа байтов в последовательный порт, используя данные из буфера.



private byte[] createRespondMessage()

{

int numberOfPoints = 0;

int bytesToSend = 0;

int startAddress = 0;

numberOfPoints = (_messageReceived[4] << 8) | _messageReceived[5];

bytesToSend = 5 * numberOfPoints + 2;

byte[] respondMessage = new byte[bytesToSend];

respondMessage[0] = _slaveAddress;

respondMessage[1] = 3;

respondMessage[2] = Convert.ToByte(2 * numberOfPoints);

startAddress = (_messageReceived[2] << 8) | _messageReceived[3];

int j = 0;

for (int i = 0; i < numberOfPoints; i++)

{[i + j + 3] = Convert.ToByte((_registerData[startAddress + i] >> 8)& 0xff);[i + j + 4] = Convert.ToByte(_registerData[startAddress + i] & 0xff);

j++;

}

byte[] crcCalculation = CRCStuff.calculateCRC(ref respondMessage, bytesToSend - 2);

respondMessage[bytesToSend - 2] = crcCalculation[0];

respondMessage[bytesToSend - 1] = crcCalculation[1];

return respondMessage;

 }

Тестирование работы протокола Modbus RTU в режиме Slave

программируемый логический контроллер фрейм

Описание пользовательских функций, поддерживаемых “Системой бесперебойного питания” при подключении по протоколу Modbus RTU:

- светодиот питание от сети

- светодиот питание от АБ

- светодиот питание от байпас

- светодиот авария

- надпись питание от дистр. сети

- питание от альтернативной сети

- питание от локальной сети

- питание от акб.

- заряд аб от дистриб. сети

- заряд аб от альтернативной сети

- заряд аб от локальной сети

- продажа энергии АБ в локальную сеть

- продажа энергии АИ в локальную сеть

Зададим параметры функций (см. Рисунок 5).

Рисунок 5 - Значения функций

Результат работы протокола Modbus RTU представлены на рисунке 6.

Рисунок 6 - Результат работы

2. Работа с ПЛК ОВЕН

ОВЕН ПЛК100 - Программируемый логический контроллер

Программируемый логический контроллер ОВЕН ПЛК100 предназначен для создания систем автоматизированного управления технологическим оборудованием в энергетике, на ж/д транспорте, в различных областях промышленности, жилищно-коммунального и сельского хозяйства, на опасных производственных объектах (например Котлонадзора), подконтрольных органам Ростехнадзора.

Логика работы ПЛК100 определяется потребителем в процессе программирования контроллера. Программирование осуществляется с помощью системы программирования СоDеSуs 2.3.8.1 и старше.

ПЛК100-220.Р-L - контроллер с номинальным напряжением питания 220 В переменного тока, оснащенный э/м реле и имеющий лицензионное ограничение размера области ввода-вывода в 360 байт.

Технические характеристики ПЛК100 представлены в таблице 3.

Таблица 3 - Технические характеристики ПЛК100

Общие сведения

Конструктивное исполнение

Унифицированный корпус для крепления на DIN-рейку (ширина 35 мм), длина 105 мм (6U), шаг клемм 7,5 мм

Степень защиты корпуса

IР20

Напряжение питания: ПЛК100-24 ПЛК100-220

 18…29 В постоянного тока (номинальное напряжение 24 В) 90…264 В переменного тока (номинальное напряжение 220 В) частотой 47…63 Гц

Потребляемая мощность, не более ПЛК100-24 ПЛК100-220

6 Вт* 10 Вт

Индикация передней панели

1 индикатор питания 8 индикаторов входов 12 индикаторов выходов

Ресурсы

Центральный процессор

32-х разрядный RISC-процессор 200 МГц на базе ядра АRМ9

Объем оперативной памяти

8 Мбайт

Объем энергонезависимой памяти хранения ядра СоDеSуs, программ и архивов

4 Мбайт**

Размер Retain-памяти

Время выполнения цикла ПЛК

Минимальное 250 мкс (не фиксированное), типовое от 1 мс

Дискретные входы

Количество дискретных входов

8

Гальваническая развязка дискретных входов

есть, групповая

Электрическая прочность изоляции дискретных входов

1,5кВ

Максимальная частота сигнала, подаваемого на дискретный вход

1 кГц при программной обработке 10 кГц при применении аппаратного счетчика и обработчика энкодера

Дискретные выходы

Количество дискретных выходов в: ПЛК100-24.Р и ПЛК100-220.Р ПЛК100-24.К

 6 э/м реле 6 сдвоенных транзисторных ключей (всего 12 выходных сигналов)

Гальваническая развязка дискретных выходов Электрическая прочность изоляции дискретных выходов

есть, индивидуальная 1,5кВ

Интерфейсы связи

Интерфейсы

Ethernet 100 Ваsе-Т RS-232 - 2 канала RS-485 USB 2.0 -Device

Скорость обмена по интерфейсам RS

от 4800 до 115200 bps

Протоколы

ОВЕН ModBus-RTU, ModBus-АSCII DСОN МоdBus-ТСР GateWay (протокол СоDеSуs)

Программирование

Среда программирования

СоDеSуs 2.3.8.1 (и старше)

Интерфейс для программирования и отладки

RS-232 USB-Device Ethernet

/GPRS модем ОВЕН ПМ01

/GPRS модем ОВЕН ПМ01 предназначен для удаленного обмена данными через беспроводные системы связи стандарта GSM с оборудованием, оснащенным последовательными интерфейсами связи RS232 или RS485.

Модем имеет возможность выполнять следующие функции:

·        прием и передача SMS;

·        прием и передача данных с помощью CSD;

·        прием и передача данных с помощью GPRS;

·        работа с последовательными интерфейсами RS-232 и RS-485;

·        управление приемом и передачей данных по последовательным интерфейсам RS-232 и RS-485 с помощью АТ-команд в соответствии со стандартами GSM 07.05 и GSM 07.07.

·        индикация наличия обмена данными по последовательным портам RS-485 или RS-232;

·        индикация наличия регистрации в сети GSM и наличия передачи данных в режиме GPRS.

·        функция автоматической периодической перезагрузки модема в соответствии с заданными настройками.

Работа Овен ПЛК 100 через GSM модем ПМ01

Схеме работы Овен ПЛК 100 через GSM модем ПМ01 представлена на рисунке 7.

Рисунок 7 - Схеме работы Овен ПЛК 100 через GSM модем ПМ01

Создадим новый проект в среде разработки CoDeSys, с конфигурацией, представленной на рисунках 8-9.

Рисунок 8 - Конфигурация проекта

Рисунок 9 - Конфигурация проекта

Зададим минимальное время цикла равное 10 мс (см. Рисунок 10).

Рисунок 10 - Задание минимального времени цикла

Установим интерфейс, при помощи которого подключен модем, RS-485-1 и установим его сетевые настройки (см. Рисунок 11).

Рисунок 11 - Задание интерфейса

Для работы с модемом добавим 2 библиотеки: UNM.lib и SmsOwenLib.lib (см. Рисунок 12).

Рисунок 12 - Подключение библиотек

Зададим логику работы программы, добавив функциональные блоки из ранее подключенных библиотек (см. Рисунок 13).

Рисунок 13 - Логика работы программы

Для соединения ПЛК с компьютером через последовательный модем необходимо изменить конфигурацию ПЛК, так как представлено на рисунке 14, а так же зададим дополнительные настройки сетевого окружения Windows (см. Рисунок 15)

Рисунок 14 - Параметры связи ПЛК

Рисунок 15 -Параметры сетевого окружения Windows

Откомпилируем проект и загрузим его в ПЛК ОВЕН 100, после чего выполним тестирование (см. Рисунок 16).

Рисунок 16 - Тестирование проекта

Отправим СМС сообщение с текстом “Пуск” на номер Сим-карты установленной в модеме ПМ01 (см. Рисунок 17).

Рисунок 17 - Отправка СМС сообщения

После доставки СМС сообщения, на ПЛК ОВЕН 100 загорится первое реле (см. Рисунки 18-19).

Рисунок 18 - Сообщение доставлено

Рисунок 19 - Результат доставки сообщения

Заключение

В период прохождения производственной практики я проделала следующую работу:

·        изучила работу протокола ModBus RTU;

·        научилась работать с последовательным портом в среде Visual Studio C#

·        изучила работу ПЛК ОВЕН 100;

·        изучила работу GSM/GPRS модема ОВЕН ПМ01

·        изучила работу Овен ПЛК 100 через GSM модем ПМ01

·        ознакомилась с организационной структурой, задачами и функциями отдела предприятия;

·        ознакомилась с системой профессиональных обязанностей и должностными инструкциями специалистов отдела;



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

1.       <http://www.owen.ru>

.         <https://ru.wikipedia.org/wiki/Modbus>

.         Статья: “Visual Studio C#: работа с последовательным портом” <http://microsin.net/programming/PC/visual-studio-sharp-dot-net-com-port.html>

.         Аннотация протокол передачи данных mod <https://www.google.ru/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CB0QFjAA&url=http%3A%2F%2Fintellect-module.ru%2Fdownloads%2Fmanuals%2Finode_35D%2FModBus_RTU.pdf&ei=4S2eVZvtB4X5ywOeq5zgCg&usg=AFQjCNERrkv2njA7DavN-2LcA7oggtNzWw&sig2=NdyIki622TdnedrXf5wGKg&bvm=bv.96952980,d.bGQ>bus rtu. <http://intellect-odule.ru/downloads/manuals/inode_35D/ModBus_RTU.pdf>