Страница 262 из 326
Re: Arduino Mega Server
Добавлено: Вт июн 12, 2018 9:27 am
Alex
Меня устраивают вполне отдельные странички в 1 стиле

Да, в большинстве случаев этого достаточно, но я вижу большой потенциал в этой технологии и я не стал бы выкорчёвывать управление темами из системы.
Re: Arduino Mega Server
Добавлено: Вт июн 12, 2018 11:22 am
nick7zmail
В базовой сборке этот функционал обязательно должен присутствовать, очень наглядно и интерактивно, с этим не спорю)) Реально классный ход.
А для себя - 1 контроллер 1 цель/задача. Оформления ему ни к чему. Вряд ли эта система когда-либо будет расширяться, а если и будет - прошивку, скорее всего, с нуля писать придётся, на основе очередного актуального на тот момент Амс)...и по оформлению надо снова будет решать выковыривать его или нет))) лично я за простоту, а оформление за собой тянет очень много файлов на флехе (сейчас их у меня около 20 вроде осталось, а изначально - больше 50), и несколько десятков строк в самом коде...
Отправлено с моего Xperia XZ1 Compact через Tapatalk
Re: Arduino Mega Server
Добавлено: Вт июн 12, 2018 4:49 pm
eGorka
Alex писал(а): Вс июн 10, 2018 8:39 pmeGorka, ну какие 750 мс? И что это вообще за детский сад — штаны на лямках? Во всех моих проектах далласы работают на «второй скорости», сейчас не помню, но это кажется то ли 200, то ли 150 мс.
Про "детский сад" и "штаны на лямках"
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 (32.26 КБ) 6002 просмотра
с учётом(в коде AMS) timeStamp() и вывода в Serial будет ещё больше.
Даже знаю кто может проверить на AMS

.
Re: Arduino Mega Server
Добавлено: Вт июн 12, 2018 5:47 pm
eGorka
OneWire
Код: Выделить всё
#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 (27.66 КБ) 5994 просмотра
Re: Arduino Mega Server
Добавлено: Вт июн 12, 2018 6:35 pm
serghei
nick7zmail писал(а): Вт июн 12, 2018 11:22 am1 контроллер 1 цель/задача. Оформления ему ни к чему.
На вкус и цвет все фломастеры разные. И каждый делает сам для себя. Человеку просто надо темную тему по дефолту.
А вот с ESP32 засада - чем больше файлов , тем дольше грузится страница редактирования и загрузки прошивки. Есть очень быстрый вариант , но при количестве файлов более 30 не работает. Хотя это надо в основном для отладки.
Re: Arduino Mega Server
Добавлено: Вт июн 12, 2018 7:10 pm
eGorka
Каюсь, был неправ, DallasTemperature работает корректно и быстрее!!! чистой OneWire, правда ест память.

- Dallas2.PNG (28.89 КБ) 5983 просмотра
время измерения берётся по датчику с самым высоким разрешением.
Re: Arduino Mega Server
Добавлено: Вт июн 12, 2018 9:29 pm
serghei
Уффф. А что тогда говорить про PowerMonitor ? Ну тогда пусть AMS занимается серверной частью , а все измерения водрузить на сторонние Атмеги , а данные получать хоть по сериалу, хоть по NRF24. А до кучи можно еще и по UDP.
К тому же всплывает вопрос о точности показаний разных датчиков при разных напряжениях питания. Разброс температуры далласов и DHT11 минимальный ( 1 С), а вот влажность - около 10 % , по сравнению с BME280.
Re: Arduino Mega Server
Добавлено: Ср июн 13, 2018 1:29 am
alexsis_76
Скажите а зачем вы ждете 200мс,я делаю так,даю команду на измерение ,завожу будильник и делаю другие дела,после того как будильник прозвенел я могу забрать данные с датчика,он может измерять сколько хочет,вообще я склоняюсь к мысли что http со многоими файлами для таких устройств роскошь,хватит им и TCP ,написать программу скажем на дельфи и спокойно обмениваться данными по вышеуказанному протоколу,увеличится скорость (при экспериментах запросы шли с интервалом 30мс что для обычной схемы недостижимо) и добавится интерактивность(больше не надо будет долбить сервер запросами)он сам все скажет),можно будет сделать сигнализацию c оповещением.
Re: Arduino Mega Server
Добавлено: Ср июн 13, 2018 7:42 am
eGorka
alexsis_76 писал(а): Ср июн 13, 2018 1:29 am
Скажите а зачем вы ждете 200мс,я делаю так,даю команду на измерение ,завожу будильник и делаю другие дела,после того как будильник прозвенел я могу забрать данные с датчика,он может измерять сколько хочет,вообще я склоняюсь к мысли что http со многоими файлами для таких устройств роскошь,хватит им и TCP ,написать программу скажем на дельфи и спокойно обмениваться данными по вышеуказанному протоколу,увеличится скорость (при экспериментах запросы шли с интервалом 30мс что для обычной схемы недостижимо) и добавится интерактивность(больше не надо будет долбить сервер запросами)он сам все скажет),можно будет сделать сигнализацию c оповещением.
Это не я, это DallasTemperature, тесты для наглядности как быстрее при использовании delay. В реале(у меня) всё сделано как вы и описали, т.е. без DallasTemperature и delay.
Re: Arduino Mega Server
Добавлено: Чт июн 14, 2018 10:40 pm
zDimaBYz
Моя
прошивка правда ищо в _DASH не разобрался с pir датчиками