Суббота, 28.06.2025, 01:34
| RSS
Главная | Raspberry Pi. Общие вопросы. Часть 1 (тема закрыта) - Страница 25 - Форум
Защита, контроль, управление
Форма входа
[ Новые сообщения · Участники · Правила форума · Поиск · RSS · Чат

Наш канал в YouTube
]
Raspberry Pi. Общие вопросы. Часть 1 (тема закрыта)
ZooluДата: Суббота, 22.02.2014, 22:47 | Сообщение # 1
Группа: Пользователи
Сообщений: 490
Статус: Offline
Настоятельно прошу ознакомиться с уже предложенной документацией прежде чем задавать вопрос. Если информация, обсуждаемая на форуме несет в себе полезную смысловую нагрузку и будет полезна другим, то она будет закреплена в шапке (Просьба в этом мне помогать!)



ВСЕ Авторские разработки, касаемые Raspberry находятся ЗДЕСЬ! Обязательно к прочтению!!!

Варианты преобразователя интерфейсов. Еще тут и тут

Немного о политике безопасности- Рекомендовано к прочтению!

P.S. Давайте сделаем ВМЕСТЕ форум информативным и интересным!

ВНИМАНИЕ !!! В процессе разработки системы домашней автоматизации было создано несколько различных версий. Из-за этого у многих пользователей возникает путаница - программное обеспечение применяется от одних проектов, прошивки контроллеров от других. Поэтому, перед тем как задавать вопро, внимательно ознакомьтесь с этой информацией


Сообщение отредактировал Zoolu - Четверг, 28.04.2016, 11:09
 
vspishkinДата: Суббота, 14.02.2015, 19:45 | Сообщение # 241
Группа: Пользователи
Сообщений: 868
Статус: Offline
да мы все понимаем, если был бы хотя бы один исходник по образу и подобию можно было бы попробывать я с нуля не поняну
 
gorrec41Дата: Суббота, 14.02.2015, 19:47 | Сообщение # 242
Группа: Пользователи
Сообщений: 58
Статус: Offline
админ такой вопрос когда допустим контролеру нужно передать что нить он проверяет занята линия передачи или сразу лупит

Добавлено (14.02.2015, 19:47)
---------------------------------------------
я вспышкин я пики ваще не понимаю поэтому сижу вспоминаю бэйсик для авр

 
AdminДата: Суббота, 14.02.2015, 20:01 | Сообщение # 243
Admin
Группа: Администраторы
Сообщений: 4260
Статус: Offline
Цитата vspishkin ()
если был бы хотя бы один исходник по образу и подобию можно было бы попробывать я с нуля не поняну

Так в чем проблема - http://lock.3dn.ru/load....1-0-542

Цитата gorrec41 ()
когда допустим контролеру нужно передать что нить он проверяет занята линия передачи или сразу лупит

У нас ведь RS485, что подразумевает наличие в сети только одного "мастера". Другими словами контроллер (слейв) ничего не может передавать, пока не получит команду от мастера. В такой ситуации проверка линии не имеет смысла за счет сравнительно больших (2 секунды и более) тайм-слотов между запросами с Raspberry Pi - пока пойдет новый запрос, контроллер гарантированно ответит (ну или не ответит вообще smile ).

"Многомастеровый режим" для RS485 - это отдельная песня. Основная проблема в RS485 - это невозможность дуплексного обмена данными, т.к. это может привести к коллизиям. Есть несколько решений, например циклическая передача по сети маркера присвоения режима мастера каждому устройству. Но это все тоже не стандартизированные протоколы. Я когда-то уже думал над этим вопросом.
 


gorrec41Дата: Суббота, 14.02.2015, 20:52 | Сообщение # 244
Группа: Пользователи
Сообщений: 58
Статус: Offline
ну как сказать а допустим авария трубу в ванной прорвало а сервак и знать об этом не будет или у людей котлы с ним что нить не так

Добавлено (14.02.2015, 20:52)
---------------------------------------------
сколько я знаю 485 так там  допустим сработал датчик пожарной сигнал. то прибор slave сразу же передает мастеру

Сообщение отредактировал gorrec41 - Суббота, 14.02.2015, 20:51
 
AdminДата: Суббота, 14.02.2015, 21:05 | Сообщение # 245
Admin
Группа: Администраторы
Сообщений: 4260
Статус: Offline
Цитата gorrec41 ()
ну как сказать а допустим авария трубу в ванной прорвало а сервак и знать об этом не будет или у людей котлы с ним что нить не так

Как можно заметить, функций охраны в данной системе пока нет. Я считаю, что охранная система должна быть полностью автономной, а в систему автоматизации должны поступать только данные от нее.

Цитата gorrec41 ()
сколько я знаю 485 так там  допустим сработал датчик пожарной сигнал. то прибор slave сразу же передает мастеру

Неправда. Почитайте про модбас. Все ответы от слейва идут только по запросу мастера. Сам слейв на передачу выходить не может.
 
Timofey_mskДата: Суббота, 14.02.2015, 22:16 | Сообщение # 246
Группа: Пользователи
Сообщений: 14
Статус: Offline
Цитата Admin ()
Неправда. Почитайте про модбас. Все ответы от слейва идут только по запросу мастера. Сам слейв на передачу выходить не может.
Получается,что даже если тот же пожарный датчик или датчик протечки сработал,то мастер-raspberry pi не будет знать об этом пока сам не запросит состояние ? Т.е. чтобы хозяин квартиры оперативно получил уведомление об аварии в своем доме, raspberry pi должен опрашивать основные контроллеры с датчиками каждую секунду, не меньше - достаточно хлопотное занятие если таких контроллеров с датчиками будет много, с другой стороны возможно я недооцениваю быстродействие raspberry pi в данном случае...


Преград нет!
 
AdminДата: Суббота, 14.02.2015, 22:27 | Сообщение # 247
Admin
Группа: Администраторы
Сообщений: 4260
Статус: Offline
Цитата Timofey_msk ()
raspberry pi должен опрашивать основные контроллеры с датчиками каждую секунду

В стандартном Modbus ASCII или Modbus RTU опрос обычно идет значительно чаще. Поэтому и создается иллюзия, что "слейв сам выходит на связь" smile

Вот мои размышления на тему "многомастерового" режима RS485:

=================================================================

Алгоритм обмена между Raspberry Pi и контроллерами в системе домашней автоматизации теоретически может быть организован  по принципу «master-slave» с возможностью инициализации со стороны slave. Попробую объяснить это более подробно. Интерфейс RS485 в классическом виде является полудуплексным в отличие от RS232, где прием и передача данных может вестись одновременно (дуплексный режим). Как правило, при использовании RS485 всегда есть только одно главное устройство (master) и подчиненные устройства (slave). Мастер посылает адресный запрос подчиненному устройству, принимает от него ответ, затем опрашивается следующее устройство и т.д. Инициализатором обмена может быть только мастер, slave-устройство по своей инициативе выходить на связь не может.

Разумеется, что при таком построении алгоритма работы, должен вестись непрерывный опрос мастером (Raspberry Pi) всех подчиненных устройств (контроллеров). В результате этого по сети будет непрерывно транслироваться поток фактически одинаковой информации. Проблемы в этом большой нет, но все же я думаю применить немного иной алгоритм работы.

Он заключается в том, что Raspberry Pi опрашивает контроллеры относительно редко (с периодом приблизительно 5 секунд), но в случае события со стороны контроллера (замыкание/размыкание входа, получение команды на переключение выхода) контроллер может передавать данные без запроса со стороны мастера. В некоторой степени это чревато так называемыми «коллизиями», когда, например, одновременно происходит запрос со стороны Raspberry Pi и событие со стороны контроллера. Вероятность коллизий прямо пропорциональна количеству slave-устройств в сети и обратно пропорциональна периоду их опроса мастером. При опросе мастером с периодом 5 секунд и использовании только одного контроллера, вероятность таких проблем довольно небольшая. Но исключать их нельзя. Поэтому, здесь необходимо подумать насчет использования более сложного алгоритма

=================================================================
 
123ksnДата: Суббота, 14.02.2015, 23:49 | Сообщение # 248
Группа: Пользователи
Сообщений: 480
Статус: Offline
Я что-то пропустил? Будем управлять ядерным реактором? Важна каждая миллисекунда?  Где проблема?
 
gorrec41Дата: Воскресенье, 15.02.2015, 09:33 | Сообщение # 249
Группа: Пользователи
Сообщений: 58
Статус: Offline
как в пиках организовать я не знаю но в atmege можно организовать так :если случилось какое то событие  то то прижимаем пин передачи  на sleve допустим 200млсек предварительно проверив не идет ли передача от каких нить других контролеров , в это время малина видит что  ее пин приема в 1 более 100 млсек  переключается на прием, после паузы 200млсек slave ждет еще 10млсек и начинает передачу когда последний байт передан он дожидается ответа то малины что все ок все принято, и переходит в обработку своих событий . малина после приема данных переходит в обработку поступившего события.и согласно инструкци решает что делать.
 
murwizДата: Воскресенье, 15.02.2015, 12:01 | Сообщение # 250
Группа: Пользователи
Сообщений: 15
Статус: Offline
Хочу высказать свое мнение по поводу протокола (вернее интерфейса) RS485. Да действительно master должен постоянно опрашивать все устройства. Но таких устройств на шине не может быть больше 255. А в версии протокола автора 99. А реально их еще меньше. Так что время на опрос всех устройств совсем небольшое И не надо никаких дополнительных алгоритмов с коллизиями. А уж ежели кому-то хочется с несколькими мастерами и коллизиями то милости просим в интерфейс CAN. Там все это предусмотрено.
 
Поиск:



T2M © 2025
Сайт управляется системой uCoz