Очередной умный дом, в нескольких частях. Метеостанция из подручных материалов

    Просматривая разные проекты метеостанций, заметил одну тенденцию. Это или датчик температуры и влажности, чаще всего всеми любимый китайский DHT-11 или DHT-22, к которым добавляют либо датчик освещенности (Метеостанция на Arduino с визуализацией данных) либо давления (Ethernet метеостанция), или покупное-навороченное за много сотен долларов (Автоматическая метеостанция на даче)

    Так как лично для меня — метеостанция без измерения направления и скорости ветра не метеостанция, а потратить порядка 700USD на по большому счету игрушку я не готов, то решено было сделать похожее на «дорогое-навороченное» но занедорого.

    image


    Электроника


    1. Датчик температуры — LM35. Включен с возможностью измерения отрицательных температур image
    2. Куда уж без него — датчик влажности и температуры DHT11
    3. Датчик давления — HP03SA
    4. Датчик освещенности — фоторезистор LXD5516
    5. Датчик скорости ветра — обычный датчик Холла


    Теперь о измерении направления ветра. Было много вариантов, от оптических энкодеров — заводских (дорого) или самодельных в виде нескольких пар светодиодов и фотодиодов, и диска с кодом Грея (сложно и много компонентов), до магнита и 4-8 герконов (слишком просто и неточно). В итоге выбор пал на AS5040 – магнитный энкодер. Так как особая точность не нужна, то аналоговый выход энкодера подключен к ADC микроконтроллера.

    image

    Микроконтроллер — PIC16F88. Выход — RS485 в внутреннюю сеть умного дома, о котором этот цикл статей. Вся электронная часть собрана на трех платах.

    image

    На этом с электроникой все, никаких нюансов, ничего интересного, все по даташитам. Переходим к механике.

    Механика


    К сожалению, напечатать корпус на 3D принтере возможности нет, а у заводских корпусов с водонепроницаемостью беда практически у всех. К тому же подшипники и все остальное — тела вращения, значит круглый корпус будет самым логичным выбором. Пришлось обратить взор на другие сферы — на водоснабжение. В качестве корпуса взята соединительная муфта «на 32» для канализации, и два патрубка для размещения в них подшипниковых узлов. Из латуни были выточены две заглушки, в которых запрессованы по два подшипника 626.

    image

    Магниты… Магнит для датчика скорости подойдет практически любой, а вот с датчиком направления было сложнее. Ему нужен круглый магнит с намагниченностью от края до края

    image

    В то время как у основной массы продающихся — разные полюса на разных сторонах.

    image

    Но, оказалось, что нужные магниты находятся на шпинделях двигателей CD/DVD приводов.

    image

    В собранном виде подшипниковые узлы выглядят так

    image

    После изготовления и сборки плат — датчики скорости и направления ветра принимают окончательный вид

    image

    Так как метеостанция все таки из подручных материалов, то для крыльчатки режем теннисные шарики, флюгер тоже мастерим из того, что попадется под руки. Красим в радикально черный цвет, и получается так.

    image

    В качестве датчика дождя так же используем половинку теннисного шарика, в котором между двумя слоями геотекстиля расположены два контакта

    image

    Собираем, подключаем и прикручиваем повыше

    image

    Интерфейс


    Как я уже рассказывал (Очередной умный дом, в трех частях. Часть третья, пользовательско-интерфейсная) есть два вида интерфейса. Первый вид, в котором на экране отображаются практически все данные с устройства, выглядит так

    image

    Температура текущая, минимум, максимум, направление изменения. Давление, аналогично. Влажность. Ветер — направление и роза ветров. Цифры нужны скорее для отладки, показывают сколько времени в каком секторе был флюгер. Скорость ветра, время, показания датчика освещенности (без калибровки, то что измерил ADC) и датчик дождя. Все данные и обработка — ведутся в микроконтроллере метеостанции.

    Второй тип интерфейса — на основе виджетов. Тут данных меньше, температура, влажность, давление, скорость и направление ветра

    image

    И куда уж без Android Wear — на часах

    image

    В связи с тем, что раз в минуту происходит опрос всех контроллеров с записью в БД— то любые метеоданные доступны для анализа или отображения в виде графиков

    image
    Поделиться публикацией

    Комментарии 68

      0
      Весьма интересные решения в части железа. Где-то читал что анемометры на крышах зданий и на стенах лучше не располагать ибо там очень много паразитных ветров типа восходящих потоков и завихрений. Еще интересно, есть ли вихревые дорожки Кармана за опорным столбом и влияют ли они на показания направления ветра?
        +2
        Анемометры можно сделать из дешевых ультразвуковых датчиков за 1.5$, изначально они измеряют расстояние, но если разделить передатчик и приемник, при постоянном расстоянии, измеряют скорость ветра, ветер ускоряет или замедляет ультразвуковой импульс. Два датчика установленные перпендикулярно, дают направление ветра. Никакой механики, быстрое измерение, хоть тысячи раз в секунду, нет шума, устройство вечное — ломаться нечему.
          0
          Вот тут больше информации — http://www.diva-portal.org/smash/get/diva2:425655/FULLTEXT01.pdf
          0

          Сейчас этим занят как раз. не так там все шоколадно. как минимум, датчики за $1.5 — не уличные, будут дохнуть раз в месяц.

            0
            Там нечему дохнуть. От воды можно защитить пленкой, сигнал проходит, проверял.
              0

              С этого места подробнее. Я тоже пробовал, но у меня были дикие потери уровня сигнала. Какой пленкой, как, какие были потери?

                0
                Я не измерял потери сигнала, просто убедился что датчик работает. Пленка обычная полиэтиленовая, тонкий пакет, натянута на датчик. У меня сложилось впечатление что ультразвуковой сигнал через нее проходит свободно не искажая показаний.
                  0
                  Я не измерял потери сигнала, просто убедился что датчик работает.
                  На какой дистанции?
                  Пленка обычная полиэтиленовая, тонкий пакет, натянута на датчик. У меня сложилось впечатление что ультразвуковой сигнал через нее проходит свободно не искажая показаний.
                  Показания-то не изменятся. Макс. дистанция упадет, причем сильно.
                    0
                    Максимальная дистанция 4 метра, тут достаточно 1 метра и менее. В нашем случае дальность с большим запасом.
                      0

                      увы, не все так просто. в данной задаче надо ловить не сантиметры(кстати, sr-04 ловит сантиметры с дикой погрешностью), а миллиметры, считать фазовые сдвиги, для этого нужен довольно чистый сигнал. и вот тут встает проблема уровня сигнала.

                        0
                        С другой стороны ни что не мешает провести 10 000 измерений, усреднить показания и получить чистый сигнал. Быстродейтвие для метеостанции в общем случае не нужно.
                          0

                          Не усреднится, хоть миллион раз меряй

                            0
                            почему?
                              0

                              Потому что жизнь борьба. Сорвалось, извиняйте.
                              Самая очевидная (но не единственная достаточная) причина — sr-04 не является датчиком с линейной характеристикой. Внутри у него тупенький 27МГц 8бит микроконтроллер, т.е. и его внутренняя измерялка, и формирователь выходного сигнала имеют некоторую дискретность, которая явно выше, чем необходимая точность. Т.е. после усреднения неограниченного кол-ва измерений в лучшем случае выйдет случайная величина между двумя соседними фиксированными значениями.

                                –1
                                Между соседними, но не случайная величина. Например, при средней величене 111.1 или 111.9 очевидно что исходые сигналы разные, первый как миинимум меньше второго. Многократное измерение и усреднение позволяют вытянуть несколько полезных бит информации, в ущерб скорости измерения. Но должны соблюдаться некоторые условия, на входе АЦП должен быть шум, но небольшой (амплитуда около младшего бита), иначе значение просто «залипнет» и ближайшего порога срабатывания АЦП и многократные измерения ничего не дадут, все измерения покажут 111.00, там усредняй не усредняй ничего не изменится.
                                  +1
                                  Вы нашли в sr-04 АЦП? Покажите мне его срочно!

                                  А еще — покажите работающее и повторяемое решение измерителя скорости и направления ветра на sr-04. Или за год так датчики из Китая не приехали?

                                  Хватит уже носится и с ними, и с этой статьей. Вам уже намекнули — для задачи измерения скорости и направления ветра ультразвуком — нужны не пороговые датчики, а надо уходить в ЦОС и анализировать фазу пришедшего сигнала для максимально достижимого разрешения. Ну и плюс улица, на которой ваш
                                  Пленка обычная полиэтиленовая, тонкий пакет, натянута на датчик.

                                  рассыпется от ультрафиолета за месяц.
          0

          У вас интересный датчик дождя: просто пара контактов, т.е. он не может измерять количество осадков, а только время после дождя и до высыхания воды. А почему вы не использовали датчик дождя на основе коромысла? Можно сделать самому, можно купить за 1000 рублей на али.

            0
            Самое простое решение.
            Возможно в следующей версии добавится и датчик количества осадков, и Wi-Fi вместо RS485.
            0
            Датчик дождя — не самое лучшее решение. Вода будет испаряться? Тогда на время испарения на улице будет ДОДЖ. А в межсезонье эта конструкция будет быстро замерзать. У VAISALA, например для этих целей используется пьезоэлемент, который «слушает дождь», т.е. считает капли дождя, попавшие на него и отсюда высчитывает уровень осадков. А ветер они вообще офигенно измеряют — ультразвуком. Кому интересно: http://www.vaisala.com/en/products/multiweathersensors/Pages/WXT530.aspx
              0
              WXT536 (6) Parameters: W, R, P, T, U $ 3265

              Спасибо, но нет.

              И дождь — это не всегда капли, иногда это морось.
                0
                Она даже снег слышит :)
                Но цена, согласен не бюджет полный.
                  0
                  Это вы еще не интересовались стоимостью софта, без которого их датчики использовать не получится.
                0
                  0
                  Это скажем так — не аналог ни разу. Почему?

                  1. Готового решения — нет. С сайта «Этим займусь как только приедут заказанные дополнительные датчики. Posted on 12.10.2015»

                  2. Надо не 2, а 4 штуки HC-SR04 — то есть уже совсем не 3 бакса.

                  3. HC-SR04 — они ни разу не для уличных применений, а те варианты — которые для уличных — стоят намного дороже.

                  4. Терзают меня смутные сомнения, что разрешающей способности модулей будет очень мало, и как быть с тем, что ветер может задувать и снизу, и сверху? Там то расстояние между датчиками под метр, а не несколько сантиметров, как у WXT530
                    0
                    Это скажем так — не аналог ни разу. Почему?


                    Ничего что цена несколько ниже 3265 $? :)

                    1. Готового решения — нет. С сайта «Этим займусь как только приедут заказанные дополнительные датчики. Posted on 12.10.2015»


                    В данной статье так же самоделка, не так что пошел и купил. С статье про датчики все исследования выполнены, скорость ветра измеряется и достаточно точно, более ничего не нужно.

                    Надо не 2, а 4 штуки HC-SR04 — то есть уже совсем не 3 бакса.


                    6$ против 3265 $ для хобби проекта? Проще уже тогда на Гисметео данные взять.

                    HC-SR04 — они ни разу не для уличных применений, а те варианты — которые для уличных — стоят намного дороже.


                    Они закрываются пленкой. Голую плату под дождь помещать нежелательно.

                    разрешающей способности модулей будет очень мало, и как быть с тем, что ветер может задувать и снизу, и сверху? Там то расстояние между датчиками под метр, а не несколько сантиметров, как у WXT530


                    Ветер снизу ничего не изменит, главное чтобы он не дул со сверхзвуковой скоростью и не сдувал ультразвуковой сигнал вверх полностью.

                    Расстояние можно уменьшить, тогда нужно повысить точность измерения интервалов времени, изначально там 3.3 миллисекунды. По даташиту минимум 2 сантиметра.
                      0
                      В данной статье так же самоделка, не так что пошел и купил. С статье про датчики все исследования выполнены, скорость ветра измеряется и достаточно точно, более ничего не нужно.

                      Коме исследований — хотелось бы увидеть работающее в реальных условиях устройство, а не два HC-SR04 на метровой палке, которые что то меряют.

                      В общем — это все демагогия.
                      Готового решения на сайте я не увидел. Готового уличного решения — тем более. Готового уличного решения, которое хоть как то измеряло бы направление и скорость — и близко нет.

                      Почему — я догадываюсь.
                        0
                        Почему — я догадываюсь.

                        У автора нет времени на хобби или нашел проект интереснее?
                          0
                          Автор не осилил. Для хобби это стало слишком сложно и было отложено в долгий ящик.

                          Интересно, как автор, анемометром из двух (хотя потом выяснили что четырех) УЗ-датчиков собрался мерять скорость воздуха, с учетом того, что воздух дует во всех сторон?
                            0
                            Сложением векторов по оси X-Y?
                          0

                          Вообще-то есть, но трудо- и деньго- затраты зашкаливают.

                            0
                            Вот тут я соглашусь — и работа колоссальная, и результыта есть, и остальное на высоте. Но согласитесь, что 4 УЗ датчика, обработка аналогового сигнала, dsPIC33F и сам конструктив — немного не то же самое, что и 4 разобранных HC-SR04 и ардуина.

                            Я не удивлюсь если на основе этой работы в итоге были сделаны те измерители, за 3 килобакса ))
                              0

                              ну если у меня выгорит, то BOM будет 20-50Е, включая конструктив.

                                0
                                Ультразвук или механика?
                                Мне этот обошелся порядка 50$, причем две латунных втулки — 8$ материал и 6$ работа. Из электроники самый дорогой — барометр 17$

                                В том, что выше — думаю основные затраты пошли на работу и исследования с тестированием, материалы на их фоне — можно даже не учитывать ))
                                  0

                                  Материалы на 1 шт ультразвукового датчика. На R&D уже ушло больше, конечно.

                                0
                                УЗ датчика, обработка аналогового сигнала, dsPIC33F и сам конструктив — немного не то же самое, что и 4 разобранных HC-SR04 и ардуина.


                                Результат сравнимый. И там и там успешно была измерена скорость ветра.

                                dsPIC33F очень специфический контроллер, если нужно быстродействие (что еще не факт), можно применить Arduino Due (ARM 32 bit против 16 бит dsPIC33), чтобы не взрывать мозг сообществу.

                                Обработка аналогового сигнала возможно, но не факт что обязательна. Уверен, от этого можно отказаться, калибруя порог срабатывания.

                                Возможно снизится разрешение, но для метеостанции не нужно 0.05 м/с и точность в 1 градус. Я даже поставить анемоментр не смогу в таком месте, где он проявит свои свойства, малейшая помеха от посторонней конструкции, дерева, и точность упадет в разы. Да и ветер дует случайно, как только считаешь показания 1.22 м/с и точность до градуса, они сменятся на другие. Это анемометр перфекциониста.
                                  +1
                                  Результат сравнимый. И там и там успешно была измерена скорость ветра.

                                  О да! Если вы не видите разницы между теми двумя проектами — то дальше разговор бессмысленнен.
                                  Еще раз, это все — демагогия. Результат в виде готового повторяемого устройства на четырех HC-SR04 есть? Нет.
                                  Считать за результат фразу:

                                  «Этим займусь как только приедут заказанные дополнительные датчики. Posted on 12.10.2015»

                                  И кучу ваших пространных рассуждений о пленке, сантиметрах разрешения и прочем — это не результат. У меня на этом всё.
                        0

                        Я сейчас делаю такую штуку, но от sr04 уже ушел. сделаю — отпишусь.

                          0
                          На чём делаете?
                            0

                            китайские ультразвук. трансиверы. Выбираю получше. Аналоговая часть — своя, цифровая пока stm32f303(плата nucleo), а там посмотрим
                            https://twitter.com/el_mot/status/749490980353703936

                              0

                              Механику тоже делал (и сделал), и тоже на AS5040, но у меня кривее выглядит, чем у ТС, но точность направления ветра скорее всего выше.

                                0
                                За счет подключения по цифре? Там то 10bit DAC, треть градуса можно получить, но нужна ли в данном применении такая точность? ))
                                За кривость механики — это второй вариант, с учетом ошибок. Первый был ужасен ))
                                  0

                                  у меня чуть другая задача — анеморумбометр на яхту. там точность в градус не лишняя.


                                  кстати, у вас механика покрашена в черный, а у меня — в белый(типа чтобы на солнце не грелось).
                                  В свете топовых огней ночью(они рядом на мачте, кр-зел-бел) получается зачетная цветомузыка.

                                    0
                                    Ясно. У вас — измритель, у меня — показометр ))
                                      0

                                      ну не так все запущено, одноградусной точности все равно нет, в основном из-за механики.

                                        0
                                        У меня при переходе 360-0 каша, но то думаю изза ШИМа. По цифре должно быть красиво. Но для этого примерения — вполне хватает.

                                        С механикой другая проблема — или флюгер будет болтатся как карандаш в ведре, или потеряем в чувствительности. Я с этим столкнулся при переходе от одного подшипника, к двум. С двумя никаких люфтов, но с одним — легче вращается, тоесть чувствительнее.
                                          0

                                          у меня еще хуже. Нужно быстродействие порядка 1с, а еще мачта на ходу неслабо качается, что добавляет перцу. Еще и на флюгере хвост неправильный.


                                          В вашей конструкции, имхо, слишком короткое коромысло флюгера. Если сделать раза в 2 длиннее, будет больше рычаг, легче подшипники проворачивать.

                                            0
                                            С такими условиями и УЗ будет врать. Какая разница, толи ветер деревья качает, толи они качаются и создают ветер )) Главное что друг относительно друга есть движение.
                                              0

                                              проблема не в этом качании ветра деревьями, а в том, что механика ерзает, чисто из-за инерции и неидеальной балансировки.

                                                0
                                                Ерзание механики можно уменьшить удлинением хвоста. Ерзанье будет, но например с два раза длиннее хвостом оно будет в два раза меньше. Естественно при установке вне ветровых теней.
                                                  0

                                                  Не в условиях качающегося топа мачты, увы. Там чем длиннее хвост, тем хуже оно стабилизируется в целом.

                                                    0
                                                    Повесить на топ мачты матерчатый измеритель ветра в виде длинной трубы. Ваша мачта будет натянута равномерно в сторону ветра. Ну или закрепить мачту четырьмя тросами.
                                                      0

                                                      Это шутка была такая, я надеюсь

                                                        0
                                                        Просто видать камент ради камента, без прочтения всего треда.
                                                        Ну не увидел человек, что мачта на лодке )))
                        0
                        Шикарно. Осталось подключить к заббиксу и навешать триггеров: когда пора переобувать резину, когда заливать незамерзайку, когда лучше из дома не выходить, когда лучше выходить и идти на рыбалку;)
                          0
                          Это можно всё сделать программно, забирая данные с сайта Гисметео и подобных. Причем и архивы и прогноз погоды (для рыбалки даже важнее). Плюс облачность, давление…
                          Если уж делать метеостанцию, то совместимой с народным мониторингом, расшарить данные для всех.
                          0
                          Для Android Wear самая важная информация представлена самым мелким размером шрифта. Огромная иконка. Возможно, стоит разместить иконку попроще выше, а всю центральную часть отдать для показателей.
                            0
                            В живую оно смотрится намного лучше, поверте. То что не влезло в строку между двойными стрелками — ID и дата последнего опроса, то есть фактически отладочная информация, которую можно убрать. И у приложения основная цель — это управлять, а не показывать.

                            image
                              0
                              У вас же на 3й картинке прочитать температуру очень не просто. А этот экран явно информационный. Как раз и возникает вопрос, что на нём важнее — иконка или информация о температуре? Можно слово «Temp: » убрать и просто показывать значение крупно, сразу сбоку от иконки. Ну это как пример.
                                +1
                                Там по хорошему надо нанять дизайнера интерфейсов и все переделать )) Но то когда нибудь потом.
                            +1
                            Как proof of concept — норм.
                            Но у меня все же один вопрос: что вам это дает?

                            Вот например видите вы что pressure 736.1 mmHg и Waist 25%, и что дальше?)
                              +3
                              По давлению — важно не абсолютное значение, а тенденция изменения, погоду предсказывает довольно точно. А так — баловство конечно и убитие свободного времени. Кто то марки собирает, кто то самолеты клеит.
                                –1
                                Я вот тоже этого увлечения метеостанциями не понимаю, хоть на ардуине много чего делаю. Может потому что в москве официальных источников достаточно много и даже левые буржуйские сайты говорят погоду не в городе, а в твоем районе.
                                Какой смысл в этом случае ставить свою метеостанцию, которая находится в нескольких километрах от взрослой?
                              0
                              Можете выложить приложение для часов?)
                                0
                                Вам с какой целью?
                                Оно само по себе не работает, там система из многих компонентов.
                                Там даже логика и графика грузится с сервера для каждой конкретной конфигурации.
                                  0
                                  Ну вообще тут так негласно положено. Но если стесняетесь, как хотите.
                                    0
                                    Негласно положено что, простите? Положено кем, простите? И когда?
                                0

                                Вот мне интересно, столь недорогих решений и вариантов, но все равно народ покупает систему за десятки тысяч долларов и это не только богатенькие — https://dardali.com/academiya-praktiki/praktika/52-crestron-sistema-umniy-dom

                                Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                Самое читаемое