def find(colour): robot.init(height=5, boxes=[["black", "blue", "white", "red"]]) j = 1 while robot.sense_color() != "": if robot.sense_color == colour: return True # Why this doesn't work? robot.lift_up() j = j + 1 return False
def make_tower(n): robot.init(width=2 * n - 1, boxes="flat") robot.drive_right() robot.lift_up() while n > 1: pickup_next() move_to_next_stack() n = n - 1 robot.gripper_to_folded() robot.lift_down()
def init(): global switchStatus switchStatus = False GPIO.setwarnings(False) robot.init() carLeds.init(app) button.init(app) pantilt.init(app) systeminfo.init(app, socketio) assistance.init(app, socketio) print "app Init done - Initialized"
def init(): global switchStatus switchStatus = False GPIO.setwarnings(False) # important to init the robot before any logic which uses it robot.init() carLeds.init(app) button.init(app) pantilt.init(app) systeminfo.init(app, socketio) assistance.init(app, socketio) print "app Init done - Initialized"
def make_tower(n): robot.init(width=2 * n - 1, boxes="flat") robot.drive_right() robot.lift_up() i = 0 while i < n - 1: pickup_next() move_to_next_stack() i = i + 1 robot.gripper_to_folded() robot.lift_down() return "Tower complete!"
#!/usr/bin/env python3 # -*- coding: utf-8 -*- """ Created on Tue Feb 27 12:26:44 2018 @author: u6614921 """ # you should open your folder in the air and then go down to close for an obj import robot robot.init() def move(): robot.lift_up() robot.drive_right() robot.drive_right() robot.gripper_to_open() robot.lift_down() robot.gripper_to_closed() robot.drive_left() robot.drive_left() robot.gripper_to_open() robot.lift_up() robot.gripper_to_closed() robot.drive_right() robot.drive_right() robot.lift_down() robot.gripper_to_open()
def test_unstack_three(): # Set up a simulation with a tower of three boxes to the right robot.init(pos=0, boxes=[[], [], [], [], ["red", "green", "blue"]]) # Test the unstacking-of-three function: unstack_tower_of_three()
def test_unstack_two(): # Set up a simulation with a tower of two boxes in the middle: robot.init(pos=0, boxes=[[], [], ["red", "green"], [], []]) # Test the unstacking-of-two function: unstack_tower_of_two()
def move_to_next_stack(): '''move robot two steps right''' robot.drive_right() robot.drive_right() def pickup_next(): '''Release the box in gripper (if any) and pick up the one below. Assumption: robot is in front of a box/stack; lift is at level 1.''' robot.gripper_to_open() robot.lift_down() robot.gripper_to_closed() robot.lift_up() # main program robot.init(width = 9, boxes = "flat") # position above first box robot.drive_right() robot.lift_up() # pick up, move right pickup_next() move_to_next_stack() # ...again pickup_next() move_to_next_stack() # ...again pickup_next()
import socketserver import json import robot as robosapien class UDPHandlerForVRController(socketserver.BaseRequestHandler): """ This class works similar to the TCP handler class, except that self.request consists of a pair of data and client socket, and since there is no connection the client address must be given explicitly when sending data back via sendto(). """ def handle(self): data = json.loads (self.request [0]) socket = self.request [1] print("{} wrote:".format (self.client_address [0])) print(data) if data ['type'] == 'action': robosapien.do (data ['action']) socket.sendto("The action " + data ['action'] + ' is sent to the robot.', self.client_address) elif data ['type'] == 'error': socket.sendto("Error " + data ['error'] + ' is accepted.', self.client_address) if __name__ == "__main__": robosapien.init () HOST, PORT = "localhost", 9999 server = socketserver.UDPServer((HOST, PORT), UDPHandlerForVRController) server.serve_forever()
import robot import unstack robot.init(pos=0, boxes=[[], [], [], [], ["red", "green", "blue"]]) def grasp_blocks_above(): robot.drive_left robot.gripper_to_open() robot.lift_up() robot.gripper_to_closed() grasp_blocks_above()