Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 05.12.2008, 08:47  
picavr
Почётный гражданин KAZUS.RU
 
Аватар для picavr
 
Регистрация: 07.10.2007
Адрес: Луганск
Сообщений: 1,816
Сказал спасибо: 13
Сказали Спасибо 399 раз(а) в 214 сообщении(ях)
picavr на пути к лучшему
По умолчанию

Сообщение от user_ushastyj
Открытый коллектор - из опыта - не самый удачный вариант. В индуктивности линиии - после передачи - скажем так - накапливается энергия, желающая выйти. Дать нужно времени для этого...
Конечно приёмопередатчики лучше.. но дороже )))

А токовая петля? Зашунтить приёмный светодиод резистором малого R... и ток больше в линию...
Реклама:
picavr вне форума  
Непрочитано 05.12.2008, 10:02  
Samodelkin2001
Частый гость
 
Регистрация: 17.12.2006
Сообщений: 26
Сказал спасибо: 1
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
Samodelkin2001 на пути к лучшему
По умолчанию

Да все очень просто. У самого таких систем несколько работает. Значится так:
У контроллеров (я использую Атмел, но у ПИКов тоже такой режим вроде есть) есть режим мультипроцессорной связи. Мастер передает адресный байт в мультипроцессорном режиме, при этом у всех остальных контроллеров, подключенных по RS-485, отрабатывает прерывание по приему адреса по УАРТ. Контроллеры сравнивают свои адреса с принятым, и если он не совпал, то выходят из прерывания и занимаются дальше своим делом. До прихода следующего адреса реагировать на поток данных по шине они не будут вообще никак.
Если же адрес совпал, то контроллер дальше принимает 1 байт в котором указана длина сообщения для него, потом само сообщение указанной длины, и после неё один (или два) байта контрольной суммы, лучше CRC. Если все принято нормально и CRC совпала, то он ставит 485 порт на передачу и отдает свои данные в таком-же формате: свой адрес (для контроля, и без мультипроцессорного режима), длину. данные, CRC. И продолжает дальше заниматься своим делом.
Со стороны Мастера это выглядит так:
Мастер передает адресный байт в мультипроц. режиме, остальные в обычном, после этого ждет ответа от подчиненного контроллера некоторое время. Если ответа нет, значит адресуемый контроллер принял данные с ошибкой, и тогда их отправку надо повторить. Если после 3-4 повторов ответа всеравно нет, значит связи с контроллером нет, что делать решайте сами.
Если же в ответ пришли ответные данные, и проверка CRC совпала, значит можно переходить к сеансу связи со следующим контроллером. Если данные пришли не все или с ошибкой - повторить запрос.
В общем что-то вроде этого.
У меня работает несколько таких систем с кол-вом подчиненных устройств от 5 до 97!!! Работает на УРА!!!
Кроме того мультипроцессорный режим позволяет всем незадействованным контроллерам не отвлекаться на проверку шины данных пока Мастер общается с одним из Подчиненных.
Вот так!
Просто и со вкусом.


http://samodelkin2001.ru.gg
Samodelkin2001 вне форума  
Непрочитано 05.12.2008, 10:03  
MisterDi
Почётный гражданин KAZUS.RU
 
Аватар для MisterDi
 
Регистрация: 13.02.2008
Адрес: Днепр. Украина
Сообщений: 3,294
Сказал спасибо: 442
Сказали Спасибо 1,048 раз(а) в 706 сообщении(ях)
MisterDi на пути к лучшему
По умолчанию

Сообщение от picavr
А токовая петля? Зашунтить приёмный светодиод резистором малого R... и ток больше в линию...
приёмный светодиод Это как?? 8O
MisterDi вне форума  
Непрочитано 05.12.2008, 10:31  
BigMazzi
Прописка
 
Регистрация: 09.06.2007
Сообщений: 96
Сказал спасибо: 1
Сказали Спасибо 1 раз в 1 сообщении
BigMazzi на пути к лучшему
По умолчанию

Хотел написать о 485, да Самоделкин опередил. Хочу добавить только то, что не следует стремиться к слишком простым решениям, иногда это дороже обходится в дальнейшем. Используйте готовые стандартные решения. Например для данного случая хорошо подойдут 485 интерфейс и Modbus протокол. И всё у вас будет в порядке.
BigMazzi вне форума  
Непрочитано 05.12.2008, 10:51  
Samodelkin2001
Частый гость
 
Регистрация: 17.12.2006
Сообщений: 26
Сказал спасибо: 1
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
Samodelkin2001 на пути к лучшему
По умолчанию

Сообщение от BigMazzi
Хотел написать о 485, да Самоделкин опередил. Хочу добавить только то, что не следует стремиться к слишком простым решениям, иногда это дороже обходится в дальнейшем. Используйте готовые стандартные решения. Например для данного случая хорошо подойдут 485 интерфейс и Modbus протокол. И всё у вас будет в порядке.
То что я описал, это и есть немного измененный МодБас. Только МодБас несколько громоздкий для небольших контроллеров. Тут-же контроллеры работают в очень щадящем режиме, и им не надо контролировать поток данных. Да и у контроллеров мультипроц. режим специально для этого и сделан. В МодБасе такого режима нет. Описанные мной сети работают в металлуггических цехах, и очень хорошо себя зарекомендовали.
Только одно НО: 485 интерфейсы я использую с гальванической развязкой контроллеров от линии. Тогда эта сеть работает при любых помехах и антисанитарии!!!
Samodelkin2001 вне форума  
Непрочитано 05.12.2008, 11:23  
BigMazzi
Прописка
 
Регистрация: 09.06.2007
Сообщений: 96
Сказал спасибо: 1
Сказали Спасибо 1 раз в 1 сообщении
BigMazzi на пути к лучшему
По умолчанию

Сообщение от Samodelkin2001
Сообщение от BigMazzi
Хотел написать о 485, да Самоделкин опередил. Хочу добавить только то, что не следует стремиться к слишком простым решениям, иногда это дороже обходится в дальнейшем. Используйте готовые стандартные решения. Например для данного случая хорошо подойдут 485 интерфейс и Modbus протокол. И всё у вас будет в порядке.
То что я описал, это и есть немного измененный МодБас. Только МодБас несколько громоздкий для небольших контроллеров. Тут-же контроллеры работают в очень щадящем режиме, и им не надо контролировать поток данных. Да и у контроллеров мультипроц. режим специально для этого и сделан. В МодБасе такого режима нет. Описанные мной сети работают в металлуггических цехах, и очень хорошо себя зарекомендовали.
Только одно НО: 485 интерфейсы я использую с гальванической развязкой контроллеров от линии. Тогда эта сеть работает при любых помехах и антисанитарии!!!
Согласен со всем, кроме "немного изменённого МодБаса".
В таком случае он совсем не Модбас.
BigMazzi вне форума  
Непрочитано 05.12.2008, 13:22  
maxNTF
Вид на жительство
 
Регистрация: 18.06.2006
Сообщений: 434
Сказал спасибо: 0
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
maxNTF на пути к лучшему
По умолчанию

Зачем привязываться к сложным протоколом Modbus, чем плох стандартный (старт дата стоп) на одной из стандартной скорости? Все что мне нужно:
Ведущий отправляет по очереди адрес каждого ведомого + 1 команду, и ждет от каждого ответа типа все в норме, или код ошибки.
Вот и все.
maxNTF вне форума  
Непрочитано 05.12.2008, 14:02  
Samodelkin2001
Частый гость
 
Регистрация: 17.12.2006
Сообщений: 26
Сказал спасибо: 1
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
Samodelkin2001 на пути к лучшему
По умолчанию

Сообщение от maxNTF
Зачем привязываться к сложным протоколом Modbus, чем плох стандартный (старт дата стоп) на одной из стандартной скорости? Все что мне нужно:
Ведущий отправляет по очереди адрес каждого ведомого + 1 команду, и ждет от каждого ответа типа все в норме, или код ошибки.
Вот и все.
А если отправлен код, что все нормально, а в пути на него наложилась помеха, и мастер принял его как код ошибки? Или наоборот? Или вообще не принял?
Контрольная сумма всеравно нужна.
И длину передаваемых данных тоже надо передавать после адреса, если длины конечно различные у разных устройств!
Так что то на то и выходит!!!
Samodelkin2001 вне форума  
Непрочитано 05.12.2008, 15:51  
maxNTF
Вид на жительство
 
Регистрация: 18.06.2006
Сообщений: 434
Сказал спасибо: 0
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
maxNTF на пути к лучшему
По умолчанию

Сообщение от Samodelkin2001
А если отправлен код, что все нормально, а в пути на него наложилась помеха, и мастер принял его как код ошибки? Или наоборот? Или вообще не принял?
Контрольная сумма всеравно нужна.
И длину передаваемых данных тоже надо передавать после адреса, если длины конечно различные у разных устройств!
Так что то на то и выходит!!!
Не-е-е, я согласен, что защита в любом случае должна присудствовать. Просто зачем использовать протокол Modbus? Я с ним не знаком к примеру. Мне больше нравится:
- отправляем адресс и 3-4 копии команды, и выбераем по совпадению. Так же отвечаем в трех-четырех экземплярах.
Чем плохо?
maxNTF вне форума  
Непрочитано 05.12.2008, 16:56  
BigMazzi
Прописка
 
Регистрация: 09.06.2007
Сообщений: 96
Сказал спасибо: 1
Сказали Спасибо 1 раз в 1 сообщении
BigMazzi на пути к лучшему
По умолчанию

Сообщение от maxNTF
Сообщение от Samodelkin2001
А если отправлен код, что все нормально, а в пути на него наложилась помеха, и мастер принял его как код ошибки? Или наоборот? Или вообще не принял?
Контрольная сумма всеравно нужна.
И длину передаваемых данных тоже надо передавать после адреса, если длины конечно различные у разных устройств!
Так что то на то и выходит!!!
Не-е-е, я согласен, что защита в любом случае должна присудствовать. Просто зачем использовать протокол Modbus? Я с ним не знаком к примеру. Мне больше нравится:
- отправляем адресс и 3-4 копии команды, и выбераем по совпадению. Так же отвечаем в трех-четырех экземплярах.
Чем плохо?
Тем, что не стандартно. К тому же МодБас не сложен.
BigMazzi вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Протокол передачи данных CAN VladG Автоматика и аппаратура связи 5 09.09.2009 03:04
Существуют ли микросхемы модулированной передачи данных? IgorAVR2 Микроконтроллеры, АЦП, память и т.д 7 08.09.2009 11:17
интерфейсы передачи данных у ППК? maxNTF Цифровые сигнальные процессоры 25 09.06.2009 13:09
Модуль передачи данных GM9/18-485/232 73 Микроконтроллеры, АЦП, память и т.д 1 20.12.2005 17:28


Часовой пояс GMT +4, время: 18:19.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot