يتحكم#
مقدمة#
تتحكم كتل التحكم في VEXcode AIM في تدفق المشروع من خلال معالجة الحلقات والشروط وتأخير تشغيل الكتل.
الحلقة هي عندما يُكرر الحاسوب نفس الخطوة أو مجموعة الخطوات مرارًا وتكرارًا حتى يُعطى أمرًا بالتوقف. الشرط هو قاعدة يتحقق منها الحاسوب لتحديد الخطوة التالية. على سبيل المثال، يمكن للروبوت أن يتحرك للأمام إذا استشعر أحد المستشعرات وجود جسم ما.
فيما يلي قائمة بجميع الكتل:
wait — يوقف تشغيل الكتل لفترة زمنية محددة.
انتظر حتى — يوقف تشغيل الكتل حتى يتم استيفاء شرط محدد.
تكرار — يكرر مجموعة من الكتل عددًا محددًا من المرات.
forever — يكرر مجموعة من الكتل إلى أجل غير مسمى.
كرر حتى — يكرر مجموعة من الكتل حتى يتم استيفاء شرط معين.
while — يكرر مجموعة من الكتل طالما أن الشرط يظل صحيحًا.
if — يقوم بتشغيل مجموعة من الكتل إذا كان الشرط صحيحًا.
if / else — يقوم بتشغيل مجموعة واحدة من الكتل إذا كان الشرط صحيحًا، وإلا يقوم بتشغيل مجموعة أخرى.
if / else if / else — يقوم بتشغيل مجموعات مختلفة من الكتل اعتمادًا على شروط متعددة.
break — يخرج من حلقة repeat، forever، repeat until، أو while على الفور.
إيقاف المشروع — ينهي المشروع.
انتظر#
تقوم كتلة الانتظار بإيقاف تشغيل الكتل لفترة زمنية محددة قبل الانتقال إلى الكتلة التالية.
انتظر (1) ثانية
حدود |
وصف |
|---|---|
وقت |
مقدار الوقت الذي يجب انتظاره، كعدد صحيح موجب أو عدد عشري بالثواني. |
مثال
عند البدء
[Move forward for one second, then stop.]
تحرك [للأمام v]
انتظر (1) ثانية
أوقف جميع الحركات
انتظر حتى#
تقوم كتلة انتظر حتى المكدس بإيقاف تشغيل الكتل مؤقتًا حتى يتم استيفاء شرط محدد قبل الانتقال إلى الكتلة التالية.
انتظر حتى <>
حدود |
وصف |
|---|---|
حالة |
الشرط الذي يجب تحقيقه قبل الانتقال إلى الكتلة التالية. |
مثال
عند البدء
[Move forward until screen pressed, then stop.]
تحرك [للأمام v]
انتظر حتى <الشاشة مضغوطة؟>
أوقف جميع الحركات
يكرر#
تقوم كتلة التكرار C بتشغيل الكتل الموجودة بداخلها عددًا محددًا من المرات.
كرر [10]
fin
حدود |
وصف |
|---|---|
أوقات |
عدد صحيح يحدد عدد مرات تشغيل كتلة التكرار. |
مثال
عند البدء
[Move in a square path.]
كرر [4]
تحرك [للأمام v] لمسافة [50] [مم v] ▶
استدر [يمين v] بمقدار [90] درجة ▶
fin
للأبد#
يستمر المربع C إلى الأبد في تشغيل الكتل الموجودة بداخله مرارًا وتكرارًا دون توقف.
للأبد
fin
حدود |
وصف |
|---|---|
لا يحتوي هذا الجزء على أي معلمات. |
مثال
عند البدء
[Move in a square path forever.]
للأبد
تحرك [للأمام v] لمسافة [50] [مم v] ▶
استدر [يمين v] بمقدار [90] درجة ▶
fin
كرر ذلك حتى#
تقوم كتلة تكرار حتى C بتشغيل الكتل الموجودة بداخلها بشكل متكرر طالما لم يتم استيفاء الشرط المحدد.
كرر حتى <>
fin
حدود |
وصف |
|---|---|
حالة |
تعبير أو متغير يتم التحقق منه قبل كل حلقة تكرار. إذا كانت قيمته خطأ، تستمر الكتل في التكرار. أما إذا كانت قيمته صواب، فتتوقف الحلقة. |
مثال
عند البدء
[Repeat until the screen is pressed before turning off the LEDs.]
كرر حتى <الشاشة مضغوطة؟>
اضبط لون LED [lightall v] إلى [أحمر v]
fin
اضبط لون LED [lightall v] إلى [إيقاف v]
بينما#
تقوم كتلة while C بتشغيل الكتل الموجودة بداخلها بشكل متكرر طالما تم استيفاء الشرط المحدد.
بينما <>
fin
حدود |
وصف |
|---|---|
حالة |
تعبير أو متغير يتم التحقق منه قبل كل دورة. إذا كانت قيمته صحيحة، تستمر الكتل في التكرار. أما إذا كانت قيمته خاطئة، فتتوقف الدورة. |
مثال
عند البدء
[Keep the LEDs green while the robot is moving.]
تحرك [للأمام v] لمسافة [200] [مم v] ◀ ولا تنتظر
بينما <الحركة نشطة؟>
اضبط لون LED [lightall v] إلى [أخضر v]
fin
اضبط لون LED [lightall v] إلى [إيقاف v]
لو#
يقوم كتلة if C بتشغيل الكتل الموجودة بداخلها إذا كان الشرط صحيحًا.
إذا <> إذن
fin
حدود |
وصف |
|---|---|
حالة |
تعبير أو متغير يتم التحقق منه عند تنفيذ العبارة. إذا كانت قيمته صحيحة، فسيتم تنفيذ الكتل الموجودة داخل كتلة if. أما إذا كانت قيمته خاطئة، فسيتم تخطي الكتل. |
مثال
عند البدء
[Kick when the screen is pressed.]
للأبد
إذا <الشاشة مضغوطة؟> إذن
ركل الكائن [متوسط v]
fin
fin
إذا / وإلا#
تحدد كتلة if / else C مجموعة الكتل التي يتم تشغيلها بناءً على ما إذا كان الشرط صحيحًا أو خطأً.
إذا <> إذن
وإلا
fin
حدود |
وصف |
|---|---|
حالة |
تعبير أو متغير يتم التحقق منه عند تنفيذ العبارة. إذا كانت قيمته صحيحة، فسيتم تنفيذ الكتل الموجودة داخل كتلة if. أما إذا كانت قيمته خاطئة، فسيتم تنفيذ الكتل الموجودة داخل كتلة else. |
مثال
عند البدء
[Show one emoji when the screen is touched and a different one when it's not.]
للأبد
إذا <الشاشة مضغوطة؟> إذن
عرض [emoji_excited v] ينظر [للأمام v]
وإلا
عرض [emoji_bored v] ينظر [للأمام v]
fin
fin
إذا / وإلا إذا / وإلا#
تحدد كتلة C القابلة للتوسيع if / else if / else مجموعة الكتل التي يتم تشغيلها بناءً على الشروط:
if يقوم بتشغيل كتلة التعليمات البرمجية الخاصة به إذا تم تقييم الشرط على أنه صحيح.
يتحقق شرط else if من الشروط الإضافية فقط إذا كانت جميع الشروط السابقة خاطئة. يمكن استخدام عدة عبارات else if.
else يقوم بتشغيل كتلة التعليمات البرمجية الخاصة به فقط إذا لم يتم تقييم أي من الشروط السابقة على أنها صحيحة.
إذا <> إذن
وإلا إذا <> إذن
وإلا
fin
حدود |
وصف |
|---|---|
حالة |
تعبير أو متغير يتم التحقق منه عند تنفيذ العبارة. الشرط الأول الذي يكون صحيحًا يُنفذ مجموعة الكتل تلك. إذا كانت جميع الشروط خاطئة، فسيتم تنفيذ الكتل الموجودة داخل كتلة else. |
مثال
عند تغيير محور وحدة التحكم [1 v]
[Move the robot forward or reverse based on the position of the joystick.]
إذا <(موقع محور وحدة التحكم [1 v]) [math_greater_than v] [0]> إذن
تحرك [للأمام v]
وإلا إذا <(موقع محور وحدة التحكم [1 v]) [math_less_than v] [0]> إذن
تحرك [للخلف v]
وإلا
أوقف جميع الحركات
fin
استراحة#
تُنهي كتلة break حلقة التكرار فورًا. يمكن استخدام هذه الكتلة داخل كتل repeat وrepeat until وwhile وforever. تُفيد كتلة break عندما تحتاج حلقة التكرار إلى التوقف مبكرًا بناءً على حدثٍ ما أثناء تنفيذ المشروع، مثل الضغط على زر أو استشعار جسمٍ ما بواسطة مستشعر.
توقف
حدود |
وصف |
|---|---|
لا يحتوي هذا الجزء على أي معلمات. |
مثال
عند البدء
[Flash LEDs until the screen is pressed.]
للأبد
اضبط لون LED [lightall v] إلى [أحمر v]
انتظر [0.5] ثانية
اضبط لون LED [lightall v] إلى [أخضر v]
انتظر [0.5] ثانية
إذا <الشاشة مضغوطة؟> إذن
توقف
fin
fin
مشروع الإيقاف#
تقوم كتلة المكدس stop project بإنهاء مشروع قيد التشغيل.
أوقف المشروع
حدود |
وصف |
|---|---|
لا يحتوي هذا الجزء على أي معلمات. |
مثال
عند البدء
[Stop the project once the screen is pressed.]
للأبد
اضبط لون LED [lightall v] إلى [أحمر v]
انتظر [0.5] ثانية
اضبط لون LED [lightall v] إلى [أخضر v]
انتظر [0.5] ثانية
إذا <الشاشة مضغوطة؟> إذن
أوقف المشروع
fin
fin