オシロスコープと matlab - teledyne lecroy |...

22
レクロイ・ジャパン株式会社 ページ レクロイ・ジャパン株式会社 ページ レクロイ・ジャパン株式会社 ページ レクロイ・ジャパン株式会社 ページ 1 レクロイ・ジャパン株式会社, 2/Dec/03 オシロスコープと MATLABの連携 レクロイ・ジャパン株式会社 プロダクト・マーケティング 嘉樹 レクロイ・ジャパン株式会社 レクロイ・ジャパン株式会社 レクロイ・ジャパン株式会社 レクロイ・ジャパン株式会社, 2/Dec/03, Page 2 オシロスコープとMATLAB の連携 Step1: データ・ファイル オシロスコープで測定した波形データをメディアに保 存して転送

Upload: dinhkhuong

Post on 09-Feb-2019

238 views

Category:

Documents


0 download

TRANSCRIPT

1

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 1111

レクロイ・ジャパン株式会社, 2/Dec/03

オシロスコープとMATLABの連携

レクロイ・ジャパン株式会社プロダクト・マーケティング

辻 嘉樹

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 2

オシロスコープとMATLAB の連携Step1: データ・ファイル

• オシロスコープで測定した波形データをメディアに保存して転送

2

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 2222

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 3

オシロスコープとMATLAB の連携Step1: データ・ファイル

• データ・フォーマットとしてMATLAB用のものを用意しています。

• 波形データはアスキー形式で .datファイルとして保存します。

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 4

オシロスコープとMATLAB の連携Step1: データ・ファイル

• MATLAB上ではdlmreadコマンドを使って読み取ります。

3

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 3333

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 5

オシロスコープとMATLAB の連携Step2: GP-IB/Ethernetでデータ転送

• オシロスコープで測定した波形データをGP-IB/Ethernet等のインターフェイスで転送

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 6

オシロスコープとMATLAB の連携Step2: GP-IB/Ethernetでデータ転送

• ActiveXコントロールであるActiveDSOを利用すると、簡単にオシロスコープトの通信ができます。

4

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 4444

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 7

オシロスコープとMATLAB の連携Step2: GP-IB/Ethernetでデータ転送

• ActiveDSO• レクロイ社が無償で提供する

WINDOWSユーティリティ・プログラムで、オシロスコープとの通信を行うActiveXコントロールです。

• MATALB以外にも、MS-EXCEL、MS-WORD等々ActiveX対応のソフトウェアで使用可能です。

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 8

オシロスコープとMATLAB の連携Step3: Application間通信

• オシロスコープで測定した波形データを同一Windows上のMATLABに直接転送

5

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 5555

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 9

オシロスコープとMATLAB の連携Step3: Application間通信

• IPアドレスをループバック127.0.0.1に設定する事で同一OS上のオシロスコープのアプリケーションと通信が可能になります。

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 10

オシロスコープとMATLAB の連携Step3: Application間通信

• また、XstreamDSOのアプリケーション・ソフトウェアは、COMベース(ActiveX)で作られているので、これをActiveXサーバーとしてMATLABから直接通信する事が可能です。

� h = actxserver('LeCroy.WaveMasterApplication');� TimePerPoint = h.Acquisition.Horizontal.TimePerPoint.Value

6

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 6666

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 11

オシロスコープとMATLAB の連携Step4: Application間双方向通信

• オシロスコープで測定した波形データを同一Windows上のMATLABに直接転送

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 12

XDEVでは、MATLAB用に入出力変数を自動割り当て

• XDEVでは、自動的にMATLAB上にオシロスコープのデータを入力する変数WformIn1とWformIn2を、オシロスコープへの出力する変数WformOutを設定します。 MATLABでは、Source1で選択したトレースのデータがWformIn1に、Source2で設定したトレースのデータがWformIn2にそれぞれ入力され、演算結果はWformOutを介して演算トレースに出力されます。

WformOutWformOut

WformIn1WformIn1

WformIn2WformIn2

Source1Source1

Source2Source2

C1

C2

F1

7

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 7777

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 13

MATLABをカスタム演算に

• MATLAB のプログラムをカスタム演算として選べます

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 14

MATLABをカスタム演算に

• 演算トレースF1にMATLABを組み込んだところ

8

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 8888

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 15

MATLABをカスタム演算に

• デフォールトでは、入力波形を反転して半分にします

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 16

MATLABをカスタム演算に

• 演算結果としてF1は、入力波形C2の振幅が半分、極性が逆

9

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 9999

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 17

MATLABによるフィルタの設計

• MATLABのフィルタ・デザイン・ツールを使うとフィルタが簡単に設計できる。

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 18

MATLABによるフィルタの設計

• 設計したフィルタの係数は、Workspaceに保存する。

1

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 10101010

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 19

フィルタをF1に組み込み

• 図に示すコードを記述するだけでフィルタが実現できる。ここでは、さっき保存したフィルタ係数を使うようになっている。

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 20

フィルタをF1に組み込み

• フィルタした波形がF1として表示されます。

1

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 11111111

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 21

フィルタの設計変更

• フィルタの設計変更をMATLABで行います。

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 22

フィルタの設計変更

• MATLABでの設計変更は、瞬時にF1に反映されます。

1

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 12121212

レクロイ・ジャパン株式会社, 2/Dec/03

Simulinkを使った機械振動のシミュレーション

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 24

MATLAB を演算に設定

� Mathトレースの演算としてMATLABMathを選択

1

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 13131313

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 25

MATLABからSimulinkを呼び出す

� Simulink のボタンを押してSimulinkを呼び出します。

このボタンを押す

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 26

Simulink

� Simulink Library Browser が表示されます

1

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 14141414

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 27

モデルの作成

� FileメニューからNewのModelを選択して新規のモデルを作成します

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 28

モデルの作成

� モデルの作成画面が現れるのでここにモデルを構築します。

1

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 15151515

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 29

機械系の振動を例にします。

m

k

c

x, f

物体の質量m(kg)

ダンパの減衰係数c(Ns/m)

バネ定数k(N/m)

外力f(N)

変移量x(m)

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 30

一次自由振動系のモデル

� M*d2x/dt+c*dx/dt+k*x=f をモデル化

k

c

1/m

1

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 16161616

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 31

シミュレーションの結果

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 32

モデルのサブモデル化

� 入出力の端子をつけてサブモデル化して、保存する。

1

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 17171717

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 33

MATLABのコード

� 作ったサブモデルを利用してオシロの入力信号でシミュレーションを行う

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 34

MATLABのコードの解説

num=size(WformIn1); 入力信号のポイント数を取得

For i=1:num;Ind(i,1)=i;Ind(i,2)=WformIn1(i); 入力波形を時間データをつけて二次元配列に変換

end[t,x,y]=sim(‘VibSim’,num(:,1),simset,Ind);

     二次元配列にした入力信号データ

シミュレーションの設定(デフォルト)シミュレーションの時間(入力波形のデータ数)

注:numは二次元配列なので普通の数字にしているSimulinkでセーブしたモデル名

Wformout=y; シミュレーション結果を出力

1

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 18181818

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 35

シミュレーションの結果

� 信号を取り込みながらシミュレーションを実行

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 36

インタラクティブな検証

� Simulinkでモデルのパラメータを変更しながら効果を確認

1

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 19191919

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 37

インタラクティブな検証

� Simulinkでモデルのパラメータを変更しながら効果を確認

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 38

インタラクティブな検証

� Simulinkでモデルのパラメータを変更しながら効果を確認

2

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 20202020

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 39

ダンパの減衰係数C

� ダンパの減衰係数Cを変化させてみた波形

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 40

バネ定数K

� バネ定数Kを変化させてみた波形

2

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 21212121

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 41

質量m

� 質量mを変化させてみた波形

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 42

入力波形

� 入力信号波形を変化させてみた出力波形

2

レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ レクロイ・ジャパン株式会社       ページ 22222222

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 43

レクロイのオシロスコープを使って、サンプル・プログラムをお試しください。

� 必要な環境:� XDEVまたはXMAPオプションの搭載されたデジタル・オシロスコープ

� MATLAB (Vs. 6.5 以降、一部サンプル・プログラムではSignalDesign Toolboxが必要) をWaveMasterにインストール(30日間のトライアル・パッケージが同梱されます。)

� レクロイのWebsite http://www.lecroy.com/matlabに掲載されたサンプル・プログラムと操作手順書

レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社レクロイ・ジャパン株式会社, 2/Dec/03, Page 44

デモをぜひご覧下さい。

� レクロイ・ジャパンのブースで、デモの実演をしております。お立ち寄り下さい。� 各種技術資料を弊社Web siteでご請求下さい。

� http://www.lecroy.com/japan

� レクロイ・ジャパン株式会社

� プロダクト・マーケティング

� 辻 嘉樹