Обмен с дозатором ДОЗА-4ТМ

Драйвер обмена с дозатором ДОЗА-4ТМ оформлен в виде драйвера t11.

Кроме атрибутов, общих для всех источников/приемников (см. Редакторы источников (приемников) , а также Шаблоны каналов обмена ), в редакторе шаблона канала обмена задаются следующие атрибуты:

   Порт – номер используемого COM-порта, десятичное число (0 – COM1, 1 – COM2, и т.д.);

   Адрес – адрес прибора ДОЗА-4ТМ, десятичное число (0...255);

   Команда – команда; выбирается из списка (см. таблицу ниже);

   Смещение – смещение читаемого/записываемого слова (16 бит) в блоке читаемых/записываемых данных.

   

 

Название команды в TRACE MODE

Название в спецификации протокола

Назначение настройки СМЕЩЕНИЕ

Тип канала

Краткое описание

control_word

Слово управления

не используется

O,H

Выполнить одну из команд:

D7 – Pause – временный останов подачи по всем компонентам и останов работы системных таймеров.  

D6 – Continue – выход из состояния, вызванного командой Pause и продолжение цикла дозирования.  

D5 – Setting zero – принудительная установка нуля системы; используется только для выхода из нештатных ситуаций или при организации рабочего цикла под управлением Тrace Mode 5.

D4 – Start comp4  – запуск дозирования только 4-го компонента.

D3 – Start comp3  – запуск дозирования только 3-го компонента.

D2 – Start comp2  – запуск дозирования только 2-го компонента.

D1 – Start comp1  – запуск дозирования только 1-го компонента.

При получении команд Start comp N «Доза-4ТМ» выполнит дозирование по N-ному компоненту вплоть до завершения работы таймера t и перейдет в фазу ожидания следующей команды (фазы - 6,12,18,24).

D0 – Unload  – разгрузка бункера.

D0-D7 обозначают биты младшего байта канала

 

read_input

Read input

не используется

I,F

Считать оцифрованное и нормированное значение сигнала тензодатчика.

read_current_dose

Read current douse

0 – доза 1-го компонента;

1 – доза 2-го компонента;

2 – доза 3-го компонента;

3 – доза 4-го компонента;

 

I,F

Считать текущие результаты цикла дозирования одного компонента.

read_status_word

Read word status

0 – байты 1 и 2 (1 – старший)

1 – байты 3 и 4

(3 – старший)

I,H

Считать слово состояния цикла дозирования.

read_cal_data

Read cal data

0 – байты 1 и 2

(1 – старший) калибровочной информации;

1 – байты 3 и 4

(3 – старший)

и т. д.

I,F

Считать калибровочные настройки.

load_out_rg

Load OUT RG

не используется

O,H

Запись в выходной регистр «Доза4ТМ».

load_recipe_comp

Load recipe comp[1-4]

0 – 1-й компонент;

...

3 – 4-й компонент

O,F

Загрузка рецептурного значения N-го компонента (16-бит).

load_limit_comp

Load limit comp[1-4]

0 – 1-й компонент;

...

3 – 4-й компонент

O,F

Загрузка порога перехода на пониженную скорость для N-го компонента(16-бит).

load_timers_t_T

Load timers t,T

не используется

O,H

Загрузка констант таймеров t,T.

t – старший байт канала, T – младший байт канала

load_timers_U_F

Load timers U,F

не используется

O,H

Загрузка констант таймеров U,F.

U – старший байт канала, F – младший байт канала

load_timers_S_D

Load timers S,D

не используется

O,H

Загрузка констант таймеров S,D.

S – старший байт канала, D – младший байт канала

load_timers_R

Load timer R

не используется

O,F

Загрузка константы таймера R (16-бит).

load_timers_M

Load timer M

не используется

O,F

Загрузка константы таймера M (16-бит).

load_timers_K

Load timer K

не используется

O,F

Загрузка константы таймера K (16-бит).

start_cycle

Start cycle

не используется

O,H,F

Запуск процесса дозирования, происходит при записи отличного от 0 значения.

load_cal_data

Load cal data

не используется

O,H,F

Загрузить калибровочные настройки; настройки всегда загружаются из файла Wx.txt, находящегося в каталоге проекта; x – сетевой адрес «Доза4ТМ» в диапазоне [0..255], загрузка  происходит при записи отличного от 0 значения.

read_last_error

нет

не используется

I,H

Последняя ошибка, которую вернул прибор, 0, если ошибок не было

clear_error

нет

не используется

O,F,H

Сбросить в 0 последнюю ошибку, сброс происходит при записи отличного от 0 значения.

store_cal_data

нет

не используется

O,F.H

При записи ненулевого значения в этот канал происходит сохранение калибровочных настроек в файл Wx.txt, находящийся в каталоге проекта, где x – сетевой адрес «Доза4ТМ» в диапазоне [0..255]. Если калибровочные настройки не были считаны каналом с командой read_cal_data, то будет выставлен флаг аппаратной недостоверности.

 

В каталоге проекта может находиться текстовый файл doza4tm.cfg, содержащий единственную строку вида:

transaction_delay=<число>

Число в этом файле определяет, сколько миллисекунд МРВ будет ждать после получения ответа от дозатора до посылки очередной команды. Если такого файла в каталоге проекта нет, используется задержка в 50 мс.

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

;====================================

;0-все сообщения

;1-только предупреждения и ошибки

;2-только ошибки

level=0

;====================================

;максимальный размер файла в Мб

max_size=50

;====================================

;вкл/выкл протоколирование

enabled=true

Строки, начинающиеся со знака ";",  являются комментариями и необязательны.

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

Протокол работы заносится в файл t11.log.