नियंत्रक#
परिचय#
VEX AIM वन स्टिक कंट्रोलर में चार बटन और एक जॉयस्टिक है। जॉयस्टिक को दो अक्षों पर घुमाया जा सकता है और इसे बटन की तरह दबाया भी जा सकता है।
कंट्रोलर विधियों का उपयोग बटन दबाने की जांच करने, जॉयस्टिक की गति को पढ़ने, कनेक्शन और बैटरी की स्थिति की जांच करने या कंट्रोलर इवेंट होने पर फ़ंक्शन चलाने के लिए किया जा सकता है।
नीचे सभी विधियों की सूची दी गई है:
गेटर्स — बटन, जॉयस्टिक, कनेक्शन और बैटरी की स्थिति पढ़ें।
.pressing— यह बताता है कि कोई निर्दिष्ट बटन दबाया जा रहा है या नहीं।.position— निर्दिष्ट अक्ष के साथ जॉयस्टिक की स्थिति लौटाता है।is_connected— लौटाता है कि नियंत्रक जुड़ा हुआ है या नहीं।get_battery_level— नियंत्रक का बैटरी स्तर लौटाता है।
कॉलबैक — कंट्रोलर इनपुट में परिवर्तन होने पर फ़ंक्शन चलाएँ।
टिककर खेल#
.pressing#
.pressing यह बताता है कि कंट्रोलर पर कोई विशिष्ट बटन वर्तमान में दबाया जा रहा है या नहीं। इस विधि को किसी विशिष्ट बटन ऑब्जेक्ट पर कॉल किया जाना चाहिए, जैसे कि controller.button_up.
True— निर्दिष्ट बटन दबाया जा रहा है।False— निर्दिष्ट बटन दबाया नहीं जा रहा है।
उपयोग:
इस विधि के साथ उपलब्ध पांच बटन ऑब्जेक्ट में से किसी एक का उपयोग किया जा सकता है:
बटन |
आज्ञा |
|---|---|
|
|
|
|
|
|
|
|
|
|
पैरामीटर |
विवरण |
|---|---|
इस विधि के कोई मानदंड नहीं हैं। |
# Move forward while the Up button is being pressed
while True:
if controller.button_up.pressing():
robot.move_at(0)
else:
robot.stop_all_movement()
wait(20, MSEC)
.position#
.position जॉयस्टिक अक्ष की स्थिति को -100 से 100 तक की संख्या के रूप में लौटाता है।
इस विधि को किसी विशिष्ट अक्ष ऑब्जेक्ट पर कॉल किया जाना चाहिए, जैसे कि controller.axis1।
उपयोग:
इस विधि के साथ उपलब्ध दो अक्ष वस्तुओं में से किसी एक का उपयोग किया जा सकता है:
अक्ष |
आज्ञा |
|---|---|
|
|
|
|
पैरामीटर |
विवरण |
|---|---|
इस विधि के कोई मानदंड नहीं हैं। |
# Move forward when the joystick is moved up
while True:
if controller.axis1.position() > 0:
robot.move_at(0)
else:
robot.stop_all_movement()
wait(20, MSEC)
is_connected#
is_connected यह बताता है कि नियंत्रक कनेक्टेड है या नहीं।
True— नियंत्रक जुड़ा हुआ है।False— नियंत्रक कनेक्टेड नहीं है।
Usage:
controller.is_connected()
पैरामीटर |
विवरण |
|---|---|
इस विधि के कोई मानदंड नहीं हैं। |
# Stop the robot if the controller disconnects
robot.move_at(0)
while True:
if not controller.is_connected():
robot.stop_all_movement()
wait(100, MSEC)
get_battery_level#
get_battery_level नियंत्रक के बैटरी स्तर को 0 से 100 तक की संख्या के रूप में लौटाता है।
Usage:
controller.get_battery_level()
पैरामीटर |
विवरण |
|---|---|
इस विधि के कोई मानदंड नहीं हैं। |
# Display the controller's battery level
robot.screen.print(controller.get_battery_level())
कॉलबैक#
.pressed#
.pressed निर्दिष्ट बटन दबाए जाने पर एक फ़ंक्शन चलाता है। एक बार उपयोग हो जाने के बाद, यह फ़ंक्शन हर बार उस बटन को दबाए जाने पर स्वचालित रूप से चलेगा।
उपयोग:
इस विधि के साथ उपलब्ध पांच बटन ऑब्जेक्ट में से किसी एक का उपयोग किया जा सकता है:
बटन |
आज्ञा |
|---|---|
|
|
|
|
|
|
|
|
|
|
पैरामीटर |
विवरण |
|---|---|
|
निर्दिष्ट बटन दबाए जाने पर प्रत्येक बार चलाने के लिए पहले से परिभाषित फ़ंक्शन। |
|
वैकल्पिक। कॉलबैक फ़ंक्शन को पास करने के लिए तर्क युक्त एक टपल। अधिक जानकारी के लिए पैरामीटर के साथ इवेंट का उपयोग करना देखें। |
# Kick hard when the Up button is pressed
def kick_object():
robot.kicker.kick(HARD)
controller.button_up.pressed(kick_object)
.released#
.released निर्दिष्ट बटन के रिलीज़ होने पर एक फ़ंक्शन चलाता है। एक बार इसका उपयोग हो जाने के बाद, यह फ़ंक्शन हर बार उस बटन के रिलीज़ होने पर स्वचालित रूप से चलेगा।
उपयोग:
इस विधि के साथ उपलब्ध पांच बटन ऑब्जेक्ट में से किसी एक का उपयोग किया जा सकता है:
बटन |
आज्ञा |
|---|---|
|
|
|
|
|
|
|
|
|
|
पैरामीटर |
विवरण |
|---|---|
|
निर्दिष्ट बटन जारी होने पर प्रत्येक बार चलाने के लिए पहले से परिभाषित फ़ंक्शन। |
|
वैकल्पिक। कॉलबैक फ़ंक्शन को पास करने के लिए तर्क युक्त एक टपल। अधिक जानकारी के लिए पैरामीटर के साथ इवेंट का उपयोग करना देखें। |
# Clear the screen after the Up button is released
def clear_screen():
robot.screen.clear_screen()
controller.button_up.released(clear_screen)
robot.screen.print("Press Up, then")
robot.screen.next_row()
robot.screen.print("Release Up!")
.changed#
.changed निर्दिष्ट अक्ष के अनुदिश जॉयस्टिक की स्थिति में परिवर्तन होने पर एक फ़ंक्शन चलाता है। एक बार उपयोग हो जाने के बाद, जॉयस्टिक की स्थिति में उस अक्ष के अनुदिश परिवर्तन होने पर यह फ़ंक्शन स्वचालित रूप से चलेगा।
उपयोग:
इस विधि के साथ उपलब्ध दो अक्ष वस्तुओं में से किसी एक का उपयोग किया जा सकता है:
अक्ष |
आज्ञा |
|---|---|
|
|
|
|
पैरामीटर |
विवरण |
|---|---|
|
पहले से परिभाषित फ़ंक्शन जो प्रत्येक बार जॉयस्टिक की स्थिति निर्दिष्ट अक्ष के साथ बदलती है, तब चलता है। |
|
वैकल्पिक। कॉलबैक फ़ंक्शन को पास करने के लिए तर्क युक्त एक टपल। अधिक जानकारी के लिए पैरामीटर के साथ इवेंट का उपयोग करना देखें। |
# Show an emoji when the joystick moves up or down
def move_joystick():
robot.screen.show_emoji(CONFUSED)
controller.axis1.changed(move_joystick)