ア プ リ ケーシ ョ ンの開発
こ の章では、 アプ リ ケーシ ョ ン を開発す る 方法について説明 し ます。
タ ス ク の管理 Logix5000
コ ン ト ロ ー ラ では、 複数の タ ス ク を使用 し て、 指定 さ れた条件に基づい て プ ロ グ ラ ム の実行 ス ケ ジ ュ ールの設定 と プ ラ イ オ リ テ ィ(
優先順位)
を付け る こ と がで き ます。 こ れに よ っ て、 アプ リ ケーシ ョ ンの さ ま ざ ま な動作に コ ン ト ロ ー ラ の処理時 間を振分け ます。 以下に注意 し て く だ さ い。•
コ ン ト ロ ー ラ が一度に実行で き る タ ス ク は1
つのみです。•
特定の例外 タ ス ク が別の タ ス ク に割込み、 制御す る こ と が で き ます。•
ど の特定の タ ス ク で も 、 一度に実行 さ れ る プ ロ グ ラ ムは1
つのみです。項目 参照ページ
タ ス ク の管理 99
プ ログ ラ ムの開発 100
タ グの編成 105
プ ログ ラ ミ ング言語の選択 106
コ ン ト ロー ラ ス テー タ スのモニ タ 108
接続のモニ タ 109
シ ス テムオーバーヘ ッ ド の タ イムス ラ イ スの割合の選択 112
第 7章 ア プ リ ケーシ ョ ンの開発
プ ログ ラ ムの開発
コ ン ト ロ ー ラ のオペレーテ ィ ン グ シ ス テ ムは、IEC 1131-3
に準拠 し たプ リ エンプテ ィ ブ ・ マルチ タ ス ク ・ シ ス テ ムです。 こ の環境 は以下を提供 し ます。•
コ ン ト ロ ー ラ の実行を構成す る タ ス ク•
デー タ お よ び ロ ジ ッ ク を グループ化す る プ ロ グ ラ ム• 1
つのプ ロ グ ラ ミ ン グ言語で記述 さ れた実行可能 コ ー ド を カプセル化す る ためのルーチン図19- プ ロ グ ラ ム開発 制御ア プ リ ケー
シ ョ ン コ ン ト ロー ラの フ ォル ト ハン ド ラ タ ス ク8
タ ス ク1
構成 ス テー タ ス ウ ォ ッ チ ド ッ グ プ ロ グ ラ ム32
プ ログ ラ ム1 メ イ ン ルーチ ン フ ォ ル ト ルーチ ン
プ ロ グ ラ ム (ロー カル)
タ グ
その他の ルーチ ン
コ ン ト ロー ラ(グ
ローバル)タ グ I/Oデー タ シ ス テム共有
デー タ
ア プ リ ケーシ ョ ンの開発 第 7章
タ ス ク の定義
タ ス ク では、 プ ロ グ ラ ムのための情報の ス ケ ジ ュ ール設定 と プ ラ イ オ リ テ ィ 情報が提供 さ れます。 タ ス ク を連続、 周期的、 ま たは イ ベン ト の タ ス ク と し て構成す る こ と がで き ます。連続可能な タ ス ク は
1
つのみです。タ ス ク には最大
32
のプ ロ グ ラ ム を設定で き 、 それぞれ独自の実 行可能ルーチン と プ ロ グ ラ ム用 タ グ を設定で き ます。 タ ス ク が トリ ガ
(
ア ク テ ィ ベーシ ョ ン)
さ れ る と 、 こ の タ ス ク に割当て ら れ たプ ロ グ ラ ムすべてが、 グループ化 さ れた順序で実行 さ れ ます。プ ロ グ ラ ム は コ ン ト ロ ー ラ オーガナ イ ザに一度だ け表示 さ れ ま す。 複数の タ ス ク で共有す る こ と はで き ません。
タ ス クのプ ラ イ オ リ テ ィ の指定
コ ン ト ローラ の タ ス ク にはそれぞれ、 プ ラ イ オ リ テ ィ
(
優先順位)
が付け ら れて い ま す。 複数の タ ス ク が ト リ ガ さ れた場合、 オペ レーテ ィ ン グ シ ス テ ムは こ のプ ラ イ オ リ テ ィ を使用 し て、 ど の タ ス ク を実行す る か決定 し ます。 実行のプ ラ イ オ リ テ ィ が1
~15
の周期的 タ ス ク を 構成で き ま す。 プ ラ イ オ リ テ ィ の高い タ ス ク は、 プ ラ イ オ リ テ ィ の低い タ ス ク に割込みます。 連続 タ ス ク の優 先順位は最 も 低 く 、 必ず、 周期的 タ ス ク に割込まれます。CompactLogix
コ ン ト ロ ー ラ はプ ラ イ オ リ テ ィ6
の専用の周期的 タ ス ク でI/O
デー タ の処理を実行 し ます。 こ の周期的 タ ス ク は、1
ミ リ 秒(msec)
に約1
回の速度でCompactBus
に構成 し たRPI
で実 行 さ れます。 その合計実行時間は、 構成済みI/O
モジ ュ ールが ス キ ャ ン さ れてい る 間です。タ ス ク の構成方法は、 コ ン ト ロ ー ラ に よ る
I/O
デー タ の受信方法 に影響を与え ます。 プ ラ イ オ リ テ ィ が1
~5
の タ ス ク は専用のI/O
タ ス ク よ り も 優先 さ れます。 こ のプ ラ イ オ リ テ ィ 範囲内の タ ス ク はI/O
処理時間に影響を及ぼす可能性があ り ます。 例えば、以下の構成を使用す る 場合です。
• I/O RPI
が1msec
•
タ ス ク のプ ラ イ オ リ テ ィ が実行に500 μ sec
を要す る1
~5
の範囲にあ り 、 毎秒ご と の実行が ス ケ ジ ュ ール設定 さ れて い る 。こ の構成のため、構成 さ れてい る
I/O
の ス キ ャ ン ジ ョ ブが完了す る ま で専用のI/O
タ ス ク が500 μ sec
の間放置 さ れます。表24- タ ス ク のサポー ト
コ ン ト ロー ラ サポー ト さ れる タ ス ク
1769-L35x 8
1769-L32x 6
1769-L31 4
第 7章 ア プ リ ケーシ ョ ンの開発
ただ し 、 高プ ラ イ オ リ テ ィ
(1
~5)
の2
つの タ ス ク が毎秒ご と に 実行 さ れ る よ う に ス ケ ジ ュ ール設定 し 、その2
つで実行に500μsec
以上が必要にな る と 、専用のI/O
タ ス ク のためのCPU
時間は残っ てい ません。 さ ら に、 専用I/O
タ ス ク の実行時間が2msec
に近いI/O
が設定 さ れて る と(
ま たは、 プ ラ イ オ リ テ ィ の高い タ ス ク と 専用I/O
タ ス ク の組み合わせで約2msec
にな る)
、 低プ ラ イ オ リ テ ィ(7
~15)
のためのCPU
時間はな く な り ます。ヒ ン ト 例えば、 プ ログ ラ ムが設定 さ れた速度で入力に反 応 し て出力を制御する必要があ る場合は、
6
よ りも 高いプ ラ イ オ リ テ ィ
(1
~5)
で周期的 タ ス ク を構 成 し ます。 こ う する こ と で、 専用のI/O
タ ス クがプ ログ ラ ムの周期的速度に影響を及ぼすのを避ける こ と がで き ます。 ただ し 、 プ ログ ラ ムに多 く の数 式およびデー タ の処理が含まれている場合、 専用 のI/O
タ ス ク がプ ログ ラ ムに よ る悪影響を受けないよ う に、 タ ス ク 内の こ のロ ジ ッ クが連続 タ ス ク な どのよ う に
6
よ り も低い(7
~15)
プ ラ イ オ リ テ ィ に 置き換え られます。表25- 複数の タ ス ク の例
タ ス ク プ ラ イ オ リ テ ィ レ ベル タ ス ク の種類 実行時間の例 最悪の場合の完了時間
1 5 20msec周期的 タ ス ク 2msec 2msec
2 7 専用I/Oタ ス ク
5msec選択済みRPI
1msec 3msec
3 10 10msec周期的 タ ス ク 4msec 8msec
4 な し(最低) 連続 タ ス ク 25msec 60msec
0 5 10 15 20 25 30 35 40 45 50 55 60 65
タ ス ク1 タ ス ク2 タ ス ク3 タ ス ク4
ア プ リ ケーシ ョ ンの開発 第 7章
以下に注意 し て く だ さ い。
•
プ ラ イ オ リ テ ィ が最高の タ ス ク はあ ら ゆ る プ ラ イ オ リ テ ィ の タ ス ク に割込みます。•
専用I/O
タ ス ク はプ ラ イ オ リ テ ィ レベル1
~5
ま での タ ス ク に よ っ て割込まれます。専用
I/O
タ ス ク はプ ラ イ オ リ テ ィ レベル7
~15
の タ ス ク に割込みます。 こ の タ ス ク は、CompactLogix
シ ス テ ムで ス ケ ジ ュ ール設定 さ れた選択済みのRPI
速度で実行 さ れます(
こ の例では2msec)
。•
連続 タ ス ク は最 も 低いプ ラ イ オ リ テ ィ で実行 さ れ、 すべて のその他の タ ス ク に割込まれます。•
プ ラ イ オ リ テ ィ が最 も 低い タ ス ク は、 プ ラ イ オ リ テ ィ が高 い タ ス ク に よ っ て何回 も 割込まれます。•
連続 タ ス ク で全体の ス キ ャ ンが完了す る と 、 プ ラ イ オ リ テ ィ の高い タ ス ク が実行 さ れてい る 場合以外、 即座に全体 の ス キ ャ ンが再開 さ れます。プ ログ ラ ムの定義
各プ ロ グ ラ ムには以下が含まれてい ます。
•
プ ロ グ ラ ム タ グ•
メ イ ン実行可能ルーチン•
その他のルーチン•
オプシ ョ ンの フ ォ ル ト ルーチン各 タ ス ク は
32
のプ ロ グ ラ ム を ス ケ ジ ュ ールす る こ と がで き ます。タ ス ク 内の ス ケ ジ ュ ール型プ ロ グ ラ ムは、最初か ら 最後が完結す る ま で実行 さ れます。 ど の タ ス ク に も 関連付け ら れていないプ ロ グ ラ ムは、 非ス ケ ジ ュ ール型プ ロ グ ラ ム と し て表示 さ れます。 コ ン ト ロ ー ラ でプ ロ グ ラ ム を ス キ ャ ンす る には、 タ ス ク 内のプ ロ グ ラ ム を指定
(
ス ケ ジ ュ ール設定)
す る 必要があ り ます。ルーチ ンの定義
ルーチンは、 ラ ダー ロ ジ ッ ク な ど の単一のプ ロ グ ラ ミ ン グ言語に よ る ロ ジ ッ ク 命令のセ ッ ト です。 ルーチンは、 プ ロ ジ ェ ク ト の実 行可能 コ ー ド を コ ン ト ロ ー ラ に提供 し ます。 ルーチンは、
PLC
ま たはSLC
コ ン ト ロ ー ラ のプ ロ グ ラ ム フ ァ イ ルやサブルーチンに 似てい ます。プ ロ グ ラ ムにはそれぞれ メ イ ンルーチンがあ り ます。 こ れは、 コ ン ト ロ ー ラ が関連す る タ ス ク を ト リ ガ し 、関連す る プ ロ グ ラ ム を 呼出 し た と き に実行 さ れ る 最初のルーチンです。他のルーチン を 呼出すには、
JSR(
サブルーチンへのジ ャ ンプ)
命令な ど の ロ ジ ッ第 7章 ア プ リ ケーシ ョ ンの開発
ま た、 オプ シ ョ ン プ ロ グ ラ ム の フ ォ ル ト ルーチ ン も 指定で き ま す。 コ ン ト ロ ー ラ は、 関連プ ロ グ ラ ムのルーチン内で命令実行時 に フ ォ ル ト が発生 し た場合に、 こ のルーチン を実行 し ます。
コ ン ト ロー ラ プ ロ ジ ェ ク ト のサン プル
RSLogix 5000 Enterprise
プ ロ グ ラ ミ ン グ ソ フ ト ウ ェ アに用意 さ れて い る サンプルプ ロ ジ ェ ク ト を コ ピー し 、自分のアプ リ ケーシ ョ ン に合わせて変更す る こ と がで き ます。コ ン ト ロ ー ラ プ ロ ジ ェ ク ト のサ ン プルのセ ッ ト を表示す る には、
以下の手順を実行 し て く だ さ い。
1. Help
プルダ ウ ン メ ニ ュ ーか ら 、Vendor Sample Projects
を選択 し ます。2.
下に ス ク ロ ール し て、 サンプルプ ロ ジ ェ ク ト のセ ッ ト を選 択 し ます。ア プ リ ケーシ ョ ンの開発 第 7章
タ グの編成 Logix5000
コ ン ト ロ ー ラ では、デー タ(
変数)
のア ド レ ス指定に タ グ(
英数字の名前)
を使用 し ます。Logix5000
コ ン ト ロ ー ラ には、固定 さ れた数値形式はあ り ません。 こ の タ グ名自体がデー タ を特 定 し ます。 こ れに よ っ て以下が可能にな り ます。
•
機械を正確に反映す る よ う にデー タ を構成す る 。•
アプ リ ケーシ ョ ン を開発 し なが ら(
タ グ名を利用 し て)
文 書化す る 。図20- タ グの編成
タ グ を作成す る と き に、 以下のプ ロ パテ ィ を タ グに割付け ます。
• Tag type (
タ グ タ イ プ)
• Data type (
デー タ タ イ プ)
• Scope (
範囲)
デジ タ ルI/O デバイ ス アナログI/O デバイ ス
整数値 格納ビ ッ ト カ ウン タ タ イ マ
第 7章 ア プ リ ケーシ ョ ンの開発
プ ログ ラ ミ ン グ言語の 選択
CompactLogix
コ ン ト ロ ー ラ では、 オ ン ラ イ ン と オ フ ラ イ ンの両方 で、 以下のプ ロ グ ラ ミ ン グ言語がサポー ト さ れてい ます。表26- プ ロ グ ラ ミ ン グ言語の選択
必要な言語 プ ログ ラ ム
ラ ダーダ イ アグ ラ ム(LD) 複数の処理の連続的または並行 し た実行(順次実行ではない) ブー リ ア ン またはビ ッ ト 単位の処理
複雑な論理演算
メ ッ セージおよび通信処理 マ シ ンのイ ン タ ーロ ッ ク
マ シ ンやプ ロ セス を ト ラ ブルシ ュ ーテ ィ ン グする ために、 サービ スまたは メ ン テナン ス担当者が解読 し なければな ら ない操作
フ ァ ン ク シ ョ ン ・ ブ ロ ッ ク ・ ダ イ ア グ ラ ム(FBD)
連続プ ロ セス と ド ラ イ ブ制御 ループ制御
サーキ ッ ト フ ローでの計算 シーケ ン シ ャ ル ・ フ ァ ン ク シ ョ ン ・
チ ャ ー ト (SFC)
複数の処理の高レ ベル管理 連続処理の反復
バ ッ チ プ ロ セス
構造化テキス ト を使用 し たモーシ ョ ン コ ン ト ロール ス テー ト マ シ ンの動作
構造化テキス ト (ST) 複雑な算術演算
特殊な配列またはテーブルループの処理
ASCII文字列処理またはプ ロ ト コル処理