نحن مع فريق (
يمكنك الانضمام إليه ) من الأشخاص ذوي التفكير المماثل من هبر نقوم بتطوير
روبوت لجمع كرات الجولف في مجال القيادة .

يتحدث فلاديمير
غونشاروف Shadow_ru عن جمع المتطلبات ، وصياغة المهام للعمل ، وتطوير بنية وإنشاء نموذج أولي لتشغيل البرامج.

بدأ المشروع بالنسبة لي ، مع مجموعة من المتطلبات والتعميم والتحليل اللاحق للمهام الفرعية. إن مهمة الروبوت للوهلة الأولى بسيطة ، لكن الأخطاء في مرحلة التخطيط تفسد نتيجة العمل بشكل كبير ولا تكون مرئية دائمًا على الفور ، لذا فإن تخطي هذه المرحلة هو الطريق إلى أي مكان.
يعمل تلخيص المتطلبات على تبسيط التواصل مع أعضاء الفريق الآخرين - يتم تطوير فهم مشترك للمشكلة ، وهو الوضع الذي لا يظهر فيه كل روبوت في رأسه. أيضًا ، عندما يدخل عضو جديد إلى الفريق ، يكفي قراءة مستند مماثل ، مما يقلل من وقت مرحلة الدخول.
هناك دائمًا توازن بين جمع المتطلبات والتعميمات - أريد أن أصف بمزيد من التفصيل ، ولكن إذا لم تكن محامًا معتادًا على العمل مع المئات من الفقرات ذات الصلة - فهذا لن يحل مشكلة الرؤية العامة. هناك بالطبع النهج الصحيح عندما يتم عمل عدة شرائح من المتطلبات لأعضاء الفريق المختلفين والعملاء والمقاولين الخارجيين. ولكن في الوقت الحالي ، من الواضح أن هذا غير ضروري ، لأنه سيؤدي كل تغيير في المتطلبات إلى استثمار كبير للوقت لتحديث مثل هذه الشرائح ، والذي لا يؤثر على إنتاجية بدء التشغيل بشكل جيد للغاية.
بالنسبة لي ، قررت التقسيم إلى متطلبات وظيفية وغير وظيفية ووضعها كلها في صفحة A4 واحدة. ظهرت النسخة الأولى على النحو التالي:
المرحلة 1. بيان المشكلة
التحدي: يلزم إجراء التفاف مستمر إلى أقصى حد لملعب غولف تدريبي في الظروف المناخية الصعبة لجمع الكرات.
المشكلة: مطلوب مركبة أرضية بدون طيار (
UGV ) لأداء مهام دورية لتجاوز المساحة المحددة بواسطة المحيط مع إحداثيات النقاط في ترميز WGS-84.
يجب أن تشمل المهمات العمليات التالية:- بداية طبيعية من وضع المنزل المعروف
- بداية الطوارئ من موضع غير معروف مقدمًا (البدء بعد تشغيل WD ، حماية الطاقة ، إلخ.)
- تجنب منطقة تغطي على الأقل 98٪ من المساحة لسباق واحد أو أكثر (البدء في تجاوز الحقل مرة أخرى بعد ملء القادوس بعد 15 دقيقة غير ضروري)
- عد إلى وضع المنزل لملء القادوس ، واستنزف البطارية ، وانهي الالتفاف
- تسابق على منصة الإطلاق لإعادة تعيين الكرات ، وشحن البطاريات
نسخة مبسطة من الخوارزمية
بالإضافة إلى ذلك ، يجب أن تستوفي UGV المتطلبات التالية:- لا تترك المحيط المحدد عند القيادة حول المحيط المحدد
- قد يكون موقع المنزل خارج المحيط المحدد.
- مراقبة استهلاك البطارية والتخطيط للعودة على أساس الطاقة المستهلكة. يتطلب تحريك القادوس المعبأ طاقة بطارية تفوق طاقة البطارية الفارغة.
- احتفظ بسجلات القياس عن بُعد بما في ذلك ، على سبيل المثال لا الحصر ، الإحداثيات على المستوى ، وقيم 6 محاور دوران ، ومستوى إشارة القياس عن بُعد وأجهزة الاستشعار الخارجية.
- أن يكون لديك ثلاثة أنظمة لتحديد المواقع - GPS للحصول على الإحداثيات الخشنة ، IMU للتحقق وتصحيح الإحداثيات على الطائرة ، بصري لتحديد المواقع بدقة بواسطة العلامات.
- لديك نظامين Watch Dog - البرامج والأجهزة. يتحقق البرنامج من الحالة
- امتلاك قناة اتصال طوارئ بعيدة المدى مزودة بمصدر طاقة منفصل ، يتم استخدامه عندما تتجاوز معلمات المهمة المعلمات المحددة (الإحداثيات ، الحوادث ، انقطاع التيار الكهربائي ، تعطل المعدات)
- القدرة على تغيير معلمات المهمة أثناء وجودك في المنزل
- الحصول على قناتين للاتصالات - القياس عن بعد منخفضة السرعة وعالية السرعة لنقل المعلومات السمعية والبصرية. يجب أن تكون السرعة العالية قادرة على التمكين / التعطيل بواسطة أمر القياس عن بُعد.

بناءً على هذه المتطلبات ، تم اختيار بنية الحل التالية:يشتمل هيكل المجمع الآلي على: مركز تحكم واحد (التحكم في المحطة الأرضية) - فيما يلي
GSC .
يسمح للمستخدم بالقيام بما يلي:- تعيين محيط
- خطط المهام على أساس الوقت من اليوم وحمل المحكمة
- تكون قادرًا على مراقبة روبوتات الجولف بقراءات منفصلة لمدة دقيقة واحدة على الأقل
- القدرة على إجهاض المهمة
يجب أن تخطط برامج GSC لأفعال روبوتات الجولف ، في حين أن الروبوتات نفسها يجب أن تكون بسيطة للغاية. الحل ليس مرنًا جدًا ، بالطبع ، لكن الحلول المتسقة ذاتيًا والشبكات الشبكية ليست شيئًا يمكن حله في وقت قصير ، وحتى رخيص. بالإضافة إلى ذلك - هذا نهج نموذجي ، وبالتالي مشاكل معروفة. واحد أو أكثر من روبوتات الجولف (Golf rover) - يشار
إليها فيما بعد
باسم GR .
ينفذ الإجراءات النموذجية التالية:- تحصل على مهمة عندما تكون على بعد 10 أمتار من محطة أرضية
- ينجز مهمة
- في حالة مهمة نموذجية ، تقارير على قناة للقياس عن بعد بتردد لا يقل عن مرة واحدة في الدقيقة
- يعود إلى المحطة الأرضية
- في انتظار مهمة جديدة
- يجب مقاطعة كل مهمة من الأحداث التالية:
- ملء الكرة هوبر
- حادث التغذية
- استحالة الحركة (انقلاب ، عقبة مفاجئة)
- إعادة تشغيل الطوارئ
- انقطاع المهمة اليدوي
- يجب أن يتم إرسال كل انقطاع للمهمة عبر القياس عن بعد التقليدي وقناة النسخ الاحتياطي
- بعد الانقطاع - تعود GR إلى المحطة الأرضية ، إذا سمحت حالتها
لأن يمكن أن تكون هناك محطة أرضية واحدة ، ولكن هناك العديد من الموارد الوراثية - ملء القادوس هو حالة طارئة. هذا يحل مشكلتين في وقت واحد - يعرف GSC بدرجة عالية من اليقين أن الروبوت ذهب إلى المحطة وكثيرا ما اختبر قناة النسخ الاحتياطي. من المفترض أيضًا أن يتم ملء الكرات أثناء المهمة ، وإذا لم يكن الأمر كذلك ، فقد ارتكبت GSC في مكان ما خطأ في التخطيط ويجب إصلاح ذلك. بديهيًا ، أريد إطلاق الروبوت في حقل نظيف ، وعندما يجمع الكرات ، سيعود. ولكن هنا يأتي دور الاقتصاد ، إذا شارك شخص أو شخصين ، فمن الأفضل أن يقف الروبوت في المحطة ، ويبدأ في التحرك عندما تكون الكرات قد تراكمت بالفعل. استهلاك أقل للطاقة والموارد.
محطة أرضية واحدة أو أكثر (محطة أرضية) - فيما يلي GS.- جارٍ الشحن
- قادوس الكرة
- التواصل مع GR
مخطط المجمع بأكمله مثل هذا:المرحلة الثانية هي تقييم المخاطر والمشكلات المحتملة لهذا المجمع بأكمله
من أجل الخير ، تحتاج إلى تقديم جدول للمخاطر وتقييماتها ، لكنني أخشى أن تتسبب ثلاث أوراق A4 في التثاؤب فقط. سأعطي فقط ضغط مثير للاهتمام:
تتمثل المشكلة الرئيسية لجميع مركبات الزحف المستقلة في مهمة الحصول على موقعها الدقيق. علاوة على ذلك ، يجب أن يكون الموقف دقيقًا حقًا - ويفضل أن يكون ذلك في غضون 10-15 سم. وبالتحديد لأنه لا يمكن حل هذه المشكلة حقًا على منصة متنقلة صغيرة ، لا توجد طائرات زراعية / نقل / عسكرية بدون طيار رخيصة وضخمة.
على الرغم من أنه يبدو أن هناك حلولًا للطائرات بدون طيار ، أعد استخدام كل شيء على الأرض. لكن هذا في الهواء 10-15 مترًا إلى اليسار أو اليمين عند الانعطاف على شكل حرف U لا يحل أي شيء تقريبًا ، ولكن على الأرض سيؤدي إلى حوادث وكوارث. بالإضافة إلى ذلك ، لا تغير الأحجار مكانها في الهواء ، والحيوانات لا تعبر الطريق. الطيور ، نعم ، ولكن هناك مساحة أكبر في الهواء.
يتم تنفيذ تحديد المواقع بواسطة وحدة GPS / GLONASS ، مما يؤدي على الفور إلى نتيجتين: دقة تحديد المواقع ليست كبيرة جدًا وسرعة الحصول على الإحداثيات. إحداثيات وحدة uBlox M8N للاختبارات الثابتة: 2-3 أمتار في ظروف استقبال جيدة ، 7-10 في الظروف الجوية السيئة والرؤية. بشكل عام ، فإن مثل هذه الأخطاء لمهمة جمع الكرات جيدة حتى - ستجلب المركبة المتجولة للعديد من المهام الكرات أكثر من القيادة على القضبان. ومع ذلك ، في هذه الحالة اتضح أنه من المستحيل إجراؤها بالقرب من العقبات مثل الجدران أو الأحجار الكبيرة وفي هذه المناطق ستتراكم الكرات. تم تحليل أنظمة الملاحة الضوئية والموجات فوق الصوتية ، ولكن اتضح أن هناك حاجة إلى عدد كبير من المنارات / الكاميرات مع الهندسة الميدانية المعقدة ، وكانت هناك مشاكل في مناطق الرؤية (المجال ليس دائمًا مسطحًا مثل الأرضية في حظيرة الطائرات) واستقرار هذه الأنظمة في الظروف الجوية الصعبة ( المطر والضباب). حتى الآن ، نظام تحديد المواقع لدينا هو كل شيء ، ولكن مع التحفظات. علاوة على ذلك ، يمكنك زيادة دقة GPS إلى حد ما بسعر رخيص - RTK ، لكنه لن يحل مشكلة الجدار.
أصبح من الواضح أن النهج المختار ، عندما يزحف المسبار على طول نقاط محملة بدقة تتراوح من 5 إلى 10 أمتار يسارًا ، يتطلب التحقق. التسلق إلى قطار يسمى SLAM مع أرجل لمهمة بسيطة يبدو غير ضروري. إذا كان الدخول إلى المحطة من خلال كائنات مشرقة ضوئيًا (Aruco Code) واضحًا ، ومقدار ما يتطلبه من موارد أيضًا ، فإن حل مشكلة تصنيف جميع الكائنات المحتملة في الميدان أو العثور على الحدود مهمة مختلفة تمامًا.
حان الوقت للمرحلة 3 - إثبات المفهوم
من الضروري عمل نموذج للنظام واختباره في الميدان وتقييم قابليته للتطبيق. وفقًا للمتطلبات المتقدمة ، أصبحت الأمور أكثر متعة:
تم اختيار
Ardurover بصفته متجولًا للبرامج - وهو برنامج يتطور بنشاط يبدأ كبرنامج ثابت لكوادكوبتر على Arduino. ومع ذلك ، حتى الآن ، تدعم لوحات Linux مع نواة RTL ، وهي مفتوحة للتحسينات. في المستقبل ، كان عليّ أن أنهيها ، بالمناسبة ، ولكن لتسريع العمل بدلاً من ذلك إذا لزم الأمر.
تم اختيار
BeagleBone Blue كدماغ للمركبة - وهو نظام متكامل للغاية للروبوتات.
السمة المميزة هي استخدام رقائق TI Sitara / Octavo ، مقارنة بنفس Raspberry هناك وحدة Realtime Programmable - PRU. هذان عبارة عن نواتين منفصلتين بسرعة 200 ميجاهرتز يمكنها التحكم في المكواة في الوقت الفعلي دون تشتيت النواة الرئيسية بالمقاطعات والخيوط وغيرها من السحر التقني.
بالإضافة إلى ذلك ، تحتوي المنصة على الفور على WiFi ، و Bluetooth ، وموصل ملحوم لكابل موازنة ، وجهاز تحكم لشحن بطاريات Li-Po ، وموصلات USB لتوصيل القياس عن بُعد وجهاز كمبيوتر ، وموصلات لمحركات ، ومثبتات طاقة من 5 و 3.3 فولت ، يتم إنهاء ADC على الفور بقناة واحدة لكل بطارية ، UART متعددة. بشكل عام ، خذ وصنع الروبوت.
وصل Ardurover إلى هناك ليس بدون مشاكل - استخدام PRU من البرنامج في الوقت الحالي ممكن فقط مع نواة 4.4 LTS. في نواة أحدث ، تؤدي برمجة وحدات PRUs من برنامج المستخدم إلى خطأ SIGBUS ، بعد التحدث مع مطوري فرع ardublue طلبت محول JTAG ، سأرى ما هو السبب. هذا المركب لا يتعارض مع الحياة على الإطلاق ، لكني أريد فهمًا واضحًا لما هي المشكلة.
يتيح لك البرنامج تنفيذ جميع المتطلبات تقريبًا ، باستثناء تحديد الموقع عند الوصول إلى القاعدة ، وهنا أستخدم كاميرا JeVois-A33. لن يرسل إشارة إنذار بشأن الأحداث ، ولكن هذه مهمة لوحدة منفصلة مع مصدر طاقة منفصل ، كما قد لا تنجو وحدة الطاقة من انقطاع التيار الكهربائي أو الانقلاب الجيد.
يبقى شراء جهاز استقبال GPS وجهاز إرسال لاسلكي عن بعد ومستشعر مسافة بالموجات فوق الصوتية وتوصيل كاميرا رؤية الجهاز. بعد اللحام ، وربط الموصلات وتشغيل الاختبار ، اتضح مثل هذا:
كمركز تحكم ،
يتم استخدام مخطط المهمة .
البرنامج غير قابل للجدال ، واجهة ويب لائقة بدلاً من سكين سويسري مع أزرار 100500+ لمحبي المروحيات ، ولكن لأغراض التصحيح فهي أكثر من مناسبة. للتواصل مع المسبار ، يتم
استخدام بروتوكول
MAVLINK من المحولات والبرامج التطبيقية لـ Java / JS ، وقد تمت كتابة الكثير. بالطبع ، أود الحصول على حزم أصغر في البروتوكول ، والحفاظ على مرجع معلمة قياسي ، لكن ذلك سيكون جيدًا جدًا.
كقاعدة للمركبة ، تم استخدام آلة نموذجية بمقياس 1/18 مع جهاز استقبال منفصل وجهاز تحكم في المحرك.
تم طرد جهاز الاستقبال ، وتم توصيل موصلات أجهزة التحكم والمحرك مباشرة بـ BeagleBone Blue ، تمامًا مثل البطارية.
من الشيء المضحك - تذكرت أنه عندما كنت طفلاً لم أتمكن من اللحام على الإطلاق ، لم يتم تعليق القصدير طوال الوقت في مواقع اللحام ، وأخذت حديد اللحام ليس بدون خوف داخلي. ومع ذلك ، بمجرد أن سقطت السكين والأسلاك وحديد اللحام في يدي ، قمت بخياطة اللدغة جيدًا ، وقطع العزل دون لمس النواة الداخلية ، ولفت يدي أطراف الكابل ، وأشرعتهم وأغلقت الاتصال. ثم تذكرت أنني بدأت العمل كمطور مدمج ، وبضعة أشهر اتصلت بمكواة لحام. في رأيي مثال جميل على القول "لن تشرب تجربة".
في الوقت الحالي ، يبدو الحامل كما يلي:كما ترون - وحدة تحكم بدون سكن ومثبتات. لسوء الحظ ، طلبت أن يتم طباعة pseudohermobox باستخدام النايلون على طابعة SLS 3D ، ولم يتمكنوا بعد من القيام بذلك. لإخراج المتجول في حقل نقي بدون بدن - يمكن لمثل هذا الفايكنج المشي لمدة نصف ساعة في الهواء النقي. ثم سينتهي التآكل الكهروكيميائي ، أو بعد انفجار الانقلاب ، سيتم انبعاثه بالكامل. لذلك نحن في انتظار السكن وأختام الضغط والمثبتات وفقًا لجميع قواعد الصدمة وتخميد الاهتزاز.
فيديو كشف Aruco Code Roverونتيجة لذلك ، قضيت اختبار pokatushki في المنزل على التحكم اليدوي. اتضح أن القاعدة لم يتم اختيارها بشكل صحيح تمامًا - فهي تتسارع بسرعة كبيرة ، وكان علي أن أتعلم برمجة وحدة تحكم المحرك الصينية. يتم تشغيل الترس الثاني - العكسي على هذه المعجزة في الفكر الصيني بواسطة إشارتين "رجوعتين" - الأولى تدور عند الكبح ، والثانية تتحول بالفعل إلى الخلف. ويمكن تجاهلها إذا كانت الإشارة سريعة جدًا - فهي توفر موارد التروس والمحرك. اضطررت لإنهاء ardurover ، المعارف التقليدية. لم تؤخذ مثل هذه الحيل بعين الاعتبار في ذلك.
الإجراءات التالية - استرجاع المسار 5-7 مرات ، وإزالة سجلات القياس عن بعد ومسارات GPS للطرق. لقد وجدت ملعبًا لكرة القدم مع ملعب ساخن ، لذلك إذا كان الثلج يتساقط ، فلا بأس. من الواضح أن روفر لن تقوم بحفر تزلج على الجليد ، وإلا فإن فاينا رانيفسكايا كانت ستضيف لعبة غولف على طول التلال الثلجية إلى قائمة الانحرافات إلى جانب الهوكي الميداني والباليه الجليدي. ليس أرخص وسائل الترفيه بالطبع ، ولكن في أي مكان آخر في روسيا ، وفي نوفمبر يمكنك أن تجد العشب الأخضر. بدأ العمل أيضًا على تنفيذ الهيكل المتتبع ، حيث تكون السرعات أقل بكثير (النموذج الحالي يتسارع إلى 20 كم / ساعة في 15 ثانية) وهناك انعطاف في مكانه ، بدلاً من المثلثات على الرقعة. على الأرجح ، في غضون أسبوعين ، سيتم تشغيل كلا الشاسيه في نفس الوقت ، لاختبار تشغيل كاشف العوائق وخوارزميات الالتفاف.
في النهاية ، أود أن أشير إلى أن التحقق من الحلول على النماذج كاملة الحجم سريع ورخيص للغاية. تم اكتشاف الكثير من المشاكل في وقت مبكر جدًا ، علاوة على ذلك ، هناك وقت لإجراء تغييرات على تصميم روبوت كبير بينما لا يزال في مرحلة التصميم أو النموذج الأولي. ثم سيكون أكثر تكلفة ، أطول ، وسيكسر شيء ما في ربط العقد. علاوة على ذلك ، في مثل هذه النماذج ، يتم تطوير جميع البرامج الضرورية للمهام والتحقق منها بسهولة. من الناحية المثالية ، كل ما تحتاجه للتبديل إلى طراز آخر هو استبدال بروتوكول وحدة تحكم المحرك بآخر جديد. حسنًا ، من الممكن تغيير النموذج الديناميكي.
بالإضافة إلى ذلك ، فإن استخدام الحلول المتخصصة والمثبتة يوفر إلى حد كبير الوقت والطاقة. إن اختراع لوحة الدوائر عالية الكثافة الخاصة بك ، وبروتوكول الاتصال الخاص بك ، والبرمجيات الأرضية ، وبرامج التجوال ، وتصحيح خوارزميات تجنب العوائق والتواصل مع وحدات تحكم المحرك الصينية أمر مثير للغاية بالتأكيد ، ولكن في هذه الحالة يمكنك إضافة نصف عام على الفور إلى مسار طويل وعرة. مرت بالفعل من قبل شخص ما.
احتاج مساعدتك:
- إذا كنت على استعداد للعمل على إصدار ROS.
- يتطلب إعداد لوحة اتصال الوحدة لإصدار التوت بي والبرتقالي
- المساعدة في اختبار مدى القيادة ، خاصة إذا كنت تعيش في بلد تلعب فيه الجولف بنشاط ؛
- القضايا القانونية ، تصدير الروبوت من البلد ، قانون البراءات ، متطلبات التصميم التشريعي ؛
- بحاجة الى مساعدة في تغليف بدء التشغيل ، والبحث عن الاستثمار. نحن نطور بشكل جيد وبدون استثمار ، لدينا خطة عمل ، يتم تشكيل فريق. بدلاً من أموال المستثمرين ، نحتاج إلى المزيد من الخبرة والكفاءة في تطوير مشروع ناجح تجاريًا.
الوضع الحالي للمشروع
نحن نستعد النسخة الثانية من الجسم. في غضون أسبوع ، ستكون القضية جاهزة عن طريق التشكيل الفراغي ، حول هذا سنكتب مشاركة منفصلة.

يتكون الجزء السفلي من الجسم عن طريق طحن مادة مركبة.

تم تصميم الجسم والميكانيكا بواسطة
NikitaKhvoryk . لقد كنا ننتظر لفترة طويلة
لدفع وحدات الاتصال لإصدارات التوت بي والبرتقالي بي من
n12eq3 . نسخة مع Ardupilot فلاديمير جونشاروف
Shadow_ruنشكر
Process0169 و
Trif و
tersuren و
vasimv و
vovaekb90 و Vyacheslav
Soldatov و Levon Zakaryan و Sergey Pomazkin و Vladi Kuban و Karen Musaelyan و Alexey Platonov على المساعدة والمشورة المقدمة. إذا كنت تريد المساعدة - يرجى الكتابة لي في LAN أو
VK ،
FB .
الخطط:
لدينا اتفاقيات أولية بشأن وضع روبوت للاختبار في نوادي الجولف في روسيا وألمانيا وأمريكا اللاتينية ونيوزيلندا. في المستقبل القريب ، سننهي الخوارزميات والتصميم ، ونجري اختبارات في موسكو ونجري تحسينات. قم بإنشاء 5 روبوتات ووضعها مجانًا في نوادي الجولف للاختبارات المطولة للموسم الجديد.

شكرا لقراءتك واسألنا وانتقدنا تماما.