angle = -90 elif direction == 'r': angle = 90 elif direction == 'f': angle = 0 elif direction == 'b': angle = 180 elif direction == 'q': break else: fail = True if not fail: values = gb.createValue("targetAngle", angle) values += gb.createValue("targetDistance", distance_increment) gb.sendPUTcommand(gnbot_addresses[0], values) scan_data = [] time.sleep(0.1) done = False robot_angle -= angle robot_X += np.cos(robot_angle*np.pi/180.)*distance_increment robot_Y += np.sin(robot_angle*np.pi/180.)*distance_increment while not done: time.sleep(0.5) obstacles = [] for (IMUyaw, IRdistanceCM) in scan_data:
#!/usr/bin/python import time from GNBot.GNBot import GNBot gnbot_addresses = [] def gnbot_received_callback(address, received_data): global gb, gnbot_addresses if not address in gnbot_addresses: print("NEW GNBOT ADDED! Address: " + repr(address)) gnbot_addresses.append(address) else: print("Received packet from: " + repr(address)) print(received_data) gb = GNBot(gnbot_received_callback, '/dev/ttyUSB0', 9600) print("Waiting for packets...") while 1: for address in gnbot_addresses: values = gb.createValue("motorL", 10) values += gb.createValue("motorR", 10) values += gb.createValue("delay", 2000) values += gb.createValue("motorL", 0) values += gb.createValue("motorR", 0) gb.sendPUTcommand(address, values) time.sleep(5)
import time from GNBot.GNBot import GNBot gnbot_addresses = [] def gnbot_received_callback(address, received_data): global gb, gnbot_addresses if not address in gnbot_addresses: print("NEW GNBOT ADDED! Address: " + repr(address)) gnbot_addresses.append(address) else: print("Received packet from: " + repr(address)) print(received_data) gb = GNBot(gnbot_received_callback, '/dev/ttyUSB0', 9600) print("Waiting for packets...") while 1: for address in gnbot_addresses: values = gb.createValue("motorL", 10) values += gb.createValue("motorR", 10) values += gb.createValue("delay", 2000) values += gb.createValue("motorL", 0) values += gb.createValue("motorR", 0) gb.sendPUTcommand(address, values) time.sleep(5)