Всем привет. Тоже хочу поделиться небольшим опытом создания полезной фигни «из г и палок»©.
Последнее время на муське стали массово появляться обзоры разных микроконтроллерных штучек от разных рукастых товарищей. Давно мечтал что-нибудь помикроконтроллировать, но вот реальной цели не было. В конце концов, после очередного обзора твердо решил: надо поднимать свою самооценку.
Перефразируя старый анекдот
Теория – это когда известно как, но ничего не работает
Практика – это когда все работает, но никто не знает как
ЗДЕСЬ мы объединяем теорию с практикой: ничего не работает и никто не знает почему…
Микроконтроллеры – это там, где совмещаются паяльник и программирование. Поскольку сам я имею маааленький опыт в паянии и еще меньший — в программировании, я покажу, что можно сделать с микроконтроллерами практически без паяния и без программирования!
Для начала, я сел «изучить вопрос». У меня было общее (скромно) представление о МК, поэтому стал собирать частности…
В моем детстве были популярны программистские байки.
Вот одна из множества, поясняющая, зачем что-то изучать перед тем как делать:
Жили в общежитии в соседних комнатах два аспиранта. Один из них занимался какими-то вычислениями (назовем его Математик), а второй (назовем его ИТшник) – обслуживал институтскую гордость (что-то типа
БЭСМ6). Необходимое отступление – в те времена компьютер был… ну… ну как сегодня –
Токамак: все знают, что он существует, но мало кто может запустить на нем свой проект.
Так вот – у Математика была работа – обсчет нескольких страниц каких-то данных. У ИТшника – был доступ к вычислительной машине. Логично, что Математик, по-соседски, попросил ИТшника просчитать свои данные на машине. ИТшник – за пару ночных дежурств, ввел данные, забил алгоритм, обсчитал и распечатал результат: несколько колонок цифр на длинном рулоне бумаги. Две ночные смены сэкономили Математику несколько месяцев работы с
железным Феликсом!… Через пару дней ИТшник, проходя мимо комнаты Математика, увидел, что тот сидит над знакомым рулоном распечатки и что-то дописывает к колонкам цифр. Зайдя к другу, он увидел, как тот рядом с каждой цифрой дописывает ее синус и косинус, используя
Таблицы Брадиса.
После того как ИТшник обрел дар речи, он спросил – ??? (нецензурщина опущена). На что Математик пояснил – оказывается он НЕ ЗНАЛ, ЧТО ЭВМ УМЕЕТ ВЫЧИСЛЯТЬ ТРИГОНОМЕТРИЧЕСКИЕ ФУНКЦИИ…
С момента прочтения этой притчи я, перед тем как начать пользоваться чем-либо, сначала стараюсь выяснить возможности этого «чего-либо».
Пропускаю большую часть своих исследований возможностей ардуины и момент перехода поисков в плоскость esp8266. Главное, что в конце концов я оказался на странице проекта
Homes Smart.
В данном проекте нам не придется программировать. И почти не придется работать паяльником: как и большинство проектов с ардуиной – все соединения можно выполнить на
дюпонд-проводах). Почти, т.к. модули и датчики приходят от китайцев без припаянных гребенок – потребуется сначала их впаять. Вот так приходит от китайцев:
Но паяльником нужно будет поработать один раз – можно собрать все скопом и попросить какого ни будь рукастого ремонтника.
Некоторые возможности проекта (помимо метеостанции) постараюсь описать в конце обзора. Тут только скажу, что часть возможностей проекта – платная. «Аж» 100руб на каждый модуль esp. Но для метеостанции вполне достаточно бесплатной версии.
ЕСП-шки пришли к новому году. Датчики пришли еще раньше, по ходу дела дошли и прочие железки. Поскольку все праздники стояла «отличная» погода – морозы за -20 с ветром – я, в перерывах между праздничными возлияниями, стал реализовывать задумку.
Процесс прошивки модуля подробно описан как на странице проекта, так и в
предыдущих обзорах. Не буду повторяться (итак обзор получился тяжелым), тем более, что прошить модуль можно не только
UART-переходником, но и ардуиной (причем не единственным способом).
Итак – цель: собрать домашнюю метеостанцию, передающую показания на
narodmon.ru
Берем модуль esp8266. Модулей этих несколько версий. Наиболее часто встречающиеся:
esp-01
Версия имеет малое количество портов (ограничение в расширении функционала) и стандартно 512к памяти (впрочем – скорее всего памяти будет 1м). Зато он дешевле других и имеет гребенку для соединения.
esp-07
У 07 антенна керамическая + есть разъем для внешней антенны. Если актуально – берем его. Памяти 1М или (скорее всего) 4М.
esp-12
От 07 отличается печатной антенной и чуть меньшей ценой.
Для просто метеостанции – подойдет любой. Я выбрал esp-12.
Модуль питается от 3,3в. Подача на него 5В может вывести его из строя. Для питания были заказаны
стабилизаторы (ну или в местных магазинах поискать). Пока они не пришли – я питал модуль от 3,3 выхода ардуины.
Можно воспользоваться готовым
стабилизатором, или
регулируемым стабилизатором
А можно взять
модуль esp-12, уже установленный на переходную плату со стабилизатором питания, интерфейсом для прошивки и гребенкой (с учетом всех наворотов, необходимых для отдельного esp12 – наверное еще и дешевле получится). В каментах подсказали
другой вариант — дешевле.
Взяв паяльник в руки понял, что зрение уже не то :( Гребенку к ардуине припаивал практически на ощупь. А когда взял в руки esp12 – так чуть не побежал искать мелкоскоп… Паяться к ней без оптики для меня оказалось нереально. Для решения этой проблемы (а также для того чтобы можно было пользоваться дюпонд-кабелями) – были заказаны
модули-переходники
Припаять esp12 на переходник оказалось проще чем я думал – площадки переходника залужены и нужно только намазать площадки esp каким ни будь флюсом, выставить ровно и прикасаться к луженым площадкам тонким жалом. Не забыть смыть флюс. Вот что получилось у меня:
Переходник, помимо гребенки, имеет площадку для установки стабилизатора. К сожалению – площадка рассчитана на какой-то другой стаб (с другим расположением выводов), поэтому заказанные мной 1117 пришлось припаять немного колхозно. Ну и, чтобы припаянный стаб заработал, надо удалить перемычку (просто смахнуть паяльником средний резистор на лицевой стороне). Работает! Я добавил еще один пин в проходное отверстие – для вывода 3,3в на внешние потребители. Вот что получилось (3.3 выход – красный провод не в общем ряду):
На случай, если меня читают старшие товарищи, да, я знаю, что стабилизатор питания требует, чтобы рядом с его выводами стояли конденсаторы. Керамика и электролит. Просто я в хламе не нашел ничего подходящего, поэтому оставил так. Все работает, но конденсаторы я все еще ищу и припаяю обязательно.
Для того, чтобы все соединить, нам понадобится
комплект проводов и, желательно,
монтажная плата
Подключаем модуль согласно схеме, скачиваем прошивку (в зависимости от размера памяти на нашем модуле (как определить — есть на странице проекта) и заливаем в esp-шку любым способом. У меня прошивка не залилась с первого раза – пришлось сначала залить бланк («пустой» набор, как бы затираем старую прошивку – вся инфа есть на странице проекта), а потом прошить еще раз – успешно.
После прошивки заходим на модуль в safe-mode и настраиваем подключение к роутеру (все по инструкции со страницы проекта), выставляем логин-пароль. Все. Остальное можно настроить потом. На всякий случай выключаем safe-mode и включаем модуль – он должен подключиться к роутеру и быть доступным по адресу, который ему выдаст роутер. Если все подключается – разбираем «прошивочную» схему и начинаем собирать метеостанцию. Если у вас модуль не 01, то просто читаем со схемы на странице проекта название контактов и находим такие же на своем модуле.
Для метеостанции нужны датчики. Как минимум – датчик температуры. Прошивка может работать с классическим
далласом
Для его подключения потребуется резистор. На схеме проекта — 1,5кОм. По даташиту 4,7кОм (цена – копейки, валяется у каждого радиолюбителя в хламе). У меня работает 1,5. Если полистать форум проекта — то многим приходиться подбирать резистор, в зависимости от длины и качества кабеля до датчика.
Но можно взять готовый
датчик с резистором
Можно добавить
датчик влажности.
Кстати, в нем встроен и датчик температуры, так что можно одним этим датчиком мерить два параметра. Только встроенный датчик температуры – очень неточный.
Ну и, если мы претендуем на звание метеостанции, добавим
датчик давления.
В нем тоже встроен датчик температуры, но датчик давления не рекомендуют выкидывать на улицу – т.е. давление (и температуру) он будет измерять в комнате.
Я к этим трем датчикам добавил еще один датчик влажности – для замера влажности в комнате (для второго датчика требуется платная версия прошивки).
Итак – датчик температуры и влажности припаиваем к длинному кабелю (я использовал 4-жильный телефонный шнур – метров 7). Можно и не паять, но соединение без пайки на открытом воздухе быстро окислится. Впрочем – даже паяное соединение лучше чем либо защитить (лаком, термопистолетом, эпоксидкой итп – главное не попортить датчики). На другой конец кабеля припаиваем куски разрезанного дюпонд-кабеля. Кабель я выбросил за окно прямо через створку (летом может что-нибудь придумаю)
Еще два куска дюпонда припаиваем к тому, чем будем питать нашу конструкцию (я припаял к миниУСБ разъему, и питаю все от телефонного зарядника). После чего – паяльник можно убрать обратно на антресоли.
После подключения всех датчиков, проверяем все еще раз. Особенно убеждаемся в правильности соединения цепей питания. Включаем.
Подключаемся к нашему модулю по адресу, который выдал ему роутер (см в настройках роутера. Лучше сразу, там же в настройках dhcp, выдать модулю постоянный адрес, чтобы не искать его каждый раз после перезагрузки). Переходим по ссылке Hardware и выставляем галочки согласно подключенным датчикам. У меня так:
Нажимаем Set и затем возвращаемся на main.
Все, наша метеостанция работает. На главной странице увидим показания наших датчиков.
Но, если мы желаем отправлять данные датчиков на всеобщее обозрение, переходим в Servers. Включаем галочку на narodmon.ru.
Теперь данные с датчиков будут отправляться на сервер народного мониторинга. Предварительно регистрируемся на народмоне по
инструкции (раздел Справка вверху страницы), находим свои датчики и настраиваем видимость. Все, теперь можно видеть свои данные на карте, строить графики по переданным показаниям, сравнивать свои показания с «соседними» (если такие есть) и пытаться прогнозировать погоду.
Поигравшись с таким вариантом станции, я понял, что мне не хватает локального отображения показаний. Благо, проект поддерживает ряд экранов. У меня под рукой оказался
1602 (16 символов * 02 строки)
Сразу скажу – экраном я не удовлетворен. На него помещается максимум 4 показания, и то не без ущербности. Я вывожу на него время (да – встроенные часы синхронизируются через интернет), давление, температуру за бортом и влажность. Температура и влажность в комнате – остались без контроля :( Заказал себе экран
2004 – 20 символов * 04 строки, но он еще едет.
Для подключения экрана потребуется
контроллер (он одинаковый для 1602 и 2004)
Контроллер также потребует пайки к экрану (ну я паяльник не убирал далеко. А если кто будет повторять – не забудьте про это). Подключил – все отлично, кроме яркости экрана. Она избыточна (особенно для темной стороны темного времени суток). На плате контроллера экрана есть перемычка – отключающая подсветку. Решил поставить туда ключ и управлять им
датчиком движения.
Данный датчик также неоднократно обозревался на муське. Основное — он питается от 5в (и выше), но управляющий сигнал – 3,3в. Попавшиеся под руку MOSFETы не открывались от 3,3 :(. И я рискнул поискать что-нибудь в хламе. Попалось что-то типа КТ817 (думаю, и КТ315 подошел бы, но у него ноги не удобные для дюпонд-кабелей). На базу подал сигнал с датчика движения, а эмитер-коллектор подсоединил вместо перемычки (кого куда – методом научного тыка, хотя можно было и вызвонить где на перемычке плюс, а где минус, но это дольше :)
В результате получил бонус – транзистор из-за большого сопротивления перехода (или из-за неполного открытия) снизил яркость экрана до приемлемой. Теперь экран работает отлично: при сработке датчика движения показания в меру яркие и читаются легко.
Вот, в таком виде станция работает у меня с новогодних праздников. Историю показаний можно посмотреть
тут.
Кстати, важный момент. Если сравнить показания в солнечный зимний день с показаниями соседних станций (например, 21 января), можно заметить, что мои показания – ниже (реальная температура в январе у нас была только отрицательная). Все потому, что «соседские» датчики просто нагреваются солнцем. Я же учел этот момент – по уму датчик надо монтировать в тень, но не всегда это возможно. Я просто сделал из фольги короткий тубус и закрепил датчики внутри:
Конструкцию к лету думаю усовершенствовать: сделать два тубуса один-в-другом с защитой от осадков и с инжекцией циркулирующего воздуха. А так же – перенести подальше от стены дома (соседи снизу открывают форточки, что заметно влияет на показания)
Так же в планах добавить
LED индикатор для индикации часов – чтобы считывать показания на расстоянии.
Ну еще есть идея сделать проекцию часов на потолок, но придется искать подходящую линзу (наличные
кредитки-френеля слишком длиннофокусные).
Ну и в конце, как обещал, кратко расскажу, что же еще можно подключить к этому модулю и какие задачи он может решать (полный список см на странице
конструктора прошивки):
— Различные датчики температуры, влажности, давления, освещенности.
— Дисплеи, помимо описанного мной – семисегментные, ОЛЕД, ТФТ
— АЦП (например – мерить влажность почвы)
— RC приемник и передатчик 433 и 315 МГц (да-да, открывать ворота и не только)
— ИК приемник и передатчик
— ФМ-радио (не знаю как оно сюда попало, но есть)
— RTC (часы с независимым ходом. То, о чем уже полвека мечтают все владельцы микроволновок)
— Управление выключателями
Livolo
— Отправка СМС
— Бегущая строка (
лучше один раз увидеть)
— Работа с прерываниями
— ШИМ
— Обновление прошивки через интернет (после первой прошивки вам не надо больше подключать программатор)
— Термостат (поддержка температуры или влажности)
— Календарь и часы с синхронизацией через интернет, ну и программированием событий по времени и дням недели (в будни включаем кофеварку в 6 утра, в выходные – в 12)
— Чтение и управление состоянием портов (подключаем переключатели и/или реле – поливаем огороды итп)
— Конструктор кода (кому нужно делать что-то что не умеет прошивка)
— Логический модуль (программируем действия простой логикой без знания языков программирования)
— «кнопки» на главной странице модуля для управления портами (если надо полить огород не по расписанию)
— Берет прогноз с гисметео (в демонстрации бегущей строки данные из него)
— Может передавать данные и управляться с разных сервисов (сам не пользовался, но в описании выглядит красиво, например
тут и
тут
— Наверное еще что-то, о чем я забыл или понятия не имею.
Вывод. Модуль отличный! Вариантов применения – уйма. Цена – копейки (даже с умирающим рублем). Описанный проект позволяет на основе этого модуля, без знания даже основ программирования и с минимальными навыками пайки, собрать и настроить под свои нужды много интересных и/или полезных вещей. Автор проекта активно его развивает и общается в форуме проекта. Без устали отвечает на вопросы, берется за реализацию новых фишек (если они укладываются в концепцию проекта).
Минусы проекта – это продолжение его плюсов (и наоборот): платная версия «про». Закрытый код.
Рекомендую. Рекомендую как модуль esp-12, так и прошивку проекта
homes-smart.ru
Еще несколько фото общего вида и датчиков которые стоят в комнате
Если кто-то смог дочитать обзор до сюда, то вот небольшой бонус
Роберт Хайнлайн «Дверь в лето»
… Еще будучи пушистым котенком, Пит выработал для себя простую философию, согласно которой Я отвечал за жилье, еду и погоду, а ОН – за все остальное. За погоду он взыскивал с меня особенно строго, а зимы в Коннектикуте хороши только на рождественских открытках. Этой зимой Пит регулярно инспектировал свою дверь, но не выходил через нее – ему не нравилось белое вещество, покрывающее землю, и он начинал приставать ко мне, требуя открыть ему большую дверь…
PS Еще раз огромное спасибо всем тем рукастым товарищам, которые пилили обзоры по микроконтроллерам и прочим проводкам-лампочкам. Именно вы заставили мою самооценку победить мою лень :)
Upd 29.01.16
Пришли экранчик и матричные дисплеи. Не удержался, в один присест запаял гребенки и побежал испытывать…
OLED экранчик, размером маааахонький…
И еще такое:
Матричный дисплей. Соединяется в цепочку до 10шт.
Upd 30.01.16
По просьбам, замерил энергопотребление. Сначала USB-доктором, получил 0,08А по 5в. Подозрительно мало, пришлось опять рыться в хламе – нашел Ц-шку типа DT830. Замеры (все по 5В):
Вся система в целом (практически независимо от включения подсветки экрана: 0,08А (всетаки доктор не врал)
Экран и датчик движения: 0,0084А
Upd 17.02.16
Пришли
семисегментные экранчики. Выглядят вот так:
Блинк на форуме проекта обсуждают. Для чисто метеостанции смысла не вижу (у народмона есть виджеты — вполне достаточно). Вот если расширять функционал до умного дома, то можно и подумать. Пока у меня на очереди проектик на ардуинке.
При использовании блока питания с не очень хорошей фильтрацией при сканировании 1wire шины возникали ошибки из-за помех. При батарейном питании проблем не наблюдалось.
Сейчас увеличили время опроса и добавили несколько циклов — всё ОК.
Но конденсатор, параллельно 3,3в лучше ставить побольше… ;)
Подпорку сейчас вроде бы поставили, но эта проблема, скорее всего, через некоторое время опять вылезет не в поиске устройств на шине, так в другом месте.
Я считаю, что если не нашли причину — то и не «починили».
ПС: двойное сканирование сделано согласно даташиту… Т.е. это предусмотрено стандартом.
Это только для ESP актуально? Или для Ардуино тоже?
Ардуино большинство версий имеют стабилизатор питания уже на плате и могут питаться от 5-30вольт
Выше писали «Но конденсатор, параллельно 3,3в лучше ставить побольше…» и «имею ввиду установка соотвествующих емкостей по питанию против ВЧ помех».
Я хотел уточнить про этот момент. Конденсатор нужен в качестве фильтра питания? В каких случаях он нужен и нужен ли он для Ардуино?
ардуино работает на совсем других частотах и в совсем других условиях (она же не является источником-приемником вч излучения :) ). кроме того — на плате ардуины уже есть стабилизатор питания, и, какправило, он уже обвешан электролитами и керамикой. Не факт, что с избытком, но по крмере я о сбоях на ардуинах не слышал (но я и не большой специалист так то),
Я для себя не могу подобрать какого-то универсального решения. Вот подумываю взять такой БП для тестов.
— БП на 3.3В
— Литиевый аккумулятор 3.7В напрямую (уже несколько месяцев все нормально)
Спасибо. Но это я уже знаю. Тут как раз суть в том какой БП взять. Тот что я представил по ссылке, я хочу взять как универсальное решение. Я ставлю его в одном месте и от него развожу провода. Не хочу чтобы было 100500 БП. Или же это неправильное решение?
Подобный БП (как у вас по ссылке) у меня года 4 (см один из первых моих обзоров про светодиодную ленту) работает без сбоев.
Если говорить про один БП на всё — то самый важный минус — если сгорит один БП — перестанет работать всё.
Опять же — я не специалист, просто рукам скучно
Ну и иногда 10 метров нормального провода стоят дороже чем блок питания. А уж ка неэстетично лишние провода в квартире смотрятся.
Ну и цена 10м кабеля 0.5мм2 ~ 120 руб, что соизмеримо с дешевым зарядником на 5В. Про кабель большего сечения я вообще молчу.
Расчет по низкому напряжению.
Сечение 0.5мм2, длина 10м, ток нагрузки 1А. Падение напряжения будет составлять 0.7В.
При напряжении питания 12В на потребители будет 11.3В, потери меньше 6%
При напряжении питания 5В — 4.3В — 14%
Линейному стабилизатору типа LM1117 на 3.3В требуется минимально порядка 1В разницы между входом и выходом, то есть 10м это предел. Для 0.5мм2
Ну и цена 10м кабеля ШВВГ 0.5мм2 порядка 120руб. В чем смысл?
P.S.Кстати, если хотите хороший мощный БП 5В + 12В — берите старый компьютерный.
А про провода написал в ответ на ваше: «А уж ка неэстетично лишние провода в квартире смотрятся». На мой взгляд — лишние провода смотрятся неэстетично независимо от протекающего по ним напряжения. :)
https://aliexpress.com/item/item/HLK-PM03-AC-DC-220V-to-3-3V-Step-Down-Buck-Power-Supply-Module-Intelligent-Household/32597595801.html
Хватит всю обвязку запитать.
У них есть и в 5в исполнении
https://aliexpress.com/item/store/product/Free-Shippingn-HLK-PM01-AC-DC-220V-to-5V-mini-power-supply-module-intelligent-household-switch/1084082_32258088214.html
Думал взять на 5 и потом через такие опустить
https://aliexpress.com/item/item/10pcs-AMS1117-3-3-AMS1117-LM1117-1117-3-3V-1A-Voltage-Regulator/32348815272.html
Но смысла не увидел.
Есть и плюсы и минусы в таком решении (как впрочем — в любом решении :) ). Например, при выходе из строя такого БП — потребуется его замена. При выходе из строя зарядки от телефона — оно меняется на аналогичное за 5сек.
Получается цена соизмеримая с ESP,
nRF24 в разы дешевле, конечно.
У ESP контроллер мощнее Ардуиновского
Вот только для esp уже есть готовая прошивка с wi-fi, а у nrf нет ни того, ни другого.
Одно что, есть же NRFки с контролером на борту.
Как-то так.
Тоже с такими датчиками баловался, но очень хочется нормального контрастного большого экрана с нормальными пиктограммами. Мечта — подрубить от читалки E-INK экран к ардуино, но это пока только мечта. Там очень не тривиальная работа с ним. Такто на али полное eink экранов 800x600, вот только примеров работы с ними ноль (((
Устроила бы IPS панель (хоть и придется запитать от сети), но блин — там LVDS, который тоже к ардуине хрен прикрутишь.
Можно, конечно, тупо книжку по wifi приколхозить — были опыты по киндлу, но это как-то не правильно по-моему )))
Хотя — понятно что всегда хочется чего то, а чего есть — не хочется :)
Вроде как нет — там специфичные TFT с драйвером внутри.
А почему EINK так хочется — чтобы станция на аккумах работала, самый малопотребляющий вариант.
Датчики на ESP-шках. Получаем большой контрастный графический экран с минимумом затрат.
…
Следующий этап, выводим на андройд погоду из инета и нафиг эту погодную станцию )))
А про погоду из интернета — мне как-то интересно было сравнить локальный график влажности и температуры с обещаниями гисметео и accuweather — они вообще не попадают — ибо там средняя температура по больнице, про яшу вообще молчу. А локальные датчики показывают что есть тут, а не где-то в среднем :)
Просто, например в Москве, станция находится в Ботаническом Саду, при этом и температура и влажность в Митино или Жулебино могут отличаться :-)
На удивление этот монтаж «на соплях» держится крепко. Можно было ещё клеем зафиксировать.
Чтобы такой порнографии не было, надо вместо AMS1117 применять что-то другое, с иным расположением выводов, но если верить даташиту, на нужный ток из «мелочи» подходит только AMS1117 в таком корпусе.
Если кто-то будет повторять, послушайте моего совета,
спилите мушку!впаяйте диод! Когда крутишь плату то пузом вверх, то пузом вниз, легко спутать «право» и «лево» и воткнуть 5V и GND наоборот. «Волшебный дым» идёт сразу :(Сверху — lm1117, снизу — ld1117.
Я платы сам делаю, так что не уверен, но тут больше ld подойдут, пожалуй…
Проект супер! Это только маленький кусочек возможностей показан.
Отличный кстати обзор!
Смысл закрашивать код города, если я в «история показаний» дал ссылку на свои датчики на карте (нет, не Труда… до труда мне по такой погоде час на машине ехать — у нас тут два дня снегопад.
Но мне ближе вот этот перевод моего земляка (в его-то переводе и прочитал впервые, с тех пор долго искал в электронном виде — книга в его переводе до 2013 не издавалась за пределами Саратова — и не так давно нашел: www.e-reading.club/book.php?book=61239
Там этот абзац звучит немного по-другому, вот так:
Это ЕГО любимая книга
Он ее перевел «для души» и в 1992 году, если не изменяет память, на свои же деньги и издал в Саратове. Такая книжечка формата А6 в тонком бумажном синем переплёте :)
Так что — очень советую именно этот перевод почитать. Когда для души — оно чувствуется :)
Есть Free версия, в ней датчик температуры/давления и температуры/влажности и отправка на сервисы Народный мониторинг и FlyMon. Для быстрого старта и ознакомления — более чем. Если надо больше возможностей, то 100 руб. полностью за функционал, и главное, конструктор, вполне адекватны. А автору — это просто стимул не закидывать на полку, а развивать своё детище.
Я понимаю ваш вопрос. И платил я только потому, что 100р было для меня более чем приемлемо (если внимательно читали, то за 100р я использовал только одну фичу — второй датчик влажности)
Но если объективно, уже после того, как я занялся проектом и стал общаться на форуме проекта — я увидел, что автор отрабатывает эту сотку сто раз. Каждому помогает, новые запрашиваемые фичи реализует быстро (я бы даже сказал — с удовольствием). Часто тычет носом спрашивающих в документацию, где есть ответы, отвечая много раз на одни и те же вопросы. При этом вежлив и терпелив. Я бы так не смог наверное :)
Я сразу купил один ключ на пробу хотя он и не нужен был в том проекте. Но 100р. это уже просто символический жест благодарности.
А WiFi-модуль в пике жрёт больше — его даже не всякий USB-TTL преобразователь запитать способен.
А USB-TTL обычно имеют выход 3.3 В на 20 мА или около того, чего, конечно, для WiFi недостаточно.
Китайцы приучили обменивать их амперы по курсу как минимум два к одному, так что лучше уж мы с погнутым AMS1117 поживём.
Видимо даташиты тоже «от балды» китайцы пишут
муська уже становится таким народным хабром — пора уже администрации что-то с этим делать, поддержать это направление например :)
Я не люблю закрытый код… И всегда предпочту делать что-то на открытой платформе — даже если оно будет менее функционально — это про homes-smart.
А по поводу закрытости кода — есть куча альтернатив, Arduino IDE, NodeMCU и т.д.
Кому-то хочется покопаться в коде, изобрести что-то своё. А кому-то хочется (не жалко) отдать 100 рублей и что-бы работало из коробки сразу. Ну не шарит человек допустим в коде. А хочет тыкать только на пользовательские кнопки. Покажите мне открытый проект, с вебмордой, хотя-бы такой-же как на Homes-smarT. Я например, ничего подходящего не нашел. У себя дома и для друзей использую как прошивку Максима (собрал в конструкторе, прошил, настроил и забыл), которой сможет управлять даже ребёнок, так и свои собственные поделки (firmware).
дело не в 100 руб — а в самом подходе и закрытом коде…
ИМХО, то-же оригинальное хорошее решение. А в дебри низкоуровневые я и сам лезть не хочу.
Про закрытый код — см выше — я вас понимаю. У самого в детстве был проект, в аннотации к которому написано: «Вы можете свободно копировать и распространять данную программу, особенно если от этого получаете выгоду».
Но даже с такой припиской исходники я никому не показывал (стыдно было). И выложил их только после того как проект потерял актуальность.
Но в данном случае меня закрытость кода не напрягала.
Статья отличная, сам нечто похожее потихоньку собираю.
Вот вариант на Али
Искать по названию стабилизатора: AMS1117
А калибровать примененные датчики (точнее — готовое изделие с ними) неужели не требуется?
Может они врут безбожно, а вы им верите! Видите цифирки и думаете что это оно, а на самом деле…
Помню лет так 10-12 назад работал я в фирме выпускающей термогигрометры.
Так с калибровкой целая песня была, да и оборудование специфичное.
С температурой еще более менее, а вот с влажностью да… Часов по 8-12 на цикл калибровки уходило.
Не говорю уж о поверке в РОСТЕСТЕ потом. Да и «плывут» показания датчиков влажности от всех
параметров атмосферы и от времени тоже.
Еще раз, может я чего-то не знаю про примененные датчики? Расскажите, пожалуйста, невеже.
Далассовские термометры имеют цифровой выход. Они, АФАИК, вполне точные (дляданного применения).
Про гигрометр — да, наверняка вы правы про точность. Барометр — также не внушит доверия сектору метрологии (а если еще задать вопрос — какое давление он мерит, абсолютное или приведенное к уровню моря?...)
Так что вопрос ваш вполне уместный, хотя и риторический. Более подробные ответы можно нагуглить по названию датчиков (но ничего нового для себя вы не найдете) — для данного обзора это было излишне (и так урезал все что было не жалко). Но главное — это и не важно. Для прогноза погоды вам не нужно знать значения давления и влажности. Нужно знать тенденцию этих параметров.
Вообще-то — оба. И температуру тоже.
Я ж написал, лет 10-12 назад.
Тогда это не было так доступно и возможно тогда и РОСТЕСТ о них не знал (предполагаю).
Про 10-12 лет… Я сам «сектор метрологии» посещал в 1998 году. Школьником. Сейчас на месте шикарного советского института — торговый центр :(
(справа — резистивный термодатчик, слева — емкостный датчик влажности, микроконтроллер и прочая хрень — с обратной стороны платы.
Кстати, AOSENG выпустил наконец приличные датчики, AM2320, работающие по феншую — по I2P, а не покакому-то непотребному и непонятному протоколу! Это в 100500 раз удобнее.
В качестве сейсмо-датчиков можно акселерометр попробовать использовать. Хотя лучше конечно пьезо датчики вибрации
Так что — спасибо за поправку.
ps Минусы не мои, поправил насколько смог.
Заказал себе паяльник, очень сильно люблю паять, имею опыт.Но в радиоэлектронике полный ноль. Резисторы, семисторы, кондёры — это для меня полный лес, всегда удивляюсь откуда все знают куда и что паять, к каким ножкам, в какой последовательности и т.д. Но мне это всё интересно. Хочу начать с какого-то конструктора типо вашего или ардуино и не знаю с чего старт сделать в данный захватывающий мир. Очень хочу приложить руки к чему-то интересному и познавательному.
Для начала Вам нужен ликбез по электронным компонентам. Найдите сайт начинающих радиолюбителей. Там можно многому научиться.
По поводу что куда… На универсариуме есть неплохой курс для начинающих. В новый год он был открыт бесплатно. Ща попробую ссылку поискать.
universarium.org/course/367
Еще можно этот пройти:
universarium.org/course/496
Ну вот, опять пришлось раскошелиться! =) И самое интересное, что зеленое земноводное опять молчало, как и при заказе модулей M590E GSM обозрятых на этом сайте!
А так слог годный, материал интересный, шутки юмора присутствуют, пиши еще.
Спасибо.
Покупаете Вот это
Используете верхнюю часть, отпаяв лишние светодиод и светорезистор. Плюс получаете usb-ttl конвертор для прошивки.
Сделаю обязательно, вечером. К сожалению из-за погоды у нас на дорогах капец — до дома доберусь совсем поздно.
Отличные платки, и главное, дешевые.
Здесь можете подробнее посмотреть github.com
Если в общих чертах, то датчики либо сидят на общей шине (i2c), т.е занимают один порт (одну ножку контроллера), либо (как датчик влажности) подключаются на отдельные порты (ноги). Вот тут то и будет критично ограничение в количестве ног у esp-01.
www.buyincoins.com/item/9002.html
Но я бы лучше взял готовый модуль, как подсказали в каментах https://aliexpress.com/item/item/ESP8266-serial-WIFI-Witty-cloud-Development-Board-ESP-12F-module-MINI-nodemcu/32590479703.html
А если модуль уже куплен и дело только за прошивкой, то вместо uart-а я предложу взять ардуино нано — она и дешевле, и потом пригодиться чтобы еще с ней поиграться:
https://aliexpress.com/item/item/Free-Shipping-800pcs-dupont-cable-jumper-wire-dupont-line-male-to-male-dupont-line-20cm-1P/1699335351.html
(я именно ей и шил свой модуль. Даже питания 3,3 хватало от нее)
Не надо переходника? Я побывал найти инфу по нему в гугле. Но как-то пусто…
Хочу попробовать для тестов взять модуль, и датчик температуры. И посмотреть смогу ли я хоть что-то сделать… )
Но сейчас попрошу посмотреть лист желаний ) Этого мне хватит для начала? my.aliexpress.com/wishlist/shared.htm?groupId=3103713383
Просто сам набор…
Здесь смотрел в качестве примера создания веб-интерфейса ссылка
Вот здесь еще очень интересный вариант создания веб-интерфейса на темплейтах ссылка
Вот мои студенты на радиокружке заинтересовались, хотят повторить, но интерес что-бы не погас (как у многих), надо что-то быстрое.
И еще вопрос — MQTT сервер только IP указывать, или можно и DNS имя?
Потихоньку пилим свой проект FlyHub, много интересных идей планируем испробовать, в т.ч. и разные прошивки.
Пока только по IP, подумаю как можно сделать по DNS.
Также вопрос: есть ли релюшки для ESP'шки с 2 выходами? Один на плеер, один на усилитель.
www.aliexpress.com/wholesale?catId=0&initiative_id=SB_20160404024333&SearchText=rele+3.3v+module
(там же выбирайте количество релюшек на одном модуле или количество модулей — на ваши потребности)
Например:
https://aliexpress.com/item/item/2-road-relay-module-relay-expansion-board-with-optocoupler-3-3-V-and-5-V-compatible/32452584100.html,searchweb201602_5_301_10034_507_10032_10020_10017_10005_10006_10021_10022_401_10018_10019,searchweb201603_9&btsid=b329b4d1-7403-46ff-b23e-e0c59152a97d
обращаем внимание на то, чтобы реле срабатывало от 3,3в. И чтобы обязательно был оптрон (черная бочка между реле и разъемом на фото товара — с 4 выводами). Еще важно — напряжение питания самого реле (по ссылке там 5в, вам может быть удобнее будет 12в, раз коммутировать будете 12в)
При нагреве внешней трубы воздух поднимается по ней вверх. В месте начала сужения внутренней трубы у проходящего потока начинает падать давление и, у верхнего среза внутренней трубы, давление проходящего потока будет заметно ниже давления во внутренней трубе — воздух из внутренней трубы будет инжектироваться (принцип пульверизатора) и обеспечивать обдув датчика.
Ну а защиту от осадков придумайте сами — посмотрите на вентиляционные трубы погребов и «грибки» над ними. :) главное чтобы «грибок» не сильно «затенял» исходящий поток
По размерам, все ИМХО, но думаю сделать так: внешняя труба 50-ка от канализации. Внутренняя диаметром в 2/3 диаметра внешней. Сильно мелкую нельзя — не будет перепада давления. Сильно большую нельзя — будет влияние температуры внешней трубы. Длина, ИМХО, сантиметров 30 (внешняя). внутренняя на 10 см меньше и сужение 5-7см высоты до половины диаметра… ВСЕ эти параметры я придумал ТОЛЬКО ЧТО, они ничем не обоснованы, просто мне так видится исходя из зачаточных знаний о теории газов и тепломассопереносе… можно например взять отрезок бутылки ,5л для внутренней трубы (она уже заужена) и 2л — для внешней. Ну как вариант для проверки. (только бутылки выглядят неэстетично и не поддаются обработке)
У меня станция на прошивке Макса отработала больше года без единой проблемой. А Максу можно и за бесплатную версию сотку отправить за труды. Благодаря станции и народмону, поставил ТСЖ на место по вопросам отопления в доме.
Это не анекдот. Этот афоризм однажды был высказан А. Эйнштейном.
С ota все реально просто: берем пример Arduino OTA->BasicOTA и предварительно настроив — заливаем в esp через com. И выбираем Инструменты->Upload using->OTA
После этого — перезапускаем АрдуиноIDE, и в Инструменты->Порт — появляется что-то типа «esp at 192.168.0.5» (реально — длиииныый идентификатор).
После чего — прошивку можно заливать через этот порт, но учитывать, что в коде должны быть все строчки из OTA примера: по факту прошивка отвечает за то, чтобы себя перепрошить.
ПыСы: после заливки ota не нужно для прошивки нулевой контакт к земле коротить и жать ресет!
Сразу после чтения заказал комплектующие, пару дней назад собрал. Сейчас думаю над корпусом, и борюсь с ds18b20, в ходе опроса то один, то второй пропадает.
ps А sd карточку не прикручивали? Вроде в прошивке есть «лог на sd». Хотя — зачем он мне — не знаю (дома есть nmt на который моно москиту вкорячить при необходимости) :)
На самом деле — не так уж и подробно. Старался больше рассказать про возможности, чем описать все до мелочей. Мелочи упоминал только такие — с которыми у меня были трудности. А в остальном — надеюсь, что заинтересовавшиеся смогут разобраться с инструкциями на странице проекта. Ну и в каментах стараюсь отвечать все что знаю.
img.mysku-st.ru/uploads/images/original/00/03/37/2016/01/27/0592d0.jpg
e-radionica.com/productdata/XC6206P332MR.pdf
https://aliexpress.com/item/store/product/Power-chip-XC6206P332PR-6206A-6206A33-3-3V-SOT89-CQWYJZ/1459899_32468521611.html
Шить через Nodemcu Flasher или Flash download tool. первый попроще. Но работают оба. При перешивке с чужой прошивки рекомендую прошить сначала бланк (у меня без прошивки бланка ни один модуль не прошился).
Подробная интсрукция есть на странице проекта:
homes-smart.ru/index.php/oborudovanie/bez-provodov-wi-fi/65-proshivka-i-zapusk-modulya-esp8266-s-proshivkoj-homes-smart-ru
Есои под вопросом «чем?» подразумевалось не инструмент, а сама прошивка, то я пробовал только обозреваемый проект. Очень понравилось. Но есть и куча других проектов — достаточно поискать по «esp8266 прошивка». Ну и никто не мешает создать свою. Удачи!
Опять же — галочки зависят от того, что вы собираетесь собирать. Например — если нужно управлять livolvo выключателями, то очевидно, нужно включить соответствующий модуль в прошивке. Я, для подключения разных жкранов, например, включал и выключал разные опции попеременно или скопом. Благо, что на активированном модуле (купленой прошивке) перепрошивка идет по wifi (т.е. без применения программатора).
У wifi-iot рядом с каждой опцией вопросик — ан него нажать, там краткое описание и, обычно, ссылка на более полное описание. В 90% случаев этого достаточно (было для меня). Еще 10% решались через форум проекта (автор отвечает очень быстро). Ну еще совет — когда я исследовал неизвестные опции, я просто копировал (например — номер микросхемы) и искал скопированное на али — и уже по картинке было понятно — что за хрень подключается через эту опцию :)
https://aliexpress.com/item/item/Free-Shipping-1pcs-DS18B20-Stainless-steel-package-1-meters-waterproof-DS18b20-temperature-probe-temperature-sensor-18B20/2036115885.html
Или будет проблема с установкой резистора? Где, кстати, он устанавливается? Рядом с модулем или рядом с самим датчиком.
Или не заморачиваться с влагозащитой и взять такой
https://aliexpress.com/item/item/1PC-DS18B20-Digital-Temperature-Sensor-temperature-Module-for-Arduino/32595492915.html
а потом просто в яйцо от киндерсюрприза затолкать?
Датчик в яйце (яйцо в утке...) сильно повышают инерционность (будет тупить при резких перепадах изменяемой температуры). Чем менее теплоемкая конструкция датчика, тем лучше (в плане инерционности). Обратите при случае внимание на размер датчика в электронных медицинских термометрах.
Опции сделаны для того, чтобы каждый мог собрать свой состав прошивки (все опции разом просто не помещаются в память. Да и по аппаратной части — все скопом включить невозможно (ножек не хватит)
Поэтому, рекомендую, сначала отладить все в железе (см выше — я из-за невнимательности пожег один модуль), а уж только потом активировать ключ (купленный ключ на другой модуль перенести невозможно)
https://aliexpress.com/item/item/1-pcs-MAX7219-Dot-Matrix-Module-For-Arduino-Microcontroller-4-In-One-Display-with-5P/32715620908.html
И еще вопрос. Датчик DS18b20 ниже -44 не показывает, пишет No sensor. А на улице -50. Думал он сдох, но сегодня потеплело и он то показывает температуру то нет, если ниже 43,8 опускается то все No sensor!
Про датчик не скажу. У нас, к счастью, ниже -40 не бывает (тьфу-тьфу-тьфу), да и -40 — явление редкое (хотя -35 позавчера уже было). Надо по даташиту посмотреть — какой диапазон у него, и, если по даташиту -50 задекларировано, значит пробовать менять датчик… Кстати -датчик подключен по 3 проводам? Питание 5В? если нет, то может просто ему не хватает?
homes-smart.ru/index.php/oborudovanie/bez-provodov-433-315mgts
Тоже заинтересовался этой темой.
Но с применением связки «ESP-12F WeMos D1 WiFi», «Arduino UNO» и внешнего приложения.
Рабочее название: «Метеостанция с охранной сигнализацией».
Результат, в целом, удовлетворительный (в рамках поставленных целей).
Если интересно, то можно посмотреть здесь:
roamer55.ru/my_projs/arduino_prj/my_ts/005_step/ex_grp_03/ex_03_001.pdf;
roamer55.ru/main_programming/arduino/arduino_technosphere_000/arduino_technosphere_000_005/
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.