标签: accelerometer

如何对作用于Accelerometer的Android Activity进行单元测试?

我从一个基于ShakeActivity的Activity开始,我想为它编写一些单元测试.我之前已经为Android活动编写过一些小的单元测试,但我不知道从哪里开始.我想为加速度计提供一些不同的值,并测试活动如何响应它.现在我保持简单,只是在发生"摇动"事件时更新私有的int计数器变量和TextView.

所以我的问题很大程度上归结为:

如何从单元测试中将假数据发送到加速度计?

android unit-testing accelerometer

5
推荐指数
1
解决办法
1万
查看次数

Android - SensorManager getOrientation的奇怪行为

我需要检索手机的方向.目前我写了这个:

public void onSensorChanged(SensorEvent event) {
  switch (event.sensor.getType()){
  case Sensor.TYPE_MAGNETIC_FIELD:
    this.mag_vals = event.values.clone();
    this.sensorReady = true;
    break;
  case Sensor.TYPE_ACCELEROMETER:
    this.acc_vals = event.values.clone();
    break;
  }
  if (this.mag_vals != null && this.acc_vals != null && this.sensorReady) {
    this.sensorReady = false;
    float[] R = new float[ProjectConstants.SIZE_MATRIX];
    float[] I = new float[ProjectConstants.SIZE_MATRIX];
    SensorManager.getRotationMatrix(R, I, this.acc_vals, this.mag_vals);

    SensorManager.getOrientation(R, this.actual_orientation);
    ...  
Run Code Online (Sandbox Code Playgroud)

如果我将手机放在平面上并将其旋转到表面上,此代码可让我获取手机的方向.

我不明白的是,如果我向上移动手机的值this.actual_orientation[0],即[此处] [1]所述的zed轴上的旋转,虽然没有旋转,但值会增加.

有人知道会发生什么吗?

编辑

另一件奇怪的事......

我在办公室里尝试了我的应用程序,它有我之前描述的奇怪的行为..我在同一个办公室(同样的情况)尝试了一个指南针应用程序,我从市场上取得它与我的相同的行为..当我我把电话向上移动了一致的价值变化..我在同一个办公室(同样的情况)尝试了i-phone罗盘,它没有那种奇怪的行为!

然后,当我到家时,我尝试了两个,我的应用程序和我的Android手机的指南针应用程序,他们工作!!即使我向上移动手机价值稳定...

非常感谢.

[1]:http://developer.android.com/reference/android/hardware/SensorManager.html#getOrientation(float [],float [])

android sensor accelerometer orientation magnetometer

5
推荐指数
1
解决办法
3804
查看次数

在MacBook Pro中轮询加速计/运动传感器

有一个编译命令行应用程序在这里做这个.

是否有Cocoa API来查询这些数据?

macos cocoa sensor accelerometer motion-detection

5
推荐指数
1
解决办法
3794
查看次数

在GPS,罗盘航向和加速度计之间消耗最多的电池?

有没有人知道GPS,罗盘航向和加速度计之间使用最多的电池(或他们如何相对比较?)

我假设有些天真:

加速度计<罗盘标题<GPS

但我找不到任何可以证实或反驳我的直觉的东西.

澄清:我很好奇它在iPhone上的表现如何.

iphone gps accelerometer background-process compass-geolocation

5
推荐指数
1
解决办法
943
查看次数

Android:Sensor.getResolution()值

我正在开发使用SensorManager用于不同目的的Android应用程序.在调查过程中,我发现Sensor.getResolution()函数为不同的设备返回不同的值:

所有板载传感器的HTC Sensation都具有1.0分辨率值.

摩托罗拉XOOM:

3-axis Accelerometer -> 0.009576807  
3-axis Magnetic field sensor -> 0.0625  
L3G4200D Gyroscope sensor -> 0.0012217305  
Linear Acceleration Sensor -> 0.009576807  
Gravity Sensor -> 0.009576807  
Run Code Online (Sandbox Code Playgroud)

在使用适当的传感器值之前,我是否需要使用此分辨率值进行额外计算尚不清楚.官方文件没有说明它.

任何人都可以向我解释这个"决议"的价值目的吗?

android sensor accelerometer gyroscope android-sensors

5
推荐指数
1
解决办法
2240
查看次数

如何围绕Y轴旋转相对于用户如何握住设备?

我记得WWDC上有一个谈话,显示OpenGL ES中的茶壶,随着设备的移动而旋转.看来茶壶在太空中静止不动.

当应用程序启动时,茶壶开始处于特定位置.然后当设备旋转时,茶壶也旋转到空间静止不动.

在这次演讲中,他们提到我们必须获得"参考框架",例如在应用程序启动时,它告诉我们用户最初如何持有设备.

例如,这里是加速度计轴:

加速度计

我想知道围绕Y轴的旋转,但是相对于用户如何握住设备.因此,当用户将其保持直立并围绕Y旋转时,我需要知道旋转值.

我认为关键是从读数中消除重力?另外我的目标是带有陀螺仪的iPhone 4/4S,但我认为CoreMotion会自动对它们进行传感器融合.

我怎么能弄清楚用户围绕Y轴旋转设备的程度?

iphone accelerometer ios gyroscope core-motion

5
推荐指数
1
解决办法
2735
查看次数

使用带Arduino的陀螺仪/加速度计

我试过arduino.cc提供的这个草图.(我有一个MPU6050 GY-521分线板.)

我认为它运作正常.它提供了一组奇怪的数字,我无法得到任何意义.它说那些是原始价值.

如何将它们转换为有意义的值?

输出如下.即使整个事物保持静止,它也会带来不断变化的价值!这有意义吗?然后怎么理解?

(我只知道温度值是有意义的:D)

June 2012
WHO_AM_I : 68, error = 0
PWR_MGMT_2 : 0, error = 0

MPU-6050
Read accel, temp and gyro, error = 0
accel x,y,z: 260, 120, 15572
temperature: 31.047 degrees Celsius
gyro x,y,z : -24, -234, -240,

MPU-6050
Read accel, temp and gyro, error = 0
accel x,y,z: 304, 12, 15608
temperature: 31.000 degrees Celsius
gyro x,y,z : -7, -234, -232,

MPU-6050
Read accel, temp and gyro, error = …
Run Code Online (Sandbox Code Playgroud)

arduino accelerometer gyroscope

5
推荐指数
1
解决办法
1万
查看次数

检测html5手机中的抖动

我正在构建一个html5的网络应用程序,此时需要能够检测到用户何时摇动手机以及它们晃动的速度.我一直在浏览,但似乎无法找到任何我如何实现这一点的例子.我知道html5有一个可以检测手机方向的加速度计,但它如何检测用户摇动它的速度?

我也在我的iPhone上测试这个,虽然理想情况下我也希望它能在Android设备上运行.思考?例子也很棒.谢谢!

javascript html5 web-applications accelerometer shake

5
推荐指数
1
解决办法
2万
查看次数

屏幕关闭时是否可以检测到运动?

我的应用程序只需要在屏幕关闭时检测设备的任何动作.

我知道加速度计用于此任务,但在所有设备中屏幕关闭时它不起作用.这是设备列表http://www.saltwebsites.com/2012/android-accelerometers-screen-off

那么有什么方法可以在屏幕关闭时获取加速计传感器数据,适用于所有设备?

或者有没有办法用另一个传感器检测运动?

android accelerometer android-sensors

5
推荐指数
2
解决办法
6737
查看次数

CMAccelerometerData和CMDeviceMotion之间的区别

有人可以解释之间的差异CMAccelerometerDataCMDeviceMotion.

在我看来,加速度值CMAccelerometerData是原始值,因为数据以CMDeviceMotion某种方式插值,或类似的东西.

accelerometer ios core-motion

5
推荐指数
2
解决办法
2514
查看次数