POUには、PROGRAM、FB、FUN(ファンクション)の3種類が規定されています。FUNは、四則演算や型変換などに使用する内部状態を持たない命令です。つまり“入力が同じであれば演算結果は常に同じになる”というところがFBとの違いです。全てのPOUからアクセス可能な共通の変数のことを「グローバル変数」と呼び、その変数が定義されたPOUの中でのみアクセス可能な変数を「ローカル変数」と呼んでいます。
次に、プログラムの実行単位である「タスク」について説明します。
タスク内にPOUを登録することによってプログラムが実行されます。タスクには、常時繰り返し実行される「デフォルトタスク」、設定した周期ごとに実行される「定周期タスク」、指定したBOOL型変数が「0→1」に変化した時に1回だけ実行される「イベントタスク」が用意されており、POUの用途に応じて実行優先順位とタイミングを設定することができます(図3)。※2)
※2)各タスクの呼称や最小設定単位はメーカーによって異なります。
メーカー独自の従来ツールでは、メーカーが替わるごとに分厚いマニュアルを読んだり、数日間のメーカー研修を受講したりと、習得までにかなりの時間を要してしまいます。
IEC 61131-3はプログラミング言語のみならず、プログラムの構成や変数の定義なども規定されているため、同規格に準拠したプログラミングツールの操作性はおのずと統一感がとれたものになっています。従ってA社のツールを一度習得してしまえば、B社、C社のツールも直感的に短時間で使いこなすことができるでしょう。
図4はIEC 61131-3( JIS B 3503 )に準拠したSysmac Studio(オムロン製)の画面です。
従来ツールに慣れ親しんだ方から「今までメーカーで決めていたアドレスを自分で決める(定義する)のは面倒だ」「ST言語はコンピュータ言語みたいで難しい」「忙しくて勉強する余裕がない」などの声を耳にすることがあります。
確かにリーマンショック頃まではIEC 61131準拠というと欧州メーカーのPLCがほとんどで、マニュアルやサービスサポートも英語が基本といった状況でした。しかし今日では、オムロンをはじめ多くの国内メーカーからIEC 61131準拠のPLCを購入することが可能になっています。もちろん、日本語でのサポート体制やトレーニングコース※3)、PLCopen Japan執筆による解説書籍なども整ってきました。
産業オートメーションに限らず、グローバル市場で“国際標準”が選ばれるのは必然といえます。なぜならば、海外で現地技術者と共同開発する場合、あるいは海外に開発を委託する場合において、IEC 61131-3を使った経験のある技術者は容易に見つかりますが、日本独自の従来ツールを使える技術者は海外ではなかなか見つからないからです。つまり、英語と同じようにIEC 61131-3はPLC技術者にとって万国共通の言語なのです。
2回にわたってIEC 61131-3の主な特長について紹介してきましたが、最後にもう一度、従来ツールとの違いについて表1にまとめておきます。
次回は、PLCopenが提唱するモーションコントロール用FBについて紹介します。
※) PLCopenおよび関連するロゴマークはPLCopenが所有する登録商標です。
Copyright © ITmedia, Inc. All Rights Reserved.