Диагностика работы с устройством SET4

<< Click to Display Table of Contents >>

Navigation:  Проект в MasterSCADA 4D > Дерево системы > Получение и отправка данных > Дополнительные протоколы > SET4 > Рекомендации по настройке протокола SET4 >

Диагностика работы с устройством SET4

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

Важно! Получать лог-файлы обмена с устройством следует всегда на отдельном проекте, с одним устройством и минимумом переменных.

Чтобы в лог-файлы записывались запросы от устройств, необходимо активировать расширенный режим записи логов. Для этого, в панели свойств узла, для настройки Параметры запуска RT нужно установить значение /t :

diagnostika_raboti_s_ustroistvom_SET4

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

В случае если используется исполнительная система, входящая в состав среды разработки, файлы, по умолчанию, хранятся в папке: С:\Users\[имя пользователя]\AppData\Roaming\MPSSoft\MasterSCADA4D[номер версии]\ProjectsServiceData\[имя проекта]\Debug\[имя узла]\PLC\logs\log_[дата формирования файла].txt

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

Откройте лог-файл при помощи Блокнота или специальным ПО для просмотра логов (например LogViewer).

Так как в лог-файлах фиксируется полная информация от системы, то необходимо выделить сообщения, связанные непосредственно с протоколом. Диагностические сообщения от протокола можно определить по начальному тексту SET4 driver.

Пример:

SET4 driver. Read start

SET4 driver. Start init session

20029931 |20160|:res=10 err=0 Task=0 iTimeout=500 len=10: 1F 01 30 30 30 30 30 30 4F 68  -> (task=0 dt=38 c=4(4)) 1F 00 09 80

SET4 driver. Session is init

20029969 |20160|:res=5 err=0 Task=0 iTimeout=500 len=5: 1F 08 12 C7 CB  -> (task=0 dt=38 c=6(6)) 1F 64 42 80 77 2F

20030015 |20160|:res=5 err=0 Task=0 iTimeout=500 len=5: 1F 08 02 C6 07  -> (task=0 dt=46 c=13(13)) 1F 00 01 00 01 00 00 00 00 00 00 7F 60

20030056 |20160|:res=5 err=0 Task=0 iTimeout=500 len=5: 1F 04 00 42 C6  -> (task=0 dt=41 c=11(11)) 1F 28 22 00 06 02 09 23 00 C7 F6

SET4 driver. Current time=2023.09.02 00:22:28

SET4 driver. READ CURRENT TAGS

20030097 |20160|:res=5 err=0 Task=0 iTimeout=500 len=5: 1F 08 00 47 C6  -> (task=0 dt=41 c=10(10)) 1F 30 49 CC 0B 17 10 14 90 E2

20030139 |20160|:res=5 err=0 Task=0 iTimeout=500 len=5: 1F 04 00 42 C6  -> (task=0 dt=42 c=11(11)) 1F 28 22 00 06 02 09 23 00 C7 F6

SET4 driver. Current time=2023.09.02 00:22:28

SET4 driver. Read done

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

Если в устройстве присутствуют текущие каналы, то их считывание выполняется после строки SET4 driver. READ CURRENT TAGS.

Пример:

SET4 driver. READ CURRENT TAGS

20156332 |8848|:res=5 err=0 Task=0 iTimeout=500 len=5: 1F 08 00 47 C6  -> (task=0 dt=40 c=10(10)) 1F 30 49 CC 0B 17 10 14 90 E2

20156373 |8848|:res=6 err=0 Task=0 iTimeout=500 len=6: 1F 08 11 11 4A 6E  -> (task=0 dt=41 c=6(6)) 1F 00 56 76 B9 B6

20156413 |8848|:res=6 err=0 Task=0 iTimeout=500 len=6: 1F 08 11 12 0A 6F  -> (task=0 dt=40 c=6(6)) 1F 00 00 23 46 29

20156452 |8848|:res=6 err=0 Task=0 iTimeout=500 len=6: 1F 08 11 13 CB AF  -> (task=0 dt=39 c=6(6)) 1F 00 00 24 07 EB

20156492 |8848|:res=6 err=0 Task=0 iTimeout=500 len=6: 1F 08 11 15 4B AD  -> (task=0 dt=40 c=6(6)) 1F 00 56 65 F8 7B

20156532 |8848|:res=6 err=0 Task=0 iTimeout=500 len=6: 1F 08 11 16 0B AC  -> (task=0 dt=40 c=6(6)) 1F 00 00 0D C6 35

Если в устройстве есть архивные каналы накопленных энергий, то они опрашиваются поочередно.

Пример:

SET4 driver. Read Arr 3 tariff 0 month 11

20164583 |8848|:res=6 err=0 Task=0 iTimeout=500 len=6: 1F 05 3B 00 04 C1  -> (task=0 dt=67 c=19(19)) 1F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 48 46

SET4 driver. WriteValues: Time=2022.11.01 00:00 Pp=0.000000,Pm=0.000000,Qp=0.000000,Qm=0.000000,Pointer=20221101

В данном случае осуществляется чтение массива 0x3, который содержит значения за месяц, с учетом нулевого тарифа (сумма всех тарифов), за последние 11 месяцев.

Также производится чтение архивов:

0x83 – значения на начало прошедших 12 месяцев;

0x06 – энергия за текущие и прошедшие 30 суток;

0x86 – энергия на начало текущих и 30 предыдущих календарных суток.

Значения энергии из архива читаются один раз при запуске, после чего они записываются в архив, и последнее значение считывается при каждой смене месяца/суток. А энергетические показания, не являющиеся архивными, считываются как текущие значения.

Чтение профиля мощности начинается со строки SET4 driver. READ ARCHIVE MODULE.

Пример:

SET4 driver. READ ARCHIVE MODULE 1

20729092 |32296|:res=6 err=0 Task=0 iTimeout=500 len=6: 1F 08 04 00 84 F2  -> (task=0 dt=43 c=10(10)) 1F B0 00 02 09 23 3E 50 2B 46

SET4 driver. Pointer: Time=2023.09.02 00:48 address=15952

SET4 driver. Read address 15952

20729156 |32296|:res=8 err=0 Task=0 iTimeout=500 len=8: 1F 06 03 3E 50 10 D6 30  -> (task=0 dt=64 c=19(19)) 1F 00 00 00 00 00 00 00 00 07 11 05 23 00 1E 5E FF D5 15

SET4 driver. Read address 15960

20729219 |32296|:res=8 err=0 Task=0 iTimeout=500 len=8: 1F 06 03 3E 58 10 D1 F0  -> (task=0 dt=63 c=19(19)) 1F 07 11 05 23 00 1E 5E FF 00 00 00 00 00 00 00 00 E3 B6

SET4 driver. Record time is read complete

SET4 driver. WriteValues: Time=2023.05.11 07:30 Pp=0.000000,Pm=0.000000,Qp=0.000000,Qm=0.000000

20729294 |32296|:res=8 err=0 Task=0 iTimeout=500 len=8: 1F 06 03 3E 68 10 C5 F0  -> (task=0 dt=75 c=19(19)) 1F 00 00 00 00 00 00 00 00 08 11 05 23 00 1E 5F FF 94 C5

SET4 driver. WriteValues: Time=2023.05.11 08:00 Pp=0.000000,Pm=0.000000,Qp=0.000000,Qm=0.000000

SET4 driver. Read address 15984

20729359 |32296|:res=8 err=0 Task=0 iTimeout=500 len=8: 1F 06 03 3E 70 10 CF F0  -> (task=0 dt=64 c=19(19)) 1F 08 11 05 23 00 1E 5F FF 00 00 00 00 00 00 00 00 F7 87

SET4 driver. Record time is read complete

SET4 driver. WriteValues: Time=2023.05.11 08:30 Pp=0.000000,Pm=0.000000,Qp=0.000000,Qm=0.000000

Архив начинает читаться с самой старой записи. В каждом цикле опроса считывается количество записей, установленное в настройках модуля, и полученные значения сохраняются в архиве. В параметр Pointer записывается указатель на последнюю успешно считанную запись. В случае перезапуска системы, процесс чтения начнется с момента, который соответствует последней успешно считанной записи, сохраненной в параметре Pointer.

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