СИСТЕМЫ РЕАЛЬНОГО...

102
МОСКОВСКИЙ АВТОМОБИЛЬНО- ДОРОЖНЫЙ ГОСУДАРCТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ (МАДИ) «Автоматизированные системы управления» БЕРНЕР Л.И., НИКОЛАЕВ А.Б., ХАДЕЕВ А.С. СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ Методические указания к лабораторным работам Свидетельство о регистрации электронного ресурса

Transcript of СИСТЕМЫ РЕАЛЬНОГО...

Page 1: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

МОСКОВСКИЙ АВТОМОБИЛЬНО-

ДОРОЖНЫЙ ГОСУДАРCТВЕННЫЙ

ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ (МАДИ)

«Автоматизированные системы управления»

БЕРНЕР Л.И., НИКОЛАЕВ А.Б., ХАДЕЕВ А.С.

СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ

Методические указания к лабораторным работам

Свидетельство

о регистрации электронного ресурса

Page 2: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

2

УДК 372.8:004.9:681.3

ББК 71.263.2: 32.97

Б51

Бернер Л.И.

Системы реального времени: методические указания к

лабораторным работам / Л.И. Бернер, А.Б. Николаев, А.С. Хадеев. –

Красноярск: Научно-инновационный центр, 2015. – 102 с.

ISBN 978-5-906314-25-3

DOI: 10.12731/asu.madi.ru/RTS.2015.102

Методические указания предназначены для студентов, изучающих

дисциплину «Системы реального времени» по направлениям подготовки

09.03.01 (230100) – Информатика и вычислительная техника, 09.03.02

(230400) – Информационные системы и технологии (на транспорте).

Методические указания содержат материалы, необходимые для

выполнения лабораторных работ и оформления отчётов по лабораторным

работам, а также могут быть полезны при работе над дипломным

проектом или при проведении исследований в магистерской диссертации.

УДК 372.8:004.9:681.3

ББК 71.263.2: 32.97

© Авторы, 2015

© МАДИ, 2015

© Научно-инновационный центр, 2015

Page 3: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

3

Введение

Лабораторные работы по дисциплине «Системы реального времени»

дают студенту комплексное представление об основных этапах создания

автоматизированной системы управления технологическими процессами

(АСУТП) на производственном предприятии [1…26].

Лабораторные работы приводятся в такой последовательности,

чтобы постепенно сформировать практические навыки инженерной

работы в области промышленной автоматизации: понимание работы

программного обеспечения и технических устройств комплексов АСУТП

[2].

АСУТП традиционно делятся на два уровня:

уровень полевого оборудования;

уровень диспетчерского управления.

На уровне полевого оборудования (на профессиональном жаргоне он

называется «нижним» уровнем) функционируют основные средства

телемеханики и автоматики, такие как датчики, исполнительные

механизмы и программируемые логические контроллеры (ПЛК) [3].

Уровень диспетчерского управления («верхний» уровень)

представлен специализированным программным обеспечением систем

SCADA [4] (Supervisory Control and Data Acquisition – системы

диспетчерского контроля и сбора данных), а также системами поддержки

принятия решений.

Лабораторная работа №1 предназначена для подготовки

«песочницы» - тестово-испытательного полигона для дальнейших

упражнений. В этой лабораторной работе также будут отработаны

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

ПЛК и SCADA-систем, а также их настройка.

Page 4: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

4

Программирование ПЛК с помощью языка релейно-контактных

схем (иными словами, на языке лестничной логики или Ladder Diagrams)

рассмотрено в лабораторной работе №2.

В лабораторной работе №3 рассмотрено применение библиотек

функциональных блоков при программировании ПЛК.

Одним из основных компонентов SCADA-систем является человеко-

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

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

исполнительных механизмов с возможностью передачи управляющих

воздействий от пользователя. Каждое программное обеспечение обладает

определённой спецификой проектирования графического интерфейса, но

есть и общие принципы. Упражнения для развития навыков работы с

графическим интерфейсом SCADA-систем приведены в лабораторной

работе №4.

Взаимодействие между устройствами полевого оборудования

осуществляется по стандартным интерфейсам, также используются

полевые шины. Взаимодействие систем диспетчерского управления с

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

таким как OPC и Modbus. Упражнения, предназначенные для

ознакомления с протоколом OPC, приведены в лабораторной работе №5,

а с протоколом Modbus в лабораторной работе №6.

В лабораторной работе №7 практикуется совместная работа SCADA-

системы и ПЛК.

В лабораторной работе №8 проводится практика написания

алгоритмов, работающих в составе SCADA-системы, а также упражнения

на создание шаблонов при разработке базы данных в SCADA-системе.

Page 5: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

5

Лабораторная работа №1

Подготовка рабочего места.

Инсталляция программных средств OpenBSI и ClearSCADA

Целью данной работы является:

знакомство с программным обеспечением Bristol OpenBSI,

обеспечивающим взаимодействие со стендовым ПЛК ControlWave

Micro;

знакомство с программным обеспечением Schneider Electric

ClearSCADA, предназначенным для организации человеко-

машинного интерфейса в диспетчерском управлении.

Задание. Необходимо инсталлировать на компьютере программное

обеспечение OpenBSI и ClearSCADA, дистрибутивы которого

предоставит преподаватель. После выполнения инсталляции, необходимо

провести настройку программного обеспечения в соответствии с

конкретными задачами, поставленными преподавателем.

Комментарии.

Установку программного обеспечения предполагается выполнить в

виртуальной среде, созданной с помощью Oracle VirtualBox [5].

Программное обеспечение Bristol OpenBSI [6] включает в себя

следующие модули:

модуль для взаимодействия с ПЛК;

модули для настройки;

модуль для выдачи данных по протоколу OPC.

Программное обеспечение систем SCADA и в частности

ClearSCADA [7] состоит из нескольких основных компонент:

базы данных реального времени (включающей вычисления, расчёт

логических операций и ведение архивов);

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

Page 6: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

6

системы тревог;

человеко-машинного графического интерфейса.

1.1. Инсталляция Oracle VirtualBox

Перед установкой специализированного программного обеспечения,

которое будет рассмотрено далее, необходимо на учебном компьютере

развернуть виртуальную среду - по сути, компьютер в компьютере.

Именно в ней далее и будет производиться инсталляция дополнительного

программного обеспечения. Виртуальная среда называется «гостевой»

машиной, тогда как основной компьютер – «хостовым».

В рамках данного курса предполагается использовать виртуальную

среду VirtualBox компании Oracle. Дистрибутив среды и образ жёсткого

диска с установленной операционной системой предоставит

преподаватель.

1.1.1. Образ диска для VirtualBox следует предварительно скопировать на

жёсткий диск учебного компьютера. Например, в папку

C:\Downloads\SRV\VirtualBox\HDD.

1.1.2. Установка программы VirtualBox выполняется с помощью мастера

установки и не должна представлять трудностей. После

инсталляции следует запустить VirtualBox.

1.1.3. В появившемся окне (Рис. 1) следует нажать кнопку Создать и

далее указать в качестве имени группу обучения (ASU-1, ASU-2 и

т.д.), тип операционной системы - Microsoft Windows, версию -

Windows XP.

Page 7: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

7

Рис. 1. Создание виртуальной машины

1.1.4. Для продвижения на следующий шаг мастера нужно нажать кнопку

Вперёд. На следующем шаге мастера нужно указать объём

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

компьютера под виртуальную машину. Рекомендуется указать

размер не меньше 512 Мб.

1.1.5. Далее предлагается указать используемый в виртуальной машине

образ жёсткого диска. Следует выбрать опцию Использовать

существующий виртуальный жёсткий диск (Рис. 2), после чего

нажать на кнопку справа от выпадающего списка с перечнем

доступных образов и найти на жёстком диске компьютера ранее

скопированный туда образ. Пример окна выбора образа показан на

следующем рисунке.

Page 8: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

8

Рис. 2. Выбор жёсткого диска

Примечание: если при этом возникнет сообщение вида как на Рис.

3, это означает, что на данном компьютере уже существует виртуальная

среда, в которой используется образ диска с тем же идентификатором.

Идентификатор можно спокойно поменять в любом hex-редакторе. По

адресу 0х197 (на Рис. 4 указано число EA) нужно указать любое отличное

от прежнего значение.

Рис. 3. Ошибка при подключении диска к виртуальной машине

Page 9: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

9

Рис. 4. Пример подписи для виртуального жёсткого диска

1.1.6. В свойствах созданной виртуальной машины на вкладке Общие

папки следует добавить папку C:\Downloads (Рис. 5). Если папка

на учебном компьютере ещё не была создана, нужно её создать.

Рис. 5. Подключение общей папки

Page 10: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

10

1.1.7. На вкладке Сеть укажите тип подключения Сетевой мост (Рис. 6).

Рис. 6. Задание типа сетевого подключения

1.1.8. Виртуальную машину можно запустить.

1.1.9. Чтобы подключённая общая папка была видна в гостевой машине,

в ней следует запустить проводник и в адресной строке указать

\\vboxsvr (Рис. 7).

Page 11: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

11

Рис. 7. Организация доступа к общей папке

Высветившуюся папку Downloads подключите как сетевой диск Z (в

главном меню папки Сервис → Подключить сетевой диск.

1.2. Инсталляция OpenBSI

1.2.1. Для начала установки программного пакета запустите исполняемый

файл мастера установки – OpenBSI.exe (Рис. 8).

Рис. 8. Содержимое папки с установочными файлами

1.2.2. Первый экран мастера (Рис. 9) оповещает о начале работы по

установке и предупреждает, что перед тем, как приступить, следует

удалить предыдущие версии программного обеспечения OpenBSI.

Page 12: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

12

Рис. 9. Главный экран мастера установки

1.2.3. На следующем экране предлагается ознакомиться с условиями

лицензионного соглашения и принять их.

1.2.4. Далее необходимо указать папку, в которую будет установлен

программный пакет (Рис. 10). Папка по умолчанию вполне

подходит.

Page 13: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

13

Рис. 10. Выбор места установки

1.2.5. Далее предлагается указать какие компоненты программного

обеспечения OpenBSI следует установить (Рис. 11). Для проведения

дальнейших лабораторных работ в их число должны входить:

NetView, ControlWave Designer, BSIConfig, ObjectServer

Database & Client.

Рис. 11. Выбор устанавливаемых компонентов

Page 14: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

14

1.2.6. На этом предварительные шаги по настройке закончены и можно

запустить инсталляцию программного пакета (Рис. 12).

Рис. 12. Экран с ходом инсталляции

1.2.7. После окончания инсталляции будет предложено перезагрузить

компьютер. Нужно последовать этому совету.

1.2.8. После загрузки компьютера на экране возникнет сообщение (Рис.

13) о том, что программное обеспечение работает в

демонстрационном режиме (60 дней). Этого вполне достаточно для

выполнения лабораторных работ.

Рис. 13. Сообщение о работе в демонстрационном режиме

Page 15: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

15

1.2.9. В списке установленных программ должны появиться две новые

группы: Bristol Babcock Licensing и OpenBSI Tools (Рис. 14).

Рис. 14. Вид списка установленных программ

1.2.10. Запустив программу License Manager из группы Bristol Babcock

Licensing, мы узнаем о количестве дней, оставшихся до истечения

срока действия демонстрационной лицензии (Рис. 15) (на

ознакомление с пакетом даётся 60 дней).

Page 16: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

16

Рис. 15. Окно менеджера лицензий

1.2.11. В случае наличия обновлений – «патчей» для программного

обеспечения, их также следует установить. Для этого просто

запускаются инсталляционные файлы, находящиеся в

соответствующих папках (Рис. 16).

Рис. 16. Установка инсталляционных файлов

Мастера обновлений выполнены стандартным образом и не требуют

дополнительных настроек (Рис. 17).

Page 17: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

17

Рис. 17. Работа инсталлятора

Возможно, потребуется принять лицензионное соглашение (Рис. 18)

в том случае, если на компьютере не был установлен пакет Microsoft

Visual C++ 2005.

Page 18: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

18

Рис. 18. Экран лицензионного соглашения Visual С++ 2005

1.2.12. Попробуйте запустить программу NetView из папки OpenBSI

Tools и если запуск прошёл нормально (предупреждение о демо-

режиме не в счёт), можно считать, что программное обеспечение

установлено (Рис. 19).

Рис. 19. Проверка правильности инсталляции

Page 19: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

19

1.3. Инсталляция ClearSCADA

SCADA-систему ClearSCADA можно скачать на официальном сайте

производителя – Schneider Electric (в настоящей лабораторной работе

рассматривается версия 2010 R2.1), пробный режим работы которой

имеет ограничение на размер базы данных (до 1000 точек) и время работы

без перезагрузки (2 часа).

1.3.1. При установке ClearSCADA в гостевой среде необходимо

скопировать дистрибутив из общей папки (\\vboxsvr\Downloads) на

диск гостевой машины. Если этого не сделать, при инсталляции из

сетевой папки возникнут ошибки.

1.3.2. Для начала инсталляции необходимо запустить программу

SetupLauncher.exe и далее выбрать Install ClearSCADA (Рис. 20).

Page 20: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

20

Рис. 20. Запуск программы установки ClearSCADA

1.3.3. Для продолжения установки необходимо согласиться с

лицензионным соглашением (Рис. 21).

Page 21: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

21

Рис. 21. Окно с лицензионным соглашением

1.3.4. Следующий экран мастера можно пропустить или ввести любые

сведения (Рис. 22).

Рис. 22. Окно сведений о пользователе

Page 22: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

22

1.3.5. Оптимальным вариантом установки будет полная установка: Full

(Recommended) (Рис. 23).

Рис. 23. Выбор типа установки

1.3.6. На следующем экране мастера установки нужно ввести логин и

пароль для администратора (Рис. 24). Для обучения лучше сделать

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

например, root\root. Галочку Disable super user account не ставьте!

Page 23: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

23

Рис. 24. Экран регистрации пользователя

1.3.7. Финальный экран мастера – нужно выбрать Install и дождаться

окончания установки (Рис. 25). После этого программное

обеспечение ClearSCADA будет установлено на компьютер.

Проверить его работу можно запустив программу-клиент ViewX.

Рис. 25. Финальный экран мастера установки

Page 24: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

24

Контрольные вопросы

1. Для чего предназначен пакет OpenBSI?

2. Что такое SCADA-система?

3. Какое место в АСУТП занимает SCADA-система?

4. Из каких программных компонент состоит SCADA-система?

5. Каково функциональное назначение базы данных реального

времени?

6. Способна ли SCADA-система производить логические и

математические вычисления?

Page 25: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

25

Лабораторная работа №2

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

Цель данного занятия в приобретении навыка программирования

промышленных программируемых логических контроллеров.

Задание. По заданию преподавателя написать алгоритм для ПЛК и

загрузить его в память оборудования, убедиться в работоспособности.

Комментарии. ПЛК – это специальные промышленные

компьютеры, предназначенные в основном для сбора информации от

датчиков, первичной обработки собранной информации, передачи её на

вышестоящий уровень АСУТП, приёма команд управления от

вышестоящего уровня и выдачи команд управления на исполнительные

устройства. Проще говоря, эти устройства связывают между собой

уровни АСУТП и телемеханики, выполняя сервисные функции.

Open BSI (Open Bristol System Interface – открытый интерфейс систем

Bristol Inc.) [6] разработан компанией Bristol Inc. (приобретена Emerson)

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

сети и диагностики информационных обменов, а также просмотра данных

(параметров процесса) для доступа к контроллерам, таким как стендовый

ControlWave Micro.

Пример: программа для ПЛК ControlWave, изменяющая значение

выходного сигнала при изменении входного.

Для выполнения данной лабораторной работы необходимо, чтобы на

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

обеспечение Open BSI Tools (см. лабораторную работу №1), а сам

компьютер был подключён к ПЛК ControlWave Micro.

Page 26: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

26

Ход выполнения лабораторной работы можно

контролировать, сверяясь со следующим видео.

2.1. Программирование ПЛК производится в специальной программе -

ControlWave Designer из комплекта Open BSI Tools. Запустите эту

программу.

2.2. Далее, создайте новый проект (в главном меню выберите File → New

Project…) и в появившемся окне создания проекта (Рис.1) выберите

тип CWMicro.

Рис.1. Выбор типа создаваемого проекта

2.3. В среде будет создан проект для данного типа ПЛК, содержимое

которого отобразится в окне дерева проекта (Рис.2).

Page 27: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

27

Рис.2 Окно дерева проекта

2.4. Теперь следует в проекте указать конфигурацию контроллера, с

которым ведётся работа (количество и тип модулей данных,

процессор и пр.). Запустите мастер конфигурации входов и выходов

(в главном меню View → IO Configurator) и на первом шаге добавьте

модули для 8-ми аналоговых входов, 4-х аналоговых выходов, 16

дискретных входов и 16 дискретных выходов. Можно добавить

модуль батарейки контроллера, чтобы отслеживать её разряд. Такова

конфигурация стендового ПЛК (Рис.3).

Последовательность добавления модулей важна!

Page 28: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

28

Рис.3. Конфигурация стендового ПЛК

2.5. На следующем шаге мастера проводится настройка входов и выходов

в каждом модуле. Выберем модуль дискретных входов и нажмём на

программную кнопку Show Digital Pins Information. Отобразится

окно настройки доступных входов (они называются Pins). В данной

лабораторной работе будет использоваться первый вход, поэтому

достаточно включить только его (следует щёлкнуть на нём ЛКМ для

этого). Используемые входы отображаются красным цветом, не

используемые – чёрным.

2.6. Поставьте галочки возле PDD и OPC как на рисунке ниже (Рис.5).

Page 29: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

29

Рис.5. Настройка сигнальных модулей

2.7. Такую же настройку следует провести и для остальных сигнальных

модулей.

2.8. Создайте программу в рабочем проекте, для чего следует в

контекстном меню ПКМ на папке Logical POUs в дереве проекта

выбрать Insert → Program.

2.9. В окне создания программы в поле Name укажите произвольное имя

программы (например, “Prg1”), а в блоке Language выберите язык

LD [8] (Рис.6).

Page 30: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

30

Рис.6. Выбор языка программирования

2.10. Созданная программа в дереве проекта состоит из трёх файлов:

информации, переменных и, собственно, алгоритма. В последнем

файле следует нарисовать с помощью панели Ladder ступеньку на

языке релейно-контактных схем, включающую в себя один вход и

один выход (Рис.7).

Рис.7. Визуализация алгоритма на языке релейно-контактных схем

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

первому выходному (это делается в свойствах элемента по двойному

щелчку ЛКМ на нём, в поле Name). Если выпадающий список пуст,

Page 31: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

31

нужно в блоке Scope выбрать опцию Global и дважды щёлкнуть по

элементу IO_GLOBAL_VARIABLES в дереве Gloval Variable Group

(Рис.8).

Рис.8. Привязка контактов

2.12. Теперь, для выполнения этой программы в ПЛК нужно создать для

неё задачу (это делается из контекстного меню по ПКМ на папке

Tasks). В свойствах вновь созданной задачи на вкладке Type

укажите, что выполняется она циклически - CYCLIC (Рис.9).

Рис.9. Создание задачи

2.13. К задаче нужно привязать те алгоритмы, которые будут ей

выполняться. Для этого в контекстном меню по ПКМ к задаче

Page 32: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

32

выберите Insert…→ Program Instance, а в настройках у созданного

элемента на вкладке Type выберите конкретный алгоритм (Рис.10).

Рис.10. Выбор алгоритма

2.14. После этих действий программа готова для загрузки в ПЛК. Для

этого следует настроить предварительно сетевое подключение к

ПЛК. Вызовите настройки для элемента RTU_RESOURCE:

ControlWave из контекстного меню по ПКМ, далее в блоке Port

укажите DLL, а в поле Parameter следующие параметры

подключения (Рис.11):

-ip192.168.1.151 -TO2000 –Usystem -p666666

Page 33: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

33

Рис.11. Экран настроек

2.15. Загрузите программу в ПЛК. Для этого следует вызвать диалог

управления проектом и нажать кнопку Download (Рис.12).

Page 34: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

34

Рис.12. Экран загрузки программы

2.16. Проверьте работу программы на стендовом ПЛК (Рис.13).

Page 35: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

35

Рис.13. Конфигурация стендовых переключателей

2.17. Дополнительное задание 1. Сделайте программу, которая выдаёт

выходной сигнал на PIN1 только когда нажаты входные PIN1 и PIN2.

2.18. Дополнительное задание 2. Сделайте программу, которая выдаёт

выходной сигнал на PIN1 и не гасит его после отключения входного

сигнала. Пусть выходной сигнал сбрасывается подачей входного

сигнала на PIN 2. Для этого используйте выходные катушки (S) и (R).

Page 36: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

36

Контрольные вопросы

1. Понятие открытого интерфейса систем Open BSI.

2. Что такое ПЛК?

3. Какие языки программирования используют для написания

алгоритмов для ПЛК?

4. Что такое сигнальные модули?

5. Что такое интерфейсные модули?

6. Какие интерфейсы существуют для построения полевых шин?

Page 37: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

37

Лабораторная работа №3

Использование функциональных блоков в программе для ПЛК

Цель данного занятия в приобретении навыка использования

функциональных блоков, при программировании промышленных

логических контроллеров.

Задание. Написать алгоритм для ПЛК с использованием

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

в работоспособности.

Комментарии. Программа для ПЛК Control Wave, изменяющая

значение выходного сигнала при изменении входного с использованием

таймера.

Ход выполнения лабораторной работы можно

контролировать, сверяясь со следующим видео.

3.1. Вызовите мастер редактирования, для чего в главном меню выберите

View→ Edit Wizard (Рис.1).

Page 38: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

38

Рис.1. Вызов мастера редактирования

Появится окно библиотеки дополнительных функций и

функциональных блоков (Рис.2).

Рис.2. Окно функциональных блоков

Page 39: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

39

3.2. С помощью выпадающего списка Group можно задать фильтр

выводимых на экран функциональных блоков. Фильтры бывают

следующих типов:

3.3. Фильтр AllFUs and FB выводит на экран все доступные функции,

которые отображаются в виде следующего значка

и логические блоки, они отмечены значком

На рисунке ниже показано окно с выбором фильтра (Рис.3).

Рис.3. Окно выбора фильтра

3.4. Function Blocks только функциональные блоки.

В качестве примера рассмотрим функциональный блок TON (Рис.4).

Этот функциональный блок даёт задержку передачи сигнала по

времени.

Рис.4. Функциональный блок TON

При появлении на входе IN сигнала, на выходе Q появляется этот

сигнал с задержкой PT. ET показывает оставшееся время задержки.

3.5. Functions содержит математические функции (Рис.5).

TON_1

TON

IN

PT

Q

ET

Page 40: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

40

Рис.5. Окно функций

Примером может послужить функция MAX (Рис.6).

Рис.6. Функциональный блок MAX

На первый и второй входы поступают сигналы, а на выходе

появляется наибольшее из двух входных значений.

3.6. Network Templates содержит шаблоны сетевых соединений (Рис.7).

Важно отметить, что шаблоны в данном разделе отображаются

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

момент программы.

Page 41: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

41

Рис.7. Окно Network Templates

3.7. Favorites содержит блоки, помеченные ранее как избранные. Это

может быть удобно при частом использовании каких-либо блоков.

3.8. Помимо этого могут содержаться отдельные библиотеки блоков,

добавленные пользователем (Рис.8).

Рис.8. Окно библиотеки блоков

Например, функциональный блок ALARM_ANALOG (Рис.9)

отслеживает значение как целых, так и вещественных чисел и

выдают сигнальное сообщение при превышении значения.

Page 42: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

42

Рис.9. Функциональный блок ALARM_ANALOG

3.9. StringFUs (Рис.10) содержат функции относящиеся к типу Word.

Рис.10. Окно String FUs

ALARM_ANALOG_1

ALARM_ANALOG

ibDisable

iaAlarmVar

iaHiHiLimit

iaHiLimit

iaLoLimit

iaLoLoLimit

iaHiDeadBand

iaLoDeadBand

iiHiHiPriority

iiHiPriority

iiLoPriority

iiLoLoPriority

istrUnitsText

istrDescText

odiStatus

ouiAlarmSeq

ouiGlobalSeq

Page 43: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

43

Примером такой функции служит функциональный блок REPLACE

(Рис.11).

Рис.11. Функциональный блок REPLACE

На вход IN1 подаётся строка (данные типа String), на IN2 – другая

строка, которая должна заменить часть слова из IN1. В L

обозначается значение количества заменяемых букв. В P - позиция

первой заменяемой буквы.

3.10. Typeconv. FUs (Рис.12) содержат функции конвертации одних

данных в другие.

Рис.12. Окно Type conv. FUs

Например, функция INT_TO_BOOL (Рис.13) преобразует данные

типа Integer в данные типа Bool.

Page 44: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

44

Рис.13. Функциональный блок INT_TO_BOOL

3.11. Возьмём в качестве примера программу, приведённую в

лабораторной работе №2 (Рис.14).

Рис.14. Программа из лабораторной работы 2

3.12. Добавим к ней таймер TON (Рис.15).

Рис.15. Добавлен таймер TON

Page 45: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

45

3.13. Теперь нужно ввести нужную нам задержку по времени до

срабатывания таймера. Для этого нужно 2 раза щелкнуть ЛКМ по

входу PT. После этого откроется окно свойств переменной (Рис.16).

В поле Name можно написать любое имя, в поле Initial value

указывается время задержки.

Рис.16. Настройки задержки времени

3.14. В данном случае мы указали время задержки T#5s. Это даст

задержку передачи сигнала на 5 секунд. Для справки приведена

временная диаграмма TON (Рис.17).

Рис.17. Временная диаграмма TON

3.15. Дополнительное задание. Сделайте программу, использующую

счётчик (функция CTU), увеличивающий своё значение по верхнему

фронту входного сигнала (например, DI6_2_1). Максимальное

Page 46: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

46

значение счётчика – 4, после чего он должен сбрасываться в 0.

Текущее значение счётчика должно показываться на выходе: должны

быть зажжены столько же лампочек выходных сигналов, какое число

находится в счётчике (например, выходные сигналы DO16_3_1-

DO16_3_4). Помимо функции счётчика, вам может понадобиться

функция сравнения EQ. Для того, чтобы функциональные блоки

корректно обрабатывали типы входных данных, задавать константы

нужно путём явного объявления типа данных, например INT#5.

Контрольные вопросы

1. Каково назначение функциональных блоков в программах ПЛК?

2. На каком языке программирования используются функциональные

блоки?

3. Каким образом создать свой функциональных блок?

4. Что можно передавать функциональному блоку в качестве

параметров?

Page 47: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

47

Лабораторная работа №4

Разработка человеко-машинного интерфейса в SCADA-системе

Целью данной работы является приобретение навыка разработки

человеко-машинного интерфейса в SCADA-системе, включающего в себя

разработку анимированных элементов графического интерфейса и их

связь с тегами базы данных реального времени.

Задание. Разработать в графическом редакторе SCADA-системы

анимированный символ или видеокадр по заданию преподавателя.

Связать поведение разработанного символа с изменением тега в базе

данных (с аналоговым или дискретным).

Комментарии. Важной частью системы диспетчерского управления

является человеко-машинный интерфейс. SCADA-системы

предоставляют возможность его разработки с помощью

специализированного компонента – графического редактора, в котором

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

- видеокадры. Современные средства разработки позволяют делать

графические элементы анимированными, что гораздо удобнее для

отображения состояния физических устройств. Анимация – это свойство

элемента динамически меняться в зависимости от значений свойства

объекта базы данных.

Пример: разработка анимированного индикатора уровня в

ClearSCADA.

На компьютере, на котором проводится лабораторная работа,

должна быть установлена SCADA-система Schneider Electric

ClearSCADA (см. лабораторную работу №1).

Page 48: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

48

Ход выполнения лабораторной работы можно

контролировать, сверяясь со следующим видео.

4.1. В качестве средства просмотра и изменения базы данных

используется конфигуратор ClearSCADA ViewX User Interface.

Исполняемый файл ViewX.exe находится в каталоге

${ClearSCADAROOT}\ViewX.exe. Запустить его можно из меню

Пуск/Программы/Schneider Electric ClearSCADA/ViewX.

4.2. Для выполнения данного задания необходимо создать в редакторе

ViewX видеокадр (Mimic) (Рис.1), который будет подложкой для

разработки графического элемента.

Рис.1. Создание видеокадра

Page 49: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

49

4.3. Созданный видеокадр необходимо открыть в режиме

редактирования. Изображение индикатора уровня представляет

собой прямоугольник серого цвета, внутри которого расположен

прямоугольник синего цвета. Последний меняет свой размер в

зависимости от величины уровня в ёмкости (Рис.2).

Рис.2. Анимированный индикатор

4.4. В свойствах (контекстное меню по ПКМ, затем Свойства…) синего

прямоугольника – индикатора – на вкладке Общее в секции

Динамическое изменение размера во втором выпадающем списке в

строке Направление нужно установить значение Снизу вверх.

Таким образом, динамическое изменение этого прямоугольника

будет происходить по вертикали. В полях Мин и Макс задаётся

диапазон изменения размера прямоугольника. В поле Значение

указывается текущий его размер (Рис.3).

Page 50: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

50

Рис.3. Настройки анимированного индикатора

4.5. Настройка анимации заключается в том, что свойствам графического

элемента (его размерам, цвету, углу поворота) сопоставляются

значения какого-либо параметра тега из базы данных SCADA-

системы. Добавим в базу данных ClearSCADA соответствующий

параметр как внутреннюю аналоговую точку (Internal Analog Point)

(Рис.5) и настроим для неё анимацию.

Page 51: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

51

Рис.4. Создание аналоговой точки

4.6. В ClearSCADA обращения к точкам должны быть записаны в

двойных кавычках. Например, при вводе строки

“.Уровень.FullScale” в анимацию объекта будет возвращено

значение параметра максимального допустимого значения точки

уровня (Рис.5).

Page 52: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

52

Рис.5. Настройка анимации

4.7. При указании адреса точки в выражениях ClearSCADA можно

использовать две схемы адресации: абсолютную и относительную.

При абсолютной адресации указывается полный путь к объекту. При

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

местоположения того видеокадра, который на неё ссылается.

Например, если сослаться на максимальное допустимое значение

точки уровня из видеокадра ВКадр.Анимированный индикатор,

будет использоваться запись: “.Уровень.FullScale”. Первая точка в

адресе говорит о том, что объект находится в одной группе с

редактируемым видеокадром. Дополнительные точки ссылаются в

адресе на поднятие на один уровень вверх по иерархии групп.

4.8. В ClearSCADA связать свойства элементов видеокадров со

значениями параметров объектов базы данных позволяет окно

анимации. В окне анимации индикатора (контекстное меню по ПКМ,

Page 53: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

53

затем Анимации…) пункты SizeMin, SizeMax и SizeVal нужно

привязать к параметрам аналоговой точки ZeroScale, FullScale и

CurrentValue (Рис.6) с тем, чтобы соотнести минимальное и

максимальное значения точки с минимальным и максимальным

размерами прямоугольника, а также его текущий размер с текущим

значением точки.

Рис.6. Связь свойств анимации с параметрами точки

4.9. Теперь при изменении значения точки уровня индикатор будет

менять свой размер, отображая тем самым уровень заполненности

ёмкости.

4.10. Сделанный выше видеокадр может использоваться для отображения

уровня жидкости в некоей ёмкости. Но, допустим, ёмкостей

несколько, а это значит, что изображение, сделанное выше, придётся

повторить несколько раз. ClearSCADA позволяет вставлять уже

готовый видеокадр на другие. Более того, в самом видеокадре есть

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

из внедрённых видеокадров разные источники (точки, проще говоря).

Это может быть удобно для того, чтобы сделав видеокадр с каким-

нибудь анимированным элементом, например, баком с уровнем,

далее его использовать многократно. Подобные видеокадры

называются символами, с их примерами можно познакомиться из

Page 54: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

54

библиотеки символов, устанавливающейся по умолчанию при

инсталляции ClearSCADA.

4.11. В созданном видеокадре с уровнем зайдите в главное меню

Редактирование → Параметры (Рис.7).

Рис.7. Параметры видеокадра для создания символа

Создайте группу DB_Point, под которой создайте элементы

ZeroScale, FullScale и CurrentValue (имена параметров должны

соответствовать ОРС-тегам точки) (Рис.8). Потом закройте окно.

Page 55: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

55

Рис.8. Группа DB_Point со свойствами

4.12. В свойствах анимации видеокадра замените привязку к конкретной

точке («Уровень») на привязку к элементам группы DB_Pont (Рис.9).

Рис.9. Привязка к свойствам группы вместо параметров точки

4.13. Создайте ещё две аналоговых точки. Перетащите на новый

видеокадр три копии символа с уровнем. Для того, чтобы связать

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

чего перетащите на него точку из базы данных (Рис.10).

Рис.10. Привязка анимации символа к параметрам точки

Page 56: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

56

Чтобы привязать сразу все свойства, нужно выбрать пункт

Сконфигурировать все.

4.14. Продемонстрируйте, что каждый уровень отображает значение

своей точки.

4.15. Дополнительное задание. Сделайте символ вентилятора, который

должен вращаться с одной из трёх скоростей (за вращение отвечает

свойство Rotate). Для вращения создайте две аналоговых точки: одна

задаёт скорость вращения, в другой фиксируется угол поворота

вентилятора (диапазон точки 0…360). Чтобы непрерывно

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

структурированного текста (алгоритмы подробно будут рассмотрены

в лабораторной работе №8) (Рис.11-12).

Рис.11. Создание алгоритма на языке структурированного текста

Page 57: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

57

Рис.12. Программа с заданием

В свойствах алгоритма укажите частоту выполнения раз в секунду

(Рис.13).

Рис.13. Настройка периодичности выполнения программы

На новый видеокадр перетащите два символа вентилятора, каждый

из которых свяжите со своими точками (угла поворота и скорости).

Продемонстрируйте, что все вентиляторы регулируются раздельно.

Контрольные вопросы

1. Каково назначение человеко-машинного интерфейса?

2. Как реализован человеко-машинный интерфейс в SCADA-

системах?

Page 58: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

58

3. Что такое анимация графических объектов?

4. Какие параметры графических элементов можно анимировать?

5. Какая максимальная длина тега допустима в SCADA-системе?

Page 59: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

59

Лабораторная работа №5

Протокол OPC

Целью данного занятия является изучение работы протокола OPC ,

а также приобретение навыка в настройке SCADA-системы для связи по

данному протоколу.

Задание. Инсталлировать программное обеспечение

симуляционного OPC-сервера для имитации работы серверной части.

Инсталлировать программное обеспечение OPC-клиента. Дистрибутивы

программного обеспечения предоставит преподаватель. Настроить OPC-

клиент для подключения к симуляционному OPC-серверу и получения с

него данных, потом выполнить подобную настройку для SCADA-

системы.

Комментарии. Протокол OPC (аббревиатура расшифровывается

как OLE for Process Control) является очень популярным протоколом для

организации обмена между информационными системами АСУТП. Он

представляет из себя набор спецификаций, одна из которых OPC DA (data

access) определяет схему работы двух программ по клиент-серверной

технологии для передачи данных. Для инженера важно знать то, что

протокол работает на основе технологии OLE, являющейся частью

семейства операционных систем Windows.

Разработкой и совершенствованием спецификаций протокола OPC

занимается организация OPC Foundation [9] – международная

некоммерческая организация, созданная в 1994 году и в которую входят

ведущие производители средств промышленной автоматизации.

Пример: подключение ClearSCADA к симуляционному OPC-серверу.

На компьютере, на котором проводится лабораторная работа,

должны быть SCADA-система ClearSCADA (см. лабораторную работу

Page 60: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

60

№1) и установлены симуляционный OPC-сервер Matrikon OPC Server for

Simulation [10]. Последний должен быть предоставлен преподавателем.

Ход выполнения лабораторной работы можно

контролировать, сверяясь со следующим видео.

5.1. Симуляционный OPC-сервер выступает как имитатор данных,

поступающих от оборудования. Для его настройки следует запустить

программное обеспечение Matrikon OPC Server for Simulation.

Параметры, которые может предоставить данный OPC-сервер,

делятся на две группы: симуляционные теги, и пользовательские теги

(Рис.1). Сервер постоянно обновляет значения симуляционных тегов

в соответствии с различными функциями распределения чисел:

случайной, пилообразной и пр. Количество симуляционных тегов

невелико, их используют в качестве источников данных для

пользовательских тегов, которых можно задать сколько угодно и

задать им любые имена.

Page 61: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

61

Рис.1. Окно ОРС-сервера

5.2. Создадим два пользовательских тега в группе Lab4: первый тег будет

иметь имя Analog1 и получать данные из симуляционного тега

Random.Int1, второй имя Bool1 и получать данные из тега

Random.Boolean (Рис.2).

Page 62: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

62

Рис.2. Создание пользовательских тегов

После выполнения вышеописанных операций OPC-сервер работает,

предоставляя возможность OPC-клиентам подключаться к себе и

получать данные, используя, соответственно, протокол OPC. Проверим

его работу с помощью SCADA-системы ClearSCADA, которая будет

выступать как OPC-клиент.

Настройка ClearSCADA для получения данных по какому-либо

протоколу сводится к созданию и настройке точек соответствующего

типа. Обычно это несколько конфигурационных точек, типа сервер и

сканер и столько же точек данных, сколько самих данных нужно

получить (Рис.3).

Page 63: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

63

Рис.3. Выбор конфигурационных точек

5.3. Создайте точку типа OPC-сервер. В свойствах точки на вкладке

Сервер в поле Имя OPC-сервера указать имя

Matrikon.OPC.Simulation, а тип соединения – Local Server (Рис.4).

Рис.4. Создание точки типа ОРС-сервер

Page 64: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

64

5.4. Создайте точку типа OPC-сканер. В свойствах точки на вкладке

Сканер в поле Сервер указать абсолютный путь к точке сервера (на

рисунке ниже это точка с названием Сервер, находящаяся в группе

OPC) (Рис.5).

Рис.5. Создание точки типа ОРС-сканер

5.5. Создайте аналоговую (Рис.6) и дискретную точки (Рис.7), у которых

на вкладках OPC в поле Сканер укажите абсолютный путь к точке

сканера, а в поле Имя тега - адрес соответствующего тега в Matrikon

OPC Server for Simulation. Диапазон изменения аналоговой точки

можно указать от -1000 до 1000.

Рис.6. Создание аналоговой точки типа ОРС-сервер

Page 65: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

65

Рис.7. Создание дискретной точки типа ОРС-сервер

5.6. То, как изменяются точки можно посмотреть, вызвав для них тренды

текущего значения (контекстное меню точки по ПКМ, затем

Отобразить текущий тренд) (Рис.8-9).

Рис.8. График изменения значений аналоговой точки

Page 66: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

66

Рис.9. График изменения значений дискретной точки

Контрольные вопросы

1. Каково назначение протокола OPC?

2. Какова область применения протокола OPC?

3. На основе какого сетевого интерфейса может работать протокол

OPC?

4. Возможно ли удалённое подключение клиента к серверу (клиент на

одном компьютере, сервер на другом)?

5. Допустимы ли русские символы в именах OPC-тегов?

Page 67: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

67

Лабораторная работа №6

Протокол Modbus

Целью данного занятия является изучение работы протокола

Modbus, а также приобретение навыка в настройке SCADA-системы для

работы по данному протоколу.

Задание. Инсталлировать программное обеспечение

симуляционного Modbus-сервера для имитации работы серверной части.

Инсталлировать программное обеспечение Modbus-клиента.

Дистрибутивы программного обеспечения предоставит преподаватель.

Настроить Modbus-клиент для подключения к симуляционному Modbus-

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

для SCADA-системы.

Комментарии. Протокол Modbus [11] – один из самых популярных

протоколов информационного обмена между компонентами АСУТП,

распространённый благодаря своей простоте. Протокол работает по

клиент-серверной технологии, сервер называется ведомым устройством

(Slave), а клиенты – ведущими (Master). Протокол имеет две

разновидности: ASCII и RTU, которые различаются способом

кодирования информации в пересылаемых телеграммах. Протокол может

работать через интерфейсы последовательной передачи данных (RS-232

и RS-485) и TCP/IP.

Для обмена данными в основном используются четыре функции:

0х1 – Read Coil Status – чтение однобитовых данных (дискретов)

0x2 – Read Input Status – чтение и запись дискретов

0x3 – Read Holding Registers – чтение 16-битовых регистров ввода

0x4 – Read Input Registers – чтение и запись регистров ввода

Пример: чтение аналоговых данных в ClearSCADA из симуляционного

Modbus-сервера.

Page 68: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

68

На компьютере, на котором проводится лабораторная работа,

должны быть установлены симуляционный Modbus-сервер WinTech

ModSim [12] и SCADA-система ClearSCADA.

Ход выполнения лабораторной работы можно

контролировать, сверяясь со следующим видео.

6.1. Проведём подготовку серверной части. Для этого запустите

симуляционный сервер WinTech ModSim и настройте его работу по

протоколу TCP/IP (в главном меню основного окна программы

выбрать Connection → Connect → Modbus/TCP Svr) (Рис.1).

Рис.1. Запуск симуляционного сервера

6.2. В следующем окне укажите порт, по которому сервер будет

принимать подключения (по умолчанию 502). Далее, следует открыть

окно с данными (в главном меню File → New) (Рис.2).

Page 69: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

69

Рис.2. Окно данных симуляционного сервера

6.3. Следует сказать несколько слов о настройках, доступных в

появившимся окне. В поле Device Id указывают номер устройства

(это идентификатор, который отличает серверы, работающие по

одному порту). Номер устройства может принимать значение от 0 до

255, причём 0 обычно не используют по техническим причинам. В

выпадающем списке MODBUS Point Type указывают, какая из

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

Предусмотрена работа только по четырём основным функциям,

выберем из них функцию 03: HOLDING REGISTER. В поле

Address указывается начальный адрес, с которого будут доступны

данные. Важно помнить одну особенность: в данном сервере он

завышен на единицу по отношению к адресу, указываемому в

клиентах. В поле Length указывается, сколько регистров данных

будет доступно с указанного выше адреса, укажем 10. На этом

настройка WinTech ModSim закончена.

6.4. Настройка ClearSCADA, как и для протокола OPC, заключается в

создании и конфигурации точек, которые расположены

Page 70: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

70

соответствующей группе контекстного меню вновь создаваемых

точек (Рис.3).

Рис.3. Настройка базы данных системы ClearSCADA

6.5. Конфигурация схожа с той, что задаётся для протокола OPC, только

серверная точка называется Канал. В этой точке (мы рассматриваем

вновь созданные точки, с настройками по умолчанию) на вкладке

Первичный порт в поле Тип соединения нужно указать TCP/IP

(Рис.4).

Рис.4 Выбор типа протокола

6.6. В точке сканера на вкладке Сканер в поле Канал укажите

абсолютный путь к точке канала, в поле Адрес устройства укажите

Page 71: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

71

Device Id симуляционного сервера, в поле Адрес данных значение

Address, уменьшенное на единицу, в поле Длина данных значение

поля Length, в поле Местоположение нужно будет выбрать тип

используемой функции Modbus.

6.7. Выберем в поле Местоположение функцию Хранимые регистры

(Рис.5).

Рис.5. Настройка точки сканера

6.8. На вкладке Первичный порт в поле Тип соединения нужно

установить Сеть, в поле Адрес сервера следует написать localhost, в

поле порт указать порт, по которому работает симуляционный сервер

(по умолчанию 502) (Рис.6).

Рис.6. Сетевые настройки точки сканера

Page 72: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

72

6.9. В аналоговой точке на вкладке Modbus в поле Сканер следует

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

Смещение размерностью в слово указать на сколько регистров от

начала считанного блока данных (адрес начала и длина блока были

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

параметр. Масштабирование для точки следует отключить (убрать

галочку Включен в блоке Масштабирование) (Рис.7).

Рис.7. Настройка аналоговой точки

6.10. Дискретная точка настраивается схожим образом, но потребуется

создать ещё одну точку сканера, для которой указать другую

используемую Modbus-функцию.

6.11. На этом настройка ClearSCADA завершена, обмен данными между

SCADA-системой и симуляционным Modbus-сервером ведётся.

Чтобы проверить его работу, в программе ModSim можно включить

симуляцию какого-либо регистра по случайному закону

распределения (дважды щёлкнув по нему и указав соответствующую

настройку) (Рис.8).

Page 73: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

73

Рис.8. Настройка дискретной точки

В ClearSCADA получаемые данные можно увидеть на текущем

тренде точки (Рис.9).

Рис.9. Визуализация полученных данных

Контрольные вопросы

1. Каковы назначения каждой из четырёх основных функций

протокола Modbus?

2. Возможна ли работа протокола через Ethernet?

3. Сколько клиентов одновременно могут подключиться к серверу

Modbus?

Page 74: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

74

Лабораторная работа №7

Взаимодействие ПЛК со SCADA-системой

Целью данного занятия является приобретение навыка в настройке

взаимодействия SCADA-системы и ПЛК, а также комплексное

ознакомление с работой АСУТП.

Задание. Настроить взаимодействие учебных ПЛК со SCADA-

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

преподавателя вывести в SCADA-системе изменяемые в ПЛК сигналы

или выдать управляющие воздействия на ПЛК.

Комментарии. Взаимодействие уровня полевого оборудования и

уровня диспетчерского управления является важной частью систем

АСУТП. ПЛК передают в SCADA-системы сведения о состоянии

технологического оборудования, а также по командам управляют

исполнительными механизмами.

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

информационного взаимодействия между ними были рассмотрены и

опробованы в прошлых лабораторных работах. Данный практикум

является ключевым, объединяющим все ранее полученные сведения.

Пример: вывод в ClearSCADA аналогового и дискретного сигналов,

изменяемых в ПЛК Bristol ControlWave, используя протокол OPC.

Для выполнения данной лабораторной работы необходимо, чтобы на

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

обеспечение Open BSI Tools и ClearSCADA (см. лабораторную работу

№1), а сам компьютер был подключен к учебному ПЛК ControlWave.

7.1. Для получения сведений от ПЛК на рабочей станции необходимо

установить драйверы данного ПЛК. Для контроллера Bristol

ControlWave драйверы идут в составе программного пакета Open BSI

Tools. Рассмотрим их настройку.

Page 75: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

75

7.2. В проекте программы для ПЛК необходимо указать параметры

передачи аналоговых и дискретных данных. Для этого в

ControlWave Designer выберите в главном меню пункт View →

System Variable Wizard и в появившемся окне глобальных

выходных переменных на вкладке Alarms в блоке IBP отметьте

пункт Alarms Present for Dest #1 (Рис.1).

Рис.1. Меню настроек ControlWave Designer

7.3. Затем, на вкладке IP RBE Configuration следует разрешить блок

Destination One и нажать программную кнопку RBE. В появившемся

окне настройки конфигурации RBE отметьте все пункты (Рис.2).

RBE (Read By Exception) – механизм передачи аналоговых сигналов

только при их изменении, что снижает загрузку каналов в

определённых случаях. Для данного механизма предусмотрено

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

сигнал считается неизменным.

Page 76: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

76

Рис.2. Окно настройки конфигурации RBE

7.4. На вкладке Port - Globals в блоке BSAP отметьте пункт Slave Port

number и выставьте для него значение 15 (Рис.3). После чего можно

закрыть окно настройки выходных переменных, нажав ОК.

Рис.3. Задание границы чувствительности

Page 77: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

77

7.5. Следующая настройка, необходимо провести для передачи сигналов

по протоколу OPC. В файле проекта Global_Variables для каждого

сигнала следует выставить отметки в столбцах PDD и OPC (Рис.4).

Рис.4. Настройка передачи сигналов

7.6. Теперь выберите в главном меню пункт View → Variable Extension

Vizard и в появившемся окне настройки переменных для аналоговых

сигналов отметьте столбец Rbe, а в столбце Rbe Deadband выставьте

зону чувствительности 0,1. Для дискретных сигналов следует

щёлкнуть ПКМ по столбец Alm и в появившемся окне настройки

дискретного сигнала в поле Type выберите Alarm on True State

(Рис.5).

Page 78: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

78

Рис.5. Настройка типа и приоритета сигналов

7.7. В поле программы следует добавить из библиотеки (вызывается из

главного меню View → Edit Wizard) функциональные блоки

DB_LOAD, ALARM и RBE (подробнее про функциональные блоки

см. лабораторную работу №3). Для блоков DB_LOAD и RBE нужно

указать логические единицы (TRUE) для входов ibLoadLists и

ioabInit соответственно (Рис.6).

Рис.6. Настройка блоков DB_LOAD, ALARM и RBE

Page 79: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

79

7.8. На этом настройка программы для ПЛК завершена, её можно

откомпилировать и загрузить в контроллер. Перейдём к настройке

драйверов ПЛК на рабочей станции.

7.9. Настроим сетевую конфигурацию, для чего следует вызвать

программу NetView. В ней нужно создать новый проект с

настройками по умолчанию. Под корневым элементов дерева проекта

следует добавить элемент сети (из контекстного меню по ПКМ Add

→ Network) (Рис.7). В свойствах добавляемой сети на первом шаге

мастера нужно указать произвольное имя в поле под строкой Enter a

name for the Network, потом отметить тип сети как IP Network. На

следующем шаге укажите IP адреса локальной рабочей станции, т.е.

станции, на которую будут передаваться дискретные парамеры по

возникновению тревог и аналоговые сигналы по механизму RBE.

Рис.7. Настройка сетевой конфигурации

7.10. Продолжим настройку сетевой конфигурации. Теперь следует

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

меню корневого элемента следует выбрать Add → Line. Настройки

оставить по умолчанию.

Page 80: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

80

7.11. Под созданным элементом сети следует добавить элемент

оборудования (в контекстном меню выбрать Add → RTU). Этих

элементов в реальной системе будет столько же, сколько всего ПЛК

подключены к полевой шине (Рис.8).

Рис.8. Создание элемента оборудования

7.12. В настройках RTU на вкладке Name нужно в поле Control Strategy

File указать полный путь к файлу программы ПЛК, а на вкладке IP в

блоке Addressing сетевые настройки данного ПЛК, в блоке

Destinations в полях Alarm и RBE указать сетевые адреса рабочей

станции (Рис.9).

Page 81: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

81

Рис.9. Задание сетевых адресов

7.13. Настроим работу OPC-сервера, входящего в состав Open BSI Tools.

Для этого следует запустить из папки ObjectServer программу

ObjectServer Session (в трее должен появиться голубой глобус с

зелёной галочкой), после чего программу ToolBox. При запросе

логина и пароля введите SYSTEM/SYSTEM. В появившемся окне

запустите пункт NW3000 Setup и выберите кнопку System Setup

(Рис.10).

Рис.10. Окно ToolBox

Page 82: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

82

7.14. Далее, в окне мастера в поле Network Definition File укажите путь к

файлу сетевой конфигурации, созданному в NetView. Все следующие

шаги следует пройти с настройками по умолчанию (Рис.11).

Рис.11. Указание пути к файлу сетевой конфигурации

7.15. После выполненных шагов OPC сервер должен отображать

актуальные данные для ПЛК.

7.16. Дополнительное задание. Создайте две дискретных OPC-точки (как

было рассмотрено в лабораторной работе №4) одну из которых

привяжите к 1-му дискретному входу ПЛК, вторую к 1-му

дискретному выходу. Создайте видеокадр, на котором

анимированный прямоугольник горит зелёным при отсутствии

сигнала на 1-м входе ПЛК и красным при наличии. Создайте кнопку,

по нажатию которой можно подавать/снимать напряжение на 1-м

выходе ПЛК.

Контрольные вопросы

1. Каково функциональное назначение драйверов ПЛК?

2. Для чего предназначено программное обеспечение Open BSI Tools?

Page 83: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

83

3. Какие основные протоколы служат для передачи данных от ПЛК к

SCADA-системам?

4. Что собой представляет программа для ПЛК?

Page 84: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

84

Лабораторная работа №8

Выполнение расчётов и алгоритмов в SCADA-системе. Шаблоны.

Цель данного занятия в приобретении навыка программирования,

особенностей ведения расчётов и логических вычислений в SCADA-

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

разработке базы данных SCADA-системы.

Задание. По заданию преподавателя написать алгоритм в среде

SCADA-системы, разработать шаблон, включающий в себя как минимум

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

Комментарии. SCADA-системы обладают возможностями для

написания внутренних программ на одном из встроенных языков

программирования.

В ClearSCADA алгоритмы представляют собой такие же точки, как

и объекты данных, графические элементы и пр. Программу можно

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

релейную схему, как диаграмму состояний, как структурированный текст

или как диаграмму функциональных блоков.

Шаблоны представляют собой очень удобный инструмент

разработки базы данных, который позволяет существенно сократить

затраты времени при работе с одинаковым по структуре оборудованием.

Шаблон похож на класс в объектно-ориентированном подходе, т.е. это

группа элементов, экземпляры которой обладают теми же настройками,

что и исходная (собственно, шаблон). Свойства экземпляров можно

переназначить, что даёт возможность гибко подстраивать данный

механизм под нужды разработчика.

Пример: программа на языке диаграмм функциональных блоков в

ClearSCADA, производящая арифметическую операцию над значением

одной точки и записывающей результат в другую. Шаблон чайника,

Page 85: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

85

включающий параметр датчика температуры и состояние

нагревательного элемента.

На компьютере, на котором проводится лабораторная работа,

должна быть установлена SCADA-система ClearSCADA.

1. Алгоритмы в ClearSCADA

Предварительно подготовим базу данных SCADA-системы. Задание

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

данных и одной точки – приёмника данных. В проводнике базы данных

следует создать две внутренние аналоговые точки. Точку-источник

назовём in, приёмник – out.

Ход выполнения лабораторной работы можно

контролировать, сверяясь со следующим видео.

8.1.1. Создайте точку алгоритма на языке диаграмм функциональных

блоков. В том же контекстном меню создания точек выберите

пункт Логика и далее Диаграмма функциональных блоков

(Рис.1).

Page 86: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

86

Рис.1. Меню выбора точки

8.1.2. Откройте точку алгоритма в режиме редактирования. На вкладке

Direct следует щёлкнуть ПКМ в таблице или по самой вкладке и

выбрать Добавить… (Рис.2).

Page 87: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

87

Рис.2. Режим добавления переменной

8.1.3. В появившемся окне добавления переменной в поле Имя введите

произвольное имя переменной (оно будет использоваться только в

данном алгоритме), в поле Тип тега - режим обращения к точке, в

поле Тег - абсолютный путь к имени точки с внутренним тегом, в

поле Тип - тип данных точки. Далее, зажав на каждой из

добавленных переменных ЛКМ, их следует перетащить на поле

алгоритма ниже. При отпускании кнопки возникнет контекстное

меню, в котором для входной переменной нужно выбрать пункт

Add Input Variable, а для выходной Add Output Variable.

Page 88: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

88

8.1.4. На поле алгоритма с помощью контекстного меню ПКМ нужно

добавить блок умножения и константу, равную двум (Рис.3).

Рис.3. Выбор операции умножения

8.1.5. Концы выведенных на поле блоков следует соединить в

соответствии с логикой работы блока умножения (Рис.4).

Рис.4. Связь фукнционального блока умножения с переменными

8.1.6. Сам алгоритм готов, теперь определим условия его работы. В

свойствах точки алгоритма на вкладке Логика в блоке

Выполнение, в поле Метод выполнения из выпадающего списка

нужно выбрать По внешнему изменению входа (Рис.5).

Page 89: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

89

Рис.5. Задание условий выполнения алгоритма умножения

8.1.7. Теперь, при изменении точки In в точку Out будет помещено

текущее значение In, умноженное на 2 (Рис.6).

Рис.6. Результат работы алгоритма

8.1.8. Дополнительное задание. Создайте две дискретных OPC-точки (как

было рассмотрено в дополнительном задании к лабораторной

работе №7) одну из которых привяжите к 1-му дискретному входу

ПЛК, вторую к 1-му дискретному выходу. Создайте в ClearSCADA

алгоритм, который при подаче сигнала на 1-й вход ПЛК выдаёт

сигнал на 1-й выход.

Page 90: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

90

2. Шаблоны в ClearSCADA

Рассмотрим привычный нам всем «чайник-минутку» для кипячения

воды. Его техническое устройство просто: датчик температуры и

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

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

состояния с возможностью управления на видеокадр SCADA-системы.

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

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

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

объект «чайник» и на его основе далее создавать новые объекты как

экземпляры шаблона.

Ход выполнения лабораторной работы можно

контролировать, сверяясь со следующим видео.

8.2.1. Разработаем в базе данных ClearSCADA группу точек,

описывающую объект типа «чайник». Для этого создайте группу и

добавьте в неё аналоговую точку для датчика температуры и

дискретную точку для состояния нагревательного элемента. Также

следует добавить точку типа Мимика и нарисовать на ней в виде

анимированных элементов индикатор температуры, индикатор

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

включение и выключение чайника (Рис.7).

Page 91: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

91

Рис.7. Группа точек в БД ClearSCADA, описывающую объект типа

«чайник»

8.2.2. Для настройки команд управления, подаваемых кнопками, следует

в контекстном меню по ПКМ для них выбрать Мастер выбора

действия…, в появившемся мастере на первом шаге отметьте

пункт Метод; на втором в поле Объект выберите точку состояния

нагревательного элемента, в поле Аларм укажите (Пусто), а в поле

Метод выберите из выпадающего списка Ручное управление…

(Рис.8).

Page 92: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

92

Рис.8. Настройка команд управления

8.2.3. На третьем шаге мастера укажите значение 1 для кнопки включения

и 0 для кнопки выключения.

8.2.4. Анимированный индикатор состояния следует сделать

двухцветным – по количеству состояний (Рис.9).

Рис.9. Задание цваета индикатора температуры

8.2.5. На этом настройка объекта закончена, конвертируем его в шаблон.

Для этого следует в контекстном меню для группы (вызывается по

ПКМ) выбрать Конвертировать в → Группа Шаблон. Для

Page 93: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

93

группы, ставшей шаблоном, поменяется цвет ярлычка с жёлтого на

красный.

8.2.6. Теперь, можно создать два экземпляра данного шаблона. Для этого

в контекстном меню папки, в которой будут созданы новые

объекты (можно в корневой группе), выберите Новый экземпляр

шаблона и, следуя по выпадающим меню, повторяющим

иерархическую структуру базы данных, выберите созданный

шаблон (Рис.10).

Рис.10. Выбор экземпляра шаблона

У созданных экземпляров цвет папки будет зелёного цвета – так

удобнее отличать экземпляры шаблона от обычных папок.

Таким образом, можно довольно быстро создать столько объектов,

сколько предполагается вывести на диспетчерский экран (Рис.11).

Page 94: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

94

Рис.11. Пример экземпляра «чайник»

Но предположим, что чайники различаются маркой, и датчик

выключения срабатывает у них при разной температуре. В экземплярах

шаблона, созданных нами, все свойства наследуются от самого шаблона,

а если поменять этот параметр в шаблоне, то он, соответственно,

изменится во всех экземплярах. Нужно сделать так, чтобы максимальное

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

отдельно.

8.2.7. Для этого в контекстном меню шаблона следует выбрать пункт

«Замена свойств…», далее, в появившемся дереве объектов

развернуть точку температуры и отметить галочкой те свойства,

которые предполагается менять независимо от шаблона (Рис.12).

Page 95: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

95

Рис.12. Меню выбора параметров

8.2.8. Отмеченные параметры станут доступны для изменения в

экземплярах шаблонов (Рис.13).

Рис.13. Редактирование шаблона

8.2.9. Дополнительное задание. Создайте шаблон с двумя дискретными

ОРС-точками и видеокадром, который будет связывать вход ПЛК с

Page 96: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

96

выходом (см. дополнительное задание 8.1.8). На видеокадре

должно отображаться состояние входа и состояние выхода как в

дополнительном задании к лабораторной работе №7. Создайте два

экземпляра шаблона и свяжите 1-й вход с 1-м выходом и 2-й со 2-

м.

Контрольные вопросы

1. Что такое язык структурированного текста?

2. Что такое язык функциональных блоков?

3. Какие ограничения на расчёты существуют для SCADA-систем?

4. Что такое шаблон?

5. Можно ли создавать вложенные шаблоны?

6. Какое количество шаблонов можно создать?

Page 97: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

97

Тезаурус и список сокращений

АСУТП – автоматизированная система управления технологическим

процессом. АСУТП представляет из себя программно-технический

комплекс, включающий в себя совместно работающие средства

автоматики, телемеханики, исполнительные механизмы и пр.,

предназначенные для автоматизации какого-либо технологического

процесса.

Видеокадр – экран или панель человеко-машинного интерфейса, на

которых в графическом виде, по возможности с использованием

анимации, отображён технологический процесс или его фрагмент.

Мнемосхема – см. видеокадр.

ПЛК – программируемый логический контроллер. Специализированный

промышленный компьютер, способный работать в сложных

производственных условиях. Конструкция ПЛК построена по модульной

архитектуре, где каждый модуль выполняет определённую функцию:

сбора данных от датчиков, выдача сигналов на исполнительные

механизмы, информационные стыки с другими системами и пр.

Тег – запись в информационной системе (в базе данных SCADA, в OPC-

сервере и др.), содержащая определённые данные или наборы данных.

SCADA – Supervisory Control and Data Acquisition (диспетчерский

контроль и сбор данных), специализированное программное обеспечение

для создания систем диспетчерского управления в АСУТП.

Список символов, используемых в тексте

ПКМ – Правая кнопка мыши

ЛКМ – Левая кнопка мыши

Page 98: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

98

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

1. Бернер Л.И., Богданов Н.К., Хадеев А.С. Системы реального

времени. Курс лекций. Изд. 2-е, перераб. и дополн. М.:МАДИ, 2011.

P. 169.

2. Денисенко В.В. Компьютерное управление технологическим

процессом, экспериментом, оборудованием. М.: Горячая линия-

Телеком, 2013. P. 606.

3. Webb J.W., Reis R.A. Programmable logic controllers. Principle and

applications. 5th ed. New Jersey: Pearson Education Inc., Upper Saddle

River, 2003. P. 460.

4. Андреев Е.Б., Куцевич Н.А., Синенко О.В. SCADA-системы: взгляд

изнутри. М.: Издательство “РтСофт,” 2004. P. 176.

5. Официальный веб-сайт Oracle VirtualBox [Online]. URL:

https://www.virtualbox.org/.

6. Официальный веб-сайт продукта OpenBSI [Online]. URL:

http://www2.emersonprocess.com/en-

us/brands/bristol/scadasoftware/openbsi/Pages/openbsi.aspx.

7. Официальный веб-сайт ClearSCADA, включающий руководство

пользователя (Англ.) [Online]. URL: http://goo.gl/tB4Wq.

8. International Standard IEC 61131-3. Programmable Controllers – Part 3:

Programming Languages. 2-nd Ed. International Electrotechnical

Commission, 2003. P. 143.

9. Официальный сайт организации OPC Foundation (Англ.) [Online].

URL: http://www.opcfoundation.org.

10. Официальный веб сайт компании Matrikon (Англ.) [Online]. URL:

http://www.matrikonopc.com.

11. Денисенко В.В. Протоколы и сети Modbus и Modbus TCP //

Современные технологии автоматизации. 2010. Vol. 4. P. 90–94.

12. Официальный веб сайт организации Modbus Organization (Англ.)

[Online]. URL: http://www.modbus.org.

13. Остроух А.В. Основы построения систем искусственного интеллекта

для промышленных и строительных предприятий: монография / А.В.

Остроух. – М.: ООО «Техполиграфцентр», 2008. – 280 с. – ISBN 978-

5-94385-033-2.

Page 99: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

99

14. Остроух А.В. Автоматизация управления производством.

Повышение эффективности автоматизированных аналитических

систем предприятий автомобильной промышленности / А.В.

Остроух, Э.А. Чернов, Д.Т. Нгуен. – Saarbrucken, Germany: LAP

LAMBERT Academic Publishing, 2013. – 285 p. – ISBN 978-3-659-

34762-7.

15. Остроух А.В. Интеллектуальные системы в науке и производстве /

А.В. Остроух, А.Б. Николаев. – Saarbrucken, Germany: Palmarium

Academic Publishing, 2012. – 312 p. – ISBN 978-3-659-98006-0.

16. Остроух А.В. Мультимедиа-технологии / А.В. Остроух, А.М.

Васьковский, А.Б. Николаев. – Saarbrucken, Germany: Palmarium

Academic Publishing, 2012. – 228 p. – ISBN 978-3-659-98030-5.

17. Остроух А.В. Ввод и обработка цифровой информации: учебник для

нач. проф. образования / А.В. Остроух. – М.: Издательский центр

«Академия», 2012. – 288 с. – ISBN 978-5-7695-9457-1.

18. Николаев А.Б. Информационные технологии в менеджменте и

транспортной логистике: учебное пособие / А.Б. Николаев, А.В.

Остроух. – Saint-Louis, MO, USA: Publishing House Science and

Innovation Center, 2013. – 254 с. – ISBN 978-0-615-67110-9.

19. Остроух А.В. Системы искусственного интеллекта в

промышленности, робототехнике и транспортном комплексе:

монография / А.В. Остроух – Красноярск: Научно-инновационный

центр, 2013. – 326 с. – ISBN 978-5-906314-10-9.

20. Остроух А.В. Основы информационных технологий: учебник для

сред. проф. образования / А.В. Остроух. – М.: Издательский центр

«Академия», 2014. – 208 с. – ISBN 978-5-4468-0588-4.

21. Остроух А.В. Автоматизация кирпичного производства.

Автоматизация линии перемещения продукции кирпичного

производства в зоне сушки и обжига / А.В. Остроух, Р.Р. Чаудхари.

– Saarbrucken, Germany: LAP LAMBERT Academic Publishing, 2015.

– 117 p. – ISBN 978-3-659-67986-5.

22. Остроух А.В. Проектирование системы распределенных баз данных

/ А.В. Остроух, А.В. Помазанов. – Saarbrucken, Germany: Palmarium

Academic Publishing, 2015. – 117 p. – ISBN 978-3-659-60041-8.

23. Остроух А.В. Подготовка выпускной квалификационной работы

магистра: методические указания / А.В. Остроух, А.Б. Николаев, Н.Е.

Page 100: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

100

Суркова. – Saarbrucken, Germany: LAP LAMBERT Academic

Publishing, 2015. – 73 p. – ISBN 978-3-659-39376-1.

24. Остроух А.В. Автоматизация управления автотранспортными

предприятиями. Новый подход на основе интеллектуальных

мультиагентных систем / А.В. Остроух, А.В. Воробьева, Н.Е.

Суркова. – Saarbrucken, Germany: LAP LAMBERT Academic

Publishing, 2015. – 117 p. – ISBN 978-3-659-47576-4.

25. Суркова Н.Е. Профессиональные информационные системы и базы

данных: методические указания к лабораторным работам / Н.Е.

Суркова, А.В. Остроух, Т.И. Еремина. – Красноярск: Научно-

инновационный центр, 2015. – 49 с. – ISBN 978-5-906314-23-9. DOI:

10.12731/asu.madi.ru/PISDB.2015.49.

26. Суркова Н.Е., Остроух А.В., Еремина Т.И. ЭЛЕКТРОННОЕ

УЧЕБНОЕ ИЗДАНИЕ «ПРОФЕССИОНАЛЬНЫЕ

ИНФОРМАЦИОННЫЕ СИСТЕМЫ И БАЗЫ ДАННЫХ:

МЕТОДИЧЕСКИЕ УКАЗАНИЯ К ЛАБОРАТОРНЫМ РАБОТАМ»

// Хроники объединенного фонда электронных ресурсов Наука и

образование. 2015. № 3 (70). С. 10.

Page 101: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

101

Оглавление

Введение ................................................................................................... 3

Лабораторная работа №1 ........................................................................ 5

Лабораторная работа №2 ...................................................................... 25

Лабораторная работа №3 ...................................................................... 37

Лабораторная работа №4 ...................................................................... 47

Лабораторная работа №5 ...................................................................... 59

Лабораторная работа №6 ...................................................................... 67

Лабораторная работа №7 ...................................................................... 74

Лабораторная работа №8 ...................................................................... 84

Тезаурус и список сокращений ............................................................ 97

Список символов, используемых в тексте.......................................... 97

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

Page 102: СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИlib.madi.ru/fel/fel1/fel16M489.pdfВысветившуюся папку Downloads подключите как сетевой диск

102

Учебное издание

Леонид Исаакович Бернер

Андрей Борисович Николаев

Антон Сергеевич Хадеев

СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ

Методические указания к

лабораторным работам

Свидетельство

о регистрации электронного ресурса

Издательство «Научно-инновационный центр»

660127, г. Красноярск, ул. 9 Мая, 5, 192

Тел. (391) 271-23-8