Tag Archives: MasterSCADA

Простой пример работы с MasterSCADA

 

Материал взят с сайта производителя (www.insat.ru)

Мой блог находят по следующим фразам

Подключение ПЧ Delta к MasterSCADA

Данный пример демонстрирует работу с частотным преобразователем Delta Eclectronics VFD-E. Частотный преобразователь должен быть настроен на протокол Modbus RTU, также необходимо сделать несколько дополнительных настроек.

Настройки частотного преобразователя.

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

Аналогичные настройки в MasterLink (в SCADA).

Настройки группы параметр 02.xx нужны для управления частотным преобразователем со SCADA системы (пуск/стоп, вперед/назад, реверс, задание частоты). Если нужен только мониторинг состояния частотного преобразователя, то нужно задать только параметры из групп 09.xx – в этом случае в SCADA будут заблокированы кнопки управления.

Настройки MasterSCADA.

Необходимо в режиме разработки задать номер COM порта, через который будет осуществляться работа с преобразователем частоты.

Остальные параметры менять не нужно.

Настройка DCOM для Windows XP SP2, Windows 2003 SP1 (часть 1)

В ОС Windows XP / 2003 может быть включен «Брандмауэр Windows» («Windows Firewall»). Для работы по DCOM его необходимо выключить или настроить для работы с соответствующим сервером оборудования. Описание настройки брандмауэра выходит за рамки данной документации.

Из меню «Пуск» («Start») выбрать «Выполнить» («Run»).


Ввести «dcomcnfg» и нажать «OK».

Выбрать «Корень консоли»»Службы компонентовКомпьютерыМой компьютерНастройка DCOM» («Consol Root»»Component ServicesComputersMy ComputerDCOM config»), нажать правую кнопку мыши и выбрать «Свойства» («Properties») так как показано на рисунке:

Выбрать закладку «Свойства по умолчанию» («Default Properties») и установить параметры, указанные на рисунке:

Выбрать закладку «Безопасность COM» («COM Security»). В группе «Права доступа» («Access Permissions») нажать кнопку «Изменить ограничения» («Edit Limits»):

Разрешить «Локальный доступ» («Local Access»), «Удаленный доступ» («Remote Access») для пользователей: «Анонимный вход» («Anonymous Logon»), «Все» («Everyone»), «Интерактивные» («Interactive»), «Сеть» («Network») и «System»:

В группе «Права доступа» («Access Permissions») нажать кнопку «Изменить настройки по умолчанию» («Edit Default»):

Разрешить «Локальный доступ» («Local Access»), «Удаленный доступ» («Remote Access») для пользователей: «Анонимный вход» («Anonymous Logon»), «Все» («Everyone»), «Интерактивные» («Interactive»), «Сеть» («Network») и «System»:

В группе «Разрешение на запуск и активацию» («Launch and Activation Permissions») нажать кнопку «Изменить ограничения» («Edit Limits»):

 

Информация об OPC DA серверах

ОРС сервер — программа, которую MasterSCADA использует в качестве «посредника» для доступа к данным, поступающим от аппаратных средств. Это можно представить следующим образом:

Есть различие между понятиями ОРС-сервер контроллера (программа) и ОРС — сервер- элемент дерева системы

Первое — это самостоятельная программа, смысл которой описан выше. Второе — объект, предназначенный для удобства использования этой программы в дереве Системы.

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

Для того, чтобы использовать ОРС сервер контроллера необходимо реализовать следующие действия:

  1. Выполнить команду «поиск ОРС серверов» (из контекстное меню Компьютера, или меню «Добавить»), если она не была выполнена раньше.
  2. Вставить необходимые ОРС серверы (функциональные блоки) в Компьютер. Это можно сделать одним из трех способов: 1)через контекстное меню Компьютера; 2) из списка «ОРС серверы» в меню «Добавить»; 3) из библиотеки ОРС серверы в палитре элементов.
  3. Вставить ОРС переменные (см. раздел ОРС переменные)

ОРС HDA сервер — программа, которую MasterSCADA использует в качестве «посредника» для доступа к архивным данным, которые предоставляет контроллер или счетчик коммерческого учета. Контроллер (счетчик) накапливает эти данные путем опроса аппаратных средств.

OPC HDА 1.2 (OPC Historical Data Access – интерфейс OPC для доступа к архивным данным).

Все полученные данные от ОРС HDA сервера MasterSCADA сохраняет в своем архиве. Дальнейшая работа с этими данными осуществляется при помощи стандартных функций MasterSCADA. Возможно просматривать эти данные при помощи трендов.

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

Поиск ОРС DA серверов

Диалоговое окно браузера OPC DA серверов вызывается по команде главного меню Сервис-> Органайзер -> OPC Серверов…, или  через контекстное меню Компьютера. В результате на экране появится органайзер приблизительно такого вида:

В окне органайзера отображено дерево ОРС серверов, обнаруженных на данном компьютере и в ближайшем сетевом окружении. Отметьте флажками ОРС серверы, которые вы собираетесь использовать в проекте и впоследствии они будут отображены в контекстном меню Компьютера , раскрывающейся команде «ОРС серверы» в меню «Добавить» , а также в категории «ОРС серверы» в палитре элементов.

Поиск OPC HDA серверов

Диалоговое окно браузера OPC HDA серверов вызывается по команде главного меню Сервис-> Органайзер -> OPC HDA Серверов…, или  через контекстное меню Компьютера.

В результате на экране появится органайзер приблизительно такого вида:

В окне органайзера отображено дерево ОРС серверов, обнаруженных на данном компьютере и в ближайшем сетевом окружении. Отметьте флажками ОРС серверы, которые вы собираетесь использовать в проекте и впоследствии они будут отображены в контекстном меню Компьютера.

Работа с элементами MasterSCADA

Вставка в дерево нового объекта

Для того, чтобы вставить в дерево новый компьютер, ОРС сервер, переменную, группу переменных или новый объект — используйте контекстное меню, кнопку <Insert> или одну из команд меню «Добавить».

Выбор и вставка в дерево объекта нового элемента

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

Перемещение элемента в дереве

Перемещение, копирование, дублирование и удаление элемента  в дереве можно осуществить через контекстное меню, всплывающее при нажатии правой клавиши мыши на нужном элементе, с помощью кнопок панели инструментов, или использовать горячие клавиши.

Копирование и дублирование

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

Выделение группы

В дереве объекта можно использовать выделение группы элементов подобно тому, как это делается в программе Explorer. Если щелкнуть левой клавишей мыши на элементе, удерживая нажатой клавишу <Ctrl>, то элемент будет добавлен к уже выделенным, если же удерживать клавишу <Shift>, будут выделены все элементы от ранее выделенного до текущего, находящиеся на одном уровне вложенности.

 

ОРС переменные в MasterSCADA

Через ОРС переменные в MasterSCADA осуществляется доступ к данным ОРС серверов. Существует три основных вида ОРС переменных:

  • для чтения;
  • для записи;
  • для чтения и записи.

Чтобы поместить в Проект ОРС переменные щелкните правой кнопкой мыши на ОРС сервере, в контекстном меню выберите пункт «Вставить» и нажмите на ОРС переменные, предполагается, что они в ОРС сервере уже настроены (способ настройки переменных зависит от конкретного ОРС сервера контроллера и описан в его собственной документации). В результате этого действия появится диалог «Выбор переменных» содержащий дерево, в котором отображены ОРС переменные:

Здесь следует отметить флажком те переменные или целые группы, которые вы предполагаете использовать в проекте и нажать ОК. После этого в дереве Системы будут сразу отображены выбранные группы и переменные, с которыми можно совершать те же действия, что и с входами и выходами функциональных блоков, то есть перетаскивать мышью для установления связей, изменять параметры страницы свойств и т. д.

Если вы предполагаете использовать в Проекте все Переменные ОРС сервера, выберите в контекстном меню ОРС сервера пункт «Вставить все» и в дереве отобразятся сразу все созданные группы и переменные.

В некоторых ОРС серверах имена групп переменных совпадают с переменными находящимися на том же уровне. В этом случае предусмотрено следующее:
1. При вставке переменной, имя которой совпадает со вставленной ранее группой выдается сообщение в протоколе работы и переменная не вставляется.
2. При вставке группы, имя которой совпадает со вставленной ранее переменной выдается сообщение в протоколе работы и группа не вставляется.
3. При вставке переменной и группы с одинаковыми именами вставляется только переменная и выдается сообщение о невозможности вставить группу.

В MasterSCADA реализована поддержка ОРС переменных, являющихся массивами. При вставке такой переменной создается группа (по имени переменной), в которую добавляются ОРС переменные, соответствующие элементам массива. Количество элементов в массиве устанавливается на странице свойств группы ОРС переменных «Общие». Имена переменных в группе соответствуют индексу элемента в массиве, т.е., в режиме исполнение на элемент группы с именем «1» поступает значение из массива по индексу 1.

Внимание:    OPC переменные можно не только связывать с уже существующими переменными дерева объектов. Несколько выделенных OPC переменных (используйте групповое выделение) можно «таскать» прямо в Объект. При этом в Объекте  автоматически создаются Входы-Выходы, уже связанные с этими OPC переменными.

Конфигурирование сетевых настроек MasterSCADA

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

Клиент-серверная архитектура

Одноранговая архитектура

1. Сетевые настройки MasterSCADA:

  • В дереве системы выберите компьютер, для которого создаются сетевые настройки.
  • Перейдите на закладку «Режим исполнения».
  • Выберите закладку «Связь». (Примечание: Для того, чтобы удостовериться в наличии связи между компьютерами, воспользуйтесь командой «ping», входящей в набор вспомогательных утилит Windows.)
  • В поле «IP-адреса основного компьютера» введите сетевой адрес, назначенный Вашим системным администратором.
  • Поле «IP-адреса резервного компьютера» заполняется только при наличии резервированной системы управления.

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

Примечание:

Для правильной работы MasterSCADA в сети, необходимо отключить брандмауэр Windows, или другой firewall, используемый системой. Необходимо также сделать общий доступ по сети к папкам проекта на обоих компьютерах.

2. Распределение объектов по узлам сети:

  • Каждому компьютеру или контроллеру (если есть поддержка программирования из-под MasterSCADA) указывается, какой объект(объекты) на нем будет использоваться.

  • Следующий шаг — это проведение операции экспортирования проекта и копирования его на все компьютеры сети.

3. Запуск системы:

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

При работе по сети MasterSCADA использует протокол TCP/IP порт 3675. Технология .Net Remoting.

Тиражирование элементов проектов и использование библиотек в MasterSCADA

Если вы предполагаете использовать созданный Объект повторно, вы можете воспользоваться одним из трех возможных способов его тиражирования.

Копирование и вставка из буфера

Скопируйте объект в буфер через контекстное меню, щелкните на том объекте, в который собираетесь вставить скопированный, выберите команду вставки из буфера.

Дублирование

В случае, если вы планируете использовать несколько объектов или переменных одного назначения, например, для отображения температуры в нескольких зонах печи, создайте одну переменную с  именем «Температура в зоне 1», полностью настройте ее, а затем продублируйте, задав необходимое число копий. Новые переменные будут автоматически правильно пронумерованы, и не потребуют никакой настройки, кроме задания связи с источником данных.

Помещение в библиотеку и последующая вставка из нее

Помещение производится через контекстное меню, вставка выполняется аналогично вставке функционального блока. Библиотечные объекты можно использовать при создании других проектов и при параллельной работе нескольких разработчиков с одним проектом.
Расчет и Событие также можно помещать в библиотеку. При помещении в библиотеку они сохраняют все свои настройки и свойства.

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

В папке для хранения библиотек и настроек, расположение которой определяется в диалоге настроек (его можно вызвать командой «Настройки» в меню «Сервис»), имеется вложенная папка «Library», содержащая все библиотеки. Для переноса объекта (или библиотеки) на другой компьютер просто скопируйте его папку в папку «Library» другого компьютера и выполните команду «Обновить палитру».

Восстановление связей при вставке объектов

При вставке объектов в проект они автоматически (если это не запрещено в настройках Системы) пытаются установить связи с внешними источниками и приемниками данных.

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

При помещении в проект объектов из другого проекта существуют некоторые особенности, которые необходимо учитывать:

  • Диапазон изменения (Интервал шкалы) переменных восстанавливается по имени Интервала.
  • Категории сообщений для Событий и функциональных блоков, генерирующих сообщения, восстанавливаются по именам категорий. Если в новом проекте категории с аналогичными именами отсутствуют, то используется категория, заданная по умолчанию.
  • Типы окон объекта восстанавливаются по имени окна. При этом, если в новом проекте уже существует тип окна с тем же именем, то окну вставляемого объекта будут заданы стандартные размеры окон данного типа.
  • Привязка объектов к компьютерам в дереве системы не восстанавливается.
  • Дополнительные настройки журналов объектов, заданные при работе с ними в режиме исполнения в другом проекте, при переносе объекта в новый проект сбрасываются.
  • При вставке компьютера из другого проекта он теряет все настройки, унаследованные им от  системы в первоначальном проекте, и приобретает все настройки, заданные для системы в новом проекте. Вставленные в компьютер OPC-серверы сохраняются.

Использование ActiveX на мнемосхеме MasterSCADA.

  1. Запускаем MasterSCADA
  2. Открываем или создаем проект, в котором будет мнемосхема, с нашем модулем.
  3. Открываем мнемосхему, на которой будет расположен наш модуль.
  4. В меню «Сервис» выбираем «Органайзер ActiveX…»

5.  Находим наш User Control по его дружественному имени (если задан атрибут DisplaName) или по его  полному имени (namespace + имя класса)

6.  Нажимаем на кнопку «>>>», ставим галочку «Редактируемый в схеме» и нажимаем кнопку «ОК». Данная галочка определяет: будет или нет работать наш ActiveX в режиме разработки проекта. Если модуль рассчитан для работы только в режиме исполнения, то данную галочку ставить необязательно.

 

7. Выбираем наш модуль на палитре в разделе «Другие элементы ActiveX», и перетаскиваем его на мнемосхему

8.  Нажимаем на кнопку и видим сообщение «Hello World!»

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

Для создания свойства контрола достаточно объявить просто свойства в классе контрола. Пример по созданию и динамизации свойств контрола можно посмотреть в проекте: «[Папка в которую установлена MasterSCADA]APIMasterSCADAExamples», класс — Examples.UserControls.PropertiesDynamization.PropertiesDynamization.

 

Создание безоконного контрола.

Если необходимо создать контрол с прозрачным фоном, то необходимо использовать другой базовый класс – InSAT.Library.Gui.Windowless.WindowlessControlBase. Этот класс в отличие от NetActiveXBase не унаследован от системного класса Control, поэтому для него не поддерживается дизайнер контрола (визуальное редактирования контрола в студии). WindowlessControlBase является облегченным контролом, поддерживающим только отрисовку содержимого в функции OnPaint, а также возможность реагировать на события мыши (для этого нужно переопределить функции OnMouseDown, OnMouseMove, OnMouseUp). Пример работы с таким контролом в проекте APIMasterSCADAExamplesExamples.sln.

Контрол —  UserControlsSimpleWindowlessActiveXSimpleWindowlessActiveX.cs

 

С точки зрения производительности такие контролы быстрее и потребляют меньше памяти, так как для них не создается окно Windows. Другим преимуществом также является то, что такие контролы имеют общий Z-порядок с большинством стандартных контролов MasterSCADA.

 

    Создание ActiveX с использованием .Net Framework.

    Создание простого .Net User Control, регистрируемого в системе как ActiveX

    1. Если у вас ещё нет проекта, в который вы хотите добавить новый User Control, то выполните пункт 1 раздела «Пример создания пустого ФБ (на языке C# в Visual Studio 2005)» из описания по созданию ФБ на C# (Создание ФБ на C#.doc).
    2. Выполните пункты 2-5 раздела «Пример создания пустого ФБ (на языке C# в Visual Studio 2005)» из описания по созданию ФБ на C#(Создание ФБ на C#.doc).
    3. Создаем новый User Control:

    4. Наследуем созданный User Control от класса InSAT.Library.Gui.NetActiveXBase

    5.  Добавляем атрибуты для регистрации ФБ как COM объекта:

    6. Значение атрибута Guid должно быть уникальным, уникальное значение можно получить при помощи VS (“Tools”->”Create GUID” в открывшемся окне выбираем GUID Format “Registry Format”, нажимаем “Copy” и “Exit”):

     

    7.  Добавляем атрибут для регистрации дружественного имени ActiveX.

    8.  Добавляем кнопку, по нажатию на которую, будет выдаваться сообщение “Hello world!”

    9. Чтобы зарегистрировать наш user control как ActiveX, необходимо просто скомпилировать наш проект.