Files
kano-wand-smarthome/kano_wand/sensor_tracker.py
T

55 lines
1.3 KiB
Python

import pandas as pd
class Gyro(object):
def __init__(self):
self.x = 0
self.y = 0
self.z = 0
def __str__(self):
print(self.x, self.y, self.z)
class Accel(object):
def __init__(self):
self.x = 0
self.y = 0
self.z = 0
def __str__(self):
print(self.x, self.y, self.z)
class SensorTracker(object):
def __init__(self):
self.gyro = None
self.gyro_updates = 0
self.accel = None
self.accel_updates = 0
self.dataframe = pd.DataFrame(columns=["gyro_x", "gyro_y", "gyro_z", "accel_x", "accel_y", "accel_z"])
def append_to_dataframe(self):
if self.gyro_updates == self.accel_updates:
self.dataframe = self.dataframe.append(
pd.DataFrame({
"gyro_x": self.gyro.x,
"gyro_y": self.gyro.y,
"gyro_z": self.gyro.z,
"accel_x": self.accel.x,
"accel_y": self.accel.y,
"accel_z": self.accel.z,
}, index=[0])
)
def save_df_to_file(self, filename):
self.dataframe.to_csv(filename, index=False)
def set_gyro(self, gyro):
self.gyro = gyro
self.gyro_updates += 1
def set_accel(self, accel):
self.accel = accel
self.accel_updates += 1