How The Test Script Works

How cyber_bot_gripper_forward_object Works

After importing the cyberbot module, the script goes into an endless while True: loop that monitors the tilt micro:bit module’s B button.

# cyber_bot_gripper_forward_object

from cyberbot import *

display.show(Image.ARROW_E)

while True:

 

If the B button was pressed, the cyber:bot starts by rolling forward for ½ a second, then stops.  The routine is appended with a sleep(1000) call to make sure the cyber:bot has completely come to rest.  Once at full stop, the script uses bot(16).servo_angle(30) to close the Gripper.  It is followed by sleep(1500) to give the Gripper paddles time to close and lift, and partially to make a slight pause between picking up the object and starting to move.

    if button_b.was_pressed():
        
        display.clear()

        bot(16).servo_angle(150)    # lower & open gripper
        sleep(1500)

        bot(18).servo_speed(130)    # Forward 0.5 s
        bot(19).servo_speed(-130)
        sleep(500)
        bot(18).servo_speed(None)
        bot(19).servo_speed(None)
        sleep(1000)

        bot(16).servo_angle(30)     # close gripper & lift
        sleep(1500)

 

After lifting the object, this part of the script makes the cyber:bot roll forward for 1.25 s.  Then, it lowers and opens the Gripper paddles, setting down the object.

        bot(18).servo_speed(130)    # Forward 1.25 s
        bot(19).servo_speed(-130)
        sleep(1250)
        bot(18).servo_speed(None)
        bot(19).servo_speed(None)
        sleep(1000)

        bot(16).servo_angle(150)    # lower & open gripper
        sleep(1500)

 

Finally, it backs up for 0.5 s so that the object is no longer between the Gripper paddles.

        bot(18).servo_speed(-130)    # Backward 0.5 s
        bot(19).servo_speed(130)
        sleep(500)
        bot(18).servo_speed(None)
        bot(19).servo_speed(None)
        
        display.show(Image.ARROW_E)