JP3550677B2 - パーソナルコンピュータ、およびパーソナルコンピュータの通信方法 - Google Patents
パーソナルコンピュータ、およびパーソナルコンピュータの通信方法 Download PDFInfo
- Publication number
- JP3550677B2 JP3550677B2 JP03966499A JP3966499A JP3550677B2 JP 3550677 B2 JP3550677 B2 JP 3550677B2 JP 03966499 A JP03966499 A JP 03966499A JP 3966499 A JP3966499 A JP 3966499A JP 3550677 B2 JP3550677 B2 JP 3550677B2
- Authority
- JP
- Japan
- Prior art keywords
- message
- command
- tool
- personal computer
- command message
- 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
Links
Images
Landscapes
- Control By Computers (AREA)
- Programmable Controllers (AREA)
Description
【発明の属する技術分野】
この発明は、複数のプログラマブルコントローラと、パーソナルコンピュータとで構築されたプログラマブルコントローラシステムに関する。
【0002】
【従来の技術】
近年、センサ,アクチュエータ等を制御するプログラマブルコントローラは、例えば図14に示すように、CPUユニット50と、システムバス90を介してCPUユニット50と接続するNCユニット等からなる高機能I/Oユニット60および他の通信ユニットとデータを送受信する通信ユニット70とから構成されている。
【0003】
CPUユニット50は、ラック上に有する高機能I/Oユニット60および通信ユニット70を制御するようになっているとともに、ツールケーブル100を介してデータを設定させるツール(アプリケーションソフトウェア)1,高機能I/Oユニット60でモニタリングを実行させるツール2(アプリケーションソフトウェア)を稼働させるパーソナルコンピュータ80と接続するようになっている。
【0004】
高機能I/Oユニット60は、特殊な制御、例えばNC制御,PID制御等を実施するものである。
【0005】
通信ユニット70は、他のノードとなる別のCPUユニット50または高機能I/Oユニット60とデータを送受信するようになっている。
【0006】
【発明が解決しようとする課題】
上述した従来のプログラマブルコントローラでは、CPUユニット50に接続するパーソナルコンピュータ80が、CPUユニット50にデータを設定するツール1または高機能I/Oユニット60でモニタリングを実行させるツール2(アプリケーションソフトウェア)を稼働させるものであるが、パーソナルコンピュータ80上で複数のアプリケーションを同時にCPUユニット50と通信させることができないため、仮にツール1が稼働しているときにツール2を稼働させたい場合には、一旦、ツール1の稼働を停止したうえで、ツール2を稼働させなければならず、作業効率が悪いという問題点があった。
【0007】
なお、図15に示すように、高機能ユニット60にパーソナルコンピュータ90をさらに接続し、高機能I/Oユニット60でモニタリングを実行させるツール2を実行さると、上述した問題点が解決されるが、パーソナルコンピュータが余分に必要となり、装置コストが高くなるという問題点があった。
【0008】
そこで、この発明は上述した問題点に鑑み、所定のツールを稼働させるに際し、作業効率を向上させるとともに、装置コストを抑えるプログラマブルコントローラシステムを提供することを目的とする。
【0009】
【課題を解決するための手段】
上述の目的を達成するために、この発明において、パーソナルコンピュータは、ツールからプログラマブルコントローラに対して送信すべ旨の指示を受けると、形成したコマンドメッセージを送信バッファに格納し、また、プログラマブルコントローラに送信したコマンドメッセージに対するレスポンスメッセージを受信バッファに格納するように構成したため、コマンドメッセージに対するレスポンスメッセージを受信しなくても、ツールの指示に基づきコマンドメッセージを送信することができる。
【0010】
また、この発明では、プログラマブルコントローラが、パーソナルコンピュータから受信したコマンドメッセージから送信先を読み取り、読み取った送信先が自己宛ての場合には、そのコマンドメッセージに基づいた処理を実行し、その後、コマンドメッセージに対するレスポンスメッセージをパーソナルコンピュータに送信する。
【0011】
一方、プログラマブルコントローラは、読み取った送信先が第2のプログラマブルコントローラの場合には、コマンドメッセージを第2のプログラマブルコントローラに送信し、この第2のプログラマブルコントローラからのレスポンスメッセージを受信すると、受信したレスポンスメッセージをパーソナルコンピュータに送信する。
【0012】
【発明の実施の形態】
以下、この発明に係るプログラマブルロジックコントローラシステムを図面を参照して説明する。
【0013】
図1はこの発明に係るプログラマブルロジックコントローラシステムの一実施形態を示すブロック図である。
【0014】
この実施形態のプログラマブルロジックコントローラシステム(以下、PLCシステムという)は、センサ,アクチュエータ等の制御対象機器を制御する第1のプログラマブルコントローラ(以下、第1のPLCという、)1および第2のプログラマブルコントローラ(以下、第2のPLCという)1aと、後述するツールを稼働するパーソナルコンピュータ(以下、パソコンという)2とから構成されている。
【0015】
第1のPLC1は、CPUユニット11と、高機能ユニット12と、通信ユニット13とを備えており、これらがデータバス,アドレスバス等からなるシステムバス14と接続された構成になっている。
【0016】
CPUユニット11は、ラック上に有する高機能I/Oユニット12および通信ユニット13を制御するとともに、ツールケーブル3を介してパソコン2と接続されており、パソコン2から受信したツールの所定処理を実行するようになっている。
【0017】
このCPUユニット11は、CPUユニット11自身を制御するマイクロコンピュータ(マイコン)111と、マイクロコンピュータ111がシステムバス14を介して各ユニット12,13にアクセスするためのインタフェースを行うマイコンバスASIC112と、ツールからの受信データ(以下、コマンドメッセージという)を複数格納するとともにツールに対して送信する送信データ(レスポンスメッセージという)を格納するメモリ113と、通信処理を行う通信処理プログラムを格納する通信処理プログラムメモリ114とを有するような構成になっている。
【0018】
通信処理プログラムは、図2に示すように、パーソナルコンピュータ2から受信したコマンドメッセージを受信するコマンド受信手段114aと、コマンドメッセージに対するレスポンスメッセージを形成するレスポンス形成手段114bと、レスポンス形成手段114bで形成したレスポンスメッセージをパーソナルコンピュータ2に送信するレスポンス送信手段114cと、コマンド受信手段114aが受信したコマンドメッセージから送信先を読み取る送信先読取り手段114dと、送信先読取り手段114dで読み取られた送信手段の宛先を判断し、宛先を第2のPLC1aであると判断した場合には、通信ユニット13にコマンドメッセージを転送し、一方、宛先が自己であるであると判断した場合には、レスポンス形成手段114bにコマンドメッセージに対するレスポンスメッセージを形成させる指示を出力する宛先判断手段114eとを有している。
【0019】
高機能I/Oユニット12は、特殊な制御を行うためのユニット、例えばNCユニット等であり、高機能I/Oユニット自身を制御するマイクロコンピュータ(マイコン)121と、システムバス14とこのユニットのインタフェースを行うバスASIC122と、CPUユニット11から送信されてきたコマンドおよびCPUユニット11に対して送信するレスポンスを格納するメモリ123とを有するような構成になっている。
【0020】
通信ユニット13は、CPUユニット11から受信したコマンドメッセージを、接続している他のノードに有する通信ユニットに送信するとともに、それに対するレスポンス等を受信し、これをCPUユニット11に送信するようになっており、通信ユニット自身を制御するマイクロコンピュータ(マイコン)131と、システムバス14とこのユニットのインタフェースを行うバスASIC132と、CPUユニット11から送信されてきたコマンド等およびCPUユニット11に対して送信するレスポンスメッセージ格納するメモリ133とを有する構成になっている。
【0021】
パーソナルコンピュータ2は、表示画面上に複数のウィンドウを表示できるものであって、このウィンドウを使用して複数のツール21(アプリケーションソフトウェア)(図面上では#1のツール21および#2のツール21)を実行するようになっている。
【0022】
このパーソナルコンピュータ2は、図3に示すように、#1〜#nのツール21と、OS(Operating System) 22と、#1〜#mの通信ドライバ23と、各通信ドライバ23ごとに有する送信バッファ24および受信バッファ25と、各通信ドライバ23ごとに有する通信ポート26と、後述する送信用ツール対応テーブル27と、後述する受信用ツール対応テーブル28とから構成されている。
【0023】
#1〜#nのツール21は、CPUユニット11に所定のデータ値を設定させるもの、高機能I/Oユニット12が制御している制御対象機器のモニタリングを行わせるものがある。
【0024】
OS22は、市販のパーソナルコンピュータにおいて使用されているOS、例えばウィンドウ95/NT等であって、複数のタスク(ソフトウェア)の実行をタイムシェアリングすることで、あたかも同時にタスクが実行されているかのようになっている。
【0025】
#1〜#mの通信ドライバ23は、#iのツール21の指示に基づき、コマンドメッセージを所定のノードに送信する際に、プロトコルに従ったフレーム構成を有するコマンドメッセージを形成し、この形成したコマンドメッセージを送信バッファ24に送信するようになっている。
【0026】
また、#1〜#mの通信ドライバ23は、#jのツール21宛てのレスポンスメッセージを受信バッファ25から受けると、受けたレスポンスメッセージからメッセージデータを形成し、これを#jのツール21に出力するようになっている。
【0027】
なお、#1〜#mの通信ドライバ23がコマンドメッセージを形成する処理および受けたレスポンスメッセージからメッセージデータを形成する処理を、後に詳細に説明する。
【0028】
送信バッファ24は、通信ドライバ23が形成した通信プロトコルに適合したフレームからなるコマンドメッセージを送信するまで一時格納するものである。
【0029】
受信バッファ25は、他のノードから受信したレスポンスメッセージを一時格納するものである。
【0030】
#1〜#mの通信ポート26は、通信ドライバ23と対になっており、パーソナルコンピュータが一般的に保有している外部機器と接続するためのI/F、または、パーソナルコンピュータに拡張ボードを組み込み、拡張された外部機器と接続するI/FからなるシリアルI/F(RS232C等)を有している。
【0031】
送信用ツール対応テーブル27は、図4(a)に示すように、コマンドメッセージを送信したとき、そのコマンドメッセージを送信させるツール21と、このツール21の指示に基づき通信ドライバ23が形成したコマンドメッセージを識別する値であるシーケンシャルIDとを有する送信用ツール対応データを格納するものである。
【0032】
シーケンシャルIDは、各ツール21毎に取り得る値の範囲、例えば10の範囲に決められている。このことは、通信ドライバ23が形成したコマンドメッセージを送信できない場合に、同じコマンドメッセージを形成して送信することができるリトライ回数が規定されていることになる。
【0033】
因みに、Aの印の送信用ツール対応データは、通信ドライバ23で形成されたコマンドメッセージが、#2のツールからの指示に基づくものであり、リトライ回数が0であることを示している。
【0034】
受信用ツール対応テーブル28は、図4(b)に示すように、レスポンスメッセージを受信したとき、この受信したレスポンスメッセージを出力する先のツール21と、この受信したレスポンスメッセージを特定するメッセージIDとを有する受信用ツール対応データを格納するものである。
【0035】
因みに、Bの印の受信用ツール対応データは、通信ドライバ23で受信したレスポンスメッセージの宛先が#4のツール21のものであり、かつ、このレスポンスメッセージを受信するまでのリトライ回数が3であることを示している。
【0036】
ここで、コマンドメッセージおよびレスポンスメッセージのフレーム構成を説明する。
【0037】
図5はコマンドメッセージおよびレスポンスメッセージのフレーム構成を示すフレーム構成図である。
【0038】
コマンドメッセージは、図5(a)に示すように、メッセージの種別を指定するコマンドヘッダ1A,送信先アドレスおよび送信元アドレス1B,このコマンドメッセージを特定するシーケンシャルID(SID)1C,および送信先に送るデータ(コマンドデータ)1Dからなるフレーム構成になっている。
【0039】
レスポンスメッセージは、図5(b)に示すように、メッセージの種別を指定するレスポンスヘッダ2A,送信先アドレスおよび送信元アドレス2B,このレスポンスメッセージを特定するシーケンシャルID(SID)2C,および送信先のツール21に送るデータ(レスポンスデータ)2Dからなるフレーム構成になっている。
【0040】
次に、この実施の形態のPLCシステムの動作を、(1)第1のPLC1の動作と、(2)パーソナルコンピュータ2の動作とに分けて説明する。
【0041】
(1)第1のPLC1の動作について
第1のPLC1の動作を図2を参照して説明する。
【0042】
第1のPLC1のコマンド受信手段114aが、パーソナルコンピュータ2からコマンドメッセージを受信すると(図2中の▲1▼参照)、受信したコマンドメッセージを送信先読取り手段114dに出力する(図2中の▲2▼参照)。
【0043】
次に、送信先読取り手段114dは、受けたコマンドメッセージから送信先を読み取り、読み取った送信先を宛先判断手段114eに出力する(図2中の▲3▼参照)。
【0044】
宛先判断手段114eは、送信先読取り手段114dから送信先を受けると、宛先を判断し、宛先を第2のPLC1aであると判断した場合には、通信ユニット13にコマンドメッセージを転送し(図2中の4参照)、一方、宛先が自己であると判断した場合には、レスポンス形成手段114bにコマンドメッセージに対するレスポンスメッセージを形成させる指示を出力する(図2中の5参照)。
【0045】
レスポンス形成手段114bは、レスポンスメッセージを形成するように指示を宛先判断手段114eから受けると、レスポンスメッセージを形成し、レスポンス送信手段114cに出力する。
【0046】
レスポンス送信手段114cは、レスポンス送信手段114bまたは第2のPLC1aからのレスポンスメッセージを受けると(図2中の▲6▼,▲7▼参照)、このレスポンスメッセージをパーソナルコンピュータ2に送信する(図2中の▲8▼参照)。
【0047】
(2)パーソナルコンピュータ2の動作について
ここで、パーソナルコンピュータ2の動作について、▲1▼コマンドメッセージを第1のPLC1(CPUユニット11)に送信させる動作と、▲2▼レスポンスメッセージを第1のPLC1(CPUユニット11)から受信する動作に分けて説明する。
【0048】
▲1▼コマンドメッセージを第1のPLC1(CPUユニット11)に送信させる動作について
なお、このコマンドメッセージを送信させる指示を出力したツール21は、#jのツール21とする。
【0049】
パーソナルコンピュータ2の#jのツール21が、所定のノードの送信先(CPUユニット11)に対してコマンドメッセージを送信させる旨の指示と(図6中の▲1▼参照)、コマンドデータ1DをOS22を介して#iの通信ドライバ23に出力すると、#iの通信ドライバ23は、#jのツール21から受けたコマンドデータ1Dを内蔵する#jの送信バッファ231に格納する(図6中の▲2▼参照)。
【0050】
続いて、#iの通信ドライバ23は、送信用ツール対応テーブル27を参照して(図6中の▲3▼参照)、コマンドデータの前にシーケンシャルID1Cを付加し、さらに、このシーケンシャルID1Cの前にこのコマンドデータの送信先のアドレスおよび送信元のアドレス1Bを付加し、さらにまた、これらのアドレス1Bの前にコマンドヘッダ1Aを付加してコマンドメッセージを形成し、この形成したコマンドメッセージを送信バッファ24に格納する(図6中の▲4▼参照)。
【0051】
#iの通信ポート26は、送信バッファ24にコマンドメッセージ24が格納されていると、このコマンドメッセージを読み出し(図6中の▲5▼参照)、コマンドメッセージの送信先宛てに送信する(図6中の▲6▼参照)。
【0052】
▲2▼レスポンスメッセージをPLC1(CPUユニット11)から受信する動作について
ここで、受信したレスポンスメッセージを受けとるツール21は、#kのツールとする。
【0053】
#iの通信ポート26は、レスポンスメッセージを受けると(図6中の▲7▼参照)、このメッセージを受信バッファに格納する(図6中の▲8▼参照)。
【0054】
#iの通信ドライバ23は、受信バッファ25にレスポンスメッセージが格納されると、格納されているレスポンスメッセージを読み出し、レスポンスヘッダが示すメッセージの種別がレスポンスメッセージであると確認すると、次にメッセージから送信先アドレス(#kのツール21のアドレス)および送信元アドレス2Bと、シーケンシャルID2Cとを読み出したのち、送信先のアドレス(#kのツール21のアドレス)を参照して、#kの受信用ツール対応データを受信用ツール対応テーブル28に格納する(図6中の9参照)。
【0055】
#iの通信ドライバ23は、#kの受信用ツール対応データを受信用ツール対応テーブル28に格納すると、レスポンスメッセージからレスポンスヘッダ2A,送信先アドレスおよび送信元アドレス2B、並びにシーケンシャルID2Cを除去し、レスポンスデータを形成し、これを#kの受信バッファ232に格納する(図6中のa参照)。
【0056】
#kのツール21は、OS22を介して、#iの通信ドライバ23に有する#kの受信バッファ232からレスポンスデータを読み出す(図6中のb参照)。
【0057】
この実施形態のPLCシステムでは、パーソナルコンピュータ2が、ツール21から第1のPLC1に対して送信すべき旨の指示を受けると、形成したコマンドメッセージを送信バッファ24に格納し、また、第1のPLC1に送信したコマンドメッセージに対するレスポンスメッセージを受信バッファ25に格納するようにしたことにより、コマンドメッセージに対するレスポンスメッセージを受信しなくても、ツール21の指示に基づきコマンドメッセージを送信することができる。
【0058】
このため、ツール21を稼働させるに際してその作業効率を向上させるとともに、複数のパーソナルコンピュータ2を備える必要をなくしコストを抑えることができる。
【0059】
ここで、第1のPLC1は、パーソナルコンピュータ2から受信したコマンドメッセージから送信先を読み取り、読み取った送信先が自己宛ての場合には、そのコマンドメッセージに基づいた処理を実行し、その後、コマンドメッセージに対するレスポンスメッセージをパーソナルコンピュータ2に送信する。
【0060】
一方、第1のPLC1は、読み取った送信先が第2のPLC1aの場合には、コマンドメッセージを第2のPLC1aに送信し、第2のPLC1aからのレスポンスメッセージを受信すると、受信したレスポンスメッセージをパーソナルコンピュータ2に送信する。
【0061】
本実施形態のPLCシステムでは、上述したような構成を有することにより、パーソナルコンピュータ2とCPUユニット11、および、CPUユニット11および通信ユニット13を介してパーソナルコンピュータ2と他のCPUユニット11との送信処理は、図7に示すようになる。
【0062】
すなわち、パーソナルコンピュータ2が、図7に示すように、最初にCPUユニット11に対してコマンドメッセージ1を送信し、2番目にCPUユニット11および通信ユニット13を介して他のCPUユニット11にコマンドメッセージ2を送信し、3番目にCPUユニット11に対してコマンドメッセージ3を送信した場合には、コマンドメッセージ1に対するレスポンスメッセージ1がCPUユニット11から送信されてきたのち、コマンドメッセージ3に対するレスポンスメッセージ3がCPUユニット11から送信され、最後にコマンドメッセージ2に対するレスポンスメッセージ2が送信されるようになる。
【0063】
因みに、従来のPLCシステムでは、パーソナルコンピュータのツールからコマンドメッセージを受け、それに対するレスポンスメッセージが帰ってこないと、次のコマンドメッセージを送信することができない。
【0064】
従って、パーソナルコンピュータ2とCPUユニット11、および、CPUユニット11および通信ユニット13を介してパーソナルコンピュータ2と他のCPUユニット11との送信処理は、図8に示すようになる。
【0065】
すなわち、パーソナルコンピュータ2は、図8に示すように、最初にCPUユニット11に対してコマンドメッセージ1を送信し、そのコマンドメッセージに対するレスポンスメッセージ1が受信されてきたのち、CPUユニット11および通信ユニット13を介して他のCPUユニット11にコマンドメッセージ2を送信し、それに対するレスポンスメッセージ2が受信される。
【0066】
図9は、図3に示したパーソナルコンピュータ2の機能構成を示す機能ブロック図である。
【0067】
図9において、パーソナルコンピュータ2は、ツールとしてSPMA(Single Port Multiple Access)対応用のSPMAアプリケーション201を有している。この例では、3つのSPMAアプリケーション(1)、(2)、(3)が起動しており、そのうち2つのSPMAアプリケーション(1)、(2)は同じ外部機器、例えば、外部機器100−1〜100−3の内の外部機器100−1に接続され、他のSPMAアプリケーション(3)は別の外部機器、例えば、外部機器100−1〜100−3の内の外部機器100−2に接続されている状態を示している。
【0068】
ここで、外部機器100−1〜100−3は、図1に示した第1のPLC1,第2のPLC1a等に対応する。
【0069】
通信処理部202は、2つのSPMAアプリケーション(1)、(2)に対応して外部機器ID割付およびコマンド割付を行い(処理202−1)、また、SPMAアプリケーション(3)に対応して同様に外部機器ID割付およびコマンド割付を行い(処理202−2)、通信コマンドを生成する(処理202−3)。
【0070】
パソコンハードウェア部203は、パソコン内通信バッファ203−1、パソコン内通信物理ポート203−2を有して構成されており、通信処理部202で生成された通信コマンドをパソコン内通信バッファ203−1に格納し、パソコン内通信物理ポート203−2から外部機器100−1〜100−3に送出する。
【0071】
また、外部機器100−1〜100−3からのレスポンスは、パソコン内通信物理ポート203−2を通して受信し、パソコン内通信バッファ203−1に格納した後、対応するSPMAアプリケーションに返す。
【0072】
図10は、図9に示したパーソナルコンピュータ2の全体動作を示すフローチャートである。
【0073】
図10においては、パーソナルコンピュータ(パソコン)2上でSPMAアプリケーション(SPMA対応アプリ)が複数、具体的には3つのSPMAアプリケーション(SPMAアプリ)(1)、(2)、(3)が起動されている(ステップ211)状態を示している。
【0074】
SPMAアプリ(1)実行中においては(ステップ212)、SPMAアプリ(1)からの要求通信コマンドがあるかを調べ(ステップ213)、ない場合は(ステップ213でNo)、ステップ212に戻るが、あると(ステップ213でYes)、この通信コマンドを通信コマンド管理用スタックに追加する処理1を実行する(ステップ218)。
【0075】
また、SPMAアプリ(2)実行中においては(ステップ214)、SPMAアプリ(2)からの要求通信コマンドがあるかを調べ(ステップ215)、ない場合は(ステップ215でNo)、ステップ214に戻るが、あると(ステップ215でYes)、この通信コマンドを通信コマンド管理用スタックに追加する処理1を実行する(ステップ218)。
【0076】
また、SPMAアプリ(3)実行中においては(ステップ216)、SPMAアプリ(3)からの要求通信コマンドがあるかを調べ(ステップ217)、ない場合は(ステップ217でNo)、ステップ216に戻るが、あると(ステップ217でYes)、この通信コマンドを通信コマンド管理用スタックに追加する処理1を実行する(ステップ218)。
【0077】
そして、パソコン内通信物理ポート203−2からコマンドの送信を行う(ステップ219)。
【0078】
なお、ステップ218の処理1の詳細に付いては、図11に示したフローチャートを参照して後述する。
【0079】
次に、外部機器100−1〜100−3からのレスポンスを受信したかを調べる(ステップ220)。ここで、外部機器100−1〜100−3からのレスポンスを受信していない場合は(ステップ220でNo)、ステップ219に戻るが、外部機器100−1〜100−3からのレスポンスを受信した場合は、対応するコマンド送信元SPMAアプリに受信したレスポンスを返す処理2を実行する(ステップ221)。
【0080】
なお、ステップ221の処理2の詳細に付いては、図12に示したフローチャートを参照して後述する。
【0081】
図11は、図10に示したステップ218の処理1の詳細を示すフローチャートである。
【0082】
図11に示す処理1においては、SPMAアプリ(m)(M=1、2、3)が要求する外部機器に対するコマンドを通信コマンド管理用スタックに登録する処理が開始されると(ステップ231)、まず、SPMAアプリ(m)が要求した外部機器に対して外部機器IDとコマンドIDを割り付け、通信コマンド管理用スタックに登録する(ステップ232)。
【0083】
次に、パソコン2内のパソコン内通信バッファ203−1に通信コマンド管理用スタックの内容を転送する(ステップ233)。そして、パソコン内通信バッファ203−1がいっぱいかを調べ(ステップ234)、いっぱいの場合は(ステップ234でYes)、ステップ233に戻るが、いっぱいでない場合は(ステップ234でNo)、外部機器に対してコマンドIDを割り付けて送信する(ステップ235)。
【0084】
図12は、図10に示したステップ221の処理2の詳細を示すフローチャートである。
【0085】
図12に示す処理2においては、まず、外部機器からのレスポンスの情報に含まれる外部機器IDとそのコマンドIDを解析する(ステップ241)。
【0086】
次に、解析した外部機器IDとコマンドIDから通信コマンド管理用スタックに登録されているSPMAアプリ番号を割り出す(ステップ242)。そして、外部機器からのレスポンス内容を抽出し、送信元SPMAアプリに返す(ステップ243)。
【0087】
なお、この発明のPLCシステムにおいては、図13に示すように、パソコン2の表示画面上で、PLCネームを指定するだけでネットワーク上のPLCと簡単に接続することが可能である。この場合、図13(a)に示すように、パソコン2に直接接続しているPLCだけでなく、図13(b)に示すように、そのPLCを介したネットワーク上のPLCに対してアクセス(リモートプログラミング/モニタリング)するときも、ゲートウェイとなるPLCのPLCネームを指定するだけで簡単に接続することが可能になる。
【0088】
また、リモートネットワーク上のPLCに関するディップスイッチの状態や動作モードなどの情報をパソコン2からPLCネームを指定するだけで収集することも可能である。
【0089】
【発明の効果】
以上説明したように請求項1の発明によれば、第1のプログラマブルコントローラと、この第1のプログラマブルコントローラに接続する第2のプログラマブルコントローラと、上記第1のプログラマブルコントローラに接続するパーソナルコンピュータとで構築されたプログラマブルコントローラシステムにおいて、上記第1のプログラマブルコントローラは、上記パーソナルコンピュータから送信されてきたコマンドメッセージが、自己宛てのコマンドメッセージである場合には、このコマンドメッセージに対するレスポンスメッセージを上記パーソナルコンピュータに送信し、一方、上記第2のプログラマブルコントローラ宛てのコマンドメッセージである場合には、上記第2のプログラマブルコントローラに送信し、この第2のプログラマブルコントローラから送信されてきたレスポンスメッセージを上記パーソナルコンピュータに送信するように構成したので、パーソナルコンピュータは、該パーソナルコンピュータに直接接続された第1のプログラマブルコントローラとだけでなく、第1のプログラマブルコントローラを介してパーソナルコンピュータに接続された第2のプログラマブルコントローラとも同様に通信を行うことができる。
【0090】
また、請求項2の発明によれば、第2のプログラマブルコントローラと、パーソナルコンピュータとを接続するプログラマブルコントローラにおいて、上記パーソナルコンピュータから受信したコマンドメッセージから送信先を読み取とる送信先読取り手段と、この送信先読取り手段で読み取った送信先が自己宛てであるか、または、上記第2のプログラマブルコントローラかを判断する送信先判断手段と、この送信先判断手段が読み取った送信先が自己宛ての場合には、そのコマンドメッセージに対するレスポンスメッセージを上記パーソナルコンピュータに送信し、一方、読み取った送信先が上記第2のプログラマブルコントローラの場合には、上記コマンドメッセージを上記第2のプログラマブルコントローラに送信し、この上記第2のプログラマブルコントローラからのレスポンスメッセージを受信すると、受信したレスポンスメッセージを上記パーソナルコンピュータに送信するメッセージ送信手段とを具備して構成したので、パーソナルコンピュータと通信するだけでなく、第2のプログラマブルコントローラとパーソナルコンピュータとの通信を可能にすることができる。
【0091】
また、請求項3および4の発明においては、プログラマブルコントローラに対してデータの設定やデータのモニタリング処理させるツールを有するパーソナルコンピュータにおいて、上記データの設定やデータのモニタリング処理させるためのコマンドメッセージを格納するコマンドメッセージ格納手段と、上記コマンドメッセージに対する上記プログラマブルコントローラからレスポンスメッセージを格納するレスポンス格納手段と、上記ツールから上記プログラマブルコントローラに対して送信すべき旨の指示を受けると、そのコマンドメッセージを形成するコマンドメッセージ形成手段と、上記データの設定やデータのモニタリング処理させるためのコマンドメッセージを、上記プログラマブルコントローラに対して送信すべきであるとの指示を上記ツールから受けると、そのコマンドメッセージを形成し、これを上記コマンドメッセージ格納手段に格納させ、また、上記コマンドメッセージに対するレスポンスメッセージを上記レスポンス格納手段から読み出し、レスポンスメッセージの内容を示すレスポンスデータを形成し、これを上記ツールに出力するデータ形成手段とを具備して構成したので、パーソナルコンピュータは、直接接続された第1のプログラマブルコントローラとだけでなく、第1のプログラマブルコントローラを介してパーソナルコンピュータに接続された第2のプログラマブルコントローラとも同様に通信を行うことができる。また、パーソナルコンピュータが、ツールからPLCに対して送信すべき旨の指示を受けると、形成したコマンドメッセージを送信バッファに格納し、また、PLCに送信したコマンドメッセージに対するレスポンスメッセージを受信バッファに格納するように構成したので、コマンドメッセージに対するレスポンスメッセージを受信しなくても、ツールの指示に基づきコマンドメッセージを送信することができる。従って、ツールを稼働させるに際してその作業効率を向上させるとともに、複数のパーソナルコンピュータを備える必要をなくしコストを抑えることができる。
【0092】
また、請求項5の発明においては、第2のプログラマブルコントローラと、パーソナルコンピュータとを接続するプログラマブルコントローラの通信方法において、上記パーソナルコンピュータから受信したコマンドメッセージから送信先を読み取り、読み取った送信先が自己宛ての場合には、そのコマンドメッセージに対するレスポンスメッセージを上記パーソナルコンピュータに送信し、一方、読み取った送信先が第2のプログラマブルコントローラの場合には、上記コマンドメッセージを上記第2のプログラマブルコントローラに送信し、この上記第2のプログラマブルコントローラからのレスポンスメッセージを受信すると、受信したレスポンスメッセージをパーソナルコンピュータに送信するように構成したので、パーソナルコンピュータと通信するだけでなく、第2のプログラマブルコントローラとパーソナルコンピュータとの通信を可能にすることができる。
【0093】
また、請求項6および7の発明においては、プログラマブルコントローラに対してデータの設定やデータのモニタリング処理させるコマンドメッセージを送信するパーソナルコンピュータの通信方法において、上記ツールから上記プログラマブルコントローラに対して送信すべき旨の指示を受けると、そのコマンドメッセージを形成し、これを送信バッファに格納したのち送信し、上記プログラマブルコントローラに送信したコマンドメッセージに対するレスポンスメッセージを受信バッファから読み出し、この読み出したレスポンスデータを上記ツールが理解できるレスポンスデータに形成し、この形成したレスポンスデータを上記ツールに出力するように構成したので、パーソナルコンピュータは、直接接続された第1のプログラマブルコントローラとだけでなく、第1のプログラマブルコントローラを介してパーソナルコンピュータに接続された第2のプログラマブルコントローラとも同様に通信を行うことができ、またコマンドメッセージに対するレスポンスメッセージを受信しなくても、ツールの指示に基づきコマンドメッセージを送信することができるので、ツールを稼働させるに際してその作業効率を向上させるとともに、複数のパーソナルコンピュータを備える必要をなくしコストを抑えることができる。
【図面の簡単な説明】
【図1】この発明に係るプログラマブルロジックコントローラシステムの一実施形態を示すブロック図。
【図2】図1中の通信処理プログラムメモリに格納されている通信処理プログラムメモリの構成を示すブロック図。
【図3】図1中のパーソナルコンピュータの構成を示すブロック図。
【図4】図2中の送信用ツール対応テーブルの内容を説明する説明図。
【図5】コマンドメッセージおよびレスポンスメッセージのフレーム構成図。
【図6】図1中のパーソナルコンピュータの動作を説明する説明図。
【図7】この実施形態のプログラマブルロジックコントローラシステムにおける送信手順を示すプロトコル図。
【図8】従来のプログラマブルロジックコントローラシステムにおける送信手順を示すプロトコル図。
【図9】図3に示したパーソナルコンピュータの機能構成を示す機能ブロック図。
【図10】図9に示したパーソナルコンピュータの全体動作を示すフローチャート。
【図11】図10に示した処理1の詳細を示すフローチャート。
【図12】図10に示した処理2の詳細を示すフローチャート。
【図13】図1中のパーソナルコンピュータの表示画面の一例を示す図。
【図14】従来のプログラマブルロジックコントローラシステムの一実施形態を示すブロック図。
【図15】従来のプログラマブルロジックコントローラシステムの一実施形態を示すブロック図。
【符号の説明】
1,1a プログラマブルコントローラ
11 CPUユニット
111 マイクロコンピュータ
112 バスASIC
113 メモリ
114 通信処理プログラム格納メモリ
12 高機能ユニット
121 マイクロコンピュータ
122 バスASIC
123 メモリ
13 通信ユニット
131 マイクロコンピュータ
132 バスASIC
133 メモリ
14 システムバス
2 パーソナルコンピュータ
21 ツール
22 OS
23 通信ドライバ
24 送信バッファ
25 受信バッファ
26 通信ポート
27 送信用ツール対応テーブル
28 受信用ツール対応テーブル
3 ツールケーブル
Claims (2)
- プログラマブルコントローラに対してデータの設定やデータのモニタリングを実行させる複数のツールを有するパーソナルコンピュータにおいて、
上記複数のツールの各ツール番号とメッセージを識別するシーケンシャルIDとを対応させて格納するツール対応テーブルと、
上記複数のツールから出力されたコマンドデータを受け付けて、各コマンドデータに該コマンドデータの送信先を示す送信先アドレスと該コマンドデータを識別するシーケンシャルIDを付加したコマンドメッセージを形成するコマンドメッセージ形成手段と、
上記コマンドメッセージ形成手段で形成されたコマンドメッセージを格納するコマンドメッセージ格納手段と、
上記コマンドメッセージ格納手段に格納されたコマンドメッセージを読み出して、該コマンドメッセージに含まれる送信先アドレスのプログラマブルコントローラ宛てに該コマンドメッセージを送信し、該送信したコマンドメッセージに対するプログラマブルコントローラからのレスポンスメッセージを受信するメッセージ通信手段と、
上記メッセージ通信手段で受信したレスポンスメッセージを格納するレスポンスメッセージ格納手段と、
上記レスポンスメッセージ格納手段に格納されたレスポンスメッセージを読み出して、該レスポンスメッセージに含まれるシーケンシャルIDと上記ツール対応テーブルのツール番号およびシーケンシャルIDとに基づいて、送信先のツール番号を取得して該送信先のツール宛てに出力するレスポンスデータを形成するレスポンスデータ形成手段と、
を具備し、
上記送信したコマンドメッセージに対するレスポンスメッセージを受信しなくても、上記ツールから出力されたコマンドデータを受け付けてコマンドメッセージを送信する
ことを特徴とするパーソナルコンピュータ。 - 共通の通信ポートを介して接続されたプログラマブルコントローラに対してデータの設定やデータのモニタリングを実行させる複数のツールを稼働するパーソナルコンピュータの通信方法において、
上記複数のツールの各ツール番号とメッセージを識別するシーケンシャルIDとを対応させて格納し、
上記複数のツールから出力されたコマンドデータを受け付けて、各コマンドデータに該コマンドデータの送信先を示す送信先アドレスと該コマンドデータを識別するシーケンシャルIDを付加したコマンドメッセージを形成して格納し、
上記格納されたコマンドメッセージを読み出して、該コマンドメッセージに含まれる送信先アドレスのプログラマブルコントローラ宛てに該コマンドメッセージを送信し、
上記送信されたコマンドメッセージに対するプログラマブルコントローラからのレスポンスメッセージを受信して格納し、
上記格納されたレスポンスメッセージを読み出して、該レスポンスメッセージに含まれるシーケンシャルIDと上記格納されたツール番号およびシーケンシャルIDとに基づいて、送信先のツール番号を取得して該送信先のツール宛てに出力するレスポンスデータを形成し、
上記送信したコマンドメッセージに対するレスポンスメッセージを受信しなくても、上記ツールから出力されたコマンドデータを受け付けてコマンドメッセージを送信する
ことを特徴とするパーソナルコンピュータの通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03966499A JP3550677B2 (ja) | 1998-05-29 | 1999-02-18 | パーソナルコンピュータ、およびパーソナルコンピュータの通信方法 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15013898 | 1998-05-29 | ||
JP10-150138 | 1998-05-29 | ||
JP03966499A JP3550677B2 (ja) | 1998-05-29 | 1999-02-18 | パーソナルコンピュータ、およびパーソナルコンピュータの通信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000047717A JP2000047717A (ja) | 2000-02-18 |
JP3550677B2 true JP3550677B2 (ja) | 2004-08-04 |
Family
ID=26379048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP03966499A Expired - Lifetime JP3550677B2 (ja) | 1998-05-29 | 1999-02-18 | パーソナルコンピュータ、およびパーソナルコンピュータの通信方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3550677B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7444186B2 (en) | 2005-03-01 | 2008-10-28 | Omron Corporation | Programmable controller system |
JP5088490B2 (ja) * | 2008-03-13 | 2012-12-05 | オムロン株式会社 | 二重化コントローラ |
JP2014127055A (ja) * | 2012-12-27 | 2014-07-07 | Jtekt Corp | Plcの周辺装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2939836B2 (ja) * | 1991-03-29 | 1999-08-25 | カシオ計算機株式会社 | 液晶表示素子 |
JPH086614A (ja) * | 1994-06-22 | 1996-01-12 | Omron Corp | プログラマブルコントローラ |
JP3367761B2 (ja) * | 1994-08-26 | 2003-01-20 | 松下電工株式会社 | 制御システムのプログラム照合方法及び制御システム |
JP3642594B2 (ja) * | 1995-01-10 | 2005-04-27 | オムロン株式会社 | 開発支援装置 |
-
1999
- 1999-02-18 JP JP03966499A patent/JP3550677B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2000047717A (ja) | 2000-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8990444B2 (en) | Fieldbus gateway using virtual serial fieldbus port and data transmission method thereof | |
US9667699B2 (en) | Method for transmitting data via a CANopen bus | |
KR100451315B1 (ko) | 제어시스템, 표시장치 및 제어용 호스트 컴퓨터 및 데이터전송방법 | |
JP4271160B2 (ja) | 生産システムにおけるネットワーク開通方法 | |
EP3078165B1 (en) | Web-based interaction with building automation | |
NO319930B1 (no) | Kommunikasjonsarkitektur for prosesstyresystem | |
JP4172490B2 (ja) | プログラマブルコントローラ | |
US9344399B2 (en) | Relay server and relay communication system | |
KR102204906B1 (ko) | Opc ua를 이용한 공작기계 원격 제어시스템 | |
JP4849340B2 (ja) | プログラマブルコントローラ及びユニット | |
JP3550677B2 (ja) | パーソナルコンピュータ、およびパーソナルコンピュータの通信方法 | |
US20010052041A1 (en) | Automation system and method for accessing the functionality of hardware components | |
JP2004306200A (ja) | ロボット制御システム | |
JP3423626B2 (ja) | 制御用ホストコンピュータ、および、そのプログラムが記録された記録媒体 | |
JP5786385B2 (ja) | 操作端末、プログラムおよび制御システム | |
JP2022011697A (ja) | 生産システム、上位制御装置、制御装置、通信方法、及びプログラム | |
JP4671056B2 (ja) | プログラマブルコントローラおよび通信ユニット | |
JP3590329B2 (ja) | 制御系ネットワークシステム | |
JP4396120B2 (ja) | プログラマブル表示器 | |
JP4164270B2 (ja) | サーボコントローラ | |
JPH0722288B2 (ja) | ロ−カルエリアネツトワ−クの通信制御装置 | |
JP2003052189A (ja) | 電動機駆動装置と制御装置との制御情報通信方法、電動機駆動装置及びシステム | |
JPS61157042A (ja) | Lan上における異種プロトコル端末接続方式 | |
KR20240016719A (ko) | 스마트 중계기를 이용한 다중 입출력 기기 제어 장치 및 방법 | |
JPH0447305A (ja) | セルコントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20040329 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040411 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090514 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100514 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100514 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110514 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120514 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130514 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140514 Year of fee payment: 10 |
|
EXPY | Cancellation because of completion of term |