Arduino Mega Server
Модератор: Alex
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
- Благодарил (а): 121 раз
- Поблагодарили: 2010 раз
Re: Arduino Mega Server
Ну я как бы это и объяснил вроде вкратце...
У модуля есть 3 состояния - не скомпилирован (серая подсветка), активен (синяя подсветка) и не активен (какая-то оливковая подсветка). 3е состояние почти нигде не используется. Я вам предлагаю его использовать по назначению...если вам так больше нравится - можете подсветку на красную сменить)))Но в целом суть такая.
У модуля есть 3 состояния - не скомпилирован (серая подсветка), активен (синяя подсветка) и не активен (какая-то оливковая подсветка). 3е состояние почти нигде не используется. Я вам предлагаю его использовать по назначению...если вам так больше нравится - можете подсветку на красную сменить)))Но в целом суть такая.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
Суть ясна. Реализовываю ооочень долго...
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
- nick7zmail
- Сообщения: 7573
- Зарегистрирован: Пн окт 28, 2013 8:14 am
- Откуда: Екатеринбург
- Благодарил (а): 121 раз
- Поблагодарили: 2010 раз
Re: Arduino Mega Server
А что там реализовывать то?))
1) делаем периодический запуск rtcSync() в основной функции loop()
(допустим раз в 5 минут, чтоб новые таймеры пока не городить...потом, как и говорил, новый таймер на сутки можно создать)
2) в самой rtcSync добавляем обработчики
3) Проверяем как работает подсветочка (я не проверял, но должно быть ок)
4) Добавляем писк зуммера, или что вы там хотели после modulRtc = MODUL_DISABLE; для предупреждения...можете так же добавить несколько попыток getNtpTime перед тем как в disable переключать
1) делаем периодический запуск rtcSync() в основной функции loop()
(допустим раз в 5 минут, чтоб новые таймеры пока не городить...потом, как и говорил, новый таймер на сутки можно создать)
Код: Выделить всё
if (cycle5m) {
rtcSync();
}
Код: Выделить всё
void rtcSync() {
setSyncProvider(getNtpTime);
Serialprint("...getNtpTime... \n");
if (timeStatus() != timeNotSet) {
time_t t = getNtpTime();
if (t) {
Serialprint("...set!... \n");
modulRtc = MODUL_ENABLE;
RTC.set(t);
} else {
modulRtc = MODUL_DISABLE;
}
setSyncProvider(RTC.get);
}
}
4) Добавляем писк зуммера, или что вы там хотели после modulRtc = MODUL_DISABLE; для предупреждения...можете так же добавить несколько попыток getNtpTime перед тем как в disable переключать
- За это сообщение автора nick7zmail поблагодарили (всего 2):
- serghei (Ср май 02, 2018 9:06 pm) • prapor (Пн сен 24, 2018 9:08 pm)
- Рейтинг: 2.33%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
Пищалка стоит , таймеры на год вперёд расписаны. Буду пробовать. Спасибо!.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
-
- Сообщения: 72
- Зарегистрирован: Пт янв 13, 2017 11:48 pm
- Благодарил (а): 6 раз
- Поблагодарили: 3 раза
Re: Arduino Mega Server
Здравствуйте. Купил плату Mega2560+W5100 шилд. Скачал дистрибутив AMS на карту, распаковал файлы. Карта Kingston 2 Gb, класс непонятный. Подал питание, плата не пингуется. В общем мучался долго, светодиоды активности моргают линк поднимается, но IP адрес роутер не назначает. Оказалось, что стоят не те сопротивления на плате позади RJ45. Стоит резистивная сборка на 510 ом, а нужно на 51 ом. Перепаял и все заработало! IP адрес роутер назначает. Так что если кто будет брать такой шилд, знайте о косяке. Но теперь проблема другая. Нет интерфейса. Плата пингуется, но по адресу 192.168.1.37 не заходит на интерфейс, впрочем как и не заходит по другим адресам прописанным в скетче например. Вот листинг порта.
Что может быть, кто что подскажет. Спасибо.
Код: Выделить всё
Arduino Mega Server (0.17) started...
Module Hardware...
Controller: Arduino Mega
Total memory: 8192
Free memory: 1930 (23%)
Network adapter: Ethernet Shield
============
Module EEPROM...
Name: Arduino Mega Se
Address: 138
============
Module Ethernet...
MAC: 5C CF 7F 12 2F 30
IP: 192.168.1.37
============
Module SD...
SD init... OK
index.htm... found
Check..............
Files: 145
Size: 1974200
============
Module SD Info...
SD type: SD2
Filesystem: FAT32
Cluster: 4096
SD size: 1961 MB
============
Module SD Files... started
Module NTP...
Local port: 123
============
Module Time...
NTP sync...
Transmit NTP request (85.114.26.194:123) Receive NTP response
============
2018-05-18 22:09:21 Module Server... started
2018-05-18 22:09:21 Module Upload... started
2018-05-18 22:09:21 Module Send...
2018-05-18 22:09:21 ============
2018-05-18 22:09:21 Module MajorDoMo...
2018-05-18 22:09:21 Connect to MajorDoMo... OK
2018-05-18 22:09:21 ============
2018-05-18 22:09:21 Module Laurent...
2018-05-18 22:09:21 Connect to Laurent... failed
2018-05-18 22:09:25 Error sending command
2018-05-18 22:09:27 Error sending command
2018-05-18 22:09:27 ============
2018-05-18 22:09:27 Module Temperature...
2018-05-18 22:09:27 Parasite power OFF
2018-05-18 22:09:27 Found 0 devices
2018-05-18 22:09:27 #0: 0 0 0 0 0 0 0 temp1
2018-05-18 22:09:27 #1: 0 0 0 0 0 0 0 temp2
2018-05-18 22:09:27 #2: 0 0 0 0 0 0 0 temp2
2018-05-18 22:09:27 ============
2018-05-18 22:09:27 Module Contacts... started
2018-05-18 22:09:27 Module PIR... started
2018-05-18 22:09:28 Module Electro... started
2018-05-18 22:09:28 Module Keys... started
2018-05-18 22:09:28 Module nooLite... started
2018-05-18 22:09:28 Module MR1132... started
2018-05-18 22:09:28 Module nRF24...
2018-05-18 22:09:28 Base Receiving
2018-05-18 22:09:28 ============
2018-05-18 22:09:28 Module Abstract... started
2018-05-18 22:09:28 GLOBAL Init DONE (10s)
2018-05-18 22:09:28 AMS WORK 1896 (23%)
2018-05-18 22:09:28 cont1: Open
2018-05-18 22:09:28 cont2: Norm
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
Странно.... Время синхронизируется - значит сеть настроена правильно. Хотя уточню - точно первая подсеть ? Компьютер то же в этой сети ?
Как вариант - такое бывает , когда AMS загружен на 100 %. Отключите все модули ( особенно электро , пиры, лаурент и NRF24 ). Должно полегчать.
Как вариант - такое бывает , когда AMS загружен на 100 %. Отключите все модули ( особенно электро , пиры, лаурент и NRF24 ). Должно полегчать.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
-
- Сообщения: 72
- Зарегистрирован: Пт янв 13, 2017 11:48 pm
- Благодарил (а): 6 раз
- Поблагодарили: 3 раза
Re: Arduino Mega Server
Беда вообще произошла странная. Вдруг ни с того ни с сего отвалился W5100. Сброс не помогает линк не светится. Потом выдернул шилд, вставил, все появилось - пять минут поработал и снова пропал из сети. Где-то плохой контакт что ли...Короче придется заказать наверное 28J60 и перейти на MegaD. Эх...
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
Уж если Китайцы накосячили с резисторами , то нет никакой уверенности , что все остальное правильное. Оборудование должно быть правильным. Я вот так 6 версий плат ESP32 перепробовал , пока не нашел одну адекватную.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
-
- Сообщения: 2357
- Зарегистрирован: Пт апр 20, 2012 12:53 pm
- Благодарил (а): 42 раза
- Поблагодарили: 262 раза
Re: Arduino Mega Server
Я бы посоветовал просто купить исправное оборудование и всё у вас запустится. На неисправном оборудовании, естественно, ничего работать не будет, тем более такая сложная система как АМС.Беда вообще произошла странная. Вдруг ни с того ни с сего отвалился W5100. Сброс не помогает линк не светится. Потом выдернул шилд, вставил, все появилось - пять минут поработал и снова пропал из сети. Где-то плохой контакт что ли...Короче придется заказать наверное 28J60 и перейти на MegaD. Эх...
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
Много раз упоминалось , что для AMS легче и проще отправить один GET запрос со множеством данных, чем кучу мелких. Конкретный пример - " PowerMonitor" , где одним залпом отправляются 14 данных. Попробовал реализовать так же для датчика BME280 с тремя цифрами температуры , влажности и давления. ( Докатился и до этого ).
Можно по одному
И ,к стати , опять в дистрибутиве для DUE_017 нет вывода состояния - жива или нет.
Кому интересно , просто добавить на вкладке мажера
Такая же беда и на ESP32.
PS/ Я догадываюсь , что дело в этих кракозябрах
Их должно быть ровно столько и таких , какие мы отправляем
Но не могу найти сайт с расшифровкой.Показывали ,но очень давно.
- 30.7 C , 35.5% ,744.4 mm.Hg.
2018-06-05 21:07:06 Host 192.168.2.108 GET /objects/?object=packBME&op=m&m=update&Temp=30.0&Pres=744.0&Hum=35.0& HTTP/1.0
2018-06-05 21:07:06 85928 (87%)
2018-06-05 21:08:05 Host 192.168.2.108 GET /objects/?object=ncDue01&op=m&m=update&v=1
СпойлерПоказать
Код: Выделить всё
int temp_ = (temp - (int)temp) * 100;
int pres_ = (pres - (int)pres) * 100;
int hum_ = (hum - (int)hum) * 100;
void sendBMEMajor(char obj[]) {
sprintf(buf, "GET /objects/?object=%s&op=m&m=update&%s=%0d.%d&%s=%0d.%d&%s=%0d.%d& HTTP/1.0",
obj, "Temp", (int)temp, abs(temp_),
"Pres", (int)pres, abs(pres_), "Hum", (int)hum, abs(hum_));
#ifdef MAJORDOMO_FEATURE
sendBuffToMajor();
#endif
}
void getUIP(char obj[]) {
sendBMEMajor(obj);
}
==============
if (cycle1m) {
getUIP("packBME");
}
СпойлерПоказать
Код: Выделить всё
int temp_ = 0;
temp_ = (temp - (int)temp) * 100;
if ((temp > -1) && (temp < 0)) {
#ifdef MAJORDOMO_FEATURE
// sendRequestMinusM("Temp", "-", (int)temp, abs(temp));
#endif
} else {
#ifdef MAJORDOMO_FEATURE
sendRequestMinusM("Temp", "", (int)temp, abs(temp_));
#endif
}
int pres_ = 0;
pres_ = (pres - (int)pres) * 100;
if ((pres > -1) && (pres < 0)) {
#ifdef MAJORDOMO_FEATURE
// sendRequestMinusM("Pres", "-", (int)pres, abs(pres));
#endif
} else {
#ifdef MAJORDOMO_FEATURE
sendRequestMinusM("Pres", "", (int)pres, abs(pres_));
// sendRequestMinusM("Pres", "", (int)pres);
#endif
}
int hum_ = 0;
hum_ = (hum - (int)hum) * 100;
if ((hum > -1) && (hum < 0)) {
#ifdef MAJORDOMO_FEATURE
// sendRequestMinusM("Hum", "-", (int)hum, abs(hum_));
#endif
} else {
#ifdef MAJORDOMO_FEATURE
sendRequestMinusM("Hum", "", (int)hum, abs(hum_));
#endif
}
Кому интересно , просто добавить на вкладке мажера
СпойлерПоказать
Код: Выделить всё
#ifdef MAJORDOMO_FEATURE
char majorMegaObject[] = "ncDue01";
char majorCommObject[] = "comm_due01";
=====================================
void majorWorks() {
if (cycle1m) {
sendRequestM(majorMegaObject, 1);
checkEvent(&prevEventMegaLive);
}
}
#endif // MAJORDOMO_FEATURE
PS/ Я догадываюсь , что дело в этих кракозябрах
Код: Выделить всё
"GET /objects/?object=%s&op=m&m=update&%s=%0d.%d&%s=%0d.%d&%s=%0d.%d& HTTP/1.0"
Код: Выделить всё
obj, "Temp", (int)temp, abs(temp_),"Pres", (int)pres, abs(pres_), "Hum", (int)hum, abs(hum_)
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS