mirror of
https://git.intern.spaceteamaachen.de/ALPAKA/SPATZ.git
synced 2025-06-10 01:55:59 +00:00
Renamed ms5611 and added temperature sensor
This commit is contained in:
parent
d20d1b750b
commit
1b06db4152
@ -2,4 +2,5 @@ from spatz.sensors.sensor import Sensor
|
||||
from spatz.sensors.gps import GPS
|
||||
from spatz.sensors.imu import Accelerometer, Gyroscope, IMU
|
||||
from spatz.sensors.pressure import PressureSensor
|
||||
from spatz.sensors.temperature import TemperatureSensor
|
||||
from spatz.sensors.compound import CompoundSensor
|
@ -7,7 +7,7 @@ from spatz.logger import Logger
|
||||
from spatz.transforms import GaussianNoise, Transform, ProportionalGaussian
|
||||
|
||||
|
||||
class MS5611_01BA03(PressureSensor):
|
||||
class MS5611(PressureSensor):
|
||||
def __init__(self, dataset: Dataset, logger: Logger, transforms: List[Transform] = [], ts_effects=True):
|
||||
super().__init__(dataset, logger, transforms, ts_effects)
|
||||
|
||||
@ -17,7 +17,7 @@ class MS5611_01BA03(PressureSensor):
|
||||
self.__noise = ProportionalGaussian(0, 0.0015)
|
||||
|
||||
def _get_name(self) -> AnyStr:
|
||||
return 'MS5611_01BA03'
|
||||
return 'MS5611'
|
||||
|
||||
def _sensor_specific_effects(self, x: ArrayLike | float) -> ArrayLike | float:
|
||||
t = self._dataset.get_time()
|
||||
@ -30,4 +30,4 @@ class MS5611_01BA03(PressureSensor):
|
||||
# Log the noise added to the pressure measurements.
|
||||
self._logger.write('noise', noisy - x, domain=self._get_name())
|
||||
|
||||
return noisy
|
||||
return noisy
|
@ -38,11 +38,11 @@ class Sensor:
|
||||
@abstractmethod
|
||||
def _sensor_specific_effects(self, x: ArrayLike | float) -> ArrayLike | float:
|
||||
raise NotImplementedError()
|
||||
|
||||
|
||||
@abstractmethod
|
||||
def _get_data(self) -> ArrayLike | float:
|
||||
raise NotImplementedError()
|
||||
|
||||
|
||||
def get_init_data() -> ArrayLike:
|
||||
pass
|
||||
|
||||
|
25
spatz/sensors/temperature/ms5611.py
Normal file
25
spatz/sensors/temperature/ms5611.py
Normal file
@ -0,0 +1,25 @@
|
||||
from numpy.typing import ArrayLike
|
||||
from typing import List, AnyStr
|
||||
|
||||
from spatz.transforms.noise import GaussianNoise
|
||||
from spatz.dataset import Dataset
|
||||
from spatz.sensors import TemperatureSensor
|
||||
from spatz.transforms import Transform
|
||||
|
||||
|
||||
class MS5611Temperature(TemperatureSensor):
|
||||
def __init__(self, dataset: Dataset, transforms: List[Transform] = ...):
|
||||
super().__init__(dataset, transforms)
|
||||
|
||||
self.__noise = GaussianNoise(0, 0.5)
|
||||
|
||||
def _get_name(self) -> AnyStr:
|
||||
return 'MS5611'
|
||||
|
||||
def _sensor_specific_effects(self, x: ArrayLike | float) -> ArrayLike | float:
|
||||
t = self._dataset.get_time()
|
||||
noisy = self.__noise(t, x)
|
||||
|
||||
self._log('temperature', noisy)
|
||||
|
||||
return noisy
|
@ -75,6 +75,15 @@ class Simulation:
|
||||
if verbose:
|
||||
pbar.close()
|
||||
|
||||
def advance_to(self, t: float):
|
||||
t_old = self.__dataset.get_time()
|
||||
self.__dataset.step(t - t_old)
|
||||
self.__logger.step(t - t_old)
|
||||
|
||||
def advance(self, dt: float):
|
||||
self.__dataset.step(dt)
|
||||
self.__logger.step(dt)
|
||||
|
||||
def get_dataset(self) -> Dataset:
|
||||
return self.__dataset
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user