Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > CyberWrt

Результаты опроса: Как Вам проще и удобней настроить привязку своих датчи
Указать долготу и широту в настройках модуля? 22 59.46%
Настроить привязку на сайте "Народный мониторинг"? 15 40.54%
Голосовавшие: 37. Вы ещё не голосовали в этом опросе

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.12.2014, 01:53   #1
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9821
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: CyberWrt модуль "Термометр"

Это проблема процессора и решить ее можно только при помощи костыля в любой версии. Вот есть готовый бинарный патч для OpenWRT Attitude Adjustment 12.09
В Barrier Breaker 14.07 будет такой же патч, скомпилированный из этих же исходников
Admin вне форума   Ответить с цитированием
Старый 11.12.2014, 02:22   #2
Crazy_Nick
Junior Member
 
Регистрация: 10.12.2014
Сообщений: 12
Вес репутации: 0
Crazy_Nick is an unknown quantity at this point
По умолчанию Re: CyberWrt модуль "Термометр"

Цитата:
Сообщение от Admin Посмотреть сообщение
есть готовый бинарный патч
я про него и писал выше.

Цитата:
Сообщение от Admin Посмотреть сообщение
В Barrier Breaker 14.07 будет такой же патч, скомпилированный из этих же исходников
неискушенному обывателю реально сделать это самостоятельно?

по поводу костыля - это понятно, но все же лучше, чем ребутить роутер по отвалу датчика.
Crazy_Nick вне форума   Ответить с цитированием
Старый 11.12.2014, 09:15   #3
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9821
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: CyberWrt модуль "Термометр"

Цитата:
по поводу костыля - это понятно, но все же лучше, чем ребутить роутер по отвалу датчика.
Лучше конечно. Никто и не спорит. Это был ответ на вопрос
Цитата:
кто-нибудь уже пробовал новую прошивку, может сказать с уверенностью, что проблема с юсб-устройствами решена?
Admin вне форума   Ответить с цитированием
Старый 01.01.2015, 19:26   #4
avgaz
Senior Member
 
Регистрация: 05.10.2014
Сообщений: 190
Вес репутации: 0
avgaz is an unknown quantity at this point
По умолчанию Re: CyberWrt модуль "Термометр"

а как можно прочитать данные с датчиков USB-UART с помощью php?
avgaz вне форума   Ответить с цитированием
Старый 01.01.2015, 20:00   #5
Crazy_Nick
Junior Member
 
Регистрация: 10.12.2014
Сообщений: 12
Вес репутации: 0
Crazy_Nick is an unknown quantity at this point
По умолчанию Re: CyberWrt модуль "Термометр"

Цитата:
Сообщение от avgaz Посмотреть сообщение
а как можно прочитать данные с датчиков USB-UART с помощью php?
есть несколько вариантов:
1. из скрипта на php запустить программу digitemp, которая опрашивает температурные датчики
2. если для чтения датчиков используется owfs, то текущая температура хранится в файле, из которого не составит проблем получить данные
3. писать, читать данные из com-порта и интерпретировать их. имхо, наиболее сложный вариант

лично у меня про расписанию каждые 5 минут запускается скрипт на баше, который запускает digitemp, получает данные и сохраняет их в файл. а из файла можно уже читать чем угодно.
Crazy_Nick вне форума   Ответить с цитированием
Старый 02.01.2015, 00:14   #6
avgaz
Senior Member
 
Регистрация: 05.10.2014
Сообщений: 190
Вес репутации: 0
avgaz is an unknown quantity at this point
По умолчанию Re: CyberWrt модуль "Термометр"

Цитата:
Сообщение от Crazy_Nick Посмотреть сообщение
есть несколько вариантов:
1. из скрипта на php запустить программу digitemp, которая опрашивает температурные датчики
2. если для чтения датчиков используется owfs, то текущая температура хранится в файле, из которого не составит проблем получить данные
3. писать, читать данные из com-порта и интерпретировать их. имхо, наиболее сложный вариант

лично у меня про расписанию каждые 5 минут запускается скрипт на баше, который запускает digitemp, получает данные и сохраняет их в файл. а из файла можно уже читать чем угодно.
Вот по первому пункту можно подробней или пример скрипта?
avgaz вне форума   Ответить с цитированием
Старый 02.01.2015, 15:04   #7
Crazy_Nick
Junior Member
 
Регистрация: 10.12.2014
Сообщений: 12
Вес репутации: 0
Crazy_Nick is an unknown quantity at this point
По умолчанию Re: CyberWrt модуль "Термометр"

например, код
PHP код:
$temperature=shell_exec('digitemp_DS9097 -t 0 -o %.2C -q'); 
получает в переменную значение температуры с датчика №0 с точностью до двух знаков после запятой.

возможно, не сработает получение данных. для нормальной работы надо проинициализировать датчики. тогда код будет следующим:
PHP код:
shell_exec('digitemp_DS9097 -i');
$temperature=shell_exec('digitemp_DS9097 -t 0 -o %.2C -q'); 

Последний раз редактировалось Crazy_Nick; 02.01.2015 в 15:15. Причина: добавил инициализацию
Crazy_Nick вне форума   Ответить с цитированием
Старый 03.01.2015, 00:40   #8
avgaz
Senior Member
 
Регистрация: 05.10.2014
Сообщений: 190
Вес репутации: 0
avgaz is an unknown quantity at this point
По умолчанию Re: CyberWrt модуль "Термометр"

Цитата:
Сообщение от Crazy_Nick Посмотреть сообщение
например, код
PHP код:
$temperature=shell_exec('digitemp_DS9097 -t 0 -o %.2C -q'); 
получает в переменную значение температуры с датчика №0 с точностью до двух знаков после запятой.

возможно, не сработает получение данных. для нормальной работы надо проинициализировать датчики. тогда код будет следующим:
PHP код:
shell_exec('digitemp_DS9097 -i');
$temperature=shell_exec('digitemp_DS9097 -t 0 -o %.2C -q'); 
Что то не срабатывает, через терминал digitemp_DS9097 -t 0 -o %.2C -q выводит температуру, а через php нет, может нужно что то поправит в настройках php что бы shell_exec заработала?
avgaz вне форума   Ответить с цитированием
Старый 03.01.2015, 00:48   #9
Crazy_Nick
Junior Member
 
Регистрация: 10.12.2014
Сообщений: 12
Вес репутации: 0
Crazy_Nick is an unknown quantity at this point
По умолчанию Re: CyberWrt модуль "Термометр"

Цитата:
Сообщение от avgaz Посмотреть сообщение
может нужно что то поправит в настройках php что бы shell_exec заработала?
я ничего не менял в конфигах php, и у меня работает shell_exec.
работу можно проверить, выполнив тестовый скрипт, например
PHP код:
echo (shell_exec('dmesg')) 
этот код должен вывести лог сообщений ядра.

если shell_exec работает, попробуйте перед получением температуры проинициализировать digitemp
PHP код:
shell_exec('digitemp_DS9097 -i'); 
$temperature=shell_exec('digitemp_DS9097 -t 0 -o %.2C -q'); 
Crazy_Nick вне форума   Ответить с цитированием
Старый 03.01.2015, 01:53   #10
avgaz
Senior Member
 
Регистрация: 05.10.2014
Сообщений: 190
Вес репутации: 0
avgaz is an unknown quantity at this point
По умолчанию Re: CyberWrt модуль "Термометр"

Цитата:
Сообщение от Crazy_Nick Посмотреть сообщение
я ничего не менял в конфигах php, и у меня работает shell_exec.
работу можно проверить, выполнив тестовый скрипт, например
PHP код:
echo (shell_exec('dmesg')) 
этот код должен вывести лог сообщений ядра.

если shell_exec работает, попробуйте перед получением температуры проинициализировать digitemp
PHP код:
shell_exec('digitemp_DS9097 -i'); 
$temperature=shell_exec('digitemp_DS9097 -t 0 -o %.2C -q'); 
Вот так только сработало
PHP код:
$temperatureshell_exec("digitemp_DS9097 -t 0 -o %.2C -q -s /dev/ttyUSB0"); 
Кстати а если подключено скажем 5 датчиков как быть для каждого запрос повторять меняя -t 0?
avgaz вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 2 (пользователей: 0 , гостей: 2)
 

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

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

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


Текущее время: 20:31. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика