Tutaj omówię czujnik ciśnienia MD-PS002. Zapoznam was czytelników tego artykułu z paroma możliwościami jego zastosowania oraz przedstawię krok po kroku przykład użycia tego czujnika.
Spis treści
- Krótki opis
- Specyfikacja
- Przykład
- Pliki do pobrania
Krótki opis
Czujnik oblicza naprawdę ciśnienie względne podawane w (kPa). Mierzone ciśnienie jest podawne w skali od 0 (ciśnienie zero absolutne -takie które powstaje w próżniach) do 150 (ciśnienie absolutne). Oprócz ciśnienia względnego, czujnik można wykorzystać do odczytu ciśnienia znajdującego się w oponie a nawet ciśnienia krwii. Na co dzień jednak korzysta się z niego w mechanizmach opierających na czasowym wzroście lub spadku ciśnienia co spowoduje aktywacje przełącznika.
Specyfikacja
- Napięcie: 5V
- Wymiary: 6.8 x 6.8 x 4.6mm
- Natężenie pr.: 1A
- Typ wyjścia: Analog
Przykład:
Elementy:
- Czujnik ciśnienia MD – P002
- Moduł HX711
- Arduino Uno lub Mega
- 7x Kable stykowe
- 2x Zestaw pinów po 4 słupki
-
Czujnik ciśnienia MD-PS0028.92zł
-
Arduino Nano V3.0 ATmega328P CH34020.25zł
Prawidłowe podłączenie
Na początku należy przylutować do czujnika 4 kable stykowe. Kolejno musimy przylutować piny do wyjść modułu.
Następnie połączenie Czujnik -> Moduł ( jak według obrazka)
- IN+ do E+
- OUT+ do A+
- IN – do E-
- OUT – do A-
Kolejno przyłączenie Modułu do Arduino
- GND do GND
- VCC do 5V
- DT do pinu Analogowego nr 0 (“A0”)
Program:
Najpierw tworzymy definiujemy nasz port analogowy skąd będą pobierane informacje, następnie zmienną typu float które orzymują wartość zmienną przecinkową równą wartości podstawowej czujnika
#define A0 const float SensorOffset = 102.0;
W funkcji void setup aktywujemy monitor portu szeregowego.
void setup() { // put your setup code here, to run once: Serial.begin(9600); }
Następnie w funkcji void loop tworzymy 2 kolejne zmienne. Pierwsza to wartość podstawowa ciśnienia, póki co jest równa 0 oraz druga równa różnicy napięcia na wyjściu analogowym z podstawową wartością czujnika i podzieloną przez 100.
int pressure = 0; float sensorValue = (analogRead(A0)-SensorOffset)/100.0;
Na koniec otrzymany wynik wyświetlamy funkcją Serial.print(). Dwójka w nawiasie oznacza że chcemy tylko aby wynik wyświetlał tylko 2 liczby po przecinku. A potem dla lepszego działania programu używamy deley(), który powoduje jego opóźnienie
Serial.print("Air Pressure: "); Serial.print(sensorValue,2); Serial.println(" kPa"); delay(2000); }