Функционал типизации впервые появился в версии 3.6 и первоначально был предназначен для работы с контроллерами. Идея состояла в следующем – существует некий объект автоматизации, например, ИТП, с работающим на нем контроллере. Таких ИТП могут быть сотни, при этом они полностью идентичные. В таком случае создавать проект по «классической» схеме (сотня контроллеров, сотня объектов и связи между ними) не эффективно – даже имея функционал Шаблон-Экземпляр, вносить правки будет трудоемко, кроме того проект будет достаточны крупным.
Типизация решала эту проблему. При использовании типизации в дереве объектов создается единственный объект и единственный контроллер. Затем создается Список экземпляров. Этот список назначался контроллеру и объекту. После этого у контроллера, у портов появлялись дополнительные вкладки, на которых можно указать параметры подключения каждого экземпляра контроллера. Таким образом все отличия сводились лишь к различным параметрам связи контроллеров. Поскольку проект и контроллер в дереве присутствуют в одном экземпляре, то вносить правки можно очень быстро, проект также получается очень компактным.
Однако проектов с большим количеством типизированных объектов использующих контроллеры с MasterPLCнемного, поэтому возникла необходимость поддержки ОРС переменных – чтобы можно было работать с любыми другими контроллерами. В версии 3.7 мы реализовали поддержку работы с ОРС переменными и с успехом применили типизацию для диспетчеризации 350 вентиляционных установок крупного торгового центра (использовались контроллеры Segnetics). В версии 3.8 мы сделали ряд существенных доработок для повышения удобства данного функционала – были разработаны специальные контролы, позволяющие автоматизировано расставлять связи (именно это и было главным препятствием распространению типизации, так как создавать тысячи связи вручную крайне трудоемко).
В данной статье мы разберем принципы работы с типизацией на примере небольшого проекта. Также нами выпущен цикл видеопримеров из трех серий по работе с типизацией, ссылки на него - в конце статьи.
Итак, у нас есть конфигурация с 10 устройствами, каждое из которых содержит по 3 тега – синус, пила и случайное:

Сначала добавим в дерево системы компьютер, ОРС сервер и переменные.





Первое что нужно сделать – это создать список экземпляров. Это делается на вкладке Система – Типизация. Создадим список с такими же именами, как в ОРС сервере – Устройство1:Устройство10.



Когда мы назначили объекту типизацию, у его переменных также появляется вкладка Типизация – именно на ней и происходит расстановка связей.








Нажмем кнопку Экспортировать, и выберем папку. Связи будут сохранены в формате CSV.
Пока что опустим процесс формирования связей в Excel – мы это рассмотрим отдельно, в следующей статье.
Импортируем связи из исправленного файла – они добавятся в таблицу.

Как теперь использовать типизированные объекты? В дерево их больше добавлять не нужно – теперь их нужно использовать на мнемосхемах, добавлять изображения объектов, кнопки вызова и т.д.
Создадим у общего объекта мнемосхему, и вытащим на него наш типизированный объект правой кнопкой мыши и выберем изображение объекта.

Теперь нужно указать к какому экземпляру списка он принадлежит. Это делается в свойствах контрола.

Разместим таким образом все изображения объектов.

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

Нажатие на любой контрол, открывает соответствующую ему мнемосхему объекта.

Проект с использованием типизации готов.
Списков экземпляров может несколько, при этом их уровень может быть разным. Это могут быть целые агрегаты (например, котлы) или отдельные элементы, из которых потом будет создан проект (задвижки, насосы, клапаны).
В следующей статье мы разберем самую сложную часть типизации – создание связей. Для этого нами был разработан специальный макрос Excel.
Также вы можете посмотреть видеопримеры по типизации, которые доступны на нашем сайте:
https://insat.ru/products/?category=1524