tilt_servo = ServoCommand(6, 2, start_pos=0) pan_servo = ServoCommand(7, 3, start_pos=0) encoder = RCencoder(0, rc_motors) gps = GPS(1, 6, 4) imu = IMU(2, 2, 11) communicator = Communicator(*leds, blue_led, servo, motors, pan_servo, tilt_servo, uart_bus=1) while True: communicator.read_command() if imu.recved_data(): sensor_updated = True communicator.write_packet(imu) if gps.recved_data(): sensor_updated = True communicator.write_packet(gps) pyb.LED(3).toggle() # if encoder.recved_data(): # sensor_updated = True # communicator.write_packet(encoder) # pyb.LED(2).toggle() # if sensor_updated: # sensor_updated = False # print("%0.5f, %0.6f, %0.6f, %0.6i" % ( # imu.data[0], gps.data[0], gps.data[1], encoder.data[0]), end='\r')
mcp9808, accel, gps ) command_pool = CommandPool(servo1, motor_a) communicator = Communicator(sensor_queue, command_pool) while True: if new_data: while uart.any(): gps.update(chr(uart.readchar())) new_data = False communicator.write_packet() communicator.read_command() if increase: indicator.intensity(indicator.intensity() + 5) else: indicator.intensity(indicator.intensity() - 5) if indicator.intensity() <= 0: increase = True elif indicator.intensity() >= 255: increase = False pyb.delay(5)
from turret.turret_objects import * from comm import Communicator blue_led = BlueLEDcommand(1) lidar = LidarSensor(0, uart_bus=1) communicator = Communicator(blue_led, uart_bus=3) while True: # communicator.read_command() if lidar.recved_data(): communicator.write_packet(lidar) print(lidar) # pyb.delay(1) if communicator.should_reset(): print("\nresetting") lidar.reset() communicator.write_packet(lidar) if communicator.should_stop(): print("\nstopping") lidar.stop() while not communicator.should_reset(): communicator.read_command() pyb.delay(5)
from turret.turret_objects import * from comm import Communicator blue_led = BlueLEDcommand(1) lidar = LidarSensor(0, uart_bus=1) communicator = Communicator(blue_led, uart_bus=3) while True: # communicator.read_command() if lidar.recved_data(): communicator.write_packet(lidar) print(lidar) # pyb.delay(1) if communicator.should_reset(): print("\nresetting") lidar.reset() communicator.write_packet(lidar) if communicator.should_stop(): print("\nstopping") lidar.stop() while not communicator.should_reset(): communicator.read_command() pyb.delay(5)
def reset(): print("\nResetting sensors") gps.reset() imu.reset() stepper.reset() communicator.write_packet(gps) communicator.write_packet(imu) while True: communicator.read_command() if imu.recved_data(): sensor_updated = True communicator.write_packet(imu) if gps.recved_data(): sensor_updated = True communicator.write_packet(gps) gps_received() if sensor_updated: sensor_updated = False print( "%8.5f (%s:%s:%s:%s), %7.4f, %7.4f, %7.4f; %10.6f, %10.6f, %10.6f " % ((imu.data[0], ) + imu.bno.get_calibration() + (imu.data[1], imu.data[2], imu.data[6], gps.data[0], gps.data[1], gps.data[2])), end='\r') pyb.delay(1)
communicator = Communicator(*leds, blue_led, stepper, uart_bus=4) sensor_updated = False comm_ready() pyb.delay(500) communicator.signal_stop() # micropython will be in standby at the start standby() while True: communicator.read_command() if imu.recved_data(): sensor_updated = True communicator.write_packet(imu) if gps.recved_data(): sensor_updated = True communicator.write_packet(gps) gps_received() if sensor_updated: sensor_updated = False print("%0.5f (%s:%s:%s:%s), %0.6f, %0.6f" % (( imu.data[0],) + imu.bno.get_calibration() + (gps.data[0], gps.data[1])), end='\r') pyb.delay(1) if communicator.should_reset(): print("\nresetting") gps.reset()