Turinys:
- 1 veiksmas: reikalinga aparatūra:
- 2 veiksmas: prijungimas prie aparatūros:
- 3 žingsnis: Temperatūros matavimo kodas:
- 4 žingsnis: programos:
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:46
MCP9803 yra 2 laidų didelio tikslumo temperatūros jutiklis. Jie yra su vartotojo programuojamais registrais, palengvinančiais temperatūros jutimo programas. Šis jutiklis tinka labai sudėtingai kelių zonų temperatūros stebėjimo sistemai.
Šioje pamokoje parodyta MCP9803 jutiklio modulio sąsaja su aviečių pi ir taip pat iliustruotas jo programavimas naudojant „Java“kalbą. Norėdami nuskaityti temperatūros reikšmes, mes naudojome aviečių pi 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. MCP9803
2. Aviečių pi
3. I2C kabelis
4. I2C skydas avietėms pi
5. Ethernet kabelis
2 veiksmas: prijungimas prie aparatūros:
Techninės įrangos prijungimo skyriuje iš esmės paaiškinamos reikalingos laidų jungtys tarp jutiklio ir aviečių pi. Užtikrinti teisingas jungtis yra pagrindinė būtinybė dirbant su bet kuria norimos išvesties sistema. Taigi, būtinos jungtys yra šios:
MCP9803 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:
„Raspberry pi“naudojimo pranašumas yra tas, kad programavimo kalba, kuria norite programuoti plokštę, yra lanksti, kad būtų galima su ja susieti jutiklį. Pasinaudodami šiuo šios plokštės pranašumu, mes parodome, kad tai programavimas „Java“. „MCP9803“„Java“kodą galima atsisiųsti iš mūsų „Github“bendruomenės, kuri yra „Dcube Store“.
Be vartotojų patogumo, mes taip pat paaiškiname kodą čia:
Kaip pirmąjį kodavimo žingsnį, „Java“atveju turite atsisiųsti „pi4j“biblioteką, nes ši biblioteka palaiko kode naudojamas funkcijas. Taigi, norėdami atsisiųsti biblioteką, galite apsilankyti šioje nuorodoje:
pi4j.com/install.html
Taip pat galite nukopijuoti šio jutiklio darbinį „Java“kodą:
importuoti com.pi4j.io.i2c. I2CBus;
importuoti com.pi4j.io.i2c. I2CDevice;
importuoti com.pi4j.io.i2c. I2CFactory;
importuoti java.io. IOException; viešoji klasė MCP9803
{
public static void main (String args ) metimai Išimtis
{
// Sukurti I2C magistralę
I2CBus magistralė = I2CFactory.getInstance (I2CBus. BUS_1);
// Gauti I2C įrenginį, MCP9803 I2C adresas yra 0x48 (72)
I2CDevice device = Bus.getDevice (0x48);
// Pasirinkite konfigūracijos registrą
// Nuolatinio konvertavimo režimas, įjungimas, lyginamasis režimas, 12 bitų skiriamoji geba
device.write (0x01, (baitas) 0x60);
Siūlai.miegoti (500);
// Skaityti 2 baitus duomenų iš adreso 0x00 (0)
// temp msb, temp lsb
baitas duomenys = naujas baitas [2];
device.read (0x00, duomenys, 0, 2);
// Konvertuokite duomenis į 12 bitų
int temp = ((duomenys [0] ir 0xFF) * 256 + (duomenys [1] ir 0xF0)) / 16;
jei (temperatūra> 2047)
{
temperatūra -= 4096;
}
dvigubas cTemp = temp * 0,0625;
dvigubas fTemp = cTemp * 1,8 + 32;
// Išvesti duomenis į ekraną
System.out.printf ("Temperatūra Celsijaus laipsniais yra: %.2f C %n", cTemp);
System.out.printf ("Temperatūra Farenheitu yra: %.2f F %n", fTemp);
}
}
Biblioteka, palengvinanti i2c ryšį tarp jutiklio ir plokštės, yra pi4j, įvairūs jos paketai I2CBus, I2CDevice ir I2CFactory padeda užmegzti ryšį.
importuoti com.pi4j.io.i2c. I2CBus;
importuoti com.pi4j.io.i2c. I2CDevice;
importuoti com.pi4j.io.i2c. I2CFactory;
importuoti java.io. IOException;
rašymo () ir skaitymo () funkcijos naudojamos tam tikroms komandoms į jutiklį rašyti, kad jis veiktų tam tikru režimu ir atitinkamai nuskaitytų jutiklio išvestį.
Jutiklio išvestis taip pat parodyta aukščiau esančiame paveikslėlyje.
4 žingsnis: programos:
„MCP9803“gali būti naudojamas daugelyje įrenginių, kuriuose yra asmeninis kompiuteris ir išoriniai įrenginiai, standieji diskai, įvairios pramogų sistemos, biuro sistemos ir duomenų perdavimo sistemos. Šis jutiklis gali būti integruotas į įvairias sudėtingas sistemas.
Rekomenduojamas:
Temperatūros matavimas naudojant AD7416ARZ ir Raspberry Pi: 4 žingsniai
Temperatūros matavimas naudojant AD7416ARZ ir Raspberry Pi: AD7416ARZ yra 10 bitų temperatūros jutiklis su keturiais vieno kanalo analoginiais ir skaitmeniniais keitikliais ir įmontuotu temperatūros jutikliu. Temperatūros jutiklį prie dalių galima pasiekti naudojant multiplekserio kanalus. Ši aukšto tikslumo temperatūra
Temperatūros matavimas naudojant MCP9803 ir „Arduino Nano“: 4 žingsniai
Temperatūros matavimas naudojant MCP9803 ir Arduino Nano: MCP9803 yra 2 laidų didelio tikslumo temperatūros jutiklis. Jie yra su vartotojo programuojamais registrais, palengvinančiais temperatūros jutimo programas. Šis jutiklis tinka labai sudėtingai kelių zonų temperatūros stebėjimo sistemai
Temperatūros matavimas naudojant MCP9803 ir dalelių fotoną: 4 žingsniai
Temperatūros matavimas naudojant MCP9803 ir dalelių fotoną: MCP9803 yra 2 laidų didelio tikslumo temperatūros jutiklis. Jie yra su vartotojo programuojamais registrais, palengvinančiais temperatūros jutimo programas. Šis jutiklis tinka labai sudėtingai kelių zonų temperatūros stebėjimo sistemai
Temperatūros matavimas naudojant STS21 ir Raspberry Pi: 4 žingsniai
Temperatūros matavimas naudojant STS21 ir Raspberry Pi: STS21 skaitmeninis temperatūros jutiklis užtikrina puikų našumą ir taupo vietą. Jis teikia kalibruotus, linijinius signalus skaitmeniniu I2C formatu. Šio jutiklio gamyba pagrįsta CMOSens technologija, kuri priskiriama pranašesniam
Drėgmės ir temperatūros matavimas naudojant HTS221 ir Raspberry Pi: 4 žingsniai
Drėgmės ir temperatūros matavimas naudojant HTS221 ir Raspberry Pi: HTS221 yra ypač kompaktiškas talpinis skaitmeninis jutiklis, skirtas santykiniam drėgnumui ir temperatūrai. Jame yra jutimo elementas ir mišraus signalo taikymo integruotas grandynas (ASIC), kuris pateikia matavimo informaciją skaitmeniniu nuosekliu