Структура входных файлов
Справочник по формату файлов, которые использует модуль «Обвязка для тренажера».
Библиотека шаблонов (Templates)
Section titled “Библиотека шаблонов (Templates)”Формат: папка с файлами .xls / .xlsx. Каждый файл может содержать несколько листов.
Колонки
Section titled “Колонки”Поскольку LinkTemplate — единый шаблон для всех типов объектов, файлы библиотеки должны иметь одинаковый набор колонок: именно эти колонки становятся переменными, которые LinkTemplate подставляет в строки результата.
Типичный набор колонок:
| Колонка | Описание |
|---|---|
ObjectType | Тип объекта АСУ — по нему модуль отбирает строки библиотеки |
FieldTag | Тег поля |
ModuleTag | Тег модуля |
ModuleId | Идентификатор модуля |
SimChannel | Канал симулятора |
SimTemplate | Шаблон симулятора |
UnimodChannel | Канал Unimod |
Добавляйте любые другие колонки — они тоже станут доступны как переменные в LinkTemplate.
Правила обработки
Section titled “Правила обработки”- Обрабатываются только файлы, чьё имя (без расширения) указано в AssignmentMap в колонке
AssignSim. - Обрабатываются все листы файла, у которых есть колонка
ObjectType. - Файлы с именем, начинающимся на
~$(временные файлы Excel), пропускаются.
Файл AssignmentMap
Section titled “Файл AssignmentMap”Формат: один файл .xls / .xlsx с ровно одним листом.
Колонки
Section titled “Колонки”| Колонка | Обязательная | Описание |
|---|---|---|
ObjectType | да | Тип объекта АСУ |
AssignSim | да | Имя файла библиотеки без расширения |
Template | да | Шаблон тренажера для этого типа объекта |
Template1, Template2, … | нет | Дополнительные шаблоны; все колонки с именем, начинающимся на Template, учитываются |
Пример
Section titled “Пример”| ObjectType | AssignSim | Template | Template1 |
|---|---|---|---|
| Насос | UnimodChannels | OutAnalog | OutDiscrete |
| Задвижка | Сигналы | OutDiscrete |
Шаблон результата (LinkTemplate)
Section titled “Шаблон результата (LinkTemplate)”Формат: файл .xlsx. Используется только первый лист.
Принцип работы строк
Section titled “Принцип работы строк”| Тип строки | Поведение |
|---|---|
| Строка без переменных | Копируется в результат один раз (подходит для заголовков) |
| Строка с переменными | Повторяется для каждой найденной связи с подставленными значениями |
Форматы переменных
Section titled “Форматы переменных”Переменные можно записывать в двух форматах:
[ИмяПеременной]— например[Tag]%ИмяПеременной%— например%SimChannel%
Оба формата равнозначны и могут смешиваться в одном файле.
Доступные переменные
Section titled “Доступные переменные”| Переменная | Источник | Описание |
|---|---|---|
Tag | Проект | Мнемоника экземпляра объекта |
ObjectType | Проект | Тип объекта |
SimChannel | Библиотека | Канал симулятора |
SimTemplate | Библиотека | Шаблон симулятора |
UnimodChannel | Библиотека | Канал Unimod |
FieldTag | Библиотека | Мнемоника поля в ЗКПС |
ModuleTag | Библиотека | Тег модуля |
ModuleId | Библиотека | Идентификатор модуля |
Любая другая колонка из файлов библиотеки также доступна как переменная под своим именем.
Пример строки шаблона
Section titled “Пример строки шаблона”| Ячейка A | Ячейка B | Ячейка C | Ячейка D |
|---|---|---|---|
[Tag] | [ObjectType] | [SimChannel] | [UnimodChannel] |
Такая строка в результате превратится в N строк — по одной на каждую найденную связь.
Итоговый файл (результат)
Section titled “Итоговый файл (результат)”Формат и расширение результата определяются шаблоном LinkTemplate и именем файла из настроек модуля (обычно .xlsx, например mapping.xlsx).
Состав: каждая строка — одна связь «экземпляр объекта проекта — канал тренажера». Колонки определяются шаблоном.