超音波センサPING)))は、ロボカップジュニアに参加しているチームの皆さんなら、大多数の方が使ったことがあると思われる有名なセンサですよね。(NXTユーザーだと使ったことが無いと思いますが・・・。)超音波の特性を活かして3cm~約3mの距離を測定することができる距離センサです。マイコンとの接続は簡単で、ひとつのI/OポートとPING)))の信号端子(=SIG)とをつなぐだけで超音波の発信と受信を切り替えて制御する方式のセンサです。PING)))は、超音波を発射し超音波が測定対象物に反射して帰ってくるまでの時間をパルスの長さで出力します。このパルス長を測定することにより対象物までの距離を計算できます。仕様は、以下のとおりです。:40kHz(200μS間)●センサー動作を表示するLED付き●次の測定までに必要な待ち時間:200μSここで、専門用語が出てきましたね。当時もここで引っかかったので、そこを書いていきたいと思います。1つ目、”入力トリガ”。”トリガ”というのは、簡単に言ってしまうと、100m走とかでいう”よ~い、スタート!”の”スタート!”を意味する信号のことです。PING)))へ超音波を発信させ距離の計測を開始させる時に入力させる信号(=マイコンが出力する信号)の意味です。2つ目、”エコーパルス”。エコー=超音波、パルス=信号と解釈できます。基本的にパルスとは”一瞬だけ電圧が変化して、そのあと元の電圧に戻る信号”のことです。PING)))の場合、”最大18.5msの時間幅を持つ”H”という信号を出します。”と解釈すればいいです。3つ目、”エコーホールドオフ時間”。PING)))もそうですが、入力トリガを受けたといってもすぐに動作開始は出来ません。人間も、ものを持つと考えても一瞬で出来ませんよね。その行動を開始するまでの時間と超音波を発信している時間(=PING)))では200μS)、超音波発信中に自分の発振した超音波や前回図で書いたように残響波を拾ってしまう可能性がありますので、超音波発射後はしばらく受信動作を行わない為の時間、という3つの時間を合計した時間のことをいいます。”この合計時間中は、エコーパルスを出しませんよ!”という時間が”エコーホールドオフ時間”なんです。4つ目、”TTLレベル電圧”という単語。今回一番書きたかったことです。”TTL”という単語はまず置いておきますが、”レベル電圧”と書いてありますから”デジタル入力またはデジタル出力をしますよ”といっています。”TTL”というのは、単純に書けば”ある”か”ない”を判断する基準というか、分かれる境目というか、いわゆる”しきい値(専門用語では”スレッショルドレベル”といいます)”のことです。”この電圧以下であれば'L'として認識しますよ”という電圧のしきい値が”TTLレベルという基準”といっているのです。TTLレベルと指定された場合、”H”は2.0V以上、”L”は0.8V以下の電圧レベルであることが最低条件となります。このPING)))のように5V電源で動くものは、”H”レベルでも2.5~4.5Vくらいと幅が広く(これはICの種類や出力にかかっている負荷によります)、”L”レベルは、ほとんど0Vになります。TTLレベル以外に、ICによっては”CMOSレベル”という場合があります。TTLレベルとは違い、かなり曖昧でICによって大きく違います。違うかというと、”H”として認識する最低電圧は0.5~0.7×電源電圧V以上です。5V電源で動くものの場合、TTLならば2.0V以上で”H”となりますが、CMOSならば2.5Vから3.5V以上となります。”L”として認識する最大電圧は0.8~1.5Vです。なんでこんなこと(TTLレベル電圧の事ね)を書きたかったというと、いくらTTLレベルと書いてあっても、マイコンとの相性もあります。仮にセンサがTTLレベルで”H”=2.2Vくらいを出力していたとしても、それを受けるマイコン側は2.5V以上でないと”H”して認識しないのであれば”L”と判定してしまいます。どんなにセンサが”H”とか”L”とかをバタバタ出力させていても、マイコン側から見るとずーっと”L”です。5Vマイコンでなく3.3Vマイコンを使うと、これに填る時が希にありますのでご注意を(笑)(今のオリジナル基板移行時に娘達が食らったというのは内緒ですが(爆笑))PING)))の事例というかなんというか、今回はワケ判らんことだけになっちゃいました。これって結構大切なんで(笑)以上、GRA父でした~。原理とか-こんにちは、GRA父です。最近、私の書く記事が大多数を占め始めていますね。実際、活動しておりませんので仕方のないことですが・・・。今回は、たまたま本業で超音波を応用した、あるセンサーを開発することになり、部下と共にいろいろ右往左往する機会がありました。なんと部下は、そっち系には全く疎いというか全然知らなかった!という事態が発生しました。専門が違うんでしょうがないのですが。»»続きを読むということは、ロボカップジュニアに参加している子ども達は結構知らない??と思い、娘達に聞いてみた所”昔のノートを見る限り、GRA父から教わったようだけど、まったく覚えていないよ?!”というではないですか!!!!”じゃぁ、どうやって今のオリジナル基板で距離をはかれるの?”と聞いてきたら、”昔のオリジナル基板(あ、AVRね)の時のプログラムをそのままコピーしたんだよ。”とかえってくる始末・・・。えっ、ぇ~ということで、今回のネタになりました(涙)さて、では本題に入りたいと思います。(説明のプロではないので、誤字や言い回しがおかしいとか文面が曖昧すぎるとかはご容赦を!)超音波というのは音の振動の一種で、声と同じく空気が振動して伝わります。周波数の高い音が超音波といわれ、人間の耳では聞こえない音の振動で、この振動は波として表すことができます。1秒あたりに発生する波の数を「周波数」といい、周波数の単位の記号はHz(ヘルツ)です。普通、人間は約20Hz~20kHzの周波数の音波は聞くことができ、これを可聴周波数といいます。人間は、どんなに耳がいい人でも、この範囲以外の音は聞くことができません。人間の耳には聞こえない20Hz以下の音の事を”低周波音波”といい、20kHz以上の音の事を”超音波”といいます。超音波の簡単な特徴はというと、(1)気体→液体→固体の順で、より速く、より遠くへと伝わる。(2)気体中(=空気)の超音波の速度は、周辺環境の気温によって変化する。(3)超音波は人体には無害。(4)空気を媒体としているため、風の吹くところや高温物体による空気の揺らぎのある場所では正しい計測が行われない可能性がある。超音波を発信している横方向から風が吹いていると、その方に流れてしまう。風速10m/sを超えるような強風が吹いているところでは、まともに反射波がかえってこないので計測ができない。(5)発射された超音波は、曲面に当たるとあらゆる方向に反射され、この反射波があちこちに当たってエコーとなって返ってきてしまう。(6)超音波の強さは、距離が遠くになればなるほど弱くなる(=減衰する)ので、反射波が微弱しかかえってこない為、計測ができない場合がある。(7)超音波は減衰していくが、反射を繰り返すので、何度も跳ね返った超音波でも減衰量とそのタイミングによっては通常の反射波と間違えてをしてしまい、計測値がおかしくなるケース(=多重受信による誤動作)もある。超音波はいろいろな分野で応用できる技術で、その応用例としては、主に対象物からの反射波の検出で対象物の存在、対象物までの距離の検出などを目的としたものです。実例でいうと、人を検出してドアを開けるとか、移動ロボットや工場での無人輸送車の障害物検出用センサー、ソナーや魚群探知機(測深機)、医療関係では超音波治療器(ME)や超音波検査などに使われています。だいたいの超音波センサーは、40kHzの超音波が使われています。1秒に40000回、空気を振動させています。340m/s(1秒間に340メートル進むという意味)という速度(=音波伝搬速度という)で伝わります。参考までに空気中の音の伝搬速度は約340m/sですが、水中では約1,530m/s、鉄では約5km/sです。音は、1cmの距離を約28μs(μs=マイクロセカンドは、1/1000000秒という単位:0.001(ms:ミリセカンド)と一緒)だけの時間をかけて進むので、超音波を発射してから物体に反射して戻ってくる迄の時間を測定すれば、超音波センサーから物体までの距離を知ることができます。超音波を発射してから反射波が検出されるまでの時間をT(μs)とすると、このTは、1往復の時間なので物体までの距離は、その半分となり”0.5T(=0.5×T(μs))”です。d(mm)は、以下の計算で求めることができます。(mm)ここで0.001をかけているのは、mm(ミリメートル)に変換したいのでかけています。超音波の速度は空気の温度の影響をうけるので、詳細にいうと約340(m/s)ではなく、以下の式で求める必要があります。0.607×空気中の温度(°C)まぁ、産業用ではない限り、この温度補正はする必要性はないですけどね。約340m/sとして計算するのはあまりにもよろしくないので、普通のホビー用途(=ロボカップでも基本これ。)であれば、だいたい冷暖房が効いた室内なので、20°C~25°Cの範囲と考えればいいと思います。ある超音波を使った距離センサの電子工作の例では、超音波の速度を344.42m/sとしていました。理論計算上もだいたい合っているので、この値としていいと思います。(mm)となり、この計算式を利用して距離を割り出すわけです。専門的なような、そうでないような感じになってしまいましたが、詳しくは他のblogか電子工作の書籍を含めた専門書をご覧くださいませ(笑)次は、今回の補足を書きたいのですが、今月は無理そうだなぁ~。時間ができたときに、お会いしましょ~(笑)以上、GRA父でした~。くろック最新記事お久しぶりです&ありがとうございました。(09/09)ありがとうございます。BlogYのGCR日記(私の2015年の活動ブログです。)でんぐり返ししましょうか?(注:ロボットは関係ないblogです。BeigeHeart.。