|TNKS1407 解説
← 解説一覧へ

光の遅れで、距離を測る ── ToFセンサの原理

2026.07.11

波動方程式のグリーン関数の最後に、こう書いた ── レーダーやソナーは、往復の遅れで距離を測る、と。今回はその実物を机の上に置く。光は1mmを3.3ピコ秒で進む。「そんな時間、測れるわけがない」から始めて、位相で測る道と、光子を数えて山を積む道 ── 市販の小さなセンサの中で本当に起きていることまで歩く。「光で測る」三部作の一歩目。

▶ パルスの旅ラボを全画面で開く

部屋の向こうの壁まで、何メートルあるか知りたい。メジャーを伸ばしてもいいけれど、触らずに測りたい。── そこで、光を使う。光を壁に当てて、跳ね返ってくるまでの時間を測れば、距離が出るはずだ。

保存則の連載の最後で、影響は速さ cc で旅をして、距離 rr のぶんだけ 遅れて届く のを見た。そして、こうも書いた ── この遅れは不思議じゃなく、ものさし になる。GPSは電波の旅の時間から位置を出すし、レーダーやソナーは往復の遅れで相手までの距離を測る、と。

今日はその一文の、続きだ。あの「遅れのものさし」は、いまや指先ほどのチップに収まって、数百円〜数千円で買える。ToF(Time of Flight ── 飛行時間)センサ という。スマホの顔認証の奥にも、ロボット掃除機にも、これが入っている。

式は、拍子抜けするほど短い。光を出してから返ってくるまでの時間を Δt\Delta t、光の速さを cc とすると、距離 dd

d=cΔt2d = \frac{c \, \Delta t}{2}

── 2で割るのは、光が 行って帰ってくる(往復する)から。それだけの式だ。

「そんな時間、測れるわけがない」

でも、数字を入れてみると、すぐに壁にぶつかる。

光の速さは、秒速およそ30万km ── 数字で書くと 3×1083\times10^8 m/s。1m先の壁なら、旅は往復で2m。かかる時間は、距離÷速さで

Δt=2 m3×108 m/s6.7×109 s\Delta t = \frac{2 \ \mathrm{m}}{3\times10^8 \ \mathrm{m/s}} \approx 6.7\times10^{-9} \ \mathrm{s}

── 6.7ナノ秒。まだいい。でも、1mmの違いを見分けたければ、距離の差は往復で2mm。同じ割り算をすると 6.7ピコ秒 ── 1秒の1兆分の6.7だ。最新のコンピュータのクロック1回分よりずっと短い。普通のストップウォッチはもちろん、電子回路の「時計」でも、まともに測れる時間じゃない。

じゃあ、無理なのか。── そうではなくて、ここからが工夫の見せ場だ。道は、大きく二本ある。

道その一 ── 時計の代わりに、位相で測る

一本目の道は、時間を直接測るのを、あきらめる。代わりに、光を 歌わせる

出す光の明るさを、一定の周波数 ff で サイン波のように強弱させる(変調という)。すると、返ってきた光も同じリズムで明滅しているけれど、旅の時間 Δt\Delta t のぶんだけ、リズムがずれて いる。このずれが、位相差 φ\varphi だ:

φ=2πfΔt\varphi = 2\pi f \, \Delta t

── 左辺の φ\varphi は「返ってきた明滅が、出したものからどれだけずれているか」(角度)、ff は明滅の速さ、Δt\Delta t が知りたい旅の時間。時間のずれを、波形のずれに翻訳した ということだ。

これが効くのは、位相なら電子回路が得意だからだ。出した波と返ってきた波を混ぜて比べれば、ピコ秒の時間差が、ゆっくり測れる量に化ける。── 見えない位相が形(ここでは距離)を決めている、という話は 別の記事 で一度歩いた。あれの、測定器としての使い方だ。

ただし、ただでは済まない。位相は 一周すると元に戻る。旅が変調の一周期ぶんより長くなると、φ\varphi は巻き戻って、遠くの壁が近くに見える(距離の折り返し)。

これも、数字を一つ転がすと手触りが出る。変調を f=100f=100MHz にしてみよう。一周期は 1/f=101/f = 10 ナノ秒。位相が一周してしまうのは、旅がちょうど10ナノ秒かかったとき ── さっきの割り算を逆に使うと、往復で 3×108×108=33\times10^8 \times 10^{-8} = 3 m、つまり 片道1.5m だ。1.5mより遠い壁は、位相が巻き戻って、手前にいるように見える。細かく測りたくて周波数を上げるほど、この折り返しは手前に来る ── だからこの方式(間接ToF と呼ばれる)では、範囲を広げれば細かさが落ち、細かくすれば範囲が縮む。ものさしの目盛りと長さは、いつも取引になる。

道その二 ── 一発撃って、山を積む

二本目の道は、正面突破だ。本当に、短いパルスを一発撃つ。重ね合わせの回の言葉なら、インパルス ── 一発の叩き ── を光でやる。そして返事が届いた瞬間を、専用の超高速ストップウォッチ(TDC)で刻む。こちらは 直接ToF と呼ばれる。

でも、一発の返事はあまりに弱い。壁で跳ね返って戻ってくる光子は数えるほどで、しかも部屋の照明や太陽の光子が、関係ない時刻にぽつぽつ混ざってくる。一発だけでは、本物の返事と雑音の区別がつかない。

そこで ── 何千発も撃つ。そして毎回、「光子が届いた時刻」を記録して、ヒストグラム(度数分布の山)に積んでいく。雑音の光子はでたらめな時刻に届くから、平らに散らばる。でも本物の返事は、毎回きっかり Δt\Delta t 後に届くから、同じ場所に山が立つ。山のてっぺんの時刻が、旅の時間だ。

どうして「数を撃てば浮かぶ」と言い切れるのか、一歩ずつ確かめておこう。パルスを NN 発撃つと、山の高さは素直に NN に比例して育つ。雑音も増えるけれど、増え方が違う ── でたらめに届く光子の数は ポアソン統計 に従っていて、カチッと鳴る回数を数えるラボで見たとおり、平均 mm 個のまわりのばらつきは m\sqrt{m} しかない。つまり、雑音の床のでこぼこは N\sqrt{N} でしか育たない。山とでこぼこの比を取ると

でこぼこNN=N\frac{\text{山}}{\text{でこぼこ}} \propto \frac{N}{\sqrt{N}} = \sqrt{N}

── 4倍撃てば2倍くっきり、100倍撃てば10倍くっきり。一発一発はでたらめでも、数を集めると形が浮かぶ ── その「浮かび方」まで、統計はちゃんと約束してくれている。

この方式の画素は SPAD(単一光子アバランシェダイオード)という。光子が1個当たると、雪崩のように電流が増えて「来た!」と1回鳴る ── 光の世界のガイガーカウンタだと思えばいい。

下のラボで、この「山が積み上がる」ところを触ってみて。パルスを撃つたびに、返事の光子(緑)と雑音の光子(灰)が時刻の軸に落ちて、山が育っていく。壁を遠ざければ山は右へ動くし、雑音を増やせば山は埋もれかける ── でも、撃つ回数を増やせば、また浮かび上がる。

点から、場へ

ここまでは「壁までの距離」── 一点の話だった。でも、いま売られている小さなToFセンサは、一点では終わらない。受け側の画素を並べて、視野を格子に切り、ゾーンごとに別々の距離 を返す。8×8なら、64個の距離が一度に出てくる。

これは、場の章の言葉を借りたくなる眺めだ。あそこで場とは「空間の各点に、測れば必ず答えが返る量が張り付いているもの」だと言った。8×8のToFが返すのは、いわば 距離の場 ── 視野の各方向に「そこまで何mm」という数が張り付いた、粗いけれど本物の場だ。手をかざせば近い値の塊が現れて、動かせば塊が流れていく。

ただし、正直に言っておくことがいくつかある。光で測る以上、光の性質がそのまま弱点になる ── 透明なもの(ガラス・澄んだ水)は光がすり抜けて、向こう側の距離を答えてしまう。鏡のような面 は光をあらぬ方向へ跳ね返して、返事が帰ってこない。そして部屋の隅では、壁→床→センサのように 回り道をした返事 が混ざる。遅れて届く返事の回で「過去の叩きが、旅の時間の合ったものだけ届く」のを見たけれど、あれと同じで、別の道を旅した返事は、別の遅れで届く(マルチパスという)。ヒストグラムには山が二つ立つ ── 賢いセンサは「一番手前の山」を選ぶけれど、騙されることもある。測定器の答えを信じる前に、光がどんな旅をしたかを想像する癖は、持っておいて損がない。

机の上で、本物を

嬉しいのは、ここまでの話が全部、市販の部品で確かめられる ことだ。8×8のToFモジュール(VL53L5CXなど、数千円)と Raspberry Pi Pico を、I²C の4本の線(電源2本+データ2本)でつなぐだけ ── センサが測った64個の距離を、そのままブラウザに流して眺められる。深度ビューアに、実機がなくても合成データで触れるデモを置いてある。実機をつなぐと、そこに本物の「距離の場」が流れ込む。

配線と手順はビューアの中に書いた。深いことは何もしていない ── センサの中で、この記事の全部(パルス・SPAD・ヒストグラム・64ゾーン)が毎秒15回起きていて、私たちはその結果を受け取っているだけだ。

── これで、「遅れはものさし」に実物がついた。光を こちらから出して、返事の遅れを読む。それが今日の話。

でも、少し考えると、不思議なことがある。今日のセンサは、光を出さないと何も見えなかった。じゃあ、何も出さずに、ただ「見る」だけで分かることはないんだろうか。── 実は、ある。すべての物は、温度を持つかぎり、自分で光っている。君も、この机も、いまこの瞬間も。目に見えないだけで。── 次回は、その光を受け取る話だ。