B&R#Automation Studio_Part02_First ST Program /Watch/ Trace

B&R Automation StudioのTutorial第2話です。今回は簡単STプログラムを追加・そのプログラムの実行Task設定・Watch Table・Trace機能について紹介します。

さ、始めよう!

Add New Packages

前回のTutorialでは私達が直接新しいプログラムをプロジェクトに追加しました。

装置が複雑になるとプログラムもどんどん膨大になります。

そのときはPackagesというコンセプトでプロジェクトを管理しましょう。

(実際はFolderのようなコンセプトです)

では新規プロジェクトからPackagesを追加しましょう。

Done!空のPackages Folderが追加されました。

Add ST Program

今度はST Program All In Oneを先程のPackages Folderに追加します。

このST Program All In Oneは_INIT・_CYCLIC・_EXITなどを1つのSTプログラムFileとしてまとめる部品だと考えていただければよいと思います。

実際、そのPackagesは変数のScopeにも関わりますので、Scopeに関してはまた次回のTutorialで説明します。

Done!ST Program All In One部品がPackage内に追加されました。

中に_INIT・_CYCLIC・_EXITの部品があります。

Program Stucture

実際プログラムを開くとPROGRAM_INIT…のようにSectionが分かれています。

_INIT

初期化のためのプログラムセクションになります。

_CYCLIC

周期的プログラムセクションになります。

_EXIT

タスクがアンインストールされたときに実行されるプログラムセクションになります。アンインストールというのは、削除と同じ意味です。つまりTaskが削除されたときリソースが適切に解放されるようにすることが重要で、その_EXITプログラムセクションがまさにその役割です。

Select

プログラムのST Editorには小さなDrop-List ICONがあり、そのListからプログラムを自動で選択できます。

選択されたプログラムは、下図のように赤くHigh-Lightされます。

下図のような操作になります。

Define Local Variable

次はローカル変数を追加します。

Configure Open Options

前回のTutorialではOpen MenuからText ViewかTable Viewかを選択できますが、Default Viewの設定はTools>Optionsから変更できます。

Editor Tabを選択します。

.var(変数定義のFile)だけではなく、例えばデータタイプ定義用の.typ・Mapping用の.iomなどにもDefaultでTable Viewで開くか、Text Viewで開くかを設定できます。  

Open as からTextやTableを設定できます。

今回は変数定義用の.varをDefault でText Viewを開くように変更します。

Done!Variables.varを開くときはText Viewに変わりました。

実際は下図のような操作です。

bInitedとiCounter、2つのCounterを定義します。

Insert Variables

ST Editorからプログラムするには下図のICONをクリックする、またはCtrl+Shift+Jで変数を挿入できます。

Select Variableの画面が表示されました。

Show Project StructureのCheckboxを入れ変数をプロジェクトの構造に沿って表示できます。

Filterで変数名を入れ、挿入したい変数を選択し>Okで追加します。

Code

こちらは実際のCodeです。

PROGRAM_INITが実行するとbInitedをTrueに変わり、PROGRAM_CYCLICがbInitedになるとiCounterが周期に加算します。

Result

プログラムをRuntimeにDownloadし、ST Editorが灰色の背景に変わると、いまは該当するプログラムをMonitorしてると表示されます。

Watch

変数の現在値をどうMonitorするかというと、Editorから右クリック>Open>Watchをクリックします。

Watch画面が表示されました。

赤枠のInsert VariableボタンでMonitorしたい変数を追加できます。

Insert Variable画面が表示されました。

すべての変数を選び>Addします。

Done!Value欄では該当する変数の現在値を確認できます。

Task Configuration

次はプログラムのTask割付けについて説明します。

iCounterの加算値は少し遅いですね。

Configuration View

Configuration viewを開きます。

Hardwareをクリックします。

今回SimulationするCPUの絵が表示されます。

そのCPUを右クリック>Softwareします。

<CPU>の下にたくさんのシステムObjectがあり、先程定義したST ProgramはCyclic[#4]に割り付けれています。そしてCyclic[#4]は100ms周期なのでProgramが100msで実行することになっています。

Change the execute Cyclic

プログラムを別のCyclic Taskに実行するように変更するには、直接Drag and Dropでできます。

下図のような操作です。

Done!いまProgramのCyclic taskが変更されました。

Result

iCounterの加算周期は先程早くなりました。

Add Watch

先程Watch Tableから変数をMonitorしました。次はMonitorしたい変数をプログラムを直接保存でき、今後また1から追加する手間がなくなることができます。

Main.stを選択し>右クリック>Open>Watchします。

Monitorしたい変数を設定終わったらSave IconでWatch Tableを保存できます。

Watch Tableの名前を入力しOkで保存します。

Done!

Add Trace

最後はTrace機能を紹介します。Trace機能を使用することによってある期間で変数の現在値を保存でき、Graphで表示できます。この機能は実際現場のDebug・立ち上げなどにも役に立ちます。Main.stを選択し>右クリック>Open>Traceを開きます。

Trace画面が表示されました。

Add New Target

変数を記録する前にまずTrace Targetを追加する必要があります。

赤枠のボタンで新しいTraceを追加しましょう。

Done!新しいTrace Targetが追加されました。

Insert New variable

先程追加されたTargetに記録したい変数を定義するため、赤ボタンをクリックするか、もしくはTargetを右クリック>Insert New Variableします。

Select Trace Variableの画面が表示されます。この画面からTraceしたい変数を設定できます。

ProgramというTaskを展開し、全ての変数を選び>Selectで進みます。

Done!Traceする変数が全部追加されました。

Download the Trace to Target

最後はTrace Configurationを赤ボタンでCPUにDownloadします。

Done!いまもうTrace始めています。

実際はこのような表示になります。

Stop the Recording

Traceを停止したい場合は、赤枠のボタンかもしくは右クリック>Stopをクリックします。

Show Target Data

Show Target Dataで先程取ったデータを確認できます。

Done!

下図のような操作で、時間軸を移動すれば、そのときの変数値の表示するようになります。

Save the Trace Data

もし該当するTrace Dataを保存したいなら、Save Trace Dataでデータを保存しましょう。

Save trace dataの画面が表示されます。

Trace名を入力>Okで進みます。

Load the Trace Data

保存されたTrace Dataを表示した場合、Load trace dataをクリックします。

LoadするTrace Dataを選び>Okで進みます。

Done!

Uninstall the Trace

もし該当するTrace Configurationが不要であれば、UninstallボタンでTrace Configurationを削除しましょう。

Footer_Basic

Please Support some devices for my blog

Amazon Gift List

Find ME

Twitter:@3threes2
Email:soup01threes*gmail.com (* to @)
YoutubeChannel:https://www.youtube.com/channel/UCQ3CHGAIXZAbeOC_9mjQiWQ

シェアする

  • このエントリーをはてなブックマークに追加

フォローする