mirror of
https://git.intern.spaceteamaachen.de/ALPAKA/SPATZ.git
synced 2025-08-06 18:37:34 +00:00
SPATZ migration + proper directory structure
This commit is contained in:
33
spatz/sensors/pressure/ms5611_01ba03.py
Normal file
33
spatz/sensors/pressure/ms5611_01ba03.py
Normal file
@@ -0,0 +1,33 @@
|
||||
from typing import List, AnyStr
|
||||
from numpy.typing import ArrayLike
|
||||
|
||||
from pressure import PressureSensor
|
||||
|
||||
from spatz.dataset import Dataset, Phase
|
||||
from spatz.logger import Logger
|
||||
from spatz.transforms import GaussianNoise, Transform
|
||||
|
||||
|
||||
class MS5611_01BA03(PressureSensor):
|
||||
def __init__(self, dataset: Dataset, logger: Logger, transforms: List[Transform] = []):
|
||||
super().__init__(dataset, logger, transforms)
|
||||
|
||||
# Noise model obtained by a test flight using this sensor.
|
||||
self.__pad_noise = GaussianNoise(0, 0.03)
|
||||
self.__flight_noise = GaussianNoise(0, 1.5)
|
||||
|
||||
def _get_name(self) -> AnyStr:
|
||||
return 'MS5611_01BA03'
|
||||
|
||||
def _sensor_specific_effects(self, x: ArrayLike | float) -> ArrayLike | float:
|
||||
t = self._dataset.get_time()
|
||||
|
||||
# Transform from Pa to hPa
|
||||
x /= 1e2
|
||||
|
||||
noisy = self.__pad_noise(t, x) if self._dataset.get_phase() == Phase.ONPAD else self.__flight_noise(t, x)
|
||||
|
||||
# Log the noise added to the pressure measurements.
|
||||
self._logger.write('noise', noisy - x, domain=self._get_name())
|
||||
|
||||
return noisy
|
Reference in New Issue
Block a user