SPATZ/spatz/sensors/imu/sca3300.py
2024-10-04 11:14:29 +02:00

26 lines
751 B
Python

import numpy as np
from typing import List, AnyStr
from numpy.typing import ArrayLike
from spatz.dataset import Dataset
from spatz.logger import Logger
from spatz.sensors import Accelerometer
from spatz.transforms import Transform, GaussianNoise
class SCA3300(Accelerometer):
def __init__(self, dataset: Dataset, logger: Logger, orientation=np.identity(3), offset=0, transforms: List[Transform] = []):
super().__init__(dataset, logger, orientation, offset, transforms)
self.__noise = GaussianNoise(0, 0.001)
def _get_name(self) -> AnyStr:
return 'SCA3300'
def _sensor_specific_effects(self, x: ArrayLike) -> ArrayLike:
x /= 9.81
x[0], x[1] = x[1], x[0]
return self.__noise(0, x)