Делал так-Режим калибровки-отключаем все датчики-стираем память-подключаем первый-запись адреса-одключаем-подключаем второй-запись адреса и т.д,затем просто читаем адреса с памяти,там они всегда в том порядке в котором записали,можно создать соответствие датчик-имя,если подключаем новый датчик то его адрес можно добавить в хвост.Прочитать ID датчиков и занести в массив как раз очень просто, а вот отсортировать тот ещё гемор.
esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ
Модератор: Alex
-
- Сообщения: 791
- Зарегистрирован: Пт янв 22, 2016 10:08 am
- Благодарил (а): 6 раз
- Поблагодарили: 63 раза
Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ
Вот здесь попытка реализации конфига. Особенно пункт 3.1 Но кажется архив поломан . Честно - не разбирался.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
-
- Сообщения: 791
- Зарегистрирован: Пт янв 22, 2016 10:08 am
- Благодарил (а): 6 раз
- Поблагодарили: 63 раза
Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ
в ваших библиотеках должна быть функция поиска устройств на шине,видимо использовать ее могут не все.
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ
Так поиск есть и работает. Причем находит ВСЕ устройства 1-wire/ И счетчики DS2423 то же. Но всё это надо прописывать руками в скетч.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
-
- Сообщения: 791
- Зарегистрирован: Пт янв 22, 2016 10:08 am
- Благодарил (а): 6 раз
- Поблагодарили: 63 раза
Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ
Ну оказывается все уже есть,только вместо консоли надо выпихнуть адреса в массив.
Так все и находит,затем фильтруют по коду семейства,так собственно и сделано в оригинальном алгоритме.
Так все и находит,затем фильтруют по коду семейства,так собственно и сделано в оригинальном алгоритме.
-
- Сообщения: 66
- Зарегистрирован: Ср апр 26, 2017 10:21 pm
- Благодарил (а): 19 раз
- Поблагодарили: 1 раз
Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ
Так что парни подскажите по моей проблеме с пир датчиком?
-
- Сообщения: 182
- Зарегистрирован: Чт ноя 24, 2016 10:47 am
- Благодарил (а): 5 раз
- Поблагодарили: 25 раз
Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ
Если про это
И как мне заставить светится светодиод при срабатывании датчика?
Код: Выделить всё
int ledPin = 4; // светодиод
int inPin = 5; // пир
int val = 0; // переменная для хранения считанного значения
void setup(){
pinMode(ledPin, OUTPUT);
pinMode(inPin, INPUT);
}
void loop(){
val = digitalRead(inPin); // считываем значение со входа
digitalWrite(ledPin, val); // выводим на светодиод
}
-
- Сообщения: 66
- Зарегистрирован: Ср апр 26, 2017 10:21 pm
- Благодарил (а): 19 раз
- Поблагодарили: 1 раз
Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ
не совсем про это))у меня есть скетч но я не знаю как реализовать его в амс
Код: Выделить всё
#include <ESP8266WiFi.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_PIN 13 // номер пина для 1-wire линии
#define fadePin 5 //пин управления MOSFET транзистором
OneWire ds(ONE_WIRE_PIN); // создаем объект ds для работы с датчиком
DallasTemperature sensors(&ds); // передаем ссылку на ds в объект sensors, через который будем управлять датчиком
int pirPin = 12; //пин подключения управляющего сигнала PIR датчика
int light; //переменная для хранения состояния света (вкл/выкл)
int rainSensor = A0;
int rainLED = 14;
int dryLED = 4;
int sensorVal;
int sensortrigger = 250;
const char* ssid = "ASUS dom"; //Название сети
const char* password = "333444555"; //пароль
WiFiClient espClient; //инициализация WiFi клиента
void setup(){
Serial.begin(9600);
Serial.println("DS18B20");
WiFi.begin(ssid, password); //подключаемся к WiFi
pinMode(pirPin, INPUT); //настариваем 2 пин как вход для сигналов с датчика
pinMode(fadePin, OUTPUT);// 3 пин на выход, для управления транзисотором
pinMode(rainSensor, INPUT);
pinMode(rainLED, OUTPUT);
pinMode(dryLED, OUTPUT);
digitalWrite(rainLED, LOW);
digitalWrite(dryLED, LOW);
light = 0; //устанаваливаем переменную для первого включения света
sensors.begin();
}
void loop(){
if(digitalRead(pirPin) == HIGH ) //если сигнал с датчика высокого уровня(т.е. есть движение)
{
if(light == 0) //и если свет не был включен
{
for(int i=0; i<=150; i++) //то плавно включаем свет
{
analogWrite(fadePin, i);
delay(100); //каждые 10мс увелияение на 1
}
light = 1; //и передаем значение переменной, что свет включен
}
}
else //иначе
{
if(light == 1) //если свет включен
{
for(int i=150; i>=0; i--)//плавно гасим его
{
analogWrite(fadePin, i);
delay(100);
}
light = 0; //и передаем значение переменной, что свет выключен
}
}
int sensorVal = analogRead(rainSensor);
Serial.print(sensorVal);
if(sensorVal < sensortrigger){
Serial.println("Water Detected!");
digitalWrite(dryLED, LOW);
digitalWrite(rainLED, HIGH);
}
else {
Serial.println("No Water Detected!");
digitalWrite(rainLED, LOW);
digitalWrite(dryLED, HIGH);
}
delay(750);
Serial.print(" Requesting temperatures...");
sensors.requestTemperatures(); // запрос на получение данных
Serial.println("DONE");
Serial.print("Temperature for Device 1 is: ");
Serial.print(sensors.getTempCByIndex(0)); // получаем температуру и печатаем
}
-
- Сообщения: 66
- Зарегистрирован: Ср апр 26, 2017 10:21 pm
- Благодарил (а): 19 раз
- Поблагодарили: 1 раз
Re: esp8266 + AMS + MajorDoMo - ПЕРВЫЕ ШАГИ
в амс получается что датчик срабатывает(1) и сразу отсылает что движения нет(0)а вот что бы еще на мосфет посылал сигнал ни как не получается
А так скетч работает без амс но на алису не могу послать с него данные,Сергей сказал что в амс уже сделана отправка данных и там проще все это реализовать,да температура отсылается ,а вот с пир датчиком и датчиком протечки ну никак)).Если кто то делал такое,просьба подскажите
А так скетч работает без амс но на алису не могу послать с него данные,Сергей сказал что в амс уже сделана отправка данных и там проще все это реализовать,да температура отсылается ,а вот с пир датчиком и датчиком протечки ну никак)).Если кто то делал такое,просьба подскажите