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

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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 26.12.2012, 02:47   #11
stD
Senior Member
 
Аватар для stD
 
Регистрация: 02.04.2012
Адрес: Питер
Сообщений: 1,125
Вес репутации: 1312
stD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant future
По умолчанию

Где-то я уже писал:
Ставим ser2net, вот это суём в автозагрузку:
ser2net -C "3001:raw:600:/dev/ttyUSB0:115200 NONE 1STOPBIT 8DATABITS -XONXOFF -LOCAL -RTSCTS"
Может кому-то придётся поправить вот это: /dev/ttyUSB0:115200, путь и скорость.

В ардуину заливаем это:

PHP код:
#include <MsTimer2.h>
#include <DallasTemperature.h>
DallasTemperature tempSensor;
float ds;
float voltage 0;
int kom 0;
int komm 0;
int mal 0;
int mall 0;
int volts 0;
int svetprix 0;
int svetvanna 0;
int svetkuxnia 0;
int svetxoll 0;
int svetkomnata 0;
int svetbalkon 0;

int ledPin 13;


 
  
void setup() 
 {
  
MsTimer2::set(300000flash); 
  
tempSensor.begin(9);
  
Serial.begin(115200);
  
pinMode (A0INPUT);
  
pinMode (A1INPUT);
  
pinMode (A2INPUT);
  
pinMode (A3INPUT);
  
pinMode (A4INPUT);
  
//  pinMode (A14, INPUT);
  //  pinMode (A15, INPUT);
  
ds = (tempSensor.getTemperature());
 }
   
void loop() 
{
 
mal analogRead(0); 
 
kom analogRead(2);
 
voltage 4.95 1023.0 analogRead(4);
 
volts voltage 100;
 
 
 if (
kom >= 345 && kom <= 756)
  {
   
komm map(kom3457561050);
  }
  
  
/////////////////////////////////////////////////////
if (mal >= 90 && mal <= 147)
{
   
mall map(mal90147 , -20, -11);
}

if (
mal >= 148 && mal <= 229)
{
   
mall map(mal148229 , -10, -1);
}

if (
mal >= 230 && mal <= 294)
{
   
mall map(mal230294 05);
}

if (
mal >= 295 && mal <= 353)
{
   
mall map(mal295353610);
}

else if (
mal >= 354 && mal <= 765)
{
   
mall map(mal3547651150);
}


 
/////////////////////////////////////////////////////
 
if (Serial.available() > 0)
 {
   
byte inByte Serial.read();
   switch (
inByte)
    {
      case 
'a':
      
digitalWrite(ledPinHIGH); 
      
svetvanna 1;
      
Serial.print(svetprix);
      
Serial.print(",");
      
Serial.print(svetvanna);
      
Serial.print(",");
      
Serial.print(svetkuxnia);
      
Serial.print(",");
      
Serial.print(svetxoll);
      
Serial.print(",");
      
Serial.print(svetkomnata);
      
Serial.print(",");
      
Serial.print(svetbalkon);
      
Serial.print(",");
      
Serial.print(komm);
      
Serial.print(",");
      
Serial.print(mall);
      
Serial.print(",");
      
Serial.println(ds);
      break;
      
      case 
'A':
      
digitalWrite(ledPinLOW);
      
svetvanna 0;
      
Serial.print(svetprix);
      
Serial.print(",");
      
Serial.print(svetvanna);
      
Serial.print(",");
      
Serial.print(svetkuxnia);
      
Serial.print(",");
      
Serial.print(svetxoll);
      
Serial.print(",");
      
Serial.print(svetkomnata);
      
Serial.print(",");
      
Serial.print(svetbalkon);
      
Serial.print(",");
      
Serial.print(komm);
      
Serial.print(",");
      
Serial.print(mall);
      
Serial.print(",");
      
Serial.println(ds);
      break;
      
      case 
't':
      
Serial.print(svetprix);
      
Serial.print(",");
      
Serial.print(svetvanna);
      
Serial.print(",");
      
Serial.print(svetkuxnia);
      
Serial.print(",");
      
Serial.print(svetxoll);
      
Serial.print(",");
      
Serial.print(svetkomnata);
      
Serial.print(",");
      
Serial.print(svetbalkon);
      
Serial.print(",");
      
Serial.print(komm);
      
Serial.print(",");
      
Serial.print(mall);
      
Serial.print(",");
      
Serial.println(ds);
     
      break;
    }
  }
}  

void flash() //обработка прерывания таймера
{
  
ds = (tempSensor.getTemperature());

Всё что касается MsTimer2.h и DallasTemperature.h и ds , можно удалить.

Далее распаковываем содержимое 1.rar в папку сервера. И всё

После подключения ардуины к роутеру надо подождать пару минут, пока там всё раздуплится.
Теперь если поклацать кнопки "Ванна вкл, Ванна отк", будет зажигаться диод на ардуине.

Инфа на странице обновляется каждые 10 сек.
Вложения
Тип файла: rar 1.rar (172.4 Кб, 412 просмотров)

Последний раз редактировалось stD; 26.12.2012 в 02:50.
stD вне форума   Ответить с цитированием
 


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

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

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

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


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


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