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

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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 08.06.2015, 00:23   #1
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
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
По умолчанию Утилиты для автоматизации умного дома

Автоматизация "Умного дома" не заканчивается только на удаленном управлении выключателями света
Умный дом становится умным, только тогда, когда он берет на себя многие функции управления и управляет ими автоматически
Одну из таких функций может выполнять утилита "suncalc"
Эта утилита опробована мной на протяжении длительного времени и сегодня добавлена в репозиторий CyberWrt
Утилита вычисляет время восхода и заката солнца для Вашей местности
Для чего это нужно? У меня например при помощи этой утилиты опускаются рольставни. Она так же пригодится тем у кого электрические шторы или жалюзи
Можно так же с дополнительными датчиками автоматизировать включение освещения. Выключать/включать по восходу и закату уличное освещение. ночник или подсветку аквариума.
Если в помещении нет окон, то можно имитировать рассвет и закат солнца и т.д.

аргументы для запуска утилиты:
Цитата:
-o Longitude
-a Latitude
-d дата
-m месяц
-r выводит только время рассвета
-s выводит только время заката
Если запустить программу без аргументов, то утилита выдаст время рассвета и заката для текущей даты в городе Москве

пример запуска:
Цитата:
suncalc -m 6 -d 21 -o 37.62 -a 55.75 утилита вернет время рассвета и заката на 21 июня, для Москвы
Цитата:
suncalc -o 37.62 -a 55.75 -r утилита вернет только время рассвета для Москвы
Цитата:
suncalc -o 37.62 -a 55.75 утилита вернет время рассвета и заката на текущую дату для Москвы
Цитата:
suncalc утилита вернет время рассвета и заката на текущую дату для Москвы
P.S.
Утилита доступна только для CyberWrt
Admin вне форума   Ответить с цитированием
Старый 13.06.2015, 08:59   #2
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
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: Утилиты для автоматизации умного дома

Утилита serp, для чтения и записи в порт
В отличии от всех команд для чтения и записи, serp выполняется быстрей и по этой причине не теряет первые несколько байт данных. Это и стало причиной написание своей более универсальной команды

Аргументы
-p /dev/ttyPORT указываем с каким портом будем соединятся
-t 0 Таймаут, ждем ответа из порта х секунд, если 0, то без ожидания ответа
-s "строка отправляемая в порт" здесь можно писать все что Вы хотите отправить в порт. Если это текст или цифры, то можно писать без двойных кавычек. Если в запросе указываются знаки например: "!@#$%$^&*()?|\/><{}[]", то обязательно нужно отправлять в кавычках

этой утилитой можно заменить такие команды как например:
echo "123" > /dev/ttyPORT
тоже самое что и
serp -p /dev/ttyPORT -t 0 -s 123
или
cat /dev/ttyPORT
тоже самое что и
serp -p /dev/ttyPORT -t 65535 -s ""

Послать данные в порт и ждать ответ от него в течении 3сек.
serp -p /dev/ttyPORT -t 1 -s 123

Отправить запрос и полученный ответ перенаправить в фаил /tmp/answer.txt
serp -p /dev/ttyPORT -t 1 -s 123 > /tmp/answer.txt

Отправить запрос и полученный ответ перенаправить в другой порт /dev/ttyPORT
serp -p /dev/ttyPORT -t 2 -s 123 > /dev/ttyPORT

Для тестирования можно подключить ардуину и залить в нее следующий код
PHP код:
#define ledPin 13  
void setup()  
{   
  
Serial.begin(57600);   
  
pinMode(ledPinOUTPUT);       
}  

void loop()  
{  
  if (
Serial.available() > 0)  
  {  
    
byte inByte Serial.read();  
    switch (
inByte)  
    {  
        case 
'1':  
        
digitalWrite(ledPinHIGH);  
        
Serial.println("ON :)");  
        break;  
        
        case 
'0':  
        
digitalWrite(ledPinLOW); 
        
Serial.println("OFF :(");  
        break;  
    }          
  }  

И выполнить в консоли команду
serp -p /dev/ttyPORT -t 1 -s 1 или
serp -p /dev/ttyPORT -t 1 -s 0

Соответственно не забудьте указать порт к которому подключена ардуина

P.S.
Утилита доступна только для CyberWrt
Admin вне форума   Ответить с цитированием
Ответ


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

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

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

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


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


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