Sisukord:
Video: Kuidas lugeda MPX5010 diferentsiaalrõhu andurit Arduino abil: 5 sammu
2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-13 06:57
Koodi kirjutamise viis on selline, et seda saab hõlpsasti muuta, et see sobiks teisele rõhuandurile. Lihtsalt muutke koodis järgmisi konstantseid muutujaid, mis põhinevad mis tahes rõhuanduri andmelehe väärtustel:
- "sensorOffset" väärtus mV
- "tundlikkuse" väärtus mV/mmH2O
Kui sain selle rõhuanduri, vaatasin Internetis ringi ja proovisin leida näidiskoodi selle anduri rõhunäitude eraldamiseks tegelikesse rõhuühikutesse, KPa või cmH2O. Leidsin selle täpse anduri jaoks ühe näidiskoodi, pärast selle käivitamist märkasin, et näidud ei kattu andmelehel olevate andmetega, nii et otsustasin kirjutada oma arvutuse ja oma koodi… see tundub vananev, kuid töötab, hurraa !! Seega mõtlesin, et jagan seda maailmaga, et teised inimesed ei peaks sama valu läbi elama.
Nautige !!
Tarvikud
Te vajate:
- MPX5010 rõhuandur (muidugi)
- Arduino, Uno või mõni muu
- Mõned räni voolikud (ühendamiseks rõhuandurist rõhukraaniga)
- Väikesed kaablisidemed (räni vooliku kinnitamiseks)
- Väike 2 mm toru messingist või plastist (kasutasin toru WD40 purgist)
- Mõni isolatsioonlint (vajalik ainult siis, kui teie räni voolik on teie WD40 toru jaoks liiga suur)
Samm: ühendage ahel
Vaadake ülilihtsa ühenduse pilti
Samm: ühendage rõhuandur
- Ühendage oma räni voolik rõhuanduri porti, kasutage tihendamiseks head juhtmestikku
- Puurige torusse 2 mm auk, mille õhurõhku soovite tunda
- Lükake WD40 toru auku, see peaks olema väga tihedalt kinni. Tihendi lõpuleviimiseks kasutage natuke superliimi
- Libistage oma räni voolik üle WD40 toru (pidin isolatsiooniteibi ümber keerama, et see sobiks). Seejärel lisage väike kaabliside
3. toiming: koodi üleslaadimine
Laadige minu kood oma Arduinole üles, seejärel klõpsake numbrite vaatamiseks jadaterminalil (nupp, millel on suurendusklaasi sümbol ekraani paremas ülanurgas).
Te peaksite nägema aega millisekundites, seejärel a, seejärel rõhuväärtust.
Teil on koodis võimalus arvutada arv kPa või cmH2O, lihtsalt kommenteerige rida, mida te ei vaja.
Lisage "viivitus (500);" kui soovite näitu aeglustada, et neid oleks lihtsam terminalis ette valmistada.
Koodi kirjutamise viis on selline, et seda saab hõlpsasti muuta, et see sobiks teisele rõhuandurile. Lihtsalt muutke koodis järgmisi konstantseid muutujaid, mis põhinevad mis tahes rõhuanduri andmelehe väärtustel:
- "sensorOffset" väärtus mV
- "tundlikkuse" väärtus mV/mmH2O
4. samm: anduri väärtuste ekstraktimine Excelisse
- Logige mõned näidud oma Arduino jadaterminali sisse. See peaks olema vormingus: "aeg (ms), rõhunäit"
- Ühendage USB-kaabel lahti
- Valige jadaterminalist kõik väärtused ja kopeerige
- Kleepige need märkmikku
- Klõpsake faili> salvesta nimega
- Sisestage oma failinimi, seejärel muutke laiend ".csv" (väga oluline) ja salvestage see
- Avage oma failiuurija ja peaksite nägema oma faili, millel on Exceli logo (see tähendab, et olete.csv -faili õigesti teinud)
- Topeltklõpsake oma uut.csv -faili ja see avaneb Excelis ning see oleks pidanud teie väärtused automaatselt kahte eraldi veergu sorteerima ja koma lahti saama (sellepärast on.csv -failid suurepärased!)
Siis saate edasi minna ja koostada graafikud rõhu kohta aja jooksul või mida iganes soovite.
BTW: CSV tähistab komaga eraldatud väärtusi.
Samm 5: Extra Nerdy Bit
Tubli, et nii kaugele jõudsite! See tähendab, et olete nohikutesti läbinud ja preemiaks ütlen teile mõned tehnilised üksikasjad.
Nii et ma mainisin alguses umbes näidiskoodi, mille leidsin selle täpse anduri kohta, mis andis mulle valed väärtused. Selle kontrollimiseks kasutasin nende võrrandit, et arvutada andmelehelt paar punkti vastusgraafikul (lisatud) ja leidsin, et need ei vasta graafikule. Nii ma koostasin oma arvutuse ja võrdlesin seda andmelehel oleva graafikuga, et tõestada, et see töötab teoorias, seejärel panin andmetega registreeritud näidud nii koodidega kui ka üle ja panin graafikud, mille olen lisanud.
Lisatud graafikutel on sinine joon näidiskood, mille leidsin, ja punane joon on minu kood. Probleem on graafikut vaadates üsna ilmne, kuna veebinäite kood ei mõõda ümbritseva keskkonna puhul 0, mida see peaks tegema, kuna mõõdame rõhkude erinevust.
Okei, nii et see ei muutuks liiga tehniliseks, vabandust pettumuse pärast, kuid loodan, et nautisite seda siiski:)