ホームに戻る
目次 :

この記事は書きかけです。

ST(Structured Text)言語とは

コントローラ(PLC)の制御に用いるための言語。国際標準IEC 61131-3の5言語のうちの一つ。
CやBASICのような高級プログラミング言語に近い記述が可能で、演算処理を記述した際の可読性にすぐれる。

記法

C/C++同様、フォーマットの自由度が高い。

変数と型

変数の型は初期値によって規定される。(初期化を伴わない変数宣言はできない?)
変数への代入は ":=" 演算子を用いる。
X1 := LREAL#150 ; // 変数 X1 を 型 : 倍精度実数(LREAL)、値 : 150の両方を指定して初期化 X2 := LREAL#20000 ; X3 := 100.0 ; // 変数 X3 を 値のみ指定して初期化(型は自動で決定される) Y1 := X2/X1 ; // 除算結果を得る
使用できる型名(抜粋)
ST相当する
C/C++の型
2バイト符号付き整数INTshort int
4バイト符号付き整数DINTlong int
2バイト符号無し整数UINTunsigned short int
4バイト符号無し整数UDINTunsigned long int
4バイト実数REALfloat
可変長1バイト文字列STRINGstd::string
可変長2バイト文字列WSTRINGstd::wstring
持続時間TIMEstd::time_t
日付DATEstd::time_t

演算子

演算ST相当する
C/C++の演算子など
数値演算加算++
減算--
乗算**
除算//
剰余算MOD%
べき乗**std::pow() 関数
比較演算小なり(未満)<<
大なり(超)>>
以下<=<=
以上>=>=
等しい===
等しくない<>!=
論理演算否定NOT!
論理積AND&&
論理和OR||
排他的論理和XOR
代入:==
括弧()()