Arduino Mega Server
Модератор: Alex
-
- Сообщения: 230
- Зарегистрирован: Чт фев 12, 2015 2:34 pm
- Благодарил (а): 36 раз
- Поблагодарили: 6 раз
Re: Arduino Mega Server
Я сравнил один скетч Contacts, который задействован у меня, старю версию и новую.
К нему привязан дверной звонок.
И вот в старой версии было явно прописано передача в MD изменение состояния кнопок, а в новой версии того нет
И вот надо изменять новую версию скетча Contacts, или так оставить и он будет отправлять состяние кнопок?
К нему привязан дверной звонок.
И вот в старой версии было явно прописано передача в MD изменение состояния кнопок, а в новой версии того нет
И вот надо изменять новую версию скетча Contacts, или так оставить и он будет отправлять состяние кнопок?
server i5, OS-Ubuntu Server 16., 1-wire
php 7, AMS,broadlink rm2,rm3 mini.
php 7, AMS,broadlink rm2,rm3 mini.
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
Вышли обе версии кода. Лучше в ветку про прикручиванию железа. Будем сравнивать и сам использую. По управлению реле есть три варианта:
1 Доделать вкладку Keys на 5 реле. Тогда можно ими управлять со страницы AMS вручную и автоматически с МД.
2 Взять тестовый скетч для реле и управлять им по датчику. Надо только размножить на необходимое количество. Статус реле мгновенно отражается на странице.
3 Самый навороченный из серии " Садо-мазахизма" от ser009. Тогда со страницы можно задавать режим в ручную, по времени или по датчику. Опять же только для одного реле. Работает на Дуе.
С логированием на Меге не баловался. Может банально не хватить памяти.
На скрине выше виден статус реле текстом.
1 Доделать вкладку Keys на 5 реле. Тогда можно ими управлять со страницы AMS вручную и автоматически с МД.
2 Взять тестовый скетч для реле и управлять им по датчику. Надо только размножить на необходимое количество. Статус реле мгновенно отражается на странице.
3 Самый навороченный из серии " Садо-мазахизма" от ser009. Тогда со страницы можно задавать режим в ручную, по времени или по датчику. Опять же только для одного реле. Работает на Дуе.
С логированием на Меге не баловался. Может банально не хватить памяти.
На скрине выше виден статус реле текстом.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
-
- Сообщения: 7
- Зарегистрирован: Пт ноя 11, 2016 9:47 pm
- Благодарил (а): 2 раза
- Поблагодарили: 0
Re: Arduino Mega Server
Здравствуйте!
Не смог найти в документации и коде AMS 0.16 Arduino, как можно задать нестандартную (не сети класса С) маску для сервера - мне надо 255.255.255.224
Можно ли это сделать и если да, то как?
Не смог найти в документации и коде AMS 0.16 Arduino, как можно задать нестандартную (не сети класса С) маску для сервера - мне надо 255.255.255.224
Можно ли это сделать и если да, то как?
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
Что бы появилась у меня синхронизация времени , пришлось добавить DNS. Попробуй так же добавить и маску.
В библиотеке есть строки про subnetMask.
Может проскочит ? ))
Код компилируется , но не заливал.
Код: Выделить всё
/*
Modul Ethernet
part of Arduino Mega Server project
*/
// Ethernet settings
byte SELF_MAC[] = {0x00, 0x2A, 0xF5, 0x12, 0x67, 0xFE};
byte SELF_IP[] = {192, 168, 2, 36};
byte DNS[] = {8, 8, 8, 8 };// DNS Гугла
byte GATEWAY[] = {192, 168, 2, 100}; // поставь свой
byte MASK[] = {255, 255, 255, 224}; // попробуй добавить
void ethernetInit() {
Serial.println("Modul Ethernet...");
Ethernet.begin(SELF_MAC, SELF_IP, DNS, GATEWAY, MASK); // Вызов
Может проскочит ? ))
Код компилируется , но не заливал.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
+5. Академический встречный вопрос - а на что это влияет? И что это вообще такое ?
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
-
- Сообщения: 7
- Зарегистрирован: Пт ноя 11, 2016 9:47 pm
- Благодарил (а): 2 раза
- Поблагодарили: 0
Re: Arduino Mega Server
Маска сети или маска подсети - это способ разбиения IP-адреса на 2 части - адрес сети, и адрес собственно узла в сети. Маска может состоять лишь из непрерывной последовательности единиц (в двоичном представлении), единицы отсчитываются с крайнего левого разряда (из 32 из которых и состоит IP-адрес 4 версии), не занятые маской разряды заполняются нулями. Основное назначение маски - определять относиться ли адрес куда нужно отправить данные к локальной или удаленной сети. перед отправкой пакета производится операция "Логическое И" над адресом узла назначения - куда уходит пакет и маской, а также над собственным адресом узла и маской, если результаты равны, то это та же сеть и никаких лишних телодвижений не надо, а если не равны - то надо пакет отправить на адрес маршрутизатора (шлюза, роутера, гейтэвея) и пусть он разбирается дальше с этим пакетом.
Второе назначение маски - разбиение одной сети на более мелкие фрагменты - подсети. Весь диапазон доступных адресов можно пореазть на 2, 4, 8 и тд (степень двойки) частей, что и было в моем случае - одна сеть с 245 действительными адресами был разбита на 8 частей по 30 действительных адресов. Это мне нужно было для того чтобы иметь возможность на маршрутизаторе блокировать доступ к определенным адресам и/или сетям с определенных адресов/сетей.
Вообще, про маски адреса, подсети и пр можно рассказывать долго, лучше всего это описано, на мой взгляд, это про IPv4, у Олиферов в книге "Компьютерные сети", лучше 3 издание во следующих они все испортили в попытке упрощения
Второе назначение маски - разбиение одной сети на более мелкие фрагменты - подсети. Весь диапазон доступных адресов можно пореазть на 2, 4, 8 и тд (степень двойки) частей, что и было в моем случае - одна сеть с 245 действительными адресами был разбита на 8 частей по 30 действительных адресов. Это мне нужно было для того чтобы иметь возможность на маршрутизаторе блокировать доступ к определенным адресам и/или сетям с определенных адресов/сетей.
Вообще, про маски адреса, подсети и пр можно рассказывать долго, лучше всего это описано, на мой взгляд, это про IPv4, у Олиферов в книге "Компьютерные сети", лучше 3 издание во следующих они все испортили в попытке упрощения
-
- Сообщения: 17
- Зарегистрирован: Сб сен 08, 2018 10:22 am
- Благодарил (а): 12 раз
- Поблагодарили: 1 раз
Re: Arduino Mega Server
Вот к чему я буду стремиться. А то в голове каша полная.
Нетбук dns + Ubuntu Server 16.04 + MJD + ESP32 + Wifi-IOT
-
- Сообщения: 2575
- Зарегистрирован: Пт ноя 06, 2015 10:22 am
- Откуда: Кишинёв
- Благодарил (а): 303 раза
- Поблагодарили: 282 раза
Re: Arduino Mega Server
А что он писал ? Цитату вставьте )).
Нашел. )) Так еще раз говорю - все это уже реализовано.
1. 3 температуры - ЕСТЬ.
2. Датчик давления - КАКОЙ ? Просто читаем аналоговый вход , делаем ремапинг в удобный вид и выводим на страницу. Скетч ser009 тут выкладывал. Пошел искать ( самому надо )).
3 Датчики потребления газа и воды.
Вот с этим сложнее , но опять реализовано.
А. Считаем прерывания . Выводим результат. Глобальный минус такого решения - потеря данных при перезагрузке.
В. Прикручиваем сенсор на NRF24 . Загружаем мой скетч с двумя далласами . DHT и двумя счетчиками. И опять же та же проблема - сброс значений. Костыль - ставим аккумулятор на сутки.
С. Правильный вариант - подключаем DS2423 и забываем о проблеме. ( до 32 000 попугаев ).
Д. Самый извращенный вариант - Подключаем MySensors , загружаем скетч и забываем...
Начните с самого простого - выведите в даш-панель 3 температуры. Библия процесса расписана ТУТ.
Нашел. )) Так еще раз говорю - все это уже реализовано.
1. 3 температуры - ЕСТЬ.
2. Датчик давления - КАКОЙ ? Просто читаем аналоговый вход , делаем ремапинг в удобный вид и выводим на страницу. Скетч ser009 тут выкладывал. Пошел искать ( самому надо )).
3 Датчики потребления газа и воды.
Вот с этим сложнее , но опять реализовано.
А. Считаем прерывания . Выводим результат. Глобальный минус такого решения - потеря данных при перезагрузке.
В. Прикручиваем сенсор на NRF24 . Загружаем мой скетч с двумя далласами . DHT и двумя счетчиками. И опять же та же проблема - сброс значений. Костыль - ставим аккумулятор на сутки.
С. Правильный вариант - подключаем DS2423 и забываем о проблеме. ( до 32 000 попугаев ).
Д. Самый извращенный вариант - Подключаем MySensors , загружаем скетч и забываем...
Начните с самого простого - выведите в даш-панель 3 температуры. Библия процесса расписана ТУТ.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
-
- Сообщения: 72
- Зарегистрирован: Пт янв 13, 2017 11:48 pm
- Благодарил (а): 6 раз
- Поблагодарили: 3 раза
Re: Arduino Mega Server
Спасибо за пояснения. Схема своей локалки реализована не полностью, в частности сервер AMS на Mеге2560, для управления котлом только планируется, почему собственно я и задал вопрос. После прочтения пояснений возникли следующие мысли)):
1. АМS поддерживает MQTT? Дело в том, что на сервере с Мажордомо можно поставить брокер и в прошивке моего датчика, с которого нужно читать температуру есть опция MQTT клиента. То есть датчик может слать прямо на AMS через MQTT данные? Или AMS должен будет читать данные с брокера и потом на основе них дрыгать ногой?
2. Либо писать скетч, чтобы АМS каждые 10 секунд стучался через GET например к этому датчику и получив температуру дрыгал ногой...
Как проще? Точнее как будет работать?
1. АМS поддерживает MQTT? Дело в том, что на сервере с Мажордомо можно поставить брокер и в прошивке моего датчика, с которого нужно читать температуру есть опция MQTT клиента. То есть датчик может слать прямо на AMS через MQTT данные? Или AMS должен будет читать данные с брокера и потом на основе них дрыгать ногой?
2. Либо писать скетч, чтобы АМS каждые 10 секунд стучался через GET например к этому датчику и получив температуру дрыгал ногой...
Как проще? Точнее как будет работать?