StereoPi - قطعة الأجهزة الخاصة بنا لدراسة رؤية الكمبيوتر والطائرات بدون طيار والروبوتات

مرحبا بالجميع!

أود اليوم أن أخبركم عن قطعة الأجهزة الجديدة التي تستند إلى وحدة Raspberry Pi Compute Module المصممة لدراسة رؤية الكمبيوتر وتثبيتها على الروبوتات والطائرات بدون طيار. في الواقع ، هذه كاميرا ستريو "ذكية" - تدعم العمل مع كاميرتين في نفس الوقت ، ولديها توت حقيقي مثل "القلب" ، والأهم من ذلك أنها تعمل مع إصدار الأسهم من Raspbian.
إليك ما يبدو عليه الحل المجمع ، مع تركيب كاميرتين ووحدة Pi Compute.

الصورة

يعمل الجهاز مع إصدار الأسهم من Raspbian. ما عليك سوى نسخ ملف dtblob.bin من أجل تمكين دعم الكاميرا المزدوجة.

هذا يعني أنه يمكنك استخدام raspivid و raspistill والمرافق الأخرى للعمل مع الصور ومقاطع الفيديو.

كمرجع ، ظهر دعم وضع الاستريو في Raspbian بالفعل في عام 2014 ، بالتزامن مع إصدار الإصدار الأول من Raspberry Pi Compute. يمكنك مشاهدة تاريخ تطوير دعم الاستريو في منتدى Raspberry.

قبل وصف التفاصيل الفنية ، دعني أريك بعض الأمثلة الواقعية لكيفية عمل الجهاز.

1. التقاط الصورة


الكود:

raspistill -3d sbs -w 1280 -h 480 -o 1.jpg 

وتحصل على ما يلي:

الصورة

يمكنك تنزيل الصورة الملتقطة الأصلية هنا .

2. التقاط الفيديو


الكود:

 raspivid -3d sbs -w 1280 -h 480 -o 1.h264 

وتحصل على ما يلي:

الصورة

يمكنك تنزيل ملف الفيديو الأصلي (المحول إلى mp4) من هذا الرابط .

3. استخدام Python و OpenCV لإنشاء خريطة عمق


الصورة

في هذه الحالة ، استخدمت رمزًا معدلاً قليلاً من مشروع 3Dberry سابقًا ( https://github.com/realizator/3dberry-turorial ).

للحصول على هذه الصور ومقاطع الفيديو ، استخدمنا هذا الزوج من الكاميرات:

الصورة

للتثبيت على الطائرات بدون طيار ، غالبًا ما نستخدم زاوية واسعة (160 درجة) ، وهي:

الصورة

الآن أكثر قليلاً عن قطعة الحديد نفسها




التفاصيل الفنية


المنظر الأمامي:

الصورة

منظر علوي:

الصورة

الميزات الرئيسية:
الأبعاد: ٩٠ × ٤٠ ملم
الكاميرات: عدد 2 كابل CSI 15 ممر
GPIO: 40 Classic Raspberry PI GPIO
USB: 2 x USB من النوع A ، 1 USB على دبابيس
إيثرنت: RJ45
الذاكرة: Micro SD (لـ CM3 Lite) ، للباقي NAND (فلاش)
الشاشة: مخرج HDMI
امدادات الطاقة: 5V DC
التوت المدعوم: Raspberry Pi Compute Module 3، Raspberry Pi CM 3 Lite، Raspberry Pi CM 1
أنواع الكاميرات المدعومة: كاميرا Raspberry Pi OV5647 وكاميرا Raspberry Pi Sony IMX 219 و HDMI In (وضع واحد)
لبرامج NAND الثابتة: موصل MicroUSB
مفتاح الطاقة: نعم ، نعم ، هذا كل شيء. لا مزيد من مقابس المكونات الإضافية MicroUSB لإعادة تشغيل الطاقة!

القليل من التاريخ


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

الصورة

بحلول ذلك الوقت ، لم يكن هناك سوى الإصدار الأول من وحدة Compute في السوق ، على متنه والذي كان معالجًا قديمًا من التوت الأول. لقد قامت قطعة الحديد بعمل رائع في التقاط وضغط وتدفق الفيديو ، ولكن في النهاية واجهنا المعالج. على سبيل المثال ، لم يكن بالفعل كافياً لتيار h264 إلى إصدار تجريبي ودفق RTMP إلى خادم في نفس الوقت. وبالنسبة لمنشئي الروبوتات ، كانت الرغبة الرئيسية هي بناء خريطة فضائية باستخدام خريطة عمق و SLAM - هنا كان المعالج غير موجود تمامًا.

الصورة

هنا لديك إصدار Compute Module 3 ، فقد "قفزوا" على الفور من الإصدار الأول إلى الثالث ، ووضع المعالج من Raspberry الثالث. الآن قوتها كانت كافية بالفعل لحساب شيء ما على الطاير.

ومع ذلك ، اتضح أن الأجيال تبدو متوافقة ، ولكن يبدو أنها غير متوافقة للغاية. حقيقة أن الوحدة النمطية 3 كانت أوسع مليمترًا لم تزعجنا. لكن المتطلبات الغذائية تغيرت بشكل خطير.

بالإضافة إلى ذلك ، قمنا بالفعل بتجميع التعليقات على نتائج العمل مع الإصدار الأول ، وقررنا إصدار إصدار جديد ، أجرينا فيه جميع التغييرات المتراكمة.

ما هو ثابت في الجيل الثاني


تمت إضافة دعم لوحدة الحساب 3

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

نشر وحدة "رقائق من المجلس"

في الإصدار الأول ، تم خلط نوع موصل SoDIMM على اللوحة ، ونتيجة لذلك ، نهضت وحدة الكمبيوتر مع الرقائق "إلى الأم". في وحدة الحاسب 1 ، لم يسبب هذا مشاكل - كانت النسبة المئوية للاحترار قليلاً ، وكان لديها ما يكفي من عنق الزجاجة بين الألواح للتبريد العادي. في حالة ثالثة ، لم تكن مثل هذه الخدعة تدور ، لذا قمنا "بلف" الموصل ، مما أدى إلى إعادة توصيل اللوحة بالكامل من الصفر.

دعم microSD الأصلي

تحتوي وحدة الكمبيوتر الأولى بشكل افتراضي على فلاش مدمج على متنها ولا يمكنها العمل مع مايكرو. حاولنا إضافة MicroSD هناك كمحرك ثان ، لكننا واجهنا مشكلة كبيرة لدعمها. أظهر التواصل مع عمال kernel في منتدى التوت أن المشكلة ليست سهلة (عند التحميل ، اختارت الوحدة عشوائيًا NAND أو MicroSD للتمهيد). ونتيجة لذلك ، في المراجعة الحالية ، قمنا بعمل الأسلاك كما في لوحة مرجع التوت. إذا كان Compute Module Lite - بدون NAND المدمج - فإننا نعمل مع microsd كما هو الحال في التوت العادي. إذا لم يكن الإصدار Lite أو الوحدة الأولى ، فلن يتوفر microsd.

قم بتحريك موصلات الكاميرا للأعلى وتباعدها 65 مم

في الإصدار الأول ، تم توجيه الموصلات على طول مستوى اللوحة. تافه ، ولكن بعد العديد من التركيبات في القضية ، أصبحت العديد من المشاكل واضحة.

  • تبرز حلقة من الكاميرا خارج الموصلات ، ويُنصح بعدم الانحناء (خاصة الجزء المقوى باللون الأزرق). استهلك هذا بغباء مساحة غير ضرورية في القضية ومنع التثبيت.
  • كانت الموصلات قريبة جدًا - وقد منع هذا العمل باستخدام الكابلات.
  • عادةً ما تقف الكاميرات الموجودة في العلبة على قاعدة استريو 65 مم ، وكانت الكابلات الموجودة على اللوحة قريبة. اتضح أن كل حلقة يجب أن تكون منحنية بشكل غير طبيعي - فواصل ، دموع ، تخرج من الموصلات.

إزالة الرقاقة و 16 PWM إضافية

بعد تحليل العديد من المشاريع الحديثة ، أدركنا أن هذه الميزة غير ذات صلة. في معظم الأحيان ، برامج Raspberries PWM كافية.

إضافة مفتاح الطاقة

أولئك الذين عملوا قليلاً على الأقل مع التوت يفهمون ما يدور حوله :-)

تمت إضافة USB ثالث على المسامير الموجودة على الجانب

في مشاريع التوت الخاصة بنا ، نحتاج في الغالب إلى أجهزة USB dongles على متن الطائرة. إذا كانت عالقة في الموصلات على اللوحة ، فلدينا وحدة تلتصق بالخارج. تؤدي محاولة استخدام كبل تمديد USB إلى تفاقم المشكلة. كان هناك خيار واحد فقط - لحام الأسلاك لتوت العليق. تسمح لنا المسامير الجانبية التي أضفناها بعمل سلك تمديد بسيط ووضع دونجل USB (عادة WiFi أو 4G) مباشرة على طول اللوحة ، وهذا الاقتصاد بالكامل يناسب تمامًا في حالة مدمجة.

هذه قصة أردت أن أخبرك بها اليوم. شكرا لكم على اهتمامكم وأنا على استعداد للإجابة على الأسئلة.

Source: https://habr.com/ru/post/ar415587/


All Articles