Привет, Гиктаймс!
Интерес к «умным домам» появился у меня еще во время обучения в университете, в 2004 году, когда меня не заинтересовали предложенные кафедрой темы дипломных работ. И мы с другом предложили заведующему кафедрой свою тему: «Разработка программно-аппаратного комплекса 'Умный дом'».
Сказать, что я тогда знал слишком мало об умных домах — не сказать ничего.
Меня привлекало само название «Умный дом». Для меня это было какое-то таинство, нечто магическое.
Собранный во время выполнения дипломной работы наш «умный дом» умел мало:
Все устройства, которые собирают информацию с датчиков, а также управляют исполнительными механизмами, мы разрабатывали сами. Данные с датчиков, их обработка и управление исполнительными устройствами ложились «на плечи» программы, написанной в Delphi. О программах, помогающих проектировать и трассировать печатные платы я еще не слышал.
Печатные платы рисовал от руки маркером по меди. Про ЛУТ (лазерно-утюжная технология) не знал ничего.
Собранные нами модули для демостенда нашей выпускной работы я бережно храню как память о наших начинаниях.
С тех пор много воды утекло. Мы перебрали различные технологии и протоколы связи. Знакомились с готовыми решениями для управления «умным домом». Но в итоге решили сами разрабатывать контроллеры для построения программно-аппаратного комплекса.
В данном блоге мы хотим делиться с читателями полезной информацией о ходе разработки наших модулей, рассказывать о возникающих «подводных камнях», отчитываться о результатах работы, и, конечно же, получать обратную связь в виде комментариев к статьям.
Сегодня я немного расскажу, как всё начиналось, а в следующих статьях постепенно актуализирую информацию до текущего состояния наших дел.
С момента окончания университета до 2010 года я с головой ушел в основную работу и «умным домом» заниматься не удавалось.
Если сказать честно, работа не была помехой, просто в голове было очень много идей, которые еще не сформировались в единое ви?дение.
2010 г.
Изначально мы решили, что основным элементом, «мозгом», наших устройств будет микроконтроллер ATmega8.
Коммуникацию между устройствами было решено делать посредством RS485.
Для экспериментов собрали простую платку: ATmega8 + SN75176. Я уже изучил программы для проектирования печатных плат и метод ЛУТ.
2011-2012 гг.
Эксперименты с RS485 проходили с разным успехом. Что-то работало сразу, другие устройства постоянно ловили коллизии на шине.
Достаточно намучившись мы сели думать. После пары месяцев экспериментов с различными протоколами мы решили остановиться на Ethernet'е. Так как изначально мы задумывали модульную архитектуру нашего «умного дома» и комбинированное управление (очень сложно построить аварийно-устойчивую систему используя только централизованный или, наоборот, децентрализованный подход), то первое устройство, которое было собрано — это Ethernet-контроллер, который мы планировали устанавливать в каждый наш «девайс», подобно сетевым картам в компьютерах.
После примерок и тестирования — заказали изготовление плат на заводе, а сборку проводили сами вручную.
Плата Ethernet-модуля.
Ethernet-модуль в контроллере светодиодных лент
В связи с переходом на Ethernet пришлось поменять и микроконтроллер, устанавливаемый в наши устройства. На данный момент мы используем ATmega328.
В качестве сетевого и транспортного протокола для обмена информацией между различными модулями используется TCP/IP. Данные передаются по протоколу прикладного уровня HTTP, что позволяет произвести первоначальную настройку наших устройств посредством обычного браузера с помощью любого устройства (ноутбук, планшет, мобильный телефон).
Таким образом, управлять устройствами можно из любой программы, написанной на любом современном языке программирования, из других наших устройств, оснащенных Ethernet-модулем, а также из любых «девайсов», поддерживаемых формирование и отправку HTTP-запросов.
На данный момент мы озаботились шифрованием трафика и поддержкой протокола HTTPS.
В следующих статьях я расскажу о наших устройствах для:
Благодарю за внимание!
Всех с Международным днём друзей!
Интерес к «умным домам» появился у меня еще во время обучения в университете, в 2004 году, когда меня не заинтересовали предложенные кафедрой темы дипломных работ. И мы с другом предложили заведующему кафедрой свою тему: «Разработка программно-аппаратного комплекса 'Умный дом'».
Сказать, что я тогда знал слишком мало об умных домах — не сказать ничего.
Меня привлекало само название «Умный дом». Для меня это было какое-то таинство, нечто магическое.
Собранный во время выполнения дипломной работы наш «умный дом» умел мало:
- Обнаружение проникновения в квартиру/дом в режиме охраны.
- Управление освещением в полуавтоматическом режиме (учитывались показания датчиков движения, времени суток и предустановленных шаблонов).
- Определение протечки воды в ванной и на кухне.
- Голосовые оповещения с использованием звуковой карты компьютера и голосового движка.
- Уведомление по смс хозяина дома о ключевых событиях (протечка воды, проникновение в дом, отсутствие напряжения 220В).
Все устройства, которые собирают информацию с датчиков, а также управляют исполнительными механизмами, мы разрабатывали сами. Данные с датчиков, их обработка и управление исполнительными устройствами ложились «на плечи» программы, написанной в Delphi. О программах, помогающих проектировать и трассировать печатные платы я еще не слышал.
Печатные платы рисовал от руки маркером по меди. Про ЛУТ (лазерно-утюжная технология) не знал ничего.
Собранные нами модули для демостенда нашей выпускной работы я бережно храню как память о наших начинаниях.
С тех пор много воды утекло. Мы перебрали различные технологии и протоколы связи. Знакомились с готовыми решениями для управления «умным домом». Но в итоге решили сами разрабатывать контроллеры для построения программно-аппаратного комплекса.
В данном блоге мы хотим делиться с читателями полезной информацией о ходе разработки наших модулей, рассказывать о возникающих «подводных камнях», отчитываться о результатах работы, и, конечно же, получать обратную связь в виде комментариев к статьям.
Сегодня я немного расскажу, как всё начиналось, а в следующих статьях постепенно актуализирую информацию до текущего состояния наших дел.
С момента окончания университета до 2010 года я с головой ушел в основную работу и «умным домом» заниматься не удавалось.
Если сказать честно, работа не была помехой, просто в голове было очень много идей, которые еще не сформировались в единое ви?дение.
2010 г.
Изначально мы решили, что основным элементом, «мозгом», наших устройств будет микроконтроллер ATmega8.
Он выполнен по технологии CMOS, 8-разрядный, основан на AVR-архитектуре RISC, потребляет микротоки. За один такт выполняя одну полноценную инструкцию, достигает производительности 1 MIPS на МГц, позволяя достигнуть оптимального соотношения производительности к потребляемой энергии.Богатый набор встроенной периферии. Нас он всем устроил. Заказали сразу 70 штук:
Коммуникацию между устройствами было решено делать посредством RS485.
Для экспериментов собрали простую платку: ATmega8 + SN75176. Я уже изучил программы для проектирования печатных плат и метод ЛУТ.
ATmega8 + SN75176
2011-2012 гг.
Эксперименты с RS485 проходили с разным успехом. Что-то работало сразу, другие устройства постоянно ловили коллизии на шине.
Достаточно намучившись мы сели думать. После пары месяцев экспериментов с различными протоколами мы решили остановиться на Ethernet'е. Так как изначально мы задумывали модульную архитектуру нашего «умного дома» и комбинированное управление (очень сложно построить аварийно-устойчивую систему используя только централизованный или, наоборот, децентрализованный подход), то первое устройство, которое было собрано — это Ethernet-контроллер, который мы планировали устанавливать в каждый наш «девайс», подобно сетевым картам в компьютерах.
Печатная плата, изготовленная с использованием ЛУТ
После примерок и тестирования — заказали изготовление плат на заводе, а сборку проводили сами вручную.
Плата Ethernet-модуля.
Ethernet-модуль в контроллере светодиодных лент
В связи с переходом на Ethernet пришлось поменять и микроконтроллер, устанавливаемый в наши устройства. На данный момент мы используем ATmega328.
В качестве сетевого и транспортного протокола для обмена информацией между различными модулями используется TCP/IP. Данные передаются по протоколу прикладного уровня HTTP, что позволяет произвести первоначальную настройку наших устройств посредством обычного браузера с помощью любого устройства (ноутбук, планшет, мобильный телефон).
Таким образом, управлять устройствами можно из любой программы, написанной на любом современном языке программирования, из других наших устройств, оснащенных Ethernet-модулем, а также из любых «девайсов», поддерживаемых формирование и отправку HTTP-запросов.
На данный момент мы озаботились шифрованием трафика и поддержкой протокола HTTPS.
В следующих статьях я расскажу о наших устройствах для:
- Управления освещением.
- Управления многоцветными светодиодными лентами.
- Сбора информации от датчиков движения.
- Управления электрическим тёплым полом.
- Управления освещением лестницы.
- Multiroom-контроллере.
Благодарю за внимание!
Всех с Международным днём друзей!
Yavanosta
Если можно, пишите о своих устройствах в контексте сравнения с конкурентами, т.к. устройств управления умным домом сейчас уже очень много, как готовых из коробки так и DIY проектов, и просто Ethernet модуль который умеет управлять светодиодными лентами сам по себе не такая уж инновация. Лично для меня актуально сравнение с Z-Wave.
А также:
— в первую очередь на кого рассчитаны эти модули, на профессиональных инсталяторов которые ставят «умный дом» на этапе отделки коттеджа или на конечных потребителей которые могут купить несколько модулей и сделать свою квартиру чуть умнее
— какое требуется питание модулю
— подразумевает ли он управление только через эзернет или может подключаться альтернативный «тупой» выключатель\диммер
— как предполагается его устанавливать в щиток или в стаканы под выключатели?
— какая нужна проводка? По эзернет кабелю к каждому выключателю?
— что с беспроводной связью?
— открыт или закрыт протокол? Есть ли спецификация какие нужно слать куда запросы чтобы управлять модулем из своего приложения
— есть ли готовые библиотеки, для каких языков
— цены
Пока вроде все.
P.S. эту картинку вставляют помоему в каждый пост про умный дом :-)
NetGuru Автор
Спасибо за Ваш комментарий.
Наши модули изначально рассчитаны на профессионалов, которые устанавливают полностью интегрированный комплекс «Умный дом».Отвечу на Ваши вопросы частично здесь, а также буду при описании каждого конкретного контроллера делать сравнения с несколькими существующими аналогами.
Ethernet-модуль питается от 5В.
Сам по себе Ethernet-модуль не может управлять ни светодиодной лентой, ни лампочками, ни собирать информацию от датчиков. Он является составной частью других модулей, предназначенных уже каждый для конкретной задачи. А Ethernet-модуль (далее EM-01) является как бы «сетевой картой» для других модулей. Контроллер управления освещением имеет входы типа «токовая петля» для «тупого» включения света выключателями.
EM-01 устанавливается на плату целевого модуля, как на последней картинке под спойлером «Ethernet-контроллер». Контроллер управления освещением, например, устанавливается в щиток.
В нашей тестовой квартире (мой друг в связи с глобальным ремонтом решил заодно и «умный дом» сделать, и предоставил «плацдарм» для работ) от выключателей к контроллеру освещения идут обычные силовые провода. Но можно кинуть вместо них и витую пару.
В каждый девайс вместо EM-01 можно поставить аналогичный WiFi-модуль или поддерживающий любой другой протокол. EM-01 обеспечивает только получение и отправку данных.
Протокол открыт, управление осуществляется методом GET по HTTP. Именно поэтому мы сейчас и задумываемся над шифрацией передаваемых данных. В тестовой квартире сеть «умного дома» отделена от компьютерной сети и к ней не должно быть прямого подключения. Управление с мобильных устройств возможно посредством web-сервиса, для которого должен быть проброшен порт в закрытую сеть.
Никаких специальных библиотек не нужно. Например, в C# можно использовать стандартный UdpClient.
NetGuru Автор
Yavanosta
Спасибо за ответ!