E-mail パスワード
次回から自動ログインする    
パスワード紛失  新規登録      
   ホーム | フォーラム | ブログ | Wiki | 用語集 | マイアルバム | カレンダー | リンク | サイト内検索 |  

用語集

用途別分類(カテゴリー)別
頭文字(イニシャル)別
A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z
あ行  か行  さ行  た行  な行  は行  ま行  や行  ら行  わ・ん  その他  すべて
せっと

SET

書式 anchor.png

SET (D)=(S)
例:
SET M100 //無条件にM100をSET
SET M100=X20 //X20がONの時にM100をSET
SET M100=!X20 //X20がOFFの時にM100をSET
SET M100=X20+!M30 //X20がONかM30がOFFの時にM100をSET
SET M100=X20*!M30 //X20がONかつM30がOFFの時にM100をSET
SET M100=(D20L<=K10000L) //D20が10000以下の時にM100をSET

使用可能データ anchor.png

設定データ使用可能データ
ビットデバイスワードデバイス定 数計算式ビット条件式比較条件式
16ビット整数型32ビット整数型(L)64ビット浮動小数点型(F)フリーランタイマ16ビット整数型(K/H)32ビット整数型(K/H,L)64ビット浮動小数点型(K)
(D)
(S)

○:設定可
PXは書込み不可のため、(D)に使用できません。
M2001~M2032などのシステムデバイスを、(D)に使用できません。

設定データ anchor.png

設定データ内容結果のデータ型
(D)デバイスセットするビットデータビット論理型
(真/偽)
(S)デバイスセットを行うかどうかを決める条件データ

演算時間(μs) anchor.png

命令演算式の例A173UHQ173Q173HQD173
ON(A接点)(条件成立時)SET M1000 = M039.513.7410.402.54
OFF(B接点)(条件成立時)SET M1000 = !M041.313.3811.552.80
SET デバイスのセットSET M100028.33.428.801.78
SET U3E1¥G11000.02.14


実体ファイル:公開Data集​/用語集​/inc​/デバイス​/SET
関連用語:「RST」「OUT

関連記事:
参考文献:
関連サイト:
Powered by Xwords  based on Wordbook

コメント一覧

なーお  投稿日時 2008/3/19 7:16 | 最終変更

SET/RSTで重要な使い方があります。
例えば、G箱内の最終行で以下のような記述をしたとき

SET M100=!M200 //M100:自プロセスでの占有フラグ、M200:他のプロセスで占有中フラグ

このとき、M200というインタロックフラグで他のプロセスが占有していなければ、M100という占有中フラグをセットして、以下に移行する、というものです。SFC内のインタロックは、この考え方一つが基本になります。

一方、以下のようなものは、同じことをやっているようですがSFCの移行中に衝突が生じてインタロックとしては成立しません。

G
 !M200 //M200:他のプロセスで占有中フラグ
   |
F
 SET M100

↑の方法では、Gで条件を確認して移行中にメイン周期の関係で中断すると、他のプロセスで同様にM100のオフを確認して移行したり、やSFC以外のシステム側の変化などで衝突が発生してしまいます。

特に、イベントタスク(イベントSFC)を使った場合は、F-Gが1セットの移行数なので連続移行数の最後にGを評価して途切れてしまい、次のFを実行した時には状況が変わってしまう可能性があるので、要注意です。

この辺でハマると非常に厄介なので、素直に SET M100=!M200 的なインタロックを使っていくことをお勧めします。

新しくコメントをつける

題名
ゲスト名
投稿本文
より詳細なコメント入力フォームへ

メインメニュー