FAMOS
ファイルアシスタントに関するFAQ
QインポートDLL
FAQ ID:FAS
以下のリンクよりインポートDLLファイルダウンロードページへお進みください。
https://www.toyo.co.jp/mecha/contents/detail/imc_download_site.html
Qtime_t型の読み込み方法
FAQ ID:a004
測定開始時間がC言語のtime_t型で記述されています。この日付をファイルアシスタントで読み込むことは可能ですか?
可能です。
time_t型は1970/1/1より測定します。これに対してFAMOSデータは1980/1/1より測定します。
従いまして、以下のように対応可能です。
変換式:
imc_time = time_t - (1970から1980までの秒数)
imc_time = m_Time - 1182903698-(8*365+2*366)*3600*24
具体例:
time_t = 0x92 0xAD 0x81 0x46 = 1182903698
imc_time = 1182903698-315532800
注意1:
取得した値は、そのままトリガー時間として設定できます。
注意2:
取得した時間がグリニッジ標準時の場合、ローカルタイム(日本:+9時間)分を補正してください。
QFileTime構造体の読み込み方法
FAQ ID:a003
測定開始時間がC言語のFIleTime構造体で記述されています。ファイルアシスタントでは1980/1/1からデータを処理するため、標準の関数では読み込むことができません。この日付をファイルアシスタントで読み込むことは可能ですか?
可能です。
FILETIME構造体は符号なし64ビットで日付と時間の値を保持します。この値は1601/01から100ナノ秒単位で表現されます。
struct{
DWORD TimeLow;
DWORD TimeHigh;
} FILETIME;
imcの時間フォーマットは1980/1/1から秒単位で記録されます。
1980/1/1はFILETIME形式では以下のように表現されます。
FILETIME:
High = 27846559
Low = 3788865536
従いまして以下の式で変換することができます。
ImcTime = ((TimeHigh-27846559)*4294967296+TimeLow-3788865536)/1e7
(see attachment ReadFileTime.def)
Qブロックデータの読み込み方法
FAQ ID:a002
以下のようにブロック毎にデータが記録されているファイルがあります。
4097- 20480 |
Block1 |
Ch1 (=4096 point * 4 byte) |
20481- 36864 |
Ch2 (=4096 point * 4 byte) |
|
36865- 53248 |
Block2 |
Ch1 (=4096 point * 4 byte) |
53249- 69632 |
Ch2 (=4096 point * 4 byte) |
|
430081-446464 |
Block14 |
Ch1 (=4096 point * 4 byte) |
446465-462848 |
Ch2 (=4096 point * 4 byte) |
これらをCh1、Ch2のセグメントデータとして読み込むにはどのようにすればよいでしょうか?
For、もしくはWhile文で各ブロックをループします。
各ブロック毎にデータをセグメントデータとして読み込みます。
詳細はサンプルファイルを参考にしてください。
QWindows NT/2000でユーザーアカウントでログインしたらFASファイルが使用できない
FAQ ID:a001
(1)ファイルアシスタントのFASファイルはログインしたユーザーに対して設定されていますか?
FAMOSの各設定(ボタン定義・DLL・FASファイル登録)はユーザー単位で管理されています。
FASファイルの設定が行われているか確認してください。
確認方法はFAMOSを起動して、希望するインポートフィルターがファイルダイアログの”ファイルの種類”に表示されるかです。
(2)希望するインポートフィルターを使ってファイルを読み込んでください。
ここで、正常に読み込めずファイルの読み込みエラーが発生した場合、ファイルアクセス権がユーザーにないと考えられます。
システム管理者に連絡してアクセス権を変更してください。
FASファイルはデフォルトではc:\imc\def内にインストールされます。