جدول المحتويات:
- الخطوة 1: الأجهزة المطلوبة:
- الخطوة 2: ربط الأجهزة:
- الخطوة الثالثة: كود جافا لقياس درجة الحرارة:
- الخطوة 4: التطبيقات:
فيديو: قياس درجة الحرارة باستخدام TMP112 و Raspberry Pi: 4 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:38
TMP112 وحدة I2C صغيرة عالية الدقة ومنخفضة الطاقة ومستشعر درجة الحرارة الرقمية. يعتبر TMP112 مثاليًا لقياس درجة الحرارة الممتدة. يوفر هذا الجهاز دقة تبلغ ± 0.5 درجة مئوية دون الحاجة إلى معايرة أو تكييف إشارة مكون خارجي.
في هذا البرنامج التعليمي ، تم توضيح واجهة وحدة المستشعر TMP112 مع raspberry pi كما تم توضيح برمجتها باستخدام لغة Java. لقراءة قيم درجة الحرارة ، استخدمنا raspberry pi مع محول I2c. يجعل هذا المحول I2C الاتصال بوحدة المستشعر أسهل وأكثر موثوقية.
الخطوة 1: الأجهزة المطلوبة:
تشمل المواد التي نحتاجها لتحقيق هدفنا مكونات الأجهزة التالية:
1. TMP112
2. Raspberry Pi
3. كابل I2C
4. I2C شيلد للتوت باي
الخطوة 2: ربط الأجهزة:
يشرح قسم توصيل الأجهزة بشكل أساسي اتصالات الأسلاك المطلوبة بين المستشعر و raspberry pi. يعد التأكد من التوصيلات الصحيحة ضرورة أساسية أثناء العمل على أي نظام للإخراج المطلوب. إذن ، الاتصالات المطلوبة هي كما يلي:
سيعمل TMP112 على I2C. فيما يلي مثال على مخطط الأسلاك ، يوضح كيفية توصيل كل واجهة من أجهزة الاستشعار.
خارج الصندوق ، تم تكوين اللوحة لواجهة I2C ، لذلك نوصي باستخدام هذا التوصيل إذا كنت غير مدرك. كل ما تحتاجه هو أربعة أسلاك!
مطلوب أربعة اتصالات فقط دبابيس Vcc و Gnd و SCL و SDA ويتم توصيلها بمساعدة كابل I2C.
هذه الوصلات موضحة في الصور أعلاه.
الخطوة الثالثة: كود جافا لقياس درجة الحرارة:
تتمثل ميزة استخدام raspberry pi في أنه يوفر لك مرونة لغة البرمجة التي تريد برمجة اللوحة بها لربط المستشعر بها. من خلال الاستفادة من هذه الميزة في هذا المنتدى ، نعرض هنا البرمجة بلغة Java. يمكن تنزيل كود java لـ TMP112 من مجتمع GitHub وهو Dcube Store.
ولسهولة المستخدمين ، نقوم بشرح الكود هنا أيضًا:
كخطوة أولى في الترميز ، تحتاج إلى تنزيل مكتبة pi4j في حالة java ، لأن هذه المكتبة تدعم الوظائف المستخدمة في الكود. لذلك ، لتنزيل المكتبة يمكنك زيارة الرابط التالي:
pi4j.com/install.html
يمكنك نسخ كود جافا العامل لهذا المستشعر من هنا أيضًا:
استيراد com.pi4j.io.i2c. I2CBus ؛
استيراد com.pi4j.io.i2c. I2CDevice ؛
استيراد com.pi4j.io.i2c. I2CFactory ؛
استيراد java.io. IOException ؛
الطبقة العامة TMP112
{
يطرح main static void main (String args ) استثناء
{
// إنشاء ناقل I2C
حافلة I2CBus = I2CFactory.getInstance (I2CBus. BUS_1) ؛
// احصل على جهاز I2C ، عنوان TMP112 I2C هو 0x48 (72)
جهاز I2CDevice = bus.getDevice (0x48) ؛
بايت التكوين = بايت جديد [2] ؛
// وضع التحويل المستمر ، دقة 12 بت ، قائمة انتظار الخطأ هي 1
التكوين [0] = (بايت) 0x60 ؛
// القطبية منخفضة ، الترموستات في وضع المقارنة ، تعطيل وضع الإغلاق
التكوين [1] = (بايت) 0xA0 ؛
// اكتب التكوين للتسجيل 0x01 (1)
device.write (0x01 ، config ، 0 ، 2) ؛
Thread.sleep (500) ؛
// قراءة 2 بايت من البيانات من العنوان 0x00 (0) ، msb أولاً
بايت بيانات = بايت جديد [2] ؛
قراءة الجهاز (0x00 ، البيانات ، 0 ، 2) ؛
// تحويل البيانات
int temp = (((data [0] & 0xFF) * 256) + (data [1] & 0xFF)) / 16 ؛
إذا (درجة الحرارة> 2047)
{
درجة الحرارة - = 4096 ؛
}
cTemp مزدوج = درجة الحرارة * 0.0625 ؛
مزدوج fTemp = cTemp * 1.8 + 32 ؛
// إخراج إلى الشاشة
System.out.printf ("درجة الحرارة بالدرجة المئوية:٪.2f C٪ n"، cTemp)؛
System.out.printf ("درجة الحرارة بالفهرنهايت هي:٪.2f F٪ n"، fTemp)؛
}
}
المكتبة التي تسهل اتصال i2c بين المستشعر واللوحة هي pi4j ، وتساعد حزمها المختلفة I2CBus و I2CDevice و I2CFactory على إنشاء الاتصال.
استيراد com.pi4j.io.i2c. I2CBus ؛ استيراد com.pi4j.io.i2c. I2CDevice ؛ استيراد com.pi4j.io.i2c. I2CFactory ؛ استيراد java.io. IOException ؛
يتم استخدام وظائف write () و read () لكتابة بعض الأوامر المحددة إلى المستشعر لجعله يعمل في وضع معين وقراءة إخراج المستشعر على التوالي.
يظهر خرج المستشعر أيضًا في الصورة أعلاه.
الخطوة 4: التطبيقات:
تتضمن التطبيقات المختلفة التي تتضمن مستشعر درجة الحرارة الرقمية ذات الطاقة المنخفضة وعالية الدقة TMP112 مراقبة درجة حرارة مزود الطاقة ، والحماية الحرارية للأجهزة الطرفية للكمبيوتر ، وإدارة البطارية بالإضافة إلى الأجهزة المكتبية.
موصى به:
قياس درجة الحرارة باستخدام AD7416ARZ و Raspberry Pi: 4 خطوات
قياس درجة الحرارة باستخدام AD7416ARZ و Raspberry Pi: AD7416ARZ عبارة عن مستشعر درجة حرارة 10 بت مع أربعة محولات تناظرية أحادية القناة إلى رقمية ومستشعر درجة حرارة مدمج فيه. يمكن الوصول إلى مستشعر درجة الحرارة على الأجزاء عبر قنوات المضاعف. هذه درجة الحرارة عالية الدقة
قياس درجة الحرارة باستخدام TMP112 و Arduino Nano: 4 خطوات
قياس درجة الحرارة باستخدام TMP112 و Arduino Nano: وحدة TMP112 عالية الدقة ومنخفضة الطاقة ومستشعر درجة الحرارة الرقمية I2C. يعتبر TMP112 مثاليًا لقياس درجة الحرارة الممتدة. يوفر هذا الجهاز دقة تبلغ ± 0.5 درجة مئوية دون الحاجة إلى المعايرة أو تكييف إشارة المكون الخارجي
قراءة درجة الحرارة باستخدام مستشعر درجة الحرارة LM35 مع Arduino Uno: 4 خطوات
قراءة درجة الحرارة باستخدام مستشعر درجة الحرارة LM35 مع Arduino Uno: مرحبًا يا رفاق في هذه التعليمات ، سوف نتعلم كيفية استخدام LM35 مع Arduino. Lm35 هو مستشعر لدرجة الحرارة يمكنه قراءة قيم درجة الحرارة من -55 درجة مئوية إلى 150 درجة مئوية. إنه جهاز ثلاثي الأطراف يوفر جهدًا تناظريًا يتناسب مع درجة الحرارة. عالية
قياس درجة الحرارة باستخدام STS21 و Raspberry Pi: 4 خطوات
قياس درجة الحرارة باستخدام STS21 و Raspberry Pi: يوفر مستشعر درجة الحرارة الرقمي STS21 أداءً فائقًا وبصمة موفرة للمساحة. يوفر إشارات خطية معايرة بتنسيق رقمي I2C. يعتمد تصنيع هذا المستشعر على تقنية CMOSens ، والتي تنسب إلى
قياس درجة الحرارة باستخدام TMP112 والفوتون الجزيئي: 4 خطوات
قياس درجة الحرارة باستخدام TMP112 والفوتون الجسيمي: TMP112 عالي الدقة ، منخفض الطاقة ، وحدة استشعار درجة الحرارة الرقمية I2C MINI. يعتبر TMP112 مثاليًا لقياس درجة الحرارة الممتدة. يوفر هذا الجهاز دقة تبلغ ± 0.5 درجة مئوية دون الحاجة إلى المعايرة أو تكييف إشارة المكون الخارجي