Модуль RS485 (CR-1267832)

Тема в разделе "Проводная и беспроводная связь", создана пользователем yves, 29 июн 2017.

  1. yves

    yves Нуб

    Подскажите новичку, как мне понять что он подключился к железу (raspberry pi 3) и как с него считать информацию?
    Спасибо!!! raspberry-pi-erweiterungs-platine-rb-rs485.jpg
     
  2. Igor68

    Igor68 Гуру

    Что-то не нашел его описания этого преобразователя интерфейса. Но насколько понимаю там есть MAX485 или подобная. В процессе работы необходимо "переключать" режим приёма и передачи. Для этого от Raspberry PI потребуется через порт ввода-вывода использовать сигнал управления.
    Для получения более подходящего ответа предоставьте хоть ссылку на описание этого модуля.
     
  3. yves

    yves Нуб

    Только одна ссылка: http://www.produktinfo.conrad.com/d...-KURZANL_RASPBERRY_RS485_FUER_RASPBERRY_P.pdf
     
  4. warman

    warman Гик

    в схеме стоит автоматический переход на передачу при появлении высокого уровня на пине ТХ.
    Так что работайте с ним, как с обычным UART, только желательно самому отслеживать, отправляете вы данные или ждете ответа в шине.
     
  5. yves

    yves Нуб

    вопрос в том что бы понять на какой шине он сидит... tty
     
  6. Igor68

    Igor68 Гуру

    А что будет при передаче? Как я понимаю... либо передаваемые байты должны быть 0xFF... ну или передатчик включен какое-то время после исчезновения единицы на TX. Спецификация Modbus требует молчания 3,5 символа после завершения посылки устройством. Есть устройства (мне попадались) которые определяют незанятость линии полным отсутствием уровней (разности) на линии. Если есть осциллограф то можете спокойно определить применив любую програму передачи... иначе надо иметь устройство работающее по RS485. Никакие перемычки RX-TX как для RS232 не подойдут потому как шина RS485 симплексная (в единицу времени на шине активен только один передатчик, все остальне приёмники).
     
  7. Igor68

    Igor68 Гуру

  8. Igor68

    Igor68 Гуру

  9. ANV

    ANV Гуру

    Все правильно, /dev/ttyAMA0, но в него будет валиться консоль RPi (все сообщения при загрузке и прочее), но это можно отключить
    http://elinux.org/RPi_Serial_Connection
     
  10. yves

    yves Нуб

    в консоль ничего не валится... подскажите куда копать?!
     
  11. yves

    yves Нуб

  12. parovoZZ

    parovoZZ Гуру

    Так по разводке посмотри. У малинки вроде 2 уарта.
     
  13. parovoZZ

    parovoZZ Гуру

    А что подсказать?
     
  14. yves

    yves Нуб

    Запитал датчик, подключил его к положенным клеммам карты с rs485 - делаю опрос данных с порта ttyAMA0 - тишина, ничего не валится...
     
  15. parovoZZ

    parovoZZ Гуру

    А должно? Это модбас слейв устройство. А такие устройства связь не инициализируют.
    1. Должны совпадать скорости и прочие атрибуты связи.
    2. К нему надо обращаться в соответствии со спецификацией модбас.
     
  16. yves

    yves Нуб

    Подскажите, как развернуть modbus на малинке? При помощи данной приблуды на GPIO и USB rs485.
    Действительно, я что то затупил, опрос задается mqtt
     
  17. parovoZZ

    parovoZZ Гуру

    Никогда не разворачивал. Но начал бы с эмуляторов. Qmodbus, как пример.
     
  18. otis

    otis Гик

    Как устроена связь на rs485.
    Минимальная сеть это мастер и слейв. Эти два устройства работает в сети. Адрес мастера 1 у слейва 2 . Скорость одинакова. Теперь самое не интересное. Слейв не чего не передает он только слушает. И как только мастер спросит и тот ответит. После этого мастер сможет что то высветить на экране монитора. И как до следуещего опроса слейва.
    Так что если у вас что то не работет. 1)выбери кто слейв и кто мастер. 2) скажи мастеру какой регистор ему спрашивать у слейва.3) скажи слейву что бы от отправлял информацию от температуре на такой то регистр.
    4)самое неинтересное. В сети rs485 есть всего три типа данных.
    1)Bool(буль) это самое простое может быть 0 или 1.
    2)Int(интерджер ) это может бы 1,2,3,4,6, 89, 65512. Ну ты понял.
    3)Float(флоат) это може быть
    3,14; 5,871; 99,6. Тоже понятно.
    И на десерт тип данных должен быть одиноковый для мастера и для слейва.
    Вот примерно так работает сеть на rs485
     
  19. znamen

    znamen Guest

    Схема адаптера,ссылку на которую даёт автор, будет работать некорректно,а возможно не будет работать
    вообще. Выходы А и В микросхемы должны быть подтянуть к шине питания и земле соответственно,а между
    ними сопротивление согласования. А на адаптера этого нет.
    Мои рекомендации автору темы.
    1. Внимательно посмотреть классические варианты схемотехники RS485 и схемотехнические поправки внести
    в существующий адаптер.
    2. Отложить временно в сторону расбери. Подключить адаптер через переходник com-usb к компьютеру.
    И любой терминальной программой выдавать команды на свои датчики и получать ответы от них.
    3. И только поняв весь этот механизм, подключать расбери.
     
  20. otis

    otis Гик

    Резисторы нужны если длина линии связи очень большая. Так что если длина 2-3метра то резисторы можно не ставить. Но это для промышленных устройств. Я не смотрел схемотехнику модуля по ссылке. Возможно внимательно почитать дата шет