Этот сайт использует кукис. Пользуясь сайтом, вы соглашаетесь с тем, что мы используем кукис-файлы. Переспросить позже Больше сведений

Логин
Программное обеспечение

Продукты PlcGit, работа и цели

PlcGit имеет множество функций

  • Программа PLC резервное копирование и восстановление
  • Проверка и слияние различий между версиями программного обеспечения ПЛК
  • Управление кодом программы ПЛК в распределенной команде разработчиков

Следующее описание является примером для серии ПЛК Siemens S7 1500 с использованием программного обеспечения для программирования ПЛК Siemene TIA Portal.

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

При первом запуске необходимо определить репозиторий. Обычно это просто имя для репозитория. Затем для первоначальной настройки нужен проект TIA. Этот проект определяет программу ПЛК для одного или нескольких ПЛК. Один репозиторий может обслуживать несколько проектов TIA.
Каждый ПЛК определяется по своему имени и TCP/IP адресу. Первоначальная настройка считывает проект TIA и предлагает список ПЛК с их IP-адресами. Один или несколько из них могут быть выбраны для функций резервного копирования и восстановления. Затем можно задать время и частоту резервного копирования. Обычно это выполняется один раз в день ночью.
Внутренне проект TIA считывается, декодируется, и все части программы отправляются в репозиторий в удобочитаемом виде. Дополнительно проект TIA регистрируется для целей безопасности.

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

Если изменения, в основном сделанные в выходные, могут нарушить работу производства в понедельник или позже, обслуживающий персонал проверяет список доступных резервных копий за последние дни. Это выполняется в браузере. Обычно руководство смены знает дату последнего стабильного рабочего производства. Поэтому выбирается, например, версия за последний вторник. Затем запускается функция восстановления. Она берёт существующий проект TIA, считывает все изменения, сделанные в ПЛК, копирует проект TIA и обновляет его изменениями до вторника. Когда процесс завершён, проект загружается на машину с установленным TIA Portal — обычно это компьютер обслуживающего персонала. Затем запускается TIA, загруженный проект открывается, далее обновляется соответствующий ПЛК и перезапускается. Машина будет работать так, как во вторник.

Некоторые детали о резервном копировании и восстановлении. Если ночью резервное копирование не может быть выполнено, в основном потому что ПЛК недоступен, генерируется сигнал тревоги. Тревога записывается в журнал регистрации. Можно также настроить отправку уведомления по электронной почте. Тогда резервное копирование этой ночью не выполняется.
При восстановлении выполняются проверки на согласованность проекта TIA и ПЛК. Если конфигурация оборудования ПЛК отличается, в основном восстановление не сработает корректно. Это также проверяется в ночных резервных копиях, и если конфигурация оборудования ПЛК отличается, отправляется предупреждение. Обычно при изменении конфигурации оборудования ПЛК необходимо заново зарегистрировать новый проект TIA.

Проверка различий между версиями программ ПЛК и слияние

После аварийного восстановления или по другим причинам обслуживающий персонал может проверить изменения между различными обнаруженными изменениями или по сравнению с исходным содержимым проекта TIA. Это также выполняется в браузере.
Затем из списка выбирается репозиторий, а затем ПЛК. Вид похож на TIA Portal со списком блоков ПЛК. Изменённые блоки помечаются. Затем выбирается (изменённый) блок. Содержимое блока отображается в браузере, аналогично TIA Portal, в виде KOP/FUP/SCL/Graph. Блок показывается дважды — один и другой блок. Обнаруженные изменения помечаются визуально. Программный код ПЛК пишется в виде сетей, и показывается только одна сеть. Изменённые сети помечаются в списке сетей.

Слияние означает, что пользователь теперь может брать целые блоки из одной версии в другую или целые сети. Или в одной сети можно использовать отдельные элементы или группы элементов для слияния.
Тестирование выполняется так же, как и при восстановлении: создать проект TIA, загрузить проект, открыть TIA, загрузить проект в TIA, а затем в ПЛК.

Управление программным кодом ПЛК в распределённых командах разработки

Для разработки программного обеспечения обычно ПЛК не существует. Несколько человек в команде работают над разными частями программного обеспечения ПЛК. Необходимы только выбор блоков ПЛК и функции слияния.
В этом случае может существовать несколько проектов TIA. Их можно добавить в репозиторий. Для объединения кода блоки могут быть выбраны и объединены в один итоговый проект TIA. Это может привести к различным конфликтам слияния. Такие элементы помечаются. Затем некоторые проблемы можно решить вручную, например переименованием переменных или блоков, либо перенумерацией блоков. Как правило, структуры, используемые распределённой командой разработки, различаются. Возможным решением является создание новой структуры при слиянии, содержащей все переменные от участников команды. Но возможны и другие решения.
Разные версии TIA в команде в основном не являются проблемой. Слияние от более низкой версии к более высокой всегда будет работать. Понижение версии может быть возможным, если затронутые блоки ПЛК не используют функциональность, которую старая версия TIA не поддерживает.
Единственное, что невозможно объединить, это аппаратные конфигурации. Они всегда несовместимы.