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)