Skip to content

imutec/RadLogger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

M5AtomS3 Lite Geiger Counter with ThingSpeak

M5Stackの最小級開発モジュール M5AtomS3 Lite を使用し、オープンソースのガイガーカウンターボード GeigerCounter-V1.1からのパルス信号を正確にカウント・計測してクラウドサービス ThingSpeak へ定期アップロードするシステムです。

ESP32-S3のマルチタスク特性を考慮し、排他制御を用いた厳密な割り込み処理(ISR)を実装しており、ノイズ対策のチャタリング防止機能や、本体LEDを活用したステータス可視化機能を備えています。

🚀 主な機能・特徴

  • 精密なパルス計測: GPIO割り込みを使用し、マイクロ秒単位でのチャタリング防止(最小パルス間隔 500μs)を実装。
  • データセーフティ: 割り込みハンドラとメインループ間でのデータ競合を防ぐため、portENTER_CRITICAL によるアトミックなデータ取得・リセットを採用。
  • ThingSpeak 連携: 60秒ごとに CPM(Counts Per Minute)および $\mu\text{Sv/h}$(マイクロシーベルト毎時)、生カウント数をWi-Fi経由で自動送信。
  • オンボードLEDによるステータス視覚化:
    • 放射線パルス検知時: 一瞬 黄色 に点滅
    • Wi-Fi接続試行中: 淡い青色 に点灯
    • ThingSpeak送信成功: 緑色 に3回点滅
    • ThingSpeak送信失敗: 赤色 に3回点滅
  • スマートWi-Fi再接続: 接続が切断された場合、メインの計測処理をブロック(フリーズ)させることなく、5秒のタイムアウト付きで自動再接続を試行。

🛠️ ハードウェア構成・ピンアサイン

デバイス ピン名 / GPIO 接続先 備考
M5AtomS3 Lite GPIO 2 ガイガーカウンターの信号線 (OUT) PORT A (Groveコネクタ側)
M5AtomS3 Lite GND ガイガーカウンターの GND
M5AtomS3 Lite 5Vまたは3.3V ガイガーカウンターの電源線 モジュールの仕様に合わせて接続

*※デフォルトでは GPIO 2(PORT A)をパルス入力ピンとして使用しています。 ボードと GPIO2 の間に10kΩの抵抗を入れてあります *

📊 変換係数(Calibration Factor)

コード内では、一般的なチューブ(例: M4011など)を想定した以下の換算係数を設定しています。使用するガイガー管のデータシートに合わせて調整してください。

  • CPM_PER_USV_H = 151.0f (151 CPM $\approx$ 1 $\mu\text{Sv/h}$)

💾 開発環境・必要なライブラリ

本プログラムのビルドには以下の環境およびライブラリが必要です。

  • Arduino IDE または PlatformIO
  • ESP32 ボードパッケージ (M5AtomS3 がサポートされているバージョン)
  • ライブラリ:
    • M5AtomS3 (M5Stack公式ライブラリ)

⚙️ セットアップと使い方

  1. コードの修正 ご自身の環境に合わせて、コード内の以下のプレースホルダーを書き換えてください。
    // Wi-Fi設定
    const char* WIFI_SSID     = "あなたのSSID";
    const char* WIFI_PASSWORD = "あなたのパスワード";
    
    // ThingSpeak設定
    const char* THINGSPEAK_WRITE_API_KEY = "あなたのAPI_KEY";
    

書き込み

ボードタイプで M5AtomS3(または ESP32S3 Dev Module)を選択し、PCに接続してプログラムを書き込みます。

動作確認

起動時、Wi-Fi接続中はLEDが淡い青色に光ります。

接続成功後、放射線を検知するたびにLEDが黄色に小刻みに点滅します。

シリアルモニタ(115200 bps)を開くと、5秒ごとにライブの計測結果が出力されます。

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages