Arduino Mega Server

Модератор: Alex

Alex
Сообщения: 2357
Зарегистрирован: Пт апр 20, 2012 12:53 pm

Re: Arduino Mega Server

Сообщение Alex »

Меня устраивают вполне отдельные странички в 1 стиле :-)
Да, в большинстве случаев этого достаточно, но я вижу большой потенциал в этой технологии и я не стал бы выкорчёвывать управление темами из системы.
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург

Re: Arduino Mega Server

Сообщение nick7zmail »

В базовой сборке этот функционал обязательно должен присутствовать, очень наглядно и интерактивно, с этим не спорю)) Реально классный ход.

А для себя - 1 контроллер 1 цель/задача. Оформления ему ни к чему. Вряд ли эта система когда-либо будет расширяться, а если и будет - прошивку, скорее всего, с нуля писать придётся, на основе очередного актуального на тот момент Амс)...и по оформлению надо снова будет решать выковыривать его или нет))) лично я за простоту, а оформление за собой тянет очень много файлов на флехе (сейчас их у меня около 20 вроде осталось, а изначально - больше 50), и несколько десятков строк в самом коде...

Отправлено с моего Xperia XZ1 Compact через Tapatalk

Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
eGorka
Сообщения: 182
Зарегистрирован: Чт ноя 24, 2016 10:47 am

Re: Arduino Mega Server

Сообщение eGorka »

Alex писал(а): Вс июн 10, 2018 8:39 pmeGorka, ну какие 750 мс? И что это вообще за детский сад — штаны на лямках? Во всех моих проектах далласы работают на «второй скорости», сейчас не помню, но это кажется то ли 200, то ли 150 мс.
Про "детский сад" и "штаны на лямках"
SPOILERSPOILER_SHOW
ESP8266

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

#include "OneWire.h"
#include "DallasTemperature.h"
OneWire oneWire(2);
DallasTemperature sensors(&oneWire);
DeviceAddress ds[3] = { 
  {40,255,56,171,181,22,3,226},
  {40,255,61,69,192,22,4,53},
  {40,255,135,23,179,22,3,144}
};
float temp[3];
unsigned long time0,time1;
void setup(void) {
  Serial.begin(115200);
  sensors.begin();
  Serial.println();
  Serial.println(" *** \"DallasTemperature.h\" ***");
  Resolution();
}
void loop() {
  workTemp();
  delay(60000);
}
void workTemp() {
  Serial.println();
  time0 = millis();
  sensors.requestTemperatures();
  for(int i=0; i<3; i++) {
    temp[i] = sensors.getTempC(ds[i]);
  }
  time1 = millis();
  Serial.print(" Время выполнения: "); Serial.print(time1 - time0); Serial.println(" мс");
  Serial.print(" Температура:  ");
  for(int i=0; i<3; i++) {
    Serial.print(temp[i]);
    Serial.print(" ");
  }
  Serial.println();
}
void Resolution() {
  Serial.println();
  Serial.println(" \"Скорость\" датчиков");
  for(int i=0; i<3; i++) {
    uint8_t res = (sensors.getResolution(ds[i]),DEC);
    if(res == 9) { Serial.print(i + 1); Serial.println(" датчик(Первая скорость 94 мс 9бит)"); }
    if(res == 10) { Serial.print(i + 1); Serial.println(" датчик(Вторая скорость 188 мс 10бит)"); }
    if(res == 11) { Serial.print(i + 1); Serial.println(" датчик(Третья скорость 375 мс 11бит)"); }
    if(res == 12) { Serial.print(i + 1); Serial.println(" датчик(Четвёртая скорость 750 мс 12бит)"); }
  }
}
Dallas8266.PNG
Dallas8266.PNG (32.26 КБ) 6008 просмотров
с учётом(в коде AMS) timeStamp() и вывода в Serial будет ещё больше.
Даже знаю кто может проверить на AMS :D.
eGorka
Сообщения: 182
Зарегистрирован: Чт ноя 24, 2016 10:47 am

Re: Arduino Mega Server

Сообщение eGorka »

OneWire
SPOILERSPOILER_SHOW

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

#include "OneWire.h"
OneWire  ow(2);
byte ds[3][8] = { {40,255,56,171,181,22,3,226}, {40,255,61,69,192,22,4,53}, {40,255,135,23,179,22,3,144} };
float temp[3];
unsigned long time0,time1;
void setup(void) {
  Serial.begin(115200);
  Serial.println();
  Serial.println(" *** \"OneWire.h\" ***");
}
void loop() {
  workTemp();
  delay(60000);
}
void workTemp() {
  Serial.println();
  time0 = millis();
  ow.reset(); 
  ow.skip();
  ow.write(0x44);
  delay(200);
  for (int i=0; i<3; i++) {
    byte data[2];
    ow.reset();
    ow.select(ds[i]);
    ow.write(0xBE);
    data[0] = ow.read();
    data[1] = ow.read();
    int16_t raw = (data[1] << 8) | data[0];
    temp[i] = raw / 16.0;
  }
  time1 = millis();
  Serial.print(" Время выполнения: "); Serial.print(time1 - time0); Serial.println(" мс)");
  Serial.print(" Температура:  ");
  for(int i=0; i<3; i++) {
    Serial.print(temp[i]);
    Serial.print(" ");
  }
  Serial.println();
}
OW8266.PNG
OW8266.PNG (27.66 КБ) 6000 просмотров
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

nick7zmail писал(а): Вт июн 12, 2018 11:22 am1 контроллер 1 цель/задача. Оформления ему ни к чему.
На вкус и цвет все фломастеры разные. И каждый делает сам для себя. Человеку просто надо темную тему по дефолту.
А вот с ESP32 засада - чем больше файлов , тем дольше грузится страница редактирования и загрузки прошивки. Есть очень быстрый вариант , но при количестве файлов более 30 не работает. Хотя это надо в основном для отладки.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
eGorka
Сообщения: 182
Зарегистрирован: Чт ноя 24, 2016 10:47 am

Re: Arduino Mega Server

Сообщение eGorka »

Каюсь, был неправ, DallasTemperature работает корректно и быстрее!!! чистой OneWire, правда ест память.
Dallas2.PNG
Dallas2.PNG (28.89 КБ) 5989 просмотров
время измерения берётся по датчику с самым высоким разрешением.
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

Уффф. А что тогда говорить про PowerMonitor ? Ну тогда пусть AMS занимается серверной частью , а все измерения водрузить на сторонние Атмеги , а данные получать хоть по сериалу, хоть по NRF24. А до кучи можно еще и по UDP.
К тому же всплывает вопрос о точности показаний разных датчиков при разных напряжениях питания. Разброс температуры далласов и DHT11 минимальный ( 1 С), а вот влажность - около 10 % , по сравнению с BME280.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
alexsis_76
Сообщения: 792
Зарегистрирован: Пт янв 22, 2016 10:08 am

Re: Arduino Mega Server

Сообщение alexsis_76 »

Скажите а зачем вы ждете 200мс,я делаю так,даю команду на измерение ,завожу будильник и делаю другие дела,после того как будильник прозвенел я могу забрать данные с датчика,он может измерять сколько хочет,вообще я склоняюсь к мысли что http со многоими файлами для таких устройств роскошь,хватит им и TCP ,написать программу скажем на дельфи и спокойно обмениваться данными по вышеуказанному протоколу,увеличится скорость (при экспериментах запросы шли с интервалом 30мс что для обычной схемы недостижимо) и добавится интерактивность(больше не надо будет долбить сервер запросами)он сам все скажет),можно будет сделать сигнализацию c оповещением.
eGorka
Сообщения: 182
Зарегистрирован: Чт ноя 24, 2016 10:47 am

Re: Arduino Mega Server

Сообщение eGorka »

alexsis_76 писал(а): Ср июн 13, 2018 1:29 am Скажите а зачем вы ждете 200мс,я делаю так,даю команду на измерение ,завожу будильник и делаю другие дела,после того как будильник прозвенел я могу забрать данные с датчика,он может измерять сколько хочет,вообще я склоняюсь к мысли что http со многоими файлами для таких устройств роскошь,хватит им и TCP ,написать программу скажем на дельфи и спокойно обмениваться данными по вышеуказанному протоколу,увеличится скорость (при экспериментах запросы шли с интервалом 30мс что для обычной схемы недостижимо) и добавится интерактивность(больше не надо будет долбить сервер запросами)он сам все скажет),можно будет сделать сигнализацию c оповещением.
Это не я, это DallasTemperature, тесты для наглядности как быстрее при использовании delay. В реале(у меня) всё сделано как вы и описали, т.е. без DallasTemperature и delay.
zDimaBYz
Сообщения: 5
Зарегистрирован: Сб июн 09, 2018 6:57 am

Re: Arduino Mega Server

Сообщение zDimaBYz »

Моя прошивка правда ищо в _DASH не разобрался с pir датчиками
Ответить