نظام نقل الحركة#
مقدمة#
يستخدم روبوت VEX IQ (الجيل الثاني) نظام نقل الحركة للتحرك والانعطاف. ويتكون نظام نقل الحركة من محركات وعجلات تعمل معًا لتحريك الروبوت.
A configured drivetrain can use a connected Gyro Sensor, the Brain’s built-in Inertial Sensor, or no sensor. When a sensor is used, the drivetrain uses it to help the robot move and turn precisely. At the start of each project, the drivetrain calibrates the sensor automatically. Keep the robot still for about 2 seconds during calibration, so the robot can move and turn correctly.
توجد طرق عديدة لبرمجة نظام نقل الحركة. فيما يلي قائمة بجميع مكونات نظام نقل الحركة:
الإجراءات — تحريك الروبوت وتدويره.
drive — يحرك الروبوت للأمام أو للخلف إلى الأبد.
drive for — يحرك الروبوت للأمام أو للخلف لمسافة محددة.
turn — يقوم بتدوير الروبوت إلى اليسار أو اليمين إلى الأبد.
turn for — يقوم بتدوير الروبوت إلى اليسار أو اليمين لعدد محدد من الدرجات.
استدارة إلى اتجاه — يُدير الروبوت ليواجه اتجاهًا محددًا من -359 إلى 359 درجة. سيسلك الروبوت أقصر مسار للوصول إلى الاتجاه المستهدف.
التحويل إلى الدوران — يحول الروبوت إلى دوران محدد.
توقف عن القيادة — يوقف حركة الروبوت.
الإعدادات — ضبط إعدادات نظام نقل الحركة.
ضبط سرعة القيادة — يخبر الروبوت بمدى سرعة القيادة.
ضبط سرعة الدوران — يخبر الروبوت بمدى سرعة الدوران.
set drive stoping — يحدد كيفية توقف الروبوت عن الحركة: عن طريق الكبح، أو الانزلاق، أو الثبات.
set drive timeout — يحدد عدد الثواني التي سيحاول فيها الروبوت إنهاء الحركة.
set drive heading — يغير اتجاه الروبوت الحالي إلى اتجاه جديد.
ضبط دوران المحرك — يغير دوران الروبوت الحالي إلى دوران جديد.
القيم — تحقق من حالة الحركة.
تم الانتهاء من القيادة — يشير إلى ما إذا كان الروبوت قد انتهى من الحركة.
المحرك يتحرك — يُبلغ عما إذا كان الروبوت يتحرك.
اتجاه القيادة — يُبلغ عن اتجاه الروبوت الحالي من 0 إلى 359 درجة.
دوران المحرك — يُبلغ عن الدوران الحالي للروبوت.
سرعة القيادة — يبلغ عن مدى سرعة قيادة الروبوت.
تيار القيادة — يُبلغ عن مقدار التيار الكهربائي الذي تستخدمه مجموعة نقل الحركة.
الإجراءات#
يقود#
تقوم كتلة drive بتحريك الروبوت للأمام أو للخلف بشكل مستمر. سيستمر الروبوت في الحركة حتى يتم إعطاؤه إجراءً آخر، مثل الانعطاف أو التوقف.
تشغيل [للأمام v]
حدود |
وصف |
|---|---|
اتجاه |
اتجاه حركة الروبوت: إلى الأمام أو إلى الخلف. |
مثال
عند البدء
[Drive forward, then stop.]
تشغيل [للأمام v]
انتظر (2) ثانية
إيقاف القيادة
القيادة من أجل#
تقوم كتلة drive for بتحريك الروبوت للأمام أو للخلف لمسافة محددة. سينتظر البرنامج حتى ينتهي الروبوت من الحركة قبل تشغيل الكتلة التالية في المجموعة.
تشغيل [للأمام v] لمسافة (200) [مم v] ▶
حدود |
وصف |
|---|---|
اتجاه |
اتجاه حركة الروبوت: إلى الأمام أو إلى الخلف. |
مسافة |
المسافة التي يقطعها الروبوت. يمكن أن تكون هذه المسافة عددًا صحيحًا أو عددًا عشريًا. |
وحدة |
وحدة قياس المسافة: مم (ملليمترات) أو بوصات. |
ولا تنتظر |
حدد السهم ( ▶ ) لتوسيع الكتلة لتقول ولا تنتظر، حتى يتم تشغيل الكتلة التالية في المكدس على الفور. |
مثال
عند البدء
[Drive backward 500 mm (millimeters).]
تشغيل [للخلف v] لمسافة (500) [مم v] ▶
دور#
تقوم كتلة الدوران بتدوير الروبوت يمينًا أو يسارًا بشكل دائم. سيستمر الروبوت في الدوران حتى يتم إعطاؤه إجراءً آخر، مثل القيادة أو التوقف.
استدر [يمين v]
حدود |
وصف |
|---|---|
اتجاه |
اتجاه دوران الروبوت: يسار أو يمين. |
مثال
عند البدء
[Turn right, then stop.]
استدر [يمين v]
انتظر (2) ثانية
إيقاف القيادة
استدر لـ#
تقوم كتلة turn for بتدوير الروبوت يمينًا أو يسارًا بزاوية محددة. ويكون الدوران نسبيًا لموقع الروبوت الحالي. سينتظر البرنامج حتى ينتهي الروبوت من الدوران قبل تنفيذ الكتلة التالية في المكدس.
استدر [يمين v] بمقدار (90) درجة ▶
حدود |
وصف |
|---|---|
اتجاه |
اتجاه دوران الروبوت: يسار أو يمين. |
زاوية |
عدد الدرجات التي يدور بها الروبوت. يمكن أن يكون هذا عددًا صحيحًا أو عددًا عشريًا. |
ولا تنتظر |
حدد السهم ( ▶ ) لتوسيع الكتلة لتقول ولا تنتظر، حتى يتم تشغيل الكتلة التالية في المكدس على الفور. |
مثال
عند البدء
[Turn left, then turn around to the right.]
استدر [يسار v] بمقدار (90) درجة ▶
استدر [يمين v] بمقدار (180) درجة ▶
انعطف إلى العنوان#
الاتجاه هو المسار الذي يواجهه الروبوت، ويُقاس بالدرجات. تقوم كتلة الانعطاف إلى اتجاه بتوجيه الروبوت نحو اتجاه محدد من -359 إلى 359 درجة. سيسلك الروبوت أقصر مسار للوصول إلى الاتجاه المستهدف.
اتجاه بدء الروبوت هو 0 درجة.
سينتظر المشروع حتى ينتهي الروبوت من الدوران قبل تشغيل الكتلة التالية في المكدس.
استدر نحو الاتجاه (90) درجة ▶
حدود |
وصف |
|---|---|
عنوان |
الاتجاه الذي يجب أن يواجهه الروبوت، بالدرجات. يمكن أن يكون هذا عددًا صحيحًا أو عشريًا من -359 إلى 359. |
ولا تنتظر |
حدد السهم ( ▶ ) لتوسيع الكتلة لتقول ولا تنتظر، حتى يتم تشغيل الكتلة التالية في المكدس على الفور. |
مثال
عند البدء
[Turn to face the cardinal directions.]
استدر نحو الاتجاه (90) درجة ▶
انتظر (2) ثانية
استدر نحو الاتجاه (180) درجة ▶
انتظر (2) ثانية
استدر نحو الاتجاه (270) درجة ▶
انتظر (2) ثانية
استدر نحو الاتجاه (0) درجة ▶
انتظر (2) ثانية
قم بالتدوير#
تقوم كتلة التحويل إلى دوران بتحويل الروبوت إلى دوران محدد.
الدوران هو مقدار دوران الروبوت، ويُقاس بالدرجات. في بداية المشروع، تُضبط قيمة الدوران على صفر درجة. كما يمكن ضبط الدوران باستخدام كتلة set drive rotation.
قيم الدوران مطلقة. وهذا يعني أن اتجاه الدوران يعتمد على دوران الروبوت الحالي. الدوران إلى اليمين يزيد من الدوران، والدوران إلى اليسار يقلل منه.
على سبيل المثال، إذا بدأ الروبوت من زاوية صفر درجة، ثم قمت بتدويره بزاوية 720 درجة، فسيدور إلى اليمين مرتين. وإذا قمت بعد ذلك بتدويره بزاوية 360 درجة، فسيدور إلى اليسار مرة واحدة، لأن 360 درجة أقل من 720 درجة.
استدر إلى دوران (90) درجة ▶
حدود |
وصف |
|---|---|
تناوب |
قيمة الدوران، بالدرجات، التي سيدور إليها الروبوت. يمكن أن تكون هذه القيمة عددًا صحيحًا أو عددًا عشريًا. |
ولا تنتظر |
حدد السهم ( ▶ ) لتوسيع الكتلة لتقول ولا تنتظر، حتى يتم تشغيل الكتلة التالية في المكدس على الفور. |
مثال
عند البدء
[Turn left, then spin in a circle clockwise and face right.]
استدر إلى دوران (-90) درجة ▶
انتظر (2) ثانية
استدر إلى دوران (450) درجة ▶
توقف عن القيادة#
تقوم كتلة إيقاف القيادة بإيقاف حركة الروبوت.
إيقاف القيادة
حدود |
وصف |
|---|---|
لا يحتوي هذا الجزء على أي معلمات. |
مثال
عند البدء
[Drive forward, then stop.]
تشغيل [للأمام v]
انتظر [4] ثانية
إيقاف القيادة
إعدادات#
ضبط سرعة القيادة#
تحدد كتلة ضبط سرعة القيادة سرعة قيادة الروبوت. السرعة الأعلى تجعل الروبوت يقود بسرعة أكبر، والسرعة الأقل تجعله يقود بسرعة أقل.
يبدأ كل مشروع بالروبوت وهو يقود بسرعة 50% بشكل افتراضي.
ملاحظة: السرعة العالية تجعل الروبوت يتحرك بسرعة أكبر، لكنها قد تكون أقل دقة. السرعة المنخفضة تجعل الروبوت يتحرك ببطء، لكنها قد تكون أكثر دقة.
اضبط سرعة القيادة إلى (50) [% v]
حدود |
وصف |
|---|---|
سرعة |
تتراوح سرعة القيادة من 0% إلى 100% عند استخدام %. تستخدم rpm (عدد الدورات في الدقيقة) قيمًا من 0 إلى 120. |
وحدة |
وحدة القياس: % أو rpm (دورات في الدقيقة). |
مثال
عند البدء
[Drive forward at the default velocity.]
تشغيل [للأمام v] لمسافة (100) [مم v] ▶
انتظر (1) ثانية
[Move slower.]
اضبط سرعة القيادة إلى (20) [% v]
تشغيل [للأمام v] لمسافة (100) [مم v] ▶
انتظر (1) ثانية
[Move faster.]
اضبط سرعة القيادة إلى (100) [% v]
تشغيل [للأمام v] لمسافة (100) [مم v] ▶
انتظر (1) ثانية
ضبط سرعة الدوران#
تحدد كتلة ضبط سرعة الدوران سرعة دوران الروبوت. فكلما زادت السرعة، زادت سرعة دوران الروبوت، وكلما انخفضت، قلت سرعة دورانه.
يبدأ كل مشروع بالروبوت وهو يدور بسرعة 50% بشكل افتراضي.
ملاحظة: السرعة العالية تجعل الروبوت يدور بشكل أسرع، لكنها قد تكون أقل دقة. السرعة المنخفضة تجعل الروبوت يدور بشكل أبطأ، لكنها قد تكون أكثر دقة.
اضبط سرعة الدوران إلى (50) [% v]
حدود |
وصف |
|---|---|
سرعة |
تتراوح سرعة الدوران من 0% إلى 100% عند استخدام %. أما rpm (عدد الدورات في الدقيقة) فتستخدم قيمًا من 0 إلى 120. |
وحدة |
وحدة القياس: % أو rpm (دورات في الدقيقة). |
مثال
عند البدء
[Turn at default velocity.]
استدر [يمين v] بمقدار (100) درجة ▶
انتظر (1) ثانية
[Turn slower.]
اضبط سرعة الدوران إلى (20) [% v]
استدر [يمين v] بمقدار (100) درجة ▶
انتظر (1) ثانية
[Turn faster.]
اضبط سرعة الدوران إلى (100) [% v]
استدر [يمين v] بمقدار (100) درجة ▶
انتظر (1) ثانية
مجموعة إيقاف القيادة#
تحدد كتلة المكدس set drive stop كيفية توقف الروبوت عن الحركة: عن طريق الكبح أو الانزلاق أو الثبات.
اضبط وضع إيقاف القيادة إلى [فرملة v]
حدود |
وصف |
|---|---|
سلوك التوقف |
كيفية توقف الروبوت:
|
إذا لم يتم استخدام هذه الكتلة، فسيستخدم الروبوت الفرامل عند التوقف.
مثال
عند البدء
[Drive forward and coast to a stop.]
اضبط سرعة القيادة إلى (100) [% v]
اضبط وضع إيقاف القيادة إلى [انزلاق v]
تشغيل [للأمام v]
انتظر (2) ثانية
إيقاف القيادة
ضبط مهلة محرك الأقراص#
تحدد كتلة set drive timeout عدد الثواني التي سيحاول فيها الروبوت إكمال حركة معينة. إذا لم يتمكن الروبوت من إكمالها خلال هذا الوقت، فسيتوقف عن المحاولة وينتقل إلى الكتلة التالية في المكدس. هذا يمنع الروبوت من التوقف في حركة معينة.
اضبط مهلة القيادة إلى (1) ثانية
حدود |
وصف |
|---|---|
وقت |
عدد الثواني التي يمكن للروبوت خلالها محاولة إكمال حركة معينة. يمكن أن يكون هذا العدد صحيحًا أو عشريًا. |
مثال
عند البدء
[Drive forward for 1 second, then turn.]
اضبط مهلة القيادة إلى (1) ثانية
تشغيل [للأمام v] لمسافة (25) [بوصة v] ▶
استدر [يمين v] بمقدار (90) درجة ▶
حدد اتجاه القيادة#
الاتجاه هو المسار الذي يواجهه الروبوت، ويُقاس بالدرجات. تقوم كتلة set drive heading بتغيير اتجاه الروبوت الحالي إلى قيمة اتجاه جديدة.
على سبيل المثال، إذا استدار الروبوت ليواجه اليمين، فإن ضبط اتجاهه على صفر درجة يجعل وضعية مواجهة اليمين هي الصفر الجديدة. بعد ذلك، يمكن للروبوت أن يستدير إلى أوضاع أخرى بناءً على هذا الاتجاه الجديد.
اضبط اتجاه القيادة إلى (0) درجة
حدود |
وصف |
|---|---|
عنوان |
قيمة الاتجاه، بالدرجات، التي سيتم ضبطها للروبوت. يمكن أن تكون هذه القيمة عددًا صحيحًا أو عشريًا من 0 إلى 359. |
مثال
عند البدء
[Turn to the left.]
اضبط اتجاه القيادة إلى (90) درجة
استدر نحو الاتجاه (0) درجة ▶
ضبط دوران محرك الأقراص#
الدوران هو مقدار دوران الروبوت، ويُقاس بالدرجات. في بداية المشروع، تُضبط قيمة الدوران على صفر درجة. تقوم كتلة set drive rotation بتغيير قيمة الدوران الحالية للروبوت إلى قيمة جديدة.
على سبيل المثال، إذا أكمل الروبوت دورتين كاملتين إلى اليمين، ستكون قيمة دورانه 720 درجة. ضبط قيمة الدوران على 0 درجة سيعيد ضبطها من 720 إلى 0 درجة. بعد ذلك، يمكن للروبوت الدوران وفقًا لهذه القيمة الجديدة.
اضبط دوران القيادة إلى (0) درجة
حدود |
وصف |
|---|---|
تناوب |
قيمة الدوران، بالدرجات، التي سيتم ضبطها للروبوت. يمكن أن تكون هذه القيمة عددًا صحيحًا أو عددًا عشريًا. |
مثال
عند البدء
[Spin counterclockwise two times.]
اضبط دوران القيادة إلى (720) درجة
استدر إلى دوران (0) درجة ▶
قيم#
تم الانتهاء من القيادة#
تُشير كتلة “انتهى التحرك” المنطقية إلى ما إذا كان الروبوت قد انتهى من الحركة. ويمكن استخدام هذه الكتلة للتحكم في توقيت سلوكيات أخرى بناءً على حركة الروبوت.
صحيح — انتهى الروبوت من الحركة.
خطأ — الروبوت لا يزال يتحرك.
تعمل هذه الكتلة مع كتل نظام الدفع التالية التي تحتوي على المعلمة و لا تنتظر: قيادة لمدة، انعطاف لمدة، انعطاف إلى الاتجاه، وانعطاف إلى الدوران.
<القيادة انتهت؟>
حدود |
وصف |
|---|---|
لا يحتوي هذا الجزء على أي معلمات. |
مثال
عند البدء
[Start spinning when the drive is complete.]
تشغيل [للأمام v] لمسافة (200) [مم v] ◀ ولا تنتظر
للأبد
إذا <القيادة انتهت؟> إذن
استدر [يمين v] بمقدار (360) درجة ▶
توقف
وإلا
اضبط المؤشر على الصف (1) العمود (1) على الشاشة
اطبع [Still Moving...] على الشاشة ▶
انتظر (0.1) ثانية
امسح الشاشة
محرك السيارة يتحرك#
تُبلغ كتلة “القيادة تتحرك” المنطقية عما إذا كان الروبوت يتحرك أم لا. ويمكن استخدام هذه الكتلة للتحكم في توقيت سلوكيات أخرى بناءً على حركة الروبوت.
صحيح — الروبوت يتحرك.
خطأ — الروبوت لا يتحرك.
تعمل هذه الكتلة مع كتل نظام الدفع التالية التي تحتوي على المعلمة و لا تنتظر: قيادة لمدة، انعطاف لمدة، انعطاف إلى الاتجاه، وانعطاف إلى الدوران.
<القيادة في حركة؟>
حدود |
وصف |
|---|---|
لا يحتوي هذا الجزء على أي معلمات. |
مثال
عند البدء
[Print that the robot is moving while it is still driving.]
تشغيل [للأمام v] لمسافة (200) [مم v] ◀ ولا تنتظر
بينما <القيادة في حركة؟>
اضبط المؤشر على الصف (1) العمود (1) على الشاشة
اطبع [Still Moving...] على الشاشة ▶
انتظر (0.1) ثانية
امسح الشاشة
fin
اضبط المؤشر على الصف (1) العمود (1) على الشاشة
اطبع [Done!] على الشاشة ▶
اتجاه القيادة#
الاتجاه هو المسار الذي يواجهه الروبوت، ويُقاس بالدرجات. تُبلغ وحدة drive heading عن اتجاه الروبوت الحالي من 0 إلى 359 درجة.
اتجاه بدء الروبوت هو 0 درجة.
(اتجاه القيادة بالدرجات)
حدود |
وصف |
|---|---|
لا يحتوي هذا الجزء على أي معلمات. |
مثال
عند البدء
[Display the heading after turning.]
استدر [يمين v] بمقدار (450) درجة ▶
اطبع (اتجاه القيادة بالدرجات) على الشاشة ◀ وانتقل للصف التالي
دوران المحرك#
الدوران هو مقدار دوران الروبوت، ويُقاس بالدرجات. في بداية المشروع، تُضبط قيمة الدوران على صفر درجة. تُبلغ وحدة drive rotation عن الدوران الحالي للروبوت.
يؤدي الانعطاف يمينًا إلى زيادة الدوران، بينما يؤدي الانعطاف يسارًا إلى تقليله. على سبيل المثال، سيؤدي القيام بدورتين كاملتين إلى اليمين إلى دوران مقداره 720 درجة.
(دوران القيادة بالدرجات)
حدود |
وصف |
|---|---|
لا يحتوي هذا الجزء على أي معلمات. |
مثال
عند البدء
[Display the rotation after turning.]
استدر [يمين v] بمقدار (450) درجة ▶
اطبع (دوران القيادة بالدرجات) على الشاشة ◀ وانتقل للصف التالي
سرعة القيادة#
تقوم وحدة الإبلاغ عن سرعة القيادة بالإبلاغ عن مدى سرعة قيادة الروبوت.
يمكنه عرض السرعة كنسبة مئوية من -100% إلى 100%، أو بالوحدات (دورة في الدقيقة) من -127 إلى 127. تشير القيمة الموجبة إلى أن الروبوت يتحرك للأمام، بينما تشير القيمة السالبة إلى أنه يتحرك للخلف.
(سرعة القيادة بـ [% v])
حدود |
وصف |
|---|---|
وحدة |
وحدة قياس سرعة المحرك هي: % (من -100% إلى 100%) أو rpm (دورات في الدقيقة، من -127 إلى 127). |
مثال
عند البدء
[Display the velocity as the robot is moving.]
تشغيل [للأمام v]
انتظر (1) ثانية
اطبع (سرعة القيادة بـ [% v]) على الشاشة ◀ وانتقل للصف التالي
إيقاف القيادة
تيار القيادة#
تقوم وحدة الإبلاغ عن تيار القيادة بالإبلاغ عن مقدار التيار الكهربائي الذي تستخدمه مجموعة نقل الحركة، ويتم قياسه بالأمبير من 0.0 إلى 1.2 أمبير. التيار هو كمية الكهرباء المتدفقة عبر مجموعة نقل الحركة.
تشير قيمة التيار الأعلى إلى أن نظام نقل الحركة يستهلك تيارًا كهربائيًا أكبر. قد يحدث هذا عندما يدفع الروبوت جسمًا ما أو يحاول التحرك وهو عالق.
يمكن استخدام هذا للتحقق مما إذا كان نظام نقل الحركة يعاني من صعوبة أثناء الحركة. إذا ظل التيار مرتفعًا، فقد يسخن نظام نقل الحركة أو يستهلك الطاقة بكفاءة أقل.
(تيار القيادة بـ [amps v])
حدود |
وصف |
|---|---|
لا يحتوي هذا الجزء على أي معلمات. |
مثال
عند البدء
[Display the current as the robot is moving.]
اضبط دقة الطباعة إلى [0.01 v] على الشاشة
تشغيل [للأمام v]
انتظر (1) ثانية
اطبع (تيار القيادة بـ [amps v]) على الشاشة ◀ وانتقل للصف التالي
إيقاف القيادة