def __init__(self): MicroServerComs.__init__(self, "TurnRateComputed") self._raw_heading_rate = list() self.last_heading = None self.last_time = None self.filter_coefficient = .2 self.turn_rate_computed = 0.0
def __init__(self, conf_mult=0.01): MicroServerComs.__init__(self, "Altitude") self.altitude = None self.gps_altitude = None self.altitude_confidence = 0.0 # Default 1 degree per minute self.confidence_multiplier = conf_mult
def __init__(self, conf_mult=0.1): MicroServerComs.__init__(self, "MagneticDeclination") self.gps_lat = None self.gps_lng = None self.gps_altitude = None self.last_time = 0 self.magnetic_declination = None
def __init__(self, pubsub_cfg): self.temperature = None MicroServerComs.__init__(self, "RawTemperatureSensors", channel='temperaturesensors', config=pubsub_cfg) SampleCounter.__init__(self, 10)
def __init__(self, starting_port, config_file=None): if config_file is not None: with open(config_file, 'r') as yml: cfg = yaml.load(yml, Loader=yaml.SafeLoader) yml.close() assign_all_ports(cfg, starting_port) else: cfg = None self.pubsub_config = cfg MicroServerComs.__init__(self, "Display", config=cfg, timeout=0) self._system_command = SystemCommand(cfg) self.altitude = None self.airspeed = None self.tas = None self.heading = None self.roll = None self.pitch = None self.yaw = None self.climb_rate = None self.turn_rate = None self.gps_utc = None self.gps_lat = None self.gps_lng = None self.gps_ground_speed = None self.gps_ground_track = None self.ground_vector_confidence = None self.magnetic_declination = None self.update_period = 1.0 / 30.0 self.callback = None
def __init__(self, cfg=None): self.command = None self.args = None MicroServerComs.__init__(self, "SystemCommand", channel='systemcommand', config=cfg)
def __init__(self, pubsub_cfg): self.static_pressure = None self.timestamp = None MicroServerComs.__init__(self, "RawPressureSensors", channel='pressuresensors', config=pubsub_cfg) SampleCounter.__init__(self, 10)
def __init__(self, input_config, output_config): MicroServerComs.__init__(self, "AdmCmdDistributor", config=output_config) assert(isinstance(input_config,list)) self.outputs = list() for ic in input_config: self.outputs.append(MicroServerComs("AdminCommand", channel="admincommand", config=ic))
def __init__(self): MicroServerComs.__init__(self, "HeadingTasEstimate") self.wind_heading = 0 self.wind_speed = 0 self.gps_ground_track = None self.gps_ground_speed = None self.estimated_tas = None self.estimated_heading_true = None
def __init__(self, airspeed_config): MicroServerComs.__init__(self, "AirspeedComputed") self.static_pressure = None self.pitot_pressure = None self.airspeed_computed = None self.ascurve = None if isinstance(airspeed_config, dict): self.ascurve = airspeed_config['airspeed_pressure_curve']
def __init__(self, cor_rate=1.0, conf_mult=1.0): MicroServerComs.__init__(self, "RollRate") self.roll_rate = None self.roll_rate_estimate = None self.flight_mode = Globals.FLIGHT_MODE_GROUND self.roll_rate_confidence = 0.0 # Default 1 degree per minute self.confidence_multiplier = conf_mult
def __init__(self, pubsub_cfg): self.pitot = None self.timestamp = None MicroServerComs.__init__(self, "RawPitotSensor", channel='pitotsensor', config=pubsub_cfg) SampleCounter.__init__(self, 10)
def __init__(self, conf_mult=1.0): MicroServerComs.__init__(self, "GroundVector") self.gps_lat = None self.gps_lng = None self.gps_ground_speed = None self.gps_ground_track = None self.gps_signal_quality = None self.confidence_multiplier = conf_mult
def __init__(self, pressure_calibration): MicroServerComs.__init__(self, "PressureFactors") self.known_altitude = None self.static_pressure = None self.sea_level_pressure = None self.temperature = None self.static_pressure = None self.standard_sea_level_temp = None self.pressure_calibration = pressure_calibration
def __init__(self, conf_mult=0.05): MicroServerComs.__init__(self, "Airspeed") self.airspeed = None self.airspeed_estimate = None self.airspeed_computed = None self.airspeed_is_estimated = True self.airspeed_confidence = 0.0 # Default 1 degree per minute self.confidence_multiplier = conf_mult
def __init__(self, conf_mult=0.01): MicroServerComs.__init__(self, "ClimbRate") self.last_time = None self.last_altitude = None self.climb_rate = None self.climb_rate_estimate = None self._raw_alt_rate = list() self.climb_rate_confidence = 0.0 # Default 1 degree per minute self.confidence_multiplier = conf_mult
def __init__(self, pubsub_cfg): self.a_x = None self.a_y = None self.a_z = None self.timestamp = None MicroServerComs.__init__(self, "RawAccelerometers", channel='accelerometers', config=pubsub_cfg) SampleCounter.__init__(self)
def __init__(self, conf_mult=0.1): MicroServerComs.__init__(self, "Heading") self.heading = None self.estimated_heading_true = None self.magnetic_variation = None self.flight_mode = Globals.FLIGHT_MODE_GROUND self.heading_confidence = 0.0 self.gps_magnetic_variation = 0 # Default 1 degree per minute self.confidence_multiplier = conf_mult
def __init__(self, pubsub_cfg): self.m_x = None self.m_y = None self.m_z = None self.samples = [list(), list(), list()] self.timestamp = None MicroServerComs.__init__(self, "RawMagneticSensors", channel='magneticsensors', config=pubsub_cfg) SampleCounter.__init__(self)
def __init__(self): MicroServerComs.__init__(self, "WindEstimate") self.airspeed_is_estimated = False self.winds_aloft_reports = dict() self.gps_ground_track = None self.gps_ground_speed = None self.airspeed = None self.true_airspeed = None self.cas2tas = None self.heading = None self.wind_heading = 0 self.wind_speed = 0
def __init__(self, airspeed_config): MicroServerComs.__init__(self, "AirspeedComputed") self.pitot = None self.airspeed_computed = None self.intercept = None self.A = None self.in_curve_fitting = False if isinstance(airspeed_config,dict): self.rais_id = airspeed_config['rais_id'] if 'intercept' in airspeed_config: self.intercept = airspeed_config['intercept'] self.A = airspeed_config['A'] else: self.compute_curve()
def __init__(self, pubsub_cfg): self.gps_utc = None self.gps_lat = None self.gps_lng = None self.gps_altitude = None self.gps_ground_speed = None self.gps_ground_track = None self.gps_signal_quality = None self.HaveNewPosition = False self.enable_printing = False MicroServerComs.__init__(self, "GPSFeed", channel='gpsfeed', config=pubsub_cfg)
def __init__(self, pubsub_cfg): self.r_x = None self.r_y = None self.r_z = None self.cal_collection_count = 0 self.current_bias = [0.0, 0.0, 0.0] self.samples = [list(), list(), list()] self.timestamp = None self.print_count = 0 MicroServerComs.__init__(self, "RawRotationSensors", channel='rotationsensors', config=pubsub_cfg) SampleCounter.__init__(self)
def __init__(self, data_name, dcfg, tm=time.time()): self.mock_period = 0 self.cur_seq = 0 self.cur_period = 0 self.channel = data_name self.mock_period = dcfg['period'] self.next_time = tm + self.mock_period self.function = dcfg['function'] self.sequences = dcfg['sequences'] MicroServerComs.__init__(self, self.function, channel=self.channel) print("MockRawData init complete. pub = %s, output values = %s" % (self.pubchannel, self.output_values))
def __init__(self, command_channel, config, pubsub_cfg): self._mainCmd = command_channel self._config = config self._sensors = dict() sensor_chnum = 0 self._accelerometers = Accelerometers(pubsub_cfg) self._rotation = Rotation(pubsub_cfg) self._magnetic = Magnetic(pubsub_cfg) self._pressure = Pressure(pubsub_cfg) self._temperature = Temperature(pubsub_cfg) self._gps = GPS(pubsub_cfg) self._calibrations = dict() for config_term, cfg in self._config.items(): if config_term.startswith('cal'): self._calibrations.update(cfg) elif cfg[0].startswith('sensor'): function = cfg[1] if cfg[0] == 'sensor_digital': resp = self._mainCmd.sendCmd("setup_digital_sensor", [sensor_chnum] + cfg[1:]) function = 'd' elif cfg[0] == 'sensor_analog': resp = self._mainCmd.sendCmd("setup_analog_sensor", [sensor_chnum] + cfg[1:]) function = 'n' elif cfg[0] == 'sensor_i2c': resp = self._mainCmd.sendCmd("setup_i2c_sensor", [sensor_chnum] + cfg[1:]) elif cfg[0] == 'sensor_spi': resp = self._mainCmd.sendCmd("setup_spi_sensor", [sensor_chnum] + cfg[1:]) elif cfg[0] == 'sensor_serial': resp = self._mainCmd.sendCmd("setup_serial_sensor", [sensor_chnum] + cfg[1:]) else: raise RuntimeError("Unsupported sensor type: %s" % cfg[0]) if resp is not None: for r in resp: self.ProcessResponse(r) self._sensors[sensor_chnum] = function sensor_chnum += 1 MicroServerComs.__init__(self, "ControlSlave", config=pubsub_cfg)
def pub_channel (self, channel): if not channel in self.outputs: self.outputs[channel] = MicroServerComs(channel, config=self.config) o = self.outputs[channel] ts_name = channel + '_updated' for vname in o.output_values: invname = vname if 'timestamp' == vname: invname = ts_name setattr (o, vname, getattr(self, invname)) o.publish()
def __init__(self): MicroServerComs.__init__(self, "Display") self.gps_magnetic_variation = None self.altitude = None self.airspeed = None self.heading = None self.roll = None self.pitch = None self.yaw = None self.climb_rate = None self.turn_rate = None self.gps_utc = None self.gps_lat = None self.gps_lng = None self.gps_ground_speed = None self.gps_ground_track = None self.gps_signal_quality = None self.gps_magnetic_variation = None self.display_window = StartDisplayWindow() self.update_period = 1.0 / 30.0 self.next_update_time = time.time() + self.update_period
def __init__(self, pubsub_cfg=None): MicroServerComs.__init__(self, "Autopilot", config=pubsub_cfg) self.magnetic_variation = None self._known_altitude = KnownAltitude() self._flight_mode = FlightModeSource() self._wind_report = WindsAloftReport() self.altitude = None self.airspeed = None self.heading = None self.roll = None self.roll_rate = None self.pitch = None self.pitch_rate = None self.yaw = None self.climb_rate = None self.turn_rate = None self.gps_utc = None self.gps_lat = None self.gps_lng = None self.gps_ground_speed = None self.gps_ground_track = None self.gps_signal_quality = None