Скорость опроса 1-wire шины

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
Ответить
sigma
Сообщения: 12
Зарегистрирован: 16 янв 2017, 10:41

Скорость опроса 1-wire шины

Сообщение sigma » 30 янв 2017, 11:08

Допустим, есть 1-wire шина, на которой висит 10 ключей (DS2406) на каждом из них по 2 кнопки. Какая будет реальная скорость опроса этой шины? Я читал, что с термодатчиками DS1820 на опрос каждого датчика тратится секунда. А на опрос кнопки?

llams
Сообщения: 192
Зарегистрирован: 23 ноя 2015, 04:20

Re: Скорость опроса 1-wire шины

Сообщение llams » 30 янв 2017, 11:30

sigma писал(а):Я читал, что с термодатчиками DS1820 на опрос каждого датчика тратится секунда.
Секунда тратится на конвертацию температуры (измерение), вот тема с рассуждениями.

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

Re: Скорость опроса 1-wire шины

Сообщение Andrey_B » 30 янв 2017, 11:52

sigma, скорость передачи данных по шине 1-wire до 15,4Кбит/с (не в режиме overdrive).
Скорость опроса шины зависит от частоты опроса. Можно опрашивать раз в секунду, а можно 30 раз в секунду.
"Недостатком" 1-wire шины является то, что "слейвы" не могут сообщить о событии "мастеру". Только в ответ на его запрос.
Можно использовать "Conditional Search", чтобы не опрашивать всех "слейвов" по очереди. Однако не все компоненты поддерживают этот режим. DS2406 поддерживает.

sigma
Сообщения: 12
Зарегистрирован: 16 янв 2017, 10:41

Re: Скорость опроса 1-wire шины

Сообщение sigma » 30 янв 2017, 20:00

Если удастся настроить Conditional Search? то понятно, что я все выключатели успею опросить. Мне кажется. что более 2 выключателей в секунду в доме не нажимается. Данных передается мимнимум. А вот если не получится с conditional search... В принципе, у меня на одной шине будет 10-15 кнопок. Я для себя выбрал комфортное время отклика 0.5сек. Значит в секунду я должен опросить кнопку дважды. Итого, 20-30 запросов по шине в секунду. Есть шанс успеть? Считаем, что кнопка отдает свое состояние мгновенно.

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

Re: Скорость опроса 1-wire шины

Сообщение Andrey_B » 31 янв 2017, 11:56

А что вы вкладываете в понятие "успеть"?
Выключатель нажимается быстро. Иногда на это уходит порядка 10-15 мс. (при планируемом вами опросе раз в 500 мс).
Но у DS2406 есть такая штука как "latch", которая взводится, если состояние канала меняется. Теоретически не обязательно читать состояние PIO. Достаточно читать состояние latch, чтобы понять, было ли срабатывание, а потом сбрасывать этот бит. Опрос выключателей - не самая сильная сторона 1-wire шины.

sigma
Сообщения: 12
Зарегистрирован: 16 янв 2017, 10:41

Re: Скорость опроса 1-wire шины

Сообщение sigma » 02 фев 2017, 15:17

Я планирую на выключатели "кнопки, типа звонок". При этом отрабатываться будут такие события:
а) Случайное нажатие (меньше 500мс) - считается ложным и случайным
б) Нормальное нажатие (500-1000мс)
в) Длинное нажатие (>1000 мс) - срабатывание диммера
На шине будет 15-25 выключателей. Вот и не могу понять, смогу ли я такое реализовать на 1-wire шине. С latch такое получится только, если "прочитал-сбросил latch-прочитал" уложить в 500мс. Тогда я выловлю случайные нажатия.

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

Re: Скорость опроса 1-wire шины

Сообщение Andrey_B » 02 фев 2017, 16:21

sigma, а что это за "нормальное" нажатие, которое длится 500-1000 мс? Вспоминаются неполиткорректные анекдоты...
Может быть, вы ошиблись с единицей измерения?

sigma
Сообщения: 12
Зарегистрирован: 16 янв 2017, 10:41

Re: Скорость опроса 1-wire шины

Сообщение sigma » 02 фев 2017, 17:42

А что неправильного? Я взял выключатель, примерно такой, как собираюсь ставить, и попросил домочадцев нажимать как можно естественнее. Засекал ардуиной. Среднее время получилось 0.7 сек. Что есть 700 мс. Все, что короче, это "проходил мимо, зацепил".

k_w_m
Сообщения: 98
Зарегистрирован: 19 июл 2013, 13:41

Re: Скорость опроса 1-wire шины

Сообщение k_w_m » 02 фев 2017, 18:25

Вроде 0.7сек это 70мс или 700 мкс. Или я что-то путаю?

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

Re: Скорость опроса 1-wire шины

Сообщение Andrey_B » 02 фев 2017, 18:41

0,7 сек = 700 мс. Но нажимать кнопку 0,7 секунды по-моему как-то долго. Я кнопки нажимаю существенно быстрее. Контакт длится порядка 0,08-0,2 секунды.
Может быть, у sigma какой-то особенный выключатель?

Я понял. Вы собираетесь использовать кнопку типа "дверной звонок"? В буквальном смысле. Тогда понятно.
С обычными кнопочными выключателями время контакта значительно меньше.

sigma
Сообщения: 12
Зарегистрирован: 16 янв 2017, 10:41

Re: Скорость опроса 1-wire шины

Сообщение sigma » 02 фев 2017, 20:11

Я длаю освещение в доме. Соответственно выключатель большой. У него и ход большой. Вот и получается долгое нажатие. И да, эмулируя эти нажатия на макете маленькой кнопкой я постоянно нарываюсь на "короткое нажатие". Проблема в том, что в доме порядка 40 выключателей. И занимать 40 пинов ардиуны неохота. Плюс к этому, 40 кабелей до выключателей это тоже такой себе неслабый пучок в щиток. Вот и возникла идея посадить на 1-2 шины 1-wire.

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

Re: Скорость опроса 1-wire шины

Сообщение Andrey_B » 02 фев 2017, 20:34

sigma, если мастером сети 1-wire будет выступать не ПК с DS9490R, а микроконтроллер, то есть еще один вариант - использовать DS2401 и детектировать Presence pulse.
Это и дешевле и в некотором смысле проще.

Ответить