БОЛЬШОЙ умный дом - около 80 датчиков 18B20
-
- Сообщения: 8
- Зарегистрирован: 05 окт 2012, 13:21
БОЛЬШОЙ умный дом - около 80 датчиков 18B20
Вопрос от inspiritus (по почте)
Собрал цепь из 80 датчиков на витой паре с терминированием конца (150м) , все работает прекрасно.
Читаю в owfs PHP скриптом по cron, складываю в mysql, потом делаю что хочу
ОДНАКО. цикл чтения всех датчиков занимает соответственно около минуты...
Поработал с датчиками на ардуине и обнаружил, что можно дать общую команду на преобразование, а потом через секунду считать со всех датчиков показания, со скоростью, ограниченной скоростью шины и опроса НЕ ОЖИДАЯ преобразования каждого датчика....
Возможен ли подобный режим под owfs?
Ответ от Andrey (по почте)
Да, такой режим есть.
Называется simultaneous conversion
Вызывается записью "1" в structure/simultaneous/temperature (путь может быть другим в зависимости от версии owfs)
Подобные обсуждения лучше вести на нашем форуме ab-log.ru/forum
...в связи с пожеланием перенес информацию на форум
Собрал цепь из 80 датчиков на витой паре с терминированием конца (150м) , все работает прекрасно.
Читаю в owfs PHP скриптом по cron, складываю в mysql, потом делаю что хочу
ОДНАКО. цикл чтения всех датчиков занимает соответственно около минуты...
Поработал с датчиками на ардуине и обнаружил, что можно дать общую команду на преобразование, а потом через секунду считать со всех датчиков показания, со скоростью, ограниченной скоростью шины и опроса НЕ ОЖИДАЯ преобразования каждого датчика....
Возможен ли подобный режим под owfs?
Ответ от Andrey (по почте)
Да, такой режим есть.
Называется simultaneous conversion
Вызывается записью "1" в structure/simultaneous/temperature (путь может быть другим в зависимости от версии owfs)
Подобные обсуждения лучше вести на нашем форуме ab-log.ru/forum
...в связи с пожеланием перенес информацию на форум
-
- Сообщения: 86
- Зарегистрирован: 28 сен 2012, 23:14
- Откуда: МО, Подольск
- Контактная информация:
Re: БОЛЬШОЙ умный дом - около 80 датчиков 18B20
У себя сделал так
Пока работает.
Код: Выделить всё
$ow->set("/simultaneous/temperature",1);
-
- Сообщения: 8
- Зарегистрирован: 05 окт 2012, 13:21
Re: БОЛЬШОЙ умный дом - около 80 датчиков 18B20
$ow->set("/simultaneous/temperature",1); не работает
пробую писать туда вручную 1 (через мс) ноль результата...
скорость опроса остается прежней может быть читать надо например из /uncached/ ?
пробую писать туда вручную 1 (через мс) ноль результата...
скорость опроса остается прежней может быть читать надо например из /uncached/ ?
-
- Сообщения: 86
- Зарегистрирован: 28 сен 2012, 23:14
- Откуда: МО, Подольск
- Контактная информация:
Re: БОЛЬШОЙ умный дом - около 80 датчиков 18B20
Попробуйте дать время (usleep (мкс)) после simultaneous на измерение температуры в зависимости от разрешающей способности
9bit 93.75ms
10bit 187.5ms
11bit 375ms
12bit 750ms
а потом читать ту температуру, которая нужна, например temperature10.
Особой разницы с /uncached/ веткой я не увидел.
9bit 93.75ms
10bit 187.5ms
11bit 375ms
12bit 750ms
а потом читать ту температуру, которая нужна, например temperature10.
Особой разницы с /uncached/ веткой я не увидел.
-
- Сообщения: 8
- Зарегистрирован: 05 окт 2012, 13:21
Re: БОЛЬШОЙ умный дом - около 80 датчиков 18B20
нашел тут на форуме "козырь в рукаве - фича под названием "simultaneous temperature conversions"
как я понимаю этот флаг должен инициировать посылку "широковещательного" запроса на преобразование, которое может длиться хоть 10 секунд, зато потом можно считывать готовые показания с датчиков , без ожидания преобразования, тк уже все данные готовы...
к сожалению не нашел ничего по этому режиму работы на сайте разработчика owfs.
расскажите , кто пробовал этот режим поподробнее плз.
как я понимаю этот флаг должен инициировать посылку "широковещательного" запроса на преобразование, которое может длиться хоть 10 секунд, зато потом можно считывать готовые показания с датчиков , без ожидания преобразования, тк уже все данные готовы...
к сожалению не нашел ничего по этому режиму работы на сайте разработчика owfs.
расскажите , кто пробовал этот режим поподробнее плз.
Re: БОЛЬШОЙ умный дом - около 80 датчиков 18B20
впечатляет! может, есть схема этой сети, или хотя бы список назначения датчиков? очень любопытноinspiritus писал(а): Собрал цепь из 80 датчиков
Скрещиваю 1-wire и водяное отопление
-
- Сообщения: 86
- Зарегистрирован: 28 сен 2012, 23:14
- Откуда: МО, Подольск
- Контактная информация:
Re: БОЛЬШОЙ умный дом - около 80 датчиков 18B20
Провёл эсперимент: есть 5 датчикоd ds18b20.
1. читаю temperature9 всех датчиков - время считывания 0.01 сек. показания не меняются
2. даю преобразование simultaneous читаю temperature9 - время 0.2-0.5 сек показания меняются
3. читаю uncached/temperature9 всех датчиков - время считывания 1.2 сек. показания меняются
4. даю преобразование simultaneous читаю uncached/temperature9 - время 0.9 сек показания меняются
Таким образом видно что uncached ветка сама запускает преобразование и simultaneous практически не меняет время считывания температуры
1. читаю temperature9 всех датчиков - время считывания 0.01 сек. показания не меняются
2. даю преобразование simultaneous читаю temperature9 - время 0.2-0.5 сек показания меняются
3. читаю uncached/temperature9 всех датчиков - время считывания 1.2 сек. показания меняются
4. даю преобразование simultaneous читаю uncached/temperature9 - время 0.9 сек показания меняются
Таким образом видно что uncached ветка сама запускает преобразование и simultaneous практически не меняет время считывания температуры
-
- Сообщения: 8
- Зарегистрирован: 05 окт 2012, 13:21
Re: БОЛЬШОЙ умный дом - около 80 датчиков 18B20
ну да... в чем только козырь в рукаве ?
или что-то неправильно делается. simultaneous.temperature практически сразу сбрасывается в ноль
однако на ардуине крутится нижеприведенный скетч,
и на терминал Serial .println выдает : 723-1820, 2011-3106, 3297-4393, 4584-5681, 5871-6968, 7158-8254,
то есть на считывание 6 датчиков в резолюции 10 уходит порядка 1.1 сек
а схема простая, голубой свисток и от него витая пара (какчественная) одна пара из нее - земля и сигнал, вторая пара- земля и питание 5 в, на дальнем конце, в качаестве терминатора конденсатор 200 мкф, параллельно на нем керамика 2.2мкф и резистор 4 кОм от 5в. а стерегут они некое оборудование блоками по 3 штуки на единицу оборудования. все данные собирает скрипт на php и складает а мискл, откуда , через вЭб-мордочку все это наблюдается, перепривязывается, которая выдает команды на подстройку оборудования, и которая в перспективе будет управлять автоматикой подстройки вместо дежурного.
или что-то неправильно делается. simultaneous.temperature практически сразу сбрасывается в ноль
однако на ардуине крутится нижеприведенный скетч,
и на терминал Serial .println выдает : 723-1820, 2011-3106, 3297-4393, 4584-5681, 5871-6968, 7158-8254,
то есть на считывание 6 датчиков в резолюции 10 уходит порядка 1.1 сек
Код: Выделить всё
void loop() {
sensors.requestTemperatures();
Serial.print(millis());Serial.print("-");
delay(1000);
lcd.setCursor(0, 0);
printTemperature(Thermometer1);
lcd.setCursor(5, 0);
lcd.print(" ");
lcd.setCursor(6, 0);
printTemperature(Thermometer2);
lcd.setCursor(10, 0);
lcd.print(" ");
lcd.setCursor(11, 0);
printTemperature(Thermometer3);
lcd.setCursor(0, 1);
printTemperature(Thermometer4);
lcd.setCursor(5, 1);
lcd.print(" ");
lcd.setCursor(6, 1);
printTemperature(Thermometer5);
lcd.setCursor(10, 1);
lcd.print(" ");
lcd.setCursor(11, 1);
printTemperature(Thermometer6);
Serial.print(millis());Serial.print(", ");
Re: БОЛЬШОЙ умный дом - около 80 датчиков 18B20
Hi ALL, у меня simultaneous из OWFS работает только если на все 18B20 в цепи подано питание, на паразитном не работает. у всех так?
-
- Сообщения: 8
- Зарегистрирован: 05 окт 2012, 13:21
Re: БОЛЬШОЙ умный дом - около 80 датчиков 18B20
А какие, если не секрет , настройки для работы в sim режиме ... У меня на owfs так и не заработало в sim mode . Кстати этот режим в паразитном питании не работает...
Пока отошел от owfs в сторону ATmega 328 (поиграв с ардуиной) . Читаю датчики и скидываю в инет на сервер . Есть такое классное место ksduino.org называется. Там мжно создать параметры и в них скидывать свои данные. Также возможно и обратное - управление с сайта своим контроллером... Сейчас активно использую, очень удобно для систем УД
Пока отошел от owfs в сторону ATmega 328 (поиграв с ардуиной) . Читаю датчики и скидываю в инет на сервер . Есть такое классное место ksduino.org называется. Там мжно создать параметры и в них скидывать свои данные. Также возможно и обратное - управление с сайта своим контроллером... Сейчас активно использую, очень удобно для систем УД