По поводу дискуссии - баловство с запуском дистрибутива АМС на всех платформах для нас закончилось с результатом " ЭТО РАБОТАЕТ" . Теперь на первое место встает вопрос - " АМС-ом надо управлять реальными объектами". И тут тема датчиков выползает на первый план. Из всего арсенала есть Далласы ( проблемные) , серия DHT ( вообще игрушки , но работают ) , аналоговые LM35 и подобные , ну и серия BME 180-280 с шиной I2C.
Что выбрать ? Если нужна сеть на 20 температур , 9 датчиков влажности и всё это разбросано по всему дому ( до последней точки 20 метров) ?
Аналоговых входов у 32-ой 16 штук , но тогда влажность не измерить . I2C шина работает на короткие расстояния.
Отсюда вырисовывается и план действий - надо ставить шинные формирователи и преобразователи интерфейсов.
Хотя это всё к Мега Серверу отношения не имеет - это общая проблема Ардуино.
Арена
Модератор: Alex
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза
Re: Арена
Во первых, хочу заметить, что пока на «Арене» вы, serghei, сражаетесь в одиночестве, больше желающих нет. Мне тоже не импонирует идея с кем-то «сражаться», я бы предпочёл сотрудничество.
https://hi-lab.ru/arduino-mega-server/a ... mart-dacha
есть реальный пример решения всех этих проблем — температура собирается сетью проводных датчиков DS18B20, а там, где проблемно провести провода — данные собираются сетью беспроводных nRF24 AMS датчиков, работающих на АМС беспроводном протоколе с гарантией доставки пакетов.
И эта система прекрасно работает уже много месяцев без каких-либо проблем. В общем, я думаю, что проблема, как всегда, не в плохом оборудовании, а в плохих «танцорах».
Слава богу.баловство с запуском дистрибутива АМС на всех платформах для нас закончилось с результатом " ЭТО РАБОТАЕТ"
С каких пор и с какого перепугу они стали проблемными?Из всего арсенала есть Далласы ( проблемные)
Вот здесьЧто выбрать ? Если нужна сеть на 20 температур , 9 датчиков влажности и всё это разбросано по всему дому ( до последней точки 20 метров) ?
https://hi-lab.ru/arduino-mega-server/a ... mart-dacha
есть реальный пример решения всех этих проблем — температура собирается сетью проводных датчиков DS18B20, а там, где проблемно провести провода — данные собираются сетью беспроводных nRF24 AMS датчиков, работающих на АМС беспроводном протоколе с гарантией доставки пакетов.
И эта система прекрасно работает уже много месяцев без каких-либо проблем. В общем, я думаю, что проблема, как всегда, не в плохом оборудовании, а в плохих «танцорах».
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Арена
Я пришел на этот форум выяснять отношения с кодом АМС и безумным роботом форума. " Проблемный" датчик отвалился за четыре месяца только ДВА РАЗА ! И это не мои слова. Доказательства возможны благодаря Ledmax и Alexsis_76 и его гениальной странице - без преувеличений. Прямые линии графиков - это глюк библиотеки , когда не работал сервер.
С точки зрения дилетанта , проблемы возникают когда бездумно пытаюсь перенести код с библиотекой с одной платформы на другую без учета специфики. Так было с ESP32 и NRF24. И только благодаря помощи eGorka всё заработало.
Сеть на всех серверах и радио сенсорах то же работает. Не так как у Вас , но в меру моих "знаний".
И я за сотрудничество. Но большинство моих вопросов уходят в спам , благодаря роботу. Снимите последний бан - очень хочется узнать - как же все таки отправить картинку в браузер ( это я о погоде ).
To eGorka
Библиотека далласов для ESP32 вроде обычная , не помню откуда взял. В подтверждение слов код DHT от Дуи не работает на ЕСП32 и наоборот
СпойлерПоказать
Сеть на всех серверах и радио сенсорах то же работает. Не так как у Вас , но в меру моих "знаний".
И я за сотрудничество. Но большинство моих вопросов уходят в спам , благодаря роботу. Снимите последний бан - очень хочется узнать - как же все таки отправить картинку в браузер ( это я о погоде ).
To eGorka
Библиотека далласов для ESP32 вроде обычная , не помню откуда взял. В подтверждение слов код DHT от Дуи не работает на ЕСП32 и наоборот
СпойлерПоказать
Код: Выделить всё
/*
Module DHT DUE
part of Arduino Mega Server project
*/
#ifdef DHT_FEATURE
#include "DHT.h"
#include <Adafruit_Sensor.h>
//#define MAX_TEMP_SENSORS 1
#define DHTTYPE DHT11 // DHT 11
//DHT dht(DHT22); // Указать датчик DHT11, DHT21 или DHT22. (несколько датчиков вписывать не нужно)
// Подключать можно только одинаковые датчики, то есть нельзя использовать одновременно DHT11 и DHT22
#define DHTPIN 34 //pin 34 connect to DHT11
DHT dht(DHTPIN, DHTTYPE, 30); //30 for Arduino Due
// Temporary variables
static char celsiusTemp[7];
static char fahrenheitTemp[7];
static char humidityTemp[7];
float dht11_h;
float dht11_t;
float dht11_f;
void dhtInit() {
modulDHT = MODUL_ENABLE;
started("DHT", true);
}
void dhtWorks() {
if (cycle5m) {
// Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
dht11_h = dht.readHumidity();
// Read temperature as Celsius (the default)
dht11_t = dht.readTemperature();
// Read temperature as Fahrenheit (isFahrenheit = true)
dht11_f = dht.readTemperature(true);
// Check if any reads failed and exit early (to try again).
if (isnan(dht11_h) || isnan(dht11_t) || isnan(dht11_f)) {
Serial.println("Failed to read from DHT sensor!");
strcpy(celsiusTemp,"Failed");
strcpy(fahrenheitTemp, "Failed");
strcpy(humidityTemp, "Failed");
}
else{
Serial.print("Humidity: ");
Serial.print(dht11_h);
Serial.print(" %\t Temperature: ");
Serial.print(dht11_t);
Serial.println(" *C ");
}// else
}//if(cycle5m)
}//dhtWorks()
#endif
СпойлерПоказать
Код: Выделить всё
/*
Module DHT ESP32
part of Arduino Mega Server project
*/
#ifdef FEATURE_DHT
#include "DHT.h"
#define MAX_TEMP_SENSORS 1
// Uncomment one of the lines below for whatever DHT sensor type you're using!
#define DHTTYPE DHT11 // DHT 11
//#define DHTTYPE DHT21 // DHT 21 (AM2301)
//#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321
// DHT Sensor
const int DHTPin = 15;
// Initialize DHT sensor.
DHT dht(DHTPin, DHTTYPE);
//char objSens[MAX_TEMP_SENSORS] = {"tempSTR"};
// Temporary variables
static char celsiusTemp[7];
static char fahrenheitTemp[7];
static char humidityTemp[7];
void initDHT() {
moduleDHT = ENABLE;
started(F("DHT"), true);
}
void workDHT() {
if (cycle1m) {
// if (c == '\n' && currentLineIsBlank) {
// Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
float h = dht.readHumidity();
// Read temperature as Celsius (the default)
float t = dht.readTemperature();
// Read temperature as Fahrenheit (isFahrenheit = true)
float f = dht.readTemperature(true);
// Check if any reads failed and exit early (to try again).
if (isnan(h) || isnan(t) || isnan(f)) {
Serial.println("Failed to read from DHT sensor!");
strcpy(celsiusTemp,"Failed");
strcpy(fahrenheitTemp, "Failed");
strcpy(humidityTemp, "Failed");
}
else{
// Computes temperature values in Celsius + Fahrenheit and Humidity
float hic = dht.computeHeatIndex(t, h, false);
dtostrf(hic, 6, 2, celsiusTemp);
float hif = dht.computeHeatIndex(f, h);
dtostrf(hif, 6, 2, fahrenheitTemp);
dtostrf(h, 6, 2, humidityTemp);
// You can delete the following Serial.print's, it's just for debugging purposes
Serial.print("Humidity: ");
Serial.print(h);
Serial.print(" %\t Temperature: ");
Serial.print(t);
Serial.println(" *C ");
/*
Serial.print(f);
Serial.print(" *F\t Heat index: ");
Serial.print(hic);
Serial.print(" *C ");
Serial.print(hif);
Serial.print(" *F");
Serial.print("Humidity: ");
Serial.print(h);
Serial.print(" %\t Temperature: ");
Serial.print(t);
Serial.print(" *C ");
Serial.print(f);
Serial.print(" *F\t Heat index: ");
Serial.print(hic);
Serial.print(" *C ");
Serial.print(hif);
Serial.println(" *F");
*/
}
}
}
#endif
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза
Re: Арена
Друзья, я не успеваю за безумным роботом и мои сообщения он тоже банит — я думаю Сергею его нужно вообще отключить — толку от него никакого, одни неудобства. Сообщения разблокировал.Но большинство моих вопросов уходят в спам , благодаря роботу. Снимите последний бан - очень хочется узнать - как же все таки отправить картинку в браузер ( это я о погоде ).
По поводу ESP32 и 1-Wire сети. Я это не проверял, но думаю, что если всё грамотно сделать, то проблем не будет — по идее им там просто неоткуда взяться.