- 締切済み
H8マイコンを用いたある計算について
H8-3052マイコンを使用してある計算をしたいです。 たとえば、1VをDAポートに入力し、数マイクロ秒後にまた1VをDAポートに入力します。その時間差を読み取り計算をすることは可能でしょうか?具体的にどのような計算かというと、はじめに入ってきたレーザ光の入力と、後から入ってきたレーザ光の入力の時間差を用いて距離を求める計算をしようと思っています。光の速度は一定なので、その伝播時間さえわかれば距離を算出することが出来るというわけです。 マイコンやプログラムについては初心者なのでわかる方教えてください。 出来ればサンプルプログラムも添えていただけるとありがたいです。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
補足を読んで納得しました。そういうやり方ならできますね。ただ、最初の短い距離の反射光を正確に拾うのが最大の難関と言うことになりそうです。なぜなら、距離があまりにも短いと、計測する側の分解能をはるかに超えた短時間で戻ってきてしまうので。分解能が1μsだと、先の回答にあるとおり、測定可能な距離の分解能は往復で300m刻みになります。300mの次は600m、その次は900m。この精度だと、大陸間の距離くらいしかまともに測れそうにないです。 今回の話は、プログラムの問題と言うより実装方法の問題ではないかと思います。先の回答の繰り返しになりますが、今のままの分解能では測定原理がいくら正しくても、うまくいきそうな気がしません。
「はじめに入ってきたレーザ光の入力と、後から入ってきたレーザ光の入力の時間差を用いて距離を求める」ということですが、これって単に発光間隔にイコールとなり、距離は求まらないと思いますが、大丈夫ですか?極端な話、正確に1秒間隔で点滅する光源を、隣の部屋と冥王星に設置して点滅する間隔を比較した場合、どちらもぴったり1秒となるはずです。 レーザーにトリガを与えて発光させ、それが反射して戻ってくる時間がトリガからどれだけかかったか計ろうということなら、考え方は正しいです。ただし光が相手でμsオーダーだと、安定した結果を得るためには、対象物が隣町くらいに離れている必要がありそうです。 光速は秒速約30万kmであり、1μsでも300m進んじゃいますから、往復させてこの半分、150mが測定できる下限の距離となります。この距離を狙って反射させ、戻り光を拾うのも相当大変でしょうね。反射ミラーの角度を秒の単位(1度の3600分の1)で管理しないと、受光部で拾えませんから。確か角度1秒で100m進むと、0.5mmずれたと思います。もしミラーを複数置いた場合は、角度管理はさらに困難になります。 なので、もし屋内で実験するなら今の千分の一、1ns単位の分解能がないと無理じゃないですか?
補足
回答ありがとうございます! 「はじめに入ってきたレーザ光の入力と、後から入ってきたレーザ光の入力の時間差を用いて距離を求める」というのはマイケルソン干渉計の原理を用いたもので、初めの入力は短い距離(基準となる距離)を伝搬するレーザ光の反射光で、後の入力は長い距離、すなわち目標地までの距離を伝搬したレーザ光の反射光となります。 トリガを見る方法も試みたことがあります。ですがトリガを与えてレーザ光が発光するまで遅れがあるかなと思い上記の方法にしました。 確かに使用しているマイコンではナノオーダーの時間差を計算することは不可能かと思ったのでカウンタを使って、マイコンで計算できるレベルまで時間を遅れさせようと考えています。まだ勉強中なので分からないことだらけなんですが。。
お礼
またの回答ありがとうございます! 計測システムの実装方法は考え直していきたいと思います!