SiArvの第三回です。今回はAlarmを自動作成方法について書きます。Alarmはおそらくパッチパネルなどを作成するとき一番頭が痛くなりますよね。
まず毎回と同じくPLC_1とHMI_1を作ります。
myFB1を追加します。
Input とOutputそれぞれ追加します。いつものBlockですね。
多分これはよくあるプログラムですね。アラーム用のワードでBit0はこのアラーム、Bit1はあのアラームのように作ります。
OB1で呼び出してインスタンスDBを作ります。
SiArc>Tag rules。
まずTag作成のルールを決めます。こういうプロセスはみんなさん飽きるまでずっと言い続けますので、頭に覚えてくださいね。
これからは今回の記事の新しいことです。
HMI alarmsをクリックします。
まずAlarmを1つ作ります。
Inspection windowsのところにPlug-insがみえてきます。
Nameはいわゆるアラームの名前ですね。
そしてAlarm textは実際パッチパネルに表示されるときのテキスト。
こっちのルールだとNameはAlarm_YourBlockName_x0になりますね。
そしてAlarm textはAlarm:YourBlockName Error Code00:xxxxになります。
もちろんTrigger bitも設定します。
(大分前のBlogも書いていますが、シーメンスのタッチパネルのアーラムはワードしか割付られないです。)
一番関心なTrigger tagも設定します。
いまのルールだとYourBlockName_StatusのBit0はこのアラームになりますね。
その作成したアラームをLibraries>Master copiesに引っ貼ります。
そして元にあるアラームを削除します。
SiArvで自動作成を行います。All HMI tags>Generate。
次はCommon data>SiVArc>Alarm rules。
<create new rule>で新しいアラームルールを作ります。
Program blockはmyFBにし、Master copy..はMaster copiesに入れたものを選びます。
もちろん、FBはこの3つのCheckもいれておいてくださいね。
もう一度SiArvで自動作成すると、お、自動的にアラームが作られました。
うん、でもアラームの名前とかまだイマイチですね。ここでちょっと変更します。
先myFBのインスタンスDBの名前をmyFB_Devices1_DBに変わります。つまり”_”が増えてきましたね。
そしてNameとAlarm textにSymbolicName[1]に変わります。
この[1]は、実に文字列のIndexとして扱うことできます。
下にも例が書いていますが、
SG19_FG97_ST090+UR001_FBだったら、
- [0]=SG19
- [1]=FG97
- [2]=ST090+UR001
- [3]=FB
つまり”_”で別けるんです。
そうすると新しく自動作成されたアラームmyFB1がなくなりました!
使え道としては例えばmyFBはプログラムの中にいくつあるとします。
当然、インスタンスDBも複数になります。
次はHMI alarmsの画面で0-15のTrigger bitのNameとアラームテキストを作ります。
もちろんPlugs-inのところもちゃんと合わせます。
16個のAlarm作成終われば、Master copiesに入れます。
次はAlarm rulesの画面いくと、ルールめっちゃありますね。
ここで同じのFBのAlarm rulesを選んで、”Creates a new rule gropu and adds the selected rules and rule groups”を。
そうすると綺麗にまとめてくれます。
補足
これはFBのものをアクセスしたいとき使うの名称です。
こっちはFBのInterface画面ですね。
最後、アラームを作成するときに必ずNameを設定してください。さもないと複数のDBでアラームを作ることできません(しかもWarningなし)。
はーい、お疲れ様です。