Turinys:
2025 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2025-01-13 06:57
AD7416ARZ yra 10 bitų temperatūros jutiklis su keturiais vieno kanalo analoginiais-skaitmeniniais keitikliais ir įmontuotu temperatūros jutikliu. Temperatūros jutiklį prie dalių galima pasiekti naudojant multiplekserio kanalus. Šis didelio tikslumo temperatūros jutiklis tapo pramonės standartu formos, faktoriaus ir intelekto požiūriu, teikia kalibruotus, linijinius jutiklių signalus skaitmeniniu, I2C formatu.
Šioje pamokoje buvo parodyta AD7416ARZ jutiklio modulio sąsaja su dalelių fotonu. Norėdami nuskaityti temperatūros reikšmes, mes naudojome arduino su I2c adapteriu. Šis I2C adapteris leidžia lengvai ir patikimiau prijungti prie jutiklio modulio.
1 veiksmas: reikalinga aparatūra:
Medžiagos, reikalingos mūsų tikslui pasiekti, apima šiuos aparatūros komponentus:
1. AD7416ARZ
2. Dalelių fotonas
3. I2C kabelis
4. I2C skydas dalelių fotonui
2 veiksmas: prijungimas prie aparatūros:
Techninės įrangos prijungimo skyrius iš esmės paaiškina laidų jungtis, reikalingas tarp jutiklio ir dalelių fotono. Užtikrinti teisingas jungtis yra pagrindinė būtinybė dirbant su bet kuria norimos išvesties sistema. Taigi, būtinos jungtys yra šios:
AD7416ARZ veiks per I2C. Čia yra elektros instaliacijos schemos pavyzdys, parodantis, kaip prijungti kiekvieną jutiklio sąsają.
Iš karto plokštė sukonfigūruota I2C sąsajai, todėl rekomenduojame naudoti šį prijungimą, jei esate kitaip agnostikas.
Viskas, ko jums reikia, yra keturi laidai! Reikia tik keturių jungčių „Vcc“, „Gnd“, „SCL“ir „SDA“kaiščių, kurie yra prijungti naudojant I2C kabelį.
Šie ryšiai parodyti aukščiau esančiose nuotraukose.
3 žingsnis: Temperatūros matavimo kodas:
Pradėkime nuo dalelių kodo dabar.
Naudodami jutiklio modulį su dalele, įtraukiame „application.h“ir „spark_wiring_i2c.h“biblioteką. Bibliotekoje „application.h“ir spark_wiring_i2c.h yra funkcijos, palengvinančios i2c ryšį tarp jutiklio ir dalelės.
Visas dalelių kodas pateikiamas žemiau, kad būtų patogiau vartotojui:
#įtraukti
#įtraukti
// AD7416ARZ I2C adresas yra 0x48 (72)
#define Addr 0x48
plūdė cTemp = 0.0, fTemp = 0.0;
int temp = 0;
negaliojanti sąranka ()
{
// Nustatyti kintamąjį
Dalelių kintamasis ("i2cdevice", "AD7416ARZ");
Particle.variable ("cTemp", cTemp);
// Inicijuoti I2C komunikaciją kaip pagrindinį
Wire.begin ();
// Inicijuoti nuoseklųjį ryšį, nustatyti duomenų perdavimo spartą = 9600
Serial.begin (9600);
vėlavimas (300);
}
tuštumos kilpa ()
{
nepasirašyti int duomenys [2];
// Pradėti I2C perdavimą
Wire.beginTransmission (Addr);
// Pasirinkite duomenų registrą
Wire.write (0x00);
// Sustabdyti I2C perdavimą
Wire.endTransmission ();
// Prašyti 2 baitų duomenų
Wire.requestFrom (Addr, 2);
// Skaityti 2 baitus duomenų
// temp msb, temp lsb
jei (Wire.available () == 2)
{
duomenys [0] = Wire.read ();
duomenys [1] = Wire.read ();
}
// Konvertuokite duomenis į 12 bitų
// Konvertuokite duomenis į 10 bitų
temp = ((duomenys [0] * 256) + (duomenys [1] ir 0xC0)) / 64;
jei (temperatūra> 511)
{
temperatūra -= 1024;
}
cTemp = temp * 0,25;
fTemp = (cTemp * 1,8) + 32;
// Išvesti duomenis į prietaisų skydelį
Particle.publish ("Temperatūra Celsijaus laipsniais:", Styga (cTemp));
Particle.publish ("Temperatūra Farenheitu:", Styga (fTemp));
vėlavimas (1000);
}
Funkcija „Particle.variable ()“sukuria kintamuosius, kad išsaugotų jutiklio išvestį, o „Particle.publish“() rodo išvestį svetainės prietaisų skydelyje.
Jutiklio išvestis yra parodyta aukščiau esančiame paveikslėlyje.
4 žingsnis: programos:
AD7416ARZ yra 10 bitų temperatūros jutiklis su keturiais vieno kanalo analoginio-skaitmeninio keitiklio elementais, kurie gali atlikti duomenų rinkimo operaciją stebint aplinkos temperatūrą. Jis taip pat gali būti naudojamas pramoninių procesų valdymo sistemose, automobilių akumuliatorių įkrovimo programose ir asmeniniuose kompiuteriuose.