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

قياس درجة الحرارة باستخدام TMP112 والفوتون الجزيئي: 4 خطوات
قياس درجة الحرارة باستخدام TMP112 والفوتون الجزيئي: 4 خطوات

فيديو: قياس درجة الحرارة باستخدام TMP112 والفوتون الجزيئي: 4 خطوات

فيديو: قياس درجة الحرارة باستخدام TMP112 والفوتون الجزيئي: 4 خطوات
فيديو: How to use LM75A Temperature sensor with Arduino code 2024, يوليو
Anonim
Image
Image

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

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

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

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

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

1. TMP112

2. جسيم الفوتون

3. كابل I2C

4. I2C Shield للفوتون الجسيمي

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

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

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

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

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

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

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

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

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

لنبدأ الآن برمز الجسيمات.

أثناء استخدام وحدة الاستشعار مع arduino ، نقوم بتضمين مكتبة application.h و spark_wiring_i2c.h. تحتوي مكتبة "application.h" و spark_wiring_i2c.h على الوظائف التي تسهل اتصال i2c بين المستشعر والجسيم.

يتم توفير رمز الجسيمات بالكامل أدناه لراحة المستخدم:

#يشمل

#يشمل

// عنوان TMP112 I2C هو 0x48 (72)

#define Addr 0x48

مزدوج cTemp = 0.0 ، fTemp = 0.0 ؛

الإعداد باطل()

{

// تعيين متغير

Particle.variable ("i2cdevice"، "TMP112") ؛

Particle.variable ("cTemp" ، cTemp) ؛

// تهيئة اتصال I2C باعتباره MASTER

Wire.begin () ؛

// تهيئة الاتصال التسلسلي ، اضبط معدل الباود = 9600

Serial.begin (9600) ؛

// بدء نقل I2C

Wire.beginTransmission (العنوان) ؛

// حدد سجل التكوين

Wire.write (0x01) ؛

// التحويل المستمر ، وضع المقارنة ، دقة 12 بت

Wire.write (0x60) ؛

Wire.write (0xA0) ؛

// إيقاف ناقل الحركة I2C

Wire.endTransmission () ؛

تأخير (300) ؛

}

حلقة فارغة()

{

بيانات int غير الموقعة [2] ؛

// بدء نقل I2C

Wire.beginTransmission (العنوان) ؛

// حدد سجل بيانات درجة الحرارة

Wire.write (0x00) ؛

// إيقاف ناقل الحركة I2C

Wire.endTransmission () ؛

تأخير (300) ؛

// طلب 2 بايت من البيانات

Wire.request From (Addr، 2) ؛

// قراءة 2 بايت من البيانات

// temp msb، temp lsb

إذا (Wire.available () == 2)

{

البيانات [0] = Wire.read () ،

البيانات [1] = Wire.read () ،

}

// تحويل البيانات إلى 12 بت

int temp = ((data [0] * 256) + (data [1])) / 16 ؛

إذا (درجة الحرارة> 2048)

{

درجة الحرارة - = 4096 ؛

}

cTemp = درجة الحرارة * 0.0625 ؛

fTemp = cTemp * 1.8 + 32 ؛

// إخراج البيانات إلى لوحة القيادة

Particle.publish ("درجة الحرارة بالدرجة المئوية:" ، سلسلة (cTemp)) ؛

تأخير (1000) ؛

Particle.publish ("درجة الحرارة بالفهرنهايت:" ، سلسلة (fTemp)) ؛

تأخير (1000) ؛

}

تنشئ الدالة Particle.variable () المتغيرات لتخزين إخراج المستشعر وتعرض وظيفة Particle.publish () الإخراج على لوحة القيادة بالموقع.

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

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

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

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

موصى به: