Mundarija:
Video: Raspberry Pi HTS221 nisbiy namlik va harorat sensori Java darsligi: 4 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:25
HTS221 - nisbiy namlik va harorat uchun ultra ixcham sig'imli raqamli sensor. Raqamli ketma -ket interfeyslar orqali o'lchash ma'lumotlarini etkazib berish uchun sezuvchi element va aralash signalli maxsus o'rnatilgan elektron (ASIC) o'z ichiga oladi. Ko'p funktsiyalar bilan birlashtirilgan, bu namlik va haroratni o'lchash uchun eng mos sensorlardan biridir. Bu erda Raspberry Pi yordamida java kodli namoyish.
1 -qadam: Sizga nima kerak.. !
1. Raspberry Pi
2. HTS221
3. I²C kabeli
4. Raspberry Pi uchun I²C qalqoni
5. Ethernet kabeli
2 -qadam: Ulanishlar:
Malinali pi uchun I2C qalqonini oling va uni malina pi gpio pimlariga sekin suring.
Keyin I2C kabelining bir uchini HTS221 sensoriga, ikkinchi uchini esa I2C ekraniga ulang.
Ethernet kabelini pi -ga ulang yoki WiFi modulidan foydalanishingiz mumkin.
Ulanishlar yuqoridagi rasmda ko'rsatilgan.
3 -qadam: Kod:
HTS221 uchun piton kodini bizning github omboridan-Dcube do'konidan yuklab olish mumkin
Mana shu havola:
github.com/DcubeTechVentures/HTS221/blob/master/Java/HTS221.java
Biz Java kodi uchun pi4j kutubxonasidan foydalandik, malina pi ga pi4j o'rnatish bosqichlari bu erda tasvirlangan:
pi4j.com/install.html
Siz bu erdan kodni nusxalashingiz mumkin, u quyidagicha berilgan:
// Ixtiyoriy litsenziya bilan tarqatilgan.
// Agar xohlasangiz, foyda yoki tekin ishlating, agar u tegishli asarlar litsenziyalariga mos kelsa.
// HTS221
// Bu kod HTS221_I2CS I2C Mini moduli bilan ishlash uchun mo'ljallangan.
com.pi4j.io.i2c. I2CBus -ni import qilish;
com.pi4j.io.i2c. I2CDevice -ni import qilish;
com.pi4j.io.i2c. I2CFactory -ni import qilish;
java.io. IOException ni import qilish;
HTS221 umumiy klassi {public static void main (String args ) istisno qiladi
{
// I2CBus yaratish
I2CBus avtobus = I2CFactory.getInstance (I2CBus. BUS_1);
// I2C qurilmasini oling, HTS221 I2C manzili 0x5F (95)
I2CDevice qurilmasi = bus.getDevice (0x5F);
// O'rtacha konfiguratsiya registrini tanlang
// O'rtacha harorat namunalari = 16, namlikning o'rtacha namunalari = 32
device.write (0x10, (bayt) 0x1B);
// Boshqarish registrini tanlang1
// Quvvatni yoqish, ma'lumotlarni yangilashni blokirovka qilish, ma'lumotlarni uzatish tezligi o/p = 1 Gts
device.write (0x20, (bayt) 0x85);
Thread.sleep (500);
// Qurilmaning doimiy bo'lmagan xotirasidan kalibrlash qiymatlarini o'qing
// Namlikni kalibrlash qiymatlari
bayt val = yangi bayt [2];
// 0x30 (48) manzildan 1 bayt ma'lumotlarni o'qing
val [0] = (bayt) device.read (0x30);
// 0x31 (49) manzildan 1 bayt ma'lumotlarni o'qing
val [1] = (bayt) device.read (0x31);
int H0 = (val [0] & 0xFF) / 2;
int H1 = (val [1] & 0xFF) / 2;
// 0x36 (54) manzildan 1 bayt ma'lumotlarni o'qing
val [0] = (bayt) device.read (0x36);
// 0x37 (55) manzildan 1 bayt ma'lumotlarni o'qing
val [1] = (bayt) device.read (0x37);
int H2 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// 0x3A (58) manzilidan 1 bayt ma'lumotlarni o'qing
val [0] = (bayt) device.read (0x3A);
// 0x3B (59) manzilidan 1 bayt ma'lumotlarni o'qing
val [1] = (bayt) device.read (0x3B);
int H3 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// Haroratni kalibrlash qiymatlari
// 0x32 (50) manzilidan 1 bayt ma'lumotlarni o'qing
int T0 = ((bayt) device.read (0x32) & 0xFF);
// 0x33 (51) manzildan 1 bayt ma'lumotlarni o'qing
int T1 = ((bayt) device.read (0x33) & 0xFF);
// 0x35 (53) manzildan 1 bayt ma'lumotlarni o'qing
int raw = ((byte) device.read (0x35) & 0x0F);
// Haroratni kalibrlash qiymatlarini 10 bitga aylantiring
T0 = ((xom & 0x03) * 256) + T0;
T1 = ((xom & 0x0C) * 64) + T1;
// 0x3C (60) manzilidan 1 bayt ma'lumotlarni o'qing
val [0] = (bayt) device.read (0x3C);
// 0x3D (61) manzilidan 1 bayt ma'lumotlarni o'qing
val [1] = (bayt) device.read (0x3D);
int T2 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// 0x3E (62) manzilidan 1 bayt ma'lumotlarni o'qing
val [0] = (bayt) device.read (0x3E);
// 0x3F (63) manzilidan 1 bayt ma'lumotlarni o'qing
val [1] = (bayt) device.read (0x3F);
int T3 = ((val [1] & 0xFF) * 256) + (val [0] & 0xFF);
// 4 bayt ma'lumotni o'qing
// hum msb, hum lsb, temp msb, temp lsb
bayt ma'lumotlar = yangi bayt [4]; device.read (0x28 | 0x80, ma'lumotlar, 0, 4);
// Ma'lumotni aylantirish
int hum = ((ma'lumotlar [1] & 0xFF) * 256) + (ma'lumotlar [0] & 0xFF);
int temp = ((ma'lumotlar [3] & 0xFF) * 256) + (ma'lumotlar [2] & 0xFF);
agar (harorat> 32767)
{
harorat -= 65536;
}
ikki marta namlik = ((1.0 * H1) - (1.0 * H0)) * (1.0 * hum - 1.0 * H2) / (1.0 * H3 - 1.0 * H2) + (1.0 * H0);
er -xotin cTemp = ((T1 - T0) / 8.0) * (temp - T2) / (T3 - T2) + (T0 / 8.0);
er -xotin fTemp = (cTemp * 1.8) + 32;
// Ma'lumotni ekranga chiqarish
System.out.printf ("Nisbiy namlik: %.2f %% RH %n", namlik);
System.out.printf ("Selsiy bo'yicha harorat: %.2f C %n", cTemp);
System.out.printf ("Farengeytdagi harorat: %.2f F %n", fTemp);
}
}
4 -qadam: Ilovalar:
HTS221 har xil turdagi havo namlagichlari va muzlatgichlar kabi iste'molchi mahsulotlarida ishlatilishi mumkin. Bu sensor, shuningdek, aqlli uy avtomatizatsiyasi, sanoat avtomatizatsiyasi, nafas olish uskunalari, aktivlar va tovarlarni kuzatishni o'z ichiga oladi.
Tavsiya:
Raspberry Pi SHT25 namlik va harorat sensori Python darsligi: 4 qadam
Raspberry Pi SHT25 namlik va harorat sensori Python qo'llanmasi: SHT25 I2C namlik va harorat sensori ± 1,8%RH ± 0,2 ° C I2C mini moduli. SHT25 yuqori aniqlikdagi namlik va harorat sensori kalibrovka qilingan, chiziqli sensorli signallarni taqdim etuvchi form faktor va razvedka nuqtai nazaridan sanoat standartiga aylandi
Arduino Nano - HTS221 nisbiy namlik va harorat sensori qo'llanmasi: 4 qadam
Arduino Nano - HTS221 nisbiy namlik va harorat sensori qo'llanmasi: HTS221 - nisbiy namlik va harorat uchun ultra ixcham sig'imli raqamli sensor. O'lchov ma'lumotlarini raqamli ketma -ketlik bilan ta'minlash uchun sezuvchi element va aralash signalli maxsus integratsiyalashgan elektron (ASIC) ni o'z ichiga oladi
Raspberry Pi - HIH6130 I2C namlik va harorat sensori Python darsligi: 4 qadam
Raspberry Pi - HIH6130 I2C namlik va harorat sensori Python qo'llanmasi: HIH6130 - bu raqamli chiqishga ega namlik va harorat sensori. Bu sensorlar ± 4% RH aniqlik darajasini ta'minlaydi. Sanoatning etakchi uzoq muddatli barqarorligi, haqiqiy harorat kompensatsiyalangan raqamli I2C, sanoatning etakchi ishonchliligi, energiya samaradorligi
Raspberry Pi - HIH6130 I2C namlik va harorat sensori Java darsligi: 4 qadam
Raspberry Pi - HIH6130 I2C namlik va harorat sensori Java darsligi: HIH6130 - bu raqamli chiqishga ega namlik va harorat sensori. Bu sensorlar ± 4% RH aniqlik darajasini ta'minlaydi. Sanoatning etakchi uzoq muddatli barqarorligi, haqiqiy harorat kompensatsiyalangan raqamli I2C, sanoatning etakchi ishonchliligi, energiya samaradorligi
Raspberry Pi va TE Connection MS8607-02BA01 yordamida harorat, nisbiy namlik, atmosfera bosimi yozuvchisi: 22 qadam (rasmlar bilan)
Raspberry Pi va TE Connectivity MS8607-02BA01 yordamida harorat, nisbiy namlik, atmosfera bosimi registratori: Kirish: Ushbu loyihada men sizga namlik va atmosfera bosimi uchun namlikni hisobga olish tizimini bosqichma-bosqich qurishni ko'rsataman. Ushbu loyiha Raspberry Pi 3 Model B va TE Connectivity MS8607-02BA atrof-muhit sensori chipiga asoslangan