1 2 3 4 5 6 7 8 9 10 10/10 10,00оценок: 3

Получение данных по RS-485 с EPsolar Tracer A (BN)

Тема в разделе "Возобновляемые источники электроэнергии", создана пользователем YaroslavN, 16.04.16.

  1. YaroslavN
    Регистрация:
    23.04.14
    Сообщения:
    53
    Благодарности:
    4

    YaroslavN

    Участник

    YaroslavN

    Участник

    Регистрация:
    23.04.14
    Сообщения:
    53
    Благодарности:
    4
    Адрес:
    Санкт-Петербург
    Получение данных по RS-485 с EPsolar Tracer A (BN)
    Всем привет! :hello:
    Озаботился получением данных с EPsolar Tracer A (собственно, судя по документации, у серии BN всё аналогично) на Arduino.
    В отличии от коллег в соседней ветке с серией RN, в этой серии RS-485 вместо RS-232.
    Соответственно распиновка уже другая, никаких Rx/Tx/GND, используется только два провода A и B.
    Согласно документации распиновка:
    1 - Power supply output +5V
    2 - Power supply output +5V
    3 - RS-485-B
    4 - RS-485-B
    5 - RS-485-A
    6 - RS-485-A
    7 - Ground
    8 - Ground

    Мультиметр в общем-то подтверждает: 1,2 - по 5В, 3-6 по 1В, 7,8 -0
    Не очень понятно, зачем выведено две пары A/B? Возможно для продолжения цепочки.

    Обмен по протоколу Modbus. По запросу производитель прислал документацию по регистрам,(прилагаю), но оказалось её можно и в Интернете найти.

    К Ардуино подключен модуль RS-485 на основе MAX485. Для Modbus есть библиотечки, но и сам протокол не сложный.
    Проблема в том, что упорно не приходит отклик от Трейсера. :no:
    Перепробовал обе пары. Пробовал поменять модуль ардуиновский. Всё без толку! :mad:

    Родным шнурком и родным софтом данные получаю на компе.
    Никто не реализовывал такое на платах микроконтроллеров? :faq:
     

    Вложения:

  2. YaroslavN
    Регистрация:
    23.04.14
    Сообщения:
    53
    Благодарности:
    4

    YaroslavN

    Участник

    YaroslavN

    Участник

    Регистрация:
    23.04.14
    Сообщения:
    53
    Благодарности:
    4
    Адрес:
    Санкт-Петербург
    Ещё нашёл такой видеоролик. Как-то гладко у мужика всё завелось, правда на компьютере.
    Хочу прикупить такой-же адаптер RS-485-USB и посмотреть на компе, приходят ли ответы.
     
  3. VoronNew
    Регистрация:
    17.03.13
    Сообщения:
    11.012
    Благодарности:
    6.398

    VoronNew

    Живу здесь

    VoronNew

    Живу здесь

    Регистрация:
    17.03.13
    Сообщения:
    11.012
    Благодарности:
    6.398
    Адрес:
    Санкт-Петербург
    @YaroslavN, забирайте у меня вот такую штуку, я как ни корячился не смог её подцепить даже к компу, в итоге купил оригинальный шнурок.
     

    Вложения:

    • IMG_20160416_094559.jpg
  4. YaroslavN
    Регистрация:
    23.04.14
    Сообщения:
    53
    Благодарности:
    4

    YaroslavN

    Участник

    YaroslavN

    Участник

    Регистрация:
    23.04.14
    Сообщения:
    53
    Благодарности:
    4
    Адрес:
    Санкт-Петербург
    Хм. какая оригинальная штука. Странно, что у неё клеммник на три провода
     
  5. Weis
    Регистрация:
    14.06.10
    Сообщения:
    6.193
    Благодарности:
    5.155

    Weis

    Живу здесь

    Weis

    Живу здесь

    Регистрация:
    14.06.10
    Сообщения:
    6.193
    Благодарности:
    5.155
    Адрес:
    Санкт-Петербург
    Ничего странного. Это нормально.
    RS485 может быть 4-х и 2-х проводным и дополнительно GND.
    В зависимости от реализации GND может отсутствовать.

    Вот: https://ru.aliexpress.com/item/1-pcs-USB-to-RS485-USB-485-Converter-Adapter-Support-Win7-XP-Vista-Linux-for-Mac/1684582905.html?detailNewVersion=2
    Дешево и сердито:)
    WinXP распознает эту штуку и ставит драйвер автоматически. В системе появляется новый компорт.
     
  6. YaroslavN
    Регистрация:
    23.04.14
    Сообщения:
    53
    Благодарности:
    4

    YaroslavN

    Участник

    YaroslavN

    Участник

    Регистрация:
    23.04.14
    Сообщения:
    53
    Благодарности:
    4
    Адрес:
    Санкт-Петербург
    А зачем 4х-проводной вариант? Если для дуплекса, то это уже RS-422 называется. И там кроме A и B вторая пара маркируется Y и Z.
    Или какие-то ещё есть варианты на 4 провода?
    Про GND прочитал, что действительно может быть земля общей.
    Да, спасибо, я уже видел эту штуку, возьму для экспериментов, чтобы на компе пробовать обмен, но мне для Ардуины нужно всё равно разобраться с модулем RS-485.
     
  7. VoronNew
    Регистрация:
    17.03.13
    Сообщения:
    11.012
    Благодарности:
    6.398

    VoronNew

    Живу здесь

    VoronNew

    Живу здесь

    Регистрация:
    17.03.13
    Сообщения:
    11.012
    Благодарности:
    6.398
    Адрес:
    Санкт-Петербург
    на тыльной стороне клемника значится А, В, GND
    а вот для чего блок джамперов хз...
     
  8. Weis
    Регистрация:
    14.06.10
    Сообщения:
    6.193
    Благодарности:
    5.155

    Weis

    Живу здесь

    Weis

    Живу здесь

    Регистрация:
    14.06.10
    Сообщения:
    6.193
    Благодарности:
    5.155
    Адрес:
    Санкт-Петербург
    Двухпроводный - полудуплекс, четырех проводный - полный дуплекс. И все это RS485.
     
  9. YaroslavN
    Регистрация:
    23.04.14
    Сообщения:
    53
    Благодарности:
    4

    YaroslavN

    Участник

    YaroslavN

    Участник

    Регистрация:
    23.04.14
    Сообщения:
    53
    Благодарности:
    4
    Адрес:
    Санкт-Петербург
    Ну тут вы не очень правы. RS-485 - это всё-таки полудуплекс
    http://www.rs-485.com/comspec.html
    http://www.softelectro.ru/rs485.html
    http://masters.donntu.org/2004/fema/kovalenko/library/art7.html
    Но не суть. В любом случае, даже если предположить, что в Tracer четыре вывода для полного дуплекса, то они бы не маркировались одинаково A и B, иначе как определить, какая пара для приёма, а какая для передачи?
     
  10. Weis
    Регистрация:
    14.06.10
    Сообщения:
    6.193
    Благодарности:
    5.155

    Weis

    Живу здесь

    Weis

    Живу здесь

    Регистрация:
    14.06.10
    Сообщения:
    6.193
    Благодарности:
    5.155
    Адрес:
    Санкт-Петербург
    1. Двухпроводный - да, четырехпроводный - нет. Вы нашли стандарт для двухпроводного RS485, конечно там говорится о полудуплексе.
    2. В Tracer никто четырехпроводный RS485 пихать не станет. Бессмысленно это. Там (и в подавляющем большинстве техники бытового уровня) используется двухпроводной. Так проще и дешевле.

    "Приблуда" на которую я давал ссылку выше, без проблем работает с поворотным кронштейном камеры видеонаблюдения на растоянии 60 метров (на бОльшую дальность не проверял). Линия без терминаторов, просто тупо соединил А и В.
     
  11. sany70
    Регистрация:
    25.07.14
    Сообщения:
    94
    Благодарности:
    35

    sany70

    Живу здесь

    sany70

    Живу здесь

    Регистрация:
    25.07.14
    Сообщения:
    94
    Благодарности:
    35
    Адрес:
    Кунгур
    Перенести дисплей МТ50 на 30м от Tracer и еще к компу подключить, не переключая, можно?
     
  12. VoronNew
    Регистрация:
    17.03.13
    Сообщения:
    11.012
    Благодарности:
    6.398

    VoronNew

    Живу здесь

    VoronNew

    Живу здесь

    Регистрация:
    17.03.13
    Сообщения:
    11.012
    Благодарности:
    6.398
    Адрес:
    Санкт-Петербург
    на сколько я понял да это возможно... у RS485 заявляется "4000 feet at 100 Kbps" и на одной шине может сидеть несколько устройств.
     
  13. YaroslavN
    Регистрация:
    23.04.14
    Сообщения:
    53
    Благодарности:
    4

    YaroslavN

    Участник

    YaroslavN

    Участник

    Регистрация:
    23.04.14
    Сообщения:
    53
    Благодарности:
    4
    Адрес:
    Санкт-Петербург
    А можете прислать ссылку на стандарт полнодуплексного четырёхпроводного RS485? Уже интересно из академических соображений.
    Так собственно в этом и был вопрос: почему две пары выведено?
     
  14. YaroslavN
    Регистрация:
    23.04.14
    Сообщения:
    53
    Благодарности:
    4

    YaroslavN

    Участник

    YaroslavN

    Участник

    Регистрация:
    23.04.14
    Сообщения:
    53
    Благодарности:
    4
    Адрес:
    Санкт-Петербург
    Тут есть одно НО:
    В Modbus есть понятие Master и Slave устройства. Мастер - тот, кто отправляет команды, Slave - тот кто исполняет и возвращает результат. В теории в одной шине должен быть один Master и много Slave.

    Контроллер заряда в данном случае выступает в качестве подчиненного Slave, а МТ50 в качестве Мастера.
    Ваш компьютер будет тоже Мастером, соответственно желательно их использовать не одновременно, поскольку при одновременном использовании могут возникать коллизии.
    Мне видятся два варианта:
    1. МТ50 наверняка с какой-то периодичностью отправляет запросы контроллеру, поэтому возможно его придётся отключать физически чтобы полноценно работать с компьютера.
    2. Второй вариант - использовать компьютер только для сбора информации, тогда он может просто собирать весь трафик в шине, а сами запросы будут отправляться МТ50.
    Всё зависит от задач которые Вы ставите для подключения компьютера.
     
  15. Weis
    Регистрация:
    14.06.10
    Сообщения:
    6.193
    Благодарности:
    5.155

    Weis

    Живу здесь

    Weis

    Живу здесь

    Регистрация:
    14.06.10
    Сообщения:
    6.193
    Благодарности:
    5.155
    Адрес:
    Санкт-Петербург
    Нет, не могу. Причина в том, что не существует стандарта как на "двухпроводный", так и на "четырехпроводный" RS485. Есть на RS485 без такого деления.
    Поэтому если ищем "стандарт двухпроводного RS485" то про четырех проводную реализацию информацию не находим.
    При четырехпроводном подключении одна пара проводов всегда используется на передачу, а вторая всегда на прием.
    Прочитать можно здесь:http://www.sigma-is.ru/articles/art_tz_3_2012.html
    и во вложенном файле.
    Я ответил?
     

    Вложения: