|
<< Click to Display Table of Contents >> Navigation: Быстрый старт > БС. Урок 3 > БС. Урок 3. Объектный подход при создании проекта |
Для начала рассмотрим, что представляет собой объект. В MasterSCADA 4D объект – это именованная совокупность, объединяющая разнородные элементы проекта и связи между ними.

В объект могут входить программы, окна, отчеты и другие элементы, в том числе и вложенные объекты. Различные параметры этих элементов могут быть связаны между собой. Сам объект тоже имеет параметры – они предназначены для его связи с "внешним миром", что-то наподобие клеммника. Основное назначение этого принципа организации объекта – облегчение процедуры тиражирования. Копия такого объекта создаётся с сохранением всей внутренней структуры, включая межэлементные связи внутри объекта. Разработчику останется лишь подключить внешние.

Теперь посмотрим как это можно применить на практике.
В предыдущем уроке мы создали объект, состоящий из окна с изображением насоса, окна управления этим насосом, вызываемого по нажатию мышью на изображении насоса, и программы, реализующей логику управления насосом. Объект имеет один параметр для связи с внешним миром – это управляющий выход, сигнал с которого поступает на физический дискретный выход модуля контроллера.
А теперь зададимся целью создать насосную станцию, состоящую из нескольких насосов.
Переименуем созданный ранее объект в Насос 1.

В дереве объектов создадим ещё один объект и назовём его Насосная станция.

Теперь перетащим левой кнопкой мыши насос в насосную станцию. У нас получился корневой объект Насосная станция, у которого есть вложенный объект Насос 1.

Скопируем объект Насос 1 с помощью контекстного меню.

Далее вставим его в библиотеку Локальная,. Удалим объект Насос из Насосной станции и перенесем добавленный нами библиотечный объект в Насосную станцию, тем самым создав экземпляр нашего объекта в бибилиотеке.
Теперь насос стал библиотечным элементом, а насос в дереве объектов – его экземпляром, о чём нам говорит специальный значок рядом с именем и всплывающая подсказка.

Перетащим библиотечный насос в насосную станцию. Получаем два насоса.

Повторим эту процедуру ещё раз – теперь насосная станция включает уже три насоса, каждый из которых имеет один параметр для связи с внешними элементами или устройствами (Управляющий выход), а внутри содержит окна и программу управления.

Все насосы в дереве объектов являются экземплярами библиотечного. Это означает, что изменение чего-либо в библиотечном насосе отразится во всех его наследниках, то есть будет унаследовано. Например, раскроем дерево библиотечного насоса до содержимого папки Окна и переименуем Окно 1 в Изображение Насоса:

Увидим, что в дереве объектов это окно тоже переименовалось:

То есть любое изменение, внесенное в библиотечный тип, автоматически и сразу же применяется ко всем его экземплярам. Экземпляры нельзя редактировать локально — их структура и свойства полностью управляются типом. Это обеспечивает строгую согласованность данных и гарантирует, что все экземпляры одного типа будут идентичны.
А сейчас внесём ещё некоторые изменения. Откроем окно Изображение Насоса из библиотеки и сделаем его компактнее (окно экземпляра насоса закроем, оно не поддается редактированию):

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

Очень часто рядом с изображением объекта отображают какой-нибудь основной параметр его работы, а иногда и несколько. Для клапана – это его положение; для двигателя с частотным преобразователем – частота, и так далее. Мы выведем просто состояние. Перейдем на панель свойств элемента Текст, откроем конвертор на связи параметра Текст. Выберем точечную конвертацию, и для значения False укажем Останов, а для значения TRUE – Работа.

Закроем конвертор, нажав кнопку Применить.
Уменьшим размер окна до размеров картинки:

Добавим в насосной станции окно и назовём его Мнемосхема:

Назначим Мнемосхему стартовым окном узла при помощи контекстного меню:

Теперь перетащим поочередно все насосы в окно:

Свяжем выходы новых насосов с физическими выходами модулей ввода/вывода (мы подключили их в Уроке 1). Связывание удобнее производить, открыв деревья связываемых элементов в параллельных окнах. Нажмем правой кнопкой мыши на объект Насосная станция, и из контекстного меню выберем Открыть в панели веток:


Первый насос у нас уже связан. Теперь свяжем параметр Управляющий выход второго и третьего насоса с последующими дискретными выходами модуля:

На этом наша насосная станция готова!