Направление ветра чем измеряется прибор
Приборы для измерения скорости и направления ветра
На метеорологических станциях, для определения направления и скорости ветра у поверхности земли служит флюгер. Он устанавливается на высоте 10-12 мнад земной поверхностью. Для определения скорости ветра в поле служит ручной анемометр. На метеостанциях широко используются также электрические анемометры и анеморумбометры, а также самопишущие приборы для непрерывной регистрации направления и скорости ветра — анеморумбографы.
Флюгер Вильда (станционный) (рис. 2.11 в конце) прибор служит для измерения скорости и направления ветра.
Ветромер Третьякова(рис. 2.12 в конце) служит для измерения направления и скорости ветра в полевых условиях. Необходимость таких измерений вызвана тем, что направление и особенно скорость ветра на полях могут значительно отличаться от данных метеоплощадки. Ветромер Третьякова по своему действию напоминает флюгер.
В настоящее время для измерения направления и скорости ветра применяют дистанционные приборы — анеморумбометры, основанные на преобразовании величин элементов ветра в электрические величины.
Анеморумбометр М-63(рис. 2.13 в конце) служит для измерения направления ветра, мгновенной скорости, средней скорости за десятиминутный интервал и максимальной скорости ветра между измерениями.
Анемометр ручной чашечныйМС-13 (рис 2.14 в конце) служит для измерения средней скорости ветра в пределах от 1 до 20 м/с.
Приборы для измерения скорости и направления ветра.
Приборы, измеряющие скорость ветра, называются анемометрами; измеряющие скорость и направление – анеморумбометрами; регистрирующие скорость и направление – самописцами.
Рисунок 7.1 – Основные румбы
Флюгер станционный (флюгер Вильда) по устройству прост и достаточно широко используется для измерения направления, скорости и порывистости ветра (рис. 7.2). Чувствительным элементом направления ветра в этом приборе является флюгарка 1 с противовесом 2. Она укреплена на трубке 7, которая надевается на заостренный конец неподвижной оси 3 и свободно вращается вокруг нее. Для определения направления ветра на неподвижной оси расположена муфта 4 с восемью штифтами, указывающими направление сторон света. На одном из них укрепляется буква С, направленная на север.
Приемником скорости ветра служит прямоугольная доска (пластина) 5, свободно качающаяся около горизонтальной оси 6. На оси закреплена дуга 8 с восемью штифтами, по которым отсчитывают положение доски, отклоняющейся под действием ветра. На оси 6 есть противовес 10 для уравновешивания дуги 8. Штифты дуги нумеруются от 0 до 7.
Рисунок 7.2 – Флюгер Вильда (по М.Д. Павловой, 1974)
Анемометр ручной чашечный МС-13 (рис. 7.3). Его чувствительным элементом является небольшая вертушка 2 с четырьмя полусферическими чашками, обращенными выпуклостями в одну сторону. Вертушка насажена на ось 1, в нижней части которой имеется червячная (винтовая) нарезка, соприкасающуюся с зубчатым колесом, передающим вращение вертушки счетному механизму. Счетный механизм помещен внутри корпуса и представляет собой систему зубчатых колес, связанных с тремя стрелками, которые при вращении вертушки перемещаются по трем шкалам.
шкала 6 имеет 100 делений. По этой шкале отсчитывают десятки и единицы оборотов. Малые шкалы имеют 10 делений и служат для отсчета сотен и тысяч оборотов.
Счетный механизм включается и выключается арретиром, выступающий конец которого расположен сбоку корпуса и имеет вид подвижного кольца. Движением арретира вверх (против часовой стрелки) счетчик анемометра включают, а движением вниз (по часовой стрелке) – выключают. В корпусе прибора по обе стороны арретира ввинчены два ушка, через которые протягиваются концы шнура, прикрепленного к кольцу для включения и выключения прибора, когда его нельзя достать рукой. Снизу под корпусом прибора имеется стержень с винтовой нарезкой 4 для установки анемометра на деревянном шесте в вертикальном положении.
Рисунок 7.3 – Анемометр ручной чашечный МС-13 (по А.П. Лосеву, 1994)
От механических повреждений вертушка защищена металлическими дужками 7. Анемометр хранится в футляре с выключенным механизмом.
Анеморумбометр М-63– дистанционный прибор (рис. 7.4). Им измеряется скорость ветра, осредненная за 10-минутный интервал, максимальная мгновенная скорость ветра между сроками наблюдений и направление ветра.
Рисунок 7.4 – Анеморумбометр М-63 ( по М.д. Павловой, 1974)
Принцип действия основан на преобразовании направления и скорости ветра в электрические величины. В комплект прибора входит датчик 1, измерительный пульт 2и блок питания 3. Датчик состоит из обтекаемого корпуса, вращающегося вокруг вертикальной неподвижной стойки. В конце корпуса находится флюгарка 5, а в начале – четырехлопастный винт 4с горизонтальной плоскостью вращения, которая с помощью флюгарки устанавливается всегда перпендикулярно направлению воздушного потока. Внизу вертикальной стойки находится ориентир для установки датчика относительно сторон света и штепсельный разъем для подключения соединительного кабеля.
Измерительный пульт – настольный прибор, на лицевой стороне которого размещены указатель мгновенной скорости 6, указатель средней скорости 7 и указатель направления ветра 8.
Блок питания состоит из двух батарей аккумуляторов, вольтметра для измерения напряжения аккумуляторов и тумблера. Блок питания подключается к сети переменного тока.
Для характеристики ветрового режима местности по повторяемости направлений ветра строится график, называемый «розой ветров». Он может быть месячным, сезонным, годовым.
Повторяемость ветра для каждого из восьми румбов вычисляется по количеству раз, которое наблюдалось за тот или иной период. Полученные значения выражаются в процентах от общего числа наблюдений (число штилей в 100 % не входит).
При построении розы ветров чертят восемь румбов направлений ветра и на них в определенном масштабе откладывается повторяемость ветра. Последовательно соединенные точки и будут характеризовать розу ветров.
Примерная роза ветров
1. Построить розы ветров по направлению ветра в мае и июне
Месяц | С | СВ | В | ЮВ | Ю | ЮЗ | З | СЗ | Штиль |
Май | |||||||||
июнь |
1. Ветер и его характеристики.
2. Значение ветра для сельскохозяйственного производства.
3. Приборы, характеризующие ветер.
4. Ручной анемометр и принцип его действия.
Приборы для измерения скорости и направления ветра.
Для чего используется прибор
На сегодняшний день прибор анемометр можно встретить в различных отраслях деятельности:
Это список основных направлений, где используется прибор для измерения скорости. Отдельные виды могут измерять дополнительно направление ветра в различных плоскостях, температуру воздуха. Единицы измерения скорости ветра – метры в секунду – используются в приборах всех видов.
Устройство и принцип работы
Анемометр позволяет провести измерение скорости и направление ветра. Он улавливает скорость воздушного потока, после чего обрабатывает полученную информацию и передает на регистрирующее устройство.
Основными узлами конструкции являются всего три блока:
Образуется своеобразная цепочка, на каждом из этапов которой свою роль выполняет отдельный блок.
Приборы для измерения скорости и направления ветра
Принцип действия изделия основан на преобразовании значений метеорологических параметров в электрические величины, отсчитываемые визуально по показаниям соответствующих приборов. Измеритель ветра устанавливается на надводных кораблях, а также может применяться на наземных пунктах метеослужбы. В состав изделия входят: датчик ветра, центральный прибор, репитер, построитель. Для измерения скорости и направления ветра используется зависимость между скоростью ветра и числом оборотов вертушки, между направлением ветра и положением свободно ориентирующейся флюгарки датчика ветра. Скорость и направление ветра при помощи сельсинной передачи дистанционно передаются в пульт – центральный прибор. В центральном приборе происходит осреднение величины скорости ветра при помощи программно-наборного механизма и сглаживания величины направления ветра при помощи демпфирующего механизма. Режим работы – непрерывный с дискретной выдачей данных средней скорости наблюдаемого ветра через каждые 120 с работы прибора.
Технические характеристики
Разнообразие моделей
В зависимости от принципа действия, прибор для измерения скорости ветра изготавливается в трех вариантах:
Классификация
Прибор для измерения скорости ветра в своей структуре имеет датчик, который контактирует непосредственно с воздушным потоком. В зависимости от вида данного датчика выделяют следующие типы анемометров:
Это список приборов, которые можно встретить в настоящее время.
Классификация анемометров и принцип их работы
Существует множество разновидностей анемометров, однако чаще всего для измерений используют:
Чашечный анемометр
Чашечный анемометр имеет самую простую конструкцию: подвижный элемент с четырьмя лопастями. Как только ветер на них воздействует, ось начинает вращаться и передавать данные измерительному прибору. Он фиксирует число вращений лопастей за конкретный период времени. Анемометр этого типа идеально подходит для использования на открытой местности, поэтому ценится метеорологами.
Крыльчатый анемометр
Крыльчатый анемометр наиболее распространен среди приборов, измеряющих скорость воздушных масс. Он состоит из крыльчатки, защищенной кольцом, и соединенной напрямую либо гибким проводом с измерительным прибором. Такая конструкция позволяет использовать его для регистрации скорости воздуха в труднодоступных местах.
Ультразвуковой анемометр
Ультразвуковой анемометр реже других используют для измерения скорости ветра. Как уже понятно из названия, он измеряет скорость звука в помещении, которая меняется в зависимости от направления перемещения воздушных масс.
Двухкомпонентные устройства помимо скорости ветра могут определять, куда он движется в зависимости от частей света. Скорость звука в такой аппаратуре зависит от времени преодоления ультразвуковыми импульсами расстояния от излучателя до ультразвукового микрофона. Практически все анемометры работают от заряжаемых аккумуляторов или батареек.
Анемометр крыльчатый
Данный прибор способен определить скорость движения воздуха, которая находится в интервале от 0,5 до 45 м/с. Кроме того, данное устройство позволяет измерять температуру, которая находится в пределах от минус 50 до плюс 100 градусов.
Конструкция анемометра такова, что ветер воспринимается лопастной крыльчаткой. Это небольшое легкое колесико, которое от механических воздействий защищается металлическим кольцом. Принцип его работы напоминает вентилятор или мельницу. Под действием ветра крыльчатка начинает вращаться. По системе зубчатых колес ее вращение передается на стрелки счетного механизма.
Анемометр ручной устроен так, что счетный механизм расположен рядом с крыльчаткой. За счет этого создается преграда для ветра, тем самым рабочий диапазон ограничивается. Подобные приборы могут измерять скорость ветра, которая не превышает 5 м/с. Данные устройства подходят для измерения потока воздуха в вентиляционных шахтах, трубопроводах, воздуховодах и так далее.
Анемометр крыльчатый цифровой устроен таким образом, что датчик встроен внутрь прибора или является выносным. Благодаря такой конструкции никакой преграды для ветра нет. Поэтому прибор измеряет поток, скорость которого может достигать 45 м/с.
Приборы чашечного типа
Анемометр чашечный способен производить измерения только в плоскости, которая расположена перпендикулярно оси вращения. Конструкция прибора представляет собой 4 чашки в форме полусфер, которые одеты на симметричные крестообразные спицы ротора.
Появились первые варианты данного устройства еще в 1846 году. Их создателем является Джон Робинсон. Название он получил благодаря внешнему сходству лопастей с чашкой. Доктор предполагал, что на вращение чашек не оказывают влияние их размер. По его мнению, скорость вращения чашек в три раза меньше, нежели скорость движения ветра. Позднее эту теорию опровергли. Было доказано, что прибор обладает коэффициентом, который находится в пределах от 2 до 3,5.
В 1926 году Джон Паттерсон предложил ротор с тремя чашками. Им было замечено, что максимальный вращающий момент чашек достигается при их повороте на угол 45 градусов в отношении движения ветра.
В начале девяностых прошлого века Дерек Вестон усовершенствовал чашечный прибор для измерения скорости ветра. Его доработки позволили измерить дополнительно направление движения ветра. Достиг он этого простым способом – на одну из чашек установил флажок. При вращении флажок пол оборота движется по ветру, а вторую – против.
Чашечные ручные приборы подсчитывают количество оборотов, совершенных за отведенный промежуток времени. В улучшенных анемометрах ротор связывается с тахометрами различных видов. Данные приборы способны показать мгновенно скорость ветра и его изменение в реальном времени. Интервал измерения – от 0,2 до 30 м/с.
Определение скорости ветра
Сила ветра в баллах по Бофорту | Название | Признаки для оценки | Скорость ветра в м/сек | Скорость ветра в км/час | Скорость ветра в миль/час |
0 | штиль | Листья на деревьях не колеблются, дым сигареты поднимается вертикально, огонь от спички не отклоняется | 0 | 0 | меньше 1 |
1 | тихий | Дым сигареты несколько отклоняется, но ветер не ощущается лицом | 1 | 3,6 | 1-3 |
2 | легкий | Ветер чувствуется лицом, листья на деревьях колышутся (шелестят) | 2-3 | 5-12 | 4-7 |
3 | слабый | Ветер качает мелкие ветки и колеблет флаг | 4-5 | 13-19 | 8-12 |
4 | умеренный | Качаются ветки средней величины, поднимается пыль | 6-8 | 20-30 | 13-18 |
5 | свежий | Качаются тонкие стволы деревьев и толстые ветви, образуется рябь на воде | 9-10 | 31-37 | 19-24 |
6 | сильный | Качаются толстые стволы деревьев, ветер «гудит» в проводах | 11-13 | 38-48 | 25-31 |
7 | крепкий | Качаются большие деревья, против ветра трудно идти | 14-17 | 49-63 | 32-38 |
8 | очень крепкий | Ветер ломает толстые стволы | 18-20 | 64-73 | 39-46 |
9 | шторм | Ветер сносит легкие постройки, валит заборы | 21-26 | 74-94 | 47-54 |
10 | сильный шторм | Деревья вырываются с корнем, сносятся более прочные постройки | 27-31 | 95-112 | 55-63 |
11 | жестокий шторм | Ветер производит большие разрушения, валит телеграфные столбы, вагоны и т. д. | 32-36 | 115-130 | 64-72 |
12 | ураган | Ураган разрушает дома, опрокидывает каменные стены | Более 36 | Более 130 | 73-82 |
Оружие > Баллистика нарезного оружия
Автор не несет никакой ответственности за любой вид ущерба, понесенного в результате использования присутствующей здесь информации. Автор оставляет на усмотрение читателя, применять полученные здесь сведения, или подвергнуть тщательной проверке в специализированных источниках.
Тепловые приборы
Принцип работы подобных анемометров заключается в определении электрического сопротивления проволоки. Данное значение изменяется в зависимости от температуры, которая снижается за счет движущегося потока воздуха. Это подобно тому, как в солнечный жаркий день ветерок холодит кожу.
Конструкция анемометра представляет собой металлическую нить накаливания (из платины, нихрома, серебра, вольфрама и других металлов), которая разогревается электрическим током до температуры, превышающей температуру окружающей среды.
У приборов данного типа имеется один существенный недостаток – низкая прочность при механических воздействиях.
Ультразвуковые анемометры
Принцип работы данных приборов основан на определении скорости прохождения звука в движущемся воздушном потоке. Именно поэтому данный анемометр еще называют акустическим. При движении звука в одном направлении с воздухом его скорость увеличивается. При движении навстречу ветру скорость звука уменьшается. Благодаря этому измеряется время получения ультразвукового импульса. Устройство подключается к компьютеру для обработки полученных данных.
Датчик может выполнять несколько функций. В зависимости от их количества, можно выделить несколько видов датчиков:
Ультразвуковые приборы измеряют скорость ветра до 60 м/с.
Современные анемометры
С течением времени конструкция приборов, предназначенных для определение скорости и направления ветра, видоизменялась и улучшалась. В 1846 году ирландец Джон Робинсон создал один из типов приборов, которые до сих пор используются современными учеными, — чашечный анемометр. Он представлял собой конструкцию, имеющую четыре чаши, располагающиеся на вертикальной оси. Дующий ветер вызывал вращение чаш, а скорость этого вращения позволяла замерить скорость движения воздушного потока. Впоследствии четырехчашечная конструкция была заменена на трехчашечную, поскольку она позволяла уменьшить погрешность показаний прибора.
Еще один вид анемометра, применяющийся современными учеными — тепловой анемометр, принцип действия которого основан на изменении температуры нагретой металлической нити под воздействием воздушного потока. Степень ее охлаждения в результате такого воздействия служит основанием для осуществления измерений скорости и направления ветра.
Наконец, третий наиболее распространенный сегодня тип прибора — ультразвуковой анемометр, который в 1904 году разработал геолог Андреас Флич. Он измеряет основные параметры воздушного потока в зависимости от изменения скорости звука в текущих условиях окружающей среды. При этом ультразвуковые анемометры имеют самый большой спектр возможностей, по сравнению с другими типами приборов: они позволяют производить замеры не только скорости и направления ветра, но и его температуру, влажность и другие параметры.
Станция для измерения скорости и направления ветра
Обычная бытовая фирменная или самодельная метеостанция измеряет две температуры-влажности (в комнате и на улице), атмосферное давление и дополнительно имеет часы с календарем. Однако, настоящая метеостанция имеет еще много всего — датчик солнечной радиации, измеритель осадков и всякое подобное, что, в общем, требуется только для профессиональных нужд, за одним исключением. Измеритель параметров ветра (скорости, и, главное, направления) — очень полезное дополнение для загородного дома. Причем фирменные датчики ветра довольно дороги даже на Али-Бабе, и имеет смысл присмотреться к самодельным решениям.
Сразу скажу, что если бы я заранее знал, в какой объем ручной работы и потраченных на эксперименты денег выльется моя задумка, может быть и не стал бы начинать. Но любопытство перевесило, а читатели этой статьи имеют шанс избежать тех подводных камней, о которые мне приходилось спотыкаться.
Для измерения скорости ветра (анемометрии) существует стопицот способов, главные из которых такие:
— термоанемометрический,
— механический — с пропеллером (точнее, импеллером) или чашечной горизонтальной крыльчаткой (классический чашечный анемометр), Измерение скорости в этих случаях эквивалентно измерению частоты вращения оси, на которой закреплена пропеллер или крыльчатка.
— а также ультразвуковой, объединяющий измерения скорости и направления.
Для измерения направления способов меньше:
— упомянутый ультразвуковой;
— механический флюгер с электронным съемом угла поворота. Для измерения угла поворота есть также много различных способов: оптические, резистивные, магнитные, индуктивные, механические. Можно, кстати, просто закрепить на валу флюгера электронный компас — вот только надежные и простые (для «наколеночного» повторения) способы передачи показаний с хаотично вращающейся оси придется еще поискать. Потому мы далее выбираем традиционный оптический способ.
При самостоятельном повторении любого из этих способов следует держать в уме требования минимального энергопотребления и круглосуточного (а, может, и круглогодичного?) пребывания на солнце и под дождем. Датчик ветра нельзя разместить под крышей в тени — наоборот, он должен быть максимально удален от всех мешающих факторов и «открыт всем ветрам». Идеальное место размещения — конек крыши дома или, на худой конец, сарая или беседки, удаленных от других строений и деревьев. Такие требования предполагают автономное питание и, очевидно, беспроводной канал передачи данных. Этими требованиями обусловлены некоторые «навороты» конструкции, которая описывается далее.
Кстати, а минимальное энергопотребление — сколько это? Если исходить из обычных бытовых батареек типа АА, то среднее потребление схемы в идеальном случае должно составлять не более 1-2 мА. Посчитайте сами: емкость приличного щелочного элемента типоразмера АА составляет около 2,5-3 А•ч, то есть схема с указанным потреблением проработает от него около 1500-2500 часов, или 2-3 месяца. В принципе это тоже немного, но относительно приемлемо — меньше нельзя никак: либо разоритесь на батарейках, либо придется применять аккумуляторы, которые нужно будет заряжать еще чаще, чем менять батарейки. По этой причине мы при составлении такой схемы обязаны ловить любые крохи: обязательный режим энергосбережения, тщательно продуманная схемотехника и последовательность действий в программе. Далее мы увидим, что в окончательной конструкции я все-таки не уложился в нужные требования и пришлось применять питание от аккумулятора.
Познавательную историю о том, как я пытался воспроизвести самый современный и продвинутый из способов — ультразвуковой, и потерпел неудачу, я расскажу как-нибудь в другой раз. Все другие способы предполагают раздельное измерение скорости и направления, потому пришлось городить два датчика. Поизучав теоретически термоанемометры, я понял, что готовый чувствительный элемент любительского уровня у нас приобрести не получится (на западном рынке они доступны!), а самостоятельно изобретать — ввязываться в очередные НИиОКР с соответствующими тратами времени и денег. Потому по некотором размышлении я решил сделать унифицированную конструкцию на оба датчика: чашечный анемометр с оптическим измерением скорости вращения и флюгер с электронным съемом угла поворота на основе кодирующего диска (энкодера).
Конструкции датчиков
Преимущество механических датчиков в том, что никакие НИиОКР там не требуются, принцип прост и понятен, а качество результата зависит только от аккуратности исполнения тщательно продуманной конструкции.
Так казалось теоретически, на практике это вылилось в кучу механических работ, часть из которых пришлось заказывать на стороне, ввиду отсутствия под рукой токарного и фрезерного станков. Сразу скажу, что я ни разу не пожалел о том, что с самого начала сделал ставку на капитальный подход, а не стал городить конструкции из подручных материалов.
Для флюгера и анемометра нужны следующие детали, которые пришлось заказать у токаря и фрезеровщика (количество и материал указаны сразу для обоих датчиков):
Оси, заметим, обязательно вытачиваются на токарном станке: изготовить на коленке ось с острием точно по центру практически невозможно. А размещение острия точно по оси вращения здесь — определяющий фактор успеха. Кроме того, ось должна быть идеально прямой, никакие отклонения не допускаются.
Механический датчик направления ветра — электронный флюгер
Основой флюгера (как и датчика скорости далее) служит П-образная скоба из дюраля Д-16, изображенная на чертеже вверху слева. В нижнее углубление запрессовывается кусочек фторопласта, в котором делается ступенчатое углубление последовательно сверлами 2 и 3 мм. В это углубление острым концом вставляется ось (для флюгера — из латуни). Сверху она свободно проходит через отверстие 8 мм. Над этим отверстием винтами М2 к скобе прикрепляется прямоугольный кусочек того же фторопласта толщиной 4 мм так, чтобы он перекрывал отверстие. Во фторопласте сделано отверстие точно по диаметру оси 6 мм (расположенное точно по общей оси отверстий — см. сборочный чертеж ниже). Фторопласт вверху и внизу здесь играет роль подшипников скольжения.
Ось в месте трения о фоторопласт можно отполировать, а площадь трения уменьшить, отзенковав отверстие во фторопласте. (См. на эту тему ниже UPD от 13.09.18 и 05.06.19). Для флюгера это не играет особой роли — некоторая «заторможенность» ему даже полезна, а для анемометра придется постараться минимизировать трение и инерцию.
Теперь о съеме величины угла поворота. Классический энкодер Грея на 16 положений применительно к нашему случаю выглядит так, как показано на рисунке:
Размер диска был выбран, исходя из условия надежной оптической изоляции пар излучатель-приемник друг от друга. При такой конфигурации щели шириной 5 мм располагаются с промежутком также 5 мм, а оптические пары расположены на расстоянии ровно 10 мм. Размеры скобы, к которой крепится флюгер, были рассчитаны именно исходя из диаметра диска 120 мм. Все это, конечно, можно уменьшить (особенно, если подобрать светодиоды и фотоприемники как можно меньшего диаметра), но было принята во внимание сложность изготовления энкодера: выяснилось, что фрезеровщики за такую тонкую работу не берутся, потому его пришлось выпиливать вручную надфилем. А тут чем больше размеры, тем надежнее результат и меньше хлопот.
На сборочном чертеже выше показано крепление диска к оси. Тщательно отцентрованный диск крепится винтиками М2 к капролоновой втулке. Втулка размещается на оси так, чтобы зазор вверху был минимальным (1-2 мм) — так, чтобы ось в нормальном положении вращалась свободно, а при перевороте острие не выпадало из гнезда внизу. Блоки фотоприемников и излучателей прикрепляются к скобе сверху и снизу диска, более конкретно об их конструкции далее.
Вся конструкция помещается в пластиковый (АБС или поликарбонат) корпус 150×150×90 мм. В собранном виде (без крышки и флюгера) датчик направления выглядит следующим образом:
Отметьте, что выбранное направление на север помечено стрелкой, его нужно будет соблюдать при установке датчика на место.
На верхушку оси крепится собственно флюгер. Он изготовлен на основе такой же латунной оси, в разрез на тупой стороне которой впаивается хвостовик из листовой латуни. На остром конце на некоторую длину нарезается резьба М6, и на ней с помощью гаек закрепляется круглый груз-противовес, отлитый из свинца:
Груз рассчитан так, чтобы центр тяжести приходился точно на место крепления (передвигая его вдоль резьбы, можно добиться идеальной балансировки). Крепление флюгера к оси осуществляется с помощью нержавеющего винта М3, который проходит через отверстие в оси флюгера и ввинчивается в резьбу, нарезанную в оси вращения (крепящий винт виден на фото выше). Для точной ориентации верхушка оси вращения имеет полукруглое углубление, в которое ложится ось флюгера.
Датчик скорости ветра — чашечный анемометр своими руками
Как вы уже поняли, основа для датчика скорости в целях унификации была выбрана та же самая, что и для флюгера. Но требования к конструкции тут несколько иные: в целях снижения порога трогания анемометр должен быть максимально облегчен. Поэтому, в частности, ось для него сделана из дюраля, диск с отверстиями (для измерения частоты вращения) уменьшен в диаметре:
Если для четырехбитного энкодера Грея требуется четыре оптопары, то для датчика скорости всего одна. По окружности диска на равном расстоянии просверлено 16 отверстий, таким образом один оборот диска в секунду эквивалентен 16 герцам частоты, поступающей с оптопары (можно больше отверстий, можно меньше — вопрос только в масштабе пересчета и экономии энергии на излучатели).
Самодельный датчик все равно получится достаточно грубым (порог трогания не менее полуметра-метра в секунду), но его снизить можно только если радикально изменить конструкцию: например, вместо чашечной вертушки поставить пропеллер. У чашечной вертушки разность сил сопротивления потоку, обуславливающая крутящий момент, относительно невелика — она достигается исключительно за счет разной формы поверхности, встречающей набегающий поток воздуха (поэтому форма чашек должна быть как можно более обтекаемой — в идеале это половинка яйца или шара). У пропеллера вращающий момент гораздо больше, его можно сделать гораздо меньшим по весу, и, наконец, само изготовление проще. Но пропеллер нужно устанавливать по направлению потока воздуха — например, разместив его на конце того же флюгера.
Вопрос вопросов при этом: как передавать показания с датчика, хаотично вращающегося вокруг вертикальной оси? Я его решить не смог, и судя по тому, что профессиональные чашечные конструкции до сих пор широко распространены, решается он отнюдь не с полпинка (ручные анемометры в расчет не берем — их ориентируют по потоку воздуха вручную).
Мой вариант чашечного анемометра сделан на основе лазерного диска. Вид сверху и снизу показан на фото:
Чашки сделаны из донышек от бутылочек из-под детской воды «Агуша». Донышко аккуратно отрезается, причем все три — на одинаковом расстоянии, чтобы имели равный вес, локально прогревается по центру (ни в коем случае не грейте целиком — необратимо покоробится!) и тыльной стороной деревянной ручки от напильника выгибается наружу, чтобы сделать его более обтекаемым. Будете повторять — запаситесь бутылочками побольше количеством, из пяти-шести штук вам, вероятно, удастся сделать три более-менее одинаковых чашки. В изготовленных чашках делается сбоку прорезь и они закрепляются по периметру диска под 120° по отношению друг к другу с помощью водостойкого клея-герметика. Диск строго центруется относительно оси (я это делал с помощью вложенной металлической шайбы) и закрепляется на капролоновой втулке винтами М2.
Общая конструкция и установка датчиков
Оба датчика, как уже говорилось, размещаются в пластиковых корпусах 150×150×90 мм. К выбору материала корпуса надо подходить продуманно: АБС или поликарбонат имеют достаточную атмосферостойкость, но полистирол, оргстекло и тем более полиэтилен тут решительно не подойдут (и окрасить для защиты от солнца их тоже будет затруднительно). Если нет возможности приобрести фирменную коробку, лучше самостоятельно спаять корпус из фольгированного стеклотекстолита, и затем окрасить для защиты от коррозии и придания эстетического вида.
В крышке точно в месте выхода оси делается отверстие 8-10 мм, в которое тем же клеем-герметиком вклеивается пластиковый конус, вырезанный из носика от баллончика со строительным герметиком или клеем:
Чтобы отцентровать конус по оси, струбциной закрепите снизу крышки деревяшку, наметьте на ней точный центр и немного углубитесь перовым сверлом 12 мм, сделав вокруг отверстия кольцевое углубление. Конус туда должен войти точно, после чего его можно обмазывать клеем. Можно его дополнительно зафиксировать в вертикальном положении на время застывания винтом М6 с гайкой.
Датчик скорости сам накрывает ось с этим конусом, как зонтиком, предотвращая попадание воды внутрь корпуса. Для флюгера стоит дополнительно разместить над конусом втулку, которая закроет зазор между осью и конусом от прямого стока воды (см. фото общего вида датчиков далее).
Провода от оптопар у меня выведены на отдельный разъем типа D-SUB (см. фото датчика направления выше). Ответная часть с кабелем вставляется через прямоугольное отверстие в основании корпуса. Отверстие затем прикрывается крышкой с прорезью для кабеля, которая удерживает разъем от выпадания. К основанию корпуса привинчиваются дюралевые скобы для крепления на месте. Конфигурация их зависит от места установки датчиков.
В собранном виде оба датчика выглядят следующим образом:
Здесь они показаны уже установленными на место — на конек беседки. Обратите внимание, что углубления для крепящих крышку винтов защищены от воды заглушками из сырой резины. Датчики устанавливаются строго горизонтально по уровню, для чего пришлось использовать подкладки из кусочков линолеума.
Электронная часть
Метеостанция в целом состоит из двух модулей: выносного блока (который обслуживает оба датчика ветра, а также снимает показания с внешнего датчика температуры-влажности), и основного модуля с дисплеями. Выносной блок оборудован беспроводным передатчиком для отправки данных, установленным внутри него (антенна торчит сбоку). Основной модуль принимает данные от выносного блока (приемник для удобства его ориентации вынесен на кабеле в отдельный блок), а также снимает показания с внутреннего датчика температуры-влажности и выводит все это на дисплеи. Отдельная составляющая основного блока — часы с календарем, которые для удобства общей настройки станции обслуживаются отдельным контроллером Arduino Mini, и имеют свои дисплеи.
Выносной модуль и измерительная схема датчиков ветра
В качестве фотоизлучателей были выбраны светодиоды ИК-диапазона АЛ-107Б. Эти старинные светодиоды, конечно, не самые лучшие в своем классе, зато имеют миниатюрный корпус диаметром 2,4 мм и способны пропускать ток до 600 мА в импульсе. Между прочим, при испытаниях выяснилось, что образец этого светодиода около 1980 года выпуска (в корпусе красного цвета) имеет примерно вдвое большую эффективность (выразившуюся в дальности уверенной работы фотоприемника), чем современные экземпляры, купленные в «Чипе-Дипе» (они имеют прозрачный желтовато-зеленый корпус). Вряд ли в 1980 году кристаллы были лучше, чем сейчас, хотя чем черт не шутит? Возможно, однако, дело в разных углах рассеяния в том и другом оформлении.
Через светодиод в датчике скорости пропускался постоянный ток около 20 мА (резистор 150 Ом при питании 5 вольт), а в датчике направления — импульсный (меандр со скважностью 2) ток около 65 мА (те же 150 Ом при питании 12 вольт). Средний ток через один светодиод датчика направления при этом около 33 мА, всего через четыре канала — около 130 мА.
В качестве фотоприемников были выбраны фототранзисторы L-32P3C в корпусе диаметром 3 мм. Сигнал снимался с коллектора, нагруженного на резистор 1,5 или 2 кОм от питания 5 В. Эти параметры подобраны так, чтобы на расстоянии
20 мм между фотоизлучателем и приемником на вход контроллера поступал сразу полноразмерный логический сигнал в 5-вольтовых уровнях без дополнительного усиления. Токи, фигурирующие здесь, могут показаться вам несоразмерно большими, если исходить из озвученного выше требования минимального энергопотребления, но как вы увидите, фигурируют они в каждом цикле измерения на протяжении максимум нескольких миллисекунд так, что общее потребление остается небольшим.
Основой для крепления приемников и излучателей послужили отрезки кабельного канала (видны на фото датчиков выше), вырезанные так, чтобы у основания образовать «ушки» для крепления на скобе. Для каждого из этих обрезков к запирающей крышке изнутри приклеивалась пластиковая пластинка, по ширине равная ширине канала. Светодиоды и фототранзисторы закреплялись на нужном расстоянии в отверстиях, просверленных в этой пластинке так, чтобы выводы оказались внутри канала, а наружу выступали только выпуклости на торце корпусов. Выводы распаиваются в соответствии со схемой (см. ниже), внешние выводы делаются обрезками гибкого разноцветного провода. Резисторы для излучателей датчика направления также размещаются внутри канала, от них делается один общий вывод. После распайки крышка защелкивается на место, все щели герметизируются пластилином и дополнительно липкой лентой, которой также закрывается отверстие со стороны, противоположной выводам, и вся конструкция заливается эпоксидной смолой. Внешние выводы, как можно видеть на фото датчиков, выводятся на клеммную колодку, закрепленную на тыльной стороне скобы.
Принципиальная схема блока обработки датчиков ветра выглядит так:
О том, откуда берется питание 12-14 вольт, см. далее. Кроме компонентов, указанных на схеме, выносной блок содержит датчик температуры-влажности, который на схеме не показан. Делитель напряжения, подключенный к выводу A0 контроллера, предназначен для контроля напряжения источника питания с целью своевременной замены. Светодиод, подключенный к традиционному выводу 13 (вывод 19 корпуса DIP) — суперяркий, для его нормального, не слепящего свечения достаточно тока в доли миллиампера, что и обеспечивается необычно высоким номиналом резистора 33 кОм.
В схеме используется «голый» контроллер Atmega328 в DIP-корпусе, запрограммированный через Uno и установленный на панельку. Такие контроллеры с уже записанным Arduino-загрузчиком, продаются, например, в «Чипе-Дипе» (или загрузчик можно записать самостоятельно). Такой контроллер удобно программировать в привычной среде, но, лишенный компонентов на плате, он во-первых, получается экономичнее, во-вторых, занимает меньше места. Полноценный энергосберегающий режим можно было бы получить, избавившись и от загрузчика тоже (и вообще расписав весь код на ассемблере :), но здесь это не очень актуально, а программирование при этом неоправданно усложняется.
На схеме серыми прямоугольниками обведены компоненты, относящиеся отдельно к каналам скорости и направления. Рассмотрим функционирование схемы в целом.
Работа контроллера в целом управляется сторожевым таймером WDT, включенным в режиме вызова прерывания. WDT выводит контроллер из режима сна через заданные промежутки времени. В случае, если в вызванном прерывании таймер взводится заново, перезагрузки с нуля не происходит, все глобальные переменные остаются при своих значениях. Это позволяет накапливать данные от пробуждения к пробуждению и в какой-то момент обрабатывать их — например, усреднять.
В начале программы сделаны следующие объявления библиотек и глобальных переменных (чтобы не загромождать текст и без того обширных примеров, здесь выпущено все, что относится к датчику температуры-влажности):
Для инициации режима сна и WDT (пробуждение каждые 4 с) служат следующие процедуры:
Датчик скорости выдает частоту прерывания оптического канала, порядок величин — единицы-десятки герц. Мерить такую величину экономичнее и быстрее через период (этому была посвящена публикация автора «Оценка методов измерения низких частот на Arduino»). Здесь выбран метод через модифицированную функцию pulseInLong(), который не привязывает измерение к определенным выводам контроллера (текст функции periodInLong() можно найти в указанной публикации).
В функции setup() объявляются направления выводов, инициализируются библиотека передатчика 433 МГц и сторожевой таймер (строка для IN_PINF в принципе лишняя, и вставлена для памяти):
Наконец, в основном цикле программы мы сначала каждый раз при пробуждении (каждые 4 секунды) считываем напряжение и рассчитываем частоту датчика скорости ветра:
Время горения ИК-светодиода (потребляющего, напомню, 20 мА) здесь, как видите, будет максимальным при отсутствии вращения диска датчика и составляет при этом условии около 0,25 секунды. Минимальная измеряемая частота, таким образом, составит 4 Гц (четверть оборота диска в секунду при 16 отверстиях). Как выяснилось при калибровке датчика (см. далее), это соответствует примерно 0,2 м/с скорости ветра Подчеркнем, что это минимальная измеряемая величина скорости ветра, но не разрешающая способность и не порог трогания (который окажется гораздо выше). При наличии частоты (то есть при вращении датчика) время измерения (и, соответственно, время горения LED, то есть потребление тока) будет пропорционально уменьшаться, а разрешающая способность — увеличиваться.
Далее следуют процедуры, которые выполняются каждое четвертое пробуждение (то есть каждые 16 секунд). Значение частоты датчика скорости из накопленных четырех значений мы передаем не среднее, а максимальное — как показал опыт, это более информативная величина. Каждую из величин, независимо от ее типа, для удобства и единообразия мы перед передачей превращаем в целое положительное число размером в 4 десятичных разряда. За отсчетом числа пробуждений следит переменная count:
Далее — определение кода Грея направления. Здесь для снижения потребления вместо постоянно включенных ИК-светодиодов на все четыре канала одновременно через ключевой полевой транзистор с помощью функции tone() подается частота 5 кГц. Обнаружение наличия частоты на каждом из разрядов (выводы in_0p – in_3p) производится методом, аналогичным антидребезгу при считывании показаний нажатой кнопки. Сначала в цикле дожидаемся, имеется ли на выводе высокий уровень, и затем проверяем его через 100 мкс. 100 мкс есть полпериода частоты 5 кГц, то есть при наличии частоты минимум со второго раза мы опять попадем на высокий уровень (на всякий случай повторяем четыре раза) и это означает, что он точно там есть. Эту процедуру повторяем для каждого из четырех бит кода:
Максимальная длительность одной процедуры будет при отсутствии частоты на приемнике и равна 4×100 = 400 микросекунд. Максимальное время горения 4-х светодиодов направления будет тогда, когда не засвечен ни один приемник, то есть 4×400 = 1,6 миллисекунды. Алгоритм, кстати, точно так же будет работать, если вместо частоты, период которой кратен 100 мкс, просто подать постоянный высокий уровень на светодиоды. При наличии меандра вместо постоянного уровня мы просто экономим питание вдвое. Мы можем еще сэкономить, если завести каждый ИК-светодиод через отдельную линию (соответственно, через отдельный вывод контроллера со своим ключевым транзистором), но зато при этом усложняется схема, разводка и управление, а ток в 130 мА в течение 2 мс каждые 16 секунд — это, согласитесь, немного.
Наконец, беспроводная передача данных. Для передачи данных от места установки датчиков до табло метеостанции был выбран самый простой, дешевый и надежный способ: пара передатчик/приемник на частоте 433 МГц. Согласен, способ не самый удобный (из-за того, что девайсы рассчитаны на передачу битовых последовательностей, а не целых байтов, приходится изощряться в конвертации данных между нужными форматами), и уверен, что многие со мной захотят поспорить в плане его надежности. Ответ на последнее возражение простой: «ты просто не умеешь их готовить!».
Секрет в том, что обычно остается за кадром различных описаний обмена данными по каналу 433 МГц: поскольку приборы эти чисто аналоговые, то питание приемника должно быть очень хорошо очищено от любых посторонних пульсаций. Ни в коем случае не следует питать приемник от внутреннего 5-вольтового стабилизатора Arduino! Установка для приемника отдельного маломощного стабилизатора (LM2931, LM2950 или аналогичного) непосредственно поблизости от его выводов, с правильными цепями фильтрации на входе и выходе, радикально повышает дальность и надежность передачи.
В данном случае передатчик работал непосредственно от напряжения аккумулятора 12 В, приемник и передатчик были снабжены стандартными самодельными антеннами в виде отрезка провода длиной 17 см. (Напомню, что провод для антенн пригоден только одножильный, а размещать антенны в пространстве необходимо параллельно друг другу.) Пакет информации длиной в 24 байта (с учетом влажности и температуры) без каких-то проблем уверенно передавался со скоростью 1200 бит/с по диагонали через садовый участок 15 соток (около 40-50 метров), и затем через три бревенчатых стенки внутрь помещения (в котором, например, сотовый сигнал принимается с большим трудом и не везде). Условия, практически недостижимые для любого стандартного способа на 2,4 ГГц (типа Bluetooth, Zig-Bee и даже любительский Wi-Fi), притом, что потребление передатчика здесь составляет жалкие 8 мА и только в момент собственно передачи, остальное время передатчик потребляет сущие копейки. Передатчик конструктивно размещен внутри выносного блока, антенна торчит сбоку горизонтально.
Объединяем все данные в один пакет (в реальной станции к нему добавятся еще температура и влажность), состоящий из единообразных 4-байтных частей и предваряемый сигнатурой «DAT», отправляем его на передатчик и завершаем все циклы:
Размер пакета можно сократить, если отказаться от требования представления каждой из величин разнообразных типов в виде единообразного 4-байтового кода (например, для кода Грея, конечно, хватит и одного байта). Но универсализации ради я оставил все как есть.
Питание и особенности конструкции выносного блока. Потребление выносного блока подсчитываем таким образом:
20 мА (контроллер со вспомогательными цепями) в течение примерно 0,25 с каждые четыре секунды — в среднем 40/16 = 2,5 мА;
— 130 мА (излучатели) +
20 мА (контроллер со вспомогательными цепями) в течение примерно 2 мс каждые 16 секунд — в среднем 150/16/50 ≈ 0,2 мА;
Накинув на этот расчет потребление контроллера при съеме данных с датчика температуры-влажности и при работе передатчика, смело доводим среднее потребление до 4 мА (при пиковом около 150 мА, заметьте!). Батарейки (которых, кстати, потребуется аж 8 штук для обеспечения питания передатчика максимальным напряжением!) придется менять слишком часто, потому возникла идея питать выносной блок от 12-вольтовых аккумуляторов для шуруповерта — их у меня образовалось как раз две штуки лишних. Емкость их даже меньше, чем соответствующего количества АА-батареек — всего 1,3 А•часа, но зато никто не мешает их менять в любое время, держа наготове второй заряженный. При указанном потреблении 4 мА емкости 1300 мА•часов хватит примерно на две недели, что получается не слишком хлопотно.
Отметим, что напряжение свежезаряженного аккумулятора может составить до 14 вольт. На этот случай поставлен входной стабилизатор 12 вольт — чтобы не допустить перенапряжений питания передатчика и не перегружать основной пятивольтовый стабилизатор.
Выносной блок в подходящем пластиковом корпусе размещается под крышей, к нему на разъемах подведен кабель питания от аккумулятора и соединения с датчиками ветра. Основная сложность в том, что схема оказалась крайне чувствительной к влажности воздуха: в дождливую погоду уже через пару часов начинает сбоить передатчик, измерения частоты показывают полную кашу, а измерения напряжения аккумулятора показывают «погоду на Марсе».
Поэтому после отладки алгоритмов и проверки всех соединений корпус необходимо тщательно герметизировать. Все разъемы в месте входа в корпус промазываются герметиком, то же самое касается всех головок винтов, торчащих наружу, выхода антенны и кабеля питания. Стыки корпуса промазываются пластилином (с учетом того, что их придется разнимать), и дополнительно проклеиваются сверху полосками сантехнического скотча. Неплохо дополнительно аккуратно укрепить эпоксидкой используемые разъемы внутри: так, указанный на схеме выносного модуля DB-15 сам по себе не герметичен, и между металлическим обрамлением и пластиковой основой будет медленно просачиваться влажный воздух.
Но все эти меры сами по себе дадут только кратковременный эффект — даже если не будет подсоса холодного влажного воздуха, то сухой воздух из комнаты легко превращается во влажный при падении температуры снаружи корпуса (вспомните про явление, называемое «точка росы»).
Чтобы этого избежать, необходимо внутри корпуса оставить патрончик или мешочек с влагопоглотителем — силикагелем (мешочки с ним иногда вкладывают в коробки с обувью или в некоторые упаковки с электронными устройствами). Если силикагель неизвестного происхождения и долго хранился, его перед использованием необходимо прокалить в электродуховке при 140-150 градусах несколько часов. Если корпус герметизирован как следует, то менять влагопоглотитель придется не чаще, чем в начале каждого дачного сезона.
Основной модуль
В основном модуле все величины принимаются, расшифровываются, если надо, преобразуются в соответствии с калибовочными уравнениями и выводятся на дисплеи.
Приемник вынесен за пределы корпуса основного модуля станции и помещен в маленькую коробочку с ушками для крепления. Антенна выведена через отверстие в крышке, все отверстия в корпусе загерметизированы сырой резиной. Контакты приемника выведены на очень надежный отечественный разъем типа РС-4, со стороны приемника он подключен через отрезок сдвоенного экранированного AV-кабеля:
По одной из жил кабеля снимается сигнал, по другой подается питание в виде «сырых» 9 вольт от адаптера питания модуля. Стабилизатор типа LM-2950-5.0 вместе с фильтрующими конденсаторами установлен в коробочке вместе с приемником на отдельной платке.
Производились эксперименты по увеличению длины кабеля (на всякий случай — вдруг через стенку не заработало бы?), в которых выяснилось, что в пределах длины до 6 метров ничего не меняется.
Дисплеев типа OLED всего четыре: два желтых обслуживают метеоданные, два зеленых часы и календарь. Размещение их показано на фото:
Обратите внимание, что в каждой группе один из дисплеев — текстовый, второй — графический, с искусственно созданными шрифтами в виде картинок глифов. Здесь мы в дальнейшем на вопросе вывода информации на дисплеи останавливаться не будем, чтобы не раздувать и без того обширный текст статьи и примеров: из-за наличия картинок глифов, которые приходится выводить индивидуально (зачастую простым перечислением вариантов путем оператора case) программы вывода могут быть весьма громоздки. О том, как обращаться с таким дисплеями, см. публикацию автора «Графический и текстовый режим дисплеев Winstar», где есть в том числе и пример дисплея для вывода данных ветра.
Принципиальная схема. Часы и их дисплеи для удобства настройки обслуживаются отдельным контроллером Arduino Mini и больше мы их здесь разбирать не будем. Схема подключения компонентов к Arduino Nano, управляющим приемом и выводом метеоданных, следующая:
Здесь, в отличие от выносного модуля, показано подключение метеодатчиков — барометра и внутреннего датчика температуры-влажности. Следует обратить внимание на разводку питания — дисплеи питаются от отдельного стабилизатора 5 В типа LM1085. От него же естественно запитать дисплеи часов, однако в этом случае контроллер часов также должен питаться от этого же напряжения, причем через вывод 5 В, а не Vin (для Mini Pro последний называется RAW). Если запитать контроллер часов так же, как Nano — 9 вольтами через вывод RAW, то его внутренний стабилизатор будет конфликтовать с внешними 5-ю вольтами и в этой борьбе, естественно, победит сильнейший, то есть LM1085, а Mini останется вовсе без питания. Также во избежание всяческих неприятностей перед программированием Nano и особенно Mini (то есть перед подключением USB-кабеля) внешний адаптер следует отключать.
На стабилизаторе LM1085 при подключении всех четырех дисплеев будет выделяться мощность около ватта, потому его следует установить на маленький радиатор около 5-10 см2 из алюминиевого или медного уголка.
Прием и обработка данных. Здесь я воспроизвожу и комментирую только фрагменты программы, относящиеся к данным ветра, о других датчиках несколько слов далее.
Для приема сообщения по каналу 433 МГц применим стандартный способ, описанный во множестве источников. Подключаем библиотеку и объявляем переменные:
С величиной размера буфера buflen связана одна особенность: объявить ее значение (VW_MAX_MESSAGE_LEN) один раз в начале программы недостаточно. Так как в функции приема (см. далее) эта переменная фигурирует по ссылке, то размер сообщения по умолчанию приходится обновлять каждый цикл. Иначе из-за приема испорченных сообщений значение buflen будет каждый раз укорачиваться, пока вы не начнете получать всякую чушь вместо данных. В примерах обе эти переменные обычно объявляют локально в цикле loop(), потому размер буфера обновляется автоматически, а здесь мы просто будем повторять присваивание нужного значения в начале каждого цикла.
В процедуре setup делаем следующие установки:
Перед тем, как что-то принимать, проверяется интервал времени t_time, прошедшего с последнего приема. Если он превысил разумные пределы (например, 48 секунд — трехкратное время повтора сообщений с внешнего блока), то это воспринимается, как потеря датчика и каким-то образом индицируется на дисплее:
Коэффициент 55.5 — пересчет значения кода АЦП в реальное напряжение, его величина зависит от опорного напряжения и величин резисторов делителя.
Кстати, код Грея имеет одну особенность: в нем неважен порядок бит, все свои свойства код сохраняет при любой их перестановке. А так как при расшифровке мы здесь все равно рассматриваем каждый случай отдельно, то биты можно рассматривать в любом порядке и даже путать при подключении. Другое дело, если бы захотели это дело как-то упорядочить — например, создать массив значений направления («с», «ссз», «сз», «зсз», «з» и т.д.), и вместо индивидуального рассмотрения каждого варианта извлекать обозначения по номеру в этом массиве. Тогда пришлось бы преобразовывать код Грея в упорядоченный двоичный, и порядок бит играл бы существенную роль.
И, наконец, извлекаем значение скорости и закрываем все операторы:
Здесь 10+0.5*wFrq — калибровочное уравнение. 10 дм/с (то есть 1.0 метра в секунду) есть порог трогания, а 0,5 — коэффициент пересчета частоты в скорость (в дм/сек). При нулевом значении входной частоты это уравнение выдает 10 дм/с, потому следует отдельно позаботиться, чтобы при этом выводить не 1 м/с, а именно нулевое значение. Калибровать датчик скорости можно с помощью любого самого дешевого ручного анемометра и настольного вентилятора. Не пытайтесь определить порог трогания экспериментально — гораздо точнее получится, если отметить две-три точки калибровочной прямой значения скорости V от частоты F: V = Vп + K×F при разных скоростях потока, тогда порог трогания определится автоматически, как величина Vп (ордината точки пересечения этой прямой с осью скоростей).
Перед тем, как закрыть основной цикл, нужно сделать еще одну вещь. Напряжение аккумулятора у нас имеется, но выводить на дисплей все время его не нужно — только место занимать. Для этого и нужна кнопка Кн1 — нажимая на нее, мы временно (до следующего обновления данных) заменяем строку внешней температуры-влажности значением напряжения:
Кнопка у меня была, как видно из схемы, с перекидным контактом, но ничто не мешает установить обычную с замыкающим, подключив ее к питанию через резистор. Можно также добавить к этому мигание символов на дисплее в случае, если напряжение аккумулятора снизится ниже, например, 10 вольт, как знак, что его пора менять.
В заключение о метеодатчиках. В качестве наружного датчика был использован SHT-75 — единственный из найденных мной любительских датчиков, который не требует калибровки и показывает реальные величины и температуры и влажности прямо «из коробки» (отсюда и его высокая цена).
Библиотеку для его подключения можно найти тут.
Сконструирован SHT-75 довольно по-дурацки: металлическая подложка платы отлично проводит тепло, потому его необходимо целиком выносить за пределы корпуса. Иначе наличия одного только контроллера типа ATmega328 со стабилизатором питания в замкнутом корпусе достаточно, чтобы через подложку платы подогреть датчик на пару градусов даже в случае, если его головка вынесена наружу. Моя схема с датчиками ветра, с ее токами в 20-130 мА (пусть даже текущими ничтожные миллисекунды) подогревала SHT-75 градусов на пять, поэтому он был вынесен наружу и установлен отдельно на пластиковую пластину, торчащую из корпуса вбок.
Данные с SHT-75 снимаются тем же контроллером, что и данные датчиков ветра, и посылаются из выносного модуля в едином пакете через беспроводной канал 433 МГц. Для передачи предварительно они также приводятся к формату 4-байтовой строки.
Для измерения температуры и влажности внутри помещения был выбран банальный DHT-22 — поскольку диапазон там невелик в сравнении с улицей, то совершено безразлично, какой датчик использовать (кроме, разумеется, DHT-11, который вообще использовать не следует ни при каких обстоятельствах, в целевом назначении он просто неработоспособен). Температура DHT-22 была подправлена по измерениям ртутным термометром (с SHT-75 они полностью совпали!), а влажность слегка подрихтована сравнением с SHT-75. Поправки вводятся непосредственно перед индикацией на дисплее.
Кстати, DHT-22 тоже необходимо выносить подальше от корпуса с дисплеями — иначе он будет неизбежно подогреваться и врать. Я его закрепляю на пластиковом креплении внизу корпуса, на расстоянии миллиметров десять от него. Это обстоятельство, кстати, как я подозреваю, одна из причин (кроме отсутствия индивидуальной калибровки) того, что все фирменные бытовые метеостанции RST и Oregon безбожно врут в показаниях, имея разброс даже сами с собой (внутренний датчик с наружным) в два-три градуса и до десятка процентов влажности.
Барометр не представляет проблем, поскольку почти все имеющиеся в продаже сделаны на одной и той же основе — микроэлектромеханической (MEMS) микросхеме BMP180 или ее модификациях. Мой личный опыт попытки использования более редко встречающейся разновидности на основе LPS331AP был отрицательным: библиотеку для нее найти труднее, и в довершение был обнаружен конфликт с другими устройствами на I2C-шине. Показания барометра, возможно, придется подогнать по месту установки — каждые 10-12 метров высоты над уровнем моря снижают давление на 1 мм.рт. ст. Поэтому из показаний придется вычесть (или добавить) некую величину, чтобы величина давления соответствовала показаниям официальной метеостанции в данной местности.
Полностью все программы метеостанции я не привожу — они довольно громоздкие, а повторить конструкцию один в один вам все равно не удастся. Если что, стучитесь в личку.
UPD от 30.06.17. Установил питание от солнечной батареи. Комплект отсюда:
солнечная панель
контроллер
АКБ
Все вместе + доставка по Москве в пределах 2,5 тыр. Работает безупречно.
Интересна методика подсчета мощности солнечной батареи и АКБ, которую предлагают консультанты с этого сайта. Пример расчета на 3 Вт потребляемой мощности (у меня гораздо меньше), цитирую:
«3Вт умножаем на 24ч и делим на 6 = 12Ач это минимальная емкость аккумулятора
3Вт умножаем на 24ч и делим на 3ч = 24Вт это минимальная мощность солнечной батареи»
Без комментариев.
В моем случае получившаяся мощность солнечной энергоустановки в десятки раз превышает необходимую при самых плохих погодных условиях. Поэтому в контроллере датчика можно особо не заботиться об энергосбережении, и применить любые необходимые частоты снятия показаний и осреднения величин.
UPD от 13.09.18. За почти два сезона эксплуатации выявились сильные и слабые стороны станции. Слабые — прежде всего то, что цикл обновления показаний в 16 секунд (из четырех серий измерений), как это было изначально, слишком длинный. Установка солнечной батареи с буферным аккумулятором позволила не думать об энергосбережении и поиграться с длительностью цикла. В результате цикл был установлен в 8 секунд (четыре измерения через две секунды).
Из механических усовершенствований был введен твердый подпятник под острие датчика скорости (да, меня еще тогда предупреждали о его необходимости, но я тогда не придумал, как его сделать). Через некоторое время ось датчика полностью пропилила фторопластовую опору и порог трогания резко возрос (на чувствительности флюгера это, кстати, совершенно не сказалось). Потому опора была заменена на подпятник из нержавейки, в котором тонким сверлом сделано небольшое углубление. Предчувствую, что придется потом еще что-то придумывать с острием, которое, как и вся ось, сделано из дюраля. Но я отложил это до момента, когда датчик все равно придется переделывать: лазерный диск, взятый за основу конструкции, за два сезона помутнел от солнца и начал растрескиваться.
UPD от 05.06.19.
О переделке датчика (флюгер оставлен тот же самый). Датчик скорости пришлось переделать и из-за стершейся оси и из-за пришедшего в негодность лазерного диска. Основа конструкции оставлена той же самой, но новый лазерный диск покрашен золотистой краской из баллончика. Решение для острия оси нашлось в следующем виде. В дюралевой оси было высверлено углубление точно по центру, и туда вставлен на секундном клее обрезок верхушки китайского метчика на 3 мм. Верхушка у метчика представляет собой хорошо отцентрованный конус с углом около 70-80 град., он был дополнительно отполирован шкуркой-нулевкой и затем пастой ГОИ. В качестве основания я использовал головку нержавеющего винта М3 со спиленным шлицем, в которой обычным сверлом D=2 мм намечено небольшое углубление по центру. Этот винт заворачивался прямо в углубление во фторопласте, пропиленное осью ранее, чем обеспечивалась центровка.
Кончик оси смазывался графитовой смазкой для защиты от коррозии (так как нержавеющие свойства метчика мне неизвестны). После некоторой притирки порог трогания снизился настолько, что его стало невозможно измерить фирменным анемометром, у которого порог составляет около 0,3-0,5 см/с. По косвенным данным (построением прямой по двум точкам) был волюнтаристски принят порог в 0,3 м/с, хотя, вероятно, он несколько меньше.
Главное изменение в алгоритмах обсчета также касается датчиков ветра, и я посчитал полезным вынести это в отдельную статью.