Sadržaj:

Mjerenje pritiska pomoću CPS120 i Arduino Nano: 4 koraka
Mjerenje pritiska pomoću CPS120 i Arduino Nano: 4 koraka

Video: Mjerenje pritiska pomoću CPS120 i Arduino Nano: 4 koraka

Video: Mjerenje pritiska pomoću CPS120 i Arduino Nano: 4 koraka
Video: Управляйте 10 выходными контактами или реле с помощью 10 кнопочных переключателей с 1 входным контактом Arduino ANPB-V2. 2024, Juli
Anonim
Image
Image

CPS120 je visokokvalitetni i jeftini kapacitivni senzor apsolutnog pritiska sa potpuno kompenzovanom snagom. Potroši vrlo manje energije i sastoji se od ultra malog mikro-elektro-mehaničkog senzora (MEMS) za mjerenje pritiska. ADC zasnovan na sigma-delti je također utjelovljen u njemu kako bi se ispunio zahtjev kompenziranog izlaza.

U ovom vodiču prikazano je povezivanje senzorskog modula CPS120 s arduino nano. Za očitavanje vrijednosti tlaka koristili smo foton s I2c adapterom. Ovaj I2C adapter čini povezivanje sa senzorskim modulom lakim i pouzdanijim.

Korak 1: Potreban hardver:

Potreban hardver
Potreban hardver
Potreban hardver
Potreban hardver
Potreban hardver
Potreban hardver

Materijali koji su nam potrebni za postizanje našeg cilja uključuju sljedeće hardverske komponente:

1. CPS120

2. Arduino Nano

3. I2C kabel

4. I2C štit za Arduino nano

Korak 2: Povezivanje hardvera:

Povezivanje hardvera
Povezivanje hardvera
Povezivanje hardvera
Povezivanje hardvera

Odeljak za povezivanje hardvera u osnovi objašnjava potrebne ožičenje između senzora i arduino nano. Osiguravanje ispravnih veza osnovna je potreba pri radu na bilo kojem sistemu za željeni izlaz. Dakle, potrebne veze su sljedeće:

CPS120 će raditi preko I2C. Evo primjera dijagrama ožičenja koji pokazuje kako spojiti svako sučelje senzora.

Out-of-box, ploča je konfigurirana za I2C sučelje, pa kao takvu preporučujemo korištenje ove veze ako ste inače agnostični. Sve što trebate su četiri žice!

Potrebna su samo četiri priključka Vcc, Gnd, SCL i SDA pinovi koji se povezuju pomoću I2C kabela.

Ove veze su prikazane na gornjim slikama.

Korak 3: Kôd za mjerenje pritiska:

Kôd za mjerenje pritiska
Kôd za mjerenje pritiska

Počnimo sada s Arduino kodom.

Dok koristimo senzorski modul s Arduinom, uključujemo Wire.h biblioteku. "Wire" biblioteka sadrži funkcije koje olakšavaju i2c komunikaciju između senzora i Arduino ploče.

Cijeli arduino kôd dat je u nastavku radi praktičnosti korisnika:

#include

// CPS120 I2C adresa je 0x28 (40)

#define Addr 0x28

void setup ()

{

// Inicijalizacija I2C komunikacije

Wire.begin ();

// Pokrećemo serijsku komunikaciju, postavljena brzina prijenosa = 9600

Serial.begin (9600);

}

void loop ()

{

nepotpisani int podaci [4];

// Pokretanje I2C prijenosa

Wire.beginTransmission (Addr);

// Zatražite 4 bajta podataka

Wire.requestFrom (Addr, 4);

// Očitavanje 4 bajta podataka

// pritisak msb, pritisak lsb, temp msb, temp lsb

if (Wire.available () == 4)

{

podaci [0] = Wire.read ();

podaci [1] = Wire.read ();

podaci [2] = Wire.read ();

podaci [3] = Wire.read ();

kašnjenje (300);

// Zaustavljanje I2C prijenosa

Wire.endTransmission ();

// Pretvorimo podatke u 14 bita

plovni pritisak = ((((podaci [0] & 0x3F) * 265 + podaci [1]) / 16384,0) * 90,0) + 30,0;

float cTemp = ((((podaci [2] * 256) + (podaci [3] & 0xFC)) / 4,0) * (165,0 / 16384,0)) - 40,0;

float fTemp = cTemp * 1,8 + 32;

// Izlaz podataka na serijski monitor

Serial.print ("Pritisak je:");

Serijski.tisak (pritisak);

Serial.println ("kPa");

Serial.print ("Temperatura u Celzijusima:");

Serial.print (cTemp);

Serial.println ("C");

Serial.print ("Temperatura u Fahrenheitu:");

Serial.print (fTemp);

Serial.println ("F");

kašnjenje (500);

}

}

U biblioteci žica Wire.write () i Wire.read () se koriste za pisanje naredbi i čitanje izlaza senzora.

Serial.print () i Serial.println () koriste se za prikaz izlaza senzora na serijskom monitoru Arduino IDE -a.

Izlaz senzora prikazan je na gornjoj slici.

Korak 4: Aplikacije:

Prijave
Prijave

CPS120 ima različite primjene. Može se koristiti u prijenosnim i stacionarnim barometarima, visinomjerima itd. Pritisak je važan parametar za određivanje vremenskih uslova s obzirom na to da se ovaj senzor može instalirati i na meteorološkim stanicama. Može se ugraditi u sisteme sa vazdušnom kontrolom, kao i u vakuumske sisteme.

Preporučuje se: