التحكم في الروبوت Robot Control - المهارات الرقمية - ثاني متوسط

344 الوحدة الثالثة : برمجة الروبوت ستتعلم في هذه الوحدة كيفية برمجة الروبوت الافتراضي Virtua Robot بكفاءة عالية باستخدام اللبنات المتغيرة وتقنيات البرمجة التركيبية، وستتعلم طريقة التحكم في الروبوت الافتراضي باستخدام بيانات المستشعرات الخاصة به. أهداف التعلم ستتعلم في هذه الوحدة: > المقصود بالمتغيرات وكيفية استخدامها. > استخدام المتغيرات للتحكم في حركة الروبوت. > اجراء العمليات الحسابية في بيئة فيكس كود في آر. > استخدام الشرط في بيئة فيكس كود في آر. > استخدام التكرار في فيكس كود في آر والتمييز بين أنواعه. > تصميم مقطع برمجي بتقنيات البرمجة التركيبية. الأدوات فيكس كود في آر (VEXcode VR) VEXVA VEX VEX وزارة التعليم Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

أهداف التعلم من وحدة برمجة الروبوت

هل تذكر؟ بيئة فيكس كود في آر (VEXcode VR) فيكس كود في آر VEXcode (VR) منصة برمجية قائمة على استخدام اللبنات البرمجية ومدعومة من سكراتش Scratch)، وذلك لبرمجة الروبوت الافتراضي في تلك المنصة. تتميز واجهة بيئة البرمجة بالبساطة وسهولة الاستخدام، حيث يمكنك إنشاء المقطع البرمجي دون كتابة تعليمات برمجية معقدة، فكل ما عليك فعله هو سحب اللبنات البرمجية إلى مساحة العمل وتوصيلها معا، كما طبقتها في لبنات سكراتش البرمجية. لاستكشاف بيئة فيكس كود في آر ، انتقل إلى الموقع الإلكتروني: https://vr.vex.com فئات اللبنات البرمجية. شريط الأدوات. الطلعات والملاحظات المشارك اسلت لمواجهة اسات الورق سيط سرعة القيادة إلى 40 % اندر ف في اسبط راوية المواجهة في احية راوية الدوران البلاد و VEXcode لمبادلة المرض لك 101 اسع كل شعرت - A Q VEXcode Project مساحة العمل. قائمة ملف. VEXcode VR x + https://vr.vex.com VR فتح / إغلاق لوحة اللبنات البرمجية. تكبير / تصغير اللبنات البرمجية. حجم العرض القياسي. وزارة التع345 Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

بيئة فيكس كود آر

346 شريط الأدوات يحتوي شريط الأدوات أعلى نافذة البرنامج على عدة خيارات، ويمكن من خلاله عرض مقاطع فيديو تعليمية تساعدك على فهم أفضل لكيفية استخدام بيئة فيكس كود في آر. أما زر افتح الملعب (Open playground فيعمل على تحميل نافذة المحاكاة التي تمكنك من تجربة الروبوت إيقاف تشغيل المقطع البرمجي. تشغيل المقطع البرمجي خطوة بخطوة. بدء تشغيل المقطع البرمجي. التعليقات والملاحظات بداية افتن العلم اختر سلمت VEXcode Project الإعادة النباء البصيل ملف اختیار اللغة. الكود نافذة المساعدة. نافذة المراقبة. مستعرض البرمجة. افتح الملعب. اختر الملعب. اسم المشروع. أزرار التراجع مقاطع فيديو والإعادة. تعليمية. الملعب الملعب هو مساحة افتراضية خاصة بالروبوت الافتراضي تُمكّنك من تنفيذ مقاطعك البرمجية بسيناريوهات مختلفة. E VR نافذة الملعب. إظهار/إخفاء المشهد. تكبير النافذة. زر التوسيع. الكاميرا العلوية. 00:00:0 كاميرا التتبع. كاميرا الشخص الأول. مربعات 200 × 200 مليمتر. موضع البدء للروبوت. إعادة تعيين المشهد. بدء تشغيل المقطع البرمجي. وزارت الله ليم Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

شريط الأدوات في فيكس كود آر

الدرس الأول التحكم في الروبوت المتغيرات رابط الدرس الرقمي www.ien.edu.sa المتغير يشبه الاسم المستعار لشيء يجب أن يتذكره جهاز الحاسب. تعمل المتغيرات مثل الحاويات في المقطع البرمجي للحفاظ على البيانات التي يمكن أن تكون أرقاماً وأحرفًا. لتخزين أنواع مختلفة من البيانات هناك فئتان رئيستان من المتغيرات وهما المتغيرات الرقمية والمتغيرات النصية، ويطلق على المتغيرات النصية أيضًا اسم السلاسل النصية (Strings). يمكنك العثور على جميع اللبنات الخاصة بالمتغيرات في فئة المتغيرات (Variables) تحتوي بيئة فيكس كود في ار على متغير افتراضي جاهز للاستخدام يسمى myVariable. ويمكنك استخدامه أو إعادة تسميته أو حذفه. فئة المتغيرات .(Variables) المتغيرات نظام الدقم إنشاء متخير المرض احداث nyvinutile myVanable my V إنشاء متغير منطقي لاستشمار إنشاء قائمة العملي D إنشاء قائمة 2 المتغيرات عناصر برمجة جديدة إنشاء عنصر عناصر برمجة التعليقات التعليقات يعرض القيمة الرقمية المخصصة للمتغير myVariable. يضبط قيمة المتغير myVariable إلى أي رقم تريده. يغيّر قيمة المتغير myVariable بمقدار 1. وزارة التعلي3 Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

المتغيرات

348 وصف لبنات المتغير مجموعة myVariable تعبير اسم المتغير myVariable myVariable 0 عرض متغیر (Reports a variable) عندما تريد استخدام المتغير مع لبنة أخرى، فإنك تستخدم لبنة عرض المتغير. تهيئة متغير Initialize a variable) عندما تريد تعيين أو تحديث قيمة متغير محدد، يمكنك استخدام لبنة مجموعة ( ) إلى ( ) ( ) set to) من قبل تغییر متغیر (Change a variable) عندما تريد تغيير قيمة مخزنة بالفعل في متغير، يمكنك استخدام لبنة تغيير (( من قبل (( (() change ( ) by). تعمل لبنة التغيير على زيادة أو تقليل قيمة المتغير برقم محدد، ولتقليل قيمة المتغير يجب كتابة الرقم بإشارة سالب (-) اسم المتغير: myVariable قيمة المتغير: 0 مجموعة myVariable يحتوي المتغير على قيمة واحدة فقط في كل مرة. عندما تنشئ متغيرًا فإنك تحدد اسمه. > يجب أن يكون اسم كل متغير فريدًا ولم يستخدم سابقًا في نفس المقطع البرمجي. > يمكن أن يتكون اسم المتغير من مجموعة أحرف كبيرة وصغيرة، ويمكنك استخدام أكثر من كلمة مع وجود شرطة سفلية ) - ) بينهما. > بعض الكلمات لا يمكن استخدامها كاسم متغير؛ لأنها كلمات خاصة تستخدمها بالفعل بيئة البرمجة (على سبيل المثال: تكرار، محرك الأقراص الدوران ،بينما إذا ،آخر إلخ). وتسمى بالكلمات الرئيسة المحجوزة. > يجب ألا يحتوي اسم المتغير على أحرف خاصة على سبيل المثال : ! ، " ، إلخ)، وأيضًا لا يبدأ برقم ولا يحتوي على مسافات. يفضل أن يمثل اسم المتغير محتواه؛ حتى تفهم ما يمثله المتغير عندما تراه في المقطع البرمجي. وزارة التعليم Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

وصف لبنات المتغير

اسم المتغير

إنشاء متغير رقمي عليك إنشاء متغير قبل استخدامه في بيئة فيكس كود في آر ، أنشئ متغيرًا رقميًا جديدًا. لانشاء متغير رقمي > من فئة المتغيرات (ariables اضغط على إنشاء متغير Make a Variable). > في نافذة متغير رقمي جديد New Numeric variable اكتب اسمًا للمتغير، على سبيل المثال speed " ، ثم اضغط على إرسال .(Submit) 1 العرض المتغيرات 2 احداث إنشاء متغير تحكم myVariable الاستشعار مجموعة myVariable العمليات 0 4 1 myVariable متغير رقمي جديد اسم متغير رقمي جديد إرسال الغاء 3 speed المتغيرات إنشاء متغير منطقي العرض المتغيرات إنشاء قائمة عناصر برمجة أحداث جديدة D إنشاء قائمة 2 myVariable تحكم التعليقات عناصر برمجة جديدة speed الاستشعار إنشاء عنصر 0 myVanable العمليات المتغيرات 148 myVariable وزارة التعو34 Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

إنشاء متغير رقمي

350 إعادة تسمية متغير رقمي يمكنك إعادة تسمية كل متغير في بيئة فيكس كود في آر ، أعد تسمية المتغير الافتراضي ."myVariable". لإعادة تسمية myVariable من فئة المتغيرات (Variables) اضغط بزر الفأرة الأيمن على لبنة myVariable. > من القائمة المنسدلة، اختر إعادة تسمية المتغير Rename variable). 8 في النافذة إعادة تسمية المتغير Rename variable)، اضغط على لبنة myVariable@ واكتب الاسم الجديد للمتغير، على سبيل المثال " newVariable" . 5 واضغط على إرسال 1 6.(Submit) 2 myVariable speed 3 إعادة تسمية متغير حذف المتغير "myVariable" الاستشعار مجموعة myVariable 0 العمليات المتغيرات myVariable إنشاء متغير منطقي عناصر برمجة جديدة إنشاء قائمة اعد تسمية متغير من قبل 1 اعد تسمية متغير إلى "myVariable إعادة تسمية كافة المتغيرات إلى "myVariable إعادة تسمية كافة المتغيرات 4 إرسال الغاء myVariable 5 6 إرسال إلغاء newVariable وزارة التعليم Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

إعادة تسمية متغير رقمي

تم تغيير اسم المتغير إلى (newVariable). العرض المتغيرات احداث إنشاء متغير الاستشعار العمليات المتغيرات newVariable speed مجموعة newVariable new variable - من قبل 1 حذف متغیر (Delete variable) يمكنك حذف المتغير الافتراضي في بيئة فيكس كود في آر ، احذف المتغير "newVariable". لحذف متغير من فئة المتغيرات (ariables اضغط بزر الفأرة الأيمن على لبنة newVariable > من القائمة المنسدلة، اختر حذف المتغير " Delete the "newVariable" variable new variable). © 1 احداث إنشاء متغير تحكم 2 newVariable speed إعادة تسمية متغير حذف المتغير "newVariable" الاستشعار مجموعة newVariable 0 العمليات تغرير newVariable - من قبل 1 المتغيرات 3 وزارة التعد35 Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

تم تغير اسم المتغير إلى

حذف متغير

352 الآن في فئة المتغيرات هناك متغير speed أحداث إنشاء متغير تحكم speed الاستشعار مجموعة speed 0 العمليات speed من قبل 1 المتغيرات إنشاء متغير منطقي طريقة استخدام المتغيرات للتحكم في حركات روبوت الواقع الافتراضي باستخدام متغير speed ، ستشاهد كيف يمكنك الاستفادة من استخدامه في بيئة فيكس كود في آر. باستخدام شبكة خريطة Grida يمكنك اختبار روبوت الواقع الافتراضي في المثال التالي، حيث يبدأ الروبوت في التحرك للأمام بسرعة 10. باستخدام متغير speed ، يمكنك جعل الروبوت يتسارع بنسبة 20% كل 200 مليمتر (mm). مثال 1: التسارع عندما بدات مجموعة speed تکرار 4 10 اضبط سرعة القيادة إلى speed % تحرك إلى الأمام عدد 200 speed من قبل 20 mm اضبط القيمة الأولية لمتغير speed إلى 10. اضبط سرعة الروبوت لتكون مساوية للقيمة التي يأخذها متغير speed في كل مرة. زد قيمة متغير speed بمقدار 20 وحدة في نهاية كل حلقة. في بيئة فيكس كود في آر، يمكنك إنشاء متغيرات مختلفة للتحكم في السرعة، ودرجة الانعطاف، والمسافة التي يقطعها الروبوت. وزارة التعليم Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

الآن في فئة المتغيرات هناك متغير speed

طريقة استخدام المتغيرات للتحكم في حركات روبوت الواقع الافتراضي

مراقبة قيم المتغير يمكنك فتح وحدة تحكم المراقبة (Monitor Console لعرض التغييرات التي تحدث للمتغير speed عند تشغيل المقطع البرمجي. ألق نظرة على كيفية تغير قيم المتغير speed أثناء مرحلة التسارع. لتنفيذ المقطع البرمجي > من فئة المتغيرات (Variables) 1 حدد خانة الاختيار متغير .speed 2 > حدد أيقونة تحكم المراقبة Monitor Console). > اضغط على بداية (Start) حدد مربع الاختيار بجوار لبنة عرض متغير speed لمراقبة قيم السرعة. 1 العرض المتغيرات احداث تحكم إنشاء متغیر 2 speed الاستشعار مجموعة speed العملي تغیر speed المتغيرات إنشاء متغير منطقي التطيقات والملاحظات > 3 4 ن قبل 1 إيقاف خطوة بداية افتح الملعب اختر ملعب أجهزة الاستشعار speed 10 وزارة التع353 Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

مراقبة قيم المتغير

مراقب speed وزارة التعليم Ministry of Education 2024-1446 00:00:0 أجهزة الاستشعار 10 90 70 50 50 A 30 AV ? 10 354

الدرس الأول: التحكم في الروبوت ( Robot Control)

لتنفيذ برنامج قيم المتغير

العمليات الحسابية في البرمجة تستخدم المعاملات الرياضية لإجراء الحسابات. يمكنك استخدام فيكس كود في آر لإجراء أي عملية حسابية مثل: الجمع، والطرح والضرب والقسمة، وغيرها. كما تعلمت سابقًا، المُعامِل هو رمز يمثل إجراءً محددًا، على سبيل المثال: علامة الجمع (+) هي مُعامِل يمثل الجمع. وتسمى المُعاملات التي تستخدمها لإجراء العمليات الحسابية بالمُعاملات الرياضية، ويمكنك العثور على المُعاملات الرياضية في فئة العمليات .(Operators) مثال 2: العمليات الحسابية في المثال التالي، ستنفّذ عملية حسابية بسيطة في بيئة فيكس كود في .آر. ستستخدم المتغير """ الذي ستعينه إلى قيمة 2. ستستخدم أيضًا متغير "Multiplication" الذي ستعيّنه إلى قيمة متغير "" مضروبًا في 6 باستخدام بيئة عملية الضرب .(multiplication operator) هما يدك مجموعة Multiplication إطبع Multiplication 2 تستخدم لبنة الضرب ( ) * ( ) ، من فئة العمليات (Operators)، لتحديد النتيجة الحسابية لعملية الضرب بين قيمتين رقميتين. 6 عيّن المتغير x" إلى قيمة 2. عيّن المتغير Multiplication إلى قيمة 6 مضروبا في x. ضع لبنة عرض متغیر Multiplication داخل لبنة إطبع ( ) ( ) Print). وزارة التعد35 Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

العمليات الحسابية

356 عند تنفيذ المقطع البرمجي تتم مراقبة قيم المتغيرات "" و "Multiplication" عن طريق وحدة تحكم المراقبة (Monitor Console) ويتم طباعة قيمة متغير Multiplication إلى وحدة تحكم العرض (Print Console). لتنفيذ المقطع البرمجي من فئة المتغيرات (Variables) ، • حدد خانة الاختيار (checkbox) للمتغير x ، وخانة الاختيار ( checkbox للمتغير Multiplication. > حدد رمز وحدة تحكم المراقبة (Monitor Console). > اضغط على زر بداية .(S (Start 4. 1 الدفع 3 إنشاء متغير المتغيرات 2 Maten إنشاء متغير منطقي إنشاء قائمة D إنشاء قائمة 2 عناصر برمجة جديدة إنشاء عنصر التعليقات 5 التطيقات والملاحظات شارك إيقاف خطوة افتح الملعب اختر علم ? قوائم إضافة <+ 4 نسخ إلى الحافظة AV أجهزة الاستشعار 2 Multiplication 12 مخرجات الطباعة للبنة عرض متغير "Multiplication". حفظ مسح 12 وزارة التعليم Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

لتنفيذ برنامج العمليات الحسابية

قد ترغب أحيانًا في تنفيذ نفس التعليمات البرمجية عدة مرات حتى تتمكن من استخدام التكرارات (Loops)، والتي تسمح لك بتكرار نفس الأوامر عدة مرات يوفر فيكس كود في أر أربعة أنواع من التكرارات وهي تكرار (repeat) ، وتكرار حتى repeat until)، وإلى الأبد (forever) وفي حين (while). تکرار ( ) مرات (Repeat ( ) times) تكرار 10 لبنة التكرار ) ) ، تستخدم عند تنفيذ اللبنات البرمجية الموجودة لعدد محدد سابقًا من المرات. مثال 3: العمليات الحسابية في تكرارات في المثال التالي ستنفّذ عملية حسابية 10 مرات باستخدام حلقة تكرار () مرات (Repeat times). ستعين المتغير "x" في البداية يساوي 0 وستبرمجه ليتم زيادته بمقدار 1 في كل مرة يتم فيها تنفيذ التكرار. ستعيّن متغير "Multiplication" الذي يساوي المتغير "" مضروبًا في 6 ، باستخدام بيئة عمليات الضرب. في كل مرة يتم فيها تنفيذ التكرار يتم تحديد قيمة متغير "Multiplication" بواسطة القيمة الحالية للمتغير x مضروبة في 6 کرر 10 مرات. هنما بنات 10 JA إطبع قول 0 Multiplication Multiplication 1 إنقل المؤشر للصف التالى اضبط متغیر Multiplication يساوي 6 مضروبا في x. اطبع قيمة المتغير Multiplication عند كل تكرار. يطبع المخرجات ويرسل مؤشر وحدة تحكم العرض (Print Console) إلى الصف التالي. وزارة التعل35 Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

لبنة التكرار

العمليات الحسابية في تكرارات

358 أثناء تنفيذ المقطع البرمجي، تكون النتيجة هي مخرجات في وحدة تحكم العرض (Print Console). قوائم إضافة أجهزة الاستشعار المتغيرات 10 Multiplication 60 نسخ إلى الحافظة حفظ مسح لا تنس استخدام زر مسح (CLEAR) وإلا فسيتم الاحتفاظ بالرسائل في وحدة تحكم العرض Print Console بعد تنفيذ المقطع البرمجي. 6 12 18 24 30 36 42 48 54 60 وزارة التعليم Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

وحدة تحكم العرض

مثال :4: العمليات الحسابية واستخدام الشرطية في الحلقات في المثال السابق، ستضيف داخل الحلقة لبنة إذا )) (() if) لفئة التحكم (Control) للتحقق مما إذا كان الشرط صحيحًا، عند كل تكرار. إذا كان الشرط صحيحًا، يتم تنفيذ أمر اللبنة داخل لبنة إذا ) ) . على وجه التحديد، يتحقق هذا الجزء من التعليمات البرمجية عند كل تكرار، إذا كانت قيمة متغير "Multiplication" أقل من 30 إذا كان هذا صحيحًا ، فإن قيمة متغير "Multiplication" يتم إخراجها في وحدة تحكم العرض Print Console البرمجة حالة لبنة إذا ) ) ، ستستخدم لبنة ( ) أقل من () من فئة العمليات (Operators). لما بدك إطبع 10 0 1 Multiplication 30 Multiplication Multiplication 6 إنقل المؤشر للصف التالي نسخ إلى الحافظة حفظ مسح الشرط: إذا كانت قيمة متغير Multiplication أقل من 30. ستتم طباعة قيمة متغير Multiplication وسيتم نقل مؤشر وحدة تحكم العرض (Print Console) إلى الصف التالي. 6 12 18 24 وزارة التعو35 Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

العمليات الحسابية واستخدام الشرطية في الحلقات

360 لبنة تكرار حتى Repeat Until) في بعض الأحيان تريد تنفيذ مقطع برمجي حتى يكون شرط معين صحيحًا. للقيام بذلك، يمكنك استخدام لبنة تكرار حتى (Repeat Until). تتيح لك الحلقة الشرطية تشغيل المقطع البرمجي عدة مرات بينما يظل الشرط خطأ. تكرار حتى لبنة تكرار حتى ( ) هي لبنة يتم فيها التكرار طالما أن الشرط خطأ، وعندما يصبح الشرط صحيحًا، سيتوقف تنفيذ التكرار. في العديد من الحالات تريد أن يعتمد هذا الشرط على عدد المرات التي يتم فيها تنفيذ التكرار. لحساب عدد تكرارات جزء من التعليمات البرمجية، يمكنك استخدام متغير رقمي يسمى العداد (Counter). يمكنك تعريف القيمة الأولية للعداد، كما يمكنك تحديد القيمة التي تتغير من تكرار إلى آخر ، كما يمكنك برمجة الشرط الذي يتحكم في التكرار باستخدام العداد (Counter). في هذه الحالة، عندما يكون للعداد قيمة معينة، يصبح شرط حلقة تكرار حتى ( ) صحيحًا عندها يتوقف التكرار. مثال 5 العد 6 في المثال التالي ستبرمج Counter ويتم تعيينه على 0 في بداية المقطع البرمجي، وليتم زيادته بمقدار 1 في كل مرة يتم فيها تنفيذ تکرار داخل ،تکرار ، ستضيف لبنة الانتظار (wait) بقيمة زمنية مدتها 1 ثانية. وأخيرًا، سوف تستخدم لبنة أكبر من ( ) من فئة العمليات لبرمجة حالة حلقة تكرار حتى .() عندما يصبح العداد أكبر من 5 تتوقف التكرارات. الشرط: .(Counter > 5) عندما بدات مجموعة Counter تكرار حتى تكرار حتى يصبح الشرط صحيحًا. الانتظار 0 5 Counter Counter 1 من قبل 1 اضبط العداد (Counter) على 0. أضف مقدار 1 إلى قيمة Counter تأخير الوقت بمقدار ثانية واحدة وزارة التعليم Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

لبنة تكرار حتى

ستبرمج Counter ويتم تعيينه على 0 في بداية البرنامج

أثناء تنفيذ المقطع البرمجي يمكنك مراقبة متغير العداد (Counter) ليتم زيادته على التوالي من 1 إلى 5 في وحدة تحكم المراقبة .(Monitor Console) لتنفيذ المقطع البرمجي > من فئة المتغيرات ( ariables) حدد خانة الاختيار (checkbox لمتغير العداد .(Counter) > اختر أيقونة وحدة تحكم المراقبة (Monitor Console). > اضغط على بداية (Start) العرم أحداث 2 Courner Counter Counter 4 التعليقات والملاحظات شارك اينافي خطوة بداية افتح الملسب اختر ملسب ? 3 الاستشعار إنشاء متغير منطقي إنشاء قائمة 1 D إنشاء قائمة 2 المتغيرة عناصر برمجة جديدة قوائم إضافة إنشاء التعليقات التعليق نسخ إلى الحافظة أجهزة الاستشعار الماهرات 3 قيمة المتغير العداد .(Counter) box مسح Counter وزارة التعر36 Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

تنفيذ برنامج لبنة تكرار حتى

362 مثال :6 رسم مربع في المثال التالي ستبرمج روبوت الواقع الافتراضي لرسم مربع في ملعب الفن قماش Art Canvas) باستخدام حلقة تكرار حتى (repeat until) ، ومتغير إضافة 1 إلى القيمة المقابلة ستبرمج الحلقة للتكرار 4 مرات سيتم تعيين العداد في البداية إلى 0 وسيتم زيادته بمقدار 1 في كل تكرار، حتى يأخذ القيمة 4 ، وهذا هو الشرط الذي سيوقف فيه التكرارات. في حين أن قيمة العداد هي 0 و 1 و 2 و 3 ، فإن روبوت الواقع الافتراضي يتحرك إلى الأمام لمسافة تساوي قيمة المتغير مسافة_ السفر (Travel_ distance) ويجعل الانعطافات لليمين مساوية لقيمة المتغير إنعطف (Turn). يتم تعريف قيم هذين المتغيرين في بداية المقطع البرمجي. الشرط: .(Counter = 4) عندما يدك مجموعة Counter مجموعة Travel_distance مجموعة Tum 90 نقل القلم اسفل الفارطى 0 4 = Counter 400 عيّن مسافة السفر (Travel_distance) على 400. عيّن إنعطف (Turn) على 90. تحرك إلى الأمام mm Travel_distance تكرار حتى يصبح الشرط صحيحًا. انعطف يمين لمدة Tum درجة Counter من قبل 1 وزارة التعليم Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

الفن قماش

الأعداد الزوجية والفردية في بعض الأحيان تريد التمييز بين نتيجة المقطع البرمجي اعتمادًا على عدد حلقة التكرارات. إذا كان رقم التكرار عددًا فرديَّا، فأنت تبرمج نتيجة معينة. وإذا كان رقم التكرار عددًا ،زوجيًّا، فأنت تبرمج نتيجة مختلفة للقيام بذلك، يجب عليك استخدام متغير العداد (Counter) عند الشرط الذي ينهي الحلقة تكرار حتى . ( ) عندما يأخذ متغير Counter قيمة معينة يتم إنهاء المقطع البرمجي. حتى ذلك الحين، إذا كان متغير Counter عددًا فرديًا، فإن المقطع البرمجي لديه نتيجة معينة وإذا كان متغير Counter رقما زوجيًا، فإن المقطع البرمجي لديه نتيجة مختلفة. مثال 7: رسم شكل ثماني المثال التالي، برمج روبوت الواقع الافتراضي لرسم شكل ثماني في ملعب الفن قماش Art Canvas وغيّر لون أداة القلم اعتمادًا على عدد متغير .Counter. إذا كان المتغير Counter عددًا ،زوجيًا، فإنه يغير لون أداة القلم إلى الأسود، وإذا كان المتغير Counter فرديًا فإنه يغيرها إلى الأحمر لإنشاء الشرط الذي سيحدد ما إذا كانت قيمة العداد هي رقم زوجي أو فردي، ستستخدم لبنة ما تبقى من ()/((()/() remainder of للعداد مقسومة على 2. ما تبقى من تستخدم لبنة ما تبقى من ( ) / ( ( (( ) / ( ) remainder of) لقسمة القيمة الأولى على القيمة الثانية ثم عرض الباقي، ويمكنك العثور عليها في فئة العمليات (Operators). ر عند قسمة عدد فردي على 2 سيكون الباقى دائما 1 بينما لن يكون للعدد الزوجي باقي عند قسمته على 2. وزارة التعد36 Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

الأعداد الزوجية والفردية

برمج روبوت الواقع الافتراضي لرسم شكل ثماني قي ملعب الفن قمماش

364 برمج روبوت الواقع الافتراضي لرسم شكل ثماني. عندما بدأت مجموعة Counter Travel_distance مجموعة Tum إلى 45 نقل القلم أسفل الشرط: .(Counter = 8) تكرار حتى يصبح الشرط صحيحًا. تکرار f 0 8 Counter ما تبقى من Counter اضبط القلم على اللون أسود أضبط القلم على اللون احمر تحرك إلى الأمام 300 اضبط مسافة_السفر (Travel_distance) على 300. 0 2 / اضبط الانعطاف (Turn) على 45 الشرط ما تبقى من (Counter/2))=0 mm Travel distance إنعطف يمين لمدة Tum درجة Counter من قبل 1 إذا كان ما تبقى من (2/Counter) يساوي 0 فهذا صواب. إذا كان ما تبقى من (2/Counter) يساوي 0 فهذا خطأ. وزارة التعليم Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

برمج روبوت الواقع الافتراضي لرسم شكل ثماني

عارض الكود عند إنشاء مشروع يتكون من لبنات يمكنك رؤية المقطع للمشروع بلغة بايثون في نافذة عارض کود (Code Viewer). لك عارض الكود برؤية اللبنات والنصوص البرمجية في نفس الوقت، وبهذه الطريقة يساعدك على فهم طريقة ترجمة كل لبنة إلى مقطع برمجي نصي في بايثون. يسمح السليقات والملاحطات © > فتح نافذة عارض كود (Code Viewer). تا شارك انفاق البداية إخفاء نافذة عارض كود .(Code Viewer) ? VEXcode Project عارض کود 1 myVariable = 0 2 3 4 def when started1(): global myVariable 5 pass 6 7 vr_thread (when_started1) 8 الإعادة العاد التحميل تروس توضيحية نظام الدفع العطف لمواجهة ون المطلف الدورات 0 المقطع البرمجي يجب الإعلان عن المتغير داخل الدالة. الافتراضي الخاص ببايثون 90 mm 200 عارض کود 1 myVariable = 0 2345678 3. def when_started1(): global myVariable. pass vr_thread (when_started1) الصف البرمجي يوضح تشغيل روبوت الواقع الافتراضي في الملعب . المتغير الافتراضي الذي تم تعيينه على 0. الدالة الرئيسة للمقطع البرمجي VR> الكود O وزارة التع365 Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

عارض الكود

366 معاملات بايثون عند استخدام اللبنات البرمجية في بيئة فيكس كود في آر ، يمكنك تغيير معاملاتها عن طريق اختيار أحد الخيارات المختلفة المنسدلة أو تغيير الأرقام داخل المساحة الدائرية، ولكن في بايثون تستخدم الفواصل للفصل بين المعاملات المختلفة. المسافة الاتجاه Drivetrain اسم العملية. drivetrain.drive_for(FORWARD, 200, MM) الوحدة تفصل العملية عن معاملاتها بعلامة النقطة (.). يعرض الجدول التالي خمس لبنات أساسية وأوامر بلغة بايثون في بيئة فيكس كود في آر: لبنات في بيئة فيكس كود في آر تحرك إلى الأمام عند 200 إنعطف يمين المدة 90 mm اضبط سرعة القيادة إلى 50 % 10 1 أوامر بايثون في بيئة فيكس كود في آر من القائمة drivetrain.drive for (FORWARD, 200, MM). drivetrain.turn_for(RIGHT, 90, DEGREES) drivetrain.set_drive_velocity(50, PERCENT) for repeat_count in range(10): wait(1, SECONDS) وزارة التعليم Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

معاملات بايثون

قبل تجربة المثال، احذف المتغير الافتراضي من فئة المتغيرات (Variables) لمسح المقطع البرمجي الخاص بك. مثال 8: الحركة عندما بدات تحرك إلى الأمام عدد 200 إنعطف يمين لمدة 90 درجة mm myVariable able L إعادة تسمية متغير حذف المتغير "myVariable" 12345 1 def when_started1(): drivetrain.drive_for(FORWARD, 200, MM) drivetrain.turn_for(RIGHT, 90, DEGREES) vr_thread (when_started1) في هذا المثال، يمكنك أن ترى كيف تمت كتابة لبنتين أساسيتين لحركة روبوت الواقع الافتراضي بلغة بايثون في نافذة عارض كود. سيتحرك الروبوت للأمام لمسافة 200 مليمتر ثم الانعطاف 90 درجة يمينًا. وزارة التعر36 Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

قبل تجربة المثاال، احذف المتغير الافتراضي من فئة المتغيرات

مثال: الحركة

حلقة For يتم استخدام حلقة for عندما تريد تكرار مجموعة من الأوامر لعدد محدد من المرات، ويتم تحديد عدد التكرارات في معامل النطاق ( ) .(range ( )) مثال 9: تكرار الحركة عندما بدأت اضبط سرعة القيادة إلى 80 % هذا المثال، ستكرر الحلقة for الخطوات التي تم وضع مسافة بادئة لها 9 مرات. سيتحرك الروبوت بسرعة 80 %، ويتقدم للأمام مسافة 200 مليمتر، ثم يكرر ذلك 9 مرات. يجب أن تكون هناك مسافة بادئة قبل العبارات المكررة. mm 200 عدد 12345 1 def when_started1(): 3 E drivetrain.set_drive_velocity (80, PERCENT) for repeat_count in range(9): drivetrain.drive_for(FORMARD, 200, MM) wait(5, MSEC) 67 vr_thread (when_started1) 9 تحرك إلى الأمام يتم إضافة تأخير 5 مللي ثانية بشكل افتراضي عند استخدام الحلقة. حلقة While يتم استخدام حلقة while عندما لا يكون عدد التكرارات معروفًا . عندما يكون الشرط صحيحًا فإن الحلقة تتكرر ، ثم يتم فحص الشرط بعد كل تكرار. وعندما يكون الشرط خطأ يتوقف التكرار ويُنفذ الصف الذي يلي الحلقة في المقطع البرمجي. أما إذا كان الشرط خطأ من البداية فلن يتم تنفيذ عبارات الحلقة على الإطلاق. هذا المثال، ستنشئ متغيرًا باسم Counter، ويتم تعيينه على 0 في بداية المقطع البرمجي، ثم يضيف المقطع البرمجي 1 حتى تكون قيمة المتغير Counter أكبر من 5. 12345 Counter = 0 3 def when_started1(): global Counter Counter = 0 6B while not Counter > 5: 7 819 Counter = Counter + 1 wait(1, SECONDS) 9 10 vr_thread (when_started1) وزارة التعليم Ministry of Education 2024-1446 t 0 مثال 10: العد عندما ردك مجموعة Counter 5 < Counter Counter من قيل 1 الثانية 1 تكرار حتى الغير الانتظار 368

الدرس الأول: التحكم في الروبوت ( Robot Control)

مثال: تكرار الحركة

مثال: العد

لنطبق معًا تدريب 1 • قواعد اسم المتغير في فيكس كود في آر. حدد الجملة الصحيحة والجملة الخطأ فيما يلي: 1. في هذا المقطع البرمجي يجب أن يكون اسم المتغير فريدًا. .2 كل كلمة يمكن أن تكون اسم متغير. 3. قد يحتوي اسم المتغير على أحرف خاصة. .4. قد يحتوي اسم المتغير على مسافات. 5. قد يتكون اسم المتغير من مجموعة من الأحرف الكبيرة والصغيرة. صحيحة خطأ وزارة التعو36 Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

حدد الجملة الصحيحة والجملة الخطأ فيما يلي: في هذا البرنامج يجب أن يكون اسم المتغير فريداً

وزارة التعليم Ministry of Education 2024-1446 mm 300 mm تدريب 2 • اكتب رقم اللبنة البرمجية أمام الأمر الصحيح بلغة بايثون. تحرك إلى الأمام عدد عدد 300 تحرك إلى الخلف speed = 20 4 5 اضبط سرعة القيادة إلى 20 % إلى 20 مجموعة speed drivetrain.set drive velocity (20, PERCENT) drivetrain.drive_for(FORWARD, 300, MM) for repeat_count in range(20): drivetrain.drive_for(REVERSE, 300, MM) تکرار 20 1 2 3 370

الدرس الأول: التحكم في الروبوت ( Robot Control)

اكتب رقم اللبنة البرمجية أمام االأمر الصحيح بلغة بايثون

تدريب 3 بناءً على المقطع البرمجي الذي أنشأته في مثال التسارع أجر التغييرات المناسبة حتى يتباطأ الروبوت هذه المرة. > يجب أن تكون سرعة بدء الروبوت 100 تدريب 4 استخدم ساحة لعب الفن قماش، وأنشئ مقطعًا برمجيًا يرسم فيه الروبوت ثلاثة مثلثات حلزونية كما هو موضح في الصورة. > استخدم متغيرًا للتكرار. > تذكر أنه في كل مرة يرسم فيها الروبوت جانبًا جديدًا، يجب أن يكون أكبر من الجانب الذي قبله. تدريب 5 • أنشئ مقطعًا برمجيًا لتحديد ما إذا كانت نتيجة طرح متغيرين فردية أو زوجية، وبناءً على النتيجة اطبع الرسائل التالية: > العدد فردي. > العدد زوجي. وزارة التعودي Ministry of Education 2024-1446

الدرس الأول: التحكم في الروبوت ( Robot Control)

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

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

أنشي برنامجاً لتحديد ما إذا كانت نتيجة طرح متغيرين فردية أو زوجية وبناء على النتيجة اطبع الرسائل التالية: العدد فردي