Отладка проекта

Для отладки программы в Полигон существует возможность просмотра текущих значений на входах/выходах функциональных блоков. Для этого необходимо запустить программу на контроллере и выбрать команду Отладчик на панели Инструменты.

Graphic

При первом подключении отладчиком к запущенному проекту запрашивается пароль, указанный при создании проекта.

Graphic

В режиме отладки Полигон запрашивает у контроллера значения входов и выходов блоков, которые расположены на страницах, открытых в рабочих окнах, и отображает полученные значения на экране.

Обмен данными осуществляется по протоколу OPC UA, поэтому в проекте обязательно должен быть блок OpcUAServer из библиотеки paOpcUA. На входе блока ip следует прописать IP-адрес интерфейса контроллера, по которому будет подключаться отладчик.

При выборе шаблона модуля с отладчиком при создании нового проекта в месте работы Фон автоматически создается программа Debug, на странице которой добавлен блок OPC UA-сервера. На входы блока ip IP адрес и prt – локальный порт контроллера прописываются соответствующие свойства модуля в виде SQL-запросов.

Запрос IP-адреса:

"<sql>SELECT value FROM blocks_prop WHERE indx=:module AND type="prop_ip"</sql>"

Запрос номера порта:

<sql>SELECT value FROM blocks_prop WHERE indx=:module AND type="prop_debug_port"</sql>

Подробнее реализация протокола OPC UA в среде Полигон описана в документе Обмен с верхним уровнем. paOpcUA.

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

Graphic

Для отключения отладчика без остановки программы необходимо повторно нажать на кнопку Отладчик на панели Инструменты.

Подмена значений на входах/выходах

В режиме отладки текущие значения входов/выходов блока отображаются синим цветом. Справа от названия типа блока зеленым цветом отображается время выполнения блока в микросекундах.

Graphic

Текущие значения на входах блоков можно подменить. Для этого необходимо дважды нажать ЛКМ на текущем значении входа и задать новое значение. Подмененные значения отображаются красным цветом.

Graphic

Заданная константа действует только в течение данного запуска программы. Чтобы вернуть значение на входе к заданному в программе, надо выбрать команду Сбросить в контекстном меню входа.

Graphic

Подмена значения на входе игнорирует константы и связи.

При подмене значения на выходе возможны следующие варианты:

  1. Подмена выключает блок. По умолчанию при двойном нажатии на текущем значении, срабатывает этот вариант.

  2. Подмена не выключает блок, а подменяет значения на входах, с которыми связан данный выход.

    Graphic

Для подмены значения выхода без выключения блока следует:

  1. Нажать на выходе ПКМ.

  2. Выбрать Установить значение.

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

Graphic
Graphic

Для сброса значения нужно нажать на выходе ПКМ и выбрать Сбросить.

Во время отладки можно получить список всех подмененных значений командой Показать все, а также отменить все подмены командой Сбросить все. Эти команды появляются при щелчке правой кнопкой мыши в дереве проекта на узле модуля.

Graphic

При нажатии Показать все отображается таблица подмененных значений, о работе с представлением Таблица подробнее см. в разделе.

Graphic

График

График позволяет просматривать изменения значений на входах и выходах функциональных блоков в графическом представлении в режиме отладки.

Для добавления входа или выхода в таблицу над графиком нужно перетащить его со страницы (соответствующий Модуль автоматически станет текущим для графика). Входы/выходы текущего Модуля из дерева можно добавлять в таблицу с помощью перетаскивания.

Если текущим будет Раздел, то в таблицу автоматически добавятся входы/выходы из раздела. Если добавить новый вход или выход в таблицу, он автоматически добавится в Раздел.

Подробнее об элементах графика см. в разделе.

Для просмотра значений входов/выходов нужно загрузить исполняемый файл на контроллер и нажать кнопку Запустить. Для остановки – Остановить.

График подключается к OPC UA-серверу контроллера в качестве клиента (аналогично отладчику) с добавленными в него данными.

Примечание
Для корректной работы графика необходимо синхронизировать системное время контроллера с браузером через web-конфигуратор (Система/Время/Системное времяСинхронизировать с браузером).

Экран отладчика

В режиме отладки текущие значения можно просматривать и изменять на Экране отладчика.

Входы/выходы, которые нужно отобразить на экране, необходимо добавить в соответствующий Раздел. Их также можно перетащить на экран из дерева или страницы, тогда они автоматически добавятся в текущий раздел. Входу или выходу автоматически присваивается класс отображения следующим образом:

  • если это логический вход – кнопка, иначе – слайдер;

  • если это логический выход – лампа, иначе – значение.

Класс отображения можно поменять в окне свойств.

Подробнее о работе с экраном отладчика и свойствах элементов см. в разделе.

В режиме работы отладчика для того, чтобы изменить значения на входе, нужно дважды щелкнуть ЛКМ на соответствующем элементе и отредактировать значение. Это работает для графических элементов значение, слайдер и шкала.

Информация о запущенном проекте

В режиме отладки можно получить различную информацию о запущенной программе.

При наведении курсора на запущенный модуль в дереве всплывает тултип с информацией о проекте: идентификатор модуля, версия проекта, дата трансляции, пользователь и имя компьютера, с которого была выполнена трансляция проекта.

Graphic

Информацию о запущенном приложении на контроллере также можно посмотреть в web-конфигураторе в разделе ПЛК/Информация.

Внимание
Для обновления информации в разделе ПЛК/Информация в запущенном проекте должен быть добавлен блок OwenHWInfo из библиотеки paOwenIO.
Graphic

При нажатии правой кнопкой мышки на запущенном модуле в дереве и выборе в открывшемся меню Показать все в окне трансляции (системное окно Прогресс) можно увидеть данные по версиям библиотек.

Graphic
Graphic

Также при трансляции в папке build_имя модуля_ОС создается файл versions.txt, в котором показаны идентификатор проекта, название модуля, дата и время трансляции, версии библиотек.

Graphic
Файл versions.txt

Если добавить в свойства модуля свойство Показывать время выполнения, то можно отслеживать время выполнения мест работы и программ модуля. После трансляции и запуска проекта в дереве будут отображаться времена выполнения программ модуля.

Graphic

Получить время выполнения мест работы в программе также можно с помощью ФБ SysInfo.