15. MetaLab — подключите сценарии к целевому ПЛК
MetaLab позволяет налаживать алгоритм, который выполняется в MetaCore, стороннем софт-ПЛК или аппаратном контроллере целевой платформы. С MetaCore мы уже работали в упражнениях MetaLab. В главах о целевых платформах использовали PLCSIM Advanced и CODESYS Control Win V3. Так же можно подключить аппаратный ПЛК, если он предоставляет доступ к нужным переменным через OPC UA. Во всех вариантах MetaLab подаёт тестовые значения и читает результаты, а программу выполняет выбранный ПЛК.
На схеме показаны три варианта наладки. Выберите ПЛК, в котором будет выполняться программа; MetaLab свяжется с ним по OPC UA.
Нажмите на схему, чтобы открыть её крупнее. Стрелки показывают передачу тестовых значений в ПЛК и чтение результатов программы.
Для MetaCore адреса OPC UA создаются автоматически при генерации проекта — импорт XML не требуется. Наладка с ним уже разобрана в главе 11 и главе 12.
Дальше подготовим подключение к стороннему ПЛК. Используйте OPC UA XML своего ПЛК, полученный в соответствующей главе: TIA Portal / PLCSIM Advanced или CODESYS 3.5. Импортируем адреса в MetaPlatform и сформируем артефакт MetaLab.
В меню проекта должна быть выбрана платформа, для которой вы сгенерировали и загрузили программу в ПЛК. Порядок работы ниже одинаков: открыть таблицу тегов, импортировать XML и повторить генерацию.
Продолжайте тот проект MetaPlatform, из которого была получена программа ПЛК. К этому моменту генерация уже создала список тегов и сценарии; мы добавляем адреса из XML.
1. Импортируйте адреса MetaLab
В дереве проекта откройте MetaLab → OPC UA Tags. У строки OPC UA Tags нажмите кнопку Действия с тремя точками и выберите Импорт.

Выберите XML своего ПЛК, полученный при выполнении соответствующей главы. MetaPlatform сопоставит строки таблицы с переменными в файле и заполнит NodeId.

На скриншотах показан пример импорта XML Siemens. Адреса из снимка переносить вручную не нужно: для вашего ПЛК столбец NodeId заполнится по вашему XML и может выглядеть иначе.
Проверьте, что у входов fRaw1, fRaw2 и остальных нужных тегов заполнен NodeId. Area остаётся той, которую вы задали в проекте при подготовке программы.
Сценарий продолжает использовать имя fRaw1. MetaLab находит его в столбце Name и обращается к ПЛК по NodeId. Area помогает найти исходную переменную при импорте, но не добавляется к имени в сценарии.
Остальные строки задают доступ к настройкам Conf, результатам и командам View. В нашем примере таблица содержит 12 тегов. Если NodeId остался пустым, проверьте публикацию соответствующей переменной, её имя и Area, затем повторите импорт актуального XML. Связь исходного тега и его копии разобрана в разделе global.
2. Сгенерируйте артефакт MetaLab
Откройте Проект → Действия → Сгенерировать.

Дождитесь завершения генерации. Затем выберите Проект → Действия → Скачать. Сохраните и распакуйте общий архив результата. Возьмите MetaLabArtifacts.zip: в нём находятся таблица тегов с NodeId и сценарии. MetaViewArtifact.zip появится, когда выберем профили визуализации. Подготовка привязок MetaView описана в главе 16.
Используйте результаты последней генерации, выполненной после импорта XML. Архивы, сформированные до привязки, ещё не содержат новых адресов.
Изменение только привязок OPC UA не требует повторной загрузки программы в ПЛК. Если изменили PLC-код или состав переменных, сначала обновите приложение в среде разработки своего ПЛК, получите новый XML и повторите импорт.
3. Укажите endpoint в RT
В настройках подключения OPC UA в MetaLab укажите endpoint своего ПЛК — тот же адрес, с которым вы проверили связь в UaExpert.
Дальнейшая наладка выполняется по уже рассмотренным главам: MetaLab — изменяющийся сигнал и MetaLab — один шаблон для каналов.