Cuprins:

Cum să citiți senzorul de presiune diferențială MPX5010 cu Arduino: 5 pași
Cum să citiți senzorul de presiune diferențială MPX5010 cu Arduino: 5 pași

Video: Cum să citiți senzorul de presiune diferențială MPX5010 cu Arduino: 5 pași

Video: Cum să citiți senzorul de presiune diferențială MPX5010 cu Arduino: 5 pași
Video: Inlocuiește-ți senzorii de presiune la AUTO SOFT! 2024, Iulie
Anonim
Cum se citește senzorul de presiune diferențială MPX5010 cu Arduino
Cum se citește senzorul de presiune diferențială MPX5010 cu Arduino

Modul în care am scris codul este astfel încât să poată fi schimbat cu ușurință pentru a se potrivi unui alt senzor de presiune. Trebuie doar să modificați următoarele variabile const în cod pe baza valorilor din fișa tehnică pentru orice senzor de presiune:

  • Valoarea „senzorOffset” în mV
  • valoarea "sensibilității" în mV / mmH2O

Odată ce am primit acest senzor de presiune, m-am uitat în jur online pentru a încerca să găsesc un exemplu de cod pentru a extrage citirile de presiune din acest senzor în unități reale de presiune, KPa sau cmH2O. Am găsit un eșantion de cod pentru acest senzor exact, după ce l-am rulat, am observat că citirile nu se potrivesc cu ceea ce ar trebui să fie în foaia tehnică, așa că am decis să scriu propriul meu calcul și propriul meu cod … arată în vârstă, dar funcționează, Ura!! Așa că m-am gândit să o împărtășesc lumii, astfel încât alți oameni să nu fie nevoiți să treacă de aceeași durere.

Bucurați-vă !!

Provizii

O să ai nevoie:

  • Un senzor de presiune MPX5010 (desigur)
  • Un Arduino, Uno sau orice altul
  • Unele furtunuri de siliciu (pentru conectarea de la senzorul de presiune la robinetul de presiune)
  • Legături mici pentru cabluri (pentru fixarea furtunului de siliciu)
  • Tub mic de alamă sau plastic de 2 mm (am folosit tubul dintr-o cutie WD40)
  • Unele benzi de izolare (necesare numai dacă furtunul de siliciu este prea mare pentru tubul WD40)

Pasul 1: Conectați circuitul

Conectați circuitul
Conectați circuitul
Conectați circuitul
Conectați circuitul

Vedeți imaginea de conectare foarte ușoară

Pasul 2: Conectați senzorul de presiune

Conectați senzorul de presiune
Conectați senzorul de presiune
Conectați senzorul de presiune
Conectați senzorul de presiune
Conectați senzorul de presiune
Conectați senzorul de presiune
  • Conectați furtunul de siliciu la orificiul senzorului de presiune, utilizați o legătură de cablu dacă aveți nevoie de el pentru a face o etanșare bună
  • Găuriți o gaură de 2 mm în țeavă pentru a dori să simțiți presiunea aerului
  • Împingeți tubul WD40 în gaură, ar trebui să se potrivească foarte bine. Folosiți un pic de super adeziv pentru a completa sigiliul
  • Glisați furtunul de siliciu peste tubul WD40 (a trebuit să înfășor bandă de izolație în jurul tubului pentru a se potrivi). Apoi adăugați o legătură mică pentru cabluri

Pasul 3: Încărcați codul

Încărcați codul
Încărcați codul
Încărcați codul
Încărcați codul

Încărcați codul meu pe Arduino, apoi faceți clic pe terminalul serial pentru a vizualiza numerele (butonul cu simbolul lupei din partea dreaptă sus a ecranului).

Ar trebui să vedeți timpul în milisecunde, apoi un ',' apoi valoarea presiunii.

Aveți opțiunea în codul de calcul al numărului în kPa sau cmH2O, doar comentați linia de care nu aveți nevoie.

Adăugați o „întârziere (500);” dacă doriți să încetiniți citirile pentru a le face mai ușor de pregătit pe terminal.

Modul în care am scris codul este astfel încât să poată fi schimbat cu ușurință pentru a se potrivi unui alt senzor de presiune. Trebuie doar să modificați următoarele variabile const în cod pe baza valorilor din fișa tehnică pentru orice senzor de presiune:

  • Valoarea „senzorOffset” în mV
  • valoarea "sensibilității" în mV / mmH2O

Pasul 4: Extrageți valorile senzorului în Excel

Extrageți valorile senzorului în Excel
Extrageți valorile senzorului în Excel
Extrageți valorile senzorului în Excel
Extrageți valorile senzorului în Excel
Extrageți valorile senzorului în Excel
Extrageți valorile senzorului în Excel
Extrageți valorile senzorului în Excel
Extrageți valorile senzorului în Excel
  1. Înregistrați câteva citiri în terminalul dvs. serial Arduino. Ar trebui să fie în format: "timp (ms), citirea presiunii"
  2. Deconectați cablul USB
  3. Selectați toate valorile din terminalul dvs. serial și copiați
  4. Lipiți-le într-un Notepad
  5. Faceți clic pe fișier> salvați ca
  6. Tastați numele fișierului, apoi schimbați extensia la „.csv” (foarte important) și salvați-o
  7. Deschideți exploratorul de fișiere și ar trebui să vedeți fișierul cu sigla Excel pe acesta (asta înseamnă că ați realizat corect fișierul.csv)
  8. Faceți dublu clic pe noul fișier.csv și se va deschide în Excel și ar fi trebuit să vă sorteze automat valorile în două coloane separate și să fi scăpat de virgulă (de aceea fișierele.csv sunt grozave!)

Apoi, puteți continua și realiza grafice ale presiunii în timp sau ceea ce vreți vreodată.

BTW: CSV înseamnă „valori separate prin virgule”.

Pasul 5: Bit Nerdy Extra

Bit Nerdy Extra
Bit Nerdy Extra
Bit Nerdy Extra
Bit Nerdy Extra

Bravo pentru că ai ajuns până aici! Aceasta înseamnă că ați trecut testul tocilar și, ca recompensă, vă voi spune câteva detalii tehnice.

Așa că am menționat la început despre un eșantion de cod pe care l-am găsit pentru acest senzor exact care mi-a dat valori greșite. Pentru a o verifica, am folosit ecuația lor pentru a calcula câteva puncte pe graficul de răspuns (atașat) din foaia tehnică și am constatat că acestea nu se potrivesc cu graficul. Așa că mi-am creat propriul calcul și l-am referit încrucișat cu graficul din foaia de date pentru a dovedi că funcționează teoretic, apoi am înregistrat citiri cu ambele coduri și am așezat graficele pe care le-am atașat.

Pe graficele atașate, linia albastră este exemplul de cod pe care l-am găsit, iar linia roșie este codul meu. Problema este destul de evidentă atunci când privim graficul, deoarece codul de exemplu web nu măsoară 0 la ambiant, ceea ce ar trebui să facă pentru că măsurăm presiunea diferențială.

Ok, deci nu va fi prea tehnic la urma urmei, îmi pare rău să dezamăgesc, dar sper că ți-a plăcut oricum:)

Recomandat: