РЕКЛАМА НА ФОРУМХАУС На макетке я тоже подобный алгоритм реализовал. Ключевой момент контролирую частоту включения выхода (раз в 300-400 мс). Но из-за этого не могу повесить действие на длинный клик. Библиотека bounce2.h нестабильно работает, поэтому от неё отказался. Код: // Включаем светильник: if ( digitalRead(BUTTON_PIN_1) == LOW ) { //нажали кнопку if (millis() - previousMillis1 > interval) //проверяю разницу во времени с предыдущим включением { previousMillis1 = millis(); // запоминаем текущее время led1On = !led1On; // если светодиод был выключен – включаем и наоборот digitalWrite(LED_1, led1On); }
Парни, вот я долго ходил вокруг да около, примерялся к ардуинке (ну стоит не стоит брать, вообще) и понял, что стоит) нашел в интернете всё подходящее, НО! как всегда осталось какое то НО внутри меня) хочу веб морду сделать. Почитал о двух вариантах ENC28j60 и, конечно же, w5100. Что из этого посоветуете и почему? и к чему проще примотать сервер? как я понял, в w5100 можно хранить все файлы на карточке, но так и не нашел адекватного ответа как отдавать эти файлы пользователю при загрузки? И возможно ли, вообще, разместить, допустим, целый движок сайта на карте памяти, и чтоб он нормально грузился?
@aiskwad, Почитайте форум по Мега серверу и там кажется на второй странице есть ссылка на буржуйский учебник по этой теме, переводите его с гуглом и всё поймёте.
И еще один вопрос. как правильно прикрутить ардуину к штатной проводке? ну вот допустим я могу удаленно управлять светом с телефона или компа, но и с клавиши окально чтоб я мог выключать и включать. Получается, что нужно к пинам ардуины подключить штатный выключатель, и чтоб в коде фиксировались изменения замыкание-размыкание контактов и, соответственно, включалось реле?
Сложновато что-то я тоже думал что можно обойтись кнопкой (выключатель без фиксации) просто к пину ардуинки прицепив.
В Вашем случае шел разговор о "штатном выключателе", а он монтируется в разрыв силовой (220В) проводки и без промежуточных устройств к ардуино Вы не подключитесь.
У меня все провода от выключателей и розеток в щит напрямую идут, там уже коммутировал. Сделал на всякий случай так как вдруг автоматику какую втыкать буду. Сейчас пока импульсное реле только воткнул 4 выключателя светом в коридоре управляют.
По выключателям есть несколько вариантов, все зависит как вы хотите реализовать. Если надо видить в веб морде состояние в данный момент, то тут надо делать через дуню выключатель в комнате тоже. Это по моему более подходит к варианту умного дома. Остальные варианты я думаю вообще по комнатам нет смысла заморачиватся, а разделить по сегментам (этажам, объектам). И обесточивать целый сегмент.
Возможно, я неправильно думаю, но у меня вот такой взгляд на это. Нужно подключить обычный выключатель в два контакта на разрыв в ардуину. Если было совершенно какое то действие с выключателя, то он проверяет переменную. Если на переменной 0 (выключенно), то меняется на 1 и включается. Так же с веб морды через переменную управлять. пойдет ведь такой вариант?) Возможно, не до конца развернул всё, что хотел донести)
@aiskwad, мне кажется, кроме некоторой задержки срабатывания конечной лампочки вариант вполне себе) Если я правильно понял, что выключатель не напрямую лампой управляет, а через адруину...
Решил новую тему не открывать, поскольку фактически разработки на Ардуино активно обсуждаются только здесь. Вступил в ряды "ардуинщиков",чтобы реализовать контроллер раздельного управления температурой петель теплого пола(https://www.forumhouse.ru/threads/138290/). Заказал MEGA2560, рассыпуху, термодатчики и два сервопривода (на пробу). Жду, размышляю над открывающимися возможностями. Для пробы приобрел UNO и начал экспериментировать. В качестве объекта приложения сил выбрал задачу контроля нормально замкнутого шлейфа (НЗ),. Сразу поставил условие - минимальное энергопотребление при обеспечении контроля, т. е. подавать напряжение в шлейф только перед проверкой его состояния, например, 1 раз в секунду. Собрал простенькую схему: На pin-2 подается напряжение, pin-4 служит для контроля, pin-8 для индикации. До этого программировал только с использованием ОС, с MCU непосредственно не работал. Поэтому сделал для себя "открытие", что контроллер с тактовой частотой проходит по всему циклу loop(), т. е. 16 млн раз в секунду. Пришлось научиться загонять его в сон с частотой опроса датчика. Написал тестовый скетч, в котором реализованы: - проверка перед "постановкой" на охрану - периодический контроль шлейфа с индикацией исправного состояния - индикация тревоги (на светодиоде) - автоматическое повторное взятие на охрану (через ХХ мс при условии замкнутого состояния шлейфа в течение YY мс). На шлейф питание подается с выхода контроллера и только на время проверки состояния, что позволяет собрать автономное устройство на батарейке, подключив к нему радио или GSM модуль. Проверить эффект энергосбережения пока не получилось, т. к. на плате постоянно горит зеленый светодиод "Питание", отключить который можно только выпаиванием. Было бы интересно построить контроллер с автономным питанием, просыпающийся только на период обработки и отправки данных. Имеется ли у кого-нибудь подобный опыт?