从 sensehats IMU 上的磁力计收集数据
Posted
技术标签:
【中文标题】从 sensehats IMU 上的磁力计收集数据【英文标题】:collect data from magentometer on a sensehats IMU 【发布时间】:2019-06-20 15:54:14 【问题描述】:我找不到有关如何从连接到我的树莓派的 sensehat 上的 IMU 导入和收集数据的信息。我要写什么来导入它并保存数据?
我已经编写了具有相同功能的代码,但是对于加速度计:
import logging
import logzero
from logzero import logger
from sense_hat import SenseHat
import os
dir_path = os.path.dirname(os.path.realpath(__file__))
sh = SenseHat()
logzero.logfile(dir_path+"/accel.csv")
formatter = logging.Formatter('%(name)s - %(asctime)-15s - %(levelname)s: %(message)s');
logzero.formatter(formatter)
acceleration = sense.get_accelerometer_raw()
x = acceleration['x']
y = acceleration['y']
z = acceleration['z']
x=round(x, 0)
y=round(y, 0)
z=round(z, 0)
logger.info("%s,%s,%s", x, y, z, )
【问题讨论】:
【参考方案1】:来自 Sense HAT 文档页面 (https://pythonhosted.org/sense-hat/api/#imu-sensor)
你必须设置sense.set_imu_config(True,True,True) #compass/gyroscope/accelerometer
import logging
import logzero
from logzero import logger
from sense_hat import SenseHat
import os
dir_path = os.path.dirname(os.path.realpath(__file__))
sh = SenseHat()
sh.set_imu_config(True, True, True)
logzero.logfile(dir_path+"/accel.csv")
formatter = logging.Formatter('%(name)s - %(asctime)-15s - %(levelname)s: %(message)s');
logzero.formatter(formatter)
acceleration = sh.get_accelerometer_raw()
x = acceleration['x']
y = acceleration['y']
z = acceleration['z']
x=round(x, 0)
y=round(y, 0)
z=round(z, 0)
north = sh.get_compass()
print("North: %s" % north) #prints direction of North in degrees
logger.info("%s,%s,%s", x, y, z, )
【讨论】:
以上是关于从 sensehats IMU 上的磁力计收集数据的主要内容,如果未能解决你的问题,请参考以下文章
Lord Sensing 3DM-CV5-15高性能惯性测量单元IMU和垂直测