Интерфейс RS485 и библиотеки для работы с ним.

SVD
Offline
Зарегистрирован: 05.04.2018

Доброго времени суток. Уже месяц не могу разобраться с интерфейсом RS485, не хватает знаний и времени во всем нормально разобраться.

Собственно вопрос, может кто-нибудь, кто дружит с RS485 и библиотекой SoftEasyTransfer, дать урок и разложить все по полочкам? Готов заплатить за урок.

 

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Если коротко - обычный последовательный порт.
Который всегда сидит на приёме.
Если вы желаете что-то передать
то сначала смотрите что никто не передаёт,
включаете пин передачи ,
передаёте что хотели
и снова уходите на приём.

sadman41
Offline
Зарегистрирован: 19.10.2016

Если врагом потенциальных друзей владеете, то вот даже с картинками:

https://www.gammon.com.au/forum/?id=11428

SVD
Offline
Зарегистрирован: 05.04.2018

Вот так примерно мне на все вопросы и отвечали на форумах… Говорю же, не хватает времени с моим уровнем программирования разобраться во всем. Нужен человек, который все объяснит. Помогите!)

 

Ворота
Ворота аватар
Offline
Зарегистрирован: 10.01.2016

SVD пишет:

Говорю же, не хватает времени

Так у всех, акромя тебя, времени - хоть попой кушай. Можно и тебе что-то пообъяснять.

sadman41
Offline
Зарегистрирован: 19.10.2016

Так преподавательский талант на блошиных рынках за рупь не продают.

Как вы себе этот процесс представляете: берет trembo ваши руки в свои и начинает колотить по кнопкам - так надо писать, так не надо?

triac
triac аватар
Offline
Зарегистрирован: 03.05.2018

trembo пишет:
Если коротко - обычный последовательный порт. Который всегда сидит на приёме. Если вы желаете что-то передать то сначала смотрите что никто не передаёт, включаете пин передачи , передаёте что хотели и снова уходите на приём.

Если использовать приемопередатчики CAN, то так можно делать. А с приемопередатчиками RS485 так делать нельзя. Поэтому для RS485 так (это называется произвольный доступ к сети) никто и не делает. 

Для RS485 делают совсем иначе.

Или мастер-слуга, когда в сети RS485 есть один единственный мастер, который решает кому когда можно передавать. Все остальные - слуги. Мастер послал адресный запрос - один слуга ответил, в это время никто другой не имеет права включать передатчик. 

Или передача токена. В сущности мало чем отличается от мастер- слуга. Можно сказать, что мастер дает слуге ненадолго "порулить" интерфейсом. На короткое время слуга, получивший токен, имеет право опрашивать других слуг.

nikolaki
nikolaki аватар
Offline
Зарегистрирован: 14.02.2013

triac пишет:

 

Или мастер-слуга, ............... Все остальные - слуги. Мастер послал адресный запрос - один слуга ответил, в это время никто другой не имеет права включать передатчик. 

Или передача токена. В сущности мало чем отличается от мастер- слуга. Можно сказать, что мастер дает слуге ненадолго "порулить" интерфейсом. На короткое время слуга, получивший токен, имеет право опрашивать других слуг.

Ну все , ТС ушел в штопор от такого труфальдино из бергамо и тайн бургундского двора:)

SVD
Offline
Зарегистрирован: 05.04.2018

sadman41 пишет:

Так преподавательский талант на блошиных рынках за рупь не продают.

Как вы себе этот процесс представляете: берет trembo ваши руки в свои и начинает колотить по кнопкам - так надо писать, так не надо?

Ну я не считаю себя не просветной темнотой) Обучение я обычно представляю так, один задает вопрос другой отвечает. Почему мне нужен человек, который уделит мне немного времени? Потому что мне нужны просто более конкретные ответы чем обычно дают на форумах. Вот и все.

В общем если есть люди готовые помочь, напишите пожалуй в личку в ВК https://vk.com/id85126897

 

nik182
Offline
Зарегистрирован: 04.05.2015

А что конкретно непонятно? Можно конкретные вопросы? Библиотека не затотена на 485. Надо самому дописать выдачу сигнала направление передачи перед передачей и снятие после. Что ещё может быть не понятно? Может быть что снимать нужно с задержкой? Если вы впихнули в сериал много данных и сразу сняли сигнал направление передачи, то в сети 485 всё пропадёт, т.к. сериал буферирует вывод и сам по себе через прерывание отправляет данные. Нужна задержка,которая зависит от количества данных и скорости передачи. 

b707
Offline
Зарегистрирован: 26.05.2017

SVD пишет:

Ну я не считаю себя не просветной темнотой) Обучение я обычно представляю так, один задает вопрос другой отвечает. Почему мне нужен человек, который уделит мне немного времени? Потому что мне нужны просто более конкретные ответы чем обычно дают на форумах. Вот и все.

 

так задавайте их здесь, кто вам мешает?

SVD
Offline
Зарегистрирован: 05.04.2018

b707 пишет:

SVD пишет:

Ну я не считаю себя не просветной темнотой) Обучение я обычно представляю так, один задает вопрос другой отвечает. Почему мне нужен человек, который уделит мне немного времени? Потому что мне нужны просто более конкретные ответы чем обычно дают на форумах. Вот и все.

 

так задавайте их здесь, кто вам мешает?

Мне нужно собрать вот такую цепочку. Arduino №4 собирает данные с №1,2,3 группирует в один массив и передает на №5.

На данный момент получилось с помощью библиотеки SoftEasyTransfer передать данные с Arduino №1 на №4, принять данные с №2 и 3, сгруппировать и передать дальше не получается, не могу разобраться как…

Ах да. кроме RS485, другие способы передачи не нужны! 

sadman41
Offline
Зарегистрирован: 19.10.2016

С Шудаяга тащите температуру что ли? ))

ВН
Offline
Зарегистрирован: 25.02.2016

SVD пишет:

На данный момент получилось с помощью библиотеки SoftEasyTransfer передать данные с Arduino №1 на №4, принять данные с №2 и 3, сгруппировать и передать дальше не получается, не могу разобраться как… 

поробуте описать просто словами алгоритм, как 1-му получить что-то от 2-го