Комментарии 19
А вам это зачем? Вот я понимаю дронов направление распознавать
Вопрос, что там внутри и насколько это будет надежно
Все таки улица, это важность, перепады температуры и пыль
Внутри УЗ излучатель и приемник, практически как в ардуиновских измерителях расстояния. В условиях РФ только снег им мешает, пожалуй. Это уже довольно известное и проверенное решение, просто раньше оно не было доступно на алишке за относительные копейки.
Если это излучатель типа SR04, то там открытая мембрана. Поэтому неблагоприятными факторами будет влага (прямая и конденсат), та же влага а замершем состоянии (не только снег) ну и пыль, как самый главный враг всех мембран.
Если это герметичный датчик, как в парктрониках, то не понятен вообще принцип действия.
Поэтому я и спросил, сто внутри. Несколько пар раздельных приемников/передатчиков повернутых друг от друга, чтобы мерить направление? Открытых или закрытых?
В заводских вариантах закрытые обычно, больше на парктроник похожи, да. А что с ними не так, принцип тот же. Вот довольно старая, но актуальная статья на эту тему с расчетами: https://www.dl1glh.de/ultrasonic-anemometer.html мы как-то в своё время пытались повторить, но повторялка тогда еще не выросла, как оказалось ))
А еще пишут, что датчики очень чувствительны к метеоусловиям, правильности установки и полному соблюдению геометрии корпуса.
Хотя, имея возможность периодической калибровки, все это вещи не сильно существенные.
Достаточно надёжно и долговечно, от влажности, пыли и температур они защищены. Есть только две проблемы - обледенение и порывы сильного ветра, и тогда они начинают показывать всякую чушь.
Всегда диву даюсь почему встроенщики так не любят enum и switch case и предпочитают копипастить if elfse if.
Патамучта If else написано на человеческом языке, который разберет даже пятиклассник, а все эти enum и switch case - на программистском, который надо изучать специально.
Конкструкции типа этой вроде не выглядят как rocket science, чтобы у пятиклассника остались какие-то принципиальные вопросы.
код
typedef enum {
N , // 0,360 С
NNE, // 22.5 ССВ
NE , // 45 СВ
ENE, // 67.5 ВСВ
E , // 90 В
ESE, // 112.5 ВЮВ
SE , // 135 ЮВ
SSE, // 157.5 ЮЮВ
S , // 180 Ю
SSW, // 202.5 ЮЮЗ
SW , // 225 ЮЗ
WSW, // 247.5 ЗЮЗ
W , // 270 З
WNW, // 292.5 ЗСЗ
NW , // 315 СЗ
NNW, // 337,5 ССЗ
} Direction;
byte convert_dir_byte(int degr) //переводим градусы в 16 значений направления
{
if ((degr>=349)||(degr<= 11)) return ( N );
if ((degr>= 12)&&(degr<= 33)) return ( NNE );
if ((degr>= 34)&&(degr<= 56)) return ( NE );
if ((degr>= 57)&&(degr<= 78)) return ( ENE );
if ((degr>= 79)&&(degr<=101)) return ( E );
if ((degr>=102)&&(degr<=123)) return ( ESE );
if ((degr>=124)&&(degr<=146)) return ( SE );
if ((degr>=147)&&(degr<=168)) return ( SSE );
if ((degr>=169)&&(degr<=191)) return ( S );
if ((degr>=192)&&(degr<=213)) return ( SSW );
if ((degr>=214)&&(degr<=236)) return ( SW );
if ((degr>=237)&&(degr<=258)) return ( WSW );
if ((degr>=259)&&(degr<=281)) return ( W );
if ((degr>=282)&&(degr<=303)) return ( WNW );
if ((degr>=304)&&(degr<=326)) return ( NW );
if ((degr>=327)&&(degr<=348)) return ( NNW );
}А уж embed программист и подавно должен быть сообразительнее, тем более что код самодокументируемый получается.
у вас получилось в два раза сложнее, хотя гораздо проще было бы сделать обычным массивом.
Хотя тут, в принципе, можно обойтись (degr+11)/16
Переход на ультразвуковой датчик действительно снимает проблему механических анемометров, но при эксплуатации зимой в мороз пьезоизлучателям всё же не помешает встроенный подогрев, а то из-за налипающего снега могут искажаться показания
Переход на замеры с помощью механических анемометров действительно снимает проблему ультразвуковых датчиков, которым при эксплуатации необходимо электропитание, а зимой в мороз необходим подогрев.
Наверное, надо было привести здесь все характеристики. По ссылкам почему-то не ходют.
У меня у одного возникли вопросы, касательно передачи данных от датчика к конечном модулю индикации?
Проясните, если я понял неверно:
1) имеется датчик анемометра, ультразвуковой с возможностью контроля направления ветра.
2) есть ардуинка (промежуточная), которая программный сериалом, через конвертом rs-485 - UART подключена к датчику, проводом. Сигнальный + питание. Эта ардуинка стоит под крышей, но на улице.
3) на Ардуинку (промежуточную) прикручен тупо передатчик 433МГц, который просто транслирует в эфир пару-тройку байт, которые кодирует ардуинка, основываясь на данных с датчика, которые читает через rs-485.
4) приёмная часть, диапазона 433МГц реализовано банальным приемником, с которого мы просто читаем байты и ждём пакеты. Дисплей - просто есть и все, остальное не важно.
Вопрос: а для чего вся эта промежуточная лабуда? Ведь есть максимально дешевые решения типа "Беспроводной приемопередатчик eletechsup RT48D02_RT59E02_RT6AF02_RT39D01 за 208,05 ₽ - https://ali.click/guwvh1b
Насколько я понял, с одной стороны можно поставить модуль с rs-485, а с другой - TTL, такто вообще идеальное решение!
Основные технические характеристики
Рабочая частота: диапазон 2,4 ГГц (2400–2525 МГц).
Рабочее напряжение: DC 5V ~ 15V.
Потребляемый ток: около 50 мА при передаче (+11 дБм) и 25 мА в режиме приема. Рекомендуется использовать стабильный источник питания.
Дальность связи: 80–100 метров в условиях прямой видимости (на открытом пространстве).
Интерфейс подключения: физический RS-485 (линии A+ и B-).
Совместимость в экосистеме: RT48D02 полностью совместим по радиоканалу с другими модулями этой линейки от eletechsup — например, с моделью RT39D01 (версия с USB) или RT59E02 (версия с RS-232). Это позволяет легко связать ПК по USB с удаленным промышленным датчиком на RS-485
Пара таких модулей и всё. Полный доступ к датчику и хоть на графическом дисплее можно рисовать направление ветра, показывать порывы и так далее, а не эти односторонний дискретные данные. И по цене дешевле, причём сильно!
Я бы так сделал!
Ваша ссылка выдает "Такой страницы нет". Девайс находится через поиск по названию "eletechsup". Почему-то по ссылкам он называется не как у вас, а RT38B01 и стоит:
wildberries: 1 812 ₽
market.yandex.ru: 7 944 ₽
aliexpress: 6 249 ₽
Цена 208 р в таком контексте меня все равно бы насторожила, потому как велика в такой ситуации вероятность нарваться на отсев после отбраковки.
Дальность 80-100 м на открытом пространстве - это вообще ни о чем. 2,4 ГГц для таких целей выбирать не следует, адназначна - он на листве, стенках и перегородках сядет. У меня, например, Wi-Fi теряется просто на двойном стеклопакете.
Есть 100500 методов обмена данными по радио. Есть радиоудлинители UART, Wi-fi, всех этих RS (232, 485, 422), Bluetooth. Есть еще LoRa и даже просто Ethernet. Перепробовать их все нереально и не нужно - больше денег потратишь на испытания, как говорит мне многолетний опыт. Сэкономишь на контроллере - потеряешь на стабилизаторах питания или еще на чем-нибудь не непредусматриваемом заранее.
Потому я предпочитаю выбирать из уже проверенного. Спасибо за наводку, буду иметь в виду, что и такую приблуду придумали.

Ульразвуковой датчик ветра