Мазмуну:
- 1 -кадам: Аппараттык камсыздоо талап кылынат:
- 2 -кадам: Аппараттык туташуу:
- 3 -кадам: Температураны өлчөө коду:
- 4 -кадам: Тиркемелер:
Video: MCP9803 жана Raspberry Pi менен температураны өлчөө: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:40
MCP9803-2 зымдуу жогорку тактыктагы температура сенсору. Алар температураны сезүү колдонмолорун жеңилдетүүчү колдонуучу программалоочу реестрлер менен камтылган. Бул сенсор өтө татаал көп зоналык температура мониторинг системасы үчүн ылайыктуу.
Бул окуу куралында MCP9803 сенсор модулунун малина пи менен интерфейси көрсөтүлгөн жана анын Java тили менен программаланышы да көрсөтүлгөн. Температуранын маанисин окуу үчүн I2C adapter. This I2C адаптери менен малина пи колдонгонбуз, сенсор модулуна туташууну жеңил жана ишенимдүү кылат.
1 -кадам: Аппараттык камсыздоо талап кылынат:
Максатыбызга жетүү үчүн бизге керектүү материалдар төмөнкү аппараттык компоненттерди камтыйт:
1. MCP9803
2. Raspberry pi
3. I2C кабели
4. Малина pi үчүн I2C Shield
5. Ethernet кабели
2 -кадам: Аппараттык туташуу:
Аппараттык туташуу бөлүмү негизинен сенсор менен малина пи ортосунда талап кылынган зым байланыштарын түшүндүрөт. Туура туташууларды камсыздоо каалаган өндүрүш үчүн кандайдыр бир системада иштеп жатканда негизги зарылчылык болуп саналат. Ошентип, керектүү байланыштар төмөнкүлөр:
MCP9803 I2C үстүндө иштейт. Бул жерде сенсордун ар бир интерфейсин кантип зым менен жабуу керектигин көрсөтүүчү зымдардын схемасы келтирилген.
Кутудан тышкары, такта I2C интерфейси үчүн конфигурацияланган, андыктан эгер сиз агностиксиз болсоңуз, анда бул байланышты колдонууну сунуштайбыз.
Сизге болгону төрт зым керек! Vcc, Gnd, SCL жана SDA төөнөгүчтөрүнө төрт гана туташуу керек жана алар I2C кабелинин жардамы менен туташкан.
Бул байланыштар жогорудагы сүрөттөрдө көрсөтүлгөн.
3 -кадам: Температураны өлчөө коду:
Малина пи колдонуунун артыкчылыгы, сенсорго интерфейс үчүн тактаны программалоону каалаган программалоо тилинин ийкемдүүлүгүн камсыз кылат. Бул тактанын артыкчылыгын колдонуп, биз бул жерде Java тилинде программалоону көрсөтүп жатабыз. MCP9803 үчүн java кодун биздин Github коомчулугунан жүктөп алса болот, бул Dcube Store.
Колдонуучулардын ыңгайлуулугу үчүн, биз бул жерде кодду түшүндүрүп жатабыз:
Коддоонун биринчи кадамы катары java болгон учурда pi4j китепканасын жүктөп алуу керек, анткени бул китепкана коддо колдонулган функцияларды колдойт. Ошентип, китепкананы жүктөө үчүн төмөнкү шилтемеге кире аласыз:
pi4j.com/install.html
Бул сенсордун java кодун бул жерден көчүрүп алсаңыз болот:
com.pi4j.io.i2c. I2CBus импорттоо;
com.pi4j.io.i2c. I2CDevice импорттоо;
com.pi4j.io.i2c. I2CFactory импорттоо;
java.io. IOException импорттоо; коомдук класс MCP9803
{
public static void main (String args ) Exception ыргытат
{
// I2C шинасын түзүү
I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1);
// I2C түзмөгүн алыңыз, MCP9803 I2C дареги 0x48 (72)
I2CDevice түзмөгү = Bus.getDevice (0x48);
// Конфигурация реестрин тандоо
// Үзгүлтүксүз которуу режими, Power-up, компаратор режими, 12 биттик чечим
device.write (0x01, (байт) 0x60);
Thread.sleep (500);
// 0x00 (0) дарегинен 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);
}
}
Сенсор менен тактанын ортосундагы i2c байланышын жеңилдеткен китепкана pi4j, анын ар кандай пакеттери I2CBus, I2CDevice жана I2CFactory байланышты түзүүгө жардам берет.
com.pi4j.io.i2c. I2CBus импорттоо;
com.pi4j.io.i2c. I2CDevice импорттоо;
com.pi4j.io.i2c. I2CFactory импорттоо;
java.io. IOException импорттоо;
write () жана read () функциялары сенсорго белгилүү бир режимде иштеши үчүн жана сенсордун чыгарылышын окуу үчүн кээ бир өзгөчө буйруктарды жазуу үчүн колдонулат.
Сенсордун чыгышы дагы жогорудагы сүрөттө көрсөтүлгөн.
4 -кадам: Тиркемелер:
MCP9803 персоналдык компьютерди жана перифериялык түзүлүштөрдү, катуу дисктерди, ар кандай оюн -зоок системаларын, кеңсе системаларын жана маалымат байланыш системасын камтыган көптөгөн түзмөктөрдө колдонулушу мүмкүн. Бул сенсор ар кандай татаал системаларга киргизилиши мүмкүн.
Сунушталууда:
MCP9803 жана Arduino Nano аркылуу температураны өлчөө: 4 кадам
MCP9803 жана Arduino Nano аркылуу температураны өлчөө: MCP9803-бул 2 зымдуу жогорку тактыктагы температура сенсору. Алар температураны сезүү колдонмолорун жеңилдетүүчү колдонуучу программалоочу реестрлер менен камтылган. Бул сенсор өтө татаал көп зоналык температура мониторинг системасына ылайыктуу
Температураны өлчөө MCP9803 жана бөлүкчө фотонун колдонуу: 4 кадам
MCP9803 жана Particle Photon аркылуу температураны өлчөө: MCP9803-2 зымдуу жогорку тактыктагы температура сенсору. Алар температураны сезүү колдонмолорун жеңилдетүүчү колдонуучу программалоочу реестрлер менен камтылган. Бул сенсор өтө татаал көп зоналык температура мониторинг системасына ылайыктуу
HIH6130 жана бөлүкчө фотонун колдонуу менен нымдуулукту жана температураны өлчөө: 4 кадам
HIH6130 жана Particle Photon аркылуу нымдуулукту жана температураны өлчөө: HIH6130 - бул санариптик чыгышы бар нымдуулук жана температура сенсору. Бул сенсорлор ± 4% RH тактыгын камсыз кылат. Өнөр жайдын алдыңкы узак мөөнөттүү туруктуулугу, чыныгы температуранын ордун толтуруучу санариптик I2C, индустриянын алдыңкы ишенимдүүлүгү, энергияны үнөмдөө
HDC1000 жана Raspberry Pi менен температураны жана нымдуулукту өлчөө: 4 кадам
HDC1000 жана Raspberry Pi менен температураны жана нымдуулукту өлчөө: HDC1000 - бул өтө аз кубаттуулукта мыкты өлчөө тактыгын камсыз кылган интегралдык температура сенсоруна ээ болгон санарип нымдуулук сенсору. Аппарат нымдуулукту жаңы сыйымдуу сенсордун негизинде өлчөйт. Нымдуулук жана температура сенсорлору бетке
HTS221 жана бөлүкчө фотонун колдонуу менен нымдуулукту жана температураны өлчөө: 4 кадам
HTS221 жана Particle Photon аркылуу нымдуулукту жана температураны өлчөө: HTS221 - салыштырмалуу нымдуулук жана температура үчүн өтө компакт сыйымдуу санарип сенсор. Бул санариптик серия аркылуу өлчөө маалыматын берүү үчүн сезгич элементти жана аралаш сигналдын атайын интегралдык схемасын (ASIC) камтыйт