シーメンス#TIA V17のCEM言語 (Cause-Effect-Matrix)

CEMとは?

TIA V17からCEM(Cause-Effect-Matrix)という新しいプログラム言語が追加されました。

その言語はもっと視覚的Processの条件や動作を構成することができます。

CEM言語では “cause”と “effect”の2つメイン言葉があります。

Causeは要素で、つまり条件、状態だと思ってください。

Effectsはどんな動作をするのイメージです。

CEM言語実用例

  • Enable/Interlock
    • 例えばプラントではそのようなMotor、Valveの出力Interlockがたくさんあり、メーカーからそういうInterlock表が大体出てきます。そのときCEM言語がそのままInterlock表のようにかけるじゃないかな?と思います。
  • 信号グループ化管理
    • 多数のSensorはそのCEM言語を使えば簡単で早くグループすることができます。CEM言語ではS(SET)、R(RESET)とN(TriggerするときだけON)の三種類出力方法があります。

FBからには言語のところでCEMという言語が選べるようになります。

Interface説明

では、その前にCEM言語の基本Interfaceを説明しますね。

1,2,3,4はプログラマーが定義するすべてのCauseです。

5はCause条件成立する条件です。

6はCase条件成立するとこ実行する動作です。

7,8はEffects実行するには左から右、上から下のように実行します。

そして、3つの動作があります。

Nは条件成立するときだけONにします。

Sは条件成立するときはTrueにセットします。

Rは条件成立するときはFalseにセットします。

Nのところに数字が出てくる場合もあります。例えば下図の2Nです。その意味Cause1-4の中にはどれか2つが成立すると該当するEffectがTrueになります。

SとRも同じ原理です。

次はそのCEM Block Interfaceについて説明します。

1.Cause名

2.Cause番号

3.Operand

4.そのCauseBlockのInputPin

5,6.Blockの操作(AND,ORなど)

7.Time Delay

8.出力

9.該当するBlockの出力状態

Example

これはら3つのExampleからCEMのプログラム作り方を説明します。

Add BlockでFunction Block選び、LanguageをCEM選択します。

Example1

最初出てきた画面はこのようですね。

ExampleはまずCase1が成立してるときだけ、Effect1出力するのプログラムです。

Case1とEffect1にM0.0とM100.0に振り分けて、”=”の動作を設定します。

つまり”Assign”です。

次はAdd newのところをクリックします。

ここでSelect actionをN選び、Select action groupは—を選択肢、OK。

Nは成立するだけ出力するのイメージです。

これでOKです。

ダウンロードしたら、もし条件が成立してないならNの丸は青い色になります。

M0.0がONすると、Nの丸が緑になり、Effect1がOnになり>最終はM100.0がONになります。

Example2

次は、2つのCaseが同時にONしてるとき、Effectが出力するのプログラムを作ります。

先の丸Nをクリックし、Select action groupをNew action groupに選びます。

Configure action group “2”を入れます。

その”2”は2つのCaseが同時ONしたら成立になります。

3なら、3つのCaseだけです。

丸は2Nになりましたね。ですが、オレンジ色になっています。

コンパイルすたら、E-Effect1 For the action group ‘2N’ at least 1 element(s) are still missingだと言われています。つまり条件設定は2つですが、いまは一つしか繋がっていませんよ~と。

もう1つのCauseを追加し、Select action groupを2 out of 2を選びます。

いま丸の色が白になりました。これでOK。

プログラムをDownloadし、Onlineしてみますと、

2Nの丸は半分緑になり、半分青いになりました。つまり1以上のCauseが成立してるの状態になります。

結果はこうになりますね。

Example3

最後はTime-DelayをCauseに入れて、そしてEffectをSetとResetで作って終わりたいと思います。以下はTime-Delayの入れ方になります。

右のBasic instructions>Cause Instruction>Timer operationで見つかります。

新しいEffectを追加します。

SetとResetも入れます。

Downloadして試します。

結果はこうになりますね!

Footer_Basic

Find ME

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

シェアする

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

フォローする