Scope viewプロジェクト新規設定#
最初に、同一ソリューション上にScope viewプロジェクトを新規作成します。
Scope viewプロジェクトの新規作成#
まず、次の手順で既存のPLCプロジェクトにおいて、Scope viewプロジェクトを新規に追加します。
プロジェクトルートフォルダの確認#
プロジェクトのルートフォルダがどこにあるのかを確認しておきます。デフォルト設定のままでCSVファイルが保存される先は、ここで確認するプロジェクトフォルダ以下となります。
Measurement project
のツリーを右クリックしてProperty
を選択します。(図 6.5)Propertyウィンドウに現れる
Project folder
CSVを保存する先にデフォルトで使用される保存先はこのプロジェクトフォルダです。(図 6.6)
![../_images/measurement_project_property.png](../_images/measurement_project_property.png)
図 6.5 Measurement projectのプロパティ#
![../_images/project_folder_setting.png](../_images/project_folder_setting.png)
図 6.6 Projectフォルダの場所の設定個所#
YT Scopeプロジェクトの設定#
CSVファイルへ吐き出す前に、記録したデータはYT Scopeのバッファメモリ内に保存されます。このメモリの取り扱いに関する設定を変更します。
![../_images/ytscope_project_property.png](../_images/ytscope_project_property.png)
図 6.7 YT scope projectのプロパティ#
![../_images/buffer_setting.png](../_images/buffer_setting.png)
図 6.8 バッファ設定の変更個所#
項目 |
変更前 |
変更後 |
説明 |
---|---|---|---|
|
False |
True |
False設定のままだと後述の |
|
|
軸の動作を監視する制御サイクルの間隔の1.5倍以上の時間 |
バッファする記録時間を設定します。リングバッファにより古いものから順次消去されるため、CSVファイルへ記録するまでに十分なデータが残っているための時間設定が必要です。 |
変数登録とビュー作成#
CSV保存条件プログラム作成#
PLCにより、CSVへ出力するトリガとなるフラグexport_trigger
を制御するプログラムを紹介します。
VAR
axes :ARRAY [0..2] OF AXIS_REF;
export_trigger :ARRAY [0..2] OF BOOL;
i :UINT;
END_VAR
// Trigger for csv saving
FOR i := 0 TO 2 DO
IF axes[i].Status.InTargetPosition AND axes[i].NcToPlc.SetPos = 0 THEN;
export_trigger[i] := TRUE;
ELSE;
export_trigger[i] := FALSE;
END_IF
END_FOR;
軸の状態は、モーション論理軸にマッピングした構造体変数axes[]
(AXIS_REF
型)にて監視できます。この中のPLCに公開しているデータセットに、位置決め目標アドレスSetPos
があります。
ここでは、位置決め目標アドレスが0
(原点)で、その位置決めが完了状態(InTargetPosition
)の時にTrueとなるフラグexport_triger[]
を作成しています。後ほどこのフラグを使ってScope viewのトリガ条件に使います。
このプログラム例では、axes
, およびexport_trigger
はそれぞれ3軸分の配列でオブジェクトを保持できる様にしていますが、以後の説明ではこのうち1軸目のみ( export_triger[0] )のみを用います。
モニタ対象変数の登録#
次の手順で監視対象デバイスを登録します。
RUNモードへ遷移し、XARにログインします。
PLCのデバイスを収集するには、Target systemを接続先IPCに設定した上で、ログインする必要があります。
Target browserを出現
DataPool
メニューを右クリックし、メニューからTarget Browser
を選択する。図 6.9 ターゲットブラウザを出現#
収集したい変数をさがす
現れたウィンドウの左のメニューに、接続中のXARが緑色のディスプレーアイコンが現れます。これを開くと接続可能な制御モジュールが一覧されます。
モーションコントローラのデバイスを監視したい場合は、図 6.10の通り、ADSポート501から始まる名称のモジュール名を選択してください。また、PLCデバイスを監視したい場合は、図 6.11の通り、ADSポート851から始まる名称のモジュール名を選択
図 6.10 モーションコントローラのデータを監視する場合#
図 6.11 PLCのデバイスを監視する場合#
DataPoolへの追加
右側のツリーから目的のデバイス変数が見つかりましたら、選択してダブルクリックしてください。これにより
DataPool
メニュー上に追加されます。(図 6.12)図 6.12 データプールへの変数の追加#
YT Chartビューの概要#
YT Chart ビューには、次のデータの階層構造を持っています。これらの階層構造は、Solution Explorerに現れるツリーで構成し、これに応じてグラフ表示の画面を構成することができます。(図 6.13)
- YT Chart
画面単位です。上部のタブで切り替えることができます。
- Axis Group
グラフ軸単位です。一つの座標面に全ての軸を重ねて表示するビュー(図 6.14)と、軸毎に座標を分けて表示する
Stacked axes
ビュー(図 6.13)の二つの表示方法があります。
モーションの監視を行う場合は、YT Chart毎に軸を分け、同じ単位系か、座標を分けて見たい単位でビューを作成するのがよいでしょう。
![../_images/stacked_axes_view.png](../_images/stacked_axes_view.png)
図 6.13 ツリーとグラフビューの関係(Stacked axes ビュー)#
![../_images/unstacked_axes_view.png](../_images/unstacked_axes_view.png)
図 6.14 Stacked axes がOFFのビュー#
YT Chartの追加#
YT Chart タブを追加したい場合は、図 6.15の通りYT Scope Projectの階層で右クリックしたメニューから、New YT Chart
を選んでください。
![../_images/add_ytproj.png](../_images/add_ytproj.png)
図 6.15 YT Chartの追加#
Axis上への表示データの登録#
DataPoolに登録された変数のデータを任意のYT ChartのAxisに表示させるためには、DataPoolからViewへの登録の様に該当の変数をAxisへドラッグアンドドロップします。
![../_images/reg_data_to_view.png](../_images/reg_data_to_view.png)
図 6.17 DataPoolからViewへの登録#
以上で、変数登録からYT Chartへのビューへの一連の流れについて説明しました。この方法で、CSV保存条件プログラム作成節のプログラムの、export_trigger
をDataPoolに登録し、CSVへ出力したい各軸のデータを YT Chart上に表示するよう、設定してください。
DataPoolに登録したexport_trigger
フラグの使い方は、次章のトリガの設定で説明します。