Съдържание:
- Стъпка 1: Изисква се хардуер:
- Стъпка 2: Свързване на хардуера:
- Стъпка 3: Код за измерване на температурата:
- Стъпка 4: Приложения:
Видео: Измерване на температурата с помощта на MCP9803 и Raspberry Pi: 4 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
MCP9803 е 2-жичен температурен сензор с висока точност. Те са въплътени с програмируеми от потребителя регистри, които улесняват приложенията за измерване на температурата. Този сензор е подходящ за много сложна многозонова система за мониторинг на температурата.
В този урок е демонстрирано взаимодействието на сензорния модул MCP9803 с малинов pi и е илюстрирано и неговото програмиране с помощта на Java език. За да прочетете температурните стойности, използвахме малинов pi с I2C адаптер, който прави връзката към сензорния модул лесна и по -надеждна.
Стъпка 1: Изисква се хардуер:
Материалите, от които се нуждаем за постигане на целта ни, включват следните хардуерни компоненти:
1. MCP9803
2. Малина пи
3. I2C кабел
4. I2C щит за малиново пи
5. Ethernet кабел
Стъпка 2: Свързване на хардуера:
Разделът за свързване на хардуер основно обяснява необходимите кабелни връзки между сензора и малиновото пи. Осигуряването на правилни връзки е основната необходимост, докато работите върху всяка система за желания изход. И така, необходимите връзки са както следва:
MCP9803 ще работи през I2C. Ето примерната електрическа схема, демонстрираща как да свържете всеки интерфейс на сензора.
Извън кутията, дъската е конфигурирана за I2C интерфейс, като такава препоръчваме да използвате тази връзка, ако иначе не сте агностици.
Всичко, от което се нуждаете, са четири проводника! Изискват се само четири връзки Vcc, Gnd, SCL и SDA щифтове и те са свързани с помощта на I2C кабел.
Тези връзки са показани на снимките по -горе.
Стъпка 3: Код за измерване на температурата:
Предимството на използването на малинов pi е, че ви осигурява гъвкавостта на езика за програмиране, на който искате да програмирате платката, за да свържете интерфейса на сензора с нея. Използвайки това предимство на тази дъска, ние демонстрираме, че това е програмиране на Java. Java кодът за MCP9803 може да бъде изтеглен от нашата Github общност, която е Dcube Store.
Освен за улеснение на потребителите, ние обясняваме кода и тук:
Като първа стъпка на кодиране трябва да изтеглите библиотеката pi4j в случай на java, защото тази библиотека поддържа функциите, използвани в кода. Така че, за да изтеглите библиотеката, можете да посетите следната връзка:
pi4j.com/install.html
Можете да копирате работещия java код за този сензор и от тук:
внос com.pi4j.io.i2c. I2CBus;
внос com.pi4j.io.i2c. I2CDevice;
внос com.pi4j.io.i2c. I2CFactory;
import java.io. IOException; публичен клас MCP9803
{
public static void main (String args ) хвърля Exception
{
// Създаване на I2C шина
I2CBus шина = I2CFactory.getInstance (I2CBus. BUS_1);
// Вземете I2C устройство, MCP9803 I2C адресът е 0x48 (72)
I2CDevice устройство = Bus.getDevice (0x48);
// Изберете конфигурационен регистър
// Режим на непрекъснато преобразуване, включване, режим на сравнение, 12-битова резолюция
device.write (0x01, (байт) 0x60);
Thread.sleep (500);
// Прочетете 2 байта данни от адрес 0x00 (0)
// temp msb, temp lsb
байт данни = нов байт [2];
device.read (0x00, данни, 0, 2);
// Конвертираме данните в 12-бита
int temp = ((данни [0] & 0xFF) * 256 + (данни [1] & 0xF0)) / 16;
ако (temp> 2047)
{
temp -= 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 е 2-жичен температурен сензор с висока точност. Те са въплътени с програмируеми от потребителя регистри, които улесняват приложенията за измерване на температурата. Този сензор е подходящ за много сложна многозонова система за мониторинг на температурата
Измерване на температурата с помощта на STS21 и Raspberry Pi: 4 стъпки
Измерване на температурата с помощта на STS21 и Raspberry Pi: Цифровият сензор за температура STS21 предлага превъзходна производителност и пести място. Той осигурява калибрирани, линеаризирани сигнали в цифров, I2C формат. Изработката на този сензор се основава на CMOSens технологията, която се дължи на превъзходните
Измерване на температурата с помощта на TMP112 и Raspberry Pi: 4 стъпки
Измерване на температурата с помощта на TMP112 и Raspberry Pi: TMP112 Високоточна, ниска мощност, цифров температурен сензор I2C MINI модул. TMP112 е идеален за продължително измерване на температурата. Това устройство предлага точност от ± 0,5 ° C, без да изисква калибриране или кондициониране на външен компонент