هيا بنا نتعلم EV3/ المدونة الرابعة4 / البرمجة2

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

waitD

GyroD

التحدي1: قم بتركيب حساس الزوايا (قم بالرجوع إلى دليل البناء في البرنامج في النموذج رقم 6 في تعاليم البناء)  ومن ثم قم ببرمجة الروبوت للتحرك إلى الأمام بمقدار دورتين ومن ثم الإلتفاف كاملاً بزاوية 90 درجة إلى جهة اليمين.

90D

أول امر هو أمر الحركة إلى الأمام بمقدار دورتين إلى الأمام ثاني أمر هو أمر الإلتفاف إلى اليمين باستمرار حتى تصل زاوية حساس الزوايا إلى 90 كما هو موضح في الأمر الثالث , فإذا وصلت الزاوية إلى 90 نقوم بإيقاف الحركة عن طريق الأمر الرابع الذي يتم فيه إيقاف المحركين.

ملاحظة: تأكد من إيصال المحركين في المنافذ B،C وحساس الزوايا في المنفذ 2  أو قم بتغير الإعدادات في البرمجة على حسب توصيلك للمحركات والحساس.

التحدي2: في هذا التحدي قم ببرمجة الروبوت للتحرك بشكل مربع مستخدماً حساس الزوايا.

لعمل البرنامج لابد من تكرار الأوامر في البرنامج السابق 4 مرات حيث كما نعلم أن المربع مكون من 4 زوايا قائمة والبرنامج الماضي يجعل الروبوت يتحرك بشكل زاوية واحدة .
هذا يعني أنه سوف يكون هناك 16 أمر برمجي ! ولكن هذه الأوامر في الأصل 4 أوامر ويتم تكرارهم لذا هناك أمر برمجي وهو أمر التكرار يسهل علينا تكرار الأوامر بالعدد الذي نرغبه ، لنتعرف أولاً على أمر التكرار ومن ثم نقوم بعمل البرنامج .

loopD

برنامج التحرك بشكل مربع :

squre

loop interruptD

Touch&Sound

التحدي1: في هذا التحدي قم بتركيب حساس اللمس (قم بالرجوع إلى دليل البناء في البرنامج النموذج رقم 3) ومن ثم قم ببرمجة الروبوت للتحرك وعندما يصطدم بجسم ما يقوم بالرجوع إلى الخلف بمقدار 3 دورات ويصدر صوت.

touchpro

التحدي2: قم ببرمجة الروبوت بحيث يتحرك عندما يتم ضغط حساس اللمس ويتوقف عندما يتم ضغط حساس اللمس مرة أخرى.

Touch2

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

التحدي3: قم ببرجمة الروبوت لتحرك إلى الأمام بمقدار دورة واحدة, ومن ثم يتجه إلى اليمين بمقدار حركي 500 درجة  وتتكرر هذه الخطوات إلى أن يتم الضغط على حساس اللمس .

يمكن عمل هذا البرنامج بطريقتين:

الطريقة الأولى هي طريقة التكرار المشروط  حيث يكون هناك أمر تكرار مشروط بحساس اللمس حيث يقوم بتكرار الأوامر إلى أن يتم الضغط على حساس اللمس.

condition loop

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

الطريقة الثانية هي طريقة البرمجة على التوازي وباسخدام أمر قطع التكرار Loop Interrupt

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

ملاحظة : يمكن عمل هذا البرنامج بأكثر من طريقة/برمجة وهذا لايعني أنه يبرمج بهاتين الطرقيتين فقط فلكل مبرمج طريقته في البرمجة ، حيث يمكن برمجته باستخدام أمر التفرع Switch لحساس اللمس كما سنتعرف عليه لاحقاً.