جدول المحتويات:
فيديو: CircuitPython و TinyLiDAR: مثال بسيط: 3 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:40
إن MicroElectronicDesign tinyLiDAR عبارة عن وحدة قياس زمن الرحلة (ToF) تعتمد على ST VL53L0X مع اتصال ناقل i2c. ترتبط لوحات Adafruit ميكروكنترولر بسهولة بهذا المستشعر حيث يمكنها التحدث ببروتوكول i2c على دبابيس البيانات الخاصة بها.
تتمتع سلسلة M0 / M4 بميزة على اللوحات الأخرى لأنها تدعم مجموعة فرعية من Python مما يجعل البرمجة في متناول جمهور أوسع من C على Arduino. هذا مثال بسيط باستخدام CircuitPython على لوحة Gemma M0 لقراءة قيم المسافة من tinyLiDAR والإشارة إلى المسافة عن طريق تغيير سطوع RGB LED الموجود على اللوحة. يجب أن تكون اللوحة هي الإصدار M0 لدعم Python.
ملاحظة: تقوم Adafruit أيضًا بعمل العديد من لوحات استشعار المسافة بما في ذلك واحدة تعتمد على VL53L0X.
الخطوة 1: كود CircuitPython
- قم بتنزيل lib / adafruit_dotstar.mpy و lib / adafruit_bus_device / i2c_device.mpy إذا لم يكن لديك بالفعل. هذه جزء من حزمة المكتبة الاختيارية ، راجع القسم الأول من CircuitPython I2C للحصول على ملاحظات حول كيفية تثبيتها. يجب أن تدخل هذه الملفات في الدلائل lib و lib / adafruit_bus_device على Gemma M0.
- قم بتنزيل gemma-m0-tinylidar-simple.py ، وأعد تسميته إلى main.py وانسخه إلى الدليل الجذر لـ Gemma M0.
يكتب البرنامج الإخراج إلى وحدة التحكم التسلسلية بالإضافة إلى تغيير سطوع Gemma MO RGB LED بما يتناسب مع مسافة القراءة. يتناوب مؤشر Gemma M0 بين التشغيل والإيقاف للقراءة ، لذا سيومض عند 5 هرتز تقريبًا والسلوك الافتراضي للوحة tinyLiDAR هو وميض مؤشرها الأزرق لكل أمر عند 10 هرتز.
يتم تشغيل الحافلة بسرعة 100 كيلو هرتز والتي تعمل بشكل جيد في هذه الحالة. مثل أي ناقل ، سرعة الاتصال محدودة بخصائص خط (خطوط) النقل ، لذا يجب الانتباه إلى الطول والسعة وعوامل أخرى.
الخطوة 2: توصيل TinyLiDAR بجيما M0
تُظهر الصورة إعدادًا مؤقتًا فعالًا ولكنه غير أنيق لتوصيل tinyLiDAR بلوحة Gemma M0. يتم استخدام الموصل العالمي "Grove" 4pin الخاص بـ tinyLiDAR عبر كابل تحويل Seeed Grove ورأس احتياطي ومقاطع تمساح للاتصال بـ Gemma M0. تزيل بعض الفواصل بين المسامير الموجودة في الرأس خطر حدوث قصور غير مقصود. الوصلات هي:
- أسود: gnd to gnd
- الأحمر: + V إلى 3Vo
- أبيض: SDA إلى D0 (بيانات)
- الأصفر: SCL إلى D2 (ساعة)
تحتوي لوحات Adafruit على بعض المسامير التي تدعم بروتوكول i2c بكفاءة في الأجهزة. في حالة Gemma M0 ، يجب استخدام هذه ، D0 للبيانات و D2 للساعة.
يتطلب ناقل i2c وجود مقاومة سحب على خطوط البيانات والساعة. في هذه الحالة ، يوفر tinyLiDAR بعض المقاومات الموجودة على اللوحة 4.7K. إذا تمت إزالتها من الدائرة عن طريق قطع الخطوط ، فيجب إضافة مكافئات إلى الدائرة.
الخطوة 3: إخراج المسلسل
يقوم البرنامج بكتابة الإخراج إلى وحدة التحكم التسلسلية التي توضح المسافة المقاسة ، وإليك مثال على لقطة شاشة لمحطة تُظهر كائنًا يتحرك بعيدًا عن المستشعر.
موصى به:
(مثال) رادار اردوينو لاكتشاف العدو: 3 خطوات
(مثال) رادار Arduino Enemy-Detecting Radar: في هذا المشروع ، سأوضح لك كيفية صنع رادار للكشف عن العدو لصد قاعدة منزلك. العملية بسيطة للغاية ، ما عليك سوى اتباع خطوتي ولن يسرق جارك ثمارك مرة أخرى بمجرد تثبيت هذا الجهاز! أصل هذا المشروع
مثال على برمجة MTP Arduino: 5 خطوات
مثال على برمجة MTP Arduino: في هذا Instructable ، نعرض كيفية استخدام رسم برمجة SLG46824 / 6 Arduino لبرمجة جهاز Dialog SLG46824 / 6 GreenPAK ™ قابل للبرمجة متعدد الأوقات (MTP). معظم أجهزة GreenPAK قابلة للبرمجة لمرة واحدة (OTP) ، مما يعني أنه بمجرد عدم استخدام V
مثال حديث وجديد وأسهل للخزانة مع لوحة مفاتيح Arduino Matrix Keypad 4x4: 3 خطوات
مثال حديث وجديد وأسهل للخزانة مع Arduino Matrix Keypad 4x4: مثال آخر على استخدام مصفوفة لوحة مفاتيح LCD 4x4 مع دائرة I2C
مخترع التطبيق 2 - نصائح أمامية نظيفة (+4 مثال): 6 خطوات
APP INVENTOR 2 - Clean Front Tips (+4 مثال): سنرى كيف يمكننا جعل تطبيقك على AI2 يبدو جماليًا :) لا يوجد كود هذه المرة ، فقط نصائح لتطبيق سلس مثل المثال الرابع في الأعلى
IoT Guru Cloud - مثال على مخطط بسيط: 4 خطوات
IoT Guru Cloud - مثال على الرسم البياني البسيط: توفر IoT Guru Cloud مجموعة من خدمات الواجهة الخلفية من خلال REST API ويمكنك دمج استدعاءات REST هذه في صفحة الويب الخاصة بك بسهولة. باستخدام Highcharts ، يمكنك عرض مخططات القياس الخاصة بك ببساطة من خلال مكالمة AJAX