Режим DP на PROFIBUS с S7–300 как DP Master и DP Slave
PROFIBUS DP предоставляет простой, производительный обмен данными с распределенными устройствами периферии. Этот раздел объясняет как конфигурировать и программировать систему DP master с STEP7, раздел основан на примере PROFIBUS CP, в котором контроллер SIMATIC S7–300 работает как DP master, и как "умный" DP slave.
Основная задача
Так же как и раньше здесь выбрана простая задача коммуникации:
- Программируемый контроллер SIMATIC 300 DP master обрабатывает данные процесса
- Данные выдаются на на SIMATIC 300 DP slave, в котором данные процесса обрабатываются дальше и выдаются на процесс. Данные процесса читаются DP slave и возвращаются в DP master.
Следующая схема показывает этот процесс и функционирование программы пользователя.
Конфигурация системы
Необходима следующая конфигурация системы для нашего примера
Если хотите оставить данный пример без изменений, необходимы следующие компоненты:
Кол-во | Тип | Номер для заказа: |
---|---|---|
2 | Программируемый контроллер S7–300 с CPU 314 | скачать каталог ST 70* |
2 | CP 342–5 DP | 6GK7 342–5DA00–0XE0 |
2 | Модуль симуляции DI/DO | 6ES7 323–1BL00–0AA0 |
1 | Среда передачи | См. руководство PROFIBUS |
1 | Устройство программирования (PG/PC) с • установленным программным пакетом STEP 7 версии V4.x или выше • дополнительным программным пакетом NCM S7 для PROFIBUS версии V4.x или выше. • Интерфейс MPI • Как опция для работы PG/PC на PROFIBUS: CP для подключения к PROFIBUS -> диагностика/запуск/обслуживание |
См. каталог ST 70 |
Можно адаптировать пример конфигурации, чтобы он мог соответствовать Вашей собственной конфигурации. Возможные изменения показаны ниже:
- Использование другого типа CPU
- Работа без модулей симуляции
Это требует только небольших изменений в программах пользователя, что уже не существует вывода на модуль симуляции. Остается возможность наблюдать связь, отображая блоки данных на PG. - Использование других модулей ввода/вывода
Учтите, что возможно изменится адресация модулей. - Изменение порядка модулей в носителе модулей
С некоторыми типами CPU это приведет к изменению адресов модулей.
Если Вы измените адрес модуля в конфигурации, Вы должны также адаптировать программу пользователя и сконфигурированные соединения.
Подробные шаги
Создание/открытие проекта и конфигурирование/подключение к сети аппаратуры описано в разделе 2.
Ключ к конфигурации системы DP master – задание режима PROFIBUS CP. Режим, заданный для CP, отображается и в имени станции.
Установка режима DP на примере контроллера S7 “DP master” и “DP slave”:
- Выберите PROFIBUS CP в таблице конфигурации S7 станции 2
- Выберите Edit > Object Properties ( Правка > Свойства объекта)
Если режим работы еще не был автоматически установлен как DP slave, щелкните по полю DP slave и повторите процедуру для станции DP MASTER.
Функция “Module is Active Node on PROFIBUS” (“Модуль – активный узел на PROFIBUS”)должна быть всегда выбрана, если:
• Вы хотите работать также по соединениям FDL или S7
• Вам требуются функции PG (например, диагностика).
Назначение DP slaves и модулей slave к DP master
После того, как Вы сконфигурировали аппаратуру, Вы должны сообщить DP master конфигурацию подключенных DP slaves. Это проще сделать, если DP slaves уже сконфигурированы и подключены к сети в проекте STEP 7.
Однако вначале, нужно получить общее представление о конфигурации системы DP master для примера:
Откройте аппаратную конфигурацию станции S7, которая должна работать как DP master.
Можно сразу увидеть, что CP 342–5 сконфигурирован как DP master, т.к. к CP присоединена система DP master.
Для DP slave существует по одному универсальному модулю, сконфигурированных для ввода и вывода данных, каждый длиной по 16 байт.
Возможно независимо выбрать DP модули из аппаратной конфигурации.
1.Выберите DP slave, который уже был создан; в нижней половине экрана будет таблица конфигурации для DP slave.
2.Выберите в аппаратном каталоге запись “PROFIBUS–DP/Configured Stations (Сконфигурированные станции)/S7–300 CP342–5 DP”. Вы увидите соответствующие записи для универсальных модулей, которые можно если нужно, перенести в таблицу конфигурации.
Создание DP master и DP slaves
В конфигурации примера у Вас уже есть система DP master. Здесь кратко объясняет, как получена эта конфигурация. Станция, которая будет работать в качестве master, должна быть сконфигурирована PROFIBUS CP с функциями master (CP 342–5 DP). В качестве альтернативы можно использовать CPU с встроенными функциями DP. Установив режим DP master для PROFIBUS CP, в таблице конфигурации системы DP master появиться “держатель” . Теперь, следуя почти той же процедуре, мы получили сконфигурированные станции с PROFIBUS CP как DP slaves, эти DP slaves добавятся в аппаратном каталоге как показано выше.
Мы сделали следующее
1. Сконфигурировали в проекте STEP 7 систему DP master с SIMATIC 300 DP slave в качестве “интеллектуального” DP slave
2. Проверили режимы работы станции
3. Загрузили конфигурацию в обе станции S7
Теперь станции готовы для загрузки программ пользователя.
Написание программы пользователя
Задача, описанная в разделе 5.1, должна быть теперь преобразована в соответствующую программу пользователя ПЛК. Для того, чтобы отредактировать программы или загрузить их в станции S7 выберите контейнер, содержащий программные блоки, в соответствующей станции SIMATIC 300 в PROJECT–PROFIBUS.
Для лучшего обзора можно распечатать программные блоки и детально их разобрать.
Задача в S7 станция 1 | Задача в S7 станция 2 | Описание задач в программных блоках |
---|---|---|
Обработка данных процесса |
------------------ | Симуляция изменения значений процесса: OB100 Подготавливает блоки данных DB30 и DB31. Процессные значения сохраняются в этих блоках данных. OB1 Координирует работу программы. FC29 Слово данных циклически инкрементируется и декрементируется. Временной интервал для инкрементирования и декрементирования равен 10 секундам. FC1 (DP_SEND) Передает слово данных в Станцию 2 как текущее значение процесса (задание). |
------------------- | Прием и обработка выходных данных и выдача на процесс |
Прием и обработка выходных данных: OB100 Подготавливает блоки данных DB10 и DB11. Процессные значения сохраняются в этих блоках данных. OB1 Координирует работу программы. FC2 (DP_RECV) Сохраняет принятые данные в блоке данных и выводит данные на симуляцию процесса. FC1 (DP_SEND) Возвращает данные в Станцию 1 как подтверждение задания. |
Анализ принятых данных |
------------------ | FC2 (DP_RECV) Принимает и анализирует входные данные, переданные из DP slave (данные процесса): Выводит данные процесса на модуль симуляции. |
Организационные блоки в примере создают следующую последовательность программы в
двух станциях S7:
Программирование блоков FC для режима DP
Для управления режимом DP существуют две функции (FC), как показано:
• DP_SEND (FC1)
Этот блок передает данные из заданной области вывода DP в PROFIBUS CP для вывода на распределенную периферию.
• DP_RECV (FC2)
Блок принимает данные процесса от распределенной периферии и информацию о состоянии в заданную область ввода DP. В нашем примере программа пользователя написана на языке STL. Следующие примеры показывают назначение вызываемых параметров для DP_SEND и DP_RECV в станции S7 “Master” (DP master).
Для полного листинга этих FC и других OB и FC, обращайтесь, пожалуйста, к распечатке примера проекта.
Расширение примера программы
Также можно расширить пример программы включив дополнительные функции, такие как:
• Анализ возвращаемых кодов FC DP_SEND и DP_RECV, которые позволят реагировать на ошибки в системе и на её определенные состояния.
• Использование FC DP_DIAG и DP_CTRL. С DP–DIAG можно запросить диагностическую информацию из DP slaves. С DP_CTRL можно посылать управляющие задания в PROFIBUS CP из программы пользователя.
Анализ параметров DONE, ERROR и STATUS для DP_SEND и NDR, ERROR и STATUS для DP_RECV. Вы анализируете эти параметры как показано ниже:
Типичные коды (STATUS), которые должны быть обработаны в программе пользователя, например:
80D2H Неверный стартовый адрес модуля (например, Вы забыли изменить адрес после перемещения модуля).
Пример без модуля симуляции
Если не хотите использовать модули симуляции, просто деактивируйте вывод ”T QW ...” в блоке FC31 для DP master и DP slave. Тогда Вы можете следить за исполнением программы, отображая блоки данных online в STEP7 в STL.
Итак мы сделали следующее:
1. Создали программы пользователя в соответствии с описанием задачи для обеих DP master и DP slave
2. Расширили пример программы, например, анализом кодов состояния
3. Загрузили программы пользователя в CPU обеих станций S7
Результат:
При работаете с модулями симуляции, вы можете увидеть горящие светодиоды на модулях симуляции.
Если Вы не можете обнаружить передачу данных, выполните следующее:
. Проверьте последовательность программы online в STEP 7 в STL. Проверьте, выдается ли изменяемое слово данных на модуль симуляции.
. Перейдите к следующему шагу и проверьте связь при помощи диагностики PROFIBUS.
Запуск и Диагностика
Можно использовать следующие функции диагностики для проверки состояния станций и режима DP.
Вот собственно говоря, очередная глава закончена.
<--Предыдущая статья | Следующая статья--> |