〜 シンプル通信PLC For OMRON ライブラリ リファレンス 〜
付属のライブラリのリファレンスマニュアルです。ライブラリを使ったサンプルは、sample5です。
全ての関数の第一引数(Obj As Rs)には、シンプル通信LC For OMRONのコントロールを設定します。
データの読み出し関数
データの書き込み関数
データの一括読み出し関数
その他の関数
データの読み出し関数
入出力リレー/内部補助リレー/特殊補助リレーエリア読み出し
No |
号機No |
号機Noを整数で指定します |
CH |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
DataNum |
読出チャネル数 |
チャネル数を整数で指定します。範囲は、1〜30です。 |
戻り値
関数の実行に成功した場合、10進数データの入った配列を返す。失敗した場合、配列0に-1を入れて返す。
例:
Dim d
d = ReadR(Rs1, 0, 10, 2)
If d(0) = -1 Then
MsgBox "関数の実行に失敗しました"
Else
Print d(0)
Print d(1)
End If
LRリレーエリア読み出し
No |
号機No |
号機Noを整数で指定します |
CH |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
DataNum |
読出チャネル数 |
読み出しチャネル数を整数で指定します。範囲は、1〜30です。 |
戻り値
関数の実行に成功した場合、10進数データの入った配列を返す。失敗した場合、配列0に-1を入れて返す。
例:
Dim d
d = ReadL(Rs1, 0, 10, 2)
If d(0) = -1 Then
MsgBox "関数の実行に失敗しました"
Else
Print d(0)
Print d(1)
End If
HRリレーエリア読み出し
No |
号機No |
号機Noを整数で指定します |
CH |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
DataNum |
読出チャネル数 |
読み出しチャネル数を整数で指定します。範囲は、1〜30です。 |
戻り値
関数の実行に成功した場合、10進数データの入った配列を返す。失敗した場合、配列0に-1を入れて返す。
例:
Dim d
d = ReadH(Rs1, 0, 10, 2)
If d(0) = -1 Then
MsgBox "関数の実行に失敗しました"
Else
Print d(0)
Print d(1)
End If
タイマ/カウンタエリア読み出し
No |
号機No |
号機Noを整数で指定します |
CH |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
DataNum |
読出チャネル数 |
読み出しチャネル数を整数で指定します。範囲は、1〜30です。 |
戻り値
関数の実行に成功した場合、10進数データの入った配列を返す。失敗した場合、配列0に-1を入れて返す。
例:
Dim d
d = ReadC(Rs1, 0, 10, 2)
If d(0) = -1 Then
MsgBox "関数の実行に失敗しました"
Else
Print d(0)
Print d(1)
End If
タイマ/カウンタアップデータ読み出し
No |
号機No |
号機Noを整数で指定します |
CH |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
DataNum |
読出チャネル数 |
読み出しチャネル数を整数で指定します。範囲は、1〜120です。 |
戻り値
関数の実行に成功した場合、10進数データの入った配列を返す。失敗した場合、配列0に-1を入れて返す。
例:
Dim d
d = ReadG(Rs1, 0, 10, 2)
If d(0) = -1 Then
MsgBox "関数の実行に失敗しました"
Else
Print d(0)
Print d(1)
End If
DMエリア読み出し
No |
号機No |
号機Noを整数で指定します |
CH |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
DataNum |
読出チャネル数 |
読み出しチャネル数を整数で指定します。範囲は、1〜30です。 |
戻り値
関数の実行に成功した場合、10進数データの入った配列を返す。失敗した場合、配列0に-1を入れて返す。
例:
Dim d
d = ReadD(Rs1, 0, 10, 2)
If d(0) = -1 Then
MsgBox "関数の実行に失敗しました"
Else
Print d(0)
Print d(1)
End If
ARエリア読み出し
No |
号機No |
号機Noを整数で指定します |
CH |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
DataNum |
読出チャネル数 |
読み出しチャネル数を整数で指定します。範囲は、1〜30です。 |
戻り値
関数の実行に成功した場合、10進数データの入った配列を返す。失敗した場合、配列0に-1を入れて返す。
例:
Dim d
d = ReadJ(Rs1, 0, 10, 2)
If d(0) = -1 Then
MsgBox "関数の実行に失敗しました"
Else
Print d(0)
Print d(1)
End If
EMエリア読み出し 使用できない機種があります
No |
号機No |
号機Noを整数で指定します |
BK |
バンク |
-1:カレントバンク
0〜15:指定のバンク(16進数の00〜0Fに対応します)
|
CH |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
DataNum |
読出チャネル数 |
読み出しチャネル数を整数で指定します。範囲は、1〜30です。 |
戻り値
関数の実行に成功した場合、10進数データの入った配列を返す。失敗した場合、配列0に-1を入れて返す。
例: 0Bバンクの10チャネルから2チャネル分のデータを読み出します
Dim d
d = ReadE(Rs1, 0, 11, 10, 2)
If d(0) = -1 Then
MsgBox "関数の実行に失敗しました"
Else
Print d(0)
Print d(1)
End If
データの書き込み関数
入出力リレー/内部補助リレー/特殊補助リレーエリア書き込み
No |
号機No |
号機Noを整数で指定します |
CH |
書込開始チャネル |
書き込み開始チャネルを整数で指定します |
WrData() |
書込データ |
書き込むデータを整数の配列で指定します |
DataNum |
書込チャネル数 |
チャネル数を整数で指定します。範囲は、1〜29です。 |
戻り値
関数の実行に成功した場合、TRUEを返す。失敗した場合、FALSEを返す。
例:
Dim d(2) As Long
d(0) = 12
d(1) = 13
If WriteR(Rs1, 0, 10, d, 2) = FALSE Then
MsgBox "関数の実行に失敗しました"
Else
MsgBox "関数の実行に成功しました"
End If
LRリレーエリア書き込み
No |
号機No |
号機Noを整数で指定します |
CH |
書込開始チャネル |
書き込み開始チャネルを整数で指定します |
WrData() |
書込データ |
書き込むデータを整数の配列で指定します |
DataNum |
書込チャネル数 |
チャネル数を整数で指定します。範囲は、1〜29です。 |
戻り値
関数の実行に成功した場合、TRUEを返す。失敗した場合、FALSEを返す。
例:
Dim d(2) As Long
d(0) = 12
d(1) = 13
If WriteL(Rs1, 0, 10, d, 2) = FALSE Then
MsgBox "関数の実行に失敗しました"
Else
MsgBox "関数の実行に成功しました"
End If
HRリレーエリア書き込み
No |
号機No |
号機Noを整数で指定します |
CH |
書込開始チャネル |
書き込み開始チャネルを整数で指定します |
WrData() |
書込データ |
書き込むデータを整数の配列で指定します |
DataNum |
書込チャネル数 |
チャネル数を整数で指定します。範囲は、1〜29です。 |
戻り値
関数の実行に成功した場合、TRUEを返す。失敗した場合、FALSEを返す。
例:
Dim d(2) As Long
d(0) = 12
d(1) = 13
If WriteH(Rs1, 0, 10, d, 2) = FALSE Then
MsgBox "関数の実行に失敗しました"
Else
MsgBox "関数の実行に成功しました"
End If
タイマ/カウンタエリア書き込み
No |
号機No |
号機Noを整数で指定します |
CH |
書込開始チャネル |
書き込み開始チャネルを整数で指定します |
WrData() |
書込データ |
書き込むデータを整数の配列で指定します |
DataNum |
書込チャネル数 |
チャネル数を整数で指定します。範囲は、1〜29です。 |
戻り値
関数の実行に成功した場合、TRUEを返す。失敗した場合、FALSEを返す。
例:
Dim d(2) As Long
d(0) = 12
d(1) = 13
If WriteC(Rs1, 0, 10, d, 2) = FALSE Then
MsgBox "関数の実行に失敗しました"
Else
MsgBox "関数の実行に成功しました"
End If
タイマ/カウンタアップデータ書き込み
No |
号機No |
号機Noを整数で指定します |
CH |
書込開始チャネル |
書き込み開始チャネルを整数で指定します |
WrData() |
書込データ |
書き込むデータを整数の配列で指定します。値は、0または、1のみです。 |
DataNum |
書込チャネル数 |
チャネル数を整数で指定します。範囲は、1〜118です。 |
戻り値
関数の実行に成功した場合、TRUEを返す。失敗した場合、FALSEを返す。
例:
Dim d(2) As Long
d(0) = 1
d(1) = 0
If WriteG(Rs1, 0, 10, d, 2) = FALSE Then
MsgBox "関数の実行に失敗しました"
Else
MsgBox "関数の実行に成功しました"
End If
DMエリア書き込み
No |
号機No |
号機Noを整数で指定します |
CH |
書込開始チャネル |
書き込み開始チャネルを整数で指定します |
WrData() |
書込データ |
書き込むデータを整数の配列で指定します |
DataNum |
書込チャネル数 |
チャネル数を整数で指定します。範囲は、1〜29です。 |
戻り値
関数の実行に成功した場合、TRUEを返す。失敗した場合、FALSEを返す。
例:
Dim d(2) As Long
d(0) = 12
d(1) = 13
If WriteD(Rs1, 0, 10, d, 2) = FALSE Then
MsgBox "関数の実行に失敗しました"
Else
MsgBox "関数の実行に成功しました"
End If
ARエリア書き込み
No |
号機No |
号機Noを整数で指定します |
CH |
書込開始チャネル |
書き込み開始チャネルを整数で指定します |
WrData() |
書込データ |
書き込むデータを整数の配列で指定します |
DataNum |
書込チャネル数 |
チャネル数を整数で指定します。範囲は、1〜29です。 |
戻り値
関数の実行に成功した場合、TRUEを返す。失敗した場合、FALSEを返す。
例:
Dim d(2) As Long
d(0) = 12
d(1) = 13
If WriteJ(Rs1, 0, 10, d, 2) = FALSE Then
MsgBox "関数の実行に失敗しました"
Else
MsgBox "関数の実行に成功しました"
End If
EMエリア書き込み 使用できない機種があります
No |
号機No |
号機Noを整数で指定します |
BK |
バンク |
-1:カレントバンク
0〜15:指定のバンク(16進数の00〜0Fに対応します)
|
CH |
書込開始チャネル |
書き込み開始チャネルを整数で指定します |
WrData() |
書込データ |
書き込むデータを整数の配列で指定します |
DataNum |
書込チャネル数 |
チャネル数を整数で指定します。範囲は、1〜29です。 |
戻り値
関数の実行に成功した場合、TRUEを返す。失敗した場合、FALSEを返す。
例: カレントバンクの10チャネルから2チャネル分のデータを書き込み
Dim d(2) As Long
d(0) = 12
d(1) = 13
If WriteE(Rs1, 0, -1, 10, d, 2) = FALSE Then
MsgBox "関数の実行に失敗しました"
Else
MsgBox "関数の実行に成功しました"
End If
データの一括読み出し関数
複合コマンド 読み出し登録
No |
号機No |
号機Noを整数で指定します |
Area() |
オペレーション |
読み出したいエリアを整数で指定します
1:入出力リレー、内部補助リレー、特殊補助リレー
2:リンクリレー
3:保持リレー
4:補助記憶リレー
5:タイマ
6:高速タイマ
7:カウンタ
8:可逆カウンタ
9:データメモリ
以下は、機種に依存します
20:積算タイマ
99:拡張メモリエリア(カレント)
100〜115:拡張メモリエリア(バンク指定 100が0、115が0Fに対応)
|
CH() |
チャネル |
読み出すチャネルを整数で指定します |
DataType() |
オペラント |
読み出すデータの形式を整数で指定します
0〜15: 接点の指定
-1: チャネルデータ
|
DataNum |
読出チャネル数 |
チャネル数を整数で指定します。範囲は、1〜10です。 |
戻り値
関数の実行に成功した場合、TRUEを返す。失敗した場合、FALSEを返す。
例: リレーの0チャネルと、DMの0チャネルを一括して読み出すための登録
Dim a(2) As Integer, c(2) As Integer, t(2) As Integer
配列の添え字の等しいものが、同じチャネルの設定となります。例では、0がリレー、1がDMの設定を示します。
a(0) = 1 1は、リレーを意味します
c(0) = 0 チャネルの番号
t(0) = -1 -1は、チャネルの値を意味します。0〜15を指定すると、指定のビットのみを読み出せます。
a(1) = 9 9は、DMを意味します
c(1) = 0
t(1) = -1
If WriteQQ(Rs1, 0, a, c, t, 2) = False Then
MsgBox "関数の実行に失敗しました"
Else
MsgBox "OK"
End If
複合コマンド 一括読み出し
No |
号機No |
号機Noを整数で指定します |
DataNum |
読出チャネル数 |
読み出したチャネル数が整数で返ります。 |
戻り値
関数の実行に成功した場合、文字列データの入った配列を返す。失敗した場合、配列0に文字列”FALSE”を入れて返す。例:R(0)=”FALSE”
例: 上記の設定(WriteQQの例)を行い、一括してデータを読み出す
Dim Ret, n%, i%
Ret = ReadQQ(Rs1, 0, n)
If Ret(0) = "FALSE" Then
MsgBox "関数の実行に失敗しました"
Else
For i = 0 To n - 1
Print Ret(i)
Next
End If
その他の関数
アボート関数 処理中の上位リンク機能を中断し、新しいコマンドを受け付け可能にする
戻り値 なし
イニシャル関数 全号機Noを初期状態に戻す
戻り値 なし
テスト関数 送信データが、受信できるかをテストします。
データを送信し、同じデータが返ってくるかを確認する場合に使います。
No |
号機No |
号機Noを整数で指定します |
SendData |
送信データ |
送信データの文字列を指定します |
RecData |
受信データ |
受信データの文字列が返ります |
戻り値
関数の実行に成功した場合、TRUEを返す。失敗した場合、FALSEを返す。
機種コード読み出し関数
No |
号機No |
号機Noを整数で指定します |
StData1 |
機種コード |
16進数2桁の文字列が返ります |
StData2 |
機種名 |
機種名の文字列が返ります |
戻り値
関数の実行に成功した場合、TRUEを返す。失敗した場合、FALSEを返す。
故障情報読み出し
No |
号機No |
号機Noを整数で指定します |
OnOff |
異常解除 |
1:異常解除する
0:異常解除しない |
StData1 |
ステータスデータ1 |
16進数4桁の文字列が返ります |
StData2 |
ステータスデータ2 |
16進数4桁の文字列が返ります |
戻り値
関数の実行に成功した場合、TRUEを返す。失敗した場合、FALSEを返す。
ステータス読み出し
No |
号機No |
号機Noを整数で指定します |
StData |
ステータスデータ |
16進数4桁の文字列が返ります |
StMsg |
メッセージ |
ステータスに関するメッセージ(文字列)が返ります |
戻り値
関数の実行に成功した場合、TRUEを返す。失敗した場合、FALSEを返す。
ステータス書き込み
No |
号機No |
号機Noを整数で指定します |
StData |
ステータスデータ |
16進数2桁の文字列を指定します。
例:CQM1では、
00:プログラムモード
02:モニタモード
03:運転モード
のみ有効です。 |
戻り値
関数の実行に成功した場合、TRUEを返す。失敗した場合、FALSEを返す。