Сегодня я расскажу о подключении двух устройств к русской чудо-поделке
под названием РМ-5. Это - расходомер, у
которого есть порты RS485. Но нет нормальных инструкций и нормального
ПО.
Хотя инструкции как таковые присутствуют и даже с подписями директора конторы под названием "ТБН", но в общем и целом, написаны они так, что писанины много, а того что надо - нет.
Короче говоря, подключить надо было два устройства. Первый прибор - это чудо-штука под названием "АЧТВ". Это такой прибор, который подключается к РМ-5 по RS485 и полученные от него данные преобразует в сигнал: аналоговый (токовой или напряжения) или дискретный (импульсный высокой частоты). Второе устройство - это компьютер, где мы хотим считывать архивы данных.
Итак, оборудование подключается по интерфейсу RS485. Протокол - "КМ-5". Вообще, это любимое занятие всех и каждого - придумывать свои безумные протоколы для RS485, вместо того, чтобы использовать универсальные.
Единственный, кто достоин оправдания в этом занятии - это Siemens с их протоколами, реализующими мультимастерный RS485 типа MPI или Profibus (промолчу про богомерзгий USS).
Итак, протокол называется "КМ-5". На самом деле КМ-5 - это название теплосчётчика той же фирмы ТБН, а РМ-5 - это вроде какая-то переделка того самого теплосчётчика под расходомер.
У самого расходомера есть две пары клемм (два порта) RS485: A1, B1 и A2, B2. Ну, и тут возникает закономерные вопросы: что это за порты, что это за клеммы, есть ли между ними разница, куда надо что подключать, где они настраиваются? Наверно, инструкция нам расскажет. Итак, схема подключения из разных инструкций для РМ-5:
Вот инструкции, где они это нарисовали - смотри сам
[1],
[2],
[3].
Итак,порт 1 (A1/B1) отмечен на схеме как "вых.1", а порт 2 - как "вых.2" или "ППС". Очень информативно.
Ну, кому надо, тот найдёт в бесконечных бестолковых инструкция ТБН, что такое ППС, но это не ответит на вопрос, что такое "вых.1" и "вых.2".
В один прекрасный момент меня заинтересовала возможность изменения параметров расходомера кнопками на нём.
Параметры не менялись и выяснилось, что для их изменения надо переключить последний тумблер ("EP") в 4-тумблерном переключателе SW1. И тут внезапно описание переключателя "EP":
Т.е. вот так, невзначай, компания ТБН нам внезапно разъяснила, что такое порт 1 и порт 2 интерфейса RS485.
Порт 1 - это RS485 Slave, а порт 2 - это RS485 Master. Чтобы было понятно -
НИГДЕ больше в их инструкциях вы не найдёте, что такой порт
1 и порт
2.
АТЧВ (RS485 to Analog/impulse output)
Теперь касательно подключения устройств. У прибора АТЧВ своя инструкция, но в ней нет ничего про подключение к РМ-5. Но благо прибор АТЧВ - универсальный, они сделали, чтобы он работал не только по их уже упомянутому протоколу "КМ-5", но и по человеческому протоколу - Modbus. И вот что пишут они про Modbus:
Т.е. тут мы опять-таки внезапно обнаруживаем, что АТЧВ - это slave-устройство сети RS-485.
Соответственно, теперь мы знаем, что АТЧВ нужно подключать к порту 2 (Master - A2/B2) расходомера РМ-1.
Настройка АТЧВ производится через
ПО "Редактор АТЧВ". Подключиться можно через самый дешёвый преобразовать USB-RS485 с aliexpress, что я и сделал:
Драйвера к такому адаптеру -
тут.
Сразу скажу, что для получения текущего расхода в выражении 4..20 мА от РМ-5 настраивать ничего не нужно - настройки по умолчанию АТЧВ соответственные. Но я всё-таки проверил настройки, потому что мне прибор АТЧВ выдавал два мигания, что по инструкции означало отсутствие данных по RS485:
Ну, конечно, кто бы нам рассказал, что отсутствие данных и отсутствие связи как таковой - это разные вещи. Т.е. отсутствие подключения линии RS485 к прибору и неправильная настройка РМ-5 выдают одну и ту же ошибку на мигающем индикаторе.
Оказалось, что связь в порядке, а прибор РМ-5 просто не передаёт данные, пока в нём коэффициент "Кч1" равен 0. Как я уже упомянул ваше, чтобы редактировать параметр "Кч1" нужно предварительно перевести тумблер "EP" (нижний на SW1) в положение ON.
Вот описание настройки:
В итоге, прибор АТЧВ, подключенный к порту 2 (A2/B2) нормально заработал.
Поскольку переходник с aliexpress имеет клеммы, где не только написано "A" и "B", но и что они означают, то мы теперь знаем, что у приборов ТБН для RS485 клеммы А - это плюс, а клеммы B - это минус.
Вообще, по стандарту RS485 должно быть наоборот, и хотя большинство производителей (кроме Siemens, Schneider и ещё пары-тройки) делают неправильную маркировку (т.е. у них, вопреки стандарту, А - это плюс), всё-таки, как мне кажется, лучше бы все производители писали "плюс" и "минус" на оборудовании (как это делает, например, производитель преобразователей частоты Advanced Control), проще было бы.
Короче, с АТЧВ разобрались. Дальше - интереснее.
АРХИВЫ
Ладно, смотрим эту программу, глядя на которую я бы подумал, что она написала за 5 минут на коленке. Есть там кнопка "Загрузка из теплосчётчиков":
Нажимаем на неё (или выбираем пункт меню "База данных" -> "Загрузка данных"), получаем вот такое окно:
Ну, кажется, что всё относительно понятно - подключаем компьютер через преобразователь USB-RS485 к РМ-5 и подключаемся. Теперь-то мы знаем, что клеммы A1/B1 - это RS485 slave, что может пойти не так? Не тут-то было... Используем тот самый преобразователь с aliexpress, которым мы успешно подключились к АТЧВ. Что-то не работает. Забегая вперёд, скажу, что выбирать надо было не RS485 в "способе загрузке", а "OVERLAP", но так тоже через этот преобразователь не заработало.
АПИ-RS-485-E (RS485 to Ethernet)
В моём случае требовалось, правда, организовать подключение через ТБН-овский преобразователь
АПИ-RS-485-E, т.е. RS485 преобразовывался в Ethernet. Его настройка - отдельная история. Есть программа
ТБН Ethernet Конфигуратор, от которой практически никакого толку, кроме, если только, возможности найти приборы АПИ-RS-485-E и узнать их IP-адреса. На самом деле, эта задача не требует установки какого-то ПО, поскольку адреса приборов по умолчанию находятся где-то между адресами 192.168.0.100 и 192.168.0.110, т.е. узнать IP-адрес можно, быстро пропинговав этот диапазон. Почему от программы ТБН Ethernet Конфигуратор нет толку? Потому что в ней нельзя нормально поменять IP-адрес (выйти за диапазон 192.168.0.x, который практически никто в промышленных сетях не использует), все её остальные функции реализованы в Web-интерфейсе, т.е. вводим в браузерe IP-адрес прибора, вводим
login: Admin,
password: 1234.
Другая часть задачи обмена через Ethernet - расшарить подключение RS485 в виде COM-порта. Потому что
замечательная программа для просмотра архивов не содержит возможности выбирать интерфейс Ethernet. Для расшаривания порта нужно скачать вот этот архив
kspd_5_setup.zip. Там есть такое ПО под названием RedirectVP, оно после установки запускается через
Пуск->Программы->ТБН СКПД->Редиректор виртуальных портов. После запуска программа появляется в области уведомлений (это там справа в строке панели задач Windows, там где часы). Создаём виртуальный COM-порт, задаём переадресуемый IP-адрес и его порт.
Что же, попробуем через него. И, о чудо, оно работает. Вот только не через интерфейс RS485, который предлагают выбрать первым в списке, а через непонятное OVERLAP. И ещё, программа просит указать какой-то "номер счётчика". Номер счётчика - это не просто заводской номер, который вводится для информации, а это ещё и адрес в сети RS485. О чём в инструкции, как видим, написано тоже мельком:
Вот так примерно всё это выгляди:
В общем, соединение через ТБН Ethernet Конфигуратор дало эффект. Правда, считав, сотню-другую записей из прибора программа пишет ошибку связи, но это не страшно, поскольку считанные записи сохраняются в базе данных. Т. е. если не все записи загрузились, надо лишь снова запустить этот процесс, и тогда будут считываться не все записи сначала, а будет продолжаться загрузка только новых записей.
Что касается информации, выводимой по считавшимся данным, - я счёл графики не удобными для использования, но построение отчётов без графиков, т.е. просто вывод таблицы показаний, вполне удобен.