Страница 7 из 7

Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ

Добавлено: Вс июл 15, 2018 6:18 pm
eGorka
serghei писал(а):
Вс июл 15, 2018 4:16 pm
Но новые вопросы возникают.
Значения value_on, value_off и фактическая влажность.

Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ

Добавлено: Пн июл 16, 2018 11:07 am
sarstab
ух как далеко вы ушли от темы :)

Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ

Добавлено: Пн июл 16, 2018 11:12 am
sarstab
к сожелению у меня так и не получилось заставить работать вкладку которую я создал.

Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ

Добавлено: Пн июл 16, 2018 11:23 am
sarstab
но зато получилось заставить работать встроенную вкладку пирс, мосфет плавно включается и выключается по датчику движения на время которое задается на самом датчике

Код: Выделить всё

/*
  Modul PIRs
  part of Arduino Mega Server project
*/

#ifdef PIRS_FEATURE

// pins

#define fadePin 5
#define pir1pin 12 // KUH

// states

int pir1state = LOW; int pir1= 0;


// init
void pirsInit() {
 
  pinMode(pir1pin, INPUT);
  pinMode(fadePin, OUTPUT);
 
  modulPirs = MODUL_ENABLE;
  started("PIR's");
}

void detect(char s[]) {
  #ifdef EVENTS_PIRS
    timeStamp();
    Serial.print("Detect motion ");
    Serial.println(s);
  #endif
}

void endMmotion(char s[]) {
  #ifdef EVENTS_PIRS
    timeStamp();
    Serial.print("End motion ");
    Serial.println(s);
  #endif
}

// works
void pirsWorks() {
 
  // pir1 (KUH)
  pir4 = digitalRead(pir1pin);
  if (pir1== HIGH) { 
    if (pir1state == LOW) {
      detect("KUH");
      for(int i=0; i<=150; i++)  //то плавно включаем свет
       {
       analogWrite(fadePin, i); 
       delay(100);   //каждые 10мс увелияение на 1
       } 
       pir1state = HIGH;
      }
      #ifdef MAJORDOMO_FEATURE
       sendRequestM("pirKUH", 1);
      #endif
     
    }
   else {
    if (pir1state == HIGH){
      endMmotion("KUH");
      for(int i=150; i>=0; i--)//плавно гасим его
       {
       analogWrite(fadePin, i);
       delay(100);
       } 
      pir1state = LOW;
      #ifdef MAJORDOMO_FEATURE
      sendRequestM("pirKUH", 0);
      #endif
      
    }
  }
} // pirsWorks()

#endif // PIRS_FEATURE
Может новичкам вроде меня поможет

Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ

Добавлено: Пн июл 16, 2018 1:03 pm
serghei
sarstab писал(а):
Пн июл 16, 2018 11:07 am
ух как далеко вы ушли от темы :)
Просто мы пытаемся найти правильное универсальное решение. Обычно это долго , зато очень красиво получается )).
но зато получилось заставить работать встроенную вкладку пирс, мосфет плавно включается и выключается по датчику движения на время которое задается на самом датчике
А вот про это можно поподробнее ? Что на каком пине сидит и как управляется?

Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ

Добавлено: Пн июл 16, 2018 1:58 pm
sarstab
я же писал выше :датчик движения сидит на 12 пине есп-12е, мосфет транзистор подключен к 5 пину,датчик температуры сидит на 13 пине,датчик протечки воды сидит на А0,световой диод сидит на 14 пине.

Вопрос был про это?

Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ

Добавлено: Пн июл 16, 2018 2:03 pm
sarstab
а вот и новая вкладка (Rain)-датчик протечки воды, сделанная как копия пирс вкладки

Код: Выделить всё

#ifdef Rain_FEATURE

int rainSensor = A0;
int rainLED = 14;
int dryLED = 4;
int sensorVal;
int sensortrigger = 250;

void RainInit() {
  pinMode(rainSensor, INPUT);
  pinMode(rainLED, OUTPUT);
  pinMode(dryLED, OUTPUT);
  digitalWrite(rainLED, LOW);
  digitalWrite(dryLED, LOW);
  //sensors.begin();
 
 modulRain = MODUL_ENABLE;
 started("Rain");
}
void detect1(char s[]) {
  #ifdef EVENTS_Rain
    timeStamp();
    Serial.print("Water Detected!");
    Serial.println(s);
  #endif
}

void endMmotion1(char s[]) {
  #ifdef EVENTS_Rain
    timeStamp();
    Serial.print("No Water Detected!");
    
    Serial.println(s);
  #endif
}

void RainWorks() {
  sensorVal = analogRead(rainSensor);
  Serial.print(sensorVal);
if(sensorVal < sensortrigger){
    
   
    digitalWrite(dryLED, LOW);
    digitalWrite(rainLED, HIGH);
    #ifdef MAJORDOMO_FEATURE
       sendRequestM("rainKUH", 1);
      #endif
   }
  else {
    
    digitalWrite(rainLED, LOW);
    digitalWrite(dryLED, HIGH);
    #ifdef MAJORDOMO_FEATURE
       sendRequestM("rainKUH", 0);
      #endif
   }
  delay(750);  
}

#endif // Rain_FEATURE
пока не проверил,но скетч удачно залился! Пин на котором сидит dryLED не использую ,из-за нехватки пинов(если подключаю к 0 или 2 пину, есп уходит на постоянную перезагрузку. Теперь осталось КАК ТО отправить состояние пина 14 в МЖД для оповещения Алисой и тогда первое устройство будет готово)

Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ

Добавлено: Вт июл 17, 2018 7:45 pm
sarstab
вот так да, не работает!Припаял я датчик, в сериал порту вижу что модуль подключается ,отсылается гет запрос что нету протечки (0) .Я лью воду на датчик ,в сериале так же отображается что нет протечки (0) ,хотя загорается светодиод на подстроечном резисторе т.е. (1),а указанный светодиод не горит. Я отпаял датчик, и вижу что гет запрос посылает(1).Что то странно как то