Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
17.10.2008, 08:24
|
|
Частый гость
Регистрация: 22.03.2007
Сообщений: 21
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Мне кажетс, что проще сделать микроконтроллерную сеть с главным контроллером, который всегда будет ведущим. Вот он то и будет забирать и отдавать пакеты подчиненным контроллерам. Загрузка сети увеличивается, но уходят проблемы с коллизиями и пррочими неприятностями. Я такую сеть сделал, правда тема в разработке. А MODBUS описывает всего лишь форматы и правила формирования кадров. Как я понимаю регистры это понятия, которые ты сам определяешь. Это не физические устройства, а виртуальные. peshlyaev.nm.ru
|
|
|
|
17.10.2008, 08:54
|
|
Вид на жительство
Регистрация: 05.01.2007
Адрес: Украина, г. Макеевка
Сообщений: 408
Сказал спасибо: 229
Сказали Спасибо 62 раз(а) в 52 сообщении(ях)
|
В журнале Радиоаматор за прошлый месяц есть описание с примером на С под AVR, можно взять почитать вполне доступно написано и ссылки на ресурсы есть.
|
|
|
|
17.10.2008, 08:57
|
|
Прописка
Регистрация: 05.02.2008
Сообщений: 251
Сказал спасибо: 34
Сказали Спасибо 7 раз(а) в 6 сообщении(ях)
|
Для начала нужно для себя четко уяснить правила работы этого протокола, а потом уже по крупицам эти правила реализовывать. Начать хотя бы с алгоритма передачи данных с одного устройства на другое, я думаю постепенно общяя схема реализации станет ясна.
Толку читать чьи то исходники если не понятно что это за прототокол и основные его концепции.
|
|
|
|
17.10.2008, 09:12
|
|
Частый гость
Регистрация: 22.03.2007
Сообщений: 21
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Можно и чужие исходники читать, если программист имеет желание быть понятым другими. Я с алгоритмом передачи данных мучался пол года, пока не пришла умная мысль, Слава тебе Господи. И теперь на этом базисе строю остальные разработки. Недавно запустили информационное табло из 25-ти цифровых индикаторов. Та же микроконтроллерная сетка.
|
|
|
|
17.10.2008, 10:59
|
|
Прописка
Регистрация: 07.07.2005
Сообщений: 111
Сказал спасибо: 2
Сказали Спасибо 12 раз(а) в 7 сообщении(ях)
|
Modbus
Modbus это самый легкий протокол обмена данными.
RS232 or RS485 это среда передачи данных.
Я так понимаю что со средой у Вас проблем нет.
Что касается протокола существуют два варианта его реализации: Один мастер и много слейвов(основное применение) и много мастеров и много слейвов(расширенный вариант).
в первом варианте мастер посылает запрос на чтение или запись данных(регистров) на определенный слейв.
в цифровом виде посылка может выглядить так:
05(адресс слейва) 03(номер функции:чтение или запись регистров) 1212(номер регистра) 34(значение регистра).
Длинна посылки меняется в зависимости от номера используемой функции. Описание всех функций легко найти в интернете на русском языке. Если не найдете могу прислать на мыло.
Мной реализован также и второй вариант работы с устойствами Modbus, однако Вам пока это не надо. Во втором варианте реализуется методика плавающего меркера....это не так просто как кажется)). Удачи в Ваших начинаниях.
|
|
|
|
17.10.2008, 12:12
|
|
Частый гость
Регистрация: 22.03.2007
Сообщений: 21
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Хочу отметить, что в моих проектах не было енобходимости в обмене инфой с устройствами работающими по этому протоколу. Все мои контроллеры спроектированы под нужды определенной технологической среды. Просто принципы этого протокола (начало и конец посылки кадра, структура кадра) легли в основу обмена. Конечно, многомастерный протокол очень специфичный и сложный, но должен применяться в тех сдучаях, когда это необходимо. Большинство задач по сбору и отображению информации укладываются в одномастерную схему. Я работаю на пульте диспетчера шахты и такая структура полностью оправдывает себя. Причем протокол обмена сделан полностью по прерываниям и выполняется в фоне. У меня есть задачи у которых main module просто rjmp сам на себя. Удачи!
|
|
|
|
17.10.2008, 12:28
|
|
Прописка
Регистрация: 07.07.2005
Сообщений: 111
Сказал спасибо: 2
Сказали Спасибо 12 раз(а) в 7 сообщении(ях)
|
Задача со многими мастерами стоит тогда когда два компьютера и одинаковым ПО собираются читать данные с одних и тех же слейвов....вот тут и вопрос начинается.....задача стояла чтоб компы были полность идентичны...чтоб образ одного можно было развернуть на другого
|
|
|
|
17.10.2008, 12:52
|
|
Частый гость
Регистрация: 22.03.2007
Сообщений: 21
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Ну, в таких вопросах я еще маленький Если рассматривать применение многомастерного протокола в технологических применениях, то такие решения необходимы когда среда одна, а независимых подсистем несколько. Например в автомобиле. Кнопка управления подголовником и исполнительный механизм, здесь же управление стеклоподъемниками, и прочей переферией. Наверное CAN для этого и придумали, чтобы самолетами управлять. Я собственно хотел сказать, что найти готовую программу практически невозможно. Пока ручки не начнут паять, пальчики бегать по клавишам, а головка думать - ничего на выйдет. Бывают конечно случаи как у меня с DS18B20. Нашел библиотеку, написанную грамотным программистом, переписал ее под свой компиллер и... все заработало. Но все таки две смены просидел. И Datasheet изучил и протокол. Сотый раз убеждаешся в том, что пока не выстрадаешь устройство не родишь. Закон однако! Удачи.
|
|
|
|
17.10.2008, 13:09
|
|
Прописка
Регистрация: 07.07.2005
Сообщений: 111
Сказал спасибо: 2
Сказали Спасибо 12 раз(а) в 7 сообщении(ях)
|
Согласен с Вами....мануал это первоисходник...сначала его надо читать....нам еще в институте сказали что бывает промахи в системе...это когда модбас например пытаешься натянуть на многомастерную систему.....это в корне неверно....есть готовые решения типа профибаса или CAN....а модбас или 1-wire это для одномастеров, не говоря о том что 1-wire это вообще не промышленный протокол(он затыкается от малейшего чиха)...а вот в автомобиле работает прекрасно(длина линии небольшая)....Удачи
|
|
|
|
17.10.2008, 22:32
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.12.2007
Адрес: Екатеринбург
Сообщений: 2,726
Сказал спасибо: 2,428
Сказали Спасибо 893 раз(а) в 580 сообщении(ях)
|
Протокол modbus. Вопросы по интерфейсу
Посмотрите описание протокола.
Где взял-не помню.
Прикрепленный файл: 4038078.rar
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 16:00.
|
|