ABAK Diagnostics

<< Click to Display Table of Contents >>

Navigation:  Библиотеки контроллеров > Руководство по работе с контроллерами ABAK > Подключение устройств по протоколам > Специализированные протоколы и модули ABAK  >

ABAK Diagnostics

Протокол ABAK Diagnostics (в дереве системы отображается как Диагностика) служит для опроса диагностической информации контроллеров ABAK K2 и ABAK K3 и добавляется в контроллер по умолчанию. Протокол по умолчанию содержит модуль для диагностики Текущий контроллер (Current):

Protocol_oprosa_diagnostiki_ABAK

Настроек у протокола и у модуля нет.

Если добавить ещё один такой же модуль в протокол, появится ошибка при запуске проекта на исполнение. Второй модуль опрашиваться не будет.

Принцип работы диагностики

В контроллере есть два бинарных файла со специальной структурой:

\dev\shm\tags_index_shm

\dev\shm\tags_values_shm

В файле tags_index_shm хранятся имена параметров и их индексы.

В файле tags_values_shm сами значения в соответствии с индексом.

Драйвер при старте читает один раз tags_index_shm, соотносит со списком добавленных тегов в драйвер, а потом каждый цикл открывает tags_values_shm и читает значения нужных тегов по индексам.

Если по какой то причине файлы tags_index_shm или tags_values_shm не удалось открыть при запуске проекта на исполнение, то у модуля появится текст ошибки на выходе Ошибка и опрос модуля вестись не будет . В этом случае нужно проверить наличие файлов по указанному пути. Если файлы отсутствуют, то следует обратится к производителю контроллера.

Добавление тегов в модуль

В модуль добавляются теги (каналы). Каждый тег имеет две настройки:

Protocol_oprosa_diagnostiki_ABAK_1

Описание настроек тегов:

Название настройки

Описание

Имя параметра

Имя параметра в контроллере.

Тип данных

Тип данных в контроллере.

Если добавить два тега с одинаковой настройкой Имя параметра, появится сообщение об обнаружении тегов с одинаковыми адресами, будут выведены их ID. Такие теги не опрашиваются и имеют недостоверный признак качества. Аналогично, если добавить тег с именем, которого нет в файле tags_index_shm, то также появится ошибка с номером тега.

Если добавлять теги вручную, то тип данных на выходе ставится автоматически, в зависимости от настройки Тип данных. Тип доступа всегда только Input (при попытке изменить на другой - тип изменится обратно на Input).

По умолчанию модуль содержит следующий набор тегов:

Protocol_oprosa_diagnostiki_ABAK_2

Название тега

Тип значения

Описание

CPU_LOAD

SYSTEM_LREAL_PARAM

Загрузка процессора, %.

SUPERCAP_VOLTAGE

SYSTEM_LREAL_PARAM

Напряжение на суперконденсаторе, В.

PWR_ERR

SYSTEM_BOOL_PARAM

Информирует об отказе одного из блоков питания.

RUN_TIME

SYSTEM_DINT_PARAM

Наработка, сек.

MEMORY_AVAIL

SYSTEM_DINT_PARAM

Доступный объём памяти, МБ.

CAN1_STATE

SYSTEM_BOOL_PARAM

Состояние CAN1.

BATTERY_VOLTAGE

SYSTEM_LREAL_PARAM

Напряжение на батарее часов, В.

ETH0_STATUS

SYSTEM_BOOL_PARAM

Статус подключения ETH0.

ETH1_STATUS

SYSTEM_BOOL_PARAM

Статус подключения ETH1.

ETH2_STATUS

SYSTEM_BOOL_PARAM

Статус подключения ETH2.

ETH3_STATUS

SYSTEM_BOOL_PARAM

Статус подключения ETH3.

ETH4_STATUS

SYSTEM_BOOL_PARAM

Статус подключения ETH4.

Серийный номер

SYSTEM_STRING_PARAM

Серийный номер контроллера.

Смотрите также: