cansatapi.util パッケージ

cansatapi.util.convert モジュール

単位などの変換をする関数をまとめたモジュールです

cansatapi.util.convert.acceleration_to_pitch(x: float, y: float, z: float) float[ソース]

X, Y, Z軸の加速度からピッチ角[rad]を計算する

加速度の比からピッチ角を算出するので加速度の単位は問いません

パラメータ:
  • x (float) -- X軸の加速度

  • y (float) -- Y軸の加速度

  • z (float) -- Z軸の加速度

戻り値:

ピッチ角[rad]

戻り値の型:

float

cansatapi.util.convert.acceleration_to_roll(x: float, y: float) float[ソース]

X, Y軸の加速度からロール角[rad]を計算する

加速度の比からロール角を算出するので加速度の単位は問いません

パラメータ:
  • x (float) -- X軸の加速度

  • y (float) -- Y軸の加速度

戻り値:

ロール角[rad]

戻り値の型:

float

cansatapi.util.convert.conv_range(x: float, a: float, b: float, c: float, d: float) float[ソース]

数値xを範囲[a, b]から範囲[c, d]へ変換する関数

パラメータ:
  • x -- 変換する数値

  • a -- 変換元の範囲の最小値

  • b -- 変換元の範囲の最大値

  • c -- 変換先の範囲の最小値

  • d -- 変換先の範囲の最大値

戻り値:

範囲変換後のx

戻り値の型:

float

cansatapi.util.convert.g_to_m_per_s2(data: tuple[float, float, float]) tuple[float, float, float][ソース]

単位を[g]から[m/s^2]に変換する関数

Z軸に関しては重力加速度の影響を排除した値を計算し返します。

パラメータ:

data (tuple[float, float, float]) -- 加速度(x, y, z)[g]

戻り値:

加速度(x, y, z)[m/s^2]

戻り値の型:

tuple[float, float, float]

cansatapi.util.convert.raw_ang_rate_to_ang_per_s(data: tuple[float, float, float], range_abs: int) tuple[float, ...][ソース]

生の角速度データを[°/s]に変換する関数

生データの範囲はrange_absで変更できます

パラメータ:
  • data (tuple[float, float, float]) -- 生の角速度データ

  • range_abs (int) -- 角速度センサの測定範囲[°]

戻り値:

角速度(x, y, z)[°/s]

戻り値の型:

tuple[float, float, float]

cansatapi.util.convert.ut_to_azimuth(x: float, y: float) float[ソース]

3軸の地磁気から方位角[°]を計算する

地磁気の比から方位角を算出するので地磁気の単位は問いません

パラメータ:
  • x -- X軸の地磁気

  • y -- Y軸の地磁気

戻り値:

方位角[°]

戻り値の型:

float

cansatapi.util.logging モジュール

ロギングモジュール

class cansatapi.util.logging.LoggerCSV(file_name: str)[ソース]

ベースクラス: object

ロガーCSVクラス

CSV形式でロギングを行います。

error_csv(msg: str)[ソース]

エラーロギング用のメソッド

パラメータ:

msg (str) -- エラーメッセージ

log_csv(category: str, content: str | float)[ソース]

ロギング用のメソッド

パラメータ:
  • category (str) -- ログのカテゴリ

  • content (str) -- ログメッセージ

msg_csv(msg: str)[ソース]

メッセージロギング用メソッド

パラメータ:

msg (str) -- メッセージ

class cansatapi.util.logging.LoggerJSON[ソース]

ベースクラス: object

ロガーJSONクラス

JSON形式で地上局に送信するデータのロギングを行います。

log_json(json_data: str)[ソース]

JSONファイルとしてログを残す

パラメータ:

json_data (str) -- JSONデータ