表計算データの信号入力とその処理

 

関数 Fin はエクセルなど表計算ソフトのデータファイルを信号として入力しますので、
実験データなどをシミュレーションで信号処理することができます。
このページはその使用例です。

関数 Fin( ) の説明はこちらです → AprocS 操作説明 6.7.7

 

このサンプルのソースコード、プロジェクトファイルのダウンロードはこちら → fileIn.zip

【注意】 関数 Fin を含むプログラムはシミュレーション専用になります。

関数 Fin を使ってデータファイルから信号を入力し、フィルタで滑らかにします。
ブロック図
プログラム
    file="testFin.csv";       // データファイル名
    frq = 10;            // 固有周波数[rad/s]
    dmp = 1;             // ダンピングファクタ
    proc 
    {
      x = Fin( 1, file );     // 第1列(B列)から入力
      y = Fin( 2, file );     // 第2列(C列)から入力
      z = Fin( 3, file );     // 第3列(D列)から入力
      fx = bqLpf( x, frq, dmp );  // 2次ローパスフィルタ
      fy = bqLpf( y, frq, dmp );  // 2次ローパスフィルタ
      fz = bqLpf( z, frq, dmp );  // 2次ローパスフィルタ
    }
説明

データファイルの(0から数えて)第1列、第2列、第3列の数値を演算周期ごとに1行ずつ読んで 信号x、y、z へ代入します。 これらの信号には任意の演算を加えることができます。ここでは例として2次ローパスフィルタ処理を行いました。

関数  Fin 引数の番号で示される行の数値を信号として入力する関数です
 bqLpf 2次ローパスフィルタの関数です。
信号  xファイルの第1列(エクセルのB列)から入力した信号です
 yファイルの第2列(エクセルのC列)から入力した信号です
 zファイルの第3列(エクセルのD列)から入力した信号です
 fx, fy, fzそれぞれ、信号 x, y, z をフィルタした信号です
パラメータ  file入力ファイルの名前です
 frq, dmp 2次ローパスフィルタの固有周波数とダンピングファクタです

設定例
記録例
使用したデータ