Программирование газонного разбрызгивателя кажется сложнее, чем нужно? Есть решение на Netduino/Azure/WP7…
Не знаю как вам, но мне иногда кажется, что программирование моего газонного разбрызгивателя – урок тщетности, и я, должно быть, довольно тупой, потому что его программирование не может быть настолько сложным, не правда ли?
Также меня своди с ума то, что в нашем взаимосвязанном мире эти устройства, так сказать, бессловесны. Почему бы им самим не проверять температуру? Почему я каждый раз должен идти в гараж, чтобы перепрограммировать его?
Да, мы не делаем, но есть надежда. Существуют замечательные связанные системы, такие как Cyber Rain, но что в них прикольного? Было бы удивительно, если бы нельзя было построить систему, соединенную с облаком, основывающуюся на Netduino, которой можно было бы управлять c помощью Windows Phone 7!
Майк Линнен (Mike Linnen) сделал именно такую…
Введение в газонный разбрызгиватель. Часть 1
Новой идеей фикс домашней автоматизации стало использование технологии для реализации инициативы «Go Green». Одной из сторон этой инициативы является наиболее эффективное управление ресурсами. Я просмотрел ряд проектов других энтузиастов, которые управляли количеством потребляемого дома электричества или газа. В этом проекте я собираюсь управлять воды, используемом для полива лужайки. В первой части серии статей я собираюсь нарисовать общую картину того, что собираюсь сделать.
Требования
Конечно же, необходимо сформулировать требования, чтобы определить рамки того, что я собираюсь сделать.
- Поддержка до четырех зон полива.
- Возможность вручную включить одну или более зон полива (максимум 4) и заставить их работать заданное время.
- Возможность запланировать включение одной или более зон (максимум 4) в определенное время дня несколько раз в день.
- Возможность запланировать включение одной или более зон (максимум 4) каждый понедельник, среду и пятницу в определенное время дня несколько раз в день.
- Возможность запланировать включение одной или более зон (максимум 4) каждый вторник и четверг в определенное время дня несколько раз в день.
- Возможность такого выключения системы, при котором зоны, включенные по плану или вручную, будут немедленно выключены и не включатся в запланированное время.
- Возможность выполнения всех этих требований удаленно.
- Не включать разбрызгиватель, если по прогнозу ожидается дождь (Go Green).
- Не включать разбрызгиватель, если почва достаточно влажная (Go Green).
- Возможность автоматически перевести часы при переходе на летнее время.
...
Разбрызгиватель
Я использую Netduino Plus в качестве микроконтроллера, управляющего моими разбрызгивающими головками. Я выбрал это устройство, так как для его программирования применяется .Net Micro framework и он имеет на борту контроллер Ethernet, с помощью которого можно легко подсоединиться к моей локальной сети. Можно легко использовать любое другое устройство для управления разбрызгивателями, если оно сможет управлять HTTP-сообщениями и имеет достаточно средств ввода-вывода для взаимодействия с остальным оборудованием.
Это устройство отвечает за следующее:
- Следит за расписанием и включает разбрызгиватели
- Четыре цифровых канала вывода
- Встроенные часы для определения наступления времени полива
- Следит за HTTP JSON-запросами, приходящими от Windows Phone
- С этим прекрасно справляется бортовой Ethernet
- Следит за HTTP JSON-запросами, приходящими от сервиса погоды, сообщающего о вероятности дождя
- С этим прекрасно справляется бортовой Ethernet
- Следит за HTTP JSON-запросами, приходящими от сервиса времени, сообщающего о необходимости перевода часов
- С этим прекрасно справляется бортовой Ethernet
- Спросить при включении сервис времени о правильном времени
- С этим прекрасно справляется бортовой Ethernet
- Слежение за кнопкой «Выключить» и организация цикла по режимам работы распылителя Выключить/Ручное управление/По плану
- Один цифровой ввод
- Желтый светодиод (LED) включается в режиме ручного управления
- Один цифровой выход
- Зеленый светодиод (LED) включается в режиме управления по плану
- Один цифровой выход
- Слежение за влажностью почвы (Замечание: я еще не изучил, как работают эти сенсоры, поэтому эта часть может измениться)
- Один аналоговый ввод
- Продолжение программ ручного управления и управления по плану, так чтобы переключение состояния не меняло программ
..."
Демонстрация газонного разбрызгивателя. Часть 2
Вот видео, которое демонстрирует, как работает система газонного разбрызгивателя.
Вот несколько снимков из документации.
И даже очень интересная и полная презентация
Наконец, снимок решения (Замечание. Вам потребуется бета-версия [я использовал RC1] .Net MicroFramework 4.2, которую можно скачать с https://netmf.codeplex.com).
Если вы интересовались, как сделать собственную подключенную систему полива газона, эти два сообщения станут отличным местом для начала работ.
Вот несколько ссылок, которые могут оказаться интересными: