Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
AD7416ARZ er en 10-bits temperatursensor med fire enkeltkanals analoge til digitale omformere og en innebygd temperatursensor som er integrert i den. Temperaturføleren på delene kan nås via multiplexerkanaler. Denne temperatursensoren med høy nøyaktighet har blitt en industristandard når det gjelder form, faktor og intelligens, og gir kalibrerte, lineariserte sensorsignaler i digitalt I2C-format.
I denne opplæringen har grensesnittet mellom AD7416ARZ -sensormodulen og partikkelfoton blitt illustrert. For å lese temperaturverdiene har vi brukt arduino med en I2c -adapter. Denne I2C -adapteren gjør tilkoblingen til sensormodulen enkel og mer pålitelig.
Trinn 1: Nødvendig maskinvare:
Materialene vi trenger for å nå målet vårt inkluderer følgende maskinvarekomponenter:
1. AD7416ARZ
2. Partikkelfoton
3. I2C -kabel
4. I2C -skjerm for partikkelfoton
Trinn 2: Maskinvaretilkobling:
Maskinvarekoblingsdelen forklarer i utgangspunktet ledningsforbindelsene som kreves mellom sensoren og partikkelfotonet. Å sikre riktige tilkoblinger er den grunnleggende nødvendigheten mens du arbeider på et hvilket som helst system for ønsket utgang. Så de nødvendige tilkoblingene er som følger:
AD7416ARZ fungerer over I2C. Her er eksempel på koblingsskjema, som viser hvordan du kobler til hvert grensesnitt på sensoren.
Uten boksen er brettet konfigurert for et I2C-grensesnitt, derfor anbefaler vi å bruke denne tilkoblingen hvis du ellers er agnostiker.
Alt du trenger er fire ledninger! Bare fire tilkoblinger kreves Vcc, Gnd, SCL og SDA -pinner, og disse er koblet til ved hjelp av I2C -kabel.
Disse sammenhengene er vist på bildene ovenfor.
Trinn 3: Kode for måling av temperatur:
La oss begynne med partikkelkoden nå.
Mens vi bruker sensormodulen med partikkelen, inkluderer vi application.h og spark_wiring_i2c.h biblioteket. "application.h" og spark_wiring_i2c.h biblioteket inneholder funksjonene som letter i2c -kommunikasjonen mellom sensoren og partikkelen.
Hele partikkelkoden er gitt nedenfor for brukerens bekvemmelighet:
#inkludere
#inkludere
// AD7416ARZ I2C -adressen er 0x48 (72)
#define Addr 0x48
flyte cTemp = 0,0, fTemp = 0,0;
int temp = 0;
ugyldig oppsett ()
{
// Angi variabel
Particle.variable ("i2cdevice", "AD7416ARZ");
Particle.variable ("cTemp", cTemp);
// Initialiser I2C -kommunikasjon som Master
Wire.begin ();
// Initialiser seriell kommunikasjon, sett overføringshastighet = 9600
Serial.begin (9600);
forsinkelse (300);
}
hulrom ()
{
usignerte int -data [2];
// Start I2C -overføring
Wire.beginTransmission (Addr);
// Velg dataregister
Wire.write (0x00);
// Stopp I2C -overføring
Wire.endTransmission ();
// Be om 2 byte data
Wire.requestFrom (Addr, 2);
// Les 2 byte med data
// temp msb, temp lsb
hvis (Wire.available () == 2)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
}
// Konverter dataene til 12 bits
// Konverter dataene til 10 bits
temp = ((data [0] * 256) + (data [1] & 0xC0)) / 64;
hvis (temp> 511)
{
temperatur -= 1024;
}
cTemp = temp * 0,25;
fTemp = (cTemp * 1,8) + 32;
// Utdata til dashbordet
Particle.publish ("Temperatur i Celsius:", String (cTemp));
Particle.publish ("Temperatur i Fahrenheit:", String (fTemp));
forsinkelse (1000);
}
Particle.variable () -funksjonen oppretter variablene for å lagre sensorens utgang og Particle.publish () -funksjonen viser utgangen på dashbordet til nettstedet.
Sensorutgangen er vist på bildet ovenfor for din referanse.
Trinn 4: Søknader:
AD7416ARZ er en 10-bits temperatursensor med fire enkeltkanals analog til digital omformer som kan utføre driften av datainnsamling med overvåking av omgivelsestemperatur. Det kan også brukes i industrielle prosesskontrollsystemer, Automotive batteriladingsapplikasjoner og personlige datamaskiner.