ver.16.0.1 '12.8.27現在
Retrieve_tは、モジュール設定にDTSとのリンク情報がある第7サイクル以降の時間軸データの情報を取得することができます。※本機能はMATLAB R2010bで検証しています。
時間軸に対応しているモジュールでは、Retrieve_t関数で次のように呼び出します。
[time_cell params_cell code] = retrieve_t(diag_name, shot_number, sub_shot, channel_number, ...)
各項目は次を参考に設定します。
diag_name(text) : | 計測名もしくはDTS名 DTS名の書式は'DTS:hostID', 'DTS:hostID:', 'DTS:hostID:moduleID' 計測名を指定した場合は、時間軸配列を作成する。DTS名を指定した場合はDTS情報のパラメータを取得する |
---|---|
shot_number(numeric) : | ショット番号 |
sub_shot(numeric) : | サブショット番号 |
channel_number(numeric,[vector],text) : | チャネル番号 or シグナル名(タグ名) 全チャネル指定する場合は、0 1チャネル指定する場合は、n (1~) 範囲指定する場合は、ベクトル書式(m:n , m<n, ex. 2:4) シグナル名 (text) e.g. 'sig-tag1' |
time_cell(cell) : | 各チャネルの時間軸配列データが格納されたセル配列 |
params_cell(cell) : | パラメータ ※パラメータを表示するにはこちらをご覧ください |
code(numeric) : | 終了値(0は成功、0以外はエラー発生) |
OPTIONS: | |
'double' : | 時間軸データを倍精度にする(デフォルト) |
'single' : | 時間軸データを単精度にする |
'float' : | 'single'と同じ |
'silent' : | メッセージ出力を抑制する |
'pointer' : | time_cellにlibpointerクラスで格納する |
'wait' : | データがない場合に、その出現を待つ |
'timeout',timeout_sec(numeric) : | 'wait'時のタイムアウト時間(秒) デフォルト 180秒 |
例)
[time tparam code] = retrieve_t('RADH', 98000, 1, 2);
【補足】
時間軸に対応していないモジュールでは、Retrieve_td関数で次のように呼び出します。
[time_array params_cell code] = retrieve_td(shot_number, sub_shot, dts_source, dts_host, dts_mod, trig_ch, clk_ch, clk_source, define_clk, array_size, ...)
各項目は次を参考に設定します。
shot_number(numeric) : | ショット番号 |
---|---|
sub_shot(numeric) : | サブショット番号 |
dts_source(text) : | DTS source type ('VME', 'CAMAC',....) |
dts_host(text) : | DTS Host ID ('VME01', '133.75.175.172',...) |
dts_mod(text) : | DTS module ID ('DMOD0', 'DMOD1', DMODSS0') |
trig_ch(numeric) : | スタートトリガチャネル番号 |
clk_ch(numeric) : | クロックチャネル番号 |
clk_source(text) : | 'External' or 'Internal' 'External'の場合は、クロック算出にDTS情報を使用する 'Internal'の場合は、クロック算出に'define_clk'を使用する |
define_clk(numeric) : | ユーザ定義クロック(ナノ秒) |
array_size(numeric) : | 配列サイズ |
time_array(array,libpointer) : | 時間軸配列 |
params_cell(cell) : | パラメータ ※パラメータを表示するにはこちらをご覧ください |
code(numeric) : | 終了値(0は成功、0以外はエラー発生) |
OPTIONS: | |
'double' : | 時間軸データを倍精度にする(デフォルト) |
'single' : | 時間軸データを単精度にする |
'float' : | 'single'と同じ |
'silent' : | メッセージ出力を抑制する |
'pointer' : | time_arrayにlibpointerクラスで格納する |
'clksource',clkSource(text) : | クロックソース(dts_sourceと違う場合) |
'clkhost',clkHostID(text) : | クロックホストID(dts_hostと違う場合) |
'clkmodule',clkModuleID(text) : | クロックモジュールID(dts_modと違う場合) |
例)
data = retrieve('RADH', 98000, 1, 1);
tm =
retrieve_td(98000, 1, 'VME', '133.75.175.172', 'DMOD0', 5, 2, 'External', 0, length(data{1}));
plot(tm, data{1});
Ver.13.2.0以降、時間軸情報パラメータが取得できるようになりました。
Retrieve_t関数で取得したパラメータの一覧を表示するには、printParam関数で呼び出します。また、取得したパラメータを表示・変換するには、getParam関数で呼び出します。
呼び出し方法は、printParam関数、getParam関数共に計測データのパラメータと同じですのでこちらを参考にしてください。
例)
[time tparam code] = retrieve_t('RADH', 98000, 1, 2);
value = getParam('StartTiming', tparam)
Ver.14.0.0以降、DTSモジュールの直接指定によるパラメータの取得ができるようになりました。
retrieve_t関数の計測名を指定する代わりに、'DTS:'を付けてからDTSホスト名:DTSモジュール名を指定すると、パラメータ格納変数にパラメータが格納されます。時間軸データ配列には有効なデータは入りません。
DTSモジュール指定を省略した場合は、'DMOD0'または'DMODSS0'を指定した場合と同じ動作になります。
FPGA-DTSでは、TRG#1-6がCH#1-6、CLK#1-6がCH#7-12になっています。
例)[time param code] = retrieve_t('DTS:VME01', 98000, 1, 1);
パラメータの形式は、retrieve関数を使って計測名'DTS'のデータを取得した場合のパラメータと同じ形式となります。
取得されたパラメータを表示・変換するためには、パラメータを取得すると同様にprintParam関数やパラメータを変換するためのgetParam関数が使用できます。