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

مراقبة درجة الحرارة باستخدام MCP9808 و Raspberry Pi: 4 خطوات
مراقبة درجة الحرارة باستخدام MCP9808 و Raspberry Pi: 4 خطوات

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

فيديو: مراقبة درجة الحرارة باستخدام MCP9808 و Raspberry Pi: 4 خطوات
فيديو: Remote temperature monitoring over Internet with Raspberry Pi 2024, يوليو
Anonim
Image
Image

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

في هذا البرنامج التعليمي ، تم توضيح واجهة وحدة المستشعر MCP9808 مع raspberry pi كما تم توضيح برمجتها باستخدام لغة python. لقراءة قيم درجة الحرارة ، استخدمنا raspberry pi مع محول I2c. يجعل هذا المحول I2C الاتصال بوحدة المستشعر أسهل وأكثر موثوقية.

الخطوة 1: الأجهزة المطلوبة:

الأجهزة المطلوبة
الأجهزة المطلوبة
الأجهزة المطلوبة
الأجهزة المطلوبة
الأجهزة المطلوبة
الأجهزة المطلوبة

تشمل المواد التي نحتاجها لتحقيق هدفنا مكونات الأجهزة التالية:

1. MCP9808

2. Raspberry Pi

3. كابل I2C

4. I2C درع لتوت العليق بي

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

الخطوة 2: ربط الأجهزة:

ربط الأجهزة
ربط الأجهزة
ربط الأجهزة
ربط الأجهزة

يشرح قسم توصيل الأجهزة بشكل أساسي اتصالات الأسلاك المطلوبة بين المستشعر و raspberry pi. يعد التأكد من التوصيلات الصحيحة ضرورة أساسية أثناء العمل على أي نظام للإخراج المطلوب. إذن ، الاتصالات المطلوبة هي كما يلي:

سيعمل MCP9808 على I2C. فيما يلي مثال على مخطط الأسلاك ، يوضح كيفية توصيل كل واجهة من أجهزة الاستشعار.

خارج الصندوق ، تم تكوين اللوحة لواجهة I2C ، لذلك نوصي باستخدام هذا التوصيل إذا كنت غير مدرك. كل ما تحتاجه هو أربعة أسلاك!

مطلوب أربعة اتصالات فقط دبابيس Vcc و Gnd و SCL و SDA ويتم توصيلها بمساعدة كابل I2C.

هذه الوصلات موضحة في الصور أعلاه.

الخطوة الثالثة: كود قياس درجة الحرارة:

كود قياس درجة الحرارة
كود قياس درجة الحرارة

تتمثل ميزة استخدام raspberry pi في أنه يوفر لك مرونة لغة البرمجة التي تريد برمجة اللوحة من أجل واجهة المستشعر معها. من خلال الاستفادة من هذه الميزة في هذه اللوحة ، نعرض هنا برمجتها بلغة الثعبان. Python هي واحدة من أسهل لغات البرمجة بأسهل بناء جملة. يمكن تنزيل كود python الخاص بـ MCP9808 من مجتمع github الخاص بنا وهو DCUBE Store Community.

ولسهولة المستخدمين ، نقوم بشرح الكود هنا أيضًا:

كخطوة أولى في الترميز ، تحتاج إلى تنزيل مكتبة SMBus في حالة Python ، لأن هذه المكتبة تدعم الوظائف المستخدمة في الكود. لذلك ، لتنزيل المكتبة يمكنك زيارة الرابط التالي:

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

يمكنك نسخ كود العمل من هنا أيضا:

استيراد smbus

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

# احصل على I2C busbus = smbus. SMBus (1)

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

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

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

التكوين = [0x00 ، 0x00] bus.write_i2c_block_data (0x18 ، 0x01 ، config)

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

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

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

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

وقت النوم (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

يتم تنفيذ الكود باستخدام الأمر التالي:

$> python MCP9808.py GT. بيثون MCP9808.py

GT. بيثون MCP9808.py

يظهر خرج المستشعر في الصورة أعلاه كمرجع للمستخدم.

الخطوة 4: التطبيقات:

التطبيقات
التطبيقات

يحتوي مستشعر درجة الحرارة الرقمي MCP9808 على العديد من التطبيقات على مستوى الصناعة والتي تتضمن المجمدات الصناعية والثلاجات جنبًا إلى جنب مع العديد من معالجات الطعام. يمكن استخدام هذا المستشعر للعديد من أجهزة الكمبيوتر الشخصية والخوادم بالإضافة إلى الأجهزة الطرفية الأخرى للكمبيوتر الشخصي.

موصى به: