def getValue(self):
        Sensor.getValue(self)

        hours = self.climate.clock // 60
        minutes = (self.climate.clock % 60) / 60.0
        time = hours + minutes

        if (hasattr(eel, 'dayLightScale')):
            scale = eel.dayLightScale(time)()
            if scale is None:
                scale = 1
        else:
            scale = 1

        # check if light actuator has effect
        if 'light_sensor' in self.envEffect:
            self.value = scale * self.optimum + self.envEffect['light_sensor']
        else:
            self.value = scale * self.optimum

        # spread for different values
        self.value = np.random.normal(self.value, self.spread)

        # clamp above zero
        if self.value < 0:
            self.value = 0

        return self.value
    def getValue(self):
        Sensor.getValue(self)

        choice = randrange(0, 1000, 1)
        if choice <= 900:
            ppm = randrange(0, 800, 1)
        elif choice <= 995:
            ppm = randrange(0, 1000, 1)
        elif choice <= 997:
            ppm = randrange(0, 5000, 1)
        elif choice == 998:
            ppm = randrange(0, 35000, 1)
        elif choice == 999:
            ppm = randrange(0, 80000, 1)
        else:
            ppm = randrange(0, 210000, 1)

        if 'co2' in self.envEffect:
            ppm = ppm + self.envEffect['co2']
            if ppm < 300:
                ppm = 300
        else:
            ppm = ppm

        if ppm < 0:
            self.value = 0
        else:
            self.value = ppm

        return self.value
Beispiel #3
0
 def setConfiguration(self, section):
     Sensor.setConfiguration(self, section)
     
     self._sensor_function_temp = self._config.get(section,"sensor_function_temp")
     self._sensor_function_humidity = self._config.get(section,"sensor_function_humidity")
     self._sensor_function_pressure = self._config.get(section,"sensor_function_pressure")
     self._sensor_function_altitude = self._config.get(section,"sensor_function_altitude")
Beispiel #4
0
 def test_init_with_id(self):
     config = '''
     {
         "id": "testSensor"
     }
     '''
     sensor = Sensor(json.loads(config), 'myCallback')
     self.assertEqual(sensor.id, 'testSensor')
Beispiel #5
0
    def setSensorConfiguratuion(self):
        self._sensorList = []
        _sensor = None
        # loop over the configured sensors
        for section in self._sensorConfig.sections():
            _sensor = Sensor(self._sensorConfig)
            _sensor.setConfiguration(section)

            if _sensor._sensorCategory == const._temperature:
                tempSens = TempSensor(self._sensorConfig)
                tempSens.setConfiguration(section)
                self._sensorList.append(tempSens)
            elif _sensor._sensorCategory == const._anemometer:
                anemoSens = AnemometerSensor(self._sensorConfig)
                anemoSens.setConfiguration(section)
                self._sensorList.append(anemoSens)
            elif _sensor._sensorCategory == const._illum:
                illumSens = IlluminationSensor(self._sensorConfig)
                illumSens.setConfiguration(section)
                self._sensorList.append(illumSens)
        return self._sensorList
    def getValue(self):
        Sensor.getValue(self)

        env = 0
        if 'humidity' in self.envEffect:
            env = self.envEffect['humidity']

        if (self.value == 0):
            #init sensor value
            self.reset()
        else:
            if (self.value < 10 or self.value > 90):
                self.reset()
            if (self.value > 50):
                env = -env
            if (env != 0):
                self.value = self.value + env
            else:
                self.value = np.random.normal(self.value,
                                              self.stepSpread) + env

        return self.value
    def getValue(self):
        Sensor.getValue(self)

        env_sa = 0
        env_ps = 0
        
        if 'sound_level' in self.envEffect:
            env_sa = self.envEffect['sound_level']
        if 'sound_sensor' in self.envEffect:
            env_ps = self.envEffect['sound_sensor']

        if(not self.override):
            if(self.value == 0):
                self.reset()
            else:
                self.value = np.random.normal(self.value, self.stepSpread)+env_sa+env_ps

        # clamp above zero
        if self.value < 0:
            self.value = 0

        return self.value
Beispiel #8
0
    def getValue(self):
        Sensor.getValue(self)

        env = 0
        if 'temperature' in self.envEffect:
            env = self.envEffect['temperature']

        if (not self.override):
            if (self.value == 0):
                self.value = np.random.normal(self.climate.temperature,
                                              self.spread) + env
            else:
                if (self.value > 21):
                    env = -env

                if self.typ == "temperatureOut":
                    self.value = np.random.normal(self.climate.temperature,
                                                  self.stepSpread)
                else:
                    if env != 0:
                        self.value = self.value + env

                        if (hasattr(eel, "setACMode")):

                            #get AC
                            for k in self.envEffect:
                                if 'cc' in k:
                                    if env > 0:
                                        eel.setACMode(k, True)
                                    else:
                                        eel.setACMode(k, False)

                    else:
                        self.value = np.random.normal(self.value,
                                                      self.stepSpread) + env

        return self.value
Beispiel #9
0
 def test_init_with_no_config(self):
     with self.assertRaises(KeyError):
         Sensor(self.EMPTY_CONFIG, 'myCallback')
 def setConfiguration(self,section):
     Sensor.setConfiguration(self, section)
     self._sensor_resulution = self._config.get(section,"sensor_resulution")
 def __init__(self, configuration):
     Sensor.__init__(self, configuration)