Основа
простого анемометра — вентилятор процессора, который работал от
напряжения 5V. Крыльчатка вырезана из старого компакт диска.
Тахометрический датчик выдает 4 имп. на оборот. Если все сложить
вместе, то головка анемометра делает 2,5 импульса на метр проходящего
воздуха.
Остается определить сколько импульсов пришло за 1 сек., разделить на 2,5 и получить скорость ветра в метрах в секунду.
Вопрос электроники можно решить поразомну, но на микроконтроллере это делается очень просто. Схема ниже.
В схеме будет работать любой микроконтроллер из серии MSP430, с портом P1.x на 8 бит. MSP430F2011 – только потому, что у меня они есть.
Для программирования потребуется MSP430 Launchpad, к которой контроллер подключается (четырьмя проводами) через разъем CN2, и программа CCS любой версии (бесплатно от TI). Копипастим содержимое текстового файла Anemometer_MSP430any_for_sensor_2_5_turns_per_meter_C_file.txt в Code Composer Studio, нажимаем иконку с изображением жука и программа сливается в микроконтроллер. Отключаем Launchpad, подключаем датчик анемометра, устанавливаем батарейку и схема "готова к бою".
С этого момента, у Вас в руках, готовый анемометр, который показывает скорость ветра от 1 до 16 м/с.
End of story :)
Дальше можно не читать.
На e-mail я не отвечаю, тк нет времени. Поэтому ответы на вопросы, которые Вас могут интересовать — ниже.
Датчик.
Скорость вращения лопастей анемометра напрямую зависит от его геометрии. Если Вы сделали крыльчатку из компакт диска, то расстояние между осью вращения и центром лопасти будет 45-50мм. При этом, как бы криво Вы все не сделали, ротор будет делать полный оборот на 1,6м прошедшего воздуха.
Скорость страгивания зависит качества подшипников и площади/геометрии лопастей.
О программе.
Программа работает следующим образом. Микроконтроллер конфигурируется, включаются прерывания по WDT, по изменению напряжения на входе P1.7, и уходит в "sleep". Для WDT остается работать внутренний генератор 12 кГц. // WDT (WatchDog Timer) работает как обычный таймер.
Если на входе P1.7 напряжение меняется (Hi/Low), то микроконтроллер просыпается, добавляет 1 к счетчику импульсов от датчика, переключает красный светодиод (D1) и снова засыпает.
Прерывание от WDT будит микроконтроллер 164 раза в секунду. Каждый четный раз данные выводятся на светодиоды D2-D5, нечетный – D6-D9. В дополнение, на каждое 164-е прерывание (прошла 1 секунда) микроконтроллер пересчитывает данные, которые выводятся на светодиоды и обнуляет счетчик импульсов от датчика. И засыпает.
Что бы не работать с дробными числами, коэффициент пересчета импульсов в метры прошедшего воздуха умножается на 2. Так же, на 2, умножается количество импульсов пришедших с датчика.
Для пересчета скорости ветра в число горящих светодиодов делается следующее. В 16-ти битную переменную закладывается 8 единиц в младшем разряде (0b0000000011111111) и сдвигается влево на значение скорости ветра. Для 5 м/с результат - 0b0001111111100000. После этого, независимо ни от чего, результат сдвигается вправо, 8 раз. Получаем пять единиц в младшем разряде или 0b0000000000011111. Результат, 0b00011111, отправляем на индикатор.
Так как используется циклический сдвиг, то после 8 м/с результат будет показываться выключенными светодиодами.
Ток потребления.
От литиевой батарейки CR2032 (3V) микроконтроллер потребляет < 0,2mA, датчик -1,5mA, все светодиоды - до 5mA. В сумме около 7mA (max).
Питать от чего и как.
Расчетное снаряжение питания для MSP430 от 1,8V до 3,6V. Зеленые и красные светодиоды требуют 1,6V, белые - 2,6V.
Для питания от ... необходимо ...
От двух пальчиковых аккумуляторов или двух угольно-цинковых батарей - заменить все светодиоды на красные или зеленые, Последние нежелательны, так как их плохо видно.
От двух щелочных пальчиковых, трех угольно-цинковых батареек или трех NiCd/NiMH аккумуляторов - ничего менять не нужно.
От трех щелочных пальчиковых, литиевого аккумулятора (к примеру 18650) - добавить последовательно с батареей выпрямительный диод (на нем упадет лишние 0,6V).
Для аккумуляторной батареи 6V или 12V потребуется дополнительный регулятор напряжения на 3,3V - 3,6V.
До какой частоты от датчика схема продолжает работать без сбоев.
Теоретически, максимальная частота около 2 кГц (не больше 10 кГц, это точно). Это связано с тем, что каждый раз, когда микроконтроллер выходит из режима сна, он должен запустить внутренний генератор ~1 МГц, а на это уходит время.
Сделать то же, но на Ардуино.
Можно, но Ардуино не «заточено» под низкое энергопотребление.
Точность.
Действительно, если Вы повторили все, один в один, то точность будет плюс-минус 20%. Но для байдарки, эта ошибка, не имеет никакого значения.
_
Make a free website with Yola