Ничего не найдено :(
    В гостях у Самоделкина! » Темы » Советы » Стрелочный барометр с датчиком BMP280

    Стрелочный барометр с датчиком BMP280



    Стрелочный барометр автора Arduino Project Hub под ником Mirko Pavleski получает данные от датчика BMP280, обрабатывает их при помощи Arduino Uno, а результат измерения выводит на микроамперметр с переделанной шкалой. Лицензия - GPL версии 3 или больше по вашему выбору.

    На приведённой далее схеме резистор, включённый последовательно с микроамперметром, показан как постоянный, на самом деле он переменный или подстроечный. Значение 5 кОм дано для индикатора с током полного отклонения в 1 мА. Сразу после включения скетч сначала отклоняет стрелку на максимум, и за это время надо успеть выставить её точно на конечное деление шкалы. При последующих включениях, если переменный или подстроечный резистор качественный, а калибровка не сбита, повторять её не требуется.



    Скетч приведён далее, его даже под спойлер прятать не надо - всего 41 строка:

    #include "Wire.h"    // imports the wire library for talking over I2C 
    #include "Adafruit_BMP085.h"  // import the Pressure Sensor Library
    Adafruit_BMP085 mySensor;  // create sensor object called mySensor
    
    
    float pressure; //Variable for holding pressure reading
    
    int out=0;
    int ANALOGPRESSURE=0;
    
    void setup() 
    {
    pinMode(6, OUTPUT);
    
    mySensor.begin();   //initialize mySensor
    
    test();
    }
    
    void loop() {
    
    pressure=mySensor.readPressure(); //Read Pressure
    ANALOGPRESSURE=map (pressure,90135,95653,0,255);//Absolute values
    analogWrite (6,ANALOGPRESSURE);
    delay (20000);
    }
    
    void test() {
    for (int i=1;i<=255;i++)
    {
    analogWrite (6, i);  
    delay (20);
    }
    for (int i=255;i>=1;i--)
    {
    analogWrite (6, i);  
    delay (20);
    }
    delay (1000);
    }


    Для работы программы требуется библиотека Adafruit_BMP085.h

    Разберём одну строку кода:

    ANALOGPRESSURE=map (pressure,90135,95653,0,255);//Absolute values


    Здесь 90135 и 95653 - минимальное и максимальное абсолютное давление в местности, где проживает автор, а 0 и 255 - минимальное и максимальное значение байта на входе ЦАП. Первые два числа необходимо поменять на минимальное и максимальное значение абсолютного давления в вашей местности (потребуется знать свою высоту над уровнем моря). Шкалу можно отградуировать в значениях как абсолютного, так и относительного давления - мастер предпочёл второй вариант. В расчётах вам поможет этот калькулятор. Возможна и градуировка шкалы в привычных миллиметрах ртутного столба, тут калькулятор потребуется этот.

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

    Источник (Source)

    Простой способ заточки пильного диска для циркулярной пилы

    Прибамбасики для аэрографа

    Добавить комментарий

    5 комментариев
    Иван_Похмельев
    Шкалу можно отградуировать в значениях как абсолютного, так и относительного давления - мастер предпочёл второй вариант.
    Ещё бы он рассказал, что за "относительное давление" он имел в виду.
    Korolev
    И да, почему, собственно, и возник вопрос, если уж это гектопаскаль, то буковки должны выглядеть иначе: hPa!
    Korolev
    feonor12,
    Гектопаскаль, по идее
    Ну так, я поэтому и задал этот дурацкий вопрос! Шкала распечатана, а буковки карандашиком корявенько дописаны!
    feonor12
    Korolev,
    Гектопаскаль, по идее. Непонятно только зачем выбрана эта единица измерения давления.
    Korolev
    Что обозначают буквы Нра на шкале прибора?

    Привет, Гость!


    Зарегистрируйтесь

    Или войдите на сайт, если уже зарегистрированы...

    Войти

    Добавьте самоделку

    Добавьте тему

    Онлайн чат

    Опрос
    А Вы знаете, что на сайте оплачиваются отчеты о создании самоделок?

    Последние комментарии

    Все комментарии