Все про датчик тиску Ардуїно
Однією з основних параметрів оцінки довкілля є атмосферний тиск. Для його вимірювання використовують датчики Ардуїно, які також здатні вимірювати висоту щодо рівня моря і навіть передбачати погоду. Найпопулярнішим і найдоступнішим сенсором для плати Arduino став модуль bmp280.
Зміст статті [приховати] [показати]
- Особливості датчиків тиску Ардуїно
- Принцип роботи барометра
- Електронний барометр
- Модуль ВМР 280
- Як підключити модуль ВМР 280 до датчика тиску Arduino
- Принцип та порядок використання бібліотеки
- Варіанти використання ВМР 280
- Вимірювання висоти точки
- Датчики, що часто використовуються
- Помилки, які можуть виникнути під час підключення
- Висновок
Особливості датчиків тиску Ардуїно
Датчик тиску є невеликим пристроєм, створеним на основі кремнію. Область його використання дуже широка. Їх можна зустріти як у промисловості, так і у побуті. Він здатний працювати при різних вимірах (відносних, абсолютних). При цьому слід врахувати, що відносним називають показник постійного тиску атмосфери, а абсолютним показники у вакуумі.
Головним елементом датчика називають вакуумну камеру, виготовлену з пластику. Саме щодо неї провадяться всі розрахунки для вимірювання абсолютного тиску.
Надійність роботи датчика Arduino доводить той факт, що багато провідних виробників медичної та побутової техніки використовують саме їх. Разом із датчиком застосовується LCD-дисплей, куди виводиться вся інформація. Щоб підключити датчик, використовують операційний підсилювач.
Принцип роботи барометра
Тиск атмосферного стовпчика вимірюють приладом, що зветься барометром. Раніше він був круглим і плоским, як тарілка, усередину поміщали ртуть і ставили пробірку. Якщо зовні тиск збільшувався, то ртуть піднімалася всередині колби вище.
Такий принцип дії схожий на термометр спиртового типу. Барометр-анероїд – більш удосконалена та безпечна модель, її створили пізніше.
Сьогодні барометри використовують не лише для оцінки показників атмосферного тиску. Його так само встановлюють різні літальні апарати з метою визначення висоти польоту. Якщо літальний апарат при підйомі виявляється вище за рівень моря, показник тиску на приладі зменшується. Таким чином, виходить визначити висоту польоту.
Ще один варіант використання барометрів – прогнозування погоди у домашніх умовах. Для цього використовують знання і те, як погода залежить від тиску атмосфери. На такі прилади додатково встановлюють датчики, що визначають температуру повітря та рівень його вологості.
Електронний барометр
Звичайні барометри досить громіздкі, тому їх використання у робототехніці важко. Для цього створили спеціальні прилади невеликої форми, що приєднується до датчика Ардуїно. Багато сучасних пристроїв створюють за технологією МЕМС, аналогічно таким приладам, як акселерометр або гіротахометр, де застосовують ефект зміни показників опору матеріалу, якщо на нього впливають сили, що деформують.
Модуль ВМР 280
ВМР 250 - мікро-чіп, що використовується для цифрового високочастотного вимірювача показників атмосферного тиску. Кожен датчик на етапі створення проходить калібрування. Завдяки мінімальним розмірам, чудовій вимірювальній здатності та незначному енергоспоживання, вони часто використовуються для датчиків тиску Ардуїно. ВМР 280 має два послідовні інтерфейси, що використовуються для обміну даними та 3 режими роботи:
- FORCED. Цей режим дозволяє активувати модуль подачі сигналу ззовні. Після того, як виміри зроблено, він переходить у режим автоматичного зниженого енергоспоживання.
- SLEEP. Перебуваючи в цьому режимі, споживання електроенергії приладу мінімальне.
- NORMAL. При переході в цей режим модуль починає періодичні виміри. Після цього він знову переходить у режим сну. Для завдання потрібної частоти, з якою мають проводитися виміри, використовується спеціальна програма. Результат може бути зчитаний у будь-який час.
Крім вимірювання показників атмосферного тиску модуль ВМР 280 здатний вимірювати температуру повітря. Щоб відфільтрувати обчислення, які здійснює модуль, використовується програмний фільтр із відповідними налаштуваннями.
Серед основних технічних характеристик модуля ВМР 280 виділяють:
- показники напруги живлення лише на рівні від 1,71 V до 3,6 V;
- атмосферний тиск може вимірюватися в діапазоні від 300hPa до 1100hPa (такі показники характерні для висоти від -500 до 9000 м вище за рівень моря);
- інтерфейс обміну інформацією SPI з максимально можливою частотою роботи 10 МГц або I2C з показником максимально можливою частотою роботи 3,4 МГц;
- прилад здатний працювати при температурі не нижче -40 і вище +85 градусів;
- розмір модуля складає 21*18 мм;
- у режимі роботи величина струму споживання дорівнює 2.7uA.
Як підключити модуль ВМР 280 до датчика тиску Arduino
Щоб підключити модуль Ардуїно, використовують інтерфейс. Це може бути SPI або I2C. Вибір конкретного залежить від проекту, над яким ведеться робота та його специфіки, а також можливості самого мікроконтролера. Апаратний інтерфейс у датчика Arduino розміщено на двох пінах: A4 та A5. Тому при такому режимі для підключення використовують 4 дроти. 2 необхідні для забезпечення живлення модуля і ще 2 застосовують як інформаційну шину. При роботі інтерфейсу SPI потрібно використовувати додаткові 2 дроти.
В інтернеті представлений величезний вибір різноманітних бібліотек, які використовуються для спрощення роботи з модулем. Наприклад, існує можливість зменшити до мінімуму час, необхідний освоєння модуля без урізання його функціоналу. За допомогою подібних бібліотек користувач отримує можливість вибирати на свій розсуд спосіб підключення, налаштовувати такі параметри, як точність або періодичність проведення вимірювань, виходячи з попередньо встановленого режиму.
Принцип та порядок використання бібліотеки
Після встановлення вибраної бібліотеки до неї підключаються Adafruit_BMP280.h або інший пристрій, що надає доступ до інтерфейсів. Далі процес виглядає так:
- Створюється екземпляр Adafruit_BMP280. Він необхідний для отримання повного доступу до різних функцій та можливостей датчика, що вимірює показники атмосферного тиску. Він може бути створений декількома способами, які залежать від виду підключення (по шині I2C, апаратного або програмного SPI).
- Використовуючи об'єкт bmp, можна почати працювати з параметрами та можливостями бібліотеки. Однак спочатку ініціалізується модуль. Найкраще це робити за допомогою функції setup(), яка використовується перед основним циклом.
- При появі інформації про помилку перевіряється коректність підключення. Крім цього, рекомендується перевірити відповідність використовується інтерфейсу. Якщо ініціалізація проведена успішно, відбувається перехід до мікросхеми ВМР280. У бібліотеці при цьому існує функція setSampling(...). Використовуючи її, користувач зможе встановити необхідні параметри, серед яких (час активності датчика, параметри вимірювання показників атмосферного тиску, ступінь фільтрації, температура повітря).
Функція setSampling(...) має декілька параметрів. Перший контролює режим роботи пристрою, яких тут чотири:
- MODE_NORMAL – циклічний вихід із сплячого режиму після певного часу, встановленого користувачем. Після цього знімаються показники, які залишаються в пам'яті, а сам пристрій знову сягає режиму сну.
- MODE_SLEEP – режим, коли пристрій перебуває у сплячому режимі з мінімальним споживанням електроенергії.
- MODE_FORCED – після виставлення цього режиму, пристрій починатиме вимірювання, отримавши команду про це від Ардуїно з наступним переходом у сплячий режим.
- MODE_SOFT_RESET_CODE – встановлення цього режиму призводить до скидання всіх заводських налаштувань.
Два наступні параметри необхідні для точного вимірювання показників тиску атмосфери та температури повітря. Четвертий режим необхідний для фільтрації вимірювань, що проводяться. П'ятий відповідає за активізацію приладу щодо вимірювань.
Варіанти використання ВМР 280
Модуль може використовуватись різними способами. Найчастіше його застосовують для визначення висоти під час польоту або глибини, наприклад, під час опущення в шахту. Однак головним його призначенням залишається отримання даних на метеостанції. Маючи певні знання та навички, за його допомогою можна створити домашню метеостанцію з наступним виведенням отриманих даних на РК-дисплей мобільного телефону.
Вимірювання висоти точки
Ще одним із варіантів використання датчика тиску Ардуїно є вимірювання висоти точки або предмета над рівнем моря. Якщо врахувати, що середній показник тиску безпосередньо на рівні моря дорівнює 1013 гПа. З підвищенням висоти на 1 метр це значення підвищується на 0,11 гПа. Тому, якщо з отриманого в результаті вимірювання показника відібрати 1013, а після результат розділити на 0,11, вийде число, що дорівнює висоті.
Датчики, що часто використовуються
Крім ВМР 280 є інші датчики. Широкого поширення набули ВМР 180 та bme280.
Основні характеристики ВМР 180:
- час спрацьовування пристрою становить 45 мс;
- здатність вимірювати рівень атмосферного тиску у межах від 225 до 825 мм ртутного стовпця;
- підтримка інтерфейсу I2C;
- значення напруги живлення становить від 3,3 до 5 Ст.
Цей датчик включає 3 різних пристрої, здатні крім атмосферного тиску, ще визначати інші показники, серед яких температура і вологість навколишнього повітря. Він відрізняється підвищеною надійністю, незначним споживанням струму (0,5 мА) та стабільною тривалою роботою.
ВМЕ280 відрізняється такими характеристиками:
- у режимі очікування величина споживання струму становить 0,1 мкА;
- рівень напруги не більше від 1,7 до 3,6В;
- пристрій поміщено в корпус із металу з вісьмома виходами;
- датчик підтримує кілька інтерфейсів, серед яких SPI та I2C.
При порівнянні трьох перелічених моделей, визнаних найбільш популярними серед користувачів датчиків для Ардуїно, можна відзначити між ними багато спільних якостей. В основному ці відмінності полягають у дизайні та розмірах пристроїв. У моделі bme280 ще додатково є датчик, здатний вимірювати вологість повітря.
Помилки, які можуть виникнути під час підключення
Найчастіше користувачі стикаються з проблемою неправильних показників температури повітря та атмосферного тиску. Причому від реальних вони можуть відрізнятись одразу на кілька пунктів. У більшості випадків причина цього полягає в неправильному підключенні датчика тиску Ардуїно. Наприклад, бібліотека вимагає підключення модуля I2C, яке виробили по SPI.
Користувачі, які використовують неякісні датчики незрозумілих виробників, можуть зіткнутися з проблемою, яка полягає у нестандартних адресах SPI або I2C. У таких ситуаціях рекомендують провести сканування всіх приєднаних до датчика пристроїв, використовуючи будь-який з найпопулярніших скетчів. Це дозволить зрозуміти, на яку з адрес реагує конкретний датчик вимірювання тиску.
До проблем, з якими стикаються користувачі, ще відносять невідповідність режиму робочої напруги модуля основному режиму контролера. Наприклад, для датчика на 3,3 необхідно створювати дільник напруги. Також виправити проблему допоможе готовий рівень для узгодження рівнів. Їхня вартість доступна всім.
Незначні відхилення іноді трапляються через калібрування сенсора. Наприклад, під час використання модуля ВМР180 значення розраховуються і виводяться в скетчі. Щоб отримати максимально точне показання, слід знати показник тиску потрібних координат залежно від висоти точки.
Висновок
Розглянуті датчики тиску Ардуїно – популярний пристрій, який застосовується для вимірювання тиску атмосфери. Сфера їх використання досить велика. Крім контролю над станом атмосферного тиску, їх застосовують визначення координат вище рівня моря чи показників глибини, наприклад, під час спуску в шахту. Робота пристрою залежить від підключеного до нього модуля. Вибір таких пристроїв досить великий. Найпопулярнішими з них стали ВМР 180, ВМР 280 та bme 280.