Цифровой термоанемометр на PIC

3d1Термоанемометрический цифровой датчик потока воздуха на PIC

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

Принцип действия датчика основан на одновременном нагреве нагревательным элементом двух термодатчиков, расположенных с разных сторон от него. При этом, если потока воздуха нет, то оба термодатчика нагреваются одинаково, а если поток воздуха присутствует, то "пятно тепла" смещается в сторону того термодатчика, куда направлен поток воздуха. Данный принцип измерения заимствован из промышленных термоанемометрических датчиков, однако стоимость таких датчиков для монтажа в трубе 100 – 150 диаметра начинается от 6000 р.

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

Схема термоанемометрического датчика

Схема датчика показана на рисунке ниже:

thermoanemometr

(Скачать схему в пдф)

Датчик собран на микроконтроллере PIC16F688, работающем на частоте 4 МГц от встроенного генератора. В качестве термодатчиков использованы два широко распространенных цифровых датчика DS18B20. Для упрощения программы, чтобы не использовать сложную процедуру нахождения датчиков, висящих на одном проводе, датчики подключены на разные выводы контроллера и опрашиваются каждый отдельно. Нагревательным элементом для них служит резистор на 1800 ом мощностью 2Вт. Резистор питается напряжением 48 В (об этом ниже). Остальная схема питается от 5 В. Два светодиода индицируют направление потока воздуха. Контроллер по UART передает значения температур обоих датчиков, их разность, а также значение АЦП, пропорциональное напряжению, взятому из точки соединения резисторов R2 и R3. Это позволяет контролировать наличие нагревающего напряжения, обрыв или замыкание резистора R2. FU1, D4 и VR1 обеспечивают защиту при случайном замыкании линии 48 В на линию 5 В.

Термоанемометрический датчик спроектирован как часть системы умного дома, постоенной на шине CAN; и подключается к одному из модулей системы LAN-кабелем (UTP8), по которому подается питание на датчик и обратно передаются данные с датчика. Так как модули умного дома объединены CAN-шиной с помощью такого же кабеля, и по этому же кабелю подается питание для них 48 В от единого блока питания, то для нагрева резистора и использовано это напряжение.

Датчик собран на печатной плате, чертеж которой показан на рисунке ниже.

thermoanemometr pcb 1

thermoanemometr pcb 2

(Скачать в пдф)

Расположение деталей на плате:

Слой bottom:

silk bottom

Слой top:

silk top

 

Примерный внешний вид готового устройства показан на следующих рисунках:

3d1

3d2

photo 2022 12 15 08 05 01

Плата имеет такие размеры, чтобы ее можно было установить на вентиляционной трубе или выпускном канале осевого вентилятора вдоль оси. При этом резистор R2 и термодатчики вводятся внутрь трубы через подготовленное отверстие. Датчик лучше располагать таким образом, чтобы резистор R2 был сверзху платы, дабы избежать ее дополнительного нагрева.

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

Настройка и калибровка.

Термоанемометрический датчик потока воздуха требует калибровки. Для этого датчик нужно подключить к компьютеру через переходник USB-UART и смотреть показания датчика в любой терминальной программе. Настройки порта: 9600, 8-N-1 (по умолчанию).

Первичная калибровка производится в закрытом помещении или боксе без движения воздуха.

Для начала нужно определить разницу в показаниях двух термодатчиков без нагрева. У автора она составляла примерно 0,05 – 0,1 градуса. Эта разница на работу датчика не влияет, однако позволяет убедиться, что термодатчики работают правильно.

Затем нужно определить разницу показаний при включенном нагреве в установившемся режиме. У автора разница достигала 3.25 градуса при установившейся температуре около 75 градусов (В первоначальной версии стоял резистор на 1500 ом, и датчики нагревались до 90 градусов, а сам резистор и того больше. Для снижения риска возгорания или перегрева мощность на резисторе пришлось уменьшить.) Возможно, что разные стороны резистора нагреваются неравномерно.

Чтобы нивелировать эту разницу можно немного подогнуть резистор к одному из термодатчиков, либо один из термодатчиков подогнуть к резистору.

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

При движении воздуха "пятно тепла" смещается к одному из датчиков, и даже при слабом потоке разница температур может достигать 6-8 градусов, а при значительном потоке – и более.

Пороги дельты температур для индикации светодиодами заданы такие:

  • При разнице больше 4 градусов – мигает зеленый светодиод – есть поток воздуха в вытяжке.
  • При разнице от -3 до 4 градусов – горят красный  и зеленый светодиоды – потока нет.
  • При разнице меньше -3 градусов – мигает красный светодиод – есть обратная тяга.

При обратной тяге также выводится высокий логический уровень на 4 вывод разъема J1 для возможности дальнейшего подключения какого-либо исполнительного устройства или сигнализатора.

Автором предполагается автоматически включать вентилятор при отсутствии тяги в вентиляции. Однако при этом задувает и сам датчик потока. Поэтому автоматика периодически должна выключать вентилятор, выжидать определенное время на нагрев резистора и определять наличие тяги без вентилятора. Решение о включении вентилятора автоматика принимает на основе данных, полученных с термоанемометра.

Прошивку для микроконтроллера можно скачать здесь.

Плату для самостоятельной сборки можно купить здесь.

Загрузка...