1. 安卓手机一般都有陀螺仪吗
首先陀螺仪是测量物体旋转时的角速度,经手机中的处理器对角速度积分后就得到了手机在某一段时间内旋转的角度。其实手机里的重力传感器就可以获得手机的相对水平面的转角,但你可以试试,让手机绕垂直与地面的轴旋转,相比之下,有陀螺仪的则能感应到这个旋转,而只有重力传感器的就不行。通俗的讲,以前的手机只能感应相对水平面的转角,而陀螺仪可以感应任何方向的转角。 一般也只有相对高端的手机有,一些手机只是利用重力感应还玩那些游戏,但是没有陀螺仪的手机灵敏度高
2. android如何实现陀螺仪 sensor 在 android 吗
设备中的三自由度Orientation
Sensor就是一个可以识别设备相对于地面,绕x、y、z轴转动角度的感应器(自己的理解,不够严谨)。智能手机,平板电脑有了它,可以实现很多好玩的应用,比如说指南针等。
我们可以用一个磁场感应器(magnetic sensor)来实现。
磁场感应器是用来测量磁场感应强度的。一个3轴的磁sensor
IC可以得到当前环境下X、Y和Z方向上的磁场感应强度,对于Android中间层来说就是读取该感应器测量到的这3个值。当需要时,上报给上层应用程序。磁感应强度的单位是T(特斯拉)或者是Gs(高斯),1T等于10000Gs。
先来看看android定义的坐标系,在/hardware/libhardware/include/hardware/sensors.h中有个图。
求z和x的反正切可得到此值。
sensors.h中还定义了其他各种sensor。要实现的就是这两个:
#define SENSOR_TYPE_MAGNETIC_FIELD 2
#define SENSOR_TYPE_ORIENTATION 3
在/hardware/sensors/sensors.cpp 中添加对MAGNETIC_FIELD和ORIENTATION 的支持
3. android系统平台上支持的传感器中,陀螺仪属于什么传感器
Android系统支持多种传感器,包括加速度传感器、磁力域传感器、方向传感器、陀螺仪、光线传感器、压力传感器、温度传感器、接近传感器,一般手
机都支持加速度传感器、磁力域传感器、方向传感器、光线传感器、接近传感器,也有一些比较高端的手机支持陀螺仪。
4. 安卓的陀螺仪和重力感应是什么
陀螺仪通过测量物体旋转时的角速度,再经手机中的处理器对角速度积分后,可以得到手机在某一段时间内旋转的角度。普通手机的重力传感器只可以获得手机的相对水平面的转角。通俗的讲,普通手机的重力感应只能感应相对水平面的转角,而有陀螺仪的手机可以感应任何方向的转角,可以识别更多的动作。
附带网友牛叉解释:有陀螺仪的手机放在地上,你拿鞭子抽它它会转,一般机子不行。
哈哈
5. 安卓陀螺仪是干什么的电子罗盘 距离感应 光线感应 加速感应 方向感应各是干什么用的
陀螺仪是——感应运动方向的,例如你的车子进入隧道、在地下停车场在高架桥下面等看不到天空的时候,GPS接收不到卫星信号就无法定位,这时陀螺仪就可感应到你车子的运动方向,所以,有陀螺仪的导航系统此时还能计算出你的车子在朝什么方向运动。
电子罗盘——跟陀螺仪一样原理,叫法比较通俗一点。
光线感应——感应光线强弱,如夜晚没有灯光的情况下光线感应电路可以自动调节显示屏的亮度使之变暗,从而不影响驾驶员察看路面状态。
加速感应——全称为“加速度感应器”,还是以在隧道里面开车为例,陀螺仪只能感应你车子行进的方向,不知道车子运行的速度,加速度感应器就是侦测行进速度用的,有了这两种传感器配合,就能计算出车子大概的行驶路径和行进速度了。
方向感应——也是陀螺仪(电子罗盘)来实现方向感应的。
其实上述传感器既可用在安卓系统上,也可用在WinCE系统上或Linux系统上。所以没有“安卓陀螺仪”这样的专称。
6. 安卓陀螺仪只能获取吗
不能。陀螺仪传感器是一个简单易用的基于自由空间移动和手势的定位和控制系统,它原本是运用到直升机模型上,现已被广泛运用于手机等移动便携设备,安卓手机获取陀螺仪不能获取,只能购买带有陀螺仪的手机。
7. android 判断支持哪些传感器
Android中判断手机是否支持传感器,可以通过SensorManager这个类来获取手机所有的传感器列表,如下代码:
package com.example.testsensor;
import java.util.List;
import android.app.Activity;
import android.content.Context;
import android.hardware.Sensor;
import android.hardware.SensorManager;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class DemoSensorActivity extends Activity {
private Button button;
private TextView show;
private SensorManager sm;
private StringBuffer str;
private List<Sensor> allSensors;
private Sensor s;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button = (Button) findViewById(R.id.button);
show = (TextView) findViewById(R.id.show);
button.setOnClickListener(new ButtonListener());
sm = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
allSensors = sm.getSensorList(Sensor.TYPE_ALL);// 获得传感器列表
}
class ButtonListener implements OnClickListener {
public void onClick(View v) {
str = new StringBuffer();
str.append("该手机有" + allSensors.size() + "个传感器,分别是:\n");
for (int i = 0; i < allSensors.size(); i++) {
s = allSensors.get(i);
switch (s.getType()) {
case Sensor.TYPE_ACCELEROMETER:
str.append(i + "加速度传感器");
break;
case Sensor.TYPE_GYROSCOPE:
str.append(i + "陀螺仪传感器");
break;
case Sensor.TYPE_LIGHT:
str.append(i + "环境光线传感器");
break;
case Sensor.TYPE_MAGNETIC_FIELD:
str.append(i + "电磁场传感器");
break;
case Sensor.TYPE_ORIENTATION:
str.append(i + "方向传感器");
break;
case Sensor.TYPE_PRESSURE:
str.append(i + "压力传感器");
break;
case Sensor.TYPE_PROXIMITY:
str.append(i + "距离传感器");
break;
case Sensor.TYPE_TEMPERATURE:
str.append(i + "温度传感器");
break;
default:
str.append(i + "未知传感器");
break;
}
}
show.setText(str);
}
}
}
8. 安卓手机为什么要校准重力感应器和陀螺仪
Android与iOS都需要在特定环境下校准设备的陀螺仪等感应器。在打开设备的“指南针”等App时,系统可能会要求你进行一次校准,常见的方式为手机做补圆环运动或者其他特定的曲线运动。
9. Android手机自带的惯性传感器(陀螺仪、加速度计之类的)精度高吗
精度还可以的。
传感器是一种检测装置,能感受到被测量的信息,并能将感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、显示、记录和控制等要求。
传感器的特点包括:微型化、数字化、智能化、多功能化、系统化、网络化。它是实现自动检测和自动控制的首要环节。传感器的存在和发展,让物体有了触觉、味觉和嗅觉等感官,让物体慢慢变得活了起来。通常根据其基本感知功能分为热敏元件、光敏元件、气敏元件、力敏元件、磁敏元件、湿敏元件、声敏元件、放射线敏感元件、色敏元件和味敏元件等十大类。
10. 安卓手机如何校准陀螺仪
安卓手机校准陀螺仪的步骤如下:
1、在手机界面找到设置选项,点击打开进入。