Добрый вечер. Собрал стенд из IskraJS + Troyka RS485, и подключил к выводам RS485 Меркурия 230. Пробую код javascript оригинальной библиотеки от Амперки Код (C++): var rs485 = require('@amperka/rs-485').connect({ serial: Serial3, speed: 9600, dirPin: P3, lineEnding: '\r\n' }); + методы available(),read(),write(),print() Судя по светодиодам данные отправляются, но обратно от счетчика ничего не прилетает. Подключал ли кто-нибудь данные счетчики к IskraJS через родной модуль RS485 от Амперки + библиотека.
Здесь больше зависит от выполнения стандарта протокола при обмене со счетчиком нежели от модуля амперки. Если команды подаются не в соответствии с протоколом или не соблюдаются тайминги то и "прилетать" ничего не будет. Из вашего кода понятно лишь одно что вы задействовали последовательный порт.
Советую обратить внимание на тему http://forum.amperka.ru/threads/Опрос-счетчика-Меркурий-230.10784/ Может описание и код исходников от Ардуино как-то помогут...
Данную разработку видел на просторах сети неоднократно. У них в коде используются такие же команды, которые и в js библиотеке от амперки. Serial.available() Serial.readBytes() Serial.print() итд Исходя из библиотеки от амперки, я должен получить хоть какие-нибудь данные через функцию available(), но никаких данных я не получаю. Физическое подключение делаю по их же схеме.
Тут и схема не сильно поможет, по опыту более чем 10 летнего опыту разработки в области АИИСКУЭ, наши счетчики зачастую идут с кривой прошивкой которую нужно обновить/заменить и т.п.поэтому без двух счетчиков, чисто для статистики, не обойтись. Также порекомендовал бы, если вы хотите серьезно добиться результата, приобрести как минимум два адаптера, что бы можно было элементарно соединиться с ПК и проверить работоспособность модулей. Также нужен нормальный промышленный преобразователь например NPort от Moxa или родственный, что бы соединиться через ПК стандартной программой от производителя тогда вам методом исключения станет понятно, где у вас проблема. А по трем командам скопированным из мануала, вам поможет только экстрасенс.