Obsah:
- Krok 1: Ukázka
- Krok 2: Použité zdroje
- Krok 3: Proč měřit tlak?
- Krok 4: Rodina tlakových senzorů MPX
- Krok 5: MPX5700DP
- Krok 6: Pro demonstraci
- Krok 7: Kalibrace ESP ADC
- Krok 8: Výpočet tlaku
- Krok 9: Sestavení
- Krok 10: Zdrojový kód
- Krok 11: Soubory
Video: Zde se dozvíte o mimořádně důležitém senzoru !: 11 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:22
Jak se můžete dozvědět o vodní hladině ve vodní nádrži? Chcete -li monitorovat tento typ věcí, můžete použít tlakový senzor. Toto je obecně velmi užitečné zařízení pro průmyslovou automatizaci. Dnes budeme hovořit o této přesné rodině tlakových senzorů MPX, konkrétně pro měření tlaku. Seznámím vás s tlakovým senzorem MPX5700 a provedu montáž vzorku pomocí ESP WiFi LoRa 32.
Komunikaci LoRa v okruhu dnes používat nebudu, ani WiFi, ani Bluetooth. Rozhodl jsem se však pro tento ESP32, protože jsem již v jiných videích učil, jak používat všechny funkce, o kterých dnes diskutuji.
Krok 1: Ukázka
Krok 2: Použité zdroje
• Snímač diferenčního tlaku MPX5700DP
• 10k potenciometr (nebo trimpot)
• Protoboard
• Připojovací vodiče
• USB kabel
• ESP WiFi LoRa 32
• Vzduchový kompresor (volitelně)
Krok 3: Proč měřit tlak?
• Existuje mnoho aplikací, kde je tlak důležitou regulační veličinou.
• Můžeme zapojit pneumatické nebo hydraulické řídicí systémy.
• Lékařské přístroje.
• Robotika.
• Řízení průmyslových nebo environmentálních procesů.
• Měření hladiny v nádržích na kapalinu nebo plyn.
Krok 4: Rodina tlakových senzorů MPX
• Jsou to snímače tlaku v elektrickém napětí.
• Jsou založeny na piezo odporovém senzoru, kde je komprese převedena na změnu elektrického odporu.
• Existují verze schopné měřit malé tlakové rozdíly (od 0 do 0,04 atm) nebo velké variace (od 0 do 10 atm).
• Objevují se ve více balíčcích.
• Mohou měřit absolutní tlak (ve vztahu k vakuu), diferenční tlak (rozdíl mezi dvěma tlaky, p1 a p2) nebo manometr (vzhledem k atmosférickému tlaku).
Krok 5: MPX5700DP
• Řada 5700 je vybavena absolutními, diferenciálními a měřicími senzory.
• MPX5700DP může měřit tlakový rozdíl od 0 do 700 kPa (přibližně 7 atm).
• Výstupní napětí se pohybuje od 0,2 V do 4,7 V.
• Jeho výkon je od 4,75V do 5,25V
Krok 6: Pro demonstraci
• Tentokrát nebudeme dělat praktickou aplikaci pomocí tohoto senzoru; pouze jej namontujeme a provedeme některá měření jako ukázku.
• K tomu použijeme přímý vzduchový kompresor k vyvíjení tlaku na vysokotlakém vstupu (p1) a získáme rozdíl ve vztahu k místnímu atmosférickému tlaku (p2).
• MPX5700DP je jednosměrný snímač, což znamená, že měří kladné rozdíly, kde p1 musí být vždy větší nebo rovno p2.
• p1> p2 a rozdíl bude p1 - p2
• Existují obousměrné diferenciální senzory, které dokážou vyhodnotit negativní a pozitivní rozdíly.
• Přestože se jedná pouze o ukázku, zde bychom mohli snadno použít principy k ovládání například tlaku ve vzduchojemu, poháněném tímto kompresorem.
Krok 7: Kalibrace ESP ADC
• Protože víme, že analogově-digitální převod ESP není zcela lineární a může se u jednotlivých SoC lišit, začněme jednoduchým určením jeho chování.
• Pomocí potenciometru a multimetru změříme napětí přivedené na AD a přiřadíme jej k uvedené hodnotě.
• Pomocí jednoduchého programu pro čtení AD a shromažďování informací v tabulce jsme byli schopni určit křivku jejího chování.
Krok 8: Výpočet tlaku
• Přestože nám výrobce poskytuje funkci s chováním součásti, je vždy vhodné provést kalibraci, když mluvíme o měření.
• Protože se však jedná pouze o ukázku, použijeme přímo funkci nalezenou v datovém listu. Za tímto účelem s ním budeme manipulovat způsobem, který nám dává tlak jako funkci hodnoty ADC.
* Pamatujte, že zlomek napětí aplikovaného na ADC referenčním napětím musí mít stejnou hodnotu jako ADC načtené celkovým ADC. (Ignorování opravy)
Krok 9: Sestavení
• Chcete -li připojit senzor, vyhledejte zářez na jednom z jeho vývodů, který označuje pin 1.
• Počítání odtud:
Pin 1 poskytuje výstup signálu (od 0V do 4,7V)
Pin 2 je referenční. (GND)
Pin 3 pro napájení. (Vs)
• Protože výstup signálu je 4,7 V, použijeme dělič napětí tak, aby maximální hodnota byla ekvivalentní 3 V3. Za tímto účelem jsme provedli úpravu potenciometrem.
Krok 10: Zdrojový kód
Zdrojový kód: #Zahrnuje a #definuje
// Bibliotecas para utilização do display oLED #include // Necessário apenas para o Arduino 1.6.5 e posterior #include "SSD1306.h" // o mesmo que #include "SSD1306Wire.h" // Os pinos do OLED estão conectados ao ESP32 vybírá GPIO: // OLED_SDA - GPIO4 // OLED_SCL - GPIO15 // OLED_RST - GPIO16 #define SDA 4 #define SCL 15 #define RST 16 // RST deve ser ajustado por software
Zdroj: Globální proměnné a konstanty
Displej SSD1306 (0x3c, SDA, SCL, RST); // Instanciando e ajustando os pinos do objeto "display" const int amostras = 10000; // número de amostras coletadas para a média const int pin = 13; // pino de leitura const float fator_atm = 0,0098692327; // fator de conversão para atmosferas const float fator_bar = 0,01; // fator de conversão para bar const float fator_kgf_cm2 = 0,0101971621; // převaděč kgf/cm2
Zdrojový kód: Nastavení ()
void setup () {pinMode (pin, INPUT); // pino de leitura analógica Serial.begin (115200); // iniciando a serial // Inicia o display display.init (); display.flipScreenVertically (); // Vira a tela verticalmente}
Zdrojový kód: Loop ()
void loop () {float medidas = 0,0; // variável para manipular as medidas float pressao = 0,0; // variável para armazenar o valor da pressão // inicia a coleta de amostras do ADC for (int i = 0; i
Zdrojový kód: Funkce, která vypočítává tlak v kPa
float calculaPressao (float medida) {// Calcula a pressão com o // valor do AD corrigido pela função corrigeMedida () // Esta função foi escrita de acordo com dados do fabricante // e NÃO LEVA EM CONSIDERAÇÃO OS POSSÍVEES D erro) návrat ((corrigeMedida (medida) / 3,3) - 0,04) / 0,0012858; }
-- SNÍMKY
Zdrojový kód: Funkce, která opravuje hodnotu AD
float corrigeMedida (float x) { / * Esta função foi obtida através da relação entre a tensão aplicada no AD e valor lido * / return 4.821224180510e-02 + 1.180826610901e-03 * x + -6.640183463236e-07 * x * x + 5.235532597676e-10 * x * x * x + -2,020362975028e-13 * x * x * x * x + 3,809807883001e-17 * x * x * x * x * x * x + -2,896158699016e-21 * x * x * x * x * x * x; }
Krok 11: Soubory
Stáhnout soubory:
INO
Doporučuje:
Robot pro vyhýbání se překážkám pomocí ultrazvukového senzoru (Proteus): 12 kroků
Robot pro vyhýbání se překážkám pomocí ultrazvukového senzoru (Proteus): S robotem pro vyhýbání se překážkám se běžně setkáváme všude. Hardwarová simulace tohoto robota je součástí soutěže na mnoha vysokých školách a mnoha akcích. Softwarová simulace překážkového robota je však vzácná. I když to můžeme někde najít
Konverze senzoru Hallova efektu Logitech 3D Extreme Pro: 9 kroků
Převod senzoru Hallova efektu Logitech 3D Extreme Pro: Ovládání kormidla na mém joysticku zhaslo. Zkoušel jsem hrnce rozebrat a vyčistit, ale moc to nepomohlo. Začal jsem tedy hledat náhradní hrnce a narazil jsem na několik různých webových stránek z doby před několika lety, které odkazují
Máte nový Neopixel? Zde je stručný průvodce! 5 kroků
Máte nový Neopixel? Zde je stručný průvodce! Vím, že ve svém posledním pokynu jsem řekl, že budu pravidelný, ale nemám. No, zkusil jsem to, ale neměl jsem žádné dobré nápady: Voskem potažený zápas: KABOOM!*Pastelková svíčka: Fissssssss … KABOOOM! ** Efektní matematické umění: Špatné úhly! Každopádně jsem zpět
Jak nainstalovat Linux (začátečníci začínají zde!): 6 kroků
Jak nainstalovat Linux (začátečníci začínají zde!): Co přesně je Linux? Drahý čtenáři, Linux je bránou do světa zcela nových možností. Doby, kdy si OSX užilo zábavu z vlastnictví počítače, jsou pryč. Hloupé zápisy zabezpečení v systému Windows 10 jsou pryč. Nyní je řada na vás
Metody detekce vodní hladiny Arduino pomocí ultrazvukového senzoru a Funduino vodního senzoru: 4 kroky
Metody detekce hladiny vody Arduino pomocí ultrazvukového senzoru a Funduino senzoru vody: V tomto projektu vám ukážu, jak vytvořit levný detektor vody pomocí dvou metod: 1. Ultrazvukový senzor (HC-SR04) .2. Senzor vody Funduino