2016-03-31 7 views
-2

私は方向を見いだす必要があるプロジェクトに取り組んでいます。私はコードを書いてテストしました。それはいくつかのデバイスでうまくいきましたが、他のデバイスでは(ポインタ)も動かなかった。私はこれについて学び、磁気センサーがコンパスの働く唯一の鍵であることを知りました。磁気センサーなしでコンパスが動作しない

public class Compass extends Activity implements SensorListener { 
    SensorManager sensorManager; 
    static final int sensor = SensorManager.SENSOR_ORIENTATION; 
    ViewCOm viewcom; 


    @Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    // Set full screen view 
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
      WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 

    viewcom = new ViewCOm(this); 

    setContentView(viewcom); 

    // get sensor manager 
    sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE); 
    } 

    // register to listen to sensors 
    @Override 
    public void onResume() { 
    super.onResume(); 
    sensorManager.registerListener(this, sensor); 
    } 

    @Override 
    public void onPause() { 
    super.onPause(); 
    sensorManager.unregisterListener(this); 
    } 

    // Ignore for now 
    public void onAccuracyChanged(int sensor, int accuracy) { 
    } 

    // Listen to sensor and provide output 
    public void onSensorChanged(int sensor, float[] values) { 
    if (sensor != Compass.sensor) 
     return; 
    int orientation = (int) values[0]; 
    viewcom.setDirection(orientation); 
    } 
} 

私の質問は、コンパスを作成するGPSやMAPのような他の方法はありますか?

ありがとうございます。

+0

2つの否定の投票....しかし、 "いいえのコメント" ... :)笑い::) – Devraj

答えて

2

私の質問は、コンパスを作成するGPSやMAPのような他の方法はありますか?

磁気センサーを使用せずにコンパス機能を作成することはできません。 GPSはここでは役に立たず、移動している方向を計算できるようにします(少なくとも2つの異なる座標が必要なので、立っている間はそれを行うことはできません)。北の位置も計算してみることができますが、これの精度には5ステップと比べてより大きなコード差が必要です。

+2

あなたの態度で動作します。とあなたの英語、 '私は実際には、上記の行についての手掛かりがないので、 –

+2

しかし、私の答えは本当にあなたの質問に対処していないのですか?あなたは磁気センサーなしでコンパスが欲しいです - 私はそれが本当に、なぜ動作するつもりはないと答えました。もっと明確にする必要がある場合は、 –

+1

:/ Sir、私は磁気センサーなしでコンパスを作りたいと頼んでいませんでした。それが可能かどうかを知ることは私の好奇心でした。高齢者は学校の先生のようです。叩くのが大好きですが、理解できません。それは大丈夫です。私は本当に私の言葉を残念に思っています。しかしこれは本当です。好奇心が発明の鍵です。 – Devraj

1

基本的に、 コンパスに使用できる3つの主要なタイプの検閲があります。

1)ホールセンサー

2)異方性磁気抵抗性(AMR)。

3)巨大磁気抵抗性(GMR)。

これらのタイプのいずれも、特定の方向の磁場に比例して抵抗値を変化させる磁気センサーを備えています。

チップ上の回路は磁場強度を検出し、フィールドとその方向をデジタルデータとして利用可能にします。コンパスデータが必要なときはいつでも、 のCPUがこのデータをプルします。

携帯端末に誰かがいる場合は、コンパスを使用できます。

関連する問題