УкраїнськаEnglishmRussian
Вход/Новый
В теме много сообщений

Протокол обмена с счетчиками Меркурий 200 и Меркурий 230


Автор Сообщение
Сообщение создано: 31. 05. 2017 [19:04]
Godzilla
Арсен Закоян
Contributor
Создатель темы
Зарегистрирован(а) с: 12.02.2013
Сообщения: 123
Только что заметил мелкую ошибку, исправил. Включите пожалуйста именно этот файл в библиотеку.
Вложенный файл

mercury.db.gz (Тип файла: application/gzip, Размер: 8.27 килобайт) — 806 загрузок
Сообщение создано: 31. 05. 2017 [22:37]
JackMas
Евгений Маслов
Зарегистрирован(а) с: 05.04.2017
Сообщения: 27
Проверил на 230 - AR-03 R -- работает нормально
Завтра подключу в группу ART 3 или 4 штуки проверю
Сообщение создано: 01. 06. 2017 [19:17]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3742
"roman" wrote:

"Godzilla" wrote:

Прикрепил файл описания на Русском(не совсем понял про структуру XML запроса, надеюсь описал правильно).

Почти, если там только один аргумент адреса.

На самом деле адреса нет, для 200, а есть аргументы: "first", "second", "data".
Опишите их!

Learn, learn and learn better than work, work and work.
Сообщение создано: 01. 06. 2017 [21:19]
Godzilla
Арсен Закоян
Contributor
Создатель темы
Зарегистрирован(а) с: 12.02.2013
Сообщения: 123

На самом деле адреса нет, для 200, а есть аргументы: "first", "second", "data".
Опишите их!

Адрес данного счетчика может превышать 32-битное целое число, а с ним нужно проводить математические операции и поэтому приходится разбивать его на 2 части.
"first" - первая часть адреса
"second" - вторая часть адреса
"data" - байт, отвечающий за запрос конкретной информации от счетчика.

[Сообщение редактировалось 2 раз(а), в последний раз 01.06.2017 в 21:24.]
Сообщение создано: 02. 06. 2017 [18:01]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3742
"roman" wrote:

"Godzilla" wrote:

Соглашаюсь с распространение данного кода.

Хорошо. Завтра включу его в библиотеку, а в репозиторий и сборка пойдёт в пятницу вечером.

Включил!

Learn, learn and learn better than work, work and work.
Сообщение создано: 03. 06. 2017 [21:29]
JackMas
Евгений Маслов
Зарегистрирован(а) с: 05.04.2017
Сообщения: 27
Проверил работу в группе -- работает нормально.
Только на один прибор время опроса около 10 секунд , можно это как то ускорить или нет ?
Планирование вычислений установлено в 1с
Сообщение создано: 04. 06. 2017 [09:21]
Godzilla
Арсен Закоян
Contributor
Создатель темы
Зарегистрирован(а) с: 12.02.2013
Сообщения: 123
"JackMas" wrote:

Проверил работу в группе -- работает нормально.
Только на один прибор время опроса около 10 секунд , можно это как то ускорить или нет ?
Планирование вычислений установлено в 1с

Если все галочки стоят то это 14 опросов, так что 10 сек вполне оправдано.
Уменьшить время можно двумя путями:
- Считывать только те параметры, которые реально нужны(нет смысла считывать энергию по тарифам 2,3,4 если у вас однотарифное расписание)
- Уменьшать временные интервалы транспорта, если у вас подключены счетчики напрямую через меркурий-221 начать например с 200:50 и постепенно уменьшать вторую цифру, пока не побегут ошибки в данных.
Сообщение создано: 04. 06. 2017 [19:45]
JackMas
Евгений Маслов
Зарегистрирован(а) с: 05.04.2017
Сообщения: 27
Спасибо за подсказку.
Поставил транспорт 200:50
Теперь на прибор уходит 3 сек. , отмечены все реквизиты для опроса.
Этого вполне достаточно.

Еще вопрос:
Если мне надо опрашивать счетчики через сокетное соединение,
например через преобразователь МОХА или программно через socat или ser2net,
мне просто надо создать выходной транспорт в сокетах и указать в счетчике ?

я правильно понял ?
Сообщение создано: 05. 06. 2017 [08:09]
Godzilla
Арсен Закоян
Contributor
Создатель темы
Зарегистрирован(а) с: 12.02.2013
Сообщения: 123
"JackMas" wrote:

Еще вопрос:
Если мне надо опрашивать счетчики через сокетное соединение,
например через преобразователь МОХА или программно через socat или ser2net,
мне просто надо создать выходной транспорт в сокетах и указать в счетчике ?

я правильно понял ?

Я использовал МОХА как TCPclient а ser2net как TCPserver, вдобавок к ser2net для создания пары последовательных портов юзал tty0tty, без этого не будет должным образом работать.
Сообщение создано: 05. 06. 2017 [09:53]
JackMas
Евгений Маслов
Зарегистрирован(а) с: 05.04.2017
Сообщения: 27
Я понял про виртуальные порты, но имел ввиду не совсем это.
У меня большое количество счетчиков и других устройств на объектах.
Там стоят GSM модемы с rs485 или ETH роутеры , все имеют статические IP адреса.
Работают все в качестве серверов.

Мне бы хотелось по сокету туда подключаться на IP адрес и выполнять обмен.
Это вполне реализуемо, но не могу понять как здесь это сделать ?



4242