Exemplo n.º 1
0
    def __init__(self, socket_map, mav_iface, send_interval, dispatcher):
        Bridge.__init__(self, socket_map, mav_iface, send_interval)
        self.dead = False
        recv_thread = Thread(target=self._receive)
        recv_thread.daemon = True
        send_thread = Thread(target=self._send)
        send_thread.daemon = True
        self.dispatcher = dispatcher
        self.auto_mode_flags = MAV_MODE_FLAG_SAFETY_ARMED \
           | MAV_MODE_FLAG_MANUAL_INPUT_ENABLED \
           | MAV_MODE_FLAG_STABILIZE_ENABLED \
           | MAV_MODE_FLAG_GUIDED_ENABLED \
           | MAV_MODE_FLAG_AUTO_ENABLED

        Bridge.__init__(self, socket_map, mav_iface, send_interval)
        self.csb = ControlSensorBits()
        self.sensors_present = self.csb.bits([
            'GYRO_3D', 'ACC_3D', 'MAG_3D', 'PRESSURE_ABS', 'GPS',
            'ANGLE_RATE_CONTROL', 'ATTITUDE_CTRL', 'YAW_CTRL', 'ALTITUDE_CTRL',
            'XY_CTRL', 'MOTOR_CTRL'
        ])
        self.sensors_enabled = self.sensors_present
        self.sensors_health = self.sensors_present
        self._load_reader = LoadReader()
        self._power_reader = PowerReader(socket_map['power_mon'])
        recv_thread.start()
        send_thread.start()
        self._load_reader.start()
        self._power_reader.start()
        self._power_reader.wait_data()