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

قياس الضغط باستخدام CPS120 و Arduino Nano: 4 خطوات
قياس الضغط باستخدام CPS120 و Arduino Nano: 4 خطوات

فيديو: قياس الضغط باستخدام CPS120 و Arduino Nano: 4 خطوات

فيديو: قياس الضغط باستخدام CPS120 و Arduino Nano: 4 خطوات
فيديو: طريقه قياس ضغط الدم بسهوله_بجهاز الضغط الزئبقي Blood pressure measurement 2024, شهر نوفمبر
Anonim
Image
Image

CPS120 عبارة عن مستشعر ضغط مطلق سعوي عالي الجودة ومنخفض التكلفة بإخراج معوض بالكامل. يستهلك طاقة أقل ويتألف من مستشعر ميكانيكي كهروميكانيكي صغير جدًا (MEMS) لقياس الضغط. كما يتم تجسيد ADC المستند إلى سيجما دلتا لتحقيق متطلبات الإنتاج التعويضي.

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

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

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

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

1. CPS120

2. اردوينو نانو

3. كابل I2C

4. I2C Shield لاردوينو نانو

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

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

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

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

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

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

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

الخطوة الثالثة: كود قياس الضغط:

كود قياس الضغط
كود قياس الضغط

لنبدأ برمز Arduino الآن.

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

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

#يشمل

// عنوان CPS120 I2C هو 0x28 (40)

#define Addr 0x28

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

{

// تهيئة اتصال I2C

Wire.begin () ؛

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

Serial.begin (9600) ؛

}

حلقة فارغة()

{

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

// بدء نقل I2C

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

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

Wire.request From (Addr، 4) ؛

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

// الضغط msb ، الضغط lsb ، temp msb ، temp lsb

إذا كان (Wire.available () == 4)

{

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

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

البيانات [2] = Wire.read () ؛

البيانات [3] = Wire.read () ؛

تأخير (300) ؛

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

Wire.endTransmission () ؛

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

ضغط الطفو = ((((data [0] & 0x3F) * 265 + data [1]) / 16384.0) * 90.0) + 30.0 ؛

float cTemp = ((((data [2] * 256) + (data [3] & 0xFC)) / 4.0) * (165.0 / 16384.0)) - 40.0 ؛

تعويم fTemp = cTemp * 1.8 + 32 ؛

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

Serial.print ("الضغط:") ؛

Serial.print (الضغط) ؛

Serial.println ("kPa") ؛

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

Serial.print (cTemp) ؛

Serial.println ("C") ؛

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

Serial.print (fTemp) ؛

Serial.println ("F") ؛

تأخير (500) ؛

}

}

في مكتبة الأسلاك ، يتم استخدام Wire.write () و Wire.read () لكتابة الأوامر وقراءة إخراج المستشعر.

يتم استخدام Serial.print () و Serial.println () لعرض إخراج المستشعر على الشاشة التسلسلية لـ Arduino IDE.

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

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

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

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

موصى به: