Съдържание:

Как да прочетете сензора за диференциално налягане MPX5010 с Arduino: 5 стъпки
Как да прочетете сензора за диференциално налягане MPX5010 с Arduino: 5 стъпки

Видео: Как да прочетете сензора за диференциално налягане MPX5010 с Arduino: 5 стъпки

Видео: Как да прочетете сензора за диференциално налягане MPX5010 с Arduino: 5 стъпки
Видео: CS50 2014 – лекция Стива Балмера по CS50 2024, Ноември
Anonim
Как да прочетете сензора за диференциално налягане MPX5010 с Arduino
Как да прочетете сензора за диференциално налягане MPX5010 с Arduino

Начинът, по който написах кода, е такъв, че може лесно да бъде променен, за да отговаря на различен сензор за налягане. Просто променете следните променливи на const в кода въз основа на стойностите от информационния лист за всеки сензор за налягане:

  • Стойност на "sensorOffset" в mV
  • "чувствителност" стойност в mV/mmH2O

След като взех този сензор за налягане, огледах онлайн, за да се опитам да намеря примерен код за извличане на показанията за налягане от този сензор в реални единици за налягане, KPa или cmH2O. Намерих един примерен код за този точен сензор, след като го пуснах, забелязах, че показанията не съвпадат с това, което трябва да бъдат в листа с данни, затова реших да напиша собствено изчисление и свой собствен код … изглежда на възраст, но работи, ура !! Затова си помислих, че ще го споделя със света, за да не се налага други хора да изпитват същата болка.

Наслади се!!

Консумативи

Ще имаш нужда:

  • Сензор за налягане MPX5010 (разбира се)
  • Arduino, Uno или всяка друга
  • Някакъв силиконов маркуч (за свързване от сензора за налягане към крана за налягане)
  • Малки кабелни връзки (за закрепване на силиконовия маркуч)
  • Малка 2 мм тръба от месинг или пластмаса (използвах тръбата от кутия WD40)
  • Някои изолационни ленти (необходими са само ако вашият силиконов маркуч е твърде голям за вашата тръба WD40)

Стъпка 1: Свържете веригата

Свързваща верига
Свързваща верига
Свързваща верига
Свързваща верига

Вижте супер лесно изображение за свързване

Стъпка 2: Свържете сензор за налягане

Свържете сензор за налягане
Свържете сензор за налягане
Свържете сензор за налягане
Свържете сензор за налягане
Свържете сензор за налягане
Свържете сензор за налягане
  • Свържете силиконовия си маркуч към порта на сензора за налягане, използвайте кабелна връзка, ако имате нужда от нея, за да запечатате добре
  • Пробийте 2 мм отвор в тръбата, който искате да усетите налягането на въздуха
  • Пъхнете тръбата WD40 в отвора, тя трябва да приляга много плътно. Използвайте малко супер лепило, за да завършите запечатването
  • Плъзнете силиконовия си маркуч над тръбата WD40 (трябваше да увия изолационната лента около тръбата, за да я приспособя). След това добавете малка кабелна връзка

Стъпка 3: Качване на код

Код за качване
Код за качване
Код за качване
Код за качване

Качете моя код на вашия Arduino, след това щракнете върху серийния терминал, за да видите номерата (бутонът със символа на лупата в горния десен ъгъл на екрана).

Трябва да видите времето в милисекунди, след това a, след това стойността на налягането.

Имате възможност в кода да изчислите броя в kPa или cmH2O, просто коментирайте реда, който не ви е необходим.

Добавете „забавяне (500);“ако искате да забавите показанията, за да ги направите по -лесни за подготовка на терминала.

Начинът, по който написах кода, е такъв, че може лесно да бъде променен, за да отговаря на различен сензор за налягане. Просто променете следните променливи на const в кода въз основа на стойностите от информационния лист за всеки сензор за налягане:

  • Стойност на "sensorOffset" в mV
  • "чувствителност" стойност в mV/mmH2O

Стъпка 4: Извличане на сензорни стойности в Excel

Извличане на сензорни стойности в Excel
Извличане на сензорни стойности в Excel
Извличане на сензорни стойности в Excel
Извличане на сензорни стойности в Excel
Извличане на сензорни стойности в Excel
Извличане на сензорни стойности в Excel
Извличане на сензорни стойности в Excel
Извличане на сензорни стойности в Excel
  1. Запишете някои показания във вашия сериен терминал Arduino. Трябва да е във формата: "време (мс), отчитане на налягането"
  2. Изключете USB кабела
  3. Изберете всички стойности от вашия сериен терминал и копирайте
  4. Поставете ги в бележник
  5. Щракнете върху файл> запазване като
  6. Въведете името на файла си, след което променете разширението на ".csv" (много важно) и го запазете
  7. Отворете вашия File Explorer и трябва да видите файла си с логото на Excel (това означава, че сте направили правилно.csv файла)
  8. Щракнете двукратно върху новия си.csv файл и той ще се отвори в Excel и трябваше автоматично да сортира стойностите ви в две отделни колони и да се отърве от запетаята (затова.csv файловете са страхотни!)

След това можете да продължите и да правите графики на налягането във времето или каквото искате.

BTW: CSV означава "стойности, разделени със запетая".

Стъпка 5: Допълнителен нервен бит

Допълнителен нервен бит
Допълнителен нервен бит
Допълнителен нервен бит
Допълнителен нервен бит

Браво, че стигнахте дотук! Това означава, че сте преминали теста за глупаци и като награда ще ви кажа някои технически подробности.

Затова споменах в началото за примерен код, който намерих за този точен сензор, който ми даде грешни стойности. За да го проверя, използвах уравнението им, за да изчисля няколко точки от графиката на отговора (приложена) от листа с данни и установих, че те не съвпадат с графиката. Затова създадох мое собствено изчисление и го кръстосах с графиката на листа с данни, за да докажа, че работи на теория, след това записах показания с двата кода и над тях, върху които съм приложил графиките.

На приложените графики синята линия е примерният код, който намерих, а червената линия е моят код. Проблемът е доста очевиден при разглеждане на графиката, тъй като примерният уеб код не измерва 0 в околната среда, което трябва да направи, защото измерваме диференциално налягане.

Добре, така че в крайна сметка няма да е прекалено техничен, съжалявам за разочарованието, но се надявам, че все пак ви е харесало:)

Препоръчано: