Умный Дом по Ethernet

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
boban_
Сообщения: 12
Зарегистрирован: 30 апр 2011, 19:59

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

Сообщение boban_ » 04 июн 2011, 10:51

Да, а приобрести ENC28J60 через Вас можно? И сколько это будет стоить?

Просто у нас туго с этим делом.

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

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

Сообщение Andrey_B » 04 июн 2011, 11:17

Согласен, с точки зрения подачи информации автор проделал большую работу.
Я себе заказал несколько ENC28J60. Придут в конце июня. Как получу, могу поделиться.

boban_
Сообщения: 12
Зарегистрирован: 30 апр 2011, 19:59

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

Сообщение boban_ » 04 июн 2011, 11:22

Спасибо.

THK
Модератор
Сообщения: 588
Зарегистрирован: 18 мар 2011, 19:00
Откуда: Серпухов, МО

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

Сообщение THK » 04 июн 2011, 12:28

Я себе заказал несколько ENC28J60.
А об ATMega328 не думали? В каком то магазине видел в корпусе DIP-28.

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

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

Сообщение Andrey_B » 04 июн 2011, 14:19

THK писал(а):
Я себе заказал несколько ENC28J60.
А об ATMega328 не думали? В каком то магазине видел в корпусе DIP-28.
Да, думал, конечно. Atmega328 дороже совсем незначительно (на 30-40 руб), но в ней вдвое больше флеш-памяти и SRAM. Жаль только по-прежнему 1Кб EEPROM.
Думаю, второе устройство можно будет попробовать собрать на ней.

THK
Модератор
Сообщения: 588
Зарегистрирован: 18 мар 2011, 19:00
Откуда: Серпухов, МО

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

Сообщение THK » 05 июн 2011, 16:41

Андрей, пара мыслей, на Ваше рассмотрение...

На странице конфигурации пина, если назначить пину функцию "Out" и пощелкать On/Off, неудобно возвращаться на главную страницу. Будет полезно видеть на ней ссылку "Back".

Также полезно иметь возможность настройки состояния выходов в момент включения питания. Сейчас все выходы, в момент включения устройства, имеют состояние "0". Если к ним подключены оптроны + симисторы, все нагрузки включатся. Это может быть не допустимо, в некоторых случаях.

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

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

Сообщение Andrey_B » 06 июн 2011, 12:00

THK писал(а):На странице конфигурации пина, если назначить пину функцию "Out" и пощелкать On/Off, неудобно возвращаться на главную страницу. Будет полезно видеть на ней ссылку "Back".
Согласен.
THK писал(а):Также полезно иметь возможность настройки состояния выходов в момент включения питания. Сейчас все выходы, в момент включения устройства, имеют состояние "0". Если к ним подключены оптроны + симисторы, все нагрузки включатся. Это может быть не допустимо, в некоторых случаях.
Я не совсем понимаю почему должны включиться нагрузки при включении устройства.
Но вот, что действительно было бы не лишним - это запоминание текущего состояния выхода в EEPROM. Это то, чего мне так не хватает в 1-wire. Сейчас у меня вся информация о ключах дублируется в БД и после выключения/включения питания я, прежде чем запускать автоматические скрипты, восстанавливаю состояние всех ключей из БД. А вот если после выключения и включения устройство само будет это делать - это, мне кажется, большой плюс. Хотя, если поразмыслить, не во всех случаях это необходимо, но в подавляющем большинстве все-таки нужно.

boban_
Сообщения: 12
Зарегистрирован: 30 апр 2011, 19:59

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

Сообщение boban_ » 06 июн 2011, 12:51

Наткнулся на магазин, цены порадовали - http://chipnn.ru/80.php

THK
Модератор
Сообщения: 588
Зарегистрирован: 18 мар 2011, 19:00
Откуда: Серпухов, МО

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

Сообщение THK » 06 июн 2011, 13:31

Я не совсем понимаю почему должны включиться нагрузки при включении устройства.
Светодиод оптрона включен также, как светодиод на PB1.
Следовательно, если при включении устройства, на пине появляется лог. "0" - светодиод загорится, оптрон и симистор откроются и нагрузка включится.
Но вот, что действительно было бы не лишним - это запоминание текущего состояния выхода в EEPROM.
Тоже не плохой вариант. А если сервер по каким то причинам не завелся, а дома никого нет? Может все таки лучше устанавливать пины в заранее заданное, безопасное состояние? А дальше пусть сервер рулит, у него мозгов больше. :)
Наткнулся на магазин, цены порадовали - http://chipnn.ru/80.php
Спасибо!

Boris
Сообщения: 150
Зарегистрирован: 06 июн 2011, 17:35

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

Сообщение Boris » 06 июн 2011, 17:43

Очень похожий проэкт http://ethersex.de/index.php/AVR-NET-IO посмотрите, там много уже реализовано http://ethersex.de/index.php/Feature_Liste исходники https://github.com/tostmann/ethersex

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

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

Сообщение Andrey_B » 07 июн 2011, 23:47

Виктор, оптрон включен не также, как светодиод на PB1.
Оптрон включен от пина на GND через ограничивающий резистор. Оптрон откроется, когда на пине будет 1.
Ссылку "Back" добавил. Исходники по прежней ссылке.

Boris, ethersex, etherrape, кролики... немцы отжигают по полной. ;)

THK
Модератор
Сообщения: 588
Зарегистрирован: 18 мар 2011, 19:00
Откуда: Серпухов, МО

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

Сообщение THK » 08 июн 2011, 00:58

Виктор, оптрон включен не также, как светодиод на PB1.
Оптрон включен от пина на GND через ограничивающий резистор. Оптрон откроется, когда на пине будет 1.
Да, я уже посмотрел в даташите, что ток выхода при лог.1 и при лог.0 вроде-бы равны. Хотя лучше взгляните сами в даташите раздел 28. Electrical Characteristics стр. 303 Notes: 3 и 4.
Просто старая привычка сработала: Если на выход МС надо повесить светодиод, включай от пина на +5в
Видать светодиод на PB1 рисовал кто то с такой же привычкой. ;) Или есть смысл?
И плата уже так разведена, хорошо что не успел вытравить.
И по этой же причине я писал, что выход инверсный...
Короче, умом понимаю, а душа не принимает такое включение. :( Ну что поделаешь...
Ссылку "Back" добавил. Исходники по прежней ссылке.
Спасибо! А я их еще утром скачал. :)

THK
Модератор
Сообщения: 588
Зарегистрирован: 18 мар 2011, 19:00
Откуда: Серпухов, МО

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

Сообщение THK » 09 июн 2011, 17:10

Начал играться с АЦП, команда

Код: Выделить всё

$PC2 = file_get_contents("http://$Address_Eth_Dev/sec/?pt=9&cmd=get");
постоянно дает разный результат (от 0 до 28), независящий от входного напряжения.
Предположил, что считывание результата происходит до завершения преобразования. Посмотрел исходный код main.c (строки 551-561), начал рыть и наткнулся вот на это:
Одиночное преобразование может быть вызвано записью бита ADSC в регистр ADCSRA. Этот бит остаётся установленным всё время, занимаемое преобразованием. Когда преобразование закончено, бит автоматически устанавливается в 0.
Появилась мысль, может правильнее не делать фиксированную задержку, а вместо нее дожидаться аппаратного "сброса" бита ADSC ?
Это позволит сократить задержку до минимума и гарантирует считывание результата, только, после завершения преобразования.

PS Не понял, зачем запускается преобразование в строке 393... И не нашел выбор канала АЦП.

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

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

Сообщение Andrey_B » 10 июн 2011, 00:34

THK писал(а):Предположил, что считывание результата происходит до завершения преобразования. Посмотрел исходный код main.c (строки 551-561), начал рыть и наткнулся вот на это:
Одиночное преобразование может быть вызвано записью бита ADSC в регистр ADCSRA. Этот бит остаётся установленным всё время, занимаемое преобразованием. Когда преобразование закончено, бит автоматически устанавливается в 0.
Спасибо. Так и сделал. Попробуйте.
THK писал(а):PS Не понял, зачем запускается преобразование в строке 393... И не нашел выбор канала АЦП.
Строка 393 - это "уши". На скорость не влияет, но убрал.
Выбор канала действительно прошляпил. Внес изменения в код. У меня работает.

THK
Модератор
Сообщения: 588
Зарегистрирован: 18 мар 2011, 19:00
Откуда: Серпухов, МО

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

Сообщение THK » 10 июн 2011, 12:16

Спасибо. Так и сделал. Попробуйте.
Это Вам спасибо! Попробовать смогу только после 14 числа (!), сейчас программатор недоступен. :( Пора делать свой.

THK
Модератор
Сообщения: 588
Зарегистрирован: 18 мар 2011, 19:00
Откуда: Серпухов, МО

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

Сообщение THK » 15 июн 2011, 19:27

Внес изменения в код. У меня работает.
И у меня, с тактированием от ENC28J60, тоже работает.
Сейчас приступил к изготовлению платы с источником питания на TPS5430. Опробую, выложу схему и печатную плату.
Мой вариант - внешний трансформатор Ethernet, питание на TPS5430 и разводка всех свободных пинов меги на разъём IDC-40 (PB7 и PB1 с джамперами). Предусмотрена возможность установки кварца для CPU. Резисторы и конденсаторы SMD 0805.

foxit
Сообщения: 5
Зарегистрирован: 17 июн 2011, 07:43

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

Сообщение foxit » 17 июн 2011, 07:47

Andrey_B писал(а):Так как форум просматривают самые заядлые, прежде чем публиковать статью поделюсь здесь первыми фотками.

Изображение
В качестве Ethernet-интерфейса используется микросхема ENC28J60
В качестве МК - Atmega168
А можно получить схемы и разводку плат для повторения?
Спасибо

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

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

Сообщение Andrey_B » 17 июн 2011, 12:13

foxit, свой вариант схемы выложил в статье.
Могу сделать дополнительно фотографии обратной стороны платы, если что-то не будет понятно.
Также ждем вариант Виктора с внешним трансформатором.

THK
Модератор
Сообщения: 588
Зарегистрирован: 18 мар 2011, 19:00
Откуда: Серпухов, МО

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

Сообщение THK » 17 июн 2011, 17:23

Также ждем вариант Виктора с внешним трансформатором.
Сегодня спаял и проверил.
CPU & TPS5430 800x600.GIF
CPU & TPS5430 800x600.GIF (73.68 КБ) 39461 просмотр
Прежде всего о питателе на TPS5430... Я в восторге! Для испытания собрал на плате только стабилизатор, нагрузил его резистором 10 Ом и погонял часок, температура TPS5430 около 40 градусов. При работе с собранным устройством, нагрев практически не ощутим. И это против 7805 + радиатор об который можно обжечься!
При монтаже под TPS5430 положил термопасту, но это наверное перестраховка.
Вот архив с печаткой и схемой в хорошем качестве:
CPU & TPS5430.rar
(81.32 КБ) 2436 скачиваний
Не удалось развести 2 цепи, тактовый сигнал с ENC28J60 и INT. Запаяны проводом со стороны проводников.
Нумерация элементов на плате соответствует схеме Андрея, т.к. я сначала сделал и опробовал плату, а потом начал рисовать схему. :)

PS Если интересно, сделаю фотки платы...
PPS Самый первый вариант платы (с питанием на 7805) я выкладывал вот здесь: viewtopic.php?p=457#p457


Добавлено THK. В схеме ошибка: выводы 9, 10, 15 ENC
Последний раз редактировалось THK 03 дек 2011, 20:25, всего редактировалось 1 раз.

THK
Модератор
Сообщения: 588
Зарегистрирован: 18 мар 2011, 19:00
Откуда: Серпухов, МО

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

Сообщение THK » 19 июн 2011, 00:26

Не все оказалось так безоблачно.
При тестировании вылезли некоторые глюки:
Скачут показания АЦП (+- 10 единиц), начал разбираться обнаружил, что происходит ложное срабатывание входов. На данный момент амплитуда пульсаций выходного напряжения стабилизатора около 20 мВ (было около 100), но глюки все равно остались...
Буду рад услышать любые мысли по теме... Очень не хочется отказываться от импульсного стабилизатора.
Вот здесь человек столкнулся с аналогичной проблемой: http://electronix.ru/forum/index.php?showtopic=87360

Ответить