rs-485 как физ. среда для своих нужд

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
Dmitry K
Сообщения: 226
Зарегистрирован: 10 фев 2012, 20:09

rs-485 как физ. среда для своих нужд

Сообщение Dmitry K » 04 апр 2012, 17:23

уважаемые профессионалы, подскажите пожалуйста, если я реализую физический rs-485 смогу ли я гонять по нему свои данные как по простому уарт соединению , а именно например строки моего примитивного протокола, или придется развертывать полноценный modbus? суть вопроса заключается создания дешевой по себестоимости даже можно сказать примитивной сети мастер-слэйв (клиент-сервер), и по принципу общая шина вешать на нее свои исполнительные устройства и датчики сбора информации, небольшой пример мастер онже пк или иное устройство с uart(com) портом, рассылает запросы отправляя конкретные данные например get_temp_001 (получить температуру датчика 001) все устройства сети слушают и анализируют сеть(uart), и тот который узнает что запрос адресован именно ему отвечает 001_temp=24,50 что-то вроде того, и снова все переключаются в режим прослушки, в общем вроде все, хотел бы выслушать субъективное мнение, а также все вытекающие за и против, спасибо :)

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: rs-485 как физ. среда для своих нужд

Сообщение Andrey_B » 04 апр 2012, 17:55

RS-485 - это протокол, а точнее стандарт физического уровня, примерно как RS-232 или 802.11 Wi-Fi
ModBus - протокол сетевого, транспортного, прикладного уровней, примерно как TCP/IP + HTTP

Поверх физического RS-485 можно придумать любые свои протоколы. RS-485 не оговаривает адресацию.
Только разработать качественный протокол - не так то и просто.

vovaf
Сообщения: 10
Зарегистрирован: 29 сен 2011, 23:22
Откуда: Украина, Луганск

Re: rs-485 как физ. среда для своих нужд

Сообщение vovaf » 04 апр 2012, 19:03

Полноценный MODBUS разворачивать не обязательно, вполне достаточно для Ваших задач реализовать 3 команды:
03 - чтение регистров
06 - Запись в один регистр
16 - Запись в несколько регистров.
Когда то делал устройство с набором этих команд. Нормально работает через стандартные программы MODBUS.
Если надо, могу выслать на почту код, отвечающий за MODBUS, а то не нашел как сделать вложение на форуме.

Dmitry K
Сообщения: 226
Зарегистрирован: 10 фев 2012, 20:09

Re: rs-485 как физ. среда для своих нужд

Сообщение Dmitry K » 04 апр 2012, 19:19

andrey_b тоесть такая схема имеет право на жизнь? и еще подскажите пожалуйста на физическом уравне и в моем варианте применяемый конвертеров среды какова может быть длина общей шины (на вскидку)? А также все ли верно с подключением?
rs-485 схема.GIF
блок схема rs-485
rs-485 схема.GIF (8.3 КБ) 20985 просмотров
что касаемо протакола, хочу взять за основу тот что вы разработали для своего ethernet устройства (уж очень понравился принцип реализации)
Последний раз редактировалось Dmitry K 04 апр 2012, 19:25, всего редактировалось 1 раз.

Dmitry K
Сообщения: 226
Зарегистрирован: 10 фев 2012, 20:09

Re: rs-485 как физ. среда для своих нужд

Сообщение Dmitry K » 04 апр 2012, 19:23

vovaf писал(а):Полноценный MODBUS разворачивать не обязательно, вполне достаточно для Ваших задач реализовать 3 команды:
03 - чтение регистров
06 - Запись в один регистр
16 - Запись в несколько регистров.
Когда то делал устройство с набором этих команд. Нормально работает через стандартные программы MODBUS.
Если надо, могу выслать на почту код, отвечающий за MODBUS, а то не нашел как сделать вложение на форуме.
конечно, с удовольствием взлянул бы, вложения: нажимаем на кнопку ответить и внизу после кнопок (сохранить черновик, предпросмотр, отправить) есть две ввклаки (настройки и добавить вложения)
p/s если не затруднит набросайте ссылок по которым изучали протакол, был бы признателен за статьи где есть обьяснения на пальцах :geek:

ExReader
Сообщения: 233
Зарегистрирован: 16 дек 2011, 10:05
Откуда: Уездный город Н-ск

Re: rs-485 как физ. среда для своих нужд

Сообщение ExReader » 05 апр 2012, 05:45

Dmitry K писал(а):andrey_b тоесть такая схема имеет право на жизнь? и еще подскажите пожалуйста на физическом уравне и в моем варианте применяемый конвертеров среды какова может быть длина общей шины (на вскидку)? А также все ли верно с подключением? .......
что касаемо протакола, хочу взять за основу тот что вы разработали для своего ethernet устройства (уж очень понравился принцип реализации)
Ну, по правилам, схема подключения блоков к 485 шине должна быть немного другая...
rs-485 схема.GIF
rs-485 схема.GIF (8.59 КБ) 20952 просмотра
Иначе будет несогласованность линии.
Длина (по стандарту) до 1000 метров. Хотя сильно зависит от используемых приёмо-передатчиков (МС).
И, опять-же, какой режим работы, дуплекс/полудуплекс?!...
Судя по схеме предполагается полудуплекс...

PervakovDanil
Сообщения: 103
Зарегистрирован: 16 фев 2012, 18:23
Откуда: АР Крым, г.Бахчисарай

Re: rs-485 как физ. среда для своих нужд

Сообщение PervakovDanil » 05 апр 2012, 10:31

Dmitry K, хотелось бы увидеть на схему подключения MAX485 к PL2303.

И второй вопрос: будет ли гальваническая развязка?
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"

vovaf
Сообщения: 10
Зарегистрирован: 29 сен 2011, 23:22
Откуда: Украина, Луганск

Re: rs-485 как физ. среда для своих нужд

Сообщение vovaf » 05 апр 2012, 11:26

В дополнение к своему посту выкладываю код, примененый в своем устройстве, ссылки на примеры. Также краткую документацию по протоколу на русском. Есть несколько файлов документации по спецификации протокола на английском. Они размером больше, чем допускаются для вложений на этом форуме.
Вложения
Modbus_Rus.zip
Документация по протоколу
(47.97 КБ) 787 скачиваний
Ссылки.zip
Ссылки на сайты по Modbus
(422 байт) 663 скачивания
modbus.zip
Мой код
(7.84 КБ) 722 скачивания

Dmitry K
Сообщения: 226
Зарегистрирован: 10 фев 2012, 20:09

Re: rs-485 как физ. среда для своих нужд

Сообщение Dmitry K » 05 апр 2012, 11:45

ExReader, я пока новечек в rs-485, и любые поправки и исправления для меня весьма важны, огромное вам спасибо, по поводу режима (дуплекс/полудуплекс) пока не разобрался, но насколько понял, то это реализуется в желе или нет? если у вас есть мысли по этому поводу или определенные познания, прошу поделиться :) фактически принцип работы будет таков: мастер (usb-rs-485) адаптер будет в определенные промежутки времени слать запросы на которые ему будут отвечать датчики и исполнительные устройства, следовательно режим полудуплекный? верно?

PervakovDanil гальваническая развязка я думаю будет одназначно т.к. хочется зделать все качественно и надежно, по поводу подключению max к pl3203 еще не думал :) но думаю особых проблем не составит, если у вас есть опыт дайте знать :)

vovaf огромное спасибо вам за материал, и поддержку, весьма весьма благодарен :)

vovaf
Сообщения: 10
Зарегистрирован: 29 сен 2011, 23:22
Откуда: Украина, Луганск

Re: rs-485 как физ. среда для своих нужд

Сообщение vovaf » 05 апр 2012, 11:54

По вопросу адаптера USB - RS485, видел решение на сайте
http://electrotormentor.blogspot.com/20 ... apter.html

Dmitry K
Сообщения: 226
Зарегистрирован: 10 фев 2012, 20:09

Re: rs-485 как физ. среда для своих нужд

Сообщение Dmitry K » 05 апр 2012, 12:50

vovaf писал(а):
Dmitry K писал(а): к сожалению данная страница на сайте отсутсвует ...
На том сайте найдите архив за апрель 2011 года
хорошо сейчас поищу, а пока нашел вот такое решение:
Изображение
на ft232 + sp 481 - по данной схеме сразу возник небольшой вопрос с подклчением sp481: что за выводы:
cbus2 - 2 нога sp481, cbus3 - 3 нога sp481

PervakovDanil
Сообщения: 103
Зарегистрирован: 16 фев 2012, 18:23
Откуда: АР Крым, г.Бахчисарай

Re: rs-485 как физ. среда для своих нужд

Сообщение PervakovDanil » 05 апр 2012, 13:03

в схеме на FT232RL:
выводы MAX485 (аналога) 2 и 3 соединяют вместе соединяют с выводом CBUS2, который в обычном режиме работает как TXDEN.

А про схему на PL2303 я специально спросил т.к. у этой микросхемы нет вывода TXDEN.

В схеме на CP2102 возможно есть опечатка т.к. там выводы 2 и 3 MAX485 подключены к питанию т.е. MAX работает только на выход.
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"

Dmitry K
Сообщения: 226
Зарегистрирован: 10 фев 2012, 20:09

Re: rs-485 как физ. среда для своих нужд

Сообщение Dmitry K » 05 апр 2012, 13:27

PervakovDanil писал(а):в схеме на FT232RL:
выводы MAX485 (аналога) 2 и 3 соединяют вместе соединяют с выводом CBUS2, который в обычном режиме работает как TXDEN.

А про схему на PL2303 я специально спросил т.к. у этой микросхемы нет вывода TXDEN.

В схеме на CP2102 возможно есть опечатка т.к. там выводы 2 и 3 MAX485 подключены к питанию т.е. MAX работает только на выход.
огромное спасибо за поправку, на блок схеме нарисовал pl2303 как вариант, если неоходима ft232 значит возьмем за основу ее, если я все верно понял то выводов RX TX GND не достаточно для полноценной работы адаптера
поясните пожалуйста вчем неоходимость подключения TXDEN ? какую такую важную роль он играет в работе адаптера?
прилагаю еще одну схему на вашу весьма важную критику :) :
Изображение
видимо данный адаптер предназначен для какихто конкретных целей следовательно epprom 93-c66asn выбрасываем
Последний раз редактировалось Dmitry K 05 апр 2012, 13:30, всего редактировалось 1 раз.

ExReader
Сообщения: 233
Зарегистрирован: 16 дек 2011, 10:05
Откуда: Уездный город Н-ск

Re: rs-485 как физ. среда для своих нужд

Сообщение ExReader » 05 апр 2012, 13:30

Dmitry K писал(а):ExReader, я пока новечек в rs-485, и любые поправки и исправления для меня весьма важны, огромное вам спасибо, по поводу режима (дуплекс/полудуплекс) пока не разобрался, но насколько понял, то это реализуется в желе или нет? если у вас есть мысли по этому поводу или определенные познания, прошу поделиться :) фактически принцип работы будет таков: мастер (usb-rs-485) адаптер будет в определенные промежутки времени слать запросы на которые ему будут отвечать датчики и исполнительные устройства, следовательно режим полудуплекный? верно?
Да, всё верно. Это как у радиостанции, нажал тангету сказал фразу, отпустил, послушал ответ. Это симплекс или полудуплекс (тут есть/возможны различные толкования). А когда говорят и слушают одновременно, это дуплекс. :)
Могу предположить, что хватит и полудуплексного режима работы сети. Это проще и дешевле.
Dmitry K писал(а):PervakovDanil гальваническая развязка я думаю будет одназначно т.к. хочется зделать все качественно и надежно, по поводу подключению max к pl3203 еще не думал :) но думаю особых проблем не составит, если у вас есть опыт дайте знать :)
Могу предложить (ну, в качестве примера) посмотреть в сторону микросхем а-ля MAX1480 интегральное решение сразу с гальванической развязкой и оччччень хорошим передатчиком... :) проверено.

vovaf
Сообщения: 10
Зарегистрирован: 29 сен 2011, 23:22
Откуда: Украина, Луганск

Re: rs-485 как физ. среда для своих нужд

Сообщение vovaf » 05 апр 2012, 13:50

Сигналом TXDEN управляется микросхема 485 с приема на передачу во время посылки пакета. В последней схеме микросхема EEPROM памяти предназначена для индентификации адаптера в системе к которой он подключен через USB. Если он будет один, тогда не нужна, а если несколько - то надо ставить.

Dmitry K
Сообщения: 226
Зарегистрирован: 10 фев 2012, 20:09

Re: rs-485 как физ. среда для своих нужд

Сообщение Dmitry K » 05 апр 2012, 13:53

ExReader писал(а):
Dmitry K писал(а):ExReader, я пока новечек в rs-485, и любые поправки и исправления для меня весьма важны, огромное вам спасибо, по поводу режима (дуплекс/полудуплекс) пока не разобрался, но насколько понял, то это реализуется в желе или нет? если у вас есть мысли по этому поводу или определенные познания, прошу поделиться :) фактически принцип работы будет таков: мастер (usb-rs-485) адаптер будет в определенные промежутки времени слать запросы на которые ему будут отвечать датчики и исполнительные устройства, следовательно режим полудуплекный? верно?
Да, всё верно. Это как у радиостанции, нажал тангету сказал фразу, отпустил, послушал ответ. Это симплекс или полудуплекс (тут есть/возможны различные толкования). А когда говорят и слушают одновременно, это дуплекс. :)
Могу предположить, что хватит и полудуплексного режима работы сети. Это проще и дешевле.
Dmitry K писал(а):PervakovDanil гальваническая развязка я думаю будет одназначно т.к. хочется зделать все качественно и надежно, по поводу подключению max к pl3203 еще не думал :) но думаю особых проблем не составит, если у вас есть опыт дайте знать :)
Могу предложить (ну, в качестве примера) посмотреть в сторону микросхем а-ля MAX1480 интегральное решение сразу с гальванической развязкой и оччччень хорошим передатчиком... :) проверено.
спасибо за рекомендацию, вы можете дать небольшую характеристику для max1480 какую длинну шины выдерижит максимум и ощутимое будет затухание если при разрыве шины при подключении слэйва провода будут скручиваться и облуживаться припоем только потом будут прикручиваться к клемникам?
Последний раз редактировалось Dmitry K 05 апр 2012, 13:54, всего редактировалось 1 раз.

Dmitry K
Сообщения: 226
Зарегистрирован: 10 фев 2012, 20:09

Re: rs-485 как физ. среда для своих нужд

Сообщение Dmitry K » 05 апр 2012, 13:56

vovaf писал(а):Сигналом TXDEN управляется микросхема 485 с приема на передачу во время посылки пакета. В последней схеме микросхема EEPROM памяти предназначена для индентификации адаптера в системе к которой он подключен через USB. Если он будет один, тогда не нужна, а если несколько - то надо ставить.
спасибо буду иметь ввиду, а вообще данная схема прегодна для использования?

Dmitry K
Сообщения: 226
Зарегистрирован: 10 фев 2012, 20:09

Re: rs-485 как физ. среда для своих нужд

Сообщение Dmitry K » 05 апр 2012, 14:04

vovaf писал(а):Сигналом TXDEN управляется микросхема 485 с приема на передачу во время посылки пакета. В последней схеме микросхема EEPROM памяти предназначена для индентификации адаптера в системе к которой он подключен через USB. Если он будет один, тогда не нужна, а если несколько - то надо ставить.
работой txden нужно както управлять програмно? или ft232 сама дергает ее когда нужно? поидее мой протокол будет до безобразия приметивен, (MASTER запрос- SLAVE ответ(SLAVE запрос подверждения приема ответа- MASTER ответ на подверждение

ExReader
Сообщения: 233
Зарегистрирован: 16 дек 2011, 10:05
Откуда: Уездный город Н-ск

Re: rs-485 как физ. среда для своих нужд

Сообщение ExReader » 05 апр 2012, 14:05

Dmitry K писал(а):спасибо за рекомендацию, вы можете дать небольшую характеристику для max1480 какую длинну шины выдерижит максимум и ощутимое будет затухание если при разрыве шины при подключении слэйва провода бубут скручиваться и облуживаться припоем только потом будут прикручиваться к клемникам?
Доков на МАХ1480 в сети есть много. Из практики могу сказать, на 300 метров работает как зверюга...
Однажды вышел такой конфуз, закоротилась линия данных на землю... Дык вот, у маленького мах485 (это который в so8) сгорел передатчик, пока он "вызывал" клиентов "на связь", а мах1480 работала пока мы не нашли причину "неответа", не разомкнули линию... Шину данных (и особенно землю) конечно лучше пропаивать. "Ответвления" в идеале минимизировать по максимуму, хотя imho пару-тройка сантимов вряд ли почувствуется.

PervakovDanil
Сообщения: 103
Зарегистрирован: 16 фев 2012, 18:23
Откуда: АР Крым, г.Бахчисарай

Re: rs-485 как физ. среда для своих нужд

Сообщение PervakovDanil » 05 апр 2012, 14:29

Dmitry K писал(а): ft232 сама дергает ее когда нужно
совершенно верно.
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"

Ответить