HOME会社概況業務内容開発分野開発事例CANモジュールソフテックだよりお問い合わせ
HOME > ソフテックだより > 第43号(2007年6月6日発行) 技術レポート「PLCの高機能化−PLCとデータベースの接続−」

「ソフテックだより」では、ソフトウェア開発に関する情報や開発現場における社員の取り組みなどを定期的にお知らせしています。
さまざまなテーマを取り上げていますので、他のソフテックだよりも、ぜひご覧下さい。

ソフテックだより(発行日順)のページへ
ソフテックだより(技術分野別)のページへ
ソフテックだより(シーン別)のページへ


ソフテックだより 第43号(2007年6月6日発行)

技術レポート

「PLCの高機能化−PLCとデータベースの接続−」

1.はじめに

最近のPLC(※1)機器は、高機能・高性能化しており様々な情報を扱えるようになっています。情報化の流れの中で、今ではPLCでC言語を扱えるユニット(横河電機のe-RT3や三菱電機のC言語コントローラーなど)も発売されており、パソコンで行っていた事がPLCで直接扱えるようになってきました。

そのため、これまでのラダー制御の知識だけでは、e-RT3やC言語コントローラーなどを扱うのは難しくなってきています。

今回は、このようなユニットの中から三菱電機の「MESインターフェースユニット(QJ71MES96)」について取り上げます。

「MESインターフェースユニット」という名前から、どのような機能を持っているのか想像することは難しいですが、簡単に説明するとPLCからデータベースを操作する為のユニットになります。

「MES」という名称が付いているのは、製造実行システム(Manufacturing Execution System)側のデータベースとのやり取りする事を目的に開発された所から来ています。

2.MESインターフェースユニットの機能概要、システム構成

MESインターフェースユニットから接続するデータベースは、Windows上で動作している必要があります。このWindowsにMESインターフェースユニット用のDB接続サービスをインストールすることで、PLCからODBC(※2)経由の接続ができるようになります。

MESユニットへの動作条件の設定は、情報連携機能設定ツールというソフトウェアを使用して「一定周期でデバイスAのデータをデータベースに追加する」、「PLC内のデータがある値になった時だけデータベースに追加する」などの設定を行い、Ethernet経由でデータを書き込みます。

システム構成としては下図のように、データベースサーバーとPLCはEthernetで接続します。

データベースとMESインターフェースユニットをEthernetで接続した図です。
図. 1

MESインターフェースユニットが対応しているOSとデータベースは下記になります
(三菱電機「 MESインターフェースユニットユーザーズマニュアル」より抜粋)

対応OS

  1. Microsoft Windows 2000 Professional
  2. Microsoft Windows XP Professional
  3. Microsoft Windows 2000 Server
  4. Microsoft Windows Server 2003

対応データベース

  1. Oracle 8i
  2. Oracle 9i
  3. Oracle 10g
  4. Microsoft SQL Server 2000
  5. Microsoft SQL Server 2005
  6. Microsoft SQL Server 2000 Desktop Engine
  7. Microsoft Access 2000
  8. Microsoft Access 2003
  9. Wonderware Industrial SQL Server 9.0

このユニットからデータベースに対して下記の3つの処理を行う事ができます。

  1. Insert(データの追加)
  2. Update(データの更新)
  3. Select(データの抽出)
制限事項
Update命令では1件ごとの更新、Select命令では1レコードごとの取得という制限があります。
3.MESインターフェースユニットの利点

このユニットの利点は、一言でいうと「簡単な設定でデータベースを操作できる」という点にあります。

今まではPLCから直接データベースを操作できる機能が無かったため、PLCとデータベースの間にはゲートウェイとなる機能が別に必要でした。具体的には下図のようにゲートウェイ用PCを用意して、PLCと通信してデータベースにデータを書き込むアプリケーションを開発する必要がありました。

下図のシステム構成では「PLCから温度データを取得して、データベースに実績を収集する。マスタデータ(※3)をデータベースから取得してPLCに書込する」という事を想定しています。

ゲートウェイ用PCのアプリケーションでデータベースとPLC(Ethernetユニット経由)にアクセスします。
図. 2

しかしこのユニットを使う事でゲートウェイ用のハードやソフトウェアが必要なくなり、下図のようなシステム構成にできます。

データベースサーバーにDB接続サービスをインストールし、MESインターフェースユニットから直接データベースとやりとりします。
図. 3

このような構成にすることで下記のようなメリットが出てきます。

  1. システム構成を単純にすることが可能(信頼性の向上)
  2. ゲートウェイ機能を開発もしくは購入する必要が無い(費用削減)
  3. ゲートウェイ機能側でPLCのデータを常時監視する必要がなくなるため、システム構成によってはシステム全体の負荷を下げる事も可能(性能向上)

PLCとデータベースを組み合わせて使う事ができるメリットは大きく、様々な用途を考える事ができます。

4.MESインターフェースユニットをどのように使うか?

このユニットの特徴を踏まえ、「MESとの接続」という目的以外でも、応用しだいでいろいろな用途が考えられます。

たとえば「簡易ロガーとして使用する」などです。
例として下図のようなシステム構成を考えてみます。

PLCのデータを直接データベースに蓄積し、クライアントPCで蓄積したデータを帳票に変換します。
図. 4

このシステム構成では「データベース用サーバーにPLCで取り込んだデータを蓄積して、クライアントPCでMicrosoft AccessやExcelなどを使ってデータベース内のデータを帳票にする」という事を想定しています。

データベースに蓄積したデータは人が見やすいデータに加工する必要はありますが、PLCとの通信や、データベースに蓄積などこれまでは専用のアプリケーションが必要でした。
しかし、MESインターフェースユニットを使用することで、PLCとの通信やデータベースへの蓄積をユニットが処理します。
Microsoft AccessやExcelを扱う事ができる人ならば蓄積したデータを有効活用できる環境が整います。

その他の用途としては、生産に必要なマスタデータが大量にある場合、マスタデータをPLC内部に保持するのはデバイス数やメンテナンスなどで現実的ではありません。MESインターフェースユニットを使って必要なときに必要なデータだけを取り込むという様な用途も考えられます。

5.まとめ

私は元々パソコン側アプリケーションの開発担当でしたが、最近ではPLC開発も携わるようになった経緯もあってデータベースやC言語を扱うユニットなどは抵抗なく扱う事ができます。

今回の取り上げたシステム構成例(図2)で取り上げた「PLCと通信してデータベースにアクセスする」プログラムを担当した事があります。それが今ではPLCの高機能化によりパソコン側アプリケーションを開発しなくても同じ様な事を行えるようになっています。

これらの高機能ユニットは、今までの制御に関する知識以外を求められる事が多く、扱いも難しくなっていますが、私は「パソコン側アプリケーション開発時に身につけた知識をPLC側のプログラム開発時にも生かせる環境ができてきた」という事を嬉しく思います。

今後もPLCの高機能化は進んで行くと思いますので、お客様の用途に合わせて最適なシステム構成を提案できるように努めていきます。

(S.N.)

[注釈]
※1
PLC(Programmable Logic Controller):
生産設備の自動化に最も多く利用されている機械制御用途に特化したコンピュータ。(シーケンサとも呼ばれます)
※2
ODBC(Open DataBase Connectivity):
Microsoft社が提唱したデータベースにアクセスするための標準仕様で、Microsoft SQL ServerやOracleといったデータベースの違いはこのODBCによって吸収されます。
※3
マスターデータ:
今回は製品製造時に扱う設定値などのデータ類の事をマスターデータとしています。またこのようなデータはデータベースで管理することが多く、データ量が多いのが特徴です。

関連ページへのリンク

関連するソフテックだより