Страница 71 из 125

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

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

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

Добавлено: 23 июл 2013, 22:09
Andrey_B
Длину 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 не безграничен.

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

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

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

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

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

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

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

Добавлено: 24 июл 2013, 21:45
Vyacheslav
Залил прошивку 3.05 подключил датчик DHT11

Port: P3
temperature:-115
humidity:17

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

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

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

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

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

Добавлено: 25 июл 2013, 13:10
Urbas81
Кажется на порт A6 залез лишний код с выхода, в настройках портов.

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

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

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

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

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

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

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

Добавлено: 26 июл 2013, 23:44
Andrey_B
megad-temp-alarm.jpg
megad-temp-alarm.jpg (27.36 КБ) 20540 просмотров
Добавлена возможность автоматического отслеживания состояния встроенного температурного датчика. Проверка осуществляется раз в минуту.
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

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

Добавлено: 29 июл 2013, 01:00
Dron
не знаю, на сколько это действительно актуально, надеюсь никого не обидеть..
по мне совершенно лишний функционал.

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

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

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

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

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

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

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

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

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

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

Добавлено: 29 июл 2013, 13:01
Andrey_B
Что такое "выход 8"? Может быть, это порт, на котором у меня висит светодиод активности?

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

Добавлено: 29 июл 2013, 13:17
Dron
Изображение

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

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

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

эммм.. светодиода активности у меня не реализовано, вполне может быть. для чего он нужен? помаргивает при приёме-отдачи команд по сети?

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

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

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

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

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

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

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

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