جدول المحتويات:

Raspberry Pi MCP9808 مستشعر درجة الحرارة Python تعليمي: 4 خطوات
Raspberry Pi MCP9808 مستشعر درجة الحرارة Python تعليمي: 4 خطوات

فيديو: Raspberry Pi MCP9808 مستشعر درجة الحرارة Python تعليمي: 4 خطوات

فيديو: Raspberry Pi MCP9808 مستشعر درجة الحرارة Python تعليمي: 4 خطوات
فيديو: How To Create Raspberry Pi DataLogger using python | DS18B20 | #raspberrypi #python #iot 2024, يوليو
Anonim
Image
Image
ماذا تحتاج..!!
ماذا تحتاج..!!

MCP9808 عبارة عن مستشعر درجة حرارة رقمي عالي الدقة ± 0.5 درجة مئوية وحدة صغيرة I2C. وهي مُجسَّدة بسجلات قابلة للبرمجة بواسطة المستخدم تسهل تطبيقات استشعار درجة الحرارة. أصبح مستشعر درجة الحرارة عالي الدقة MCP9808 معيارًا صناعيًا من حيث عامل الشكل والذكاء ، مما يوفر إشارات مستشعر خطية ومعايرة بتنسيق رقمي I2C. هذا هو العرض التوضيحي برمز Python باستخدام Raspberry Pi.

الخطوة 1: ماذا تحتاج..

ماذا تحتاج..!!
ماذا تحتاج..!!

1. Raspberry Pi

2. MCP9808

3. كابل I²C

4. I²C Shield لـ Raspberry Pi

5. كابل إيثرنت

الخطوة 2: التوصيلات

روابط
روابط
روابط
روابط
روابط
روابط
روابط
روابط

خذ درع I2C لـ Raspberry Pi وادفعه برفق فوق دبابيس gpio الخاصة بـ Raspberry Pi.

ثم قم بتوصيل أحد طرفي كابل I2C بمستشعر MCP9808 والطرف الآخر بغطاء I2C.

قم أيضًا بتوصيل كبل Ethernet بـ pi أو يمكنك استخدام وحدة WiFi.

تظهر الاتصالات في الصورة أعلاه.

الخطوة 3: الكود

يمكن تنزيل كود python الخاص بـ MCP9808 من مستودع GitHub - Dcube Store

هنا هو الرابط لنفسه:

github.com/DcubeTechVentures/MCP9808

يمكن العثور على ورقة بيانات MCP9808 هنا:

ww1.microchip.com/downloads/en/DeviceDoc/25…

لقد استخدمنا مكتبة SMBus لرمز Python ، يتم وصف خطوات تثبيت SMBus على Raspberry Pi هنا:

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

يمكنك أيضًا نسخ الكود من هنا ، ويُعطى على النحو التالي:

# موزعة بترخيص الإرادة الحرة.

# استخدمها بالطريقة التي تريدها ، سواء كانت ربحًا أو مجانًا ، بشرط أن تتناسب مع تراخيص الأعمال المرتبطة بها.

# MCP9808

# تم تصميم هذا الرمز للعمل مع الوحدة النمطية الصغيرة MCP9808_I2CS I2C المتوفرة في Dcube Store.

استيراد smbus

وقت الاستيراد

# احصل على حافلة I2C

الحافلة = smbus. SMBus (1)

# عنوان MCP9808 ، 0x18 (24)

# حدد سجل التكوين ، 0x01 (1)

# 0x0000 (00) وضع التحويل المستمر ، التشغيل الافتراضي

التكوين = [0x00 ، 0x00]

bus.write_i2c_block_data (0x18 ، 0x01 ، التكوين)

# عنوان MCP9808 ، 0x18 (24)

# حدد الدقة rgister ، 0x08 (8)

# 0x03 (03) الدقة = +0.0625 / C.

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

time.sleep (0.5) # عنوان MCP9808 ، 0x18 (24)

# قراءة البيانات مرة أخرى من 0x05 (5) ، 2 بايت

# Temp MSB ، TEMP LSB

data = 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 على العديد من التطبيقات على مستوى الصناعة والتي تتضمن المجمدات الصناعية والثلاجات جنبًا إلى جنب مع العديد من معالجات الطعام. يمكن استخدام هذا المستشعر للعديد من أجهزة الكمبيوتر الشخصية والخوادم بالإضافة إلى الأجهزة الطرفية الأخرى للكمبيوتر الشخصي.

موصى به: