جدول المحتويات:
- الخطوة 1: اجمع الأجهزة التي تحتاجها
- الخطوة 2: قم بتثبيت Ubuntu على Joule والمكتبات الضرورية اللازمة لتشغيله
- الخطوة 3: دفق كاميرا RealSense
- الخطوة 4: إعداد Walabot
- الخطوة 5: إنشاء نقطة اتصال Wifi من Joule
- الخطوة 6: إنشاء Android كشاشة عرض
- الخطوة السابعة: اختبار كل شيء
- الخطوة الثامنة: تجربة سيارة حقيقية
- الخطوة 9: استخدمه في العالم
فيديو: الرؤية الخلفية للسيارة: 9 خطوات (مع صور)
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:41
لماذا نبني الرؤية الخلفية للمركبة؟
كان الاصطدام الاحتياطي مشكلة كبيرة ، أفاد المركز الأمريكي لمكافحة الأمراض أنه في الفترة من 2001-2003 ، تم علاج ما يقدر بـ 7 ، 475 طفلاً (2492 في السنة) دون سن 15 عامًا من حوادث السيارات الخلفية. حوالي 300 حالة وفاة في السنة نتيجة الاصطدامات الاحتياطية. بحلول عام 2018 ، ستتطلب جميع السيارات المباعة في الولايات المتحدة كاميرا احتياطية إلزامية.
كيف نحل المشكلة؟
لا تزال معظم السيارات في السوق اليوم لا تحتوي على كاميرا احتياطية ، والتي تشمل حوالي نصف السيارات التي يتم بيعها في الولايات المتحدة اليوم ، وأكثر من نصف السيارات في جميع أنحاء العالم. يمكننا حل هذه المشكلة عن طريق تثبيت كاميرا على ظهر السيارة باستخدام مساحة لوحة الترخيص.
سيكون Walabot قادرًا على اكتشاف مسافة الهدف الأقرب إلى السيارة.
ستمنحنا كاميرا Intel RealSense R200 مزيدًا من التفاصيل حول ما نراه ، بما في ذلك حالة الإضاءة المنخفضة.
تعد مجموعة مطوري Intel Joule قوية بما يكفي لتشغيل كاميرات RealSense جنبًا إلى جنب مع Walabot. Raspberry Pi ليس قوياً بما يكفي لتشغيل كاميرا RealSense ثلاثية الأبعاد ، حيث يمكننا إضافة الكثير من الميزات في المستقبل التي يمكنها تحسين وظائف السيارة. يمكن استخدام نفس الإصدار مع Pi بكاميرا USB عادية ، لكنها لن تكون جيدة في الليل.
يتم استخدام هاتف / جهاز لوحي يعمل بنظام Android لعرض الكاميرا الاحتياطية ، وذلك لتقليل تكلفة الشاشة الإضافية. يمكن بناء إصدار iOS عند الطلب.
من خلال هذه المكونات ، سنكون قادرين على بناء رؤية خلفية تُظهر للمستخدم الجزء الخلفي من السيارة.
الخطوة 1: اجمع الأجهزة التي تحتاجها
- إنتل جول
- والابوت برو
- كاميرا Intel R200 RealSense
- هاتف / جهاز لوحي يعمل بنظام Android يعمل 5.0 أو أعلى
- محول السيارة لمخرج القابس ومحول التيار المتردد بجهد 12 فولت تيار مستمر (هذا للعرض التوضيحي لتشغيل Joule ، وسيحتوي إصدار الإنتاج على آلية طاقة مختلفة)
- موزع USB لتركيب الكاميرا و Walabot (USB3 للكاميرا و USB2 لـ Walabot)
- DC إلى AC Direct Plug-in Power Inverter
- طابعة ثلاثية الأبعاد عامة لطباعة إطار لوحة ترخيص مُصمم خصيصًا
الخطوة 2: قم بتثبيت Ubuntu على Joule والمكتبات الضرورية اللازمة لتشغيله
نظرًا لأننا قررنا اتباع مسار Linux ، فاتبع الدليل https://developer.ubuntu.com/core/get-started/intel-joule لتثبيت Ubuntu على Joule. يمنحنا Ubuntu مرونة كبيرة لتشغيل نظام تشغيل فعلي على شريحة قائمة على إنترنت الأشياء.
الخطوة 3: دفق كاميرا RealSense
نظرًا لأننا نستخدم هاتفًا / جهازًا لوحيًا يعمل بنظام Android لتوفير التكلفة على فاتورة المواد ، كما يمكن الوصول إليها بسهولة أكبر للمستخدمين ، فسنستخدم مكتبة الحركة لاستضافة الكاميرا على غرار الكاميرات الأمنية. بمجرد تثبيت Ubuntu وتوصيله بشبكة wifi ، يمكننا فتح الجهاز واستخدام الأمر التالي. نقوم أولاً بتوصيل الكاميرا بجول عبر منفذ USB3 ثم نقوم بالخطوات التالية.
أ. تثبيت الحركة على أوبونتو:
sudo apt-get updatesudo apt-get install motion
ب. نسخ ملفات التكوين:
mkdir.motion sudo cp /etc/motion/motion.conf ~ /.motion / motion.conf
ج. تكوين الملف ، لأولئك الذين هم على دراية بـ ubuntu يمكنهم تثبيت Sublime للقيام بتحرير نص أسهل ، وإلا يمكننا تحريره داخل سطر الأوامر.
sudo نانو ~ /.motion / motion.conf
د. بعد توصيل كاميرا R200 ، يمكننا تغيير الأسطر التالية أثناء الحركة
هذا لوضعه في وضع الخلفية:
# ابدأ في وضع الخفي (الخلفية) ثم قم بتشغيل البرنامج الخفي (الافتراضي: إيقاف التشغيل)
هذا لاستخدام عرض كاميرا RealSense Camera.
# جهاز الفيديو المراد استخدامه لالتقاط (افتراضي / dev / video0) # لـ FreeBSD الافتراضي هو / dev / bktr0 videodevice / dev / video2
من خلال تغيير العرض والارتفاع ، عملت 1280 × 720 بشكل رائع بالنسبة لي ، ولكن يمكنك التلاعب بالأبعاد لمعرفة ما يناسب احتياجاتك.
# عرض الصورة (بكسل). النطاق الصالح: يعتمد على الكاميرا ، الافتراضي: 352 عرض 1280 # ارتفاع الصورة (بكسل). النطاق الصالح: يعتمد على الكاميرا ، الافتراضي: 288 ارتفاع 720
لقد قمت بتعيين هذا على 30 ، كلما قمت بتعيين الرقم أعلى زادت قوة الحوسبة التي يتطلبها. يمكنك اللعب لمعرفة المعيار المرجعي لذلك ، لكن 30 عملت بشكل رائع بالنسبة لي.
# الحد الأقصى لعدد الإطارات التي سيتم التقاطها في الثانية. # النطاق الصالح: 2-100. الافتراضي: 100 (تقريبًا بلا حدود). فراميراتي 30
نظرًا لأننا نتدفق دائمًا إلى الخلف من السيارة ، يمكننا تعيين منفذ مخصص ، نستخدم 5001
################################################## ######### # Live Stream Server ###################################### ####################### # يستمع خادم mini-http إلى هذا المنفذ للطلبات (افتراضيًا: 0 = معطل) stream_port 5001 # جودة ملف jpeg (بالنسبة المئوية) للصور المنتجة (افتراضي: 50) stream_quality 50 # إخراج الإطارات بمعدل 1 إطارًا في الثانية عندما لا يتم الكشف عن أي حركة وزيادة إلى المعدل # المعطى بواسطة stream_maxrate عند اكتشاف الحركة (افتراضي: إيقاف) الافتراضي: 1) stream_maxrate 60 # تقييد اتصالات البث على المضيف المحلي فقط (افتراضي: تشغيل) stream_localhost off
يمكنك بعد ذلك تشغيل ifconfig ومعرفة عنوان IP وتشغيله في Terminal ، وسيكون المنفذ 5001.
حركة
إذا لم تكن هناك أخطاء ، فمن السهل التحقق من الكاميرا من جهاز الكمبيوتر الخاص بك باستخدام عنوان IP ، وإصلاح الأخطاء مثل مشاكل الإذن إن وجدت.
بمجرد تشغيل هذا ، يمكننا إضافة هذا إلى تطبيق بدء التشغيل في Ubuntu.
بدء الحركة للكاميرا
يتم إرفاق motion.conf في قسم التعليمات البرمجية ، يمكنك التحقق من المزيد من الإعدادات هناك.
الخطوة 4: إعداد Walabot
مع وجود الكاميرا في مكانها ، ما زلنا بحاجة إلى إعداد walabot ، ويمكن لهذا أن يكتشف المسافة بين السيارة والجسم الموجود خلفها ، مما يعطي رؤية واضحة لكيفية القيام بذلك.
أ ، قم بتنزيل ملف deb من
اتبع التعليمات من https://api.walabot.com/_install.html#_linuxInstall لتثبيت Walabot API بحيث يمكن استيرادها إلى مشاريع python.
يوجد خطأ في موقع الويب من حيث تثبيت Walabot API https://walabot.com/api/_pythonapi.html#_installingwalabotapi حيث تنص على
python -m pip "/usr/share/walabot/python/WalabotAPI-1.0.21.tar.gz"
التي ينبغي أن تكون
تثبيت python -m pip "/usr/share/walabot/python/WalabotAPI-1.0.21.tar.gz"
ب. قم بتوصيل Walabot Pro عبر USB 2 ، لم أستطع الحصول على عمل USB3 ولكن USB2 يعمل بشكل جيد عند الاتصال بنظام Linux. نظرًا لأن Joule لديها منفذ USB3 واحد فقط ، قم بتوصيل منفذ USB2 إضافي لاستيعاب Walabot Pro هنا
ج. اختبر مشروع Walabot مثل https://github.com/Walabot-Projects/Walabot-Senso… عن طريق تشغيل الأمر التالي في المجلد
بيثون SensorTargets.py
يجب أن يمنحك هذا اختبارًا جيدًا لمعرفة ما إذا كان Walabot يعمل بشكل صحيح ، وكذلك كيفية قياس المسافة على الأشياء التي تريدها. لم يكن مثال DistanceMeasure متسقًا جدًا في القياس ، ويبدو أن zPosCm دقيق للغاية ، لذلك قررت استخدام zPosCM للعرض التوضيحي.
د. ما زلنا بحاجة إلى تمرير البيانات إلى جهاز العرض ، نظرًا لأننا نقوم بتشغيل هذا على android لتقليل تكلفة المواد ، يمكننا استخدام المقابس. نستخدم الكود التالي لإعداد المقبس و udp في بيثون.
MYPORT = 5002 استيراد sys ، الوقت من استيراد مأخذ التوصيل * s = socket (AF_INET، SOCK_DGRAM) s.bind ((''، 0)) s.setsockopt (SOL_SOCKET، SO_REUSEADDR، 1) s.setsockopt (SOL_SOCKET، SO_BROADCAST، 1)
الأمر التالي سوف يبث البيانات عند التحديث
s.sendto (str (أهداف [0].zPosCm)، ('255.255.255.255'، MYPORT))
ه. عندما يتم ذلك ، يمكننا إعداده في تطبيق بدء التشغيل
F. يتم الآن إعداد Walabot ونقل البيانات عبر UDP ، ويمكن رؤية رمز Python الكامل في منطقة مرفق الكود. لقطة الشاشة أدناه هي النسخة المطبوعة لما يجب أن تبدو عليه في حالة عدم وجود منطقة. الكود مرفق في قسم الكود.
الخطوة 5: إنشاء نقطة اتصال Wifi من Joule
نقوم بإنشاء نقطة اتصال wifi خاصة بنا لجهاز android لنقل البيانات من خلالها. سيؤدي استخدام الأمر التالي عند البدء إلى إعداده تلقائيًا. يتم استخدام هذا في Ubuntu 16.04 أو ما بعده ، حيث يتم استخدام هذا. سنقوم تلقائيًا بتوصيل هذا عبر تطبيق Android في الخطوة التالية. استخدم هذا الأمر في تطبيقات بدء التشغيل.
جهاز nmcli واي فاي نقطة اتصال اسم السيارة-الرؤية الخلفية ssid-نطاق الرؤية الخلفية-bg كلمة المرور القيادة الآمنة
داخل ملف python الخاص بـ walabot ، سنقوم أيضًا بتحديثه حيث سنرسل رسالة udp إلى الأجهزة المتصلة عبر نقطة اتصال خاصة. هذا لضمان عدم فقدان أي حزمة.
out = os.popen ('ip neigh'). اقرأ (). splitlines () لـ i ، تعداد السطر (الخروج ، البدء = 1): ip = line.split ('') [0] s.sendto (str (الأهداف [0].zPosCm) ، (ip ، MYPORT))
الخطوة 6: إنشاء Android كشاشة عرض
تم تصميم تطبيق Android لعرض الجهاز ، ويرجع ذلك أساسًا إلى أنه يقلل من فاتورة المواد ، وإلا فقد تكون الشاشة المنفصلة باهظة الثمن ويصعب تثبيتها. بالنسبة لهذا المشروع ، يمكننا استخدام هاتف Android / الجهاز اللوحي.
يركز Android على 3 أجزاء قمنا بها سابقًا ،
- الاتصال بنقطة اتصال wifi التي تم إنشاؤها عبر جهاز إنترنت الأشياء (Intel Joule)
- دفق كاميرا RealSense عبر الحركة عبر wifi
- قياس المسافة من هدف Walabot من خلال udp
بعد إعداد كل شيء وتثبيت تطبيق Android (مفتوح المصدر هنا) ، ستتمكن من رؤية الكاميرا تعمل جنبًا إلى جنب مع walabot
الخطوة السابعة: اختبار كل شيء
الآن قمنا بتشغيل كل شيء ، يجب أن يكون لدينا إعداد أساسي لجميع المكونات المرفقة. عندما نبدأ لوحة Joule ، يجب أن يتم إعداد نقطة الاتصال تلقائيًا ، وسيبدأ تطبيق الحركة و walabot معها ، وعندما نقوم بتشغيل تطبيق Android الخاص بنا ، يجب أن نكون قادرين على البث من الكاميرا. هذا يعني أنه لم تعد هناك حاجة إلى لوحة المفاتيح / الماوس والشاشة حتى يعمل جهاز إنترنت الأشياء. إذا حدثت أي مشاكل في هذه اللحظة مثل عدم تثبيت المكتبات بشكل صحيح ، يجب علينا إصلاحها قبل المتابعة إلى الخطوة التالية.
تعد الطباعة ثلاثية الأبعاد للغلاف الذي يمكنه حمل الكاميرا أمرًا مهمًا للغاية.
في بناء الأجهزة ، يجب أن يكون لدينا غلاف مخصص مطبوع ثلاثي الأبعاد جاهز للكاميرا. نظرًا لأن هذا نموذج أولي ، فقد يصبح فضفاضًا بعض الشيء ، ولكن عندما نبني حامل لوحة ترخيص مخصصًا ، نتوقع أن تكون جميع المكونات داخل الحامل.
الخطوة الثامنة: تجربة سيارة حقيقية
الآن بعد أن جعلنا كل شيء يعمل ، سنتمكن من اختباره على سيارة حقيقية. نظرًا لأن هذا نموذج أولي يمكن أن تكون الأشياء خشنة بعض الشيء ، فإننا نستخدم شريط لاصق لبعض المكونات.
من أجل تشغيل Joule IoT Kit ، استخدمنا محول طاقة تيار مستمر إلى تيار متردد مباشر ، ثم ببساطة قمنا بتشغيل منفذ طاقة طويل إلى صندوق السيارة.
سيكون لدينا الجزء الأمامي والجزء الخلفي. هذا مجرد نموذج أولي الآن ، الإصدار التالي سيدمج الرقائق داخل حامل لوحة الترخيص.
وبالنسبة للجزء الأمامي ، يمكننا إما استخدام حامل هاتف أو مجرد شريط لاصق لجهاز Android اللوحي.
الخطوة 9: استخدمه في العالم
باستخدام هذه الأداة ، يمكننا نسخ السيارة احتياطيًا بأمان إلى السيارات الأخرى والقدرة على مراقبة المشاة. يمكنك مشاهدة الفيديو التوضيحي في البداية. هدف المشروع هو تشجيع ممارسات القيادة الأكثر أمانًا.
يمكنك التحقق من المشروع من
موصى به:
نموذج أولي لنظارات الرؤية الليلية لـ Airsoft / Paintball: 4 خطوات
نموذج أولي لنظارات الرؤية الليلية لـ Airsoft / Paintball: ملاحظة قصيرة حول الرؤية الليلية تعمل نظارات الرؤية الليلية الحقيقية (الجيل 1 والجيل 2 والجيل 3) عادةً عن طريق تضخيم الضوء المحيط ، ومع ذلك ، فإن نظارات الرؤية الليلية التي سنبنيها هنا تعمل بمبدأ مختلف. سنستخدم كاميرا Pi NoIR التي
اردوينو بلوتوث للسيارة 4 × 4: 9 خطوات (مع صور)
Arduino Bluetooth Car Control 4 X 4: خطوات تطبيق المشروع: 1. تثبيت & ldquo ؛ Arduino Bluetooth Car Control & rdquo ؛ التطبيق من الرابط أدناه: https://play.google.com/store/apps/details؟id=com.mtm.car22&؛hl=tr2. تنزيل مخطط الاتصال وخطوات العزل و Arduino.ino
كاميرا الرؤية الخلفية لكرسي متحرك كهربائي: 10 خطوات (بالصور)
كاميرا الرؤية الخلفية لكرسي متحرك كهربائي: يستخدم أخي كرسي متحرك كهربائي Invacare TDX ، وهو سهل المناورة في جميع الاتجاهات ، ولكن بسبب الرؤية المحدودة للخلف ، يصعب القيادة للخلف في مساحات محدودة. الهدف من المشروع بناء كاميرا للرؤية الخلفية
كيفية استخدام Orange PI: قم بإعداده للاستخدام مع شاشة الرؤية الخلفية للسيارة ومحول HDMI إلى RCA: 15 خطوة
Orange PI HowTo: قم بإعداده للاستخدام مع شاشة الرؤية الخلفية للسيارة ومحول HDMI إلى RCA: FOREWORD. يبدو أن كل شخص يستخدم جهاز تلفزيون أو شاشة كبيرة أو أكبر مع لوحة برتقالية سخيفة. ويبدو أن هناك القليل من المبالغة عندما يكون مصممًا للأنظمة المدمجة. نحن هنا بحاجة إلى شيء صغير وشيء غير مكلف. مثل
الإضاءة الخلفية لشاشات الكريستال السائل DIY: 10 خطوات (مع صور)
الإضاءة الخلفية لشاشات الكريستال السائل DIY: تتيح لك هذه الطريقة البسيطة إنشاء إضاءة خلفية لشاشة LCD من أي لون وحجم لإضفاء مظهر جديد على جهاز قديم