مشروع RENAS من المحاكاة إلى الواقع الحقيقي: قصة نجاح في بناء منصة تحكم طيران موحدة للدرونات تجمع بين العالم الرقمي والتطبيق العملي؟!

1
as

تصميم وتطوير:
د. الفاتح جمعه حمدي جبارة

يشهد قطاع الطائرات بدون طيار تطوراً متسارعاً في مجالات التحكم الذاتي والملاحة الدقيقة وأنظمة الاستشعار الذكية. إلا أن إحدى أكبر العقبات التي تواجه المطورين والباحثين تتمثل في الفجوة بين بيئة المحاكاة الرقمية والواقع العملي. فكثير من الخوارزميات التي تعمل بكفاءة داخل برامج المحاكاة تفشل عند نقلها إلى المنصات الحقيقية بسبب اختلاف بيئات التشغيل والقيود المرتبطة بالعتاد الإلكتروني.

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

فلسفة المشروع

تعتمد الفكرة المركزية للمشروع على إنشاء نواة تحكم مستقلة عن العتاد Hardware Independent Control Core بحيث يتم تطوير واختبار خوارزميات الطيران بالكامل داخل بيئة محاكاة ثلاثية الأبعاد (RENAS 3D Flight Simulator) والمكتوبة بلغة HTML, CSS, and JavaScritpt ثم يتم نقل المنطق البرمجي نفسه إلى منصة التحكم الفعلية (RENAS Firmware) المكتوبة بلغة ++C والمشغلة على متحكم Teensy 4.1.

هذا المفهوم يحقق ما يعرف في هندسة الأنظمة المدمجة بمبدأ تطوير الخوارزمية مرة واحدة ثم نشرها على مختلف البيئات التشغيلية دون الحاجة إلى إعادة التصميم.

المرحلة الأولى. بناء التوأم الرقمي للطائرة

بدأ المشروع بتطوير نموذج رقمي متكامل للطائرة داخل بيئة المحاكاة.

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

ومن خلال هذا التوأم الرقمي أصبح بالإمكان اختبار أنظمة التحكم في ظروف متنوعة دون المخاطرة بالطائرة الحقيقية.

المرحلة الثانية. تطوير نواة التحكم

في قلب المشروع توجد نواة التحكم Flight Control Core التي تمثل العقل الحقيقي للنظام.

تتكون هذه النواة من عدة وحدات رئيسية تشمل وحدة الرياضيات المسؤولة عن تنفيذ عمليات المصفوفات والمتجهات والتحويلات الإحداثية والكواتيرنيون وزوايا أويلر. وهي الأساس الذي تعتمد عليه جميع الحسابات المتعلقة بتحديد وضعية الطائرة واتجاهها.

كما تضم النواة وحدة تقدير الحالة التي تعتمد على دمج بيانات المستشعرات للحصول على أفضل تقدير ممكن للحالة الحقيقية للطائرة. وتستخدم خوارزميات شبيهة بمرشحات كالمان الممتدة EKF Lite لدمج بيانات الجيروسكوب ومقياس التسارع والبوصلة والبارومتر ونظام GPS.

أما وحدة التحكم فتتولى إدارة حلقات التحكم الداخلية الخاصة بمعدلات الدوران والميل والانحراف وهي أسرع حلقات التحكم وأكثرها أهمية في استقرار الطائرة أثناء الطيران.

المرحلة الثالثة. إنشاء الجدار البرمجي الصارم

إحدى أهم الابتكارات في مشروع RENAS هي ما أطلق عليه اسم Strict Wall Architecture.

وتقوم هذه الفلسفة على إنشاء حاجز برمجي واضح يفصل بين خوارزميات التحكم وبين العتاد الإلكتروني. ونتيجة لذلك يمكن تشغيل واختبار نواة التحكم بشكل كامل داخل بيئة المحاكاة أو أثناء الاختبارات البرمجية دون الحاجة إلى وجود أي مستشعرات أو محركات فعلية.

 

هذا الفصل يقلل الأخطاء ويرفع موثوقية النظام ويسمح بتنفيذ آلاف ساعات الاختبارات قبل الانتقال إلى الطائرة الحقيقية.

المرحلة الرابعة. الانتقال إلى العتاد الحقيقي

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

في هذه المرحلة تصبح نواة التحكم مرتبطة بمجموعة من المستشعرات الحقيقية التي تزود النظام بالبيانات اللازمة لاتخاذ القرارات الملاحية والتحكمية. ويعتمد النظام على المستشعر ICM-20948 لقياس التسارع ومعدلات الدوران والمجال المغناطيسي. كما يستخدم المستشعر DPS310 لقياس الضغط الجوي وتقدير الارتفاع. أما تحديد الاتجاه المغناطيسي فيتم عبر البوصلة الرقمية IST8310. ولتحديد الموقع والسرعة الأرضية يعتمد النظام على وحدة u-blox GPS عالية الدقة. كذلك يتم استقبال أوامر الطيار من خلال مستقبل SBUS الذي يشكل حلقة الوصل بين وحدة التحكم والطائرة ومعدات التحكم الأرضية.

وتتم معالجة جميع هذه البيانات بشكل لحظي داخل متحكم الطيران للحصول على صورة دقيقة عن حالة الطائرة وموقعها واتجاهها أثناء الطيران.

المرحلة الخامسة. إدارة الدفع والمحركات

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

بعد ذلك يتم توزيع القوى والعزوم على المحركات باستخدام خوارزميات المزج الحركي Motor Mixing لضمان الحصول على الاستجابة المطلوبة بأعلى درجات الدقة والاستقرار.

المرحلة السادسة. الضبط الحي أثناء التشغيل

يوفر النظام واجهة أوامر متقدمة CLI تسمح للمهندس بإجراء تعديلات مباشرة أثناء التشغيل.

ومن خلال هذه الواجهة يمكن تعديل معاملات PID وحدود التسارع ومعدلات الاستجابة وإعدادات المستشعرات دون الحاجة إلى إعادة برمجة النظام بالكامل.

وتسهم هذه الميزة في تسريع عمليات التطوير والاختبارات الميدانية وتقليل الزمن اللازم للوصول إلى أفضل أداء للطائرة.

المرحلة السابعة. الجاهزية التشغيلية المتقدمة

بعد اكتمال الوظائف الأساسية ينتقل المشروع إلى مراحل أكثر تقدماً تشمل الملاحة الذاتية باستخدام بروتوكول MAVLink وتسجيل بيانات الرحلات عبر بطاقات microSD وتفعيل خاصية العودة التلقائية عند فقدان الاتصال أو انخفاض الطاقة أو انتهاء الرحلة.

كما تتضمن المراحل المستقبلية دمج أنظمة الرؤية الحاسوبية وتقنيات الذكاء الاصطناعي لتطوير قدرات تجنب الاصطدام وتحسين الملاحة واتخاذ القرار بشكل مستقل أثناء الطيران.

الأهمية العلمية للمشروع

تكمن أهمية مشروع RENAS في أنه لا يقدم مجرد متحكم طيران جديد بل يقدم منهجية تطوير متكاملة تعتمد على التطابق الكامل بين المحاكاة والتنفيذ الحقيقي.

هذه المنهجية تقلل زمن التطوير وتخفض تكاليف الاختبارات وتحد من مخاطر الأعطال وتلغي الحاجة إلى إعادة كتابة البرمجيات عند الانتقال من المحاكاة إلى الواقع.

كما ترفع موثوقية النظام وتفتح المجال أمام تطوير تطبيقات متقدمة في مجالات الطيران المدني والبحث العلمي والأنظمة الصناعية الذكية.

الخلاصة

يمثل مشروع RENAS نموذجاً متقدماً في هندسة أنظمة التحكم للطائرات بدون طيار. فقد نجح المشروع في بناء جسر تقني حقيقي يربط بين عالم المحاكاة الرقمية وعالم الطيران الفعلي من خلال نواة تحكم مستقلة عن العتاد ومنظومة محاكاة متكاملة وهيكلية برمجية صارمة تسمح بتطوير واختبار الأنظمة داخل البيئة الافتراضية ثم نقلها مباشرة إلى الطائرة الحقيقية بدرجة عالية من الكفاءة والموثوقية.

ويمثل هذا النهج خطوة مهمة نحو بناء أجيال جديدة من متحكمات الطيران الذكية القادرة على دعم تطبيقات الطيران المتقدم والأنظمة الذاتية في المستقبل.

تصميم وتطوير:
د. الفاتح جمعه حمدي جبارة

What do you feel about this?