Умный Дом по Ethernet

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
Genok
Сообщения: 6
Зарегистрирован: 15 май 2011, 17:06
Откуда: Тула

Re: Умный Дом по Ethernet

Сообщение Genok » 23 июл 2013, 18:04

Andrey_B.
А можно увеличить длину поля "NetAction" , а то не влезает команда "http://IP/sec/?set=out5&val=1"
для устройства "1-Wire по Ethernet".

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Умный Дом по Ethernet

Сообщение Andrey_B » 23 июл 2013, 22:09

Длину NetAction вы можете задать самостоятельно в прошивке
uint8_t EEMEM ee_eth_cmd[IO_SIZE][35];
В вашем случае это будет 45 байт.

Также необходимо отредактировать строку
plen=fill_tcp_data_p(buf,plen,PSTR("NetAction: <input type=text maxlength=35 size=39 name=eth value=\""));
и указать maxlength=45

Ситуации бывают различными и кому-то достаточно 35 байт, а кому-то мало и 45. Увеличивать длину до бесконечности тоже нельзя, так как объем EEPROM не безграничен.

plusQ
Сообщения: 115
Зарегистрирован: 01 фев 2013, 15:29
Контактная информация:

Re: Умный Дом по Ethernet

Сообщение plusQ » 24 июл 2013, 11:51

Andrey_B писал(а):plusQ, выводить информацию от встроенного сенсора температуры, думаю, можно. Только какой в ней практический смысл?
MegaD-328 как правило будет располагаться в закрытом электрощите, неплохо бы контролировать в нем температуру хоть иногда... и при достижении критической температуры устройство смогло бы об этом сообщить

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Умный Дом по Ethernet

Сообщение Andrey_B » 24 июл 2013, 15:57

Справочно температуру можно вывести на странице с настройками модуля.
Также можно реализовать выдачу температуры по запросу. Может быть этим ограничиться? Пусть сервер сам спрашивает модуль?
Но вы предлагаете нечто большее. Вы предлагаете, чтобы Мегадевайс сам мониторил температуру и сам сообщал о превышении. То есть нужна отдельная страничка с конфигурированием подобного аларма.
Да и температура эта не совсем окружающего воздуха... Вывести на страницу с настройками не против. По поводу всего остального есть вопросы.

plusQ
Сообщения: 115
Зарегистрирован: 01 фев 2013, 15:29
Контактная информация:

Re: Умный Дом по Ethernet

Сообщение plusQ » 24 июл 2013, 16:12

Понятно что отображаемая сенсором информация будет давать не совсем актуальную температуру внутри щитка, но она может выявить тенденцию повышения температуры, пусть даже и с помощью внешнего скрипта. Идеально было бы реализовать мониторинг самим девайсом, например по типу мониторинга с алармом температуры процессора БИОСом компьютера...

Vyacheslav
Сообщения: 13
Зарегистрирован: 24 июл 2013, 21:41

Re: Умный Дом по Ethernet

Сообщение Vyacheslav » 24 июл 2013, 21:45

Залил прошивку 3.05 подключил датчик DHT11

Port: P3
temperature:-115
humidity:17

Всё собрано из компонент Arduino (пока во всяком случае)
В чём может быть проблема? И что можно поменять?

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Умный Дом по Ethernet

Сообщение Andrey_B » 25 июл 2013, 00:00

megad-temp.jpg
megad-temp.jpg (17.1 КБ) 20824 просмотра
Насколько я понял из даташита, показания встроенного датчика температуры могут варьироваться в очень широком диапазоне от чипа к чипу.
Их нужно калибровать программно. Мой сейчас показывает +35 со стандартными коэффициентами. Ну, похоже на правду.
А вот память на такие штуки жалко. Честно. Как только появились операции с дробными значениями (калибровочными), компилятор увеличил размер прошивки на 3Кб.

http://ab-log.ru/files/File/ip_manager3 ... _beta4.zip
http://ab-log.ru/files/File/ip_manager3 ... a4_hex.zip

Urbas81
Сообщения: 313
Зарегистрирован: 28 авг 2012, 14:22

Re: Умный Дом по Ethernet

Сообщение Urbas81 » 25 июл 2013, 13:10

Кажется на порт A6 залез лишний код с выхода, в настройках портов.

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Умный Дом по Ethernet

Сообщение Andrey_B » 25 июл 2013, 23:01

Urbas81 "залезть" код туда не мог. Артефакты могут наблюдаться из-за нехватки памяти. Но у себя ничего подобного не наблюдаю.
Во-первых, пришлите скриншот (у вас это проявляется всегда или в определенной ситуации?), а во-вторых, попробуйте изменить вот эту строчку
#define BUFFER_SIZE 800
например, увеличьте размер буфера до 820.

Urbas81
Сообщения: 313
Зарегистрирован: 28 авг 2012, 14:22

Re: Умный Дом по Ethernet

Сообщение Urbas81 » 26 июл 2013, 09:24

Andrey_B писал(а):Urbas81 "залезть" код туда не мог. Артефакты могут наблюдаться из-за нехватки памяти. Но у себя ничего подобного не наблюдаю.
Во-первых, пришлите скриншот (у вас это проявляется всегда или в определенной ситуации?), а во-вторых, попробуйте изменить вот эту строчку
#define BUFFER_SIZE 800
например, увеличьте размер буфера до 820.
Я правда сильно не вникал, просто скачал исходник, скопмилировал, и сразу проверил, правда в симуляторе, но в этой части я различия с железом еще не наблюдал, сейчас еще гляну внимательно.

Urbas81
Сообщения: 313
Зарегистрирован: 28 авг 2012, 14:22

Re: Умный Дом по Ethernet

Сообщение Urbas81 » 26 июл 2013, 09:31

Нашел, прошу пардона :oops: , eeprom остался старый, после чистки все стало на свои места, я еще подумал, конфигурация по умолчанию как у меня :D

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Умный Дом по Ethernet

Сообщение Andrey_B » 26 июл 2013, 23:44

megad-temp-alarm.jpg
megad-temp-alarm.jpg (27.36 КБ) 20529 просмотров
Добавлена возможность автоматического отслеживания состояния встроенного температурного датчика. Проверка осуществляется раз в минуту.
Temp check: проверять или не проверять значение датчика
Alarm temp: порог в градусах, выше которого будет отправляться уведомление на сервер.

Параметр скрипта "at"
То есть для скрипт megad.php будет вызываться так:
http://192.168.0.250/megad.php?at=35

В отличие от портов АЦП, где значение не отправляется повторно, если уровень сохраняется, в данном случае сообщение на сервер будут уходить после каждой проверки, так как ситуацию можно однозначно расценивать как аварийную. Ответ сервера обрабатывается стандартным образом. То есть если сервер в ответ на сообщение попросит переключить какие-нибудь выходы, эта команда будет выполнена.

http://ab-log.ru/files/File/ip_manager3 ... _beta5.zip
http://ab-log.ru/files/File/ip_manager3 ... a5_hex.zip

Dron
Сообщения: 207
Зарегистрирован: 08 мар 2013, 13:00

Re: Умный Дом по Ethernet

Сообщение Dron » 29 июл 2013, 01:00

не знаю, на сколько это действительно актуально, надеюсь никого не обидеть..
по мне совершенно лишний функционал.

вот чего действительно не хватает, это возможности включать выход на определённый срок. причём не только локально.
например по действию на IN на минуту (задаётся) включается OUT. и важна возможность включать на определённый срок OUT на других мегах.

предупреждая вопросы, зачем)))
применения огромны: управление кранами, жалюзи, ворота и т.п. (совершенно не нужно поддерживать напряжение на реле сутками, после того, как кран/жалюзи/ворота закрылись/открылись), управление светом по датчику движения и т.п.

при работающем сервере это не нужно, это очевидно. но система позиционируется как автономная. и сервак может умереть/зависнуть, и вот тогда это очень нужно и важно.

прошу строго не судить =-)

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Умный Дом по Ethernet

Сообщение Andrey_B » 29 июл 2013, 12:52

Dron, "температурный" функционал в самом деле не слишком актуальный, но об этом я говорил с самого начала. Хотя и не совсем уж лишний.
Модули MegaD по своей идее предполагают работу в общей системе с интеллектуальным блоком управления (сервером). Использовать их автономно можно, но это, как мне кажется, не совсем их профиль, хотя прошивка постепенно к этому дрейфует.
Включать выходы на определенное время можно, но нужно понять как и где это будет задаваться. Если с помощью команд типа "7:1", то они должны дополниться какой-то новой семантикой, например "7:1-20" (включить порт 7 на 20 секунд).

Dron
Сообщения: 207
Зарегистрирован: 08 мар 2013, 13:00

Re: Умный Дом по Ethernet

Сообщение Dron » 29 июл 2013, 12:57

И ещё вопрос уважаемому Andrey_B.
Собираю МегаДевайс из готовых кусочков, вместо ATmega с обвязкой использую примерно такое: тык

В программе не задействован выход 8. Он не используется. С чем это связано? Почему бы не использовать и его? Или я что-то недоразвёл, и он задействован где-то ещё? У меня он болтается в воздухе =-)
Хотя всё прекрасно работает. А вот контакт жалко.

Andrey_B
Администратор
Сообщения: 5327
Зарегистрирован: 18 мар 2011, 12:06

Re: Умный Дом по Ethernet

Сообщение Andrey_B » 29 июл 2013, 13:01

Что такое "выход 8"? Может быть, это порт, на котором у меня висит светодиод активности?

Dron
Сообщения: 207
Зарегистрирован: 08 мар 2013, 13:00

Re: Умный Дом по Ethernet

Сообщение Dron » 29 июл 2013, 13:17

Изображение

вот соответствие контактов готового ATmega c обвязкой (обозначения как на ардуинке уно) и номерам в программе.
читать столбиками. внутренне число - Ваша программа. на число 3.3 внимание можно не обращать, затесалось)))
соответственно а6 и а7 и есть а6 и а7

если перевести это безобразие, то контакт мой 8 находится между Вашими Р6 и Р7

Дописано: 12 нога микросхемы в QFP корпусе

эммм.. светодиода активности у меня не реализовано, вполне может быть. для чего он нужен? помаргивает при приёме-отдачи команд по сети?
Последний раз редактировалось Dron 29 июл 2013, 13:54, всего редактировалось 3 раза.

plusQ
Сообщения: 115
Зарегистрирован: 01 фев 2013, 15:29
Контактная информация:

Re: Умный Дом по Ethernet

Сообщение plusQ » 29 июл 2013, 13:33

Dron писал(а):вот чего действительно не хватает, это возможности включать выход на определённый срок. причём не только локально.
например по действию на IN на минуту (задаётся) включается OUT. и важна возможность включать на определённый срок OUT на других мегах.

предупреждая вопросы, зачем)))
зачем :D это делать в прошивке, если это реализуется на стороне сервера с еще большим функционалом?
пытаюсь написать свой вариант сервера, опыта мало и процесс идет медленно...
Основные идеи
1) универсальный обработчик событий от датчиков, дней рождения... для клавиш и переключателей, например можно повесить одновременно множество сценариев (однократное нажатие, многократное, продолжительное, димирование света) - уже реализовано
2) таймеры на события
3) применение макросов
4) ничтожные требования к железу и минималистический интерфейс

Dron
Сообщения: 207
Зарегистрирован: 08 мар 2013, 13:00

Re: Умный Дом по Ethernet

Сообщение Dron » 29 июл 2013, 13:38

plusQ писал(а):зачем :D это делать в прошивке, если это реализуется на стороне сервера с еще большим функционалом?
а представьте, насколько проще отправить с сервера команду "включить то на 2 минуты", чем "включить то", потом по крону или в цикле лазить в базу, проверять, дожидаться нужного момента и отправлять команду "выключить то".
помимо удобства, заметно упадёт нагрузка на самом сервере, при условии, что таких "включений на 10 сек" достаточно много.

plusQ
Сообщения: 115
Зарегистрирован: 01 фев 2013, 15:29
Контактная информация:

Re: Умный Дом по Ethernet

Сообщение plusQ » 29 июл 2013, 13:59

Dron
на первый взгляд проще, на самом деле события могут меняться от внешних условий от дней недели, времени суток, температуры воздуха или воды, влажности, количества людей в помещении и многого другого
и если сейчас достаточно ввести таймер на определенное событие, то затем захочется еще и еще... но предел есть и предел это микроконтроллер
так не лучше сейчас выбрать правильное направление?

IMXO таймер на события менее минуты не крон смысла вешать нет, проще несколько строчек PHP

Ответить