Мазмұны:
- 1 -қадам: Қажетті жабдық:
- 2 -қадам: Жабдықты қосу:
- 3 -қадам: Температураны өлшеу коды:
- 4 -қадам: Өтініштер:
Бейне: MCP9803 және Raspberry Pi көмегімен температураны өлшеу: 4 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:24
MCP9803-екі сымды жоғары дәлдіктегі температура сенсоры. Олар температураны сезуді қолдануды жеңілдететін пайдаланушы бағдарламалайтын регистрлермен біріктірілген. Бұл сенсор температураны бақылаудың көп аймақтық жүйесі үшін өте қолайлы.
Бұл оқулықта MCP9803 сенсорлық модулінің таңқурай пи -мен байланысы көрсетілген және оның Java тілінде бағдарламалануы да суреттелген. Температура мәндерін оқу үшін I2C адаптері бар таңқурай пи қолдандық, бұл I2C адаптері сенсор модуліне қосылуды жеңіл әрі сенімді етеді.
1 -қадам: Қажетті жабдық:
Мақсатқа жету үшін бізге қажет материалдар келесі аппараттық компоненттерді қамтиды:
1. MCP9803
2. Raspberry pi
3. I2C кабелі
4. Таңқурайға арналған I2C қалқаны
5. Ethernet кабелі
2 -қадам: Жабдықты қосу:
Аппаратты қосу бөлімі негізінен сенсор мен таңқурай пи арасындағы қажетті сымдық қосылыстарды түсіндіреді. Қажетті шығыс үшін кез келген жүйеде жұмыс істеу кезінде дұрыс қосылуды қамтамасыз ету - бұл негізгі қажеттілік. Сонымен, қажетті байланыстар келесідей:
MCP9803 I2C арқылы жұмыс істейді. Датчиктің әр интерфейсін қалай қосуға болатынын көрсететін электр схемасының мысалы.
Қаптамадан тыс тақта I2C интерфейсі үшін конфигурацияланған, сондықтан егер сіз агностикалық болмасаңыз, осы қосылымды пайдалануды ұсынамыз.
Сізге тек төрт сым қажет! Vcc, Gnd, SCL және SDA түйреуіштеріне тек төрт қосылым қажет және олар I2C кабелінің көмегімен қосылған.
Бұл байланыстар жоғарыдағы суреттерде көрсетілген.
3 -қадам: Температураны өлшеу коды:
Таңқурай пиін қолданудың артықшылығы - бұл сенсорды интерфейске қосу үшін тақтаны бағдарламалайтын тілдің икемділігін қамтамасыз етеді. Бұл тақтаның артықшылығын пайдаланып, біз оның Java -де бағдарламаланғанын көрсетеміз. MCP9803 java кодын біздің Github қауымдастығынан жүктеуге болады, бұл Dcube дүкені.
Пайдаланушыларға ыңғайлы болу үшін біз кодты осында түсіндіреміз:
Кодтаудың бірінші қадамы ретінде сіз 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 ) Ерекшеліктерді шығарады
{
// I2C шинасын жасаңыз
I2CBus Bus = I2CFactory.getInstance (I2CBus. BUS_1);
// I2C құрылғысын алу, MCP9803 I2C мекенжайы 0x48 (72)
I2CDevice құрылғысы = Bus.getDevice (0x48);
// Конфигурация регистрін таңдаңыз
// Үздіксіз түрлендіру режимі, Қосылу, салыстыру режимі, 12 биттік ажыратымдылық
device.write (0x01, (байт) 0x60);
Thread.sleep (500);
// 0x00 (0) адресінен 2 байт деректерді оқу
// temp msb, temp lsb
байт деректер = жаңа байт [2];
device.read (0x00, деректер, 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 дербес компьютер мен перифериялық құрылғыларды, қатты дискілерді, әр түрлі ойын -сауық жүйелерін, кеңсе жүйелерін және мәліметтермен байланыс жүйелерін қамтитын көптеген құрылғыларда қолдануға болады. Бұл сенсорды әр түрлі күрделі жүйелерге қосуға болады.
Ұсынылған:
AD7416ARZ және Raspberry Pi көмегімен температураны өлшеу: 4 қадам
AD7416ARZ және Raspberry Pi көмегімен температураны өлшеу: AD7416ARZ-бұл цифрлық түрлендіргіштерге аналогты төрт бір арналы аналогы бар 10 биттік температура сенсоры және оған қосылған борттық температура сенсоры. Бөлшектердегі температура сенсорына мультиплексорлық арналар арқылы қол жеткізуге болады. Бұл жоғары дәлдіктегі температура
MCP9803 және Arduino Nano көмегімен температураны өлшеу: 4 қадам
MCP9803 және Arduino Nano көмегімен температураны өлшеу: MCP9803-екі сымды жоғары дәлдіктегі температура сенсоры. Олар температураны сезуді қолдануды жеңілдететін пайдаланушы бағдарламалайтын регистрлермен біріктірілген. Бұл сенсор температураны бақылаудың көп аймақтық жүйесі үшін өте қолайлы
MCP9803 және бөлшек фотонының көмегімен температураны өлшеу: 4 қадам
MCP9803 және бөлшек фотонының көмегімен температураны өлшеу: MCP9803-екі сымды жоғары дәлдіктегі температура сенсоры. Олар температураны сезуді қолдануды жеңілдететін пайдаланушы бағдарламалайтын регистрлермен біріктірілген. Бұл сенсор температураны бақылаудың көп аймақтық жүйесі үшін өте қолайлы
STS21 және Raspberry Pi көмегімен температураны өлшеу: 4 қадам
STS21 және Raspberry Pi көмегімен температураны өлшеу: STS21 сандық температура сенсоры жоғары өнімділікті және кеңістікті үнемдеуге мүмкіндік береді. Ол сандық, I2C форматында калибрленген, сызықты сигналдарды береді. Бұл сенсорды жасау CMOSens технологиясына негізделген, ол жоғары деңгейге жатады
HTS221 және Raspberry Pi көмегімен ылғалдылық пен температураны өлшеу: 4 қадам
HTS221 мен Raspberry Pi көмегімен ылғалдылық пен температураны өлшеу: HTS221 - салыстырмалы ылғалдылық пен температураға арналған өте жинақы сыйымдылықты сандық сенсор. Ол сандық серия арқылы өлшеу ақпаратын беру үшін сенсорлық элементті және аралас сигналға арналған арнайы интегралды схеманы (ASIC) қамтиды