Существует множество способов, с помощью которых ПЛК могут общаться и взаимодействовать друг с другом, в этой статье мы поговорим об одном из этих методов, а именно о том, как установить Siemens Communication между ПЛК с использованием функции i-device для передачи данных от ПЛК к ПЛК.
Что такое функция I-Device?
Функцию I-Device можно использовать для очень простого обмена данными между двумя ПЛК. I-Device — это просто ПЛК, который используется как устройство ввода-вывода. Это означает, что ПЛК будет действовать как модуль ввода-вывода, предоставляя входы и получая выходы с другим ПЛК.
Функция I-device позволяет PROFINET взаимодействовать не только с подчиненными устройствами, такими как контроллеры ввода-вывода, но и с другими контроллерами более высокого уровня или центральными контроллерами в качестве устройства ввода-вывода.
Siemens Communications between ПЛКs
Большинство ПЛК семейства S7 поддерживают функцию I-Device, но некоторые контроллеры не поддерживают ее в зависимости от версии прошивки, например:
- S7-300 (с версии прошивки V3.2)
- S7-1200 (с версии прошивки V4)
Вы можете просто узнать, есть ли у вашего контроллера функция I-device или нет, зайдя в свойства интерфейса PROFINET вашего ПЛК и проверив опцию «рабочий режим». См. рисунки 1a и 1b.
рисунок 1a. ПЛК не поддерживает I-device
На рисунке мы не видим опцию «рабочий режим», поэтому мы знаем, что ПЛК не поддерживает функцию I-device.
Рисунок 1b. ПЛК поддерживает функцию I-device
Как видно из рисунка, этот ПЛК поддерживает функцию I-device.
ПЛК с конфигурацией «Интеллектуальное устройство ввода-вывода» называется I-Device. I-Device похоже на стандартное устройство ввода-вывода и должно обрабатываться как таковое. Это означает, что I-Device также подключено к контроллеру ввода-вывода более высокого уровня.
Таким образом, I-Device будет действовать как модуль ввода-вывода, но это также все еще ПЛК, поэтому он все еще действует как контроллер, если вы этого хотите.
Концепция обмена данными
Руководящий принцип метода I-Device заключается в использовании известного образа процесса в ЦП. С точки зрения контроллера ввода-вывода более высокого уровня, связь с I-Device похожа на связь с распределенным вводом-выводом с обычными процессами чтения и записи на входах и выходах.
С точки зрения I-Device, передача данных на контроллер ввода-вывода более высокого уровня также аналогична передаче данных на локальный или назначенный распределенный ввод-вывод через входы и выходы.
Варианты конфигурации I-устройства
Существует две возможности конфигурации:
- Настройка I-устройства в проекте.
- Настройка I-устройства, используемого в другом проекте
При настройке I-устройства для другого проекта STEP 7 позволяет сделать это путем экспорта настроенного I-устройства в файл GSD. Файл GSD можно импортировать в другой проект или другую инженерную систему, как и другие файлы GSD.
Это позволяет не только осуществлять связь внутри проекта, но и связь между проектами и обмениваться данными между различными производителями проверенным и испытанным способом. Мы покажем это в другой статье.
В этой статье мы покажем конфигурацию I-устройства в одном проекте ПЛК Siemens.
Конфигурация I-устройства в одном проекте ПЛК
Мы предположим, что в нашем проекте есть два ПЛК, CPU 1516-3 PN/DP, который будет действовать как контроллер в этой конфигурации, и CPU 1214C, который будет действовать как I-устройство.
Начните с добавления двух ПЛК в ваш проект TIA Portal и настройте соединение Profinet между ними. Смотрите рисунок 2.
рисунок 2. Настройте соединение между двумя ПЛК.
Теперь нам нужно настроить ПЛК CPU 1214C как I-устройство.
Это можно сделать, перейдя в свойства интерфейса Profinet и в опции режима работы нажав на опцию устройства ввода-вывода. Смотрите рисунок 3.
рисунок 3. Выберите устройство ввода-вывода.
После этого вам нужно назначить I-устройство контроллеру более высокого уровня, которым в нашем проекте является ПЛК CPU 1516-3 PN/DP.
Для этого просто выберите этот ПЛК из раскрывающегося списка Назначенный контроллер ввода-вывода. Смотрите рисунок 4.
рисунок 4. Назначьте I-устройство контроллеру.
После этого I-устройство теперь подключено и назначено контроллеру ПЛК. Смотрите рисунок 5.
рисунок 5. I-устройство назначено контроллеру ПЛК.
Следующий шаг — обмен данными между I-устройством и контроллером с помощью так называемых областей передачи.
Создание области передачи
Области передачи — это области ввода-вывода, которые используются для обмена данными между I-устройством и контроллером ввода-вывода более высокого уровня.
Перейдите в раздел «Связь I-устройства». Щелкните первое поле столбца «Области передачи». TIA Portal создаст предопределенное имя, которое вы можете изменить. Как вы можете видеть на рисунке 6.
рисунок 6. Создание области передачи
Выберите тип связи: в настоящее время можно выбрать только CD. См. рисунок 7.
Рисунок 7. Выберите вариант связи CD.
После выбора опции CD будет создана область передачи, а также автоматически созданы адреса контроллера ввода-вывода и I-устройства. См. рисунок 8.
Рисунок 8. Область передачи создана.
Адреса предварительно назначаются автоматически, при необходимости вы можете настроить адреса в соответствии со своей средой и указать длину области передачи для последовательной передачи.
Чтобы создать другую область передачи, как и прежде, просто нажмите «добавить новую», см. рисунок 9.
рисунок 9. Добавить новую область передачи.
Как мы уже говорили, обмен данными основан на простой концепции образа обработки, что означает, что вы всегда отправляете выход и получаете вход.
Также обратите внимание, что стрелка, которую вы видите на предыдущем рисунке, указывает поток информации между I-устройством и контроллером. Итак, если я отправлю данные с контроллера на I-устройство, то стрелка будет направлена от контроллера к I-устройству, и адрес контроллера будет выводом, а адрес I-устройства будет вводом и наоборот, как вы можете видеть на предыдущем рисунке.
Также помните, что всегда лучше переименовывать области передачи на правильные указывающие имена. Смотрите рисунок 10.
Рисунок 10. Переименуйте области передачи.
Загрузка проекта ПЛК
Чтобы загрузить данные проекта ПЛК, выберите оба контроллера один за другим в навигации проекта и загрузите проект в соответствующий модуль.
Обратите внимание, что, поскольку у нас нет реальных аппаратных устройств, мы не можем смоделировать эту функцию.