2012-04-17 8 views
0

NBTを使ってNXTにVFH(ベクトルフィールドヒストグラム)の簡単なバージョンを作成しようとしています。これを行うには、ロボットと物体の距離を正確に測定する必要があります。 NXTは距離をセンチメートルで表示できるので、私はプログラムで距離をセンチメートル単位でプログラムしたいのですか?既定のセンチメートルの読み取り値がないので(またはそこにありますか?)、これを行うことができますか、または既定のセンサー値を使用する必要がありますか?可能であれば、どうすればいいですか?そうでない場合、どのようにして超音波センサーの読みをセンチメートルの読みに変換できますか?NXT超音波センサーでセンチメートルの値を読み取るにはどうすればよいですか?

ありがとうございます。

答えて

1

デフォルトの出力は1センチメートルのバイト値です。

task main(){ 
    int DistanceInCm; 

    SetSensorLowspeed(IN_4); 
    while(true){ 
    DistanceInCm = SensorUS(IN_4); 
    //do something with the value here. 
    Wait(800); //or just wait. 
    } 
} 

これは簡単です。センサーの読み取りは1バイト(0-255cm)です。しかし、NXCコンパイラはそれを即座にintにキャストします。

センサーはあまり正確ではありませんが、注意してください。特にあなたが動いている間にそれを読むならば。読書には多くの間違いや騒音が予想されます。

+0

ありがとうございます!それは実際にはかなり助けになりました! – skyfaerie

関連する問題