АБАК ПЛК
Руководство по настройке и программированию
×

Инструкция по считыванию свойств задач

 
Для доступа к IEC – диспетчеру задач непосредственно из кода программы, требуется применение библиотек CmpIecTask.
В данной библиотеке находятся функции, позволяющие считывать данные с задачи.
 
Добавление библиотеки CmpIecTask
 
Пример программы считывания данных с задачи:
 
PROGRAM PLC_PRG
 
VAR
            stTaskInfo: CmpIecTask.Task_Info2;
            hTask : CmpIecTask.SysTypes.RTS_IEC_HANDLE;
            pResult: POINTER TO CmpIecTask.SysTypes.RTS_IEC_RESULT;
END_VAR
 
hTask := CmpIecTask.IecTaskGetCurrent(pResult);
stTaskInfo := CmpIecTask.IecTaskGetInfo3(hTask, pResult)^;
 
Данные, полученные после считывания, будут хранится в TaskInfo.
 
Набор данных, хранящихся в TaskInfo
 
Пример записи в переменную:
 
PROGRAM PLC_PRG
 
VAR
            stTaskInfo: CmpIecTask.Task_Info2;
            hTask : CmpIecTask.SysTypes.RTS_IEC_HANDLE;
            pResult: POINTER TO CmpIecTask.SysTypes.RTS_IEC_RESULT;
           
 CycleCount: DWORD;
END_VAR
 
hTask := CmpIecTask.IecTaskGetCurrent(pResult);
stTaskInfo := CmpIecTask.IecTaskGetInfo3(hTask, pResult)^;
CycleCount := stTaskInfo.dwCycleCount;
 Выходные параметры TaskInfo
 
Название параметра
Имя переменной в методе
Тип
Счётчик МЭК-циклов
dwIECCycleCount
DWORD
Счётчик циклов
dwCycleCount
DWORD
Время последнего выполнения
dwCycleTime
DWORD
Среднее время цикла
dwAverageCycleTime
DWORD
Максимальное время цикла
dwMaxCycleTime
DWORD
Минимальное время цикла
dwMaxCycleTime
DWORD
Джиттер
iJitter
DINT
Минимальный Джиттер
iJitterMin
DINT
Максимальный Джиттер
iJitterMax
DINT
 
Онлайн помощь создана в Dr.Explain