C2A_Core
TimeManager 構造体

master_clock_ で OBC 時刻情報を保持するとともに, unixtime との紐づけや初期化情報の記録を行う [詳解]

#include <time_manager.h>

TimeManager 連携図
[凡例]

フィールド

ObcTime master_clock_
 
struct {
   double   unixtime_at_ti0
 master_clock が {0, 0, 0} の時の unixtime [詳解]
 
   cycle_t   ti_at_last_update
 "unixtime_info_ を最後に更新した (GPSなどの) 時刻情報" を観測した時点の total_cycle [詳解]
 
   double   utl_unixtime_epoch
 
   double   cycle_correction
 
unixtime_info_
 
struct {
   ObcTime   initializing_time
 
   uint8_t   initializing_flag
 
init_info_
 

詳解

master_clock_ で OBC 時刻情報を保持するとともに, unixtime との紐づけや初期化情報の記録を行う

time_manager.h29 行目に定義があります。

フィールド詳解

◆ cycle_correction

double cycle_correction

CYCLES_PER_SEC の補正倍率. unixtime <> OBCTime の変換で使う CYCLES_PER_SEC * cycle_correction = OBC のクロック誤差を反映した実際の値 初期値は 1.0

time_manager.h39 行目に定義があります。

◆ 

struct { ... } init_info_

◆ initializing_flag

uint8_t initializing_flag

time_manager.h46 行目に定義があります。

◆ initializing_time

ObcTime initializing_time

time_manager.h45 行目に定義があります。

◆ master_clock_

ObcTime master_clock_

time_manager.h31 行目に定義があります。

◆ ti_at_last_update

cycle_t ti_at_last_update

"unixtime_info_ を最後に更新した (GPSなどの) 時刻情報" を観測した時点の total_cycle

time_manager.h35 行目に定義があります。

◆ unixtime_at_ti0

double unixtime_at_ti0

master_clock が {0, 0, 0} の時の unixtime

time_manager.h34 行目に定義があります。

◆ 

struct { ... } unixtime_info_

◆ utl_unixtime_epoch

double utl_unixtime_epoch

これを時刻ゼロとして起算した cycle 刻みの時刻を utl_unixtime と定義する. cycle 未満の精度は切り捨てられるので utl_unixtime は整数値となる. UTL_cmd の実行時刻情報として用いる.

time_manager.h36 行目に定義があります。


この構造体詳解は次のファイルから抽出されました: