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 z malino pi, ponazorjeno pa je tudi njegovo programiranje z uporabo jezika python. Za odčitavanje temperaturnih vrednosti smo uporabili malinovo pi z adapterjem 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. Malina Pi
3. Kabel I2C
4. I2C ščit za malinovo pi
5. Ethernetni kabel
2. korak: Priključitev strojne opreme:
Oddelek za priključitev strojne opreme v bistvu razlaga potrebne povezave ožičenja med senzorjem in malinovim pi. 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:
Prednost uporabe maline pi je, da vam omogoča prilagodljivost programskega jezika, v katerem želite programirati ploščo, da povežete senzor z njo. Če izkoristimo to prednost te plošče, tukaj dokazujemo njeno programiranje v pythonu. Kodo python za AD7416ARZ lahko prenesete iz naše skupnosti github, ki je skupnost Control Everything.
Poleg lažjega uporabnika kodo razlagamo tudi tukaj:
Kot prvi korak kodiranja morate prenesti knjižnico smbus v primeru pythona, ker ta knjižnica podpira funkcije, ki se uporabljajo v kodi. Če želite prenesti knjižnico, obiščite naslednjo povezavo:
pypi.python.org/pypi/smbus-cffi/0.5.1
Delovno kodo python za ta senzor lahko kopirate tudi od tu:
uvoz smbus
čas uvoza
# Pridobite avtobus I2C
vodilo = smbus. SMBus (1)
# AD7416ARZ naslov, 0x48 (72)
# Preberite podatke nazaj od 0x00 (00), 2 bajta
# temp MSB, temp LSB
data = bus.read_i2c_block_data (0x48, 0x00, 2)
# Pretvorite podatke v 10-bitne
temp = ((podatki [0] * 256) + (podatki [1] & 0xC0)) / 64
če je temp> 511:
temp -= 1024
cTemp = temp * 0,25
fTemp = cTemp * 1,8 + 32
# Iznesite podatke na zaslon
natisni "Temperatura v Celzijah: %.2f C" %cTemp
natisni "Temperatura v Fahrenheitu: %.2f F" %fTemp
Del spodaj omenjene kode vključuje knjižnice, potrebne za pravilno izvedbo kod Python.
uvoz smbus
čas uvoza
Kodo lahko izvedete tako, da v ukazni poziv vnesete spodnji ukaz.
$> python AD7416ARZ.py
Izhod senzorja je prikazan tudi na zgornji sliki za referenco uporabnika.
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.