Мазмуну:

Raspberry Pi - TMP100 Температура сенсорунун Java үйрөткүчү: 4 кадам
Raspberry Pi - TMP100 Температура сенсорунун Java үйрөткүчү: 4 кадам

Video: Raspberry Pi - TMP100 Температура сенсорунун Java үйрөткүчү: 4 кадам

Video: Raspberry Pi - TMP100 Температура сенсорунун Java үйрөткүчү: 4 кадам
Video: Датчик температуры MCP9808, обзор и сравнение 2024, Июль
Anonim
Image
Image

TMP100 Жогорку тактык, аз кубаттуулук, санарип температура сенсору I2C MINI модулу. TMP100 узартылган температураны өлчөө үчүн идеалдуу. Бул түзмөк калибрлөөнү же тышкы компоненттин сигналын кондициялоону талап кылбастан ± 1 ° C тактыкты сунуштайт. Бул жерде Raspberry Pi колдонулган java коду бар демонстрация.

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

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

1. Raspberry Pi

2. TMP100

3. I²C кабели

4. Raspberry Pi үчүн I²C Shield

5. Ethernet кабели

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

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

Малина пи үчүн I2C калканчын алыңыз жана аны акырын малинанын пи gpio төөнөгүчтөрүнүн үстүнө басыңыз.

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

Ethernet кабелин пи -ге туташтырыңыз же WiFi модулун колдонсоңуз болот.

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

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

Код
Код

TMP100 үчүн java кодун биздин GitHub репозиторийинен көчүрүп алсаңыз болот- Dcube дүкөнү.

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

github.com/DcubeTechVentures/TMP100…

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

pi4j.com/install.html

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

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

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

// TMP100

// Бул код Dcube Storeдо жеткиликтүү болгон TMP100_I2CS I2C Mini Module менен иштөө үчүн иштелип чыккан.

com.pi4j.io.i2c. I2CBus импорттоо;

com.pi4j.io.i2c. I2CDevice импорттоо;

com.pi4j.io.i2c. I2CFactory импорттоо;

java.io. IOException импорттоо;

коомдук класс TMP100

{

public static void main (String args ) Exception ыргытат

{

// I2C шинасын түзүү

I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1);

// I2C аппаратын алыңыз, TMP100 I2C дареги 0x4F (79)

I2CDevice түзмөгү = Bus.getDevice (0x4F);

// Конфигурация реестрин тандоо

// Үзгүлтүксүз өзгөртүү, салыштыруу режими, 12-биттик чечим

device.write (0x01, (байт) 0x60);

Thread.sleep (500);

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

// темп msb, temp lsb

байт маалымат = жаңы байт [2];

device.read (0x00, data, 0, 2);

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

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

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

{

темп -= 4096;

}

кош cTemp = temp * 0.0625;

кош fTemp = cTemp * 1.8 + 32;

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

System.out.printf ("Цельсий боюнча температура: %.2f C %n", cTemp);

System.out.printf ("Фаренгейт температурасы: %.2f F %n", fTemp);

}

}

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

TMP100 аз кубаттуу, жогорку тактыктагы санарип температура сенсорун камтыган ар кандай тиркемелерге Power-Supply Temperature Monitoring, Computer Perifheral Thermal Protection, Battery Management, ошондой эле офистик машиналар кирет.

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