Проблема с опросом DIO-99M 5.4 через Moxa NPort 5110

У нас все на модемах - работает влет, а у клиента настраиваем по сети и никак не получается :du_ma_et:
Подключение через Moxa NPort 5110. Подскажите куда смотреть?
DIO.JPG

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

Прошу прощения, сразу не подумал
dump.rar (7.14 KB)

Теперь давайте попробуем разобраться. В дампе легко найти опрос вашего прибора. Приведу только один запрос и ответ, поскольку остальные 10 идентичны.

08.12.2014 11:12:50.167 >> 01 03 00 00 00 06 C5 C8
08.12.2014 11:12:50.245 << 00 02 08 00 0C 00 08 00 00 00 08 00 00

DIO-99M работает по протоколу Modbus. ЛЭРС УЧЁТ выполняет запрос к прибору с сетевым адресом 01. Это первый байт запроса.
Прибор должен отправить ответ, в котором он так же указывает свой адрес. Это регламентируется стандартом Modbus.
Однако в ответе устройства первый переданный байт - 00, хотя должен быть 01. Дальнейшие байты тоже идут вразрез с протоколом Modbus. Всё заканчивается тем, что система пытается проверить контрольную сумму считанного ответа, она не сходится, запрос после этого повторяется с тем же результатом.

Исходя из этого можно предположить следующее.

  1. Параметры порта Moxa NPort не совпадают с параметрами порта DIO-99M. Например, бит контроля чётности может не совпадать, поэтому в считанном пакете отсутствует или искажается часть байт. Возможно, что не совпадает количество бит данных, или скорость обмена.
  2. К MOXA подключены несколько приборов с одинаковым сетевым адресом. Из-за этого они одновременно отвечают на запросы ЛЭРС УЧЁТ, и в итоговых считанных данных получается “каша” из ответов двух разных приборов.

Второй пункт отпадает, к МОХА подключен один прибор.
По первому пункту проверили все что смогли, настройки точно такие же как ЛЕРС настраивает модем для ДИО:
контроль чётности-нет, 8 бит, стоп-1, скорость обмена-19200. Только модем с пол-тыка, а тут фигвам :cry_ing:
В ДИО никакие настройки менять невозможно, только сетевой номер. На всякий случай пробовали - без изменений.
Дайте пожалуйста еще какую наводку…

Давайте смотреть настройки Moxa.

Вот ребята сняли экран, с этими же настройками (конечно кроме скорости) семь СПТ941 и один ТВ7 работают отлично…


С завода ДИО дали такой скудный ответ: " Можно только нужна разность напряжений для RTS DTR. Один установлен другой снят".
Сегодня пробовали разные варианты с настройкой этих сигналов - не помогло. Может что-то не так делали, крутых спецов у меня нет :frowning:
Идея на крайний случай: если я смогу договориться с клиентом на день-два снять Моху с ТВ7 и прицеплю ее к ДИО у себя в офисе на выделенный адрес вместо веб-сервера, сможете плотно заняться им?

А какой был вопрос?

Нет. Во-первых, наша задача - разрабатывать систему и помогать клиентам, обучая их. Решая проблемы вместе, и мы и вы получаем опыт. Решая проблему за вас, мы лишаем вас опыта и создаем себе дополнительные проблемы. Во-вторых, проблема подключения адаптера Moxa к тепловычислителю DIO относится не к нам, а к тех.поддержке компании Немтех.

Насколько я понимаю, речь идет не про DIO-99, как вы написали в заголовке темы, а про DIO-99M 5.4 (у обычного DIO-99 Скорость обмена 2400 и они пока не поддерживаются в ЛЭРС УЧЕТ). При подключении приборов с автономным питанием, таких как DIO-99M 5.4, нужно помнить, что последовательному интерфейсу прибора для работы требуется внешнее питание. При подключении адаптера Moxa питание лучше брать с контакта DTR.

Сначала нужно убедиться, что прибор, с которым вы мучаетесь, исправен. Для этого опросите его через кабель (или модем, если модемы у вас “работают влет”).
Если прибор исправен - проверьте кабель. Кабель должен быть прямой, без перемычек. Желательно использовать полный модемный кабель, но по крайней мере в кабеле должно быть 4 провода (2, 3, 4 и 5-й контакты ). При подключенном кабеле и установленном соединении через Moxa, на 4-м контакте должно быть напряжение +6V.

Контроль потока в Moxa должен быть выключен (Flow Control = None). На вашем скриншоте он включен, но насколько я понял - это следствие ваших экспериментов. Если при отключенном контроле потока, на 7-м контакте (сигнал RTS) будет +6V - обрежьте этот проводник в кабеле, т.к. в протоколе обмена DIO-99V 5.4 указано, что должен быть установлен либо сигнал DTR, либо RTS.

Если все подключено правильно - запустите ручной опрос с определением устройства.

Вопрос (после описания проблемы) был “подскажите что делать?”

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

И опять все абсолютно верно. Но вы видите какие лаконичные ответы они дают, это при том, что мы с ними работаем более 10 лет. У вас сильные профессионалы в этой области, а там (по моему ощущению) таких нет.

Да, конечно. Не настолько мы слабы на голову, чтобы биться с прибором, который не поддерживается системой.

Не скажу, что ваши слова для меня китайская грамота, но честно говоря, я не понимаю как надо подавать питание на “последовательный интерфейс прибора”. Смысл ясен, что надо сделать физически? Припаять один провод на контакт 4(DTR), второй очевидно на контакт 5(земля), все это как понимаю со стороны Моха, и куда все это подать? Что именно надо запитать?
При этом у меня большинство вычислителей именно с автономным питанием (ВКТ, СПТ, ДИО), все работают с модемами без всякого “внешнего питания”, а в Ростелекоме мы подключили с Моха семь СПТ, все работают.

Конкретно этот прибор стоит в поселке за 420 км от нас и его не так просто быстренько “опросить через кабель или модем”. Но то, что он теоретически может не работать мы тоже догадались. Именно поэтому мы уже цепляли новый ДИО к работающей Мохе здесь в тепловом узле - ответ тот же. Но т.к. эта сеть у Ростелекома внутренняя и доступ к ней извне в принципе невозможен (безопасность однако), я и хотел на время украсть у них Моху и насильничать с ней в офисе.
Про кабели тоже сами подумали, используем именно модемные полные, без всяких перемычек.
Напряжение на 4-м контакте проверю…

Спасибо, проверим

Вот кстати тут вопрос! При подключении по сети галочку “Определить устройство” поставить невозможно, она затенена, а подсказка пишет, что определение невозможно, т.к. устройство входит в сеть.

Вы путаете понятие “Сеть приборов” (сетевое подключение, когда на на один кабель подключено несколько приборов учета) и подключение по сети Интернет (транспортный уровень). В сообщении говорится о том, что в карточке прибора вашего DIO-99M 5.4 указано, что прибор входит в сеть устройств с другими устройствами (в поле “Подключен к сети” выбрана сеть устройств).

Определение устройства выполняется через отправку запросов с широковещательным адресом. При работе с сетью устройств нельзя использовать широковещательные запросы для чтения данных - на запрос может ответить любое устройство (работает принцип “Кто первый встал - того и тапки”) или несколько устройств сразу (тогда на выходе будет “каша” из сложенных амплитуд сигналов, и соответственно, ошибка "Не сходится контрольная сумма).

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

Моху я все же взял в офис, перестроили под нашу локальную сеть, прицепили новый ДИО, контрольный опрос - ошибка есть, меряем напругу - есть +5,5V на контакте 7! По совету товарищей отмахиваем этот провод, повторяем опрос - ошибка на месте и +5,5V на контакте 7 тоже на месте (при откушеном проводе) ;;-)))
После истеричного смеха включаем логику и т.к. либо DTR, либо RTS - припаиваем взад провод 7 и кусаем провод 6. Опрос - и свершилось чудо, связь пошла! :ya_hoo_oo:
Не выключая логику, переворачиваем шнур - не работает.
Имеем вывод: для того чтобы связка МОХА + ДИО работала, надо либо в разъеме на стороне ДИО удалить провод с контакта 6, либо на стороне Мохи с контакта 7.
Надеюсь кому-то еще пригодится этот опыт и наши недельные мытарства не пропадут даром.

Поправка: DTR - это 4-й провод, 6-й провод - это сигнал DSR.