Kazalo:
2025 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2025-01-13 06:58
AD7416ARZ je 10-bitno temperaturno tipalo s štirimi enokanalnimi analogno-digitalnimi pretvorniki in vgrajenim temperaturnim senzorjem. Do temperaturnega senzorja na delih lahko dostopate po kanalih multiplekserja. Ta temperaturni senzor z visoko natančnostjo je postal industrijski standard glede oblike, faktorja in inteligence, saj zagotavlja umerjene, linearne senzorske signale v digitalnem formatu I2C.
V tej vadnici je prikazano povezovanje senzorskega modula AD7416ARZ s fotonom delcev. Za branje temperaturnih vrednosti smo uporabili arduino z vmesnikom I2c, ki omogoča enostavno in zanesljivo povezavo s senzorskim modulom.
1. korak: Potrebna strojna oprema:
Materiali, ki jih potrebujemo za dosego našega cilja, vključujejo naslednje komponente strojne opreme:
1. AD7416ARZ
2. Foton delcev
3. Kabel I2C
4. I2C ščit za foton delcev
2. korak: Priključitev strojne opreme:
Oddelek za priključitev strojne opreme v bistvu razlaga potrebne povezave ožičenja med senzorjem in fotonom delcev. Zagotavljanje pravilnih povezav je osnovna potreba pri delu na katerem koli sistemu za želeni izhod. Torej so potrebne povezave naslednje:
AD7416ARZ bo deloval preko I2C. Tu je primer sheme ožičenja, ki prikazuje, kako povezati vsak vmesnik senzorja.
Plošča je že pripravljena za vmesnik I2C, zato priporočamo uporabo te povezave, če niste agnostični.
Vse kar potrebujete so štiri žice! Potrebne so le štiri povezave Vcc, Gnd, SCL in SDA, ki so povezane s kablom I2C.
Te povezave so prikazane na zgornjih slikah.
3. korak: Koda za merjenje temperature:
Začnimo s kodo delcev.
Med uporabo senzorskega modula z delcem vključujemo knjižnico application.h in spark_wiring_i2c.h. Knjižnica "application.h" in spark_wiring_i2c.h vsebuje funkcije, ki olajšajo komunikacijo i2c med senzorjem in delcem.
Za udobje uporabnika je spodaj navedena celotna koda delcev:
#vključi
#vključi
// Naslov AD7416ARZ I2C je 0x48 (72)
#define Addr 0x48
float cTemp = 0,0, fTemp = 0,0;
int temp = 0;
void setup ()
{
// Nastavi spremenljivko
Particle.variable ("i2cdevice", "AD7416ARZ");
Delci.variable ("cTemp", cTemp);
// Inicializirajte komunikacijo I2C kot mojster
Wire.begin ();
// Začetek serijske komunikacije, nastavljena hitrost prenosa = 9600
Serial.begin (9600);
zamuda (300);
}
void loop ()
{
podpisani int podatki [2];
// Zagon prenosa I2C
Wire.beginTransmission (Addr);
// Izberite register podatkov
Wire.write (0x00);
// Ustavi prenos I2C
Wire.endTransmission ();
// Zahtevaj 2 bajt podatkov
Wire.requestFrom (Addr, 2);
// Preberite 2 bajta podatkov
// temp msb, temp lsb
če (Wire.available () == 2)
{
podatki [0] = Wire.read ();
podatki [1] = Wire.read ();
}
// Pretvorimo podatke v 12 bitov
// Pretvorimo podatke v 10 bitov
temp = ((podatki [0] * 256) + (podatki [1] & 0xC0)) / 64;
če (temp> 511)
{
temp -= 1024;
}
cTemp = temp * 0,25;
fTemp = (cTemp * 1,8) + 32;
// Izhod podatkov na nadzorno ploščo
Particle.publish ("Temperatura v Celzijusi:", String (cTemp));
Particle.publish ("Temperatura v Fahrenheitu:", String (fTemp));
zamuda (1000);
}
Funkcija Particle.variable () ustvari spremenljivke za shranjevanje izhoda senzorja, funkcija Particle.publish () pa prikaže izpis na nadzorni plošči spletnega mesta.
Izhod senzorja je za vašo referenco prikazan na zgornji sliki.
4. korak: Aplikacije:
AD7416ARZ je 10-bitni temperaturni senzor s štirimi enokanalnimi analogno-digitalnimi pretvorniki, ki lahko izvajajo zajem podatkov s spremljanjem temperature okolice. Uporablja se lahko tudi v sistemih za nadzor industrijskih procesov, aplikacijah za polnjenje baterij v avtomobilih in osebnih računalnikih.