SDRとスペクトル — LimeSDR XTRXでGPS L1を見る
スペクトルのページのSDR版。信号源・アッテネータ・RXゲインを変えて、SDRの画面にGPS L1がどう映るかを見る
受信スペクトル @ 1575.42 MHz
縦軸はアンテナ端(入力)換算のパワー[dBm]。数値はLMS7002M/XTRXの代表値を用いた教材用モデルで、実機の設定・個体で変わります。GPS L1(C/A+P(Y))は幅約2/20MHzの sinc² の裾で、受信機入力=信号源+ATT。
LimeSDR XTRX(LMS7002M)の受信諸元(目安)
| 項目 | 目安 | スペクトルへの効き方 |
|---|---|---|
| 周波数範囲 | 30 MHz – 3.8 GHz | L1 1575.42 MHz を含む(L2/L5/L6も) |
| RX雑音指数 NF | 約 3.5 dB | 雑音床を決める(低いほど弱信号が見える) |
| RXゲイン | 0 – 約66 dB | 低いとADC雑音に埋もれ、高いとクリップ |
| ADC分解能 | 12 bit | ダイナミックレンジ ~74 dB。強弱の同時扱い |
| 基準クロック | VCTCXO ±0.5ppm級 | L1で±0.8kHz程度の周波数ずれ(TXページ) |
| 帯域幅 | 最大 ~120 MHz(PCIe) | 本例は数MHz。広いほどRBWも広がる |
出典の目安: LimeSDR XTRX 製品ページ / LMS7002M データシート。NF・ゲイン・最大入力はゲイン配分や周波数で変わるため、正確な設計は必ずデータシートで確認してください。
ゲインの「ちょうどいい」を探す — 弱すぎ / 強すぎの間
SDRのスペクトルは、生の電波そのものではなく「フロントエンド+ADCを通した後」の姿です。ここには2つの壁があります。
下の壁(雑音床): ゲインが低いとADCの量子化雑音が入力換算で高くなり、弱い信号がその下に沈みます。ゲインを上げると量子化雑音は下がり、やがてフロントエンドの熱雑音(NF)で決まる本来の床に到達します。ここが弱信号を見る限界。
上の壁(ADCフルスケール): ゲインを上げすぎると強い成分がADCの上限を超え、クリップ(飽和)して波形が潰れ、スペクトルに偽のスプリアスが立ちます。ゲイン下げかATT追加が必要。
だから正解は「クリップしない範囲でできるだけゲインを上げ、熱雑音床まで下げきる」。上のシミュレーターでゲインを動かすと、雑音床(紫)とフルスケール線(ピンク)の間にGPSの台形を収める感覚がつかめます。
RBW(サンプルレート)で見え方が変わる
実際の手順(LimeSuite / GQRX などで)
① 中心周波数を 1575.42 MHz に、サンプルレートを数Msps(例2.5〜10)に設定。② RXゲインを低めから上げていき、雑音床が持ち上がり始める手前(熱雑音床に到達したあたり)で止める。③ 信号源(gps-sdr-sim+SDR TX や信号発生器)を有線でつなぎ、ATTで −50dB 前後に落として入力する。④ 信号が強すぎてクリップ(スプリアス多発・床が全体的に上昇)したらゲインかATTで下げる。
受信して測位までやるなら、スペクトル確認のあと GNSS-SDR / PocketSDR に生I/Qを流し込み、相関・追尾・復調させます。受信の流れの各ブロックが実際に動きます。