Mundarija:

Bu erda o'ta muhim sensor haqida bilib oling!: 11 qadam
Bu erda o'ta muhim sensor haqida bilib oling!: 11 qadam

Video: Bu erda o'ta muhim sensor haqida bilib oling!: 11 qadam

Video: Bu erda o'ta muhim sensor haqida bilib oling!: 11 qadam
Video: Xotirani kuchaytiruvchi 10 ta SIR. Hamma uchun birdek to'gri keladi! 10 daqiqada 2024, Noyabr
Anonim
Bu erda juda muhim sensor haqida bilib oling!
Bu erda juda muhim sensor haqida bilib oling!

Suv idishidagi suv sathini qanday bilish mumkin? Bunday narsalarni nazorat qilish uchun siz bosim sensori ishlatishingiz mumkin. Bu umuman sanoat avtomatizatsiyasi uchun juda foydali uskunalar. Bugun biz MPX bosim sensorlarining aniq oilasi haqida, xususan, bosimni o'lchash uchun gaplashamiz. Men sizni MPX5700 bosim sensori bilan tanishtiraman va ESP WiFi LoRa 32 yordamida namuna yig'ilishini bajaraman.

Men bugun LoRa aloqasidan na Wi -Fi, na Bluetooth ishlatmayman. Ammo men ushbu ESP32 -ni tanladim, chunki men allaqachon muhokama qilgan barcha xususiyatlardan qanday foydalanishni boshqa videolarda o'rgatganman.

1 -qadam: Namoyish

Namoyish
Namoyish
Namoyish
Namoyish

2 -qadam: Ishlatilgan manbalar

Ishlatilgan manbalar
Ishlatilgan manbalar

• MPX5700DP differentsial bosim sensori

• 10k potentsiometr (yoki trimpot)

• Protoboard

• Ulanish simlari

• USB kabeli

• ESP WiFi LoRa 32

• Havo kompressori (ixtiyoriy)

3 -qadam: Nega bosimni o'lchash kerak?

Nima uchun bosimni o'lchash kerak?
Nima uchun bosimni o'lchash kerak?

• Bosim nazoratning muhim o'zgaruvchisi bo'lgan ko'plab ilovalar mavjud.

• Biz pnevmatik yoki gidravlik boshqaruv tizimlarini jalb qilishimiz mumkin.

• Tibbiy asboblar.

• Robototexnika.

• sanoat yoki ekologik jarayonlarni nazorat qilish.

• Suyuq yoki gazli rezervuarlarda darajani o'lchash.

4 -qadam: MPX bosim sensorlar oilasi

MPX bosim sensorlar oilasi
MPX bosim sensorlar oilasi

• Ular elektr kuchlanishdagi bosim o'tkazgichlardir.

• Ular piezo rezistiv sensorga asoslangan, bu erda siqilish elektr qarshiligining o'zgarishiga aylanadi.

• Kichik bosim farqlarini (0 dan 0,04 atmgacha) yoki katta o'zgarishlarni (0 dan 10 atmgacha) o'lchashga qodir versiyalar mavjud.

• Ular bir nechta paketlarda paydo bo'ladi.

• Ular mutlaq bosimni (vakuumga nisbatan), differentsial bosimni (ikki bosim orasidagi farq p1 va p2) yoki o'lchagichni (atmosfera bosimiga nisbatan) o'lchashlari mumkin.

5 -qadam: MPX5700DP

MPX5700DP
MPX5700DP
MPX5700DP
MPX5700DP

• 5700 seriyasida mutlaq, differentsial va o'lchash datchiklari mavjud.

• MPX5700DP differentsial bosimni 0 dan 700kPa (taxminan 7atm) gacha o'lchashi mumkin.

• Chiqish kuchlanishi 0,2 V dan 4,7 V gacha o'zgarib turadi.

• Uning kuchi 4,75 V dan 5,25 V gacha

6 -qadam: Namoyish uchun

Namoyish uchun
Namoyish uchun

• Bu safar biz bu sensor yordamida amaliy qo'llanma qilmaymiz; biz uni o'rnatamiz va namoyish sifatida ba'zi o'lchovlarni bajaramiz.

• Buning uchun biz to'g'ridan -to'g'ri havo kompressoridan foydalanib, yuqori bosimli kirishda (p1) bosim o'tkazamiz va mahalliy atmosfera bosimiga (p2) nisbatan farqni olamiz.

• MPX5700DP - bu bir tomonlama sensor, bu p1 har doim p2 dan katta yoki unga teng bo'lishi kerak bo'lgan ijobiy farqlarni o'lchaydi.

• p1> p2 va farq p1 - p2 bo'ladi

• Salbiy va ijobiy farqlarni baholaydigan ikki tomonlama differentsial sensorlar mavjud.

• Bu faqat namoyish bo'lsa -da, biz bu erda, masalan, kompressor bilan ishlaydigan havo omboridagi bosimni nazorat qilish uchun bu tamoyillardan osongina foydalanishimiz mumkin edi.

7 -qadam: ESP ADCni kalibrlash

ESP ADCni kalibrlash
ESP ADCni kalibrlash
ESP ADCni kalibrlash
ESP ADCni kalibrlash
ESP ADCni kalibrlash
ESP ADCni kalibrlash

• ESP analog-raqamli konvertatsiyasi to'liq chiziqli emasligini va bir SoCdan boshqasiga o'zgarishi mumkinligini bilganimiz uchun, uning xatti-harakatini oddiy aniqlashdan boshlaylik.

• Potansiyometr va multimetr yordamida biz AD ga qo'llaniladigan kuchlanishni o'lchaymiz va uni ko'rsatilgan qiymat bilan bog'laymiz.

• ADni o'qish va jadvaldagi ma'lumotlarni yig'ish uchun oddiy dastur yordamida biz uning xatti -harakatining egri chizig'ini aniqlay oldik.

8 -qadam: bosimni hisoblash

Bosimni hisoblash
Bosimni hisoblash
Bosimni hisoblash
Bosimni hisoblash

• Garchi ishlab chiqaruvchi bizga komponentning xatti -harakatlari bilan funktsiyani taqdim etsa -da, biz o'lchovlar haqida gapirganda, har doim kalibrlashni o'tkazish maqsadga muvofiqdir.

• Biroq, bu faqat ko'rsatuv bo'lgani uchun, biz ma'lumotlar jadvalida topilgan funktsiyadan bevosita foydalanamiz. Buning uchun biz uni ADC qiymatining funktsiyasi sifatida bizga bosim o'tkazadigan tarzda boshqaramiz.

* Shuni esda tutingki, ADC ga mos yozuvlar zo'riqishida qo'llaniladigan kuchlanish ulushi umumiy ADC o'qigan ADC bilan bir xil qiymatga ega bo'lishi kerak. (Tuzatishga e'tibor bermay)

9 -qadam: yig'ish

O'rnatish
O'rnatish
O'rnatish
O'rnatish

• Sensorni ulash uchun uning terminallaridan birida pinni 1 ko'rsatadigan chuqurchani qidiring.

• U erdan sanash:

1 -pin signal chiqishini ta'minlaydi (0V dan 4.7V gacha)

2 -pin - bu ma'lumot. (GND)

Quvvat uchun 3 -pin. (Vs)

• Signalning chiqishi 4,7V bo'lgani uchun biz kuchlanish bo'luvchisini ishlatamiz, shunda maksimal qiymat 3V3 ga teng bo'ladi. Buning uchun biz potentsiometr yordamida sozlashni amalga oshirdik.

10 -qadam: Manba kodi

Manba kodi
Manba kodi
Manba kodi
Manba kodi

Manba kodi: #o'z ichiga oladi va #ta'riflaydi

// Bibliotecas para utilização to display oLED #include // Arduino 1.6.5 yoki "SSD1306.h" ni qo'shib qo'yish kerak // "SSD1306Wire.h" ni qo'shish // OLED -ni o'rnatish juda qiyin. ESP32 GPIO -ni belgilaydi: // OLED_SDA - GPIO4 // OLED_SCL - GPIO15 // OLED_RST - GPIO16 #SDA 4 -ni belgilang #SCL 15 -ni aniqlang #RST 16 -ni aniqlang // RST dasturiy ta'minoti

Manba: Global o'zgaruvchilar va doimiylar

SSD1306 displeyi (0x3c, SDA, SCL, RST); // Instantiandstudenen nosozliklarni "ko'rsatish" ga int = amostras = 10000; // amostras coletadas a média const int pin = 13; // pino de leitura const float fator_atm = 0.0098692327; // atmosfera havosining o'zgaruvchan fator_bar = 0.01; // fator de talkão para bar const float fator_kgf_cm2 = 0.0101971621; // fator de suhbatning kgf/sm2

Manba kodi: Setup ()

void setup () {pinMode (pin, INPUT); // pino de leitura analógica Serial.begin (115200); // ketma -ket iniciando // displeyni ko'rsatish.init (); display.flipScreenVertically (); // Vera va telta vertikal}

Manba kodi: Loop ()

void loop () {float medidas = 0.0; // variável para manipular as medidas float pressao = 0.0; // har xil turdagi qurol -yarog'lar uchun ADC uchun (int i = 0; i) (5000)) // har qanday vaqtda {// displeyni ko'rsatish.clear (); // ekranni ko'rsatish.setTextAlignment (TEXT_ALIGN_LEFT); // Arial 10 display.setFont (ArialMT_Plain_16) uchun shrift; // Escreve hech qanday buferda pressao display.drawString (0, 0, String (int (pressao)) + "kPa") ko'rsatilmaydi; display.drawString (0, 16, String (pressao * fator_atm) + "atm"); display.drawString (0, 32, String (pressao * fator_kgf_cm2) + "kgf/sm2"); // ADC display.drawString (0, 48, "adc:" + String (int (medidas))) uchun hech qanday tampon yo'q. } else // 5 ta menimcha, siz bu ma'lumotni ko'rasiz {// limfa yoki buferni ko'rsatish display.clear (); // markazlashtiruvchi displey.setTextAlignment (TEXT_ALIGN_CENTER); // Arial 16 displey.setFont (ArialMT_Plain_16) uchun shrift; // escreve bufer display.drawString yo'q (64, 0, "Sensor Pressão"); // escreve bufer display.drawString yo'q (64, 18, "Diferencial"); // Arial 10 display.setFont (ArialMT_Plain_10) uchun shriftlar; // escreve bufer display.drawString yo'q (64, 44, "ESP-WiFi-Lora"); } display.display (); // transfer tampon para o displeyni kechiktirish (50); }

Manba kodi: kPa bosimini hisoblaydigan funksiya

float kalkulyatori Pressao (float medida) {// Hisob -kitoblar, bizni to'g'rilashga yordam beradi // Mediya () // ishlab chiqarish funktsiyasini bajarish yoki ishlab chiqarish uchun // e NÃ LEVA EM CONSIDERAÇÃO OS POSSÍVEIS DESVESVEVI erro) qaytish ((corrigeMedida (medida) / 3.3) - 0.04) / 0.0012858; }

- RASMLAR

Manba kodi: AD qiymatini to'g'irlaydigan funksiya

float to'g'rilashMedida (float x) { / * Maqolada hech qanday ma'lumot yo'q * / qaytish 4.821224180510e-02 + 1.180826610901e-03 * x + -6.640183463236e-07 * 5.235532597676e-10 * x * x * x + -2.020362975028e-13 * x * x * x * x + 3.809807883001e-17 * x * x * x * x * x + -2.896158699016e-21 * x * x * x * x * x * x; }

11 -qadam: fayllar

Fayllarni yuklab oling:

PDF

INO

Tavsiya: