В этой теме http://forum.amperka.ru/threads/arduino-yu%CC%81n-%D0%9D%D0%B0%D1%80%D0%BE%D0%B4%D0%BD%D1%8B%D0%B9-%D0%BC%D0%BE%D0%BD%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%BD%D0%B3-%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-%D0%BE%D1%82%D0%BE%D0%BF%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%D0%BC-%D0%B2-%D0%B7%D0%B0%D0%B3%D0%BE%D1%80%D0%BE%D0%B4%D0%BD%D0%BE%D0%BC-%D0%B4%D0%BE%D0%BC%D0%B5-%D1%87%D0%B5%D1%80%D0%B5%D0%B7-%D0%98%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82.4098/ я кратко описал систему и обещал выложить код. На днях разбирался в старых поделках, нашел девайс и вспомнил про обещание. Прилагаю код и фотографии устройства. Описание задачи: Необходимо было обеспечить полив на даче по команде через интернет. Плюс хотелось бы понимать необходимость полива(т.е. видеть в динамике как минимум температуру и количество(интенсивность осадков)). Поливать нужно было из бочки с дождевой водой в в бочки с грунтом, в которых растут огурцы. Весь полив хотелось сделать полностью независимым от сетевого напряжения(т.е. не завязываться на наличие 220в). Для этого была реализована следующая схема: - источник питания - старый автомобильный аккумулятор - насос - т.е. яхтный насос для откачки воды(питается от 12в, потребляет около 2.5А, способен поднять воду примерно до 4-5 метров). В случае перепад высот был максимум 1м - контроллер собран на esp8266 - информацию о температуре получал с bmp180 - информацию о количестве осадков с датчика http://www.aliexpress.com/snapshot/6590879632.html?orderId=66667267003238 - для обмена информацией использовал связку mini3G роутер + 3G модем Все кроме насоса есть на фото. Данные передавались на thingspeak.com, команды на полив забирались с https://thingspeak.com/apps/talkbacks Краткое описание контроллера: На плате контроллера успановлена esp с обвязкой (пару кнопок для ресета и перевода в режим программирования, делитель для ADC ). Два DCDC преобразователя: один для питания esp 3.3в, второй для питания роутера и модема 5в(на этом преобразователе есть вход управления - т.е. я могу его включать по мере необходимости). Плюс реле для управления насосом. Плюс разъемы датчиков, взод питания, USB для роутера и разъем для коммутации насоса. Алгоритм работы примерно такой: раз в 15 минут esp получает c bmp180 значения температуры и давления, плюс считает "тики" с датчика дождя. После этого запускает второй DCDC преобразователь(т.е. активирует роутер и модем), выжидает некоторое время, необходимое для загрузки роутера и модема, подключается к нему, передает данные(температуру, давление, напряжение на аккумуляторе, количество осадков, объем свободной оперативы, количество ошибок соединения и передачи, наличие перезагрузок устройства)на thingspeak.com, забирает с talkbacks команды. Если команды есть - то выполняет их. Комадна - это число, которое указывает интервал в секундах на которой необходимо включить насос. Плюс два числа(999 и 998) выделено для удаленного ресета устройства. Во время выполнения команды на полив Еспэха считывает 4 значения напряжения: 1. до включения насоса 2. после включения насоса 3. перед выключением насоса 4. после выключения насоса и передает их на thingspeak.com после исполнения команды. По эти напряжениям я могу косвенно понять насколько полно отработал насос. (насос с поплавком защиты - поэтому он может не включиться или выключиться раньше если уровень воды низкий) Все прошлое лето данный девай отработал на ура, без глюков и прочих проблем. Позже я переписал код для обмена информацией уже со своим сервером(thingspeak все же имеет кучу ограничения), сделал свою вебморду.