13.1.4. تشغيل البرامج النصية¶
زر البدء -- السهم الأخضر أسفل زر الاتصال، أو Ctrl+R -- يرسل البرنامج النصي الموجود في علامة تبويب المحرر الحالية إلى الكاميرا المتصلة ويشغّله. أثناء تشغيل البرنامج النصي، يتحول زر البدء إلى زر إيقاف يوقف تشغيله. هذان الزران هما الحلقة الأساسية لكل عمل تطويري على الكاميرا: التحرير، البدء، المراقبة، الإيقاف، ثم التحرير من جديد.
هناك تفصيلان في هذه الحلقة لهما أهمية. أولاً، يُرسل البرنامج النصي إلى ذاكرة RAM الخاصة بالكاميرا ويُنفَّذ هناك -- فبدء برنامج نصي لا يكتب أي شيء إلى وحدة تخزين الكاميرا، ويختفي البرنامج النصي بعد إعادة التشغيل. ثانياً، ما يُشغَّل هو علامة تبويب المحرر الحالية، تماماً كما تظهر، سواء حُفظت أم لا. لا توجد خطوة رفع منفصلة ولا نسخة قديمة على الكاميرا قد تخرج عن التزامن مع محررك.
أثناء تشغيل البرنامج النصي، يتدفق خرج print() الخاص به إلى الطرفية التسلسلية ويظهر كل إطار يلتقطه في عارض مخزن الإطارات. وعندما يطلق برنامج نصي استثناءً غير معالَج، يُطبع تتبع المكدس إلى الطرفية التسلسلية وتنتقل بيئة التطوير المتكاملة بالمحرر إلى السطر المسبب للخطأ -- وفي تطبيق متعدد الملفات تفتح أولاً الملف المسمى من محرك الكاميرا.
13.1.4.1. جعل البرنامج النصي دائماً¶
لجعل الكاميرا تشغّل برنامجاً نصياً دون بيئة التطوير المتكاملة -- عند التشغيل، بشكل مستقل، في الميدان -- خزّن البرنامج النصي على الكاميرا باسم main.py. يكتب Tools → Save open script to OpenMV Cam (as main.py) علامة تبويب المحرر الحالية إلى محرك الكاميرا تحت هذا الاسم، عارضاً في أثناء ذلك إزالة التعليقات وضغط المسافات البيضاء -- مما يقلص حجم الملف لكنه يشحن نسخة غير قابلة للقراءة -- بينما يعيد Tools → Reset OpenMV Cam تشغيل الكاميرا لتقلع إلى البرنامج النصي المخزّن. وهما معاً يشكلان خطوة النشر: فمن تلك اللحظة تشغّل الكاميرا برنامجك النصي كلما توفرت لها الطاقة، سواء أوجدت بيئة التطوير المتكاملة أم لا.
بينما تشغّل كاميرا أُعيد تشغيلها ملف main.py المخزّن لديها، لا تزال بيئة التطوير المتكاملة قادرة على الاتصال بها -- مع تفعيل Stop Script on Connect/Disconnect (الإعداد الافتراضي)، يوقف الاتصال البرنامج النصي المخزّن ويعيد التحكم إلى المحرر.
شاهد أيضا
تجميد البرامج النصية داخل البرنامج الثابت لمعرفة ما يعنيه main.py في تسلسل إقلاع الكاميرا، ولنقل تطبيق منتهٍ خارج وحدة التخزين القابلة للتحرير بالكامل.
13.1.4.2. محرك الكاميرا¶
يُركَّب نظام ملفات الفلاش في الكاميرا (وبطاقة SD، عند إدخال واحدة) على المضيف كمحرك فلاش USB. يفتحه Tools → Open OpenMV Cam Drive folder في مدير الملفات لديك. هنا تنسخ وحدات المكتبات وملفات النماذج والأصول التي يستوردها البرنامج النصي أو يحمّلها، ومن هنا تسترجع الصور والسجلات التي حفظها. كما يظهر مسار المحرك في شريط الحالة.
لا تظهر الملفات التي ينشئها برنامج نصي على المضيف فوراً: إذ يخزّن المضيف نظام الملفات مؤقتاً منذ لحظة تركيب المحرك، لذا تبقى أي لقطة يحفظها البرنامج النصي قيد التشغيل غير مرئية حتى يُعاد تركيب المحرك. يعيد Tools → Reset OpenMV Cam تركيبه -- وهي الطريقة السريعة للوصول إلى ما كتبه البرنامج النصي للتو.
تحذير واحد: تتشارك الكاميرا والمضيف نظام الملفات ذاك، ويمكن للكتابات المتزامنة من الجانبين أن تفسده. انسخ الملفات بينما لا يكتب أي برنامج نصي إلى وحدة التخزين، وأخرج البطاقة بشكل سليم قبل سحبها.