Мазмуну:

AD7416ARZ жана Arduino Nano аркылуу температураны өлчөө: 4 кадам
AD7416ARZ жана Arduino Nano аркылуу температураны өлчөө: 4 кадам

Video: AD7416ARZ жана Arduino Nano аркылуу температураны өлчөө: 4 кадам

Video: AD7416ARZ жана Arduino Nano аркылуу температураны өлчөө: 4 кадам
Video: Датчик температуры LM75 | Внешний ПЛК Arduino 2024, Июль
Anonim
Image
Image

AD7416ARZ-бул санариптик конверторлорго төрт бирдиктүү аналогу бар 10-бит температура сенсору жана борттогу температура сенсору. Бөлүктөрдөгү температура сенсоруна мультиплексордук каналдар аркылуу кирүүгө болот. Бул жогорку тактыктагы температура сенсору форма, фактор жана интеллект боюнча калибрленген, сызыктуу сенсор сигналдарын санариптик, I2C форматында берүүчү стандарт болуп калды.

Бул окуу куралында AD7416ARZ сенсор модулунун arduino нано менен интерфейси сүрөттөлгөн. Температуранын маанилерин окуу үчүн I2c adapter. This I2C адаптери менен arduino колдонгонбуз, сенсор модулуна туташууну жеңил жана ишенимдүү кылат.

1 -кадам: Аппараттык камсыздоо талап кылынат:

Аппараттык камсыздоо талап кылынат
Аппараттык камсыздоо талап кылынат
Аппараттык камсыздоо талап кылынат
Аппараттык камсыздоо талап кылынат
Аппараттык камсыздоо талап кылынат
Аппараттык камсыздоо талап кылынат

Максатыбызга жетүү үчүн бизге керектүү материалдар төмөнкү аппараттык компоненттерди камтыйт:

1. AD7416ARZ

2. Ардуино Нано

3. I2C кабели

4. arduino нано үчүн I2C калканы

2 -кадам: Аппараттык туташуу:

Аппараттык туташуу
Аппараттык туташуу
Аппараттык туташуу
Аппараттык туташуу

Аппараттык туташуу бөлүмү негизинен сенсор менен arduino нанонун ортосунда талап кылынган зым байланыштарын түшүндүрөт. Туура туташууларды камсыздоо каалаган өндүрүш үчүн кандайдыр бир системада иштеп жатканда негизги зарылчылык болуп саналат. Ошентип, керектүү байланыштар төмөнкүлөр:

AD7416ARZ I2C үстүндө иштейт. Бул жерде сенсордун ар бир интерфейсин кантип зым менен жабуу керектигин көрсөтүүчү зымдардын схемасы келтирилген.

Кутудан тышкары, такта I2C интерфейси үчүн конфигурацияланган, андыктан эгер сиз агностиксиз болсоңуз, анда бул байланышты колдонууну сунуштайбыз.

Сизге болгону төрт зым керек! Vcc, Gnd, SCL жана SDA төөнөгүчтөрүнө төрт гана туташуу керек жана алар I2C кабелинин жардамы менен туташкан.

Бул байланыштар жогорудагы сүрөттөрдө көрсөтүлгөн.

3 -кадам: Температураны өлчөө коду:

Температураны өлчөө коду
Температураны өлчөө коду

Эми arduino коду менен баштайлы.

Arduino менен сенсор модулун колдонуп жатканда, биз Wire.h китепканасын камтыйт. "Wire" китепканасы сенсор менен arduino тактасынын ортосундагы i2c байланышын жеңилдетүүчү функцияларды камтыйт.

Колдонуучунун ыңгайлуулугу үчүн ардуино коду төмөндө келтирилген:

#кошуу

// AD7416ARZ I2C дареги 0x48 (72)

#define Addr 0x48

жараксыз орнотуу ()

{

// I2C байланышын Мастер катары баштаңыз

Wire.begin ();

// Сериялык байланышты баштоо, байдын ылдамдыгын = 9600

Serial.begin (9600);

кечигүү (300);

}

боштук цикл ()

{

кол коюлбаган int маалыматтары [2];

// I2C өткөрүүнү баштоо

Wire.beginTransmission (Addr);

// Маалымат реестрин тандоо

Wire.write (0x00);

// I2C өткөрүүнү токтотуу

Wire.endTransmission ();

// 2 байт маалымат сураңыз

Wire.requestFrom (Addr, 2);

// 2 байт маалыматтарды окуңуз

// темп msb, temp lsb

эгер (Wire.available () == 2)

{

data [0] = Wire.read ();

data [1] = Wire.read ();

}

// Маалыматтарды 10 битке айландырыңыз

int temp = (((маалымат [0] & 0xFF) * 256) + (маалымат [1] & 0xC0)) / 64;

эгер (темп> 511)

{

темп -= 1024;

}

float cTemp = temp * 0.25; float fTemp = (cTemp * 1.8) + 32;

// Маалыматтарды сериялык мониторго чыгаруу

Serial.print ("Цельсий боюнча температура:");

Serial.print (cTemp);

Serial.println ("C");

Serial.print ("Фаренгейт температурасы:");

Serial.print (fTemp);

Serial.println ("F");

кечигүү (500);

}

Зымдык китепканада Wire.write () жана Wire.read () командаларды жазуу жана сенсордун чыгышын окуу үчүн колдонулат.

Serial.print () жана Serial.println () Arduino IDE сериялык мониторунда сенсордун чыгарылышын көрсөтүү үчүн колдонулат.

Сенсордун чыгышы жогорудагы сүрөттө көрсөтүлгөн.

4 -кадам: Тиркемелер:

Колдонмолор
Колдонмолор

AD7416ARZ-бул 10-бит температура сенсору, аналогдуу төрт каналдуу аналогу менен, чөйрөнүн температурасын көзөмөлдөө менен маалыматтарды алуу операциясын аткара алат. Ал ошондой эле өнөр жай процесстерин башкаруу системаларында, автомобилдик батареяны заряддоочу тиркемелерде жана персоналдык компьютерлерде колдонулушу мүмкүн.

Сунушталууда: