This is topic TM6 и Delta DVP60ES2 in forum Общие вопросы / Common questions at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/45/t/000253.html

Posted by swimmers (Участник № / Member № 5660) on :
 
Здравствуйте!
Не получается получить данные с контроллера.
Контроллер подключен к компьютеру через порт COM2. Порт контроллера настроен в режиме RTU 9600,8,n,1
Подскажите, в чем может быть проблема?

Когда запускаю RTM, светодиод индикации обмена по порту, на контроллере, никаких признаков жизни не подаёт.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
В файле *.cnf введите ключ
DEBUGON=200
для регистрации в профайлерном протоколе возможных ошибок в организации обмена по COM-порту.
Некоторые из ошибок регистрируются также в файле tm6_log.txt.

Учебный фильм по подключению Delta к TRACE MODE см. здесь http://www.adastra.ru/products/drivers/Delta_DVP/
 
Posted by swimmers (Участник № / Member № 5660) on :
 
Всё делаю именно так как показано в видео
Вот содержание текстового файла:

 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Обратите внимание на строки в протоколе
(12:42:53) WRN_RS:found channels = 0

(12:43:20) INF_RS:COM2 TRANSACTION=0

Эти сообщения говорят о том, что в проекте нет каналов, настроенных на обращение к инициализированному порту COM2. Поэтому нет обмена.

Надо проверить настройки "Источников" и привязки к ним каналов.
 
Posted by swimmers (Участник № / Member № 5660) on :
 
Странно.
На первый взгляд всё указано как надо. Источники/приёмники->PLC_1->Delta_Group_1->Delta#1
Параметры:
Порт - 1
Номер станции - SN=02h
Номер регистра - 9990
Тип регистра - D
Направление - Input
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
А какой канал привязан к этому "Источнику"?
Какое назначение COM-порта в узле?
 
Posted by swimmers (Участник № / Member № 5660) on :
 
Создавал ссылку перетащив компонент Delta#1 в группу Каналы.
Delta#1:Значение (Источники/Приемники.PLC_1.Delta_Group_1)


Назначение COM2 Master, т.е. всё стоит по умолчанию.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Прошу прощения за невнимательность.
В приведенном Вами примере http://www.adastra.ru/products/drivers/Delta_DVP/ используется "Источник" из группы PLC/Mitsubishi_Group с указанием в строке "Дополнительно" параметра "Delta:".
Группа Delta_Group прописана на перспективу (она не документирована). Сейчас эта группа не подключена.
Сделайте в Вашем проекте так же, как в примере.
 
Posted by swimmers (Участник № / Member № 5660) on :
 
Делал, такая же картина.

 
Posted by swimmers (Участник № / Member № 5660) on :
 
Хотя светодиод мигает, уже лучше
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
По протоколу на каждый запрос получен ответ.
Надо посмотреть атрибут "Достоверность" (4) у канала. Если он _F (FALSE), значит, ответ пришел с ошибкой. Возможно, ошибка в заданном Вами номере регистра.
Код ошибки можно посмотреть, если перехватить трафик COM-порта, например, PortMon'ом.
 
Posted by swimmers (Участник № / Member № 5660) on :
 
Из D0 данные читаются. Думаю это связано с адресацией в памяти контроллера, контроллер всё-таки новый, и думаю отличия от Mitsubishi присутствуют.
В регистрах D9990-9999 хранятся данные полученные из модулей расширения контроллера. Надеюсь в следующих версиях программы вам это удастся реализовать.

Спасибо!
 
Posted by swimmers (Участник № / Member № 5660) on :
 
Не буду плодить темы, спрошу в этой.

Как в Trace Mode отображать состояние входов, выходов и промежуточных реле PCL?

Как делаю я.
Создаю компонент c параметрами:
Затем создаю канал HEX16
Затем создаём Аргументы экрана

И при параметре DEBUGON=200 получаю вот такую картину:

 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Контроллер возвращает код ошибки:

M_INF:ERR IN: 02 81 02 31 91

По стандарту Modbus это означает, что адрес запрашиваемой переменной некорректный.
По описанию системы адресации в контроллере DELTA регистры X адресуются следующим образом:
0x400+<номер регистра>.
В запросе функция запроса и адрес регистра сформированы в соответствии с Вашими настройками.
Надо разбираться с системой адресации в контроллере.
 
Posted by swimmers (Участник № / Member № 5660) on :
 
quote:
Отправитель / Originally posted by AdAstra Technical Support:
Контроллер возвращает код ошибки:

M_INF:ERR IN: 02 81 02 31 91

По стандарту Modbus это означает, что адрес запрашиваемой переменной некорректный.
По описанию системы адресации в контроллере DELTA регистры X адресуются следующим образом:
0x400+<номер регистра>.
В запросе функция запроса и адрес регистра сформированы в соответствии с Вашими настройками.
Надо разбираться с системой адресации в контроллере.

Вот вырезка из руководства по программированию контроллера:
 -
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Мы примем во внимание это функциональное несоответствие для последующего исправления.
Видимо, пока придется воcпользоваться напрямую необходимыми функциями Modbus RTU.
 
Posted by swimmers (Участник № / Member № 5660) on :
 
да, по Modbus RTU работает, но есть одно НО!
данные из D9990-9999 так-же не доступны. Их Modbus адреса A706-A70F

 -
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Надо также, как для типа данных X посмотреть, что возвращает контроллер при запросе регистров D с указанными адресами.
 
Posted by swimmers (Участник № / Member № 5660) on :
 
quote:
Отправитель / Originally posted by AdAstra Technical Support:
Надо также, как для типа данных X посмотреть, что возвращает контроллер при запросе регистров D с указанными адресами.

Когда в качестве источника используется Mitsubishi_Group
Когда в качестве источника используется Modbus

 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
В ответе устройства
M_INF:ERR IN: 02 84 01 72<r> c0
указывается, что используемая функция 04 Modbus в контроллере не поддерживается.
Обращение к регистрам D в контроллере DELTA (в Вашем проекте) с помощью драйвера, предоставляемого Trace Mode 6, осуществляется с функцией 03 Modbus.
Кадр запроса выглядит следующим образом
02 03 a7 06 00 01 47 4c

Вы задали в качестве источника Modbus Rin_Word(4), а надо было Rout_Word(3).
 
Posted by swimmers (Участник № / Member № 5660) on :
 
quote:
Отправитель / Originally posted by AdAstra Technical Support:
В ответе устройства
M_INF:ERR IN: 02 84 01 72<r> c0
указывается, что используемая функция 04 Modbus в контроллере не поддерживается.
Обращение к регистрам D в контроллере DELTA (в Вашем проекте) с помощью драйвера, предоставляемого Trace Mode 6, осуществляется с функцией 03 Modbus.
Кадр запроса выглядит следующим образом
02 03 a7 06 00 01 47 4c

Вы задали в качестве источника Modbus Rin_Word(4), а надо было Rout_Word(3).

По всей видимости я что-то не так делаю...
Ошибок то нет, но значение как и прежде 0.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Для уточнения ответа контроллера придется перехватывать трафик обмена с помощью перехватчика типа PortMon.
 
Posted by swimmers (Участник № / Member № 5660) on :
 
quote:
Отправитель / Originally posted by AdAstra Technical Support:
Для уточнения ответа контроллера придется перехватывать трафик обмена с помощью перехватчика типа PortMon.

PortMon у меня не работает. Видимо он не понимает виртуальный ком порт. У меня ноутбук.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
У канала, осуществляющего запрос регистра D, ДОСТОВЕРНОСТЬ (атрибут 4) взведена (F) или сброшена (T)?
Если сброшена, значит пришел корректный ответ.

Для проверки интерфейса можно временно использовать другой ПК или другую версию PortMon.
 
Posted by swimmers (Участник № / Member № 5660) on :
 
Использовалась программа "Advanced Serial Port Monitor", канал "Rout_Word(3)":

 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Advanced Serial Port Monitor должен выдать строки WRITE и READ с их содержимым.
В приведенном протоколе транзакции не зарегистрированы.
 
Posted by swimmers (Участник № / Member № 5660) on :
 
quote:
Отправитель / Originally posted by AdAstra Technical Support:
Advanced Serial Port Monitor должен выдать строки WRITE и READ с их содержимым.
В приведенном протоколе транзакции не зарегистрированы.

По всей видимости
WRITE (HEX):
02 03 A7 06 00 01 47
READ (HEX):
02 03 02 00 00 FC 44
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Контроллер с сетевым номером 2 ответил на функцию 03 Modbus двумя байтами 00 00.
В запрашивающем канале должен быть 0.

Есть ли у Вас альтернативное средство проверки реального содержимого запрашиваемого регистра по последовательному интерфейсу?

Тогда можно перехватить транзакции этого "альтернативного средства" и сравнить его с транзакциями, реализованными в проекте.
 
Posted by swimmers (Участник № / Member № 5660) on :
 
Я прошу прощения за свою невнимательность [Неодобрение / Frown]
Регистр не тот пытался считать. С нужным мне регистром всё заработало, как при Modbus так и при использовании Mitsubishi
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Удачи.
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2