Სარჩევი:

ტემპერატურის მონიტორინგი MCP9808 და Raspberry Pi გამოყენებით: 4 ნაბიჯი
ტემპერატურის მონიტორინგი MCP9808 და Raspberry Pi გამოყენებით: 4 ნაბიჯი

ვიდეო: ტემპერატურის მონიტორინგი MCP9808 და Raspberry Pi გამოყენებით: 4 ნაბიჯი

ვიდეო: ტემპერატურის მონიტორინგი MCP9808 და Raspberry Pi გამოყენებით: 4 ნაბიჯი
ვიდეო: მოდული 3 ტემპერატურის მონიტორინგი და დოკუმენტირება 2024, ივლისი
Anonim
Image
Image

MCP9808 არის უაღრესად ზუსტი ციფრული ტემპერატურის სენსორი ± 0.5 ° C I2C მინი მოდული. ისინი განასახიერებენ მომხმარებლის მიერ პროგრამირებადი რეგისტრებით, რომლებიც ხელს უწყობენ ტემპერატურის მგრძნობიარე პროგრამებს. MCP9808 მაღალი სიზუსტის ტემპერატურის სენსორი გახდა ინდუსტრიის სტანდარტი ფორმის ფაქტორისა და ინტელექტის თვალსაზრისით, რომელიც უზრუნველყოფს კალიბრირებულ, ხაზოვანი სენსორული სიგნალების ციფრულ, I2C ფორმატში.

ამ გაკვეთილში ნაჩვენებია MCP9808 სენსორული მოდულის ინტერფეისი ჟოლოს პი და აჩვენეს მისი პროგრამირება პითონის ენის გამოყენებით. ტემპერატურის მნიშვნელობების წასაკითხად, ჩვენ გამოვიყენეთ ჟოლოს პი I2c ადაპტერით. ეს I2C ადაპტერი სენსორულ მოდულთან კავშირს ხდის ადვილი და საიმედო.

ნაბიჯი 1: საჭირო აპარატურა:

საჭირო აპარატურა
საჭირო აპარატურა
საჭირო აპარატურა
საჭირო აპარატურა
საჭირო აპარატურა
საჭირო აპარატურა

მასალები, რომლებიც ჩვენ გვჭირდება ჩვენი მიზნის მისაღწევად, მოიცავს შემდეგ ტექნიკურ კომპონენტებს:

1. MCP9808

2. ჟოლო პი

3. I2C კაბელი

4. I2C ფარი ჟოლოს პი

5. Ethernet კაბელი

ნაბიჯი 2: აპარატურის დაკავშირება:

აპარატურის დაკავშირება
აპარატურის დაკავშირება
აპარატურის დაკავშირება
აპარატურის დაკავშირება

აპარატურის დაკავშირების განყოფილება ძირითადად განმარტავს გაყვანილობის კავშირებს სენსორსა და ჟოლოს პი შორის. სწორი კავშირების უზრუნველყოფა არის ძირითადი აუცილებლობა ნებისმიერ სისტემაზე მუშაობისას სასურველი გამომუშავებისთვის. ამრიგად, საჭირო კავშირები შემდეგია:

MCP9808 იმუშავებს I2C– ზე. აქ არის გაყვანილობის დიაგრამა, რომელიც აჩვენებს, თუ როგორ უნდა დააკავშიროთ სენსორის თითოეული ინტერფეისი.

ყუთის გარეშე, დაფა კონფიგურირებულია I2C ინტერფეისისთვის, ამიტომ ჩვენ გირჩევთ გამოიყენოთ ეს კავშირი, თუ სხვაგვარად ხართ აგნოსტიკოსი. ყველაფერი რაც თქვენ გჭირდებათ არის ოთხი მავთული!

მხოლოდ ოთხი კავშირია საჭირო Vcc, Gnd, SCL და SDA ქინძისთავები და ეს დაკავშირებულია I2C კაბელის დახმარებით.

ეს კავშირები ნაჩვენებია ზემოთ მოცემულ სურათებში.

ნაბიჯი 3: ტემპერატურის გაზომვის კოდი:

ტემპერატურის გაზომვის კოდი
ტემპერატურის გაზომვის კოდი

ჟოლოს pi გამოყენების უპირატესობა ის არის, რომ თქვენ გაძლევთ პროგრამირების ენის მოქნილობას, რომლითაც გსურთ დაფის დაპროგრამება სენსორის მასთან ინტერფეისის მიზნით. ამ დაფის ამ უპირატესობის გამოყენებით, ჩვენ ვაჩვენებთ მის პროგრამირებას პითონში. პითონი არის ერთ -ერთი ყველაზე მარტივი პროგრამირების ენა უმარტივესი სინტაქსით. MCP9808– ის პითონის კოდი შეიძლება გადმოწერილი იყოს ჩვენი github საზოგადოებიდან, რომელიც არის DCUBE Store Community.

ისევე როგორც მომხმარებლების სიმარტივისთვის, ჩვენ აქ განვმარტავთ კოდს:

როგორც კოდირების პირველი ნაბიჯი თქვენ უნდა გადმოწეროთ SMBus ბიბლიოთეკა პითონის შემთხვევაში, რადგან ეს ბიბლიოთეკა მხარს უჭერს კოდში გამოყენებულ ფუნქციებს. ასე რომ, ბიბლიოთეკის გადმოსაწერად შეგიძლიათ ეწვიოთ შემდეგ ბმულს:

pypi.python.org/pypi/smbus-cffi/0.5.1

თქვენ ასევე შეგიძლიათ დააკოპიროთ სამუშაო კოდი აქედან:

smbus- ის იმპორტი

იმპორტის დრო

# მიიღეთ I2C busbus = smbus. SMBus (1)

# MCP9808 მისამართი, 0x18 (24)

# აირჩიეთ კონფიგურაციის რეგისტრატორი, 0x01 (1)

# 0x0000 (00) კონვერტაციის უწყვეტი რეჟიმი, ნაგულისხმევი ჩართვა

config = [0x00, 0x00] bus.write_i2c_block_data (0x18, 0x01, კონფიგურაცია)

# MCP9808 მისამართი, 0x18 (24)

# აირჩიეთ რეზოლუცია რეგისტრატორი, 0x08 (8)

# 0x03 (03) რეზოლუცია = +0.0625 / C

bus.write_byte_data (0x18, 0x08, 0x03)

დრო. ძილი (0.5)

# MCP9808 მისამართი, 0x18 (24)

# წაიკითხეთ მონაცემები უკან 0x05 (5), 2 ბაიტი

# ტემპი MSB, TEMP LSB

მონაცემები = bus.read_i2c_block_data (0x18, 0x05, 2)

# გადააქციეთ მონაცემები 13 ბიტად

ctemp = ((მონაცემები [0] & 0x1F) * 256) + მონაცემები [1]

თუ ctemp> 4095:

ctemp -= 8192

ctemp = ctemp * 0.0625

ftemp = ctemp * 1.8 + 32

# მონაცემების გამოტანა ეკრანზე

ბეჭდვა "ტემპერატურა ცელსიუსში არის: %.2f C" %ctemp

ბეჭდვა "ტემპერატურა ფარენჰეიტში არის: %.2f F" %ftemp

კოდი შესრულებულია შემდეგი ბრძანების გამოყენებით:

$> პითონი MCP9808.py gt; პითონი MCP9808.py

gt; პითონი MCP9808.py

სენსორის გამომავალი ნაჩვენებია ზემოთ მოცემულ სურათზე მომხმარებლის მითითებისთვის.

ნაბიჯი 4: პროგრამები:

პროგრამები
პროგრამები

MCP9808 ციფრული ტემპერატურის სენსორს აქვს რამდენიმე ინდუსტრიული დონის პროგრამა, რომელიც აერთიანებს სამრეწველო საყინულეებს და მაცივრებს სხვადასხვა კვების პროცესორებთან ერთად. ეს სენსორი შეიძლება გამოყენებულ იქნას სხვადასხვა პერსონალური კომპიუტერებისთვის, სერვერებისთვის და სხვა კომპიუტერული პერიფერიული მოწყობილობებისთვის.

გირჩევთ: