गति#
परिचय#
VEX AIM कोडिंग रोबोट होलोनोमिक ड्राइवट्रेन का उपयोग करके आगे, पीछे, बाएँ, दाएँ या किसी कोण पर चल सकता है, साथ ही स्वतंत्र रूप से मुड़ भी सकता है। गति विधियाँ रोबोट की गति और मोड़, उसकी गति और उसकी x और y स्थिति को ट्रैक करने के तरीके को नियंत्रित करती हैं।

नीचे उपलब्ध विधियों की सूची दी गई है:
कार्य — रोबोट को हिलाएं और घुमाएं।
move_at— रोबोट को एक विशिष्ट कोण पर हमेशा के लिए ले जाता है।move_for— रोबोट को एक विशिष्ट दूरी के लिए एक विशिष्ट कोण पर ले जाता है।move_with_vectors— वेक्टर-आधारित x, y, और रोटेशन मानों का उपयोग करके रोबोट को स्थानांतरित करता है।turn— रोबोट को हमेशा के लिए बाएँ या दाएँ घुमाता है।turn_for— रोबोट को एक विशिष्ट संख्या में डिग्री के लिए बाएँ या दाएँ घुमाता है।turn_to— रोबोट को एक विशिष्ट दिशा की ओर मोड़ता है।stop_all_movement— रोबोट की सभी गतिविधियों को रोकता है।
म्यूटेटर्स — रोबोट की गति के मान निर्धारित करें।
set_move_velocity— रोबोट को बताता है कि कितनी तेज़ी से आगे बढ़ना है।set_turn_velocity— रोबोट को बताता है कि कितनी तेज़ी से मुड़ना है।set_xy_position— रोबोट की वर्तमान x और y स्थिति को नए मानों में बदलता है।
गेटर्स — रोबोट की स्थिति और स्थान लौटाते हैं।
get_x_position— रोबोट का वर्तमान x-निर्देशांक लौटाता है।get_y_position— रोबोट का वर्तमान y-निर्देशांक लौटाता है।is_move_active— यह बताता है कि रोबोट चल रहा है या नहीं।is_turn_active— यह बताता है कि रोबोट मुड़ रहा है या नहीं।is_stopped— यह बताता है कि रोबोट न तो चल रहा है और न ही मुड़ रहा है।
कार्रवाई#
move_at#
move_at कमांड रोबोट को एक विशिष्ट कोण पर निरंतर गतिमान रखता है। यह कोण रोबोट की वर्तमान स्थिति के सापेक्ष होता है। रोबोट तब तक गतिमान रहेगा जब तक उसे कोई अन्य क्रिया न दी जाए, जैसे कि किसी भिन्न कोण पर गति करना, मुड़ना या रुकना।
उपयोग:
robot.move_at(angle, velocity, units)
पैरामीटर |
विवरण |
|---|---|
|
रोबोट द्वारा तय किया गया कोण (डिग्री में)। यह -360 से 360 तक का पूर्णांक या दशमलव हो सकता है। |
|
यह वैकल्पिक है। |
|
वैकल्पिक। वेग इकाई: |
# Move right, then move forward and stop.
robot.move_at(90)
wait(1,SECONDS)
robot.move_at(0)
wait(1,SECONDS)
robot.stop_all_movement()
# Move right slowly, move in reverse quickly and stop.
robot.move_at(90, 25)
wait(2, SECONDS)
robot.move_at(180, 100, PERCENT)
wait(1, SECONDS)
robot.stop_all_movement()
# Move diagonally to the right and stop.
robot.move_at(45.33)
wait(1,SECONDS)
robot.stop_all_movement()
move_for#
move_for रोबोट को एक निश्चित कोण पर एक निश्चित दूरी तक ले जाता है। यह कोण रोबोट की वर्तमान स्थिति के सापेक्ष होता है। प्रोजेक्ट रोबोट के चलने के पूरा होने तक प्रतीक्षा करेगा, उसके बाद ही कोड की अगली पंक्ति चलेगी।
उपयोग:
robot.move_for(distance, angle, velocity, units, wait)
पैरामीटर |
विवरण |
|---|---|
|
रोबोट द्वारा तय की गई दूरी, मिलीमीटर (मिमी) में। यह पूर्णांक या दशमलव (फ्लोट) संख्या हो सकती है। |
|
रोबोट द्वारा तय किया गया कोण (डिग्री में)। यह -360 से 360 तक का पूर्णांक या दशमलव हो सकता है। |
|
यह वैकल्पिक है। |
|
वैकल्पिक। वेग इकाई: |
|
वैकल्पिक। |
# Move right, then move forward.
robot.move_for(50, 90)
robot.move_for(100, 0)
# Move in reverse slowly, then move forward quickly.
robot.move_for(100, 180, 25)
robot.move_for(100, 0, 100, PERCENT)
# Drive forward and blink all LEDs red.
robot.move_for(100, 0, wait=False)
robot.led.on(ALL_LEDS, RED)
wait(0.5, SECONDS)
robot.led.on(ALL_LEDS, BLACK)
wait(0.5, SECONDS)
robot.led.on(ALL_LEDS, RED)
wait(0.5, SECONDS)
robot.led.on(ALL_LEDS, BLACK)
move_with_vectors#
वेक्टर किसी वस्तु की गति और दिशा का वर्णन करने का एक तरीका है। move_with_vectors रोबोट को वेक्टर-आधारित गति का उपयोग करके गति प्रदान करता है। रोबोट एक सहज गति उत्पन्न करने के लिए आगे, दाईं ओर और घूर्णन वेग मानों को संयोजित करता है। रोबोट इस वेक्टर का उपयोग तब तक करता रहेगा जब तक उसे कोई अन्य क्रिया, जैसे कि अलग कोण पर चलना, मुड़ना या रुकना, करने का निर्देश नहीं दिया जाता।
नोट: यह विधि गति और मोड़ वेग मानों को सीधे सेट करती है, इसलिए यह set_move_velocity या set_turn_velocity का उपयोग नहीं करती है।
उपयोग:
robot.move_with_vectors(forward, rightward, rotation)
पैरामीटर |
विवरण |
|---|---|
|
रोबोट का y-अक्ष के अनुदिश वेग -100% से 100% तक। ऋणात्मक मान रोबोट को पीछे की ओर और धनात्मक मान उसे आगे की ओर ले जाते हैं। |
|
रोबोट का x-अक्ष के अनुदिश वेग -100% से 100% तक है। ऋणात्मक मान रोबोट को बाईं ओर और धनात्मक मान उसे दाईं ओर गति प्रदान करते हैं। |
|
रोबोट की घूमने की गति -100% से 100% तक होती है। ऋणात्मक मान रोबोट को वामावर्त दिशा में घुमाते हैं और धनात्मक मान इसे दक्षिणावर्त दिशा में घुमाते हैं। |
# Move at 15°
robot.move_with_vectors(48.3, 12.95, 0)
wait(2, SECONDS)
robot.stop_all_movement()
# Move at 45° while turning counterclockwise.
robot.move_with_vectors(50, 50, -30)
wait(2, SECONDS)
robot.stop_all_movement()
# Scaling movement using the controller joystick
while True:
# Move forward (and backwards) slower than axis1 input
forward = controller.axis1.position() * 0.7
# Move right (and left) faster than axis2 input
rightward = controller.axis2.position() * 1.5
robot.move_with_vectors(forward, rightward, 0)
wait(5, MSEC)
turn#
turn रोबोट को हमेशा के लिए बाएँ या दाएँ घुमाता है। रोबोट तब तक घूमता रहेगा जब तक उसे कोई और क्रिया, जैसे चलना या रुकना, करने को न कहा जाए।
उपयोग:
robot.turn(direction, velocity, units)
पैरामीटर |
विवरण |
|---|---|
|
रोबोट के मुड़ने की दिशा: |
|
यह विकल्प वैकल्पिक है। |
|
वैकल्पिक। वेग इकाई: |
# Turn left, then stop.
robot.turn(LEFT)
wait(1, SECONDS)
robot.stop_all_movement()
# Turn left quickly, turn right slowly, then stop.
robot.turn(LEFT, 80)
wait(2, SECONDS)
robot.turn(RIGHT, 20, PERCENT)
wait(3, SECONDS)
robot.stop_all_movement()
turn_for#
turn_for रोबोट को एक निश्चित संख्या में डिग्री तक बाएँ या दाएँ घुमाता है। यह घुमाव रोबोट की वर्तमान दिशा के सापेक्ष होता है। रोबोट के पूरा घूमने तक प्रोजेक्ट प्रतीक्षा करेगा, उसके बाद ही कोड की अगली पंक्ति चलेगी।
उपयोग:
robot.turn_for(direction, angle, velocity, units, wait)
पैरामीटर |
विवरण |
|---|---|
|
रोबोट के मुड़ने की दिशा: |
|
रोबोट के घूमने की डिग्री की संख्या, जो -360 से 360 डिग्री तक होती है। यह एक पूर्णांक या दशमलव (फ्लोट) संख्या हो सकती है। |
|
यह विकल्प वैकल्पिक है। |
|
वैकल्पिक। वेग इकाई: |
|
वैकल्पिक। |
# Turn left, then turn around to the right.
robot.turn_for(LEFT, 90)
robot.turn_for(RIGHT, 180)
# Turn left quickly, then turn right slowly.
robot.turn_for(LEFT, 90, 100)
robot.turn_for(RIGHT, 180, 15, PERCENT)
# Turn right and blink all LEDs blue.
robot.turn_for(RIGHT, 180, wait=False)
robot.led.on(ALL_LEDS, BLUE)
wait(0.5, SECONDS)
robot.led.off(ALL_LEDS)
wait(0.5, SECONDS)
robot.led.on(ALL_LEDS, BLUE)
wait(0.5, SECONDS)
robot.led.off(ALL_LEDS)
turn_to#
हेडिंग रोबोट की दिशा है, जिसे डिग्री में मापा जाता है। turn_to रोबोट को एक विशिष्ट हेडिंग की ओर मोड़ता है। रोबोट लक्ष्य हेडिंग तक पहुंचने के लिए सबसे छोटी दिशा में मुड़ेगा।
रोबोट की प्रारंभिक दिशा 0 डिग्री है।
अगली कोड लाइन चलने से पहले प्रोजेक्ट रोबोट के पूरी तरह से घूमने का इंतजार करेगा।
उपयोग:
robot.turn_to(heading, velocity, units, wait)
पैरामीटर |
विवरण |
|---|---|
|
रोबोट को किस दिशा में मुख करके चलना चाहिए, यह -360 से 360 डिग्री के बीच हो सकता है। |
|
यह विकल्प वैकल्पिक है। |
|
वैकल्पिक। वेग इकाई: |
|
वैकल्पिक। |
# Turn to face each cardinal directions.
robot.turn_to(90)
wait(2, SECONDS)
robot.turn_to(180)
wait(2, SECONDS)
robot.turn_to(270)
wait(2, SECONDS)
robot.turn_to(0)
# Turn to face backward slowly, then face forward quickly.
robot.turn_to(180, 25)
wait(1, SECONDS)
robot.turn_to(0, 90, PERCENT)
# Turn around quickly and blink all LEDs green.
robot.turn_to(180, 100, wait=False)
robot.led.on(ALL_LEDS, GREEN)
wait(0.5, SECONDS)
robot.led.off(ALL_LEDS)
wait(0.5, SECONDS)
robot.led.on(ALL_LEDS, GREEN)
wait(0.5, SECONDS)
robot.led.off(ALL_LEDS)
stop_all_movement#
stop_all_movement रोबोट की सभी गतिविधियों को रोक देता है।
उपयोग:
robot.stop_all_movement()
पैरामीटर |
विवरण |
|---|---|
इस विधि के कोई मानदंड नहीं हैं। |
# Turn right, then stop moving
robot.turn(RIGHT)
wait(1, SECONDS)
robot.stop_all_movement()
उत्परिवर्तक#
set_move_velocity#
set_move_velocity रोबोट को बताता है कि उसे कितनी गति से चलना है। उच्च प्रतिशत रोबोट को तेज़ गति से चलाता है और निम्न प्रतिशत रोबोट को धीमी गति से चलाता है।
प्रत्येक परियोजना की शुरुआत में रोबोट डिफ़ॉल्ट रूप से 50% वेग से चलता है।
100% की गति 200 मिलीमीटर प्रति सेकंड के बराबर होती है।
उपयोग:
robot.set_move_velocity(velocity, units)
पैरामीटर |
विवरण |
|---|---|
|
|
|
वैकल्पिक। वेग इकाई: |
# Move forward at the default velocity,
robot.set_move_velocity(50)
robot.move_for(100, 0)
wait(1, SECONDS)
# Move slower than the default velocity
robot.set_move_velocity(20)
robot.move_for(100, 0)
wait(1, SECONDS)
# Move faster than the default velocity
robot.set_move_velocity(100)
robot.move_for(100, 0)
set_turn_velocity#
set_turn_velocity रोबोट को बताता है कि उसे कितनी तेज़ी से मुड़ना है। उच्च प्रतिशत होने पर रोबोट तेज़ी से मुड़ता है और निम्न प्रतिशत होने पर रोबोट धीरे मुड़ता है।
प्रत्येक परियोजना की शुरुआत में रोबोट डिफ़ॉल्ट रूप से 50% वेग (75 डिग्री प्रति सेकंड) पर घूमता है।
उपयोग:
robot.set_turn_velocity(velocity, units)
पैरामीटर |
विवरण |
|---|---|
|
|
|
वैकल्पिक। वेग इकाई: |
# Turn around at default velocity
robot.set_turn_velocity(50)
robot.turn_for(RIGHT, 180)
wait(1, SECONDS)
# Turn around slower than the default velocity
robot.set_turn_velocity(20)
robot.turn_for(RIGHT, 180)
wait(1, SECONDS)
# Turn around faster than the default velocity
robot.set_turn_velocity(100)
robot.turn_for(RIGHT, 180)
set_xy_position#
set_xy_position कमांड रोबोट की वर्तमान x और y स्थिति को नए मानों में बदलता है।
उदाहरण के लिए, यदि रोबोट अपने आरंभिक बिंदु से दूर चला गया है, तो x और y को 0 पर सेट करने से रोबोट का वर्तमान स्थान नया 0, 0 स्थान बन जाता है। फिर रोबोट उस नए मान के आधार पर भविष्य के स्थानों को ट्रैक कर सकता है।
उपयोग:
robot.set_xy_position(x, y)
पैरामीटर |
विवरण |
|---|---|
|
रोबोट के लिए निर्धारित की जाने वाली x-स्थिति का मान मिलीमीटर में है। यह पूर्णांक या दशमलव (फ्लोट) मान हो सकता है। |
|
रोबोट के लिए निर्धारित की जाने वाली y-स्थिति का मान मिलीमीटर में है। यह पूर्णांक या दशमलव (फ्लोट) मान हो सकता है। |
# Set the robot's current position
# Move forward and print the new coordinate
robot.set_xy_position(100, 50)
robot.move_for(150, 0)
robot.screen.print("X:", robot.get_x_position())
robot.screen.next_row()
robot.screen.print("Y:", robot.get_y_position())
टिककर खेल#
get_x_position#
get_x_position रोबोट के वर्तमान x-निर्देशांक को मिलीमीटर में लौटाता है।
किसी प्रोजेक्ट की शुरुआत में, रोबोट की x-स्थिति 0 पर सेट की जाती है। रोबोट के बाएं या दाएं चलने पर x-स्थिति बदल जाती है और इसे set_xy_position विधि का उपयोग करके सेट किया जा सकता है।
उपयोग:
robot.get_x_position()
पैरामीटर |
विवरण |
|---|---|
इस विधि के कोई मानदंड नहीं हैं। |
# Print the start and end x-value
# of the robot's position after moving
robot.screen.print("Start X:", robot.get_x_position())
robot.move_for(200, 90)
robot.screen.next_row()
robot.screen.print("End X:", robot.get_x_position())
get_y_position#
get_y_position रोबोट के वर्तमान y-निर्देशांक को मिलीमीटर में लौटाता है।
किसी प्रोजेक्ट की शुरुआत में, रोबोट की y-स्थिति 0 पर सेट की जाती है। रोबोट के आगे या पीछे चलने पर y-स्थिति बदल जाती है और इसे set_xy_position विधि का उपयोग करके सेट किया जा सकता है।
उपयोग:
robot.get_y_position()
पैरामीटर |
विवरण |
|---|---|
इस विधि के कोई मानदंड नहीं हैं। |
# Print the start and end y-value
# of the robot's position after moving
robot.screen.print("Start Y:", robot.get_y_position())
robot.move_for(200, 0)
robot.screen.next_row()
robot.screen.print("End Y:", robot.get_y_position())
is_move_active#
is_move_active का पर यह बताता है कि रोबोट चल रहा है या नहीं, यह मान बूलियन रूप में दिया जाता है। इसका उपयोग रोबोट की गति के आधार पर अन्य व्यवहारों के समय को नियंत्रित करने के लिए किया जा सकता है।
True— रोबोट चल रहा है।False— रोबोट हिल नहीं रहा है।
यह विधि मोशन विधियों के साथ मिलकर काम करती है जिसमें wait पैरामीटर होता है, जैसे move_for।
उपयोग:
robot.is_move_active()
पैरामीटर |
विवरण |
|---|---|
इस विधि के कोई मानदंड नहीं हैं। |
# Blink all the LEDs when the robot is moving.
robot.move_for(200, 0, wait=False)
while robot.is_move_active():
robot.led.on(ALL_LEDS, ORANGE)
wait(0.5, SECONDS)
robot.led.on(ALL_LEDS, CYAN)
wait(0.5, SECONDS)
robot.led.off(ALL_LEDS)
is_turn_active#
is_turn_active का पर यह बताता है कि रोबोट मुड़ रहा है या नहीं, यह मान बूलियन रूप में दिया जाता है। इसका उपयोग रोबोट की गति के आधार पर अन्य व्यवहारों के समय को नियंत्रित करने के लिए किया जा सकता है।
True— रोबोट मुड़ रहा है।False— रोबोट नहीं घूम रहा है।
यह विधि मोशन विधियों के साथ मिलकर काम करती है जिनमें wait पैरामीटर होता है, जैसे turn_for और turn_to।
उपयोग:
robot.is_turn_active()
पैरामीटर |
विवरण |
|---|---|
इस विधि के कोई मानदंड नहीं हैं। |
# Blink all the LEDs while the robot is turning
robot.turn_for(RIGHT, 180, wait=False)
while robot.is_turn_active():
robot.led.on(ALL_LEDS, GREEN)
wait(0.5, SECONDS)
robot.led.on(ALL_LEDS, CYAN)
wait(0.5, SECONDS)
robot.led.off(ALL_LEDS)
is_stopped#
is_stopped बूलियन मान के रूप में यह बताता है कि रोबोट न तो चल रहा है और न ही मुड़ रहा है। इसका उपयोग रोबोट की गति के आधार पर अन्य व्यवहारों के समय को नियंत्रित करने के लिए किया जा सकता है।
True— रोबोट हिल नहीं रहा है या मुड़ नहीं रहा है।False— रोबोट चल रहा है या मुड़ रहा है।
उपयोग:
robot.is_stopped()
पैरामीटर |
विवरण |
|---|---|
इस विधि के कोई मानदंड नहीं हैं। |
# Blink all the LEDs while the robot is moving or turning
def light_show():
# Flash LEDs while the robot is moving or turning
while not robot.is_stopped():
robot.led.on(ALL_LEDS, GREEN)
wait(.5, SECONDS)
robot.led.on(ALL_LEDS, PURPLE)
wait(.5, SECONDS)
robot.led.off(ALL_LEDS)
robot.move_for(200, 0, wait=False)
light_show()
robot.turn_for(RIGHT, 180, wait=False)
light_show()