「ソフテックだより」では、ソフトウェア開発に関する情報や開発現場における社員の取り組みなどを定期的にお知らせしています。
さまざまなテーマを取り上げていますので、他のソフテックだよりも、ぜひご覧下さい。
ソフテックだより(発行日順)のページへ
ソフテックだより 技術レポート(技術分野別)のページへ
ソフテックだより 現場の声(シーン別)のページへ
最近のPLC(※1)機器は、高機能・高性能化しており様々な情報を扱えるようになっています。情報化の流れの中で、今ではPLCでC言語を扱えるユニット(横河電機のe-RT3や三菱電機のC言語コントローラーなど)も発売されており、パソコンで行っていた事がPLCで直接扱えるようになってきました。
そのため、これまでのラダー制御の知識だけでは、e-RT3やC言語コントローラーなどを扱うのは難しくなってきています。
今回は、このようなユニットの中から三菱電機の「MESインターフェースユニット(QJ71MES96)」について取り上げます。
「MESインターフェースユニット」という名前から、どのような機能を持っているのか想像することは難しいですが、簡単に説明するとPLCからデータベースを操作する為のユニットになります。
「MES」という名称が付いているのは、製造実行システム(Manufacturing Execution System)側のデータベースとのやり取りする事を目的に開発された所から来ています。
MESインターフェースユニットから接続するデータベースは、Windows上で動作している必要があります。このWindowsにMESインターフェースユニット用のDB接続サービスをインストールすることで、PLCからODBC(※2)経由の接続ができるようになります。
MESユニットへの動作条件の設定は、情報連携機能設定ツールというソフトウェアを使用して「一定周期でデバイスAのデータをデータベースに追加する」、「PLC内のデータがある値になった時だけデータベースに追加する」などの設定を行い、Ethernet経由でデータを書き込みます。
システム構成としては下図のように、データベースサーバーとPLCはEthernetで接続します。
図. 1
MESインターフェースユニットが対応しているOSとデータベースは下記になります
(三菱電機「 MESインターフェースユニットユーザーズマニュアル」より抜粋)
対応OS
対応データベース
このユニットからデータベースに対して下記の3つの処理を行う事ができます。
このユニットの利点は、一言でいうと「簡単な設定でデータベースを操作できる」という点にあります。
今まではPLCから直接データベースを操作できる機能が無かったため、PLCとデータベースの間にはゲートウェイとなる機能が別に必要でした。具体的には下図のようにゲートウェイ用PCを用意して、PLCと通信してデータベースにデータを書き込むアプリケーションを開発する必要がありました。
下図のシステム構成では「PLCから温度データを取得して、データベースに実績を収集する。マスタデータ(※3)をデータベースから取得してPLCに書込する」という事を想定しています。
図. 2
しかしこのユニットを使う事でゲートウェイ用のハードやソフトウェアが必要なくなり、下図のようなシステム構成にできます。
図. 3
このような構成にすることで下記のようなメリットが出てきます。
PLCとデータベースを組み合わせて使う事ができるメリットは大きく、様々な用途を考える事ができます。
このユニットの特徴を踏まえ、「MESとの接続」という目的以外でも、応用しだいでいろいろな用途が考えられます。
たとえば「簡易ロガーとして使用する」などです。
例として下図のようなシステム構成を考えてみます。
図. 4
このシステム構成では「データベース用サーバーにPLCで取り込んだデータを蓄積して、クライアントPCでMicrosoft AccessやExcelなどを使ってデータベース内のデータを帳票にする」という事を想定しています。
データベースに蓄積したデータは人が見やすいデータに加工する必要はありますが、PLCとの通信や、データベースに蓄積などこれまでは専用のアプリケーションが必要でした。
しかし、MESインターフェースユニットを使用することで、PLCとの通信やデータベースへの蓄積をユニットが処理します。
Microsoft AccessやExcelを扱う事ができる人ならば蓄積したデータを有効活用できる環境が整います。
その他の用途としては、生産に必要なマスタデータが大量にある場合、マスタデータをPLC内部に保持するのはデバイス数やメンテナンスなどで現実的ではありません。MESインターフェースユニットを使って必要なときに必要なデータだけを取り込むという様な用途も考えられます。
私は元々パソコン側アプリケーションの開発担当でしたが、最近ではPLC開発も携わるようになった経緯もあってデータベースやC言語を扱うユニットなどは抵抗なく扱う事ができます。
今回の取り上げたシステム構成例(図2)で取り上げた「PLCと通信してデータベースにアクセスする」プログラムを担当した事があります。それが今ではPLCの高機能化によりパソコン側アプリケーションを開発しなくても同じ様な事を行えるようになっています。
これらの高機能ユニットは、今までの制御に関する知識以外を求められる事が多く、扱いも難しくなっていますが、私は「パソコン側アプリケーション開発時に身につけた知識をPLC側のプログラム開発時にも生かせる環境ができてきた」という事を嬉しく思います。
今後もPLCの高機能化は進んで行くと思いますので、お客様の用途に合わせて最適なシステム構成を提案できるように努めていきます。
(S.N.)
関連ページへのリンク
関連するソフテックだより