مرحبا يا هبر!
تحدثنا بالفعل عن منصة LEGO MINDSTORMS Education EV3. الأهداف الرئيسية لهذه المنصة هي التدريب على أمثلة عملية ، وتطوير مهارات STEAM وتشكيل التفكير الهندسي. يمكن أن تنفذ الأعمال المختبرية لدراسة الميكانيكا والديناميات. حوامل المختبرات المصنوعة من كتل وأدوات LEGO لتسجيل ومعالجة البيانات تجعل التجارب أكثر إثارة للاهتمام والبصرية وتساعد الأطفال على فهم الفيزياء بشكل أفضل. على سبيل المثال ، يمكن للطلاب جمع البيانات عن درجة حرارة الانصهار واستخدام التطبيق لتنظيمها وتقديمها في رسم بياني. ولكن هذه ليست سوى البداية: اليوم سنخبرك بكيفية استكمال هذه المجموعة مع بيئة برمجة MicroPython واستخدامها لتعليم الروبوتات.

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

تعمل هذه الطريقة بشكل جيد عندما تحتاج إلى إظهار كيفية إنشاء الخوارزميات ، ولكنها غير مناسبة للبرامج التي تحتوي على عدد كبير من الكتل. عند تعقيد السيناريوهات ، من الضروري التبديل إلى البرمجة باستخدام الكود ، ولكن يصعب على الأطفال اتخاذ هذه الخطوة.
توجد بعض الحيل هنا ، أحدها هو إظهار أن الكود يؤدي نفس المهام مثل الكتل. في بيئة EV3 ، يمكن القيام بذلك من خلال التكامل مع MicroPython: ينشئ الأطفال البرنامج نفسه في بيئة البرمجة الأساسية باستخدام الكتل و Python في Microsoft Visual Studio Code. يرون أن كلتا الطريقتين تعملان بنفس الطريقة ، لكن من الملائم حل المشكلات المعقدة باستخدام الكود.
الذهاب إلى MicroPython
تعتمد بيئة EV3 على معالج ARM9 ، وترك المطورون عمداً بنية مفتوحة. سمح لنا هذا الحل بنشر البرامج الثابتة البديلة ، أحدها كانت الصورة للعمل مع MicroPython. يتيح لك استخدام Python لبرمجة EV3 ، مما يجعل الكتابة أقرب إلى المهام الواقعية.
للبدء ، تحتاج إلى تنزيل
صورة EV3 MicroPython على أي بطاقة microSD وتثبيتها في الحواسيب الصغيرة
EV3 وتشغيلها . ثم تحتاج إلى تثبيت
ملحق مجاني لبرنامج Visual Studio. ويمكنك الحصول على العمل.
نحن برنامج الروبوت الأول على MycroPython

يحتوي موقعنا على العديد من الدروس لإتقان المفاهيم الأساسية للروبوتات. تعرض النماذج على EV3 الأطفال على الأساسيات المستخدمة في السيارات ذاتية القيادة ، والروبوتات المجمعة في المصنع ، وآلات CNC.
نأخذ على سبيل المثال آلة رسم يمكن تعليمها لرسم أنماط وأشكال هندسية. هذه الحالة عبارة عن نسخة مبسطة من روبوتات اللحام أو آلات الطحن الخاصة بالبالغين وتوضح كيف يمكنك استخدام EV3 مع MicroPython لتدريس الطلاب. ويمكن لآلة الرسم تحديد الثقوب الموجودة في لوحة الدوائر المطبوعة من أجل الأب ، ولكن هذا مستوى آخر يتطلب حسابات رياضية.
للعمل ، نحن بحاجة إلى:
- ليغو MINDSTORMS التعليم EV3 مجموعة أساسية
- ورقة كبيرة من ورقة متقلب.
- علامات ملونة.
تجميع الروبوت نفسه هو في
التعليمات ، وسوف ننظر في مثال البرمجة.
أولاً ، تهيئة مكتبة الوحدة النمطية EV3:
لقد أنشأنا نظامًا يدور المقبض كالمحرك في المنفذ B. وقد حددنا نسبة الترس في ناقل الحركة ذي المرحلتين وعدد الأسنان 20-12-28 ، على التوالي.
turntable_motor = Motor(Port.B, Direction.CLOCKWISE, [20, 12, 28])
نقوم بتهيئة آلية الرفع للمقبض كمحرك في المنفذ C:
seesaw_motor = Motor(Port.C)
أنشأنا جيروسكوب لقياس زاوية المقبض ، في المنفذ 2:
gyro_sensor = GyroSensor(Port.S2)
قم بتكوين مستشعر اللون في المنفذ 3. يتم استخدام المستشعر لاكتشاف الورق الأبيض أسفل آلة الرسم:
color_sensor = ColorSensor(Port.S3)
قم بتكوين مستشعر اللمس في المنفذ 4. يبدأ الروبوت في السحب عند الضغط على المستشعر:
touch_sensor = TouchSensor(Port.S4)
حدد الوظائف التي ترفع وتخفض المقبض:
def pen_holder_raise(): seesaw_motor.run_target(50, 25, Stop.HOLD) wait(1000) def pen_holder_lower(): seesaw_motor.run_target(50, 0, Stop.HOLD) wait(1000)
نحدد وظيفة تحويل المقبض بزاوية معينة أو بزاوية معينة:
def pen_holder_turn_to(target_angle): if target_angle > gyro_sensor.angle():
إذا كانت الزاوية المستهدفة أكبر من الزاوية الحالية لجهاز استشعار الدوران ، تابع التحرك في اتجاه عقارب الساعة بسرعة إيجابية:
turntable_motor.run(70) while gyro_sensor.angle() < target_angle: pass elif target_angle < gyro_sensor.angle():
إذا كانت الزاوية المستهدفة أقل من مستشعر الدوران الحالي ، فحرك عكس اتجاه عقارب الساعة:
turntable_motor.run(-70) while gyro_sensor.angle() > target_angle: pass
نوقف منصة الدوران عند الوصول إلى الزاوية المستهدفة:
turntable_motor.stop(Stop.BRAKE)
اضبط الموضع الأولي للمقبض في الموضع العلوي:
pen_holder_raise()
الآن يأتي الجزء الرئيسي من البرنامج - حلقة لا نهاية لها. في البداية ، ينتظر EV3 أن يقوم مستشعر اللون باكتشاف ورق أبيض أو خلية بداية زرقاء ، وسيتم الضغط على مستشعر اللمس. ثم يرسم نمطًا ويعود إلى موقعه الأصلي ويكرر كل شيء مرة أخرى.
عندما لا يكون الجهاز جاهزًا ، تتحول المصابيح الدائرية الموجودة على وحدة التحكم إلى اللون الأحمر ويتم عرض صورة الإصبع على شاشة LCD:
while True: brick.light(Color.RED) brick.display.image(ImageFile.THUMBS_DOWN)
ننتظر حتى يعتبر مستشعر اللون أزرق أو أبيض ، ونضبط لون المصابيح على اللون الأخضر ، ونعرض صورة الإبهام على شاشة LCD ونعلم أن الجهاز جاهز للاستخدام:
while color_sensor.color() not in (Color.BLUE, Color.WHITE): wait(10) brick.light(Color.GREEN) brick.display.image(ImageFile.THUMBS_UP)
ننتظر الضغط على مستشعر اللمس ، وقم بتعيين قيمة الزاوية 0 لمستشعر الدوران وابدأ الرسم:
while not touch_sensor.pressed(): wait(10) gyro_sensor.reset_angle(0) pen_holder_turn_to(15) pen_holder_lower() pen_holder_turn_to(30) pen_holder_raise() pen_holder_turn_to(45) pen_holder_lower() pen_holder_turn_to(60)
ارفع حامل القلم وأعده إلى موضعه الأصلي:
pen_holder_raise() pen_holder_turn_to(0)</i>
هنا لدينا مثل هذا البرنامج البسيط. ونحن الآن نطلقه وننظر إلى رسام الروبوت أثناء العمل.
ماذا تعطي هذه الأمثلة؟

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