電波伝搬におけるスキャッター(大気散乱波・対流圏散乱波)は、大気中にある微細な「不均一性」に電波がぶつかり、四方八方に散乱(スキャッター)される現象です。

本来なら見通し距離外(地平線の向こう側)へは届かないはずのVHF、UHF、マイクロ波などの電波が、この散乱によってわずかに地上へ戻ってくるため、数百km離れた遠距離通信が可能になります。

以下に、その発生メカニズムと予測方法を解説します。

発生メカニズム

 

 

大気(特に地上から十数kmまでの対流圏)は、常に太陽光による加熱や風、気流の乱れによって、温度や湿度、気圧が複雑に変化しています。これにより、大気中に「屈折率の不均一な塊(乱気流の渦など)」が絶えず無数に発生します。

送信アンテナから発射された強い電波が、上空でこの不均一な領域(散乱体)を通過するとき、電波の一部が不規則に曲げられ、散乱光のように周囲へ広がります。その散乱された電波のごく一部が受信アンテナに到達することで、遠距離通信が成立します。

スキャッターは、電波を散乱させる「原因(媒体)」によって主に以下の3つに分類されます。

  • 対流圏スキャッター(大気散乱): 上空の気流の乱れによる大気の屈折率のゆらぎで発生します。24時間365日、常にどこかでわずかに発生しているのが特徴です。
  • 雨滴スキャッター(レインスキャッター): 発達した積乱雲(雷雲)や激しい集中豪雨などの「雨粒」に電波(主に10GHz以上のマイクロ波)がぶつかって散乱します。アマチュア無線などで超遠距離通信に利用されます。
  • 流星スキャッター(メテオスキャッター): 宇宙から地球の大気圏に流星が突入した際、上空100km付近(電離層のE層付近)に一時的に発生する高密度の「電離ガス(プラズマ柱)」によって電波が散乱・反射されます。

 

予測方法

スキャッターはダクト(大気ダクト)のように電波が閉じ込められる現象ではないため、予測の考え方が種類によって大きく異なります。

 

1. 対流圏スキャッターの予測(統計的予測)

気流の乱れ(大気の不均一性)は常にどこかで発生しているため、ダクトのように「いつ突発的に発生するか」ではなく、「どのくらいの損失で常に繋がるか」を予測します。

  • 気候区分と距離による算出: ITU-R(国際電気通信連合)の勧告などに定められた標準的な計算式を用い、通信を行う地域の気候(海上、陸上、砂漠など)や、アンテナ間の距離、地上障害物の遮蔽角から、伝搬損失(減衰量)を統計的に予測・計算します。
  • 大気の安定度からの推測: 低気圧の通過時や前線の付近、日中の日射によって大気が対流・混合し、気流の乱れ(乱気流)が激しくなる時間帯・季節ほど、散乱効率が高くなり信号が強くなると予測できます。

 

2. 雨滴スキャッターの予測(リアルタイム予測)

激しい雨が発生源となるため、気象レーダー(雨量レーダー)の情報がそのまま予測に直結します。

  • 線状降水帯や積乱雲の監視: 気象庁の「高解像度降水ナウキャスト」などで、雨雲の頂点(エコートップ)が上空高く(高度5,000m〜10,000m以上)まで発達している激しい雨雲を見つけます。
  • 交差パターンの計算: 送信アンテナと受信アンテナの指向性(電波の向き)が、その発達した雨雲の内部で交差する(共通の散乱体となる)ようにアンテナの向きを計算・調整します。

 

3. 流星スキャッターの予測(天文学的予測)

流星の出現数をベースに予測を行います。

  • のほうが地球に飛び込む流星の数が多くなるため、この時間帯に発生しやすくなると予測されます。明け方(深夜から朝方にかけて): 地球が公転軌道上を進む向きの関係から、夕方よりも時間帯の考慮
  • 流星群の活動期: ペルセウス座流星群やふたご座流星群など、年間スケジュールが決まっている三大流星群の極大期(ピーク時)を狙うことで、非常に高確率で発生を予測できます。

 

電波伝搬におけるラジオダクト(大気ダクト)は、特定の気象条件によって大気の屈折率が急激に変化し、電波がその境界で反射・屈折を繰り返して光ファイバのように遠方まで伝わる現象です。 [1, 2]

以下に、その発生メカニズムと予測方法を解説します。

 


発生メカニズム

通常の大気は上空に行くほど密度が低くなり、屈折率がなだらかに減少するため、電波は地球の曲率に沿ってわずかに下向きに曲がりながら進みます。しかし、気象の変動によって「高度が上がるにつれて気温が上昇する(温度逆転層)」または「高度が上がるにつれて湿度が急激に低下する」という異常な大気構造が生まれると、屈折率の分布が逆転します。 [1, 2]

この急激な変化の境界において、水平方向に発射されたVHFやUHF、マイクロ波などの電波がトラップされ(閉じ込められ)、地表面や大気層の間で反射を繰り返すことで、本来届かないはずの超遠方(数百~千数百km先)までほとんど減衰せずに伝搬します。 [1, 2]

 

ダクトは発生する高度や要因によって、主に以下の3つに分類されます。

  • 蒸発ダクト(海面ダクト): 海面からの水蒸気の蒸発により、海面直上の湿度が非常に高くなることで発生します。主に3GHz以上のマイクロ波に大きな影響を与えます。 [1]
  • 接地ダクト: 夜間の放射冷却や高気圧の沈降気流、海陸風の移流などにより、地表面近くに温度逆転層ができることで発生します。ダクトの厚みが50〜300mと厚くなるため、VHF帯の電波も閉じ込めることがあります。 [1]
  • 離地ダクト(上空ダクト): 地表から離れた上空(対流圏内)に、暖かい乾燥した空気の層が冷たく湿った空気の層に挟まれることで発生します。 [1, 2]


 

 

予測方法

 ラジオダクトの予測は、主に気象データを用いた大気構造の解析と、無線家や研究者が利用する予測モデル・シミュレーションによって行われます。 [1]

 

 

1. 気象指標による解析

大気中の電波の曲がり具合を表す修正屈折率(Mプロファイル)を算出します。高度 z に対する修正屈折率 M の勾配が負(dM/dz < 0 )になる領域が存在する場合、そこにダクトが発生していると判断できます。この算出には以下のデータが使われます。 [1]

  • 高層気象観測(ラジオゾンデ): 上空の気温、湿度、気圧の鉛直分布からMプロファイルを計算します。
  • 気象衛星・数値予報モデル: 広範囲の気温・湿度分布データから、ダクトの発生予測マップを作製します。

 

2. 特徴的な気象条件からの推測

以下のような気象状況のとき、ダクトが発生しやすいため予測の目安になります。

  • 穏やかで晴れた日の夜間から翌朝: 放射冷却によって接地ダクトが発達しやすくなります。
  • 高気圧に覆われているとき: 高気圧内の下降気流によって上空の空気が圧縮・断熱昇温し、強い温度逆転層(離地ダクト)が形成されます。
  • 春から夏、秋への季節の変わり目: 海水温と気温の差が大きくなり、風が穏やかな日に日本海や太平洋などの海上・沿岸部で発生確率が高まります。 [1, 2, 3, 4]

3. 専用の予測ツールの活用

現在では、世界中の通信関係者が利用する、気象予測モデル(GFSなど)をベースにした対流圏異常伝搬の予測サイトが存在します。

  • 算出した大気の屈折率分布データをもとに、電波がどのように曲がって進むかをコンピュータ上でシミュレーションし、具体的な電波の到達エリアを予測します。レイトレース法(光線追跡法)
    https://www.ieice.org/cs/ap/misc/denpan-db/prop_model_db/model_list/ducting/
  • William Hepburn's Tropospheric Ducting Forecasts: 世界中のラジオダクト(対流圏ダクト)の発生予測マップを数日先まで視覚的に公開している代表的な海外サイトです。

 

 

 

スポラディックE層(Es層、通称「Eスポ」)の発生予測にはいくつかのアプローチがあります。目的(研究的な予測か、アマチュア無線などの実用的な把握か)によって使う方法が変わってくるので、両方を紹介します。

1. 季節性・時間帯からの経験則

Es層は春から夏ごろにかけて、主に昼間に上空約100km付近に局地的・突発的に発生するという強い季節性があります。特に6〜8月がピークシーズンで、日中(10時〜18時頃)に発生しやすい傾向があります。まずはこの季節・時間帯の傾向を頭に入れておくだけでも、発生しやすいタイミングの見当がつきます。 Wikipedia

2. リアルタイム観測データを見る

最も実用的なのは、NICT(情報通信研究機構)が公開しているイオノゾンデ観測データです。稚内、国分寺、山川、沖縄の4つの観測地点で15分おきに監視されており、Webサイト上でEs層発生状況(foEsの臨界周波数)をリアルタイムに確認できます。赤く表示されるほど強いEs発生を示すのが一般的な見方です。アマチュア無線家の間では、こうした観測点のデータと、各地のVHF/FM DX情報サイトの実況報告を組み合わせて「今どこで発生しているか」を把握するのが一般的です。 Hamazo

3. 発生メカニズムに基づく予測(風シアー理論)

Es層は、中間圏〜下部熱圏における風のシアー(風速・風向の急激な変化)が、流星起源の金属イオン(Mg、Feなど)を薄い層に圧縮することで形成されると考えられています。この理論に基づき、大気潮汐の位相から発生しやすい時間帯・地域をある程度推定する研究が進められています。

4. 数値シミュレーションモデル

近年、全球大気圏–電離圏モデルGAIAを用いたEs層の数値シミュレーションモデルが開発され、現実的なEs層の構造の再現が可能となってきました。以前はEs層の振る舞いは極めて複雑で、数値モデルによる再現や予測はほとんど不可能と考えられてきましたが、これにより本格的な予測研究が進みつつある段階です。 NICT NICT

5. 宇宙天気(磁気嵐)との関連(最新の知見)

従来、中低緯度でのEs層は主に大気潮汐によって形成され、磁気嵐など宇宙天気現象には無関係と考えられてきました。しかし2024年5月の巨大磁気嵐の際、全球に分布する37の地上イオノゾンデとCOSMIC-2衛星群の観測データ分析により、Es層が東南アジア・オーストラリア・南太平洋・東太平洋など広い地域で大幅に増強されることが発見されました。これは今後のEs予測モデルに新たな要素を加える可能性がある発見です。 Kyushu University Kyushu University


実用面こまめにチェックしたいなら、NICTのイオノゾンデサイトをブックマークして日中に定期的に確認するのが一番手軽です。研究レベルの予測モデルに興味があるなら、GAIAモデルや宇宙天気予報センターの発表を追うとよいでしょう。

 

HF/VHF帯において、突発的に発生して遠距離通信を可能にする「スポラディックE層(Es層)」の状況把握は重要です。

毎回ブラウザを開いてNICT(情報通信研究機構)のページを確認しに行くのは少し面倒ですよね。そこで今回は、Pythonを使って「最新2時間のEs層データを自動取得し、見やすい色分けテーブルでデスクトップに常時表示するGUIアプリ」のコードを解説します。

 

ツールの主な機能

  • Webスクレイピングの自動化: NICTの最新データを自動でパースして取得。

  • マルチスレッド処理: データ取得中に画面がフリーズ(応答なし)するのを防ぎます。

  • 強度の視覚化: 電離層の臨界周波数(fxEs)の数値に応じて、セルを自動で色分け(赤や黄など)。

  • 関連リンクへのアクセス: イオノグラムやデリンジャー現象、ダクト予報のページへ1クリックでジャンプ。(それぞれのデータの見方は各サイトをご確認ください)

  • 10分おきの自動更新: 立ち上げっぱなしで常に最新状態をキープ。

全体のソースコード

まずは今回解説するコードの全体像です。tkinter、requests、pandasを使用しています。

 

Python

import tkinter as tk
import requests
import pandas as pd
from io import StringIO
from datetime import datetime
import webbrowser
import threading  # バックグラウンド処理用

 

URL = "https://wdc.nict.go.jp/Ionosphere/realtime/fxEs/latest-fxEs.html"  # スポラディックE層
LINK1_URL = "https://wdc.nict.go.jp/Ionosphere/realtime/"  # イオノグラム
LINK2_URL = "https://wdc.nict.go.jp/Ionosphere/realtime/x-ray/now/mercator.html"  # デリンジャー現象
LINK3_URL = "https://wdc.nict.go.jp/Ionosphere/realtime/oblver.html" # 斜め伝搬可能周波数
LINK4_URL = "https://www.dxinfocentre.com/tropo_eas.html" # Hepburn Tropospheric Ducting Forecasts ダクト予測

 

class EsLayerGridViewer:
    def __init__(self, root):
        now_str = datetime.now().strftime("%Y/%m/%d %H:%M:%S")

        self.root = root
        self.root.title(f"スポラディックE層:最新2時間     {now_str} 更新")
        self.root.geometry("520x300")
        self.root.configure(bg="#f0f0f0")

 

        # --- 上部コントロールエリアのフレーム ---
        self.top_frame = tk.Frame(root, bg="#f0f0f0")
        self.top_frame.pack(pady=5, padx=10, fill="x")

 

        # リンクボタン
        self.link1_btn = tk.Button(
            self.top_frame, text="イオノグラム",
            font=("Meiryo", 9, "underline"), fg="#0000FF", cursor="hand2",
            bg="#f0f0f0", activebackground="#f0f0f0", activeforeground="#0000FF",
            bd=0, command=self.open_link1
        )
        self.link1_btn.pack(side="left", padx=5)

 

        self.link2_btn = tk.Button(
            self.top_frame, text="デリンジャー現象",
            font=("Meiryo", 9, "underline"), fg="#0000FF", cursor="hand2",
            bg="#f0f0f0", activebackground="#f0f0f0", activeforeground="#0000FF",
            bd=0, command=self.open_link2
        )
        self.link2_btn.pack(side="left", padx=5)

 

        self.link3_btn = tk.Button(
            self.top_frame, text="斜め伝搬可能周波数",
            font=("Meiryo", 9, "underline"), fg="#0000FF", cursor="hand2",
            bg="#f0f0f0", activebackground="#f0f0f0", activeforeground="#0000FF",
            bd=0, command=self.open_link3
        )
        self.link3_btn.pack(side="left", padx=5)

 

        self.link4_btn = tk.Button(
            self.top_frame, text="ダクトFCST",
            font=("Meiryo", 9, "underline"), fg="#0000FF", cursor="hand2",
            bg="#f0f0f0", activebackground="#f0f0f0", activeforeground="#0000FF",
            bd=0, command=self.open_link4
        )
        self.link4_btn.pack(side="left", padx=5)

 

        # ステータスラベル
        self.status_label = tk.Label(self.top_frame, text="データを読み込み中...", font=("Meiryo", 9), bg="#f0f0f0", anchor="e")
        self.status_label.pack(side="right", fill="x", expand=True)

 

        # テーブルを描画するためのメインフレーム
        self.table_frame = tk.Frame(root, bg="#d0d0d0", bd=1)
        self.table_frame.pack(expand=True, fill="both", padx=10, pady=5)

 

        # 初回データ取得(スレッドで実行)
        self.start_update_thread()

 

   def open_link1(self):
        webbrowser.open(LINK1_URL)

 

   def open_link2(self):
        webbrowser.open(LINK2_URL)

 

    def open_link3(self):
        webbrowser.open(LINK3_URL)

 

    def open_link4(self):
        webbrowser.open(LINK4_URL)

 

    def get_cell_color(self, val_str):
        if not val_str or "-" in val_str:
            return "#FFFFFF", "#000000"

        try:
            num = float(val_str)
            if num >= 9.0:
                return "#FF0000", "#FFFFFF"
            elif num >= 8.0:
                return "#FF66CC", "#000000"
            elif num >= 7.0:
                return "#FFFF00", "#000000"
            else:
                return "#00FFFF", "#000000"
        except ValueError:
            return "#FFFFFF", "#000000"

 

    def start_update_thread(self):
        """通信フリーズを防ぐため、データ取得を別スレッドで開始する"""
        self.status_label.config(text="データ更新中...")
        thread = threading.Thread(target=self.fetch_data_worker, daemon=True)
        thread.start()

 

    def fetch_data_worker(self):
        """バックグラウンドでデータを取得する関数(サブスレッド)"""
        try:
            headers = {
                "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"
            }

 

            # timeoutを設定して無限フリーズを防止
            response = requests.get(URL, headers=headers, timeout=15)
            response.encoding = 'utf-8'

            html_data = StringIO(response.text)
            dfs = pd.read_html(html_data, flavor='html5lib', header=0)

 

            if len(dfs) >= 2:
                # GUIの更新はメインスレッドに安全に引き渡す (after経由)
                self.root.after(0, self.draw_table, dfs[1])
            else:
                self.root.after(0, lambda: self.status_label.config(text="エラー: データテーブルが見つかりません。"))

        except Exception as e:
            self.root.after(0, lambda: self.status_label.config(text={f"データ取得エラー: {e}"}))

 

        # 10分後に次の更新を予約 (600,000ミリ秒)
        self.root.after(600000, self.start_update_thread)

 

    def draw_table(self, df):
        """取得したデータフレームを基にGUIのテーブルを再描画する(メインスレッド)"""
        # 既存のウィジェットを削除
        for widget in self.table_frame.winfo_children():
            widget.destroy()

        columns = [str(col) for col in df.columns]

 

        # 列の伸縮比率を設定 (観測地列を少し広めに、数値列は均等に)
        self.table_frame.columnconfigure(0, weight=2)
        for col_idx in range(1, len(columns)):
            self.table_frame.columnconfigure(col_idx, weight=1)

 

        # ヘッダーの描画
        for col_idx, col_name in enumerate(columns):
            self.table_frame.rowconfigure(0, weight=1)
            lbl = tk.Label(
                self.table_frame, text=col_name, font=("Meiryo", 9, "bold"),
                bg="#e0e0e0", fg="#000000", height=1, relief="solid", bd=1
            )
            lbl.grid(row=0, column=col_idx, sticky="nsew")

 

        # データの描画
        for row_idx, row in df.iterrows():
            grid_row = row_idx + 1
            self.table_frame.rowconfigure(grid_row, weight=1) # 行の伸縮設定

            for col_idx, value in enumerate(row):
                val_str = "" if pd.isna(value) else str(value)

                if col_idx == 0:
                    bg_color, fg_color = "#FFD1D1", "#000000"
                else:
                    bg_color, fg_color = self.get_cell_color(val_str)

                lbl = tk.Label(
                    self.table_frame, text=val_str, font=("Meiryo", 10),
                    bg=bg_color, fg=fg_color, height=1, relief="solid", bd=1
                )
                lbl.grid(row=grid_row, column=col_idx, sticky="nsew")

        self.status_label.config(text=" ")

 

if __name__ == "__main__":
    root = tk.Tk()
    app = EsLayerGridViewer(root)
    root.mainloop()

 

コードの重要なポイント解説

1. フリーズさせないための「マルチスレッド(threading)」

GUIアプリでよくある失敗が、「ネットからデータを取り込んでいる間、アプリの画面が固まる」という現象です。

このコードでは start_update_thread メソッドを使い、データ取得処理(fetch_data_worker)をサブスレッド(裏方)で実行しています。これにより、通信中もウィンドウを動かしたり、リンクボタンを押したりといった操作が快適に行えます。

2. Pandasによる超簡単HTMLテーブル解析

NICTのページにあるデータ表を解析するために、pd.read_html を使用しています。

 

html_data = StringIO(response.text)
dfs = pd.read_html(html_data, flavor='html5lib', header=0)

これにより、HTML内の <table> タグを見つけ出し、自動的にPythonで扱いやすいDataFrame(データ表)に変換してくれます。今回は目的のデータが2番目のテーブルにあるため、dfs[1] を抽出してGUIに渡しています。

 

3. スレッドセーフなGUI更新(root.after)

Tkinterのルールとして、「メインスレッド以外からGUIのパーツ(ウィジェット)を直接操作してはいけない」というものがあります。

サブスレッドで取得したデータを安全に画面へ反映させるため、self.root.after(0, ...) を使ってメインスレッドに描画処理(draw_table)を依頼しています。

また、関数の最後で self.root.after(300000, self.start_update_thread) を呼び出すことで、10分(600,000ミリ秒)ごとの自動定期更新ループを実現しています。

 

4. 数値に応じた自動色分け(ヒートマップ効果)

get_cell_color メソッドで、臨界周波数の値の大きさに応じて背景色と文字色を決定しています。

  • 9.0 MHz以上: 赤

  • 8.0 MHz以上: ピンク

  • 7.0 MHz以上: 黄色

  • それ未満: 水色

画面を一瞥するだけで、「今、どこで強いEsが出ているか」が直感的にわかる設計です。

 

5. 便利なWebリンク機能

上部に配置された「イオノグラム」「デリンジャー現象」「斜め伝搬可能周波数」「ダクトFCST」のボタンは、クリックすると webbrowser.open() によってPCのデフォルトブラウザで対象ページが開きます。より詳細なチャートが見たくなった時もワンクリックで遷移できます。

 

まとめ

デスクトップの片隅に置いておくだけでリアルタイムにスポラディックE層の状況を監視できるツールを作成してみました。

さらに改造するなら、「9.0MHzを超えたらビープ音を鳴らすアラート機能」や「タスクトレイに常駐させる機能」などを追加してみるのも面白いかもしれません。

 M型コネクタ

M型とN型コネクタは、無線通信や計測器などで広く使われる高周波(RF)同軸コネクタです。

それぞれの特徴とデメリットは以下の通りです。

日本国内のアマチュア無線や移動体通信などで古くから広く普及しているコネクタです。

  • 構造の特徴: ネジ結合式でサイズが大きく、堅牢でケーブルの着脱が比較的容易です。
  • 特性インピーダンス: 規定されていません(一般に不整合コネクタと呼ばれ、接続部でインピーダンスが乱れます)。
  • 使用周波数帯: 主に300MHz以下(HF帯〜VHF帯)の比較的低い周波数に向いています。
  • メリット: 構造がシンプルで安価であり、太いケーブルにも対応しやすく機械的強度が高い点です。
  • デメリット: 構造上、水が侵入しやすいため屋外使用では防水処理が必須です。また、UHF帯(300MHz以上)では信号の反射損失が大きくなるため、高い周波数には使えません。 [1, 2, 3, 4, 5]

N型コネクタ

高性能な測定器や、基地局などの業務用無線機器、高い周波数を扱う機器で標準的に使われるコネクタです。 [1]

  • 構造の特徴: ネジ結合式で、中心導体や絶縁体の寸法が厳密に設計されています。
  • 特性インピーダンス: 50Ω(または75Ω)に正確に整合されています。
  • 使用周波数帯: 主に10GHz程度まで(高性能なものではさらに高域まで)のマイクロ波帯に対応します。
  • メリット: 高周波特性が非常に優れており、信号のロスや反射が最小限に抑えられます。また、ゴムパッキンが内蔵されているものが多く、標準で優れた防水性を備えています。
  • デメリット: M型に比べて構造が精密なため価格が高い点です。また、50Ω用と75Ω用で中心ピンの太さが異なるため、誤って混用すると破損の原因になります。 [1, 2, 3, 4, 5]

BNCコネクタ

BNCコネクタは、計測器や映像機器、ネットワーク機器などで広く使われている小型の同軸コネクタです。 [1, 2, 3, 4, 5]

特徴とデメリットは以下の通りです。

オシロスコープなどの測定器や、工場などの産業用機器、監視カメラの映像伝送などで標準的に使用されています。 [1]

  • 構造の特徴: バイヨネットロック式(2ピンロック式)を採用しており、差し込んで右に1/4回転させるだけで簡単に着脱できます。
  • 特性インピーダンス: 50Ωと75Ωの2種類が存在します。
  • 使用周波数帯: 主に4GHz以下(特性によっては1GHz以下)の周波数帯に対応します。
  • メリット: 工具を使わずにワンタッチで素早く確実にロックできるため、着脱の作業性が極めて高い点です。
  • デメリット: ネジ式ではないため結合部の密着度が低く、高い周波数では信号漏れやロスが生じやすいためマイクロ波帯には不向きです。また、外側からの引っ張る力や振動に弱く、引っ張られると接触不良を起こすことがあります。さらに、50Ω用と75Ω用で形状が非常に似ているため、誤って混用すると機器の破損や信号劣化の原因になります。 [1, 2, 3, 4, 5]

 

BNCコネクタの50Ω用と75Ω用は、接続部分にある「白い絶縁体(ジュラコンなど)」の量で見分けるのが最も確実です。

一見同じに見えますが、内部の構造が以下のように異なります。

  • 50Ω用の見分け方: コネクタの先端(接続面)を正面から覗き込んだとき、中心ピンの周りが白いプラスチック樹脂(絶縁体)で完全に埋まっています。
  • 75Ω用の見分け方: 正面から覗き込んだとき、中心ピンの周りに樹脂がなく、空気層(空間)になっています。絶縁体は奥の方に引っ込んでおり、正面からはほとんど見えません。

特性インピーダンス(Ω)は、中心導体の太さと外側導体の内径、そして間の絶縁体の「誘電率」で決まります。75Ωにするためには誘電率を下げる必要があるため、樹脂をなくして空気(誘電率がほぼ1)にしているという構造上の理由があります。

 

混用時の注意点

50Ωと75ΩのBNCコネクタは物理的に結合できてしまいますが、75Ωのメス(ジャック)に50Ωのオス(プラグ)を無理に差し込むと、50Ωの太い中心ピンによって75Ω側の接触バネが広がり、永久変形(破損)して接触不良の原因になります。必ず目視で確認してから接続してください。

 

SMAコネクタ

SMAコネクタは、マイクロ波帯などの高い周波数を扱う機器や、小型の通信機器で最も広く使われている同軸コネクタの一つです。 [1, 2]

特徴とデメリットは以下の通りです。

 

1GHzを超える高周波回路や、Wi-Fiルーター、GPS機器、基板上のモジュール接続などに標準的に使用されています。 [1]

  • 構造の特徴: ネジ結合式(六角ナット)で、M型やN型に比べて非常に小型・軽量です。
  • 特性インピーダンス: 50Ωに正確に整合されています。
  • 使用周波数帯: 一般的なもので12.4GHzまで、高性能なものでは18GHz〜26.5GHzまでの超高周波(マイクロ波帯)に対応します。
  • メリット: 小型ながら高周波特性が極めて優秀で、信号のロスや反射が非常に少ない点です。ネジでしっかりと固定できるため、耐振動性にも優れています。
  • デメリット: 構造が繊細なため、着脱寿命(耐久回数)が数百回程度と比較的短いです。また、締め付け時には適切な強さで固定するためにトルクレンチが必要となり、手回しだけでは締め付け不足や破損の原因になります。 [1, 2, 3, 4, 5]



 

電離層の E層 は、昼間に太陽からの軟X線や遠紫外線が照射されること、および高度約 90 ~ 130 km の大気(分子状酸素)が電離するという条件で発生します。 [1, 2]

D層とF層の中間に位置し、規則正しく日周変化する特徴を持っています。また、この高度特有の突発的な現象として スポラディックE層(Es層)が発生することでも知られています。 [1, 2]

 

E層の発生メカニズム

通常のE層(規則層)が発生する具体的なメカニズムは以下の通りです。

 

1. 軟X線と遠紫外線の照射

E層は、太陽から放射される波長が約 1~10 nm の 軟X線(エネルギーの弱いX線)や、約90~103 nm の 遠紫外線(ウルトラバイオレット)を大気が吸収することで形成されます。D層を形成する光線よりもややエネルギーが強く、F層で吸収されずに透過してきた光線がこの高度で吸収されます。

 

2. 分子状酸素(O2)の電離

高度約 100 km 付近の大気は、私たちが普段呼吸している空気と同じように、主に分子状の酸素(O2)や窒素(N2)で構成されています。
太陽光線がこれらの分子に衝突すると、特に分子状酸素(O2)が効率よく電離(イオン化)され、自由電子が放出されてE層が作られます。

 

3. 時間帯による明確な変化

大気密度が適度に高いため、電子とイオンが元の分子に戻る「再結合」のスピードが比較的速いという特徴があります。 [1]

  • 昼間:太陽光が当たっている間は電離が上回り、正午頃に電子密度が最大になります。
  • 夜間:太陽光がなくなると再結合が急激に進むため、夜間は非常に弱く(薄く)なります(ただし、D層のように完全に消滅するわけではなく、わずかに残ります)。 [1, 2, 3, 4, 5]


 

特殊なメカニズム:スポラディックE層(Es層)

E層の高度(約 100 km)では、太陽光とは全く異なるメカニズムで、突発的(スポラディック)に電子密度が通常の数倍から数十倍に跳ね上がる スポラディックE層 が発生します。

  • 発生のトリガー:上空の強い風の「シアー(風向や風速の急激な変化)」と、地球の磁場が組み合わさることで発生します。
  • メカニズム:宇宙から降ってきた流星のチリなどが気化してできた金属イオン(鉄やマグネシウムなど)が、風のシアーによって上下から挟み込まれるように一箇所に薄く超高密度に圧縮されます。
  • 特徴:主に春から夏にかけての昼間に多く発生し、普段は宇宙へ突き抜けてしまう高い周波数の電波(VHF帯など)を鏡のように強力に反射します。これにより、FMラジオやTVの超短波が予期せぬ遠方まで届く現象が起こります。 [1, 2]


電離層の D層 は、太陽高度が高い昼間、かつ強い太陽光線(紫外線やX線)が最下層の大気に到達するという条件で発生します。 [1, 2]

電離層の中で最も低い高度(約 60 ~ 90 km)に位置し、上空の層(E層やF層)とは大きく異なる特徴を持っています。 [1]

 

D層の発生条件

D層が発生・発達するには、以下の具体的な条件が必要です。

 

1. 太陽高度が高い(昼間であること)

 D層は太陽光のエネルギーによって作られるため、昼間にしか存在しません。特に太陽が真上近くにくる正午頃(昼前後)に最も電子密度が高くなります。太陽が沈むと、大気密度が高く再結合が非常に早いため、夜間は完全に消滅します。 [1]

 

2. 特定の強い放射線(Lyman-α線やX線)の照射

D層が位置する高度約 70 km 付近は、上空に比べて大気(空気の分子)が非常に濃い領域です。通常、大半の紫外線は上空のE層やF層で吸収されてしまいますが、以下の特定の光線だけがこの低い高度まで突き抜けて届き、D層を形成します。

  • 平常時:太陽から放射される Lyman-α線(ライマン・アルファ線) という特殊な紫外線が、大気中の微量成分である一酸化窒素(NO)を電離させることで発生します。
  • 太陽活動の活発期:太陽から出る軟X線が、主成分である窒素(N₂)や酸素(O₂)を直接電離させることで、D層がさらに強化されます。

D層の最大の特徴:電波の「減衰(吸収)層」

 D層は電子密度自体は低いですが、大気密度(空気分子の数)が非常に高い場所にあります。そのため、飛び込んできた電波によって揺らされた電子が、すぐに周囲の空気分子と激しく衝突します。この衝突により、電波のエネルギーが熱へと変わってしまい、電波が急激に弱められます。これをデリンジャー現象や電波の D層吸収 と呼びます。 [1]

  • 中波(AMラジオなど)への影響:昼間、AMラジオの電波(中波)はD層に吸収されてしまうため、遠くまで届きません。夜になるとD層が消滅するため、電波はさらに上空の E層 まで届いて反射され、夜間だけ遠方のラジオ放送が聞こえるようになります。
  • 短波通信への影響:太陽フレア(爆発現象)が発生すると、強力なX線によってD層の電子密度が爆発的に跳ね上がり、短波電波が吸収されて通信不能になる「デリンジャー現象」を引き起こします。 [1, 2, 3, 4]


 電離層の F1層 と F2層 は、主に太陽光線(極端紫外線)の照射と大気密度の高低(高度の差)という条件がそろうことで発生・分離します。 

昼間は太陽光が強く降り注ぐため、ひとつの F層 が高度によって F1層(約150~200km)と F2層(約200~400km)の2つに分裂し、夜間は太陽光がなくなるため、これらが結合してひとつの F層 に戻ります。 [1]

 

F1層とF2層の発生条件

F1層とF2層が分かれて発生する具体的な条件とメカニズムは以下の通りです。

 

1. 太陽光(極端紫外線)の照射

電離層は、大気分子が太陽からの極端紫外線(10~100 nm)を吸収して電離(イオン化)することで形成されます。そのため、太陽光が十分に降り注ぐ昼間であることが発生の基本条件です。

 

2. 高度による大気組成と密度の違い

太陽光が地球大気に突入すると、高度によって「電離の起きやすさ」と「再結合(イオンが元に戻る現象)のしやすさ」のバランスが変わります。この違いが2つの層を生み出します。

  • F1層の発生条件:高度約 150~200km 付近に発生します。この高度は分子状のガス(N2 や O2)が比較的多く残っているため、太陽光による電離作用が最も活発になる領域です。ただし、密度が高いため再結合も早く、太陽が沈むとすぐに消滅します。
  • F2層の発生条件:高度約 200~400km 付近に発生します。この高度は空気が非常に薄く、主に原子状酸素(O)で構成されています。大気密度が低いため、一度電離した電子とイオンが再結合しにくい(寿命が長い)という環境条件があります。その結果、電離が蓄積されて電離層の中で最も電子密度が高い層が作られます。 [1]

季節や時間帯による変動

2つの層は、太陽との位置関係(日照条件)によって大きく姿を変えます。

  • 昼間:太陽光が強く当たるため、電離が盛んになり F1層 と F2層 にはっきりと分かれます。
  • 夜間:太陽光が届かなくなるため、消滅しやすい F1層 は姿を消します。再結合が遅い F2層 だけが生き残り、夜間の F層(高度約300km)へと変化します。
  • 季節(夏と冬):夏は日照時間が長いため F1層 が明瞭に現れます。一方、F2層 は大気の膨張や組成変化の影響(「冬期異常」と呼ばれる現象)により、夏よりも冬の昼間の方が電子密度が高くなるという特徴があります。 [1, 2, 3, 4]


 

東京とハバロフスク間の直線距離は約 1,472 km です。この距離をスポラディックE層(高度100 kmと仮定)の1回反射(1ホップ)で電波が伝搬する場合、斜め入射(傾斜入射)の効果によって、垂直入射よりもはるかに低い電子密度で144 MHz帯の電波が反射されます。

 

1. 斜め入射におけるM係数の算出

電離層への電波の入射角を θi としたとき、垂直入射での臨界周波数 fc と斜め入射での最高使用周波数 MUF(今回は 144 MHz)の間には、割線の法則(Secant law)と呼ばれる以下の関係があります。

MUF = fc*secθi

 

地球の半径を 6,371 km、スポラディックE層の高度を 100 km、伝搬距離を 1,472 km として幾何学的に計算すると、電離層への入射角θi は約 79.0° となります。このときの倍率(M係数:sec θi)は 5.25 倍になります。

 

2. 必要な臨界周波数(foEs)

144 MHzの電波をこの距離で反射させるために最低限必要な垂直入射臨界周波数 fc(foEs)は、M係数を用いて以下のように下がります。

 

fc = MUF/secθi = 144MHz/5.25  ≒ 27.43MHz

 

つまり、スポラディックE層の臨界周波数が約 27.4 MHz 以上に発達していれば、東京〜ハバロフスク間で144 MHz帯の通信が成立することになります。

 

 

3. 必要な電子密度の計算

電離層が垂直に入射した電波を反射できる最高の周波数(臨界周波数 fc)は、電子密度 Ne を用いて以下の近似式で表されます。

 

fc ≒  8.98×√Ne

 

ここで、fc の単位はHz、Ne の単位は m⁻³ です。

 

この式を電子密度 Ne について解くと、以下のようになります。

Ne =(fc/8.98)^2

 

2.で計算したfc = 27.43MHz を代入して電子密度を求めます。

 

Ne =(27.43x10⁶ / 8.98)^2 ≒ 9.33×10^12 (m⁻³)

 

これを 1 cm³ あたりの単位に換算すると、約 9.33 × 10⁶ cm⁻³ になります。垂直入射で必要な密度(約 2.6 × 10⁸ cm⁻³)に比べ、斜め反射の効果により約 3.6% の電子密度で足りるようになります。

 

4. スポラディックE層の発生場所

東京とハバロフスクの中間地点にあたる 日本海(ウラジオストクの東側沖合)の上空 に発生する必要があります。

1回反射(1ホップ)で電波が伝搬する場合、送信点と受信点のちょうど真ん中の地点(中間反射点)にある電離層で電波が反射されるためです。

 

具体的な発生場所

東京とハバロフスクを直線で結んだルート上において、スポラディックE層が発生すべき具体的な地理的エリアは以下の通りです。

  • 地理的位置: 積丹半島(北海道)の西側、およびウラジオストク(ロシア極東)の東側に挟まれた 日本海のほぼ中央(海上) です。
  • 大まかな座標: 北緯約 42.1度、東経約 137.4度 付近。
  • 上空の高度: 地上から約 100 km のE領域。

伝搬のイメージ

  1. 送信: 東京(北緯35.6°、東経139.7°)から144MHzの電波が、北北西の方向(仰角約3°〜4°の非常に低い角度)に向けて発射されます。
  2. 反射: 電波は日本海上空約100kmに浮かぶ、電子密度の高いスポラディックE層(中間地点)に斜めに入射し、下向きに急角度で屈折(反射)します。
  3. 受信: 反射された電波はそのまま日本海を越え、ハバロフスク(北緯48.5°、東経135.2°)に到達します。 [1, 2]

この中間地点の日本海上空に十分な電子密度(約 9.33 × 10⁶ cm⁻³ 以上)を持つスポラディックE層がピンポイントで存在していることが、この2国間通信を成立させる絶対条件となります。

 

7月16日16:45(JST)ごろ通信できたかもしれません。

夏至の前後にスポラディックE層(Es層)が頻繁に出現する理由は、大気潮汐波(たいきちょうせきは)などの大気波動が夏季に強まり、高度約100km付近で強力な風のシア(風向・風速の急激な変化)を作り出すためです。 [1, 2]

 

詳細なメカニズムは現在も研究途上ですが、主に以下の3つの要因が重なることで、夏至を挟む5月〜8月頃に発生のピークを迎えます。 [1, 2]

 

1. 大気波動による中性風シアの強まり

スポラディックE層は、高度100km付近において上空と下空で「東西逆方向の風」が吹くことで形成されます。 [1]

  • イオンの圧縮: 電気を帯びた金属イオンが、地磁気とこの風の力(風のシア)によって1点に押し潰されるように集まり、局所的に高密度なプラズマの層が作られます。 [1, 2]
  • 夏季の強大化: 下層大気から上昇してくる大気潮汐波や大気重力波といった「大気波動」のダイナミクスが、日本を含む中緯度地域の夏季に最も活発になり、この風のシアを強く引き起こします。 [1, 2, 3]

2. 太陽紫外放射による電離の活発化

夏至の時期は太陽の南中高度が最も高くなり、上空に降り注ぐ紫外放射が一年で最も強くなります。 [1]

  • 背景電子密度の増加: 強烈な紫外線によって地球大気が強く電離され、スポラディックE層の材料となるベースの電子密度(E層全体の密度)が底上げされます。 [1, 2]

3. 流星物質(金属イオン)の供給

スポラディックE層の形成には、分子イオンよりも長寿命で消滅しにくい「鉄(Fe+)やマグネシウム(Mg+)などの金属イオン」が不可欠です。 [1]

  • 宇宙からの材料: これらは地球に飛び込む微小な流星(塵)が、大気圏で摩擦熱により蒸発することで供給されます。一部の研究では、地球の軌道上、夏季にこれらの流星物質の対地流入量が増えることも発生を後押ししていると考えられています。 [1, 2]


スポラディックE層の発生は、太陽活動の周期(黒点数)とはほとんど相関がなく、純粋に地球の「季節(大気循環と波動)」に深く依存した現象です。 [1]