用語集 (Glossary)¶
OSECHI宇宙線検出器に関連する技術用語の説明です。
電子回路・信号¶
GPIO (General Purpose Input/Output)¶
汎用入出力ピン
マイコン(ESP32など)の入出力インターフェイス。デジタル信号(HIGH/LOW)の読み書きに使用します。
OSECHIでの使用:
| ピン | 用途 |
|---|---|
| GPIO12, GPIO19, GPIO27 | 宇宙線検出信号の入力 |
| GPIO14, GPIO26, GPIO33 | LED制御の出力 |
| GPIO32 | ADC入力(MPPC信号強度) |
TTL (Transistor-Transistor Logic)¶
トランジスタ・トランジスタ・ロジック
デジタル信号の電圧レベルの規格です。
- LOW(0論理): 0V ~ 0.8V
- HIGH(1論理): 2.0V ~ 5.0V
OSECHIでは、コンパレーターがMPPC信号を2値化した出力がTTL信号です。HIGH = 宇宙線を検出した状態を示します。
デジタル信号 vs アナログ信号¶
| デジタル信号 | アナログ信号 | |
|---|---|---|
| 値 | HIGH / LOW の2値のみ | 連続した値(0V〜3.3V など) |
| ノイズ | 強い | 影響を受けやすい |
| 例 | GPIO出力、TTL信号 | MPPC出力、ADC入力 |
OSECHIでは「MPPCのアナログ出力 → 増幅 → コンパレーターで2値化 → TTLデジタル信号 → ESP32で読み込み」という流れで処理します。
センサー・測定¶
MPPC (Multi-Pixel Photon Counter)¶
マルチピクセル・フォトン・カウンター
シンチレーション光(光子)を電気信号に変換する半導体光センサーです。出力はmV単位の微小な信号のため、増幅器を通してからコンパレーターに入力します。
OSECHIでは3個のMPPCを使用し、各シンチレーター層に1個ずつ配置しています。
シンチレーター (Scintillator)¶
放射線(ミューオンなど)が通過すると光を放つ物質です。OSECHIではプラスチックシンチレーターを3枚使用し、3層独立に検出しています。
ADC (Analog-to-Digital Converter)¶
アナログ・デジタル変換器
アナログ信号をデジタル値に変換します。
- 分解能:12ビット(0〜4095の4096段階)
- 入力電圧範囲:0〜3.3V
- 分解能:約0.8mV/カウント
OSECHIではGPIO32からMPPC信号強度を読み取り、検出イベントの adc フィールドとして出力します。
DAC (Digital-to-Analog Converter)¶
デジタル・アナログ変換器
デジタル値をアナログ電圧に変換します。OSECHIではコンパレーターの閾値電圧を設定するために使用します。
- 分解能:10ビット(0〜1023)
- チップ:MCP4811T(各チャネルに1個、計3個)
- 設定方法:
SET_THRESHOLD <ch> <value>コマンド
コンパレーター (Comparator)¶
2つの電圧を比較して大小関係をデジタル出力する回路です。
- 入力信号 > 閾値電圧 → HIGH(検出)
- 入力信号 < 閾値電圧 → LOW(非検出)
OSECHIでは、MPPCの増幅後の信号とDACが出力する閾値電圧を比較します。閾値を上げると感度が下がり(ノイズを除去)、下げると感度が上がります。
通信・インターフェイス¶
SPI (Serial Peripheral Interface)¶
シリアル・ペリフェラル・インターフェイス
マイコンと周辺デバイス間の同期式シリアル通信です。OSECHIではESP32からDACチップへ閾値電圧を設定するために使用します。
I2C (Inter-Integrated Circuit)¶
アイ・スクエアド・シー
マイコンとセンサー間の同期式シリアル通信です。OSECHIではESP32とBME280(温度・湿度・気圧センサー)の通信に使用します(アドレス:0x76)。
シリアル通信 (Serial Communication)¶
OSECHIはUSB経由でPCとシリアル通信を行います。検出イベントはJSONL形式で出力されます。
- ボーレート:115200 bps
- フォーマット:JSONL(1行1イベント)
出力例:
{"type":"event","status":"ok","sent_us":1748012345678901,"hit1":85,"hit2":72,"hit3":91,"adc":2048,"detected_us":1748012345678456}
コマンドの送受信も同じシリアルポートを使用します。H または GET_HELP で利用可能なコマンド一覧を確認できます。
ソフトウェア¶
サンプリング (Sampling)¶
GPIOピンを連続して読み取り、信号の有無をカウントすることです。OSECHIでは1検出サイクルあたり100回サンプリングし、各チャネルで何回HIGHを検出したかを hit1、hit2、hit3 として記録します。
イベント駆動 (Event-Driven)¶
何か「出来事」が起きたときにのみ処理を実行する方式です。OSECHIでは宇宙線を検出したときだけセンサーを読み取ってシリアル出力します。
デッドタイム (Deadtime)¶
1回の検出後、次の検出を受け付けるまでの待機時間です。SET_DEADTIME <ms> コマンドで設定できます(デフォルト:0ms)。
ジャンパーピン (Jumper Pin)¶
基板上の接続を物理的に切り替えるピンです。OSECHIではADC入力(GPIO32)をどのチャネル(CH1/CH2/CH3)に接続するかをジャンパーで選択します(デフォルト:CH1)。
物理量・単位¶
| 単位 | 意味 | OSECHIでの使用 |
|---|---|---|
| mV(ミリボルト) | 1mV = 0.001V | コンパレーター閾値、ADC電圧値 |
| Pa(パスカル) | 気圧の単位 | BME280の気圧出力(atm_pa フィールド) |
| °C(摂氏) | 温度の単位 | BME280の温度出力(tmp_c フィールド) |
| %(パーセント) | 相対湿度 | BME280の湿度出力(hmd_pct フィールド) |
| µs(マイクロ秒) | 1µs = 0.000001秒 | detected_us・sent_us のタイムスタンプ |
| ms(ミリ秒) | 1ms = 0.001秒 | uptime_ms・デッドタイム設定 |
まとめ表¶
| 用語 | 説明 | OSECHIでの役割 |
|---|---|---|
| GPIO | マイコンの入出力ピン | 検出信号入力、LED制御 |
| TTL | デジタル信号の電圧規格 | コンパレーター出力形式 |
| MPPC | 光センサー | シンチレーション光を電気信号に変換 |
| シンチレーター | 放射線で光る素材 | ミューオン通過の検出 |
| ADC | アナログ→デジタル変換 | MPPC信号強度の数値化 |
| DAC | デジタル→アナログ変換 | コンパレーター閾値電圧の設定 |
| コンパレーター | 電圧比較回路 | 信号の2値化・ノイズ除去 |
| SPI | 周辺デバイス通信 | DAC制御 |
| I2C | センサー通信 | BME280(温度・湿度・気圧) |
| デッドタイム | 検出後の待機時間 | 連続誤検出の抑制 |