Мазмуну:

Particle Photon - ADT75 Температура сенсорунун үйрөткүчү: 4 кадам
Particle Photon - ADT75 Температура сенсорунун үйрөткүчү: 4 кадам

Video: Particle Photon - ADT75 Температура сенсорунун үйрөткүчү: 4 кадам

Video: Particle Photon - ADT75 Температура сенсорунун үйрөткүчү: 4 кадам
Video: How to interface with HDC1080 humidity and temperature sensor with Arduino using I2C 2024, Июнь
Anonim
Image
Image

ADT75 - бул абдан так, санарип температура сенсору. Бул диапазондогу температура сенсорунан жана температураны көзөмөлдөө жана санариптештирүү үчүн санариптик конвертерге 12-биттен турат. Анын өтө сезгич сенсору аны чөйрөнүн температурасын так өлчөө үчүн жетиштүү компетенттүү кылат.

1 -кадам: Сизге эмне керек..

Сизге эмне керек.. !!
Сизге эмне керек.. !!

1. Фотоникалык бөлүкчөлөр

2. ADT75

3. I²C кабели

4. I²C калканч фотон үчүн

2 -кадам: Байланыш:

Туташуу
Туташуу
Туташуу
Туташуу
Туташуу
Туташуу
Туташуу
Туташуу

Бөлүкчө фотону үчүн I2C калканчын алыңыз жана аны акырын бөлүкчө фотонунун казыктарынын үстүнө түртүңүз.

Андан кийин I2C кабелинин бир учун ADT75 сенсоруна, экинчи башын I2C калканчына туташтырыңыз.

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

3 -кадам: Код:

Код
Код

ADT75 үчүн бөлүкчө кодун биздин github репозиторийибизден көчүрүп алсаңыз болот-DCUBE дүкөнү.

Мына ушуга шилтеме:

github.com/DcubeTechVentures/ADT75/blob/master/Particle/ADT75.ino.

Биз бөлүкчө коду үчүн эки китепкананы колдондук, алар application.h жана spark_wiring_i2c.h. Сенсор менен I2C байланышын жеңилдетүү үчүн Spark_wiring_i2c китепканасы талап кылынат.

Сиз бул жерден кодду көчүрүп алсаңыз болот, ал төмөнкүчө берилген:

// Эркин лицензия менен таратылган.

// Аны каалагандай колдон, пайда же бекер, эгер ал ага байланыштуу чыгармаларынын лицензиясына туура келсе.

// ADT75

// Бул код ADT75_I2CS I2C Mini Module менен иштөө үчүн иштелип чыккан

#кошуу

#кошуу

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

#define Addr 0x48

float cTemp = 0.0, fTemp = 0.0;

int temp = 0;

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

{

// Өзгөрмөнү коюу

Particle.variable ("i2cdevice", "ADT75");

Particle.variable ("cTemp", cTemp);

// 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 ();

}

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

темп = ((маалымат [0] * 256) + маалымат [1]) / 16;

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

{

темп -= 4096;

}

cTemp = temp * 0.0625;

fTemp = (cTemp * 1.8) + 32;

// Маалыматтарды тактасына чыгаруу

Particle.publish ("Цельсий боюнча температура:", String (cTemp));

Particle.publish ("Фаренгейттеги температура:", String (fTemp));

кечигүү (1000);

}

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

ADT75 - бул абдан так, санарип температура сенсору. Бул экологиялык көзөмөл системасын, компьютердик жылуулукту көзөмөлдөөнү камтыган көптөгөн системаларда колдонулушу мүмкүн. Ошондой эле өнөр жай процессин башкарууга, ошондой эле электр системасынын мониторлоруна киргизилиши мүмкүн.

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