جدول المحتويات:
فيديو: Raspberry Pi MMA8452Q 3-Axis 12-bit / 8-bit Digital Accelerometer Java تعليمي: 4 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:38
MMA8452Q هو مقياس تسارع ذكي ، منخفض الطاقة ، ثلاثي المحاور ، سعوي ، دقيق ميكانيكي مع دقة 12 بت. يتم توفير خيارات المستخدم القابلة للبرمجة المرنة بمساعدة الوظائف المضمنة في مقياس التسارع ، والتي يمكن تكوينها إلى دبابيس للمقاطعة. إنه يحتوي على مقاييس كاملة يمكن اختيارها من قبل المستخدم تبلغ ± 2g / ± 4g / ± 8g مع بيانات مصفاة عالية التمرير بالإضافة إلى البيانات غير المفلترة المتاحة في الوقت الفعلي. هذا هو العرض التوضيحي مع raspberry pi باستخدام كود جافا.
الخطوة 1: ماذا تحتاج..
1. Raspberry Pi
2. MMA8452Q
3. كابل I²C
4. I²C Shield لـ Raspberry Pi
5. كابل إيثرنت
الخطوة الثانية: التوصيلات:
خذ درع I2C لـ Raspberry Pi وادفعه برفق فوق دبابيس gpio الخاصة بـ Raspberry Pi.
ثم قم بتوصيل أحد طرفي كابل I2C بمستشعر MMA8452Q والطرف الآخر بدرع I2C.
قم أيضًا بتوصيل كبل Ethernet بـ pi أو يمكنك استخدام وحدة WiFi.
تظهر الاتصالات في الصورة أعلاه.
الخطوة الثالثة: الكود:
يمكن تنزيل كود Java الخاص بـ MMA8452Q من مستودع GitHub - Dcube Store
هنا هو الرابط لنفسه:
github.com/DcubeTechVentures/MMA8452Q
لقد استخدمنا مكتبة pi4j لرمز جافا ، وخطوات تثبيت pi4j على Raspberry Pi موصوفة هنا:
pi4j.com/install.html
يمكنك أيضًا نسخ الكود من هنا ، ويُعطى على النحو التالي:
// موزعة بترخيص الإرادة الحرة.
// استخدمها بالطريقة التي تريدها ، سواء كانت ربحًا أو مجانًا ، شريطة أن تتناسب مع تراخيص الأعمال المرتبطة بها.
// MMA8452Q
// تم تصميم هذا الرمز للعمل مع الوحدة النمطية المصغرة MMA8452Q_I2CS I2C المتوفرة في Dcube Store.
استيراد com.pi4j.io.i2c. I2CBus ؛
استيراد com.pi4j.io.i2c. I2CDevice ؛
استيراد com.pi4j.io.i2c. I2CFactory ؛
استيراد java.io. IOException ؛
فئة عامة MMA8452Q
{
يطرح main static void main (String args ) استثناء
{
// إنشاء ناقل I2C
حافلة I2CBus = I2CFactory.getInstance (I2CBus. BUS_1) ؛
// احصل على جهاز I2C ، عنوان MMA8452Q I2C هو 0x1C (28)
جهاز I2CDevice = bus.getDevice (0x1C) ،
// إرسال أمر الاستعداد
device.write (0x2A ، (بايت) 0x00) ؛
// أرسل الأمر النشط
device.write (0x2A ، (بايت) 0x01) ؛
// ضبط النطاق حتى +/- 2g
device.write (0x0E ، (بايت) 0x00) ؛
Thread.sleep (500) ؛
// قراءة 7 بايت من البيانات من العنوان 0x00 (0)
// الحالة، X msb، X lsb، Y msb، Y lsb، Z msb، Z lsb
بايت بيانات = بايت جديد [7] ؛
قراءة الجهاز (0x00 ، البيانات ، 0 ، 7) ؛
// تحويل القيم
int xAccl = (((data [1] & 0xFF) * 256) + (data [2] & 0xFF)) / 16 ؛
إذا (xAccl> 2047)
{
xAccl = xAccl - 4096 ؛
}
int yAccl = (((data [3] & 0xFF) * 256) + (data [4] & 0xFF)) / 16 ؛
إذا (yAccl> 2047)
{
yAccl = yAccl - 4096 ؛
}
int zAccl = (((data [5] & 0xFF) * 256) + (data [6] & 0xFF)) / 16 ؛
إذا (zAccl> 2047)
{
zAccl = zAccl - 4096 ؛
}
// إخراج البيانات للشاشة
System.out.printf ("X-Axis:٪ d٪ n"، xAccl)؛
System.out.printf ("المحور Y:٪ d٪ n"، yAccl)؛
System.out.printf ("المحور Z:٪ d٪ n"، zAccl)؛
}
}
الخطوة 4: التطبيقات:
يحتوي MMA8452Q على العديد من التطبيقات التي تشمل تطبيقات البوصلة الإلكترونية ، واكتشاف الاتجاه الثابت الذي يتضمن تحديد الوضع الرأسي / الأفقي ، أعلى / أسفل ، يسار / يمين ، تحديد الموضع الخلفي / الأمامي ، الكمبيوتر المحمول ، القارئ الإلكتروني ، واكتشاف السقوط الحر والحاسوب المحمول ، في الوقت الفعلي الكشف عن الاتجاه بما في ذلك الواقع الافتراضي وملاحظات موقع المستخدم ثلاثية الأبعاد للألعاب ، وتحليل النشاط في الوقت الفعلي مثل عد خطوات عداد الخطى ، واكتشاف السقوط الحر لمحرك الأقراص الصلبة ، والنسخ الاحتياطي لنظام تحديد المواقع العالمي (GPS) الميت الحساب وغير ذلك الكثير.
موصى به:
Raspberry Pi MCP9803 مستشعر درجة الحرارة Java تعليمي: 4 خطوات
Raspberry Pi MCP9803 مستشعر درجة الحرارة Java تعليمي: MCP9803 عبارة عن مستشعر درجة حرارة عالي الدقة بسلكين. وهي مُجسَّدة بسجلات قابلة للبرمجة بواسطة المستخدم تسهل تطبيقات استشعار درجة الحرارة. هذا المستشعر مناسب لنظام مراقبة درجة الحرارة متعدد المناطق المتطور للغاية. هنا
Raspberry Pi MCP9805 مستشعر درجة الحرارة Java تعليمي: 4 خطوات
Raspberry Pi MCP9805 مستشعر درجة الحرارة Java تعليمي: MCP9805 عبارة عن مستشعر درجة حرارة رقمي لوحدة الذاكرة. تم دمجه مع سجلات المستخدم القابلة للبرمجة والتي توفر المرونة لتطبيقات استشعار درجة الحرارة. تم تصميم هذا المستشعر ليتم دمجه في وحدة ذاكرة النظام الأساسي المحمول
Raspberry Pi TMP112 مستشعر درجة الحرارة Java تعليمي: 4 خطوات
Raspberry Pi TMP112 مستشعر درجة الحرارة Java تعليمي: TMP112 عالي الدقة ، منخفض الطاقة ، مستشعر درجة الحرارة الرقمية I2C وحدة صغيرة. يعتبر TMP112 مثاليًا لقياس درجة الحرارة الممتدة. يوفر هذا الجهاز دقة تبلغ ± 0.5 درجة مئوية دون الحاجة إلى معايرة أو تكييف إشارة مكون خارجي
Raspberry Pi CPS120 مستشعر الضغط Java تعليمي: 4 خطوات
Raspberry Pi CPS120 مستشعر الضغط Java تعليمي: CPS120 عبارة عن مستشعر ضغط مطلق سعوي عالي الجودة ومنخفض التكلفة مع إخراج معوض بالكامل. يستهلك طاقة أقل ويتألف من مستشعر ميكانيكي كهروميكانيكي صغير جدًا (MEMS) لقياس الضغط. دلتا سيجما
Raspberry Pi - BH1715 مستشعر الضوء المحيط الرقمي Java تعليمي: 4 خطوات
Raspberry Pi - BH1715 Digital Ambient Light Sensor Java تعليمي: BH1715 هو مستشعر رقمي للضوء المحيط بواجهة ناقل I²C. يتم استخدام BH1715 بشكل شائع للحصول على بيانات الإضاءة المحيطة لضبط طاقة الإضاءة الخلفية لشاشات الكريستال السائل ولوحة المفاتيح للأجهزة المحمولة. يوفر هذا الجهاز دقة 16 بت وميزة