コード例 #1
0
    def __init__(self, name):

        rospy.loginfo('Create ' + name + ' Sensor')

        self.dt = 1.0 / rospy.get_param(name + '/rate', 100.0)
        self.rate = rospy.Rate(rospy.get_param(name + '/rate', 100.0))
        rospy.loginfo("\ta.rate: %.1f Hz", 1.0 / self.dt)

        self.cp = np.array(rospy.get_param(name + '/CP',
                                           [0.0, 0.0, 0.0])).reshape(3, 1)
        rospy.loginfo("\tb.position: [%.2f,%.2f,%.2f]", self.cp[0], self.cp[1],
                      self.cp[2])

        self.precision = rospy.get_param(name + '/precision', 0.0001)
        rospy.loginfo("\tc.precision: %.1e g", self.precision)

        self.std_coeff = rospy.get_param(name + '/std_coeff', 0.1)
        rospy.loginfo("\td.noise coeff: %.3f", self.std_coeff)

        #Noise Characteristics
        self.bs = np.random.normal(
            0,
            rospy.get_param(name + '/scaleBias', 0.03) / 3, 3)
        self.ks = np.random.normal(
            0,
            rospy.get_param(name + '/scaleThermal', 0.002) / 3, 3)
        self.bias = Vector3()
        self.randomwalk = Vector3()
        self.scale = Vector3()

        self.measurement = SimSensor3()
        self.temp = 25.0

        self.pub = rospy.Publisher(name, SimSensor3)
        self.states_sub = rospy.Subscriber("states", SimStates,
                                           self.StatesCallback)
        self.atm_sub = rospy.Subscriber("environment", Environment,
                                        self.EnvironmentCallback)

        self.real = SimStates()
        self.realnew = False

        #Thermal Chracteristics
        self.thermalMass = ThermalRise(name)
        rospy.loginfo("\te.Loading Thermal Chracteristics")
        self.airspeed = 0.0
コード例 #2
0
ファイル: barometer.py プロジェクト: gitdetector/last_letter
    def __init__(self, name):

        rospy.loginfo('Create ' + name + ' Sensor')

        self.dt = 1.0 / rospy.get_param(name + '/rate', 100.0)
        self.rate = rospy.Rate(rospy.get_param(name + '/rate', 100.0))
        rospy.loginfo("\ta.rate: %.1f Hz", 1.0 / self.dt)

        self.cp = np.array(rospy.get_param(name + '/CP',
                                           [0.0, 0.0, 0.0])).reshape(3, 1)
        rospy.loginfo("\tb.position: [%.2f,%.2f,%.2f]", self.cp[0], self.cp[1],
                      self.cp[2])

        self.resolution = rospy.get_param(name + '/resolution', 0.001)
        rospy.loginfo("\tc.resolution: %.1e mbar", self.resolution)

        self.maxvalue = rospy.get_param(name + '/max', 1500.0)
        rospy.loginfo("\td.maxvalue: %.4f mbar", self.maxvalue)

        self.minvalue = rospy.get_param(name + '/min', 0.0)
        rospy.loginfo("\te.minvalue: %.4f mbar", self.minvalue)

        self.std_coeff = rospy.get_param(name + '/std_coeff', 0.1)
        rospy.loginfo("\tf.noise coeff: %.3f", self.std_coeff)

        self.bar_true = 1013.25
        self.temp = 25.0

        self.pub = rospy.Publisher(name, SimBarometer)
        self.states_sub = rospy.Subscriber("states", SimStates,
                                           self.StatesCallback)
        self.atm_sub = rospy.Subscriber("environment", Environment,
                                        self.EnvironmentCallback)

        self.measurement = SimBarometer()
        self.realnew = False

        #Thermal Chracteristics
        self.thermalMass = ThermalRise(name)
        rospy.loginfo("\tg.Loading Thermal Chracteristics")
        self.airspeed = 0.0
        self.temp = 25.0
コード例 #3
0
    def __init__(self, name):

        rospy.loginfo('Create ' + name + ' Sensor')

        self.dt = 1.0 / rospy.get_param(name + '/rate', 100.0)
        self.rate = rospy.Rate(rospy.get_param(name + '/rate', 100.0))
        rospy.loginfo("\ta.rate: %.1f Hz", 1.0 / self.dt)

        self.cp = np.array(rospy.get_param(name + '/CP',
                                           [0.0, 0.0, 0.0])).reshape(3, 1)
        rospy.loginfo("\tb.position: [%.2f,%.2f,%.2f]", self.cp[0], self.cp[1],
                      self.cp[2])

        self.resolution = rospy.get_param(name + '/resolution', 0.0001)
        rospy.loginfo("\tc.resolution: %.1e g", self.resolution)

        self.maxvalue = rospy.get_param(name + '/max', 16.0)
        rospy.loginfo("\td.maxvalue: %.2f g", self.maxvalue)

        self.std_coeff = rospy.get_param(name + '/std_coeff', [0.0, 0.0, 0.0])
        rospy.loginfo("\te.noise coeff:")
        rospy.loginfo("\t\t1.main std: %.3f", self.std_coeff[0])
        rospy.loginfo("\t\t2.bias coeff: %.3f", self.std_coeff[1])
        rospy.loginfo("\t\t3.random walk coeff: %.3f", self.std_coeff[2])

        #Noise Characteristics
        self.bs = np.random.normal(
            0,
            rospy.get_param(name + '/scaleBias', 0.03) / 3, 3)
        self.ks = np.random.normal(
            0,
            rospy.get_param(name + '/scaleThermal', 0.002) / 3, 3)
        self.bb = np.random.normal(
            0,
            rospy.get_param(name + '/offsetBias', 0.785) / 3, 3)
        self.kb = np.random.normal(
            0,
            rospy.get_param(name + '/offsetThermal', 0.0084) / 3, 3)
        self.p0 = rospy.get_param(name + '/RWPSD', 0.00392)
        self.bias = Vector3()
        self.randomwalk = Vector3()
        self.scale = Vector3()

        self.temp = 25.0
        self.grav = 9.807

        #Thermal Chracteristics
        self.thermalMass = ThermalRise(name)
        rospy.loginfo("\tf.Loading Thermal Chracteristics")
        self.airspeed = 0.0

        self.measurement = SimSensor3()

        self.pub = rospy.Publisher(name, SimSensor3)
        self.states_sub = rospy.Subscriber("states", SimStates,
                                           self.StatesCallback)
        self.env_sub = rospy.Subscriber("environment", Environment,
                                        self.EnvironmentCallback)

        self.real = SimStates()
        self.realnew = False