ЖУРНАЛ СТА №4/2019

cyclesCount : DWORD; (* количество циклов, выполненных задачей *) overrunsCount : DWORD; (* количество запаздываний циклической задачи *) minExecutionTime_us : DWORD; (* минимальное время ввода данных и выполнения пользовательского кода, мкс *) maxExecutionTime_us : DWORD; (* максимальное время ввода данных и выполнения пользовательского кода, мкс *) name : STRING(23); (* имя задачи *) startCycleTickCount_us : DWORD; (* счётчик микросекунд в момент последнего запуска задачи перед вызовом F_IecTasks_getInfo *) lastExecutionTime_us : DWORD; (* время ввода данных и выполнения пользовательского кода в мкс в цикле, предшествующем вызову F_IecTasks_getInfo *) END_STRUCT END_TYPE Номер задачи, передаваемый в каче- стве второго параметра, является ин- дексом задачи (начиная с 0) в древовид- ном списке ресурса Task Configuration среды разработки CODESYS. При вызове F_IecTasks_getInfo в кон- тексте какой-либо циклической зада- чи в качестве номера может исполь- зоваться значение 16#FFFF. В этом случае функция вернёт статистику для текущей циклической задачи. При- мер программы с использованием функции F_IecTasks_getInfo приведён на рис. 3 и 4. Для рассмотренной в примере задачи: period_us = 80000 – период выполнения, мкс; cyclesCount = 695 – количество циклов, выполненных задачей; overrunsCount = 0 – количество циклов, на которых задача не уложилась в заданный период исполнения; minExecutionTime_us = 40 – минимальное время исполнения, мкс; maxExecutionTime_us = 74 – максимальное время исполнения, мкс; name = ‘NewTask’ – имя задачи; startCycleTickCount_us = 907070686 – счётчик микросекунд в момент последнего запуска задачи перед вызовом F_IecTasks_getInfo ; lastExecutionTime_us = 45 – время ввода данных и выполнения пользовательского кода в мкс в цикле, предшествующем вызову F_IecTasks_getInfo . Вопрос Как установить связь с контроллером CPM713 в среде программирования CODESYS V2.3? Ответ Если контроллер новый, только что распакован, то соединиться с ним мож- но по адресу 10.0.0.1 (маска 255.0.0.0). Также с контроллером можно соеди- ниться по интерфейсу «точка–точка» (P2P) через COM-порт с помощью ка- беля, входящего в комплект поставки. В случае если контроллер CPM713 уже использовался ранее, но по каким- то причинам нет информации о его коммуникационных параметрах и от- сутствует рабочий проект, загруженный ранее, то для установки связи с конт- роллером необходимо выполнить сле- дующую последовательность действий. 1. Перевести контроллер в безопасный режим: 1.1. Перевести первый переключа- тель в положение ON (вправо). 1.2. Выключить, а затем включить питание контроллера. 1.3. Дождаться загрузки контроллера (попеременное свечение индика- тора RUN/ERR зелёным и крас- ным цветом). 1.4. Вернуть первый переключатель в положение OFF (влево), чтобы при следующей перезагрузке пи- тания контроллер не ушёл в без- опасный режим. 1.5. Проверить подключение к конт- роллеру: IP 10.0.0.1, маска подсе- ти 255.0.0.0. Если рабочий проект существует, то дополнительно к п. 1 необходимо сде- лать следующее. 2. Загрузить рабочийпроект в контроллер: 2.1. Открыть проект в среде програм- мирования CODESYS V2.3. 2.2. На вкладке Ресурсы (Resourсes) в окне Конфигурация ПЛК (PLC Configuration) в поле Ethernet Multiprotocol Port установить до- пустимые в используемом сег- менте сети параметры со значе- ВОП РОСЫ – ОТ В Е Т Ы СТА 4/2019 101 www.cta.ru Рис. 3. Пример использования функции F_IecTasks_getInfo Рис. 4. Результат выполнения программного кода Рис. 5. Окно сетевых параметров

RkJQdWJsaXNoZXIy MTQ4NjUy