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

اردوينو نانو - SI7050 البرنامج التعليمي لمستشعر درجة الحرارة: 4 خطوات
اردوينو نانو - SI7050 البرنامج التعليمي لمستشعر درجة الحرارة: 4 خطوات

فيديو: اردوينو نانو - SI7050 البرنامج التعليمي لمستشعر درجة الحرارة: 4 خطوات

فيديو: اردوينو نانو - SI7050 البرنامج التعليمي لمستشعر درجة الحرارة: 4 خطوات
فيديو: Arduino Nano - SI7050 Temperature Sensor Tutorial 2024, سبتمبر
Anonim
Image
Image

SI7050 عبارة عن مستشعر درجة حرارة رقمي يعمل على بروتوكول اتصال I2C ويوفر دقة عالية على نطاق جهد التشغيل الكامل ونطاق درجة الحرارة. تُعزى هذه الدقة العالية للمستشعر إلى معالجة الإشارات الجديدة والتصميم التناظري. هذه المستشعرات مدمجة في ذاكرة على الرقاقة تخزن بيانات الاستدعاء مما يسهل استخدامها على نطاق واسع. هذا هو العرض التوضيحي مع Arduino Nano.

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

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

1. اردوينو نانو

2. SI7050

3. كابل I²C

4. I²C Shield لـ Arduino Nano

الخطوة الثانية: التوصيل:

اتصال
اتصال
اتصال
اتصال
اتصال
اتصال
اتصال
اتصال

خذ درع I2C لـ Arduino Nano وادفعه برفق فوق دبابيس Nano.

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

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

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

الشفرة
الشفرة

يمكن تنزيل كود اردوينو الخاص بـ SI7050 من مستودع جيثب- DCUBE Store الخاص بنا.

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

github.com/DcubeTechVentures/SI7050/blob/master/Arduino/SI7050.ino

نقوم بتضمين مكتبة Wire.h لتسهيل اتصال I2c للمستشعر بلوحة Arduino.

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

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

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

// SI7050

// تم تصميم هذا الرمز للعمل مع الوحدة النمطية الصغيرة SI7050_I2CS I2C

#يشمل

// عنوان SI7050 I2C هو 0x40 (64)

#define Addr 0x40

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

{

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

Wire.begin () ؛

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

Serial.begin (9600) ؛

// بدء نقل I2C

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

// إيقاف انتقال I2C

Wire.endTransmission () ؛

تأخير (300) ؛

}

حلقة فارغة()

{

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

// بدء نقل I2C

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

// أرسل أمر قياس درجة الحرارة ، NO HOLD MASTER

Wire.write (0xF3) ؛

// إيقاف انتقال I2C

Wire.endTransmission () ؛

تأخير (500) ؛

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

Wire.request From (Addr، 2) ؛

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

// temp msb، temp lsb

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

{

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

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

}

// تحويل البيانات

تعويم درجة الحرارة = ((البيانات [0] * 256.0) + البيانات [1]) ؛

تعويم ctemp = ((175.72 * درجة الحرارة) / 65536.0) - 46.85 ؛

تعويم ftemp = ctemp * 1.8 + 32 ؛

// إخراج البيانات إلى الشاشة التسلسلية

Serial.print ("درجة الحرارة بالدرجة المئوية:") ؛

Serial.print (ctemp) ؛

Serial.println ("C") ؛

Serial.print ("درجة الحرارة بالفهرنهايت:") ؛

Serial.print (ftemp) ؛

Serial.println ("F") ؛

تأخير (500) ؛

}

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

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

موصى به: