Სარჩევი:
- ნაბიჯი 1: საჭირო აპარატურა:
- ნაბიჯი 2: აპარატურის დაკავშირება:
- ნაბიჯი 3: ტენიანობის და ტემპერატურის გაზომვის კოდი:
- ნაბიჯი 4: პროგრამები:
ვიდეო: ტენიანობის და ტემპერატურის გაზომვა HTS221 და ჟოლოს Pi გამოყენებით: 4 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:17
HTS221 არის ულტრა კომპაქტური capacitive ციფრული სენსორი ფარდობითი ტენიანობისა და ტემპერატურისათვის. იგი მოიცავს სენსორულ ელემენტს და შერეული სიგნალის გამოყენების სპეციფიკურ ინტეგრირებულ წრეს (ASIC), რომელიც უზრუნველყოფს გაზომვის ინფორმაციას ციფრული სერიული ინტერფეისების საშუალებით. ამდენი მახასიათებლით ინტეგრირებული ეს არის ერთ -ერთი ყველაზე შესაფერისი სენსორი კრიტიკული ტენიანობისა და ტემპერატურის გაზომვისთვის.
ამ სახელმძღვანელოში ნაჩვენებია HTS221 სენსორული მოდულის ინტერფეისის ჟოლოს pi და მისი პროგრამირება პითონის ენის გამოყენებითაც. ტენიანობის და ტემპერატურის მნიშვნელობების წასაკითხად, ჩვენ გამოვიყენეთ ჟოლოს პი I2C ადაპტერით. ეს I2C ადაპტერი სენსორულ მოდულთან კავშირს ხდის ადვილი და საიმედო.
ნაბიჯი 1: საჭირო აპარატურა:
მასალები, რომლებიც ჩვენ გვჭირდება ჩვენი მიზნის მისაღწევად, მოიცავს შემდეგ ტექნიკურ კომპონენტებს:
1. HTS221
2. ჟოლო პი
3. I2C კაბელი
4. I2C ფარი ჟოლოს პი
5. Ethernet კაბელი
ნაბიჯი 2: აპარატურის დაკავშირება:
აპარატურის დაკავშირების განყოფილება ძირითადად განმარტავს გაყვანილობის კავშირებს სენსორსა და ჟოლოს პი შორის. სწორი კავშირების უზრუნველყოფა არის ძირითადი აუცილებლობა ნებისმიერ სისტემაზე მუშაობისას სასურველი გამომუშავებისთვის. ამრიგად, საჭირო კავშირები შემდეგია:
HTS221 იმუშავებს I2C– ზე. აქ არის გაყვანილობის დიაგრამა, რომელიც აჩვენებს, თუ როგორ უნდა დააკავშიროთ სენსორის თითოეული ინტერფეისი.
ყუთის გარეშე, დაფა კონფიგურირებულია I2C ინტერფეისისთვის, ამიტომ ჩვენ გირჩევთ გამოიყენოთ ეს კავშირი, თუ სხვაგვარად ხართ აგნოსტიკოსი.
ყველაფერი რაც თქვენ გჭირდებათ არის ოთხი მავთული! მხოლოდ ოთხი კავშირია საჭირო Vcc, Gnd, SCL და SDA ქინძისთავები და ეს დაკავშირებულია I2C კაბელის დახმარებით.
ეს კავშირები ნაჩვენებია ზემოთ მოცემულ სურათებში.
ნაბიჯი 3: ტენიანობის და ტემპერატურის გაზომვის კოდი:
ჟოლოს pi გამოყენების უპირატესობა ის არის, რომ თქვენ გაძლევთ პროგრამირების ენის მოქნილობას, რომლითაც გსურთ დაფის დაპროგრამება სენსორის მასთან ინტერფეისის მიზნით. ამ დაფის ამ უპირატესობის გამოყენებით, ჩვენ ვაჩვენებთ მის პროგრამირებას პითონში. HTH221– ის პითონის კოდი შეგიძლიათ გადმოწეროთ ჩვენი github საზოგადოებიდან, რომელიც არის Control Everything Community.
ისევე როგორც მომხმარებლების სიმარტივისთვის, ჩვენ აქ განვმარტავთ კოდს:
როგორც კოდირების პირველი ნაბიჯი თქვენ უნდა გადმოწეროთ smbus ბიბლიოთეკა პითონის შემთხვევაში, რადგან ეს ბიბლიოთეკა მხარს უჭერს კოდში გამოყენებულ ფუნქციებს. ასე რომ, ბიბლიოთეკის გადმოსაწერად შეგიძლიათ ეწვიოთ შემდეგ ბმულს:
pypi.python.org/pypi/smbus-cffi/0.5.1
თქვენ ასევე შეგიძლიათ დააკოპიროთ პითონის კოდი ამ სენსორისთვის აქედან:
smbus- ის იმპორტი
იმპორტის დრო
# მიიღეთ I2C ავტობუსი
ავტობუსი = smbus. SMBus (1)
# HTS221 მისამართი, 0x5F (95)
# აირჩიეთ საშუალო კონფიგურაციის რეგისტრი, 0x10 (16)
# 0x1B (27) საშუალო ტემპერატურის ნიმუშები = 256, ტენიანობის საშუალო ნიმუშები = 512
bus.write_byte_data (0x5F, 0x10, 0x1B)
# HTS221 მისამართი, 0x5F (95)
# აირჩიეთ საკონტროლო რეგისტრი 1, 0x20 (32)
# 0x85 (133) ჩართვა, უწყვეტი განახლება, მონაცემთა გამომავალი სიჩქარე = 1 ჰც
bus.write_byte_data (0x5F, 0x20, 0x85)
დრო. ძილი (0.5)
# HTS221 მისამართი, 0x5F (95)
# წაიკითხეთ კალიბრაციის მნიშვნელობები მოწყობილობის არასტაბილური მეხსიერებიდან
# ტენიანობის დაკალიბრების მნიშვნელობები
# წაიკითხეთ მონაცემები უკან 0x30 (48), 1 ბაიტი
val = bus.read_byte_data (0x5F, 0x30)
H0 = val / 2
# წაიკითხეთ მონაცემები უკან 0x31 (49), 1 ბაიტი
val = bus.read_byte_data (0x5F, 0x31)
H1 = val /2
# წაიკითხეთ მონაცემები უკან 0x36 (54), 2 ბაიტი
val0 = bus.read_byte_data (0x5F, 0x36)
val1 = bus.read_byte_data (0x5F, 0x37)
H2 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# წაიკითხეთ მონაცემები 0x3A– დან (58), 2 ბაიტი
val0 = bus.read_byte_data (0x5F, 0x3A)
val1 = bus.read_byte_data (0x5F, 0x3B)
H3 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# ტემპერატურის დაკალიბრების მნიშვნელობები
# წაიკითხეთ მონაცემები უკან 0x32 (50), 1 ბაიტი
T0 = bus.read_byte_data (0x5F, 0x32)
T0 = (T0 & 0xFF)
# წაიკითხეთ მონაცემები უკან 0x32 (51), 1 ბაიტი
T1 = bus.read_byte_data (0x5F, 0x33)
T1 = (T1 & 0xFF)
# წაიკითხეთ მონაცემები უკან 0x35 (53), 1 ბაიტი
ნედლეული = bus.read_byte_data (0x5F, 0x35)
ნედლეული = (ნედლეული და 0x0F)
# გადააკეთეთ ტემპერატურის კალიბრაციის მნიშვნელობები 10 ბიტზე
T0 = ((ნედლეული & 0x03) * 256) + T0
T1 = ((ნედლეული & 0x0C) * 64) + T1
# წაიკითხეთ მონაცემები 0x3C– დან (60), 2 ბაიტი
val0 = bus.read_byte_data (0x5F, 0x3C)
val1 = bus.read_byte_data (0x5F, 0x3D)
T2 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# წაიკითხეთ მონაცემები 0x3E– დან (62), 2 ბაიტი
val0 = bus.read_byte_data (0x5F, 0x3E)
val1 = bus.read_byte_data (0x5F, 0x3F)
T3 = ((val1 & 0xFF) * 256) + (val0 & 0xFF)
# წაიკითხეთ მონაცემები 0x28 (40) - დან ბრძანების რეგისტრაციით 0x80 (128), 4 ბაიტი
# ტენიანობა msb, ტენიანობა lsb, ტემპერატურა msb, ტემპერატურა lsb
მონაცემები = bus.read_i2c_block_data (0x5F, 0x28 | 0x80, 4)
# გადააკეთეთ მონაცემები
ტენიანობა = (მონაცემები [1] * 256) + მონაცემები [0]
ტენიანობა = ((1.0 * H1) - (1.0 * H0)) * (1.0 * ტენიანობა - 1.0 * H2) / (1.0 * H3 - 1.0 * H2) + (1.0 * H0)
temp = (მონაცემები [3] * 256) + მონაცემები [2]
თუ ტემპერატურა> 32767:
ტემპერატურა -= 65536
cTemp = ((T1 - T0) / 8.0) * (temp - T2) / (T3 - T2) + (T0 / 8.0)
fTemp = (cTemp * 1.8) + 32
# მონაცემების გამოტანა ეკრანზე
ბეჭდვა "ფარდობითი ტენიანობა: %.2f %%" %ტენიანობა
დაბეჭდე "ტემპერატურა ცელსიუსში: %.2f C" %cTemp
დაბეჭდე "ტემპერატურა ფარენჰეიტში: %.2f F" %fTemp
ქვემოთ მოყვანილი კოდის ნაწილი მოიცავს ბიბლიოთეკებს, რომლებიც საჭიროა პითონის კოდების სწორად შესრულებისთვის.
smbus- ის იმპორტი
იმპორტის დრო
კოდი შეიძლება შესრულდეს ბრძანების სტრიქონში ქვემოთ მითითებული ბრძანების აკრეფით.
$> პითონი HTS221.py
სენსორის გამომავალი ასევე ნაჩვენებია ზემოთ მოცემულ სურათზე მომხმარებლის მითითებისთვის.
ნაბიჯი 4: პროგრამები:
HTS221 შეიძლება გამოყენებულ იქნას სხვადასხვა სამომხმარებლო პროდუქტში, როგორიცაა ჰაერის დამატენიანებლები და მაცივრები და ა.შ.
გირჩევთ:
ტენიანობის და ტემპერატურის გაზომვა HIH6130 და არდუინო ნანოს გამოყენებით: 4 ნაბიჯი
ტენიანობის და ტემპერატურის გაზომვა HIH6130 და Arduino Nano გამოყენებით: HIH6130 არის ტენიანობის და ტემპერატურის სენსორი ციფრული გამომუშავებით. ეს სენსორები უზრუნველყოფენ სიზუსტეს of 4% RH. ინდუსტრიის წამყვანი გრძელვადიანი სტაბილურობით, ჭეშმარიტი ტემპერატურის კომპენსირებული ციფრული I2C, ინდუსტრიის წამყვანი საიმედოობით, ენერგოეფექტურობით
ტენიანობის და ტემპერატურის გაზომვა HTS221- ისა და არდუინო ნანოს გამოყენებით: 4 ნაბიჯი
ტენიანობის და ტემპერატურის გაზომვა HTS221- ისა და არდუინო ნანოს გამოყენებით: HTS221 არის ულტრა კომპაქტური capacitive ციფრული სენსორი ფარდობითი ტენიანობისა და ტემპერატურისათვის. იგი მოიცავს შეგრძნების ელემენტს და შერეული სიგნალის პროგრამის სპეციფიკურ ინტეგრირებულ წრეს (ASIC), რათა უზრუნველყოს გაზომვის ინფორმაცია ციფრული სერიული საშუალებით
ტენიანობის და ტემპერატურის გაზომვა HIH6130 და ჟოლოს Pi გამოყენებით: 4 ნაბიჯი
ტენიანობის და ტემპერატურის გაზომვა HIH6130 და Raspberry Pi გამოყენებით: HIH6130 არის ტენიანობის და ტემპერატურის სენსორი ციფრული გამომუშავებით. ეს სენსორები უზრუნველყოფენ სიზუსტეს of 4% RH. ინდუსტრიის წამყვანი გრძელვადიანი სტაბილურობით, ჭეშმარიტი ტემპერატურის კომპენსირებული ციფრული I2C, ინდუსტრიის წამყვანი საიმედოობით, ენერგოეფექტურობით
ტენიანობის და ტემპერატურის გაზომვა HIH6130 და ნაწილაკების ფოტონის გამოყენებით: 4 ნაბიჯი
ტენიანობის და ტემპერატურის გაზომვა HIH6130 და ნაწილაკების ფოტონის გამოყენებით: HIH6130 არის ტენიანობის და ტემპერატურის სენსორი ციფრული გამომუშავებით. ეს სენსორები უზრუნველყოფენ სიზუსტეს of 4% RH. ინდუსტრიის წამყვანი გრძელვადიანი სტაბილურობით, ჭეშმარიტი ტემპერატურის კომპენსირებული ციფრული I2C, ინდუსტრიის წამყვანი საიმედოობით, ენერგოეფექტურობით
ტენიანობის და ტემპერატურის გაზომვა HTS221 და ნაწილაკების ფოტონის გამოყენებით: 4 ნაბიჯი
ტენიანობის და ტემპერატურის გაზომვა HTS221 და ნაწილაკების ფოტონის გამოყენებით: HTS221 არის ულტრა კომპაქტური capacitive ციფრული სენსორი ფარდობითი ტენიანობისა და ტემპერატურისათვის. იგი მოიცავს შეგრძნების ელემენტს და შერეული სიგნალის პროგრამის სპეციფიკურ ინტეგრირებულ წრეს (ASIC), რათა უზრუნველყოს გაზომვის ინფორმაცია ციფრული სერიული საშუალებით