Мазмуну:

HYT939 жана бөлүкчө фотонун колдонуу менен нымдуулукту өлчөө: 4 кадам
HYT939 жана бөлүкчө фотонун колдонуу менен нымдуулукту өлчөө: 4 кадам

Video: HYT939 жана бөлүкчө фотонун колдонуу менен нымдуулукту өлчөө: 4 кадам

Video: HYT939 жана бөлүкчө фотонун колдонуу менен нымдуулукту өлчөө: 4 кадам
Video: Particle Photon HYT939 I2C Humidity and Temperature Sensor Tutorial 2024, Ноябрь
Anonim
Image
Image

HYT939 I2C байланыш протоколу боюнча иштеген санарип нымдуулук сенсору. Нымдуулук медициналык системаларга жана лабораторияларга келгенде негизги параметр болуп саналат, ошондуктан бул максаттарга жетүү үчүн биз HYT939ду малина pi менен интерфейске келтирүүгө аракет кылдык. Бул окуу куралында HYT939 сенсор модулунун бөлүкчө фотону менен интерфейси сүрөттөлгөн.

Нымдуулуктун маанилерин окуу үчүн биз I2c адаптеринин жардамы менен бөлүкчө фотонун колдондук. Бул I2C адаптери сенсор модулуна туташууну оңой жана ишенимдүү кылат. Бөлүкчө фотону веб -сайттан маалыматтарды жөнөтүүнү жана алууну жеңилдетүүчү такта болуп саналат. нерселердин Интернети (IoT) негизги өзгөчөлүгү.

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

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

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

1. HYT939

2. Бөлүкчөлөрдүн фотону

3. I2C кабели

4. I2C Shield for Particle Photon

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

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

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

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

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

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

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

3 -кадам: Нымдуулукту өлчөө коду:

Нымдуулукту өлчөө коду
Нымдуулукту өлчөө коду

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

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

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

#кошуу

#кошуу

// HYT939 I2C дареги 0x28 (40)

#define Addr 0x28

кош нымдуулук = 0.0, cTemp = 0.0, fTemp = 0.0;

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

{

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

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

Particle.variable ("cTemp", cTemp);

Particle.variable ("нымдуулук", нымдуулук);

// I2C байланышын MASTER катары баштаңыз

Wire.begin ();

// Сериялык байланышты баштоо

Serial.begin (9600);

кечигүү (300);

}

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

{

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

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

Wire.beginTransmission (Addr);

// Кадимки режим буйругун жөнөтүү

Wire.write (0x80);

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

Wire.endTransmission ();

кечигүү (300);

// Аппараттан 4 байт маалымат сураңыз

Wire.requestFrom (Addr, 4);

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

// нымдуулук msb, нымдуулук lsb, temp msb, temp lsb

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

{

data [0] = Wire.read ();

data [1] = Wire.read ();

data [2] = Wire.read ();

маалымат [3] = Wire.read ();

}

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

нымдуулук = (((маалыматтар [0] & 0x3F) * 256.0) + маалыматтар [1]) * (100.0 / 16383.0);

cTemp = (((маалымат [2] * 256.0) + (маалыматтар [3] & 0xFC)) / 4) * (165.0 / 16383.0) - 40;

fTemp = (cTemp * 1.8) + 32;

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

Particle.publish ("Салыштырмалуу нымдуулук:", String (нымдуулук));

кечигүү (1000);

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

кечигүү (1000);

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

кечигүү (1000);

}

Particle.

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

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

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

HYT939 натыйжалуу санарип нымдуулук сенсору болуп Медициналык системаларда, Автоклавдарда колдонулат. Басымдын шүүдүрүм чекитин өлчөө жана кургатуу системалары да бул сенсор модулунун колдонулушун табышат. Тиешелүү нымдуулуктун деңгээли эксперименттерди жүргүзүү үчүн негизги параметр болуп саналган ар кандай лабораторияларда бул сенсорду нымдуулукту өлчөө үчүн жайгаштырууга болот.

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