変数名称 |
内容 |
読み込み |
書き込み |
---|---|---|---|
スキャンタイム |
|||
0ステップめ開始~次のスキャンの0ステップめ開始までの時間 |
|
- |
|
#L_ScanTimeの64サイクル分の平均 |
|
- |
|
#L_ScanTimeの最小スキャンタイム |
|
- |
|
#L_ScanTimeの最大スキャンタイム |
|
- |
|
スキャン回数 |
|
- |
|
0ステップめ開始~END命令までの時間 |
|
- |
|
#L_LogicTimeの64サイクル分の平均 |
|
- |
|
#L_LogicTimeの最小ロジックタイム |
|
- |
|
#L_LogicTimeの最大ロジックタイム |
|
- |
|
ステータス |
|||
ロジックのステータス情報 |
|
- |
|
表示器プラットフォームのコード |
|
- |
|
ロジックのファームウェアバージョン |
|
- |
|
オンライン編集された回数 |
|
- |
|
強制変更された変数の数 |
|
- |
|
I/Oドライバ情報 |
|
- |
|
ロジック情報 |
|
- |
|
マスターI/Oドライバの拡張情報 |
ドライバに依存 |
ドライバに依存 |
|
マスターI/Oドライバの自己診断情報 |
ドライバに依存 |
ドライバに依存 |
|
システム設定 |
|||
ロジックの起動周期 |
|
- |
|
ロジックの動作割合 |
|
- |
|
ロジックのWDT値 |
|
- |
|
接続機器アドレスのアドレスリフレッシュ時間 |
|
- |
|
時間 |
|||
時分情報 |
|
- |
|
動作情報 |
|||
ロジックの動作モード変更 |
|
|
|
ロジックモニタの起動スイッチ |
|
|
|
ロジックモニタの表示ステップを指示 |
|
|
|
I/Oステータス |
|||
I/Oドライバのステータス |
|
- |
|
エラー情報 |
|||
演算異常コード格納エリア |
|
- |
|
演算異常発生ステップ番号格納エリア |
|
- |
|
演算異常発生ロジック番号格納エリア |
|
- |
|
ロジック停止 |
|||
ロジック停止スキャン回数 |
|
|
|
保持変数バックアップ |
|||
バックアップコマンド |
|
|
|
#L_ExIOFirmVer*2 |
拡張I/Oボードのファームウェアバージョン |
|
- |
#L_ExIOSpCtrl*2 |
特殊I/O制御 |
|
|
#L_ExIOSpOut*2 |
特殊I/O出力 |
|
- |
#L_ExIOSpParmChg*2 |
特殊I/Oパラメータ変更 |
|
|
#L_ExIOSpParmErr*2 |
特殊I/Oパラメータ異常 |
|
- |
#L_ExIOAccelPlsTbl*2 |
加減速パルス用テーブル制御 |
|
|
#L_ExIOCntInCtrl*2 |
カウンタ入力制御 |
|
|
#L_ExIOCntInExtCtrl*2 |
カウンタ入力外部制御 |
|
|
#L_ExIOCntInState*2 |
カウンタ入力状態 |
|
|
Ch*の出力周波数 |
|
|
|
Ch*のONデューティー値 |
|
|
|
Ch*の出力周波数 |
|
|
|
Ch*の出力パルス数 |
|
|
|
Ch*の初期出力周波数 |
|
|
|
Ch*の加減速時間または加速時間 |
|
|
|
CH*のパルス減速時間 |
|
|
|
CH*の現在の周波数 |
|
- |
|
Ch*のパルス出力数現在値 |
|
- |
|
Ch*のカウント方式 |
|
|
|
CH*のサンプリングモード選択時のタイムベース |
|
|
|
Ch*のプリロード値 |
|
|
|
Ch*のプリストローブ値 |
|
- |
|
Ch*のONプリセット値 |
|
|
|
Ch*のOFFプリセット値 |
|
|
|
Ch*のカウンタ現在値 |
|
- |
*2 詳細は、31.5.1.3 特殊I/Oのシステム変数についてを参照してください。
#L_ScanTime(0ステップめ開始~次のスキャンの0ステップめ開始までの時間)
毎スキャン実行前の1つ前のスキャンタイムを最新のスキャンタイムとして格納します。
スキャンタイムとは、I/Oの読み込み、ロジックプログラムの実行、I/Oの書き込み、表示処理までに必要な時間です。
単位は0.1msになります。
#L_AvgScanTime(#L_ScanTimeの64サイクル分の平均)
平均スキャンタイムを格納します。
平均スキャンタイムとは、1回のスキャン実行でI/Oの読み込み、ロジックプログラムの実行、I/Oの書き込み、表示処理までに必要な時間の平均です。
64回スキャン実行するごとに更新されます。
単位は0.1msになります。
#L_MinScanTime(#L_ScanTimeの最小スキャンタイム)
ロジックプログラムの実行最小スキャンタイムを格納します。
#L_ScanTimeの更新時に最小スキャンチェックを行い、スキャンごとに更新します。
単位は0.1msです。
#L_MaxScanTime(#L_ScanTimeの最大スキャンタイム)
ロジックプログラムの実行最大スキャンタイムを格納します。
#L_ScanTimeの更新時に最大スキャンチェックを行い、スキャンごとに更新します。
単位は0.1msです。
#L_ScanCount(スキャン回数)
カウンタで、ロジックプログラムのスキャン実行が1回終わるごとにインクリメントされます。
#L_ScanCountの値の範囲は0~16#FFFFFFFFで、最大値(16#FFFFFFFF)を超えると0から再度インクリメントされます。
#L_ScanCountを確認することで、ロジックプログラムが実行されているかを容易に知ることができます。
#L_LogicTime(0ステップめ開始~END命令までの時間)
前回のスキャン実行のロジックタイムを格納します。
ロジックタイムとは、1回のスキャン実行でI/Oの読み込み、ロジックプログラムの実行、I/Oの書き込みまでに必要な時間です。表示処理を実行している時間は含まれません。単位は0.1msです。
#L_AvgLogicTime(#L_LogicTimeの64サイクル分の平均)
平均ロジックタイムを格納します。
平均ロジックタイムとは、1回のスキャン実行でI/Oの読み込み、ロジックプログラムの実行、I/Oの書き込みまでに必要な時間の平均です。
64回スキャン実行するごとに更新されます。単位は0.1msです。
#L_MinLogicTime(#L_LogicTimeの最小ロジックタイム)
ロジックプログラムの実行最小ロジックタイムを格納します。
#L_LogicTimeの更新時に最小ロジックタイムのチェックを行いスキャンごとに更新します。
単位は0.1msになります。
#L_MaxLogicTime(#L_LogicTimeの最大ロジックタイム)
ロジックプログラムの実行最大ロジックタイムを格納します。
#L_LogicTimeの更新時に最大ロジックタイムのチェックを行いスキャンごとに更新します。
単位は0.1msになります。
#L_Status(ロジックのステータス情報)
表示器の状態を表示します。バイトとビットを、次のように定義します。
バイト0 : 表示器の現在のエラー状態が表示されます。
バイト1 : エラー状態の履歴が表示されます。表示器をリセットしたときのみ、0にリセットされます。
バイト2 : 現在の動作状態が表示されます。
バイト3 : 予約エリアです。
#L_Platform(表示器プラットフォームのコード)
表示器のプラットフォームのコードを格納します。
AGP-3302B
0x00020404
AGP-3301
0x00020504
AGP-3300
0x00020514
AGP-3310
0x00020B14
AGP-3360
0x00020B34
AGP-3400
0x00020614
AGP-3500
0x00020714
AGP-3600
0x00020814
AGP-3450
0x00020634
AGP-3550
0x00020734
AGP-3650
0x00020834
AGP-3750
0x00020934
AGP-3510
0x00020A14
AGP-3560
0x00020A34
LT-3201A
0x00030204
LT-3301
0x00030504
LT-3300
0x00030514
SP5000シリーズ、GP4000シリーズ、LT4000シリーズ、ET6000シリーズ、ST6000シリーズ、STM6000シリーズ、STC6000シリーズ、GPH6000シリーズ
0x00040000
ご使用の機種のロジックプログラムへの対応については、以下を参照してください。
1.5 機種別サポート機能一覧
#L_Version(ロジックのファームウェアバージョン)
ロジックのファームウェアバージョンを格納します。
#L_EditCount(オンライン編集された回数)
オンラインエディットの回数を格納します。(RUN中書き込み時は実行できません。)
#L_ForceCount(強制変更された変数の数)
オンラインモニタ時に強制変更された変数の数を格納します。
#L_IOInfo(I/Oドライバ情報)
I/Oドライバの情報を格納します。
#L_IOInfo[0] : 内部ドライバ2
#L_IOInfo[1] : 内部ドライバ1
#L_IOInfo[2] : 外部ドライバ1
#L_IOInfo[3] : 予約
#L_LogicInfo(ロジック情報)
システムで予約されています。
#L_IOMasterDrv*(マスターI/Oドライバの拡張情報)
[*]には0~255が入ります。
マスターI/Oドライバの拡張情報を格納します。マスターI/Oドライバの種類によって、使用できるものとできないものがあります。
31.9.4 I/Oドライバ命令を使用する - CANopen
31.10.3 I/Oドライバ命令を使用する - EtherNet/IP
#L_IOMasterDiag*(マスターI/Oドライバの自己診断情報)
[*]には0~31が入ります。
マスターI/Oドライバの自己診断情報を格納します。マスターI/Oドライバの種類によって、使用できるものとできないものがあります。
#L_ConstantScan(ロジックの起動周期)
コンスタントスキャンモードの場合に、ロジックの総処理時間を格納します。
ロジックタイムが一定の場合、#L_ConstantScanの値を大きくすると、表示処理の処理時間を長くすることができます。また、値を小さくすると、表示処理の時間が短くなります。これは、処理時間の大半をロジック機能が使用するためです。
初期設定として設定してください。単位は0.1msです。
30.14.3.2 ロジックのスキャンタイム
#L_PercentScan(ロジックの動作割合)
パーセントスキャンモードの場合に、ロジックの総処理時間に対してロジック機能が使用できる割合をパーセントで格納します。
初期設定として設定してください。
30.14.3.1 ロジック機能の動作
#L_WatchdogTime(ロジックのWDT値)
WDT(ウォッチドッグタイマ)の値を0.1ms単位で格納します。
#L_ScanTimeがこの値を超えると、メジャー異常が発生します。
初期設定として設定してください。単位は0.1msです。
#L_AddressRefreshTime(接続機器アドレスのアドレスリフレッシュ時間)
ロジックプログラム上で使用されている接続機器アドレスのアドレスリフレッシュ時間が格納されています。単位は0.1msです。
30.14.3.3 アドレスリフレッシュ
#L_Time(時分情報)
ロジックに設定されている「時分」をBCD4桁で示します。
時分は次の状態で格納されています。
例)午後11時19分の場合
|
時(10の桁) |
時(1の桁) |
分(10の桁) |
分(1の桁) |
---|---|---|---|---|
値 |
2 |
3 |
1 |
9 |
#L_Command(ロジックの動作モード変更)
ロジックに対する制御コマンドとして使用される整数変数です。
ロジックは、#L_Commandを認識した後、ビット7以外を0にリセットします。複数のビットがONになっている場合、最下位ビットが優先されます。
#L_LogicMonitor(ロジックモニタの起動スイッチ)
表示器のロジックプログラムモニタ機能の起動、操作を行います。
各操作については、次のとおりです。
#L_LogicMonStep(ロジックモニタの表示ステップを指示)
ロジックモニタが起動している場合に表示する先頭行番号を格納します。
また、ロジックモニタが起動していない場合は、#L_LogicMonStepに行番号を書き込むことによって、ロジックモニタ起動ビット(#L_LogicMonitorのビット0)がOFF→ON時に指定行番号を先頭にロジックモニタが起動します。
ロジックモニタ機能が有効の場合に使用できます。
#L_IOStatus(I/Oドライバのステータス)
I/Oドライバのエラー情報を格納します。
号機番号格納エリア
エラーが発生したユニットの号機番号が格納されます。使用するI/Oドライバによっては予約ビットとなります。
照合
設定されたユニットと実際に接続されたユニットのI/O属性が一致し、点数が異なる場合に「1」がセットされます。使用するI/Oドライバによっては予約ビットとなります。
設定
設定されたユニットと実際に接続されたユニットのI/O属性が不一致の場合に「1」がセットされます。使用するI/Oドライバによっては予約ビットとなります。
重故障
補助ボードのID不一致、プロジェクトデータ破損など、ロジックを停止(Stop)させる必要がある故障を検出したときに「1」がセットされます。
エラーコード
I/Oドライバのエラーが発生した場合、表示器の画面にエラーメッセージと以下のエラーコードが表示されます。
RGED*** : 内部ドライバ2のエラーコード
RGEE*** : 内部ドライバ1のエラーコード
RGEF*** : 外部ドライバ1のエラーコード
#L_IOStatusの下位8ビットには、このエラーコードの番号「***」(0~255)が格納されます。
エラーコードの分類は次のとおりです。
エラーコード |
内容 |
---|---|
001-049 |
プロジェクトデータ関連異常 |
050-099 |
ハードウェア関連異常 |
100-199 |
アプリケーション関連異常 |
200-254 |
内部エラー |
各I/Oドライバのエラーコードの詳細は、以下を参照してください。
配列
各要素の配列は次の通りです。
#L_IOStatus[0] : 内部ドライバ2
#L_IOStatus[1] : 内部ドライバ1
#L_IOStatus[2] : 外部ドライバ1
#L_IOStatus[3] : 予約
ロジックプログラムのエラーコードを格納する32ビットの変数です。このシステム変数の値を確認することで、最後に発生したエラーが確認できます。エラーコードが格納されると、#L_ErrorがONになります。
#L_CalcErrCodeの値は、ロジックをリセットすることで0にクリアされます。ロジックのリセットは、#L_Command(ロジックの動作モード変更)で実行できます。
エラーコード一覧
エラーコード(Dec) |
内容 |
|
---|---|---|
0000 |
- |
異常なし |
0001 |
マイナー異常(継続/停止) |
実数→整数、64bit実数→32bit実数変換でオーバーフロー発生 |
0002 |
メジャー異常(停止) |
配列の領域を超えて参照されました |
0003 |
整数の範囲を超えて参照されました |
|
0004 |
スタックがオーバーフローしました |
|
0005 |
不正な命令コードを使用しています |
|
0006 |
エラーハンドラ中にエラー発生 |
|
0007 |
スキャンタイムがWDTを超えました |
|
0008 |
メジャー異常(停止) |
I/Oドライバで重故障が発生しました |
0009 |
ソフトウェアエラー |
|
0010 |
不正なオペランドを使用しています |
|
0011 |
- |
予約 |
0012 |
マイナー異常(継続/停止) |
BCD/BIN変換エラー |
0013 |
ENCO/DECO変換エラー |
|
0014 |
- |
予約 |
0015 |
マイナー異常(継続/停止) |
SRAMデータ(ユーザプログラム)が破壊された FROMから読み出します |
0016 |
シフトビット数の範囲を超えました |
|
0100 |
メジャー異常(停止) |
I/Oドライバ命令でメジャーエラー発生 |
0105 |
マイナー異常(継続/停止) |
I/Oドライバ命令でマイナーエラー発生 |
6706 |
継続異常 |
応用命令のオペランドのデバイス番号範囲やデータの値がオーバー |
6733 |
比例ゲイン(Kp)が対象範囲外(Kp<0) |
|
6734 |
積分時間(Ti)が対象範囲外(Ti<0) |
|
6736 |
微分時間(Td)が対象範囲外(Td<0) |
|
6740 |
サンプリングタイム(Ts)<=演算周期 |
|
6742 |
測定値変化量オーバー(DPV<-32768または32767<DPV) |
|
6743 |
偏差オーバー(EV<-32768または32767<EV) |
|
6744 |
積分計算値がオーバー(-32768~32767以外) |
|
6745 |
微分ゲイン(Kp)オーバーによる微分値オーバー |
|
6746 |
微分計算値がオーバー(-32768~32767以外) |
|
6747 |
PID演算結果オーバー(-32768~32767) |
|
6765 |
応用命令の使用回数エラー |
メジャー異常
ロジックプログラムの継続が不可能なエラーが発生したことを表します。
メジャー異常が発生すると、ロジックプログラムは停止します。また、表示器のブザーが鳴り、ステータスLED*1が赤色で点滅します。
マイナー異常
ロジックプログラムで桁あふれなどのエラーが発生したことを表します。
マイナー異常が発生したときに、ロジックプログラムを継続するか停止するか選択できます。
5.4.5 システム設定[本体設定] - [ロジック設定]の設定ガイド
継続
ロジックプログラムは停止しません。
ブザー音や表示器のステータスLED*1での通知はされません。
停止
ロジックプログラムは停止します。
ブザー音での通知はされませんが、ステータスLED*1が赤色で点滅します。
継続異常
ロジックプログラムでオペランドの値が不正などのエラーが発生したことを表します。ロジックプログラムは継続されますが、プログラムの実行結果が意図しないものになる可能性があります。
継続異常が発生しても、表示器のステータスLED*1やブザー音での通知はされません。
*1 表示器によってはステータスLEDが存在しない場合があります。
演算処理が正常に行われなかった場合のプログラムStep番号を格納します。
演算処理が正常に行われなかった場合のロジック番号を格納します。
INIT : 1
MAIN : 2
ERRH : 3
SUB-01 : 32 ~SUB-32 : 63
FB : 1001~1128
数値を入力することで、設定された数値の回数分Scanが実行され、設定値が0になるまでロジックのスキャンを実行します。その間、#L_StopPending のビットはONになります。ビットがOFFになるとロジックが停止します。
保持設定されている変数のデータをバックアップする際の、バックアップ、レストアのトリガとなります。
0ビット : バックアップ実行時に自動的に下位16ビットをOFF。
1ビット : レストア実行時に自動的に下位16ビットをOFF。
8ビット : バックアップ完了(正常終了)時にON、エラー発生時はOFF。
9ビット : レストア完了(正常終了)時にON、エラー発生時はOFF。
上記以外のビットは予約です。
保持変数バックアップ要求ビット
0 |
0 |
レストア実行 |
バックアップ実行 |
ビット |
OFF |
ON |
バックアップ実行 |
なし |
要求(変数のバックアップ) |
レストア実行 |
なし |
要求(変数のレストア) |
実行後は自動的にOFFになります。
同時に要求ビットがONとなった場合には、バックアップを実行後にレストアが実行されます。
保持変数バックアップ完了ビット
0 |
0 |
レストア実行 |
バックアップ実行 |
ビット |
OFF |
ON |
バックアップ実行 |
なし |
完了通知 |
レストア実行 |
なし |
完了通知 |
オフラインモードや転送モードでのバックアップできません。
バックアップした際のプロジェクトと同一の場合にのみレストアします。異なる場合はレストアは実行されません。
バックアップ、レストアを連続して実行した場合、画面の表示速度が遅くなったり、ロジックのオンラインモニタが中断されることがあります。またプロジェクトによっては通信などに影響が出る場合もあります。スイッチ部品へ「#L_BackupCmd」を割り付ける場合には[ビットセット]に設定し、続けてタッチしないようにしてください。またDスクリプトで「#L_BackupCmd」を使用したバックアップ、レストアは行わないでください。
ロジック停止中のみバックアップできます。