नियंत्रण#

परिचय#

पायथन में कंट्रोल आपको रोबोट को यह बताने की सुविधा देता है कि कब प्रतीक्षा करनी है, कब क्रियाओं को दोहराना है, निर्णय कैसे लेने हैं और कब प्रोजेक्ट को समाप्त करना है।

नीचे उपलब्ध नियंत्रणों की सूची दी गई है, जिसमें विधियाँ और मुख्य पायथन कीवर्ड शामिल हैं:

  • wait – दिए गए समय के लिए प्रोजेक्ट को रोक देता है।

  • for – अनुक्रम में प्रत्येक आइटम के लिए कोड दोहराता है।

  • if – यदि कोई शर्त सही है तो कोड चलाता है।

  • if/else – एक शर्त के आधार पर अलग-अलग कोड चलाता है।

  • if/elif/else – क्रम में कई शर्तों की जाँच करता है।

  • while – जब तक कोई शर्त सही है तब तक कोड दोहराता है।

  • break – लूप से तुरंत बाहर निकलता है।

  • program_stop – चल रहे प्रोग्राम को समाप्त करता है।

  • pass – प्लेसहोल्डर का उपयोग तब किया जाता है जब किसी कार्रवाई की आवश्यकता नहीं होती है।

इंतज़ार#

wait कोड की अगली पंक्ति पर जाने से पहले एक निश्चित समय के लिए रुकता है।

Usage:
wait(time, units)

पैरामीटर

विवरण

time

प्रतीक्षा करने का समय, धनात्मक पूर्ण संख्या या दशमलव के रूप में।

units

प्रतीक्षा समय को दर्शाने वाली इकाई: MSEC (डिफ़ॉल्ट) – मिलीसेकंड, या SECONDS

# Move the arm to the desired position and then blink the signal tower
arm.move_to(40, 140, 210, False)
wait(1, SECONDS)
signal_tower.set_color(SignalTower.BLUE, SignalTower.BLINK)

के लिए#

for क्रियाओं के एक सेट को एक विशिष्ट संख्या में दोहराता है। for का उपयोग सूचियों, टुपल्स, शब्दकोशों, सेटों, स्ट्रिंग्स में आइटम के माध्यम से लूप करने के लिए या range के साथ लूप की एक निर्दिष्ट मात्रा के लिए किया जा सकता है।

उपयोग:

for value in expression_list:
    pass

अवयव

विवरण

value

एक अस्थायी चर जो पुनरावृति में वर्तमान तत्व को संग्रहीत करता है।

expression_list

लूप में शामिल किए जा रहे तत्वों का संग्रह (जैसे, सूची, स्ट्रिंग, रेंज)।

# Move the arm 4 times by 100 millimeters on the y axis
for index in range(4):
    arm.move_inc(0, 100, 0)

अगर#

if इंडेंटेड कोड ब्लॉक चलाता है यदि शर्त True.

उपयोग:

if condition:
    pass

अवयव

विवरण

condition

एक एक्सप्रेशन या वेरिएबल जिसकी जाँच स्टेटमेंट चलने पर की जाती है। यदि यह Trueहै, तो if ब्लॉक के अंदर का कोड निष्पादित होता है; यदि यह Falseहै, तो ब्लॉक को छोड़ दिया जाता है।

# Display the time until the move is completed
arm.move_to(-100, 200, 100, False)
while True:
    print("\033[2J")
    print(brain.timer_time(SECONDS))
    wait(50, MSEC)
    if arm.is_done():
        brain.timer_reset()

यदि/अन्यथा#

if और else यह निर्धारित करें कि कोड का कौन सा इंडेंटेड ब्लॉक चलता है, इस आधार पर कि शर्त True है या False।

उपयोग:

if condition:
    pass
else:
    pass

अवयव

विवरण

condition

एक एक्सप्रेशन या वेरिएबल जिसकी जाँच स्टेटमेंट चलने पर की जाती है। यदि यह Trueहै, तो if ब्लॉक के अंदर का कोड चलता है; यदि यह Falseहै, तो else ब्लॉक के अंदर का कोड चलता है।

# Display the time until the move is completed
arm.move_to(-100, 200, 100, False)
while True:
    if arm.is_done():
        brain.timer_reset()
    else:
        print("\033[2J")
        print(brain.timer_time(SECONDS))
    wait(50, MSEC)

यदि/यदि/अन्यथा#

if/elif/else संरचना शर्तों के आधार पर यह चयन करती है कि कोड का कौन सा इंडेंटेड ब्लॉक चलेगा:

  • if अपने ब्लॉक को चलाता है यदि शर्त True है।

  • elif अतिरिक्त शर्तों की जाँच केवल तभी करता है जब पिछली सभी शर्तें False. एकाधिक elif कथनों का उपयोग किया जा सकता है।

  • else अपने ब्लॉक को तभी चलाता है जब पिछली कोई भी शर्त सही न हो True.

उपयोग:

if condition:
    pass
elif condition:
    pass
else:
    pass

अवयव

विवरण

condition

An expression or variable that is checked when the statement runs. The first condition that is True determines which block executes; if none are True, the else block runs.

# Change the signal tower light if arm can reach to the desired position
while True:
    if arm.can_arm_reach_to(200, 200, 200):
        signal_tower.set_color(SignalTower.BLUE, SignalTower.BLINK)
    elif arm.can_arm_reach_to(300, 300, 300):
        signal_tower.set_color(SignalTower.GREEN, SignalTower.BLINK)
    else:
        signal_tower.set_color(SignalTower.ALL, SignalTower.OFF)
    wait(50, MSEC)

जबकि#

while तब तक कोड को बार-बार चलाता है जब तक कि शर्त Trueबनी रहती है। इसे True शर्त के रूप में उपयोग करके “हमेशा” के रूप में भी इस्तेमाल किया जा सकता है, या not शर्त में जोड़कर “तब तक प्रतीक्षा करें” के रूप में भी इस्तेमाल किया जा सकता है, जैसा कि नीचे दिए गए उदाहरणों में दिखाया गया है।

उपयोग:

while condition:
    pass

अवयव

विवरण

condition

एक एक्सप्रेशन या वेरिएबल जिसकी जाँच प्रत्येक पुनरावृति से पहले की जाती है। यदि यह Trueहै, तो लूप जारी रहता है; यदि यह Falseहै, तो लूप रुक जाता है।

# Display the time until the move is completed
arm.move_to(-100, 200, 100, False)
while True:
    if arm.is_done():
        break
    else:
        print("\033[2J")
        print(brain.timer_time(SECONDS))
    wait(50, MSEC)

# Blink blue light until the move is completed
signal_tower.set_color(SignalTower.BLUE, SignalTower.BLINK)
arm.move_to(-100, 200, 100, False)
while not arm.is_done():
    wait(0.2, SECONDS)
signal_tower.set_color(SignalTower.BLUE, SignalTower.ON)

तोड़ना#

break लूप से तुरंत बाहर निकल जाता है। break का उपयोग उन लूपों को छोड़ने के लिए किया जा सकता है जो अन्यथा हमेशा चलते रहते।

# Display the time until the move is completed
arm.move_to(-100, 200, 100, False)
while True:
    if arm.is_done():
        break
    else:
        print("\033[2J")
        print(brain.timer_time(SECONDS))
    wait(50, MSEC)

प्रोग्राम_स्टॉप#

program_stop एक चल रहे प्रोजेक्ट को समाप्त करता है।

Usage:
brain.program_stop()

पैरामीटर

विवरण

इस विधि के कोई मानदंड नहीं हैं।

# Stop the project until the move is completed
arm.move_to(-100, 200, 100, False)
while True:
    if arm.is_done():
        break
    else:
        print("\033[2J")
        print(brain.timer_time(SECONDS))
    wait(50, MSEC)
brain.program_stop()

उत्तीर्ण#

pass भविष्य के कोड के लिए एक प्लेसहोल्डर है और इसका उपयोग खाली लूप, सशर्त कथनों और फ़ंक्शन में त्रुटियों से बचने के लिए किया जा सकता है।

if condition:
    pass

def function():
    pass