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)