DevOps / Развертывание

Автоматизированное развертывание ПЛК
для проектов TIA Portal

Автоматизируйте весь жизненный цикл развертывания: компилируйте оборудование и программное обеспечение, устанавливайте онлайн-соединения, сравнивайте онлайн/офлайн состояния, загружайте прошивку и программы в ПЛК и управляйте рабочим состоянием ЦПУ - все это с помощью скриптов через REST API.

Полная автоматизация жизненного цикла развертывания

Каждый шаг от исходного кода до работающего ПЛК, автоматизируемый и повторяемый

Компиляция

Компилируйте конфигурацию оборудования и программные блоки по отдельности или вместе. Результаты компиляции включают ошибки и предупреждения - интегрируйте в конвейеры CI, чтобы развертывание зависело от успешной сборки.

Онлайн-соединение

Устанавливайте и разрывайте онлайн-соединения с ПЛК. Поддерживает PLCSim Softbus, PROFINET и ручное переопределение путей. Автоматическое определение параметров соединения или явное указание точек доступа.

Области загрузки

Выберите область загрузки для каждого развертывания: Только ПО, Только оборудование, Оборудование и ПО вместе или Только изменения ПО для обновлений с минимальным воздействием. Точный контроль над тем, что попадает в ПЛК.

Управление состоянием ЦПУ

Запускайте и останавливайте ЦПУ программно. Считывайте текущее состояние ЦПУ до и после развертывания. Создавайте безопасные последовательности развертывания, которые автоматически переводят ЦПУ через STOP, загрузку и RUN.

Поддержка ПЛК, защищенных паролем

Проходите аутентификацию в ПЛК, защищенных паролем, перед переходом в онлайн. Устанавливайте, обновляйте и очищайте учетные данные для онлайн-аутентификации через API для поддержки безопасных производственных сред.

Защитные барьеры

Флаг confirmPhysicalDownload предотвращает случайную загрузку на реальное оборудование - только цели PLCSim позволяют загрузку без явного подтверждения. Критически важное ограждение для конвейеров CI/CD, нацеленных на физические ПЛК.

Стандартный рабочий процесс развертывания

Пять шагов от скомпилированного кода до работающего ПЛК

1

Компиляция

Запустите компиляцию оборудования и программного обеспечения через compile_device или compile_block. Проверьте результат на наличие ошибок перед продолжением. Неудачная компиляция прерывает развертывание.

2

Переход в онлайн

Вызовите go_online для целевого устройства. T-IA Connect автоматически разрешит точку доступа или примет путь вручную. Проверьте состояние соединения с помощью get_online_state перед продолжением.

3

Сравнение онлайн / офлайн

Запустите compare_online_offline, чтобы проверить, соответствует ли ПЛК проекту. Пропустите ненужные загрузки, если расхождения не обнаружены, уменьшая простои ПЛК на производстве.

4

Загрузка в ПЛК

Выполните download_to_plc с выбранной областью (Software, Hardware, HardwareAndSoftware или SoftwareOnlyChanges). Устанавливайте confirmPhysicalDownload в true только при намеренной работе с реальным оборудованием.

5

Запуск ЦПУ

Выполните start_cpu для перевода ПЛК из STOP в RUN. Подтвердите конечное состояние с помощью get_cpu_state. Запишите результат для аудита и отчетов CI.

Скрипты развертывания через REST API

Интегрируйте развертывание ПЛК в любой инструмент CI/CD с помощью стандартных HTTP-вызовов

Компиляция и проверка результата

# Компилировать устройство (оборудование + ПО)
curl -X POST http://localhost:5000/api/compile-device \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1"}

Переход в онлайн и загрузка

# Перейти в онлайн
curl -X POST http://localhost:5000/api/go-online \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1"}\n\n# Загрузить только ПО
curl -X POST http://localhost:5000/api/download-to-plc \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1", "scope": "Software", "confirmPhysicalDownload": true}

Запуск ЦПУ и проверка состояния

# Запустить ЦПУ
curl -X POST http://localhost:5000/api/start-cpu \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1"}\n\n# Считать состояние ЦПУ
curl -X GET 'http://localhost:5000/api/get-cpu-state?deviceName=PLC_1'

Доступные инструменты развертывания

Все инструменты доступны через REST API и протокол MCP

ИнструментОписание
compile_deviceКомпилирует все устройство (оборудование + ПО) и возвращает ошибки и предупреждения.
compile_blockКомпилирует один программный блок. Полезно для целевых предварительных проверок в конвейерах CI.
go_onlineУстанавливает онлайн-соединение с ПЛК. Поддерживает PLCSim, PROFINET и ручной путь.
go_offlineРазрывает онлайн-соединение и переводит устройство в офлайн-режим.
get_online_stateВозвращает текущее состояние онлайн/офлайн соединения для устройства.
download_to_plcЗагружает данные проекта в ПЛК. Область: Software, Hardware, HardwareAndSoftware, SoftwareOnlyChanges.
upload_from_plcЗагружает текущую программу ПЛК обратно в проект TIA Portal.
compare_online_offlineСравнивает онлайн-состояние ПЛК с офлайн-проектом для обнаружения изменений.
start_cpuПереводит ЦПУ из состояния STOP в RUN.
stop_cpuПереводит ЦПУ из состояния RUN в STOP перед загрузкой.
get_cpu_stateСчитывает текущее рабочее состояние ЦПУ (RUN, STOP, STARTING и т. д.).
list_access_pointsВыводит список всех настроенных точек доступа для разрешения путей соединения ПЛК.
list_parameter_setsВыводит список доступных наборов параметров для настройки соединения.
get_pgpc_diagnosticПолучает диагностику интерфейса PG/PC для устранения проблем с соединением.

Разверните свой первый ПЛК автоматически

Перестаньте кликать в TIA Portal. Напишите скрипт для всего конвейера развертывания один раз и запускайте его при каждом коммите.