JP4305740B2 - プログラマブルコントローラシステムおよび接続保証方法 - Google Patents

プログラマブルコントローラシステムおよび接続保証方法 Download PDF

Info

Publication number
JP4305740B2
JP4305740B2 JP2003198119A JP2003198119A JP4305740B2 JP 4305740 B2 JP4305740 B2 JP 4305740B2 JP 2003198119 A JP2003198119 A JP 2003198119A JP 2003198119 A JP2003198119 A JP 2003198119A JP 4305740 B2 JP4305740 B2 JP 4305740B2
Authority
JP
Japan
Prior art keywords
programmable controller
version
plc
version information
support tool
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2003198119A
Other languages
English (en)
Other versions
JP2005038063A (ja
Inventor
健 陣川
政滋 松本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Omron Corp filed Critical Omron Corp
Priority to JP2003198119A priority Critical patent/JP4305740B2/ja
Publication of JP2005038063A publication Critical patent/JP2005038063A/ja
Application granted granted Critical
Publication of JP4305740B2 publication Critical patent/JP4305740B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Programmable Controllers (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、プログラマブルコントローラシステムおよび接続保証方法に関するものである。
【0002】
【従来の技術】
生産工場(製造現場)に設置されるFA(ファクトリーオートメーション)システムの制御をつかさどるPLC(プログラマブルロジックコントローラ)は、入力ユニットで入力した信号をCPUユニットのI/Oメモリに取り込み(INリフレッシュ)、予め登録されたラダー言語で組まれたユーザプログラムに基づき論理演算をし(演算実行)、その演算実行結果をI/Oメモリに書き込んで出力ユニットに送り出し(OUTリフレッシュ)、その後、いわゆる周辺サービス処理を行うことをサイクリックに繰り返し処理するようになる。
【0003】
そして、係るユーザプログラムは、PLCに接続されたサポートツールを介してダウンロードされ、PLC(CPUユニット)のユーザメモリに格納される。また、PLCに格納されているユーザプログラムを修正等する場合には、サポートツールをPLCに接続するとともに、PLCに格納されているユーザプログラムをアップロードし、必要な修正をした後、修正後の新ユーザプログラムをPLCに再度ダウンロードすることが行われる。なお、サポートツールは、パーソナルコンピュータ或いは専用の周辺機器などにより実現される。
【0004】
ところで、PLCは、生産方式の高度化,多様化並び技術の進歩に伴って新規の機能が付加された新機種の開発や仕様の改善、さらには、搭載ソフトウエアの機能強化などの各種のバージョンアップがされる。このバージョンアップは、処理速度の向上,機能追加などが行われるが、基本的に従来機種との互換性を持ち、旧バージョンのPLCの機能は新バージョンのPLCに継承される。したがって、旧バージョンのPLCで使用していたユーザプログラムは、そのまま新バージョンのPLCに実装することが可能となる。
【0005】
また、サポートツールは各PLCに対応するもので、PLCがバージョンアップされると、それに合わせてサポートツールもバージョンアップされる。すなわち、新バージョンのPLCにおいて機能拡張された場合、旧バージョンのサポートツールでは拡張された機能に対応できず、その拡張された機能をサポートするためには、それに対応したサポートツールが必要となる。もちろん、サポートツールも従来のサポートツールの機能を継承するように設計されるので、バージョンアップされたサポートツールは、旧バージョンのPLCに接続し、ユーザプログラムのダウンロードや作成・修正等が行えるようになっている。
【0006】
このように、新バージョンのサポートツールは、新旧いずれのバージョンのPLCとの接続性を保証し、旧バージョンのサポートツールは旧バージョンのPLCとの接続のみ保証する。そして、旧バージョンのサポートツールが新バージョンのPLCに接続して所定のサポート処理(ユーザプログラムの追加・更新等)をすることがないように、サポートツールをPLCに接続した際に、両者間の通信でPLCの機種情報をサポートツールが読み出し、サポートツールは自己が保有する対応可能なPLC機種情報と照合し接続保証できるか否かを判断するようにしている。つまり、PLCとサポートツールをシリアル通信などの通信回線を介して接続し、PLCに対してPLC機種情報を取得する通信コマンドをサポートツールからPLCに発行し、その通信コマンドを受けたPLCは自己のPLC機種情報をレスポンスとして返信する。サポートツールは、自己が接続可能なPLC機種情報の一覧を記憶保持しているため、そのレスポンスを受けたサポートツールは、記憶保持した上記一覧のデータとレスポンスとして取得した現在接続しているPLCのPLC機種情報との照合を図り、接続可能か否かの判断をする。なお、係る機種確認についての技術としては例えば特許文献1に開示されている。
【0007】
【特許文献1】
特開平10−97310号公報
【0008】
【発明が解決しようとする課題】
ところで、新バージョンのPLCは旧バージョンのPLCの機能を継承することから、例えば旧バージョンのユーザプログラムが実装された状態で動作される場合もある。このように、ハード的には新バージョンのPLCであるが実質的に旧バージョンのPLCとして動作している場合であっても、従来の機種情報の確認では、旧バージョンのサポートツールには、新バージョンのPLCのPLC機種情報が保持していないので接続できなかった。
【0009】
そのため、ユーザは、このように機能拡張が行われた新バージョンのPLCを使う場合、実装されたユーザプログラムのバージョンの如何にかかわらず、そのPLCに対応した新バージョンのサポートツールを使用しなければならなかった。つまり、新バージョンのPLCを購入・設置する場合には、それとセットでそれに対応した新バージョンのサポートツールを購入するか、サポートツールのバージョンアップを行う必要があった。
【0010】
しかしながら、PLCがバージョンアップされたとしても、拡張機能を使う必要はなく、旧バージョンのサポートツールで作成された旧バージョンのユーザプログラムでの運用でできれば十分であるとするユーザも少なくない。このようなユーザにとっては、新バージョンのサポートツールは、自己が使用しない機能をサポートするものであり、そのサポートツールに追加された機能はそのユーザにとって不要なものであることから、当該サポートツールを購入したり、サポートツールのバージョンアップをすることは、無駄なコストと手間がかかることになり、抵抗感を有することが多々ある。
【0011】
一方、PLCメーカにとっては、上記した事情に鑑み、新バージョンのPLCを開発した場合でも、旧バージョンのサポートツールで作成された旧バージョンのユーザプログラムで運用できれば十分であるとするユーザのために旧バージョンのPLCも依然として製造・販売するようにしていた。しかし、このように新旧のバージョンのPLCを製造することは、大量生産によるコスト削減効果が期待できず、結果として新バージョン,旧バージョンのいずれのPLCもコスト高となってしまう。
【0012】
この発明は、新バージョンのPLCであっても、旧バージョンのユーザプログラム等を用いて実質的に旧バージョンのPLCとして動作するような場合には、既存の旧バージョンのサポートツールと接続可能にすることができるプログラマブルコントローラシステムおよび接続保証方法を提供することを目的とする。
【0013】
【課題を解決するための手段】
この発明によるプログラマブルコントローラシステムでは、複数のプログラマブルコントローラと、その複数のプログラマブルコントローラのなかのいずれか1台に接続して使用するサポートツールとを含むシシステムにおいて、その複数の各プログラマブルコントローラは、格納されたユーザプログラムの機能性を示すアプリバージョン情報を記憶保持し、前記サポートツールは、接続したプログラマブルコントローラに記憶保持されたアプリバージョン情報を取得する機能と、その取得したアプリバージョン情報に基づいて、前記接続したプログラマブルコントローラが自己が対応できるバージョンか否かを判断する機能を備えて構成した。ここで、「自己が対応できる」とは、サポートツールがプグラマブルコントローラに格納されるユーザプログラムに対するサポート処理(作成,追加,修正等)ができることを意味する(以下同じ)。
【0014】
また、上記の発明を前提とし、前記プログラマブルコントローラは、機器自体の機能性を示すユニットバージョン情報を記憶保持し、前記サポートツールは、前記接続したプログラマブルコントローラに記憶保持されたユニットバージョン情報を取得する機能と、その取得したユニットバージョン情報に基づいて、前記接続したプログラマブルコントローラが自己が対応できるバージョンか否かを判断する機能を備えるようにすることもできる。
【0015】
そして、上記した各発明を前提とし、前記プログラマブルコントローラに記憶保持される前記アプリバージョン情報は、そのプログラマブルコントローラにユーザプログラムが格納されていない場合には、未格納状態を示す値が格納されるようにするとよい。ここで未格納状態は、実施の形態では初期化状態に対応する。
【0016】
さらに、前記アプリバージョン情報並びに前記ユニットバージョン情報は、数値データで構成されてるようにすると良い。このようにすると、バージョンの新旧を容易に判定できる。
【0021】
さらに、本発明に係る接続保証方法は、複数のプログラマブルコントローラと、その複数のプログラマブルコントローラのなかのいずれか1台に接続して使用するサポートツールの接続保証方法であって、その複数の各プログラマブルコントローラには、格納されたユーザプログラムの機能性を示すアプリバージョン情報を記憶保持させる。そして、前記サポートツールは、接続したプログラマブルコントローラに記憶保持されたアプリバージョン情報を取得し、その取得したアプリバージョン情報に基づいて、前記接続したプログラマブルコントローラが自己が対応できるバージョンか否かを判断し、その判断した結果が、対応可能な場合のみ接続を許可して通信を続行するようにした。
【0022】
また、上記の発明を前提とし、前記プログラマブルコントローラには、機器自体の機能性を示すユニットバージョン情報を記憶保持させ前記サポートツールは、前記接続したプログラマブルコントローラに記憶保持されたユニットバージョン情報を取得し、その取得したユニットバージョン情報に基づいて、前記接続したプログラマブルコントローラが自己が対応できるバージョンか否かを判断し、その判断した結果が、対応可能な場合のみ接続を許可するようにすることもできる。
【0023】
さらには、前記サポートツールは、ユーザプログラムとともにそのユーザプログラムの機能性を示すアプリバージョン情報を記憶保持し、その記憶保持する前記アプリバージョン情報で示す機能性の範囲が、前記取得したユニットバージョン情報で示す機能性の範囲以下で、前記接続したプログラマブルコントローラが記憶保持する前記アプリバージョン情報と一致しない場合には、前記接続したプログラマブルコントローラに記憶保持されたアプリバージョン情報が変更されることの許可を受けることを条件に接続を許可するステップを付与すると良い。
【0024】
本発明が対象とするプログラマブルコントローラ(ユニット)や、それ用のサポートツールは、機能性の向上(バージョンアップ)がされるが、新バージョンの製品(プログラマブルコントローラ,サポートツール)は、旧バージョンの製品の機能を継承しており、例えば旧バージョンに従って作成されたユーザプログラムは新バージョンのプログラマブルコントローラに実装することができる。また、同様に新バージョンのサポートツールは、旧バージョンのプログラマブルコントローラに対して接続し、サポート処理をすることができる。
【0025】
係る前提において上記した各発明によれば、プログラマブルコントローラ(ユニット)に格納されたユーザプログラムに機能性を示すアプリバージョンをそのプログラマブルコントローラ(ユニット)に記憶保持させた。これにより、そのアプリバージョンを取得することにより、そのプログラマブルコントローラが、ユニットバージョンにあったユーザプログラムを格納して動作しているのか、旧バージョンのユーザプログラムを格納し実質的に旧バージョンのプログラマブルコントローラにとして動作しているかを容易に判断できる。
【0026】
従って、機器自体の機能性を示すユニットバージョンが、サポートツールが対応できない上位のバージョン(新バージョン)であっても、実際に格納されたユーザプログラムのアプリバージョンが対応可能であれば、その旧バージョンのサポートツールを用いてサポート処理を行うことができる。
【0027】
その結果、ユーザに対しては新バージョンのプログラマブルコントローラの開発に伴い、新バージョンのサポートツールの購入・バージョンアップを強いる必要がなくなり、旧バージョンのユーザプログラムを使用する限り、新バージョンのプログラマブルコントローラを購入し使用しても、旧バージョンのサポートツールを使用し続けることができる。よって、メーカ側も新バージョンのプログラマブルコントローラを開発した場合、比較的早い適当なタイミングで旧バージョンのプログラマブルコントローラを生産中止することが可能となる。
【0028】
【発明の実施の形態】
図1は、本発明の好適な一実施の形態を実現するシステム全体を示している。図1に示すように、パソコンからなるサポートツール10とPLC(CPUユニット22)20が、所定の通信回線30を介して接続されている。この通信回線30は、例えば、RS232Cなどのシリアル回線を用いて直接ケーブル接続することにより実現される。もちろん、このように直接接続するものに限ることはなく、他の通信回線を用いネットワーク経由でPLC20とサポートツール10とを接続する構成を採っても良い。そして、サポートツール10で作成(修正も含む)したユーザプログラムは、通信回線30を介してPLC20にダウンロードされる。
【0029】
PLC20は、複数のユニットから構成される。すなわち、電源供給源の電源ユニット21,PLC全体の制御を統率するCPUユニット22,FAの生産装置や設備装置の適所に取り付けたスイッチやセンサの信号を入力する入力ユニット23,アクチュエータなどに制御出力を出す出力ユニット24,通信ネットワークに接続するための通信ユニット25などの各種のユニットを適宜組み合わせて構成される。そして、本システムにおいてサポートツール10からダウンロードされるユーザプログラムは、CPUユニット22に記憶保持され、そこにおいて実行される。そして、通信回線30を通信ユニット25に接続され、サポートツール10とCPUユニット22は、通信ユニット25を介して通信したり、CPUユニット22にシリアル回線のインタフェースを内蔵させることによりサポートツール10を直接CPUユニット22に連結し、ユーザプログラムのダウンロード等を行うようにしたりできる。
【0030】
サポートツール10は、パソコンから構成され、図2に示すように、ハードウエア構成としてキーボード,ポインティングデバイス等の入力装置11と、ディスプレイ等の表示装置12と、CPU13と、記憶部14を備えている。本発明との関係で言うと、このサポートツール10には、接続可能な複数のPLC機種ごとの機能性の範囲を示すバージョン(アプリバージョンのことでありPLC機種ごとに異なることもある)が設定されており、このバージョン情報(アプリバージョン)は、記憶部14内のユーザファイル(後述する)に格納される。そして、このアプリバージョンは、ユーザが選択して設定する。更に、接続されたPLC20(CPUユニット22)に実装されるユーザプログラムも記憶部14に格納される。
【0031】
一方、CPUユニット22の内部構造は、図3に示すように構成されている。すなわち、システムプログラムは、システムROM22aに格納されており、そのシステムプロクラムは、MPU22bに呼び出され、そのMPU22bにおいて、ワークメモリとしてのシステムRAM22cを適宜使用しながら、プログラムに従った所定の処理を実行する。また、運転時において、ユーザデータの1つであるユーザプログラムは、ユーザメモリ(UM)22dに格納されている。さらに、I/Oデータやパラメータは、IOメモリ22eに格納されている。
【0032】
PLC機種や、機種としてのハード的なバージョン(ユニットバージョン)情報等は、例えばシステムROM22aに格納され、サポートツール10からの呼出要求を受けると、そのレスポンスとしてそれらPLC機種,バージョン情報をサポートツール10に返送するようになっている。
【0033】
つまり、バージョンアップ(機能拡張)したPLC(CPUユニット)を製造した場合、そのバージョンアップした機能を用いたユーザプログラムのバージョン(アプリバージョン)は、ユニットバージョンと同じに設定される。また、そのバージョンアップした機能を用いたユーザプログラムに対して対応可能なサポートツール10には、ユーザプログラムのアプリバージョンと同じアプリバージョンが設定される。これにより、サポートツール10をPLC20に接続した際に通信し、サポートツール10が両者が保有するアプリバージョンが一致するか否かを判断し、一致する場合には対応可能としてそのまま所定のサポート処理をする。なお、PLC機種と称しているが、実際にはCPUユニットの機種名であるため、CPU機種と称することもできる。
【0034】
さらに、本実施の形態では、PLC(CPUユニット)並びにサポートツールに付すバージョン情報は、数値で表し、バージョンアップするごとに数値も大きくする。つまり、数値が大きいほど新しいバージョンであると言えるので、係るバージョンの数値の大小関係を比較することにより、簡単にどちらが新しいバージョンであるかを判別できる。そして、新バージョンのサポートツール10並びにPLC20(CPUユニット22)は、旧バージョンの機能を継承しているため、サポートツール10が取得したPLC(CPUユニット)のバージョンの数値が、自己のバージョンの数値よりも小さい場合には、対応できると判断できる。なお、バージョンの数値は、整数のみ(いわゆる「メジャーバージョン」のみ)でもよいし、小数点等を適宜使用したマイナーバージョンも使用することもある。
【0035】
ここで、本発明では、図4に示すように、CPUユニット22のユーザメモリ22dには、CPUユニット22に格納したユーザプログラムのバージョン(アプリバージョン)を格納し、サポートツール10は、PLC(CPUユニット)の機種バージョンと共にアプリバージョンも取得し、アプリバージョンが自己が対応可能な場合には、接続を継続し所定の処理を行えるようにした。つまり、PLC自体のバージョンは新バージョンの「1.2」であっても、そこに実装したユーザプログラムのアプリバージョンは旧バージョンの「1.1」の機能で作成したものの場合、係るアプリバージョン「1.1」もPLC20(CPUユニット22)に記憶保持させる。
【0036】
そして、サポートツール10をPLC20に接続した際に、PLC20に対してPLC機種情報呼出要求を発行し、それを受けたPLCは、PLC機種と、機器自体のユニットバージョンに加えてアプリバージョンを組にしてレスポンスとして返す。このレスポンスを受けたサポートツール10のバージョンが1.1であるとすると、現在接続しているPLCは、機器自体のバージョン(ユニットバージョン)は1.2であるので従来では対応できなかったが、アプリバージョンが自己が対応可能な1.1であることを認識すると、接続状態を継続し、そのバージョン1.1の機能の範囲内で処理できるようにした。もちろん、係るバージョンの異同並びに大小関係の判定を行うに際し、PLC機種が一致していることは前提である。
【0037】
これにより、その新バージョン(1.2)のPLC20であっても、実質的に旧バージョン(1.1)の機器として動作している場合には、アプリバージョンでそれを認識することにより、旧バージョン対応のサポートツール10であっても接続し、所定のサポート処理(ユーザプログラムのダウンロード,アップロード,作成,修正等)をすることができるようになる。
【0038】
さらにまた、サポートツール10にすでに所定のバージョンで作成したユーザプログラムが格納されており、それをPLC20(CPUユニット22)にダウンロードするような場合には、係るサポートツール10に格納されたユーザプログラムのアプリバージョンと、PLC(CPUユニット)のユニットバージョン並びにアプリバージョンとの大小関係を比較し、以下のように処理する。
(1)サポートツール上のユーザデータ中のユーザプログラムのアプリバージョンが、PLC上のユニットバージョン以下の場合
(a)サポートツール上のユーザデータのアプリバージョンと、PLC上のアプリバージョンが等しい場合には接続を許可
(b)サポートツール上のユーザデータ中のユーザプログラムのアプリバージョンと、PLC上のアプリバージョンが等しくない場合には接続を禁止,或いは、PLC上のアプリバージョンをサポートツール上のアプリバージョンに書き換えた上で接続を許可(その後、ユーザプログラムのダウンロード等をする)
(c)PLCにユーザプログラムが格納されておらず、アプリバージョンが無い(初期化時の値)場合には、PLC上のアプリバージョンをサポートツール上のアプリバージョンに書き換えた上で接続を許可(その後、ユーザプログラムのダウンロード等をする)
(2)サポートツール上のユーザデータ中のユーザプログラムのアプリバージョンが、PLC上のユニットバージョンより大きい場合
サポートツール上のユーザプログラムのアプリバージョンが大きいため、PLCにダウンロードすると誤動作等するおそれがあるので、接続を禁止する。
【0039】
なお、上記した説明では、PLC機種情報呼出要求に対して、PLC機種,ユニットバージョン並びにアプリバージョンを組にしてレスポンスとして返す旨説明したが、本発明はこれに限ることはなく、サポートツール10から1つずつ順に呼出要求を発行し、それを受けたPLC側から1つずつレスポンスを返すように構成するようにしても良いし、更に任意の組み合わせで情報を取得することももちろんできる。
【0040】
そして、係る処理を実行するため、具体的には、図5以降のフローチャートに示す処理を実行する機能をCPU13に実装するように構成した。すなわち、サポートツール10は、主にキーボード・ポインティングデバイス等の入力装置11に対するユーザの操作により各機能のメニューが選択され、その選択されたメニューに従い動作する。そこで、サポートツール全体の処理フローチャートとしては、図5に示すようになる。
【0041】
すなわち、まず、上記したユーザの操作によるイベントを受付ける(ST1)。そして、受け付けたイベントの内容が、「オープンされているユーザファイルのPLC機種、バージョンに基づく接続処理」であるか否か並びに「PLC機種の自動認識による接続処理」であるか否かを判断する(ST2,ST3)。なお、ここでいうユーザファイルとは、ユーザがサポートツール10を操作することで作成したデータファイルであり、本実施の形態では記憶部14に存在する。また、このユーザファイルには本実施の形態で説明しているユーザデータが格納されている。
【0042】
そして、いずれの処理でもない場合には、終了命令か否かを判断し(ST4)、終了命令である場合には、所定の終了処理を実行後終了する(ST5)。このフローチャートでは記載していないが、ユーザ操作によるイベントとしては上記以外の機能を実行するものもあり、係る他の機能のイベントを受け付けた場合には、所定の処理を実行するのはもちろんである。
【0043】
ここで本発明では、受け付けたイベントが「オープンされているユーザファイルのPLC機種、バージョンに基づく接続処理」の場合は、ステップ2の分岐判断がYesとなるので、ステップ6に飛び、当該所定の処理を実行する。つまり、オープンされているサポートツール10のユーザファイル内に格納されたユーザプログラムのアプリバージョンと、現在接続しようとしているPLC(CPUユニット22)のPLC機種およびバージョン情報(ユニットバージョン&アプリバージョン)を取得し、接続可能か否かの判断並びにその判断結果に基づく処理を実行する。具体的には、図6,図7に示すフローチャートを実行するもので、その説明は後述する。
【0044】
そして、ステップ6で規定する処理を実行したならば、ステップ8に進み、ステップ6の処理においてオンライン接続処理が許可されたか否かを判断し、許可されたならばPLCとのオンライン接続のための処理を開始する(ST9)。その後、ステップ10に進み次のユーザ操作によるイベントが入力されるのを待ち、係るイベントが受け付けたならば、受け付けたイベント内容がオフラインへ移行するものか否かを判断し(ST11)、移行しない場合にはステップ10に戻り、移行する場合にはステップ1に戻って次のイベントの受け付けを待つ。
【0045】
つまり、オンライン接続が許可され、オンライン接続された以降は、オンラインの各機能のメニューが選択された場合には、その選択されたメニューに従い動作する(ST10,11を繰り返し実行する)。この状態において、オフラインへ移行することを要求する操作が選択された場合には、オフライン状態へ移行する(ST1に戻る)。また、オンライン接続許可がされなかった場合には、ステップ8の分岐判断はNoとなるので、ステップ4に進み所定の処理を実行する。
【0046】
一方、ステップ1で受け付けたイベントが、「PLC機種の自動認識による接続処理」の場合には、ステップ3の分岐判断がYesとなるので、ステップ7に飛び、当該所定の処理を実行する。つまり、現在接続しようとしているPLC(CPUユニット22)のPLC機種,アプリバージョン情報(アプリバージョン)を取得し、接続可能か否かの判断並びにその判断結果に基づく処理を実行する。具体的には、図8に示すフローチャートを実行するもので、その説明は後述する。
【0047】
そして、ステップ7で規定する処理を実行したならば、ステップ8に進み、ステップ7の処理においてオンライン接続処理が許可されたか否かを判断し、許可されたならばPLCとのオンライン接続のための処理を開始する(ST9)。その後ステップ10に進み、上記したのと同様の処理を行うことになる。また、オンライン接続許可がされなかった場合には、ステップ8の分岐判断はNoとなるので、ステップ4に進み所定の処理を実行する。
【0048】
次に、ステップ6に規定する「オーブンされているユーザファイルのPLC機種,バージョンに基づく接続処理」の具体的な処理について説明する。図6,図7に示すように、まず、PLC20(CPUユニット22)に対し、PLC機種(CPU機種)を問い合わせる通信コマンドを発行する(ST21)。この通信コマンドのレスポンスとして、PLC(CPUユニット)からはPLC機種(CPU機種)が送られてくるので、係るレスポンスを受信したならば、サポートツール10側のユーザファイル上のPLC機種と、接続されたPLC側のPLC機種が一致するか否かを判断する(ST22)。そして、一致しない場合には、このサポートツール10では現在接続しているPLC20(CPUユニット22)に対応しておらず、処理ができないので、サポートツール10の表示装置12に対して警告メッセージを出力表示し(ST33)、処理を終了する。そして、警告メッセージの一例としては、「接続しているPLC(CPUユニット)のPLC機種とユーザファイルのPLC機種が一致しないため接続できません。ユーザファイルの機種を合わせてください」等がある。
【0049】
一方、両者のPLC機種(CPU機種)が一致した場合には、PLC20(CPUユニット22)に、ユニットバージョンを問い合わせる通信コマンドを発行する(ST24)。すると、この通信コマンドのレスポンスとして、PLC(CPUユニット)からはユニットバージョンが送られてくるので、係るレスポンスを受信したならば、取得したユニットバージョンと、サポートツール10側のユーザファイル上のアプリバージョンを比較し、アプリバージョンがユニットバージョン以下か否かを判断する(ST25)。
【0050】
そして、アプリバージョンの方がユニットバージョンよりも大きい場合には、PLCにユーザプログラムをダウンロードすることができないので、警告メッセージを出力し、接続を禁止して処理を終了する(ST26)。そして、警告メッセージの一例としては、「接続しているPLC(CPUユニット)のバージョンがユーザファイルのバージョンよりも小さいため接続できません。ユーザファイルのバージョンを合わせてください」等がある。
【0051】
一方、ユーザファイルのアプリバージョンがPLCのユニットバージョン以下の場合には、ステップ25の分岐判断でYesとなるので、次にユーザファイル上のアプリバージョンと、PLC(CPUユニット)のアプリバージョンが一致しているか否かを判断する(ST27)。そして、一致している場合には、対応できているので、ステップ33に飛び、PLC(CPUユニット)との接続を許可して処理を終了する(ST33)。
【0052】
そして、このように処理を実行した結果、「PLCとの接続を許可する」と判断された場合は、サポートツール全体のフローチャートに処理が戻る際、「PLCとの接続を許可する」という状態がサポートツール全体のフローチャートで参照できるようにしておく。
【0053】
また、ユーザファイル上のアプリバージョンと、PLC(CPUユニット)のアプリバージョンが一致していない場合には、ステップ27の分岐判断がNoとなるので、ステップ28に飛び、PLC(CPUユニット)のアプリバージョンがPLC初期化状態、つまり、未使用でユーザプログラムの未登録状態か否かを判断する。そして、初期化状態の場合には、サポートツール10のユーザプロ具無をPLC側にダウンロードできるので、ステップ31に飛び、PLC(CPUユニット)に格納されているユーザデータ中のユーザプムグラムをクリアする通信コマンドを発行し、続いてユーザファイル上のアプリバージョンをPLC(CPUユニット)に書き込む通信コマンドを発行する(ST32)。これにより、PLC側のアプリバージョンは、サポートツール10にオープンされているユーザファイルのユーザバージョンにセットされる。その後、ステップ33に進み、PLCとの接続が許可される。
【0054】
一方、ステップ28の分岐判断でNo、つまり、初期化状態でもない場合には、サポートツール10が接続しているPLCに対応可能であるが、そのまま処理を続行すると現在PLC側にセットされているアプリバージョンが変更されてしまうので、その旨ユーザに警告をし、更新することの許可を受けるようにしている。そのため、まず、ステップ29に進み、所定の更新確認メッセージを表示する。そして、この更新確認メッセージは、例えば、「接続しているPLC(CPUユニット)のアプリバージョンがユーザファイルのバージョンよりと一致しないため接続できません。ユーザファイルのバージョンをCPUユニットに書き込みますか?その場合、PLC(CPUユニット)のメモリクリアを行います。」等である。
【0055】
そして、係るメッセージの後、ユーザからの選択指示を待ち、「アプリバージョンを強制的に書き換える」が選択されたか否かを判断する。そして、選択された場合には、ステップ31に進み上記した処理を実行する。また、選択されない場合には、接続が禁止され、そのまま処理を終了する。
【0056】
次に、ステップ7の「PLC機種の自動認識による接続処理」の具体的な処理について説明する。図8に示すように、まず、PLC(CPUユニット)にPLC機種を問い合わせる通信コマンドを発行する(ST41)。この通信コマンドのレスポンスとしてPLC側から返送されてくるPLC機種情報を取得するので、係る取得した機種情報は自己のサポートツールが対応しているか否かを判断する。つまり、接続しようとしているPLC機種はこのサポートソフトでサポートしているかどうかをチェックする(ST42)。
【0057】
そして、この分岐判断の結果がYesの場合は、PLC(CPUユニット)にアプリバージョンを問い合わせる通信コマンドを発行する(ST43)。この通信コマンドに対するレスポンスとして、PLCの現在のアプリバージョンが返送されてくるので、サポートツール10は、このレスポンスを受信することにより取得した接続しようとするPLCのアプリバージョンが、このサポートソフトでサポートしているかどうかをチェックする(ST44)。
【0058】
そして、サポートしていない場合には、接続を禁止し処理を終了する。また、サポートしている場合には、ステップ44の分岐判断がYesとなるので、PLC(CPUユニット)から読み出してきたPLC機種・アプリバージョンのユーザファイルをサポートツールが自動生成する(ST45)。その後、「PLCとの接続を許可する」という状態にする(ST46)。そして、このように処理を実行した結果、「PLCとの接続を許可する」と判断された場合は、サポートツール全体のフローチャートに処理が戻る際、「PLCとの接続を許可する」という状態がサポートツール全体のフローチャートで参照できるようにしておく。例えば、PLCとの接続を許可する状態をあらわすフラグを設け、ステップ33やステップ46でそのフラグをセットし、ステップ8では、そのフラグがセットされているかどうかでオンライン接続処理が許可されているかどうかを判断する。
【0059】
なお、上記した実施の形態では、ユーザプログラムを格納するCPUユニットを適用対象としたが、本発明はこれに限ることはなく、高機能ユニットその他のPLC用のユニットにも適用できる。
【0060】
なおまた、アプリバージョンで管理される典型的なものとして、ユーザプログラムがあるため、上記した実施の形態では、ユーザプログラムに対するアプリバージョンのチェックをするようにしたが、アプリバージョンで管理するものとして、ユーザプログラム以外にも、パラメータ(CPUユニットの基本仕様をユーザがソフト的に定義可能とするデータやネットワーク間でデータの送受信を行なう場合の通信経路に関するデータなど)がある。したがってかかるパラメータ等もチェック・管理対象としても良い。そして、ユーザデータには、係るパラメータも含まれる。
【0061】
【発明の効果】
以上のように、この発明では、プログラマブルコントローラ(ユニット)に、アプリバージョンを記憶保持させ、少なくともアプリバージョンに基づいてサポートツールが対応可能か否かを判断するようにしたため、新バージョンのプログラマブルコントローラであっても、旧バージョンのユーザプログラム等を用いて実質的に旧バージョンのプログラマブルコントローラとして動作するような場合には、既存の旧バージョンのサポートツールを用いて接続可能となる。
【図面の簡単な説明】
【図1】本発明のシステムの一実施の形態を示す図である。
【図2】サポートツールの内部構成を示す図である。
【図3】CPUユニットの内部構成を示す図である。
【図4】本実施の形態の概要を説明する図である。
【図5】サポートツールの機能を示すフローチャートである。
【図6】オープンされているユーザファイルのPLC機種、バージョンに基づく接続処理の具体的なアルゴリズムの一例を示すフローチャートの一部である。
【図7】オープンされているユーザファイルのPLC機種、バージョンに基づく接続処理の具体的なアルゴリズムの一例を示すフローチャートの一部である。
【図8】PLC機種の自動認識による接続処理の具体的なアルゴリズムの一例を示すフローチャートの一部である。
【符号の説明】
10 サポートツール
11 入力装置
12 表示装置
13 CPU
14 記憶部
20 PLC
21 電源ユニット
22 CPUユニット
22a システムROM
22b MPU
22c RAM
22d ユーザメモリ
22e IOメモリ
23 入力ユニット
24 出力ユニット
25 通信ユニット
30 通信回線

Claims (7)

  1. 複数のプログラマブルコントローラと、その複数のプログラマブルコントローラのなかのいずれか1台に接続して使用するサポートツールとを含むシステムにおいて、
    その複数の各プログラマブルコントローラは、格納されたユーザプログラムの機能性を示すアプリバージョン情報を記憶保持し、
    前記サポートツールは、接続したプログラマブルコントローラに記憶保持されたアプリバージョン情報を取得する機能と、その取得したアプリバージョン情報に基づいて、前記接続したプログラマブルコントローラが自己が対応できるバージョンか否かを判断する機能を備えたことを特徴とするプログラマブルコントローラシステム。
  2. 前記プログラマブルコントローラは、機器自体の機能性を示すユニットバージョン情報を記憶保持し、
    前記サポートツールは、前記接続したプログラマブルコントローラに記憶保持されたユニットバージョン情報を取得する機能と、その取得したユニットバージョン情報に基づいて、前記接続したプログラマブルコントローラが自己が対応できるバージョンか否かを判断する機能を備えたことを特徴とする請求項1に記載のプログラマブルコントローラシステム。
  3. 前記プログラマブルコントローラに記憶保持される前記アプリバージョン情報は、そのプログラマブルコントローラにユーザプログラムが格納されていない場合には、未格納状態を示す値が格納されることを特徴とする請求項1または2に記載のプログラマブルコントローラシステム。
  4. 前記アプリバージョン情報並びに前記ユニットバージョン情報は、数値データで構成されていることを特徴とする請求項1〜3のいずれか1項に記載のプログラマブルコントローラシステム。
  5. 複数のプログラマブルコントローラと、その複数のプログラマブルコントローラのなかのいずれか1台に接続して使用するサポートツールの接続保証方法であって、
    その複数の各プログラマブルコントローラには、格納されたユーザプログラムの機能性を示すアプリバージョン情報を記憶保持させ、
    前記サポートツールは、接続したプログラマブルコントローラに記憶保持されたアプリバージョン情報を取得し、
    その取得したアプリバージョン情報に基づいて、前記接続したプログラマブルコントローラが自己が対応できるバージョンか否かを判断し、
    その判断した結果が、対応可能な場合のみ接続を許可して通信を続行することを特徴とする接続保証方法。
  6. 前記プログラマブルコントローラには、機器自体の機能性を示すユニットバージョン情報を記憶保持させ、
    前記サポートツールは、前記接続したプログラマブルコントローラに記憶保持されたユニットバージョン情報を取得し、
    その取得したユニットバージョン情報に基づいて、前記接続したプログラマブルコントローラが自己が対応できるバージョンか否かを判断し、
    その判断した結果が、対応可能な場合のみ接続を許可することを特徴とする請求項5に記載の接続保証方法。
  7. 前記サポートツールは、ユーザプログラムとともにそのユーザプログラムの機能性を示すアプリバージョン情報を記憶保持し、その記憶保持する前記アプリバージョン情報で示す機能性の範囲が、前記取得したユニットバージョン情報で示す機能性の範囲以下で、前記接続したプログラマブルコントローラが記憶保持する前記アプリバージョン情報が一致しない場合には、前記接続したプログラマブルコントローラに記憶保持されたアプリバージョン情報が変更されることの許可を受けることを条件に接続を許可することを特徴とする請求項6に記載の接続保証方法。
JP2003198119A 2003-07-16 2003-07-16 プログラマブルコントローラシステムおよび接続保証方法 Expired - Lifetime JP4305740B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003198119A JP4305740B2 (ja) 2003-07-16 2003-07-16 プログラマブルコントローラシステムおよび接続保証方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003198119A JP4305740B2 (ja) 2003-07-16 2003-07-16 プログラマブルコントローラシステムおよび接続保証方法

Publications (2)

Publication Number Publication Date
JP2005038063A JP2005038063A (ja) 2005-02-10
JP4305740B2 true JP4305740B2 (ja) 2009-07-29

Family

ID=34207998

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003198119A Expired - Lifetime JP4305740B2 (ja) 2003-07-16 2003-07-16 プログラマブルコントローラシステムおよび接続保証方法

Country Status (1)

Country Link
JP (1) JP4305740B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103124938A (zh) * 2010-09-29 2013-05-29 三菱电机株式会社 对可编程逻辑控制器的执行环境进行升级的方法、系统及程序

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007133735A (ja) * 2005-11-11 2007-05-31 Mitsubishi Electric Engineering Co Ltd プログラマブルコントローラのメンテナンス用信号変換機
JP5141095B2 (ja) * 2007-05-23 2013-02-13 東芝三菱電機産業システム株式会社 プラントコントローラシステム
JP5025562B2 (ja) * 2008-05-26 2012-09-12 三菱電機株式会社 プログラマブルコントローラシステム
JP2013190837A (ja) * 2012-03-12 2013-09-26 Mitsubishi Electric Corp エンジニアリングツール
US10185308B2 (en) * 2012-04-30 2019-01-22 Fisher Controls International Llc Methods and systems to provide update information of a device description of a field instrument
CN105408827B (zh) * 2014-06-02 2017-07-07 三菱电机株式会社 可编程控制器系统、可编程控制器、程序显示装置、程序的显示方法
CN107861455A (zh) * 2017-10-17 2018-03-30 福州耐特电子科技有限公司 一种可编程控制器的可视化管理系统及方法
JP7036064B2 (ja) 2019-03-06 2022-03-15 オムロン株式会社 制御装置およびソフトウェアのデプロイ方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103124938A (zh) * 2010-09-29 2013-05-29 三菱电机株式会社 对可编程逻辑控制器的执行环境进行升级的方法、系统及程序
CN103124938B (zh) * 2010-09-29 2015-05-13 三菱电机株式会社 对可编程逻辑控制器的执行环境进行升级的方法及系统

Also Published As

Publication number Publication date
JP2005038063A (ja) 2005-02-10

Similar Documents

Publication Publication Date Title
JP3925557B2 (ja) パラメータ設定装置
US7110837B2 (en) Control system and method for on-line editing of user program
JP4305740B2 (ja) プログラマブルコントローラシステムおよび接続保証方法
JP2000270384A (ja) センサ及びコントローラ並びにセンサシステム
JP2004005389A (ja) ユニット及びplc並びにユーザプログラムの処理方法
JP3915808B2 (ja) プログラマブルコントローラおよびプログラマブルコントローラシステムならびにcpuユニット
JP4462443B2 (ja) パラメータ設定装置
CN114237676B (zh) 一种fpga逻辑更新方法、装置、设备及可读存储介质
JP2006293544A (ja) 数値制御システム
JPH11509348A (ja) プログラマブル論理制御装置
JP3791231B2 (ja) センサ及びセンサシステム
CN111628918B (zh) 一种车载通信系统的控制方法、装置及车辆
JP2002268730A (ja) フィールドデバイスのメンテナンス装置
CN111052010B (zh) 控制系统、开发辅助装置和存储介质
CN100375959C (zh) 可自动更新嵌入式系统的系统软件的装置及方法
CN1987784A (zh) 数字装置通过计算机系统进行主动式软件更新的方法
JP2006260607A (ja) プログラマブルコントローラおよびcpuユニットおよび二重化運転開始方法
JP2004164605A (ja) センサ
JPH11212607A (ja) ダウンロードシステム及びダウンロードプログラムを記録したコンピュータ読み取り可能な記録媒体
JP3659399B2 (ja) プログラマブルロジックコントローラ
JP3356530B2 (ja) 表示制御装置用のデータ作成支援装置
JP3308920B2 (ja) 情報処理装置
WO2022190428A1 (ja) 開発支援装置、開発支援方法、及び、開発支援プログラム
JP3781112B2 (ja) プログラマブルコントローラ・システム
CN111459526A (zh) 一种基于can通讯的单片机在线升级方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060202

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080827

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080902

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081104

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090216

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090224

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090409

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090422

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4305740

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130515

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140515

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term