Skip to content

CREATE-ROCKET/Avi_logger_analysis

Repository files navigation

GSElogger

GSEloggerは、ロケットエンジンの燃焼試験などで取得されたGSEロガーデータ(CSV)を解析し、推力や圧力、温度などの各種物理量への変換、グラフの生成、およびトータルインパルスなどの数値を自動算出するGUIアプリケーションです。

主な機能

  • Rawデータ変換: ロガーが取得した生データ(ADC値)を、選択したロードセルやロガーのタイプに合わせて推力(N)、圧力(Pa)、温度(℃)へ高速に変換します。
  • 自動解析:
    • データの移動平均処理
    • 定常偏差の算出と推力補正
    • 燃焼開始・終了時刻、作動終了時刻の自動計算
    • 燃焼区間・作動区間のトータルインパルスの算出
  • プレビューと手動調整: 解析前に波形をプレビュー表示し、ズームやドラッグ操作で燃焼区間(開始・終了・作動終了)を手動で微調整することが可能です。
  • グラフ生成: 推力や圧力の個別グラフ、および推力と圧力を重ね合わせた概要グラフを一括で生成します。
  • 画像プレビュー&保存: 生成された高解像度グラフを専用のダイアログで確認し、必要な画像だけを選んで保存できます。
  • CSV出力: 解析後のデータや間引きデータ(LOG_light.csv, burntime.csv, onlythurst.csv)を出力し、他ツールでの二次利用をサポートします。

必要要件 (Dependencies)

本アプリケーションを動作させるには、Python 3.x と以下のパッケージが必要です。

pip install pandas polars matplotlib japanize-matplotlib PyQt6 pyqtgraph

使い方 (Usage)

  1. アプリの起動 コマンドラインから以下のコマンドを実行し、GUIを立ち上げます。
    python gui.py
  2. データ読み込み・設定
    • 「Rawデータファイル (CSV)」の【参照】ボタンから、解析したい生データのCSVファイルを選択します。
    • ロードセル最大推力(500 / 250 / 1000)と、ロガータイプ(new / old)を選択します。
  3. プレビューと範囲設定(任意)
    • 【プレビュー表示 / 選択範囲にズーム】ボタンを押すと、グラフプレビューが表示されます。
    • グラフ上の縦線をドラッグして、開始時間や終了時間を手動で調整できます。
  4. 解析の実行
    • 出力先フォルダを確認・設定し、【解析を実行】ボタンを押します。
    • プログレスバーが進み、解析結果(定常偏差、燃焼時間、トータルインパルス等)が画面上に表示されます。
  5. 結果のエクスポート
    • 【解析結果データをCSV出力】ボタンでデータを保存します。
    • 【生成された画像を表示 / 保存】ボタンから、生成されたグラフ画像のプレビュー確認および保存が可能です。

ファイル構成

  • gui.py アプリケーションのメインファイル。PyQt6とpyqtgraphを利用したユーザーインターフェースと、各モジュールの実行制御を担います。
  • analysis.py polars を利用した高速なデータ変換モジュール。ADC値から物理量(推力、圧力、温度)への計算、および間引きデータの作成を行います。
  • dataanlysisgui.py pandas を利用した解析モジュール。移動平均の計算、各種時間の自動判定、補正計算、トータルインパルスの算出ロジックが含まれています。
  • graphgenerator.py matplotlib を利用したグラフ描画モジュール。個別グラフと概要グラフを生成し、一時フォルダや指定フォルダに画像として保存します。
  • Logger_関数リファレンス.md dataanlysisgui.py 内の Logger クラスの仕様をまとめた開発者向けのリファレンスです。

注意事項

  • macOS等の高解像度ディスプレイ(Retinaディスプレイ等)では、プレビュー画像のスケールが自動的に最適化されて表示されます。
  • 解析中は一時ディレクトリに画像が生成され、アプリケーション終了時または新規解析時に自動的に削除されます。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages