JP4952926B2 - Plc - Google Patents

Plc Download PDF

Info

Publication number
JP4952926B2
JP4952926B2 JP2007199382A JP2007199382A JP4952926B2 JP 4952926 B2 JP4952926 B2 JP 4952926B2 JP 2007199382 A JP2007199382 A JP 2007199382A JP 2007199382 A JP2007199382 A JP 2007199382A JP 4952926 B2 JP4952926 B2 JP 4952926B2
Authority
JP
Japan
Prior art keywords
unit
communication
destination
network
communication frame
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.)
Active
Application number
JP2007199382A
Other languages
English (en)
Other versions
JP2009037319A (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 JP2007199382A priority Critical patent/JP4952926B2/ja
Publication of JP2009037319A publication Critical patent/JP2009037319A/ja
Application granted granted Critical
Publication of JP4952926B2 publication Critical patent/JP4952926B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Programmable Controllers (AREA)

Description

この発明はPLCに係り、特に、複数台の通信ユニットを備えたビルディングブロックタイプのPLCにおいて、ルーチングテーブルを使用することなく、ネットワークを介して接続された他のPLCなどと通信を行うのに好適なPLCに関する。
複数台のPLCをネットワークを介して結び、それらのPLC間で通信を行うためには、ルーチングテーブルを使用した通信方式が従来より知られている(例えば特許文献1参照)。
ルーチングテーブル方式の通信は、ネットワークアドレスとノードアドレスとを指定するだけでネットワーク階層を意識することなく任意のPLCとネットワーク経由で通信できるメリットがある。
このようなルーチングテーブル方式の通信を実現するためには、個々のPLCごとにルーチングテーブルを設定せねばならない。このルーチングテーブルには、各通信ユニットがどのネットワークに接続されているかを示す第1のテーブルと、他のネットワークのノードと通信するための通信経路に関する第2のテーブルとが存在する。
特開2006−277728号公報
しかしながら、このような従来のルーチングテーブルを使用する通信方式にあっては、通信開始に先立って、ネットワーク上の全てのPLCにルーチングテーブルを設定しなければならず、特に昨今、この種のPLCシステムは大規模化する傾向にあるため、PLCの台数も多いことに加え、PLC間の距離も長いため、1台1台のPLCにルーチングテーブル設定のためのツール装置を持ち運ぶことは非常に手間がかかり、ルーチングテーブルの設定作業の効率化が要望されていた。
この発明は、このような従来の問題点に着目してなされたものであり、その目的とするところは、個々のPLCの設置場所にツール装置を持ち運びすることなく、ルーチングテーブルを設定可能な通信方式を備えたPLCを提供することにある。
この発明のさらに他の目的並びに作用効果については、明細書の以下の記述を参照することにより、当業者であれば容易に理解されるであろう。
上述の技術的な課題は、以下の構成を有するPLCによって実現することができるものと考えられる。すなわち、この発明のPLCは、CPUユニットと、1又は2以上の入力又は出力ユニットと、1又は2以上の通信ユニットと、それらのユニット同士を内部で接続する内部システムバスとを少なくとも含み、CPUユニットには、ツール装置等の外部機器との通信を行うための通信用ポートが設けられ、かつ通信用ユニットのそれぞれには、ネットワークに接続するための通信用ポートが設けられている。
そして、CPUユニットには、通信用ポートを介して到来する通信フレームを解析する第1のCPU側フレーム解析手段と、第1のCPU側フレーム解析手段の解析結果に基づいて、宛先ネットワーク番号に想定範囲外の特殊コードが含まれているか否かを判定する第1のCPU側判定手段と、第1のCPU側判定手段により宛先ネットワーク番号に想定範囲外の特殊コードが含まれていると判定されるときには、当該通信フレームが到来した通信用ポートのユニット番号を送信元ユニット番号とすると共に、宛先ネットワーク番号を0とした通信フレームを、その特殊コードから一定のルールに従って生成されたユニット番号に宛てて、内部システムバスへと転送する第1のCPU側通信フレーム転送手段と、内部システムバスを介して到来する通信フレームを解析する第2のCPU側フレーム解析手段と、第2のCPU側フレーム解析手段の解析結果に基づいて、ルーチングが完了しているか否かを判定する第2のCPU側判定手段と、第2のCPU側判定手段によりルーチングが完了していると判定されるときには、宛先ユニット番号がCPUユニットであれば、受信した通信フレームのデータ部に従った処理を実行すると共に、受信した通信フレームの宛先フレームと送信アドレスとを入れ替えかつ生成したレスポンスデータをデータ部に含めてレスポンスフレームを生成し、こうして生成されたレスポンスフレームを受信したユニットへ宛てて、内部システムバスへと転送する一方、宛先ユニットがCPUユニットでなければ、その通信フレームを宛先ユニット番号で示されるユニットへ宛てて内部システムバスへと転送する第3の通信フレーム転送手段とが設けられる。
また、通信ユニットには、通信ポートを介して到来する通信フレームを解析する通信フレーム側フレーム解析手段と、通信ユニット側フレーム解析手段の解析結果に基づいて、宛先ネットワーク番号が0で、かつ、宛先ノード番号が自身のノード番号であるか否かを判定する通信ユニット側判定手段と、通信ユニット側判定手段により宛先ネットワーク番号が0で、かつ、宛先ノード番号が自身のノード番号であると判定されるときには、自ユニット宛であれば、自ユニットにて処理し、レスポンスフレームを作成してネットワーク側へと返送する一方、自ユニット宛でなければルーチング処理を完了し、転送依頼するためにCPUユニットへ宛てて内部システムバスへと転送する通信ユニット側転送手段と、が含まれている。
このような構成によれば、通信ポートを介してツール装置などから到来する通信フレームには、宛先ネットワーク番号に想定範囲外の特殊コードを含ませるといった特殊な方法でユニット番号が含まれているため、ルーチングテーブルが存在せずとも、この想定範囲外の特殊コードを復調又は解析することによって、直接的にユニット番号を取り出すことができ、そのためCPUユニットとしてはツール装置から到来した通信フレームを目的とする通信ユニットへと適切に転送することができる。しかも、宛先ネットワーク番号に想定範囲外の特殊コードを含ませるという手法によって、ネットワーク番号に宛先ユニット番号が含まれていることを認識させるという手法を採用しているため、既存の通信アルゴリズムを大幅に変更することなく、低コストに採用できるという利点もある。また、PLC間における通信は、従前より同一階層間でのみネットワーク番号を意識することなく通信可能とするネットワーク番号0を利用するため、受け手となる通信ユニットの側においても、既存システムを大幅に変更することなく、ルーチングテーブル無しのPLC間通信を実現することができる。
別の一面から見た本発明は、PLCのツール装置として捉えることもできる。このPLCのツール装置は、CPUユニットと、1又は2以上の入力又は出力ユニットと、1又は2以上の通信ユニットと、それらのユニット同士を内部で接続する内部システムバスとを少なくとも含み、CPUユニットには、ツール装置などの外部機器との通信を行うための通信用ポートが設けられ、かつ通信ユニットのそれぞれには、ネットワークに接続するための通信用ポートが設けられたPLCに通信ケーブルを介して接続されるものである。
そして、このツール装置には、ルーチングテーブルの選択画面を表示する第1の案内表示手段と、選択されたルーチングテーブルに基づいて、通信フレームのデータ部を作成するデータ部作成手段と、送信先選択画面を表示する第2の案内表示手段と、入力されたユニット番号とノード番号とに基づいて通信フレームを生成する通信フレーム生成手段と、生成された通信フレームを送信する送信手段とが具備される。
このような構成によれば、案内表示されたルーチングテーブルの中から、所望のルーチングテーブルを選択し、これを通信フレームのデータ部に組み込むことによって、ルーチングテーブル転送用の通信フレームを作成できる一方、先ほど説明したように、入力されたユニット番号とノード番号とに基づいて、ネットワーク番号を特定することなく、通信フレームを生成できるため、ルーチングテーブルがまだ設定されていない初期状態において、ルーチングテーブルを複数のPLCのそれぞれに、特定のPLCを介して効率よく転送することが可能となるのである。
このとき、通信フレーム生成手段は、与えられたユニット番号に基づいて、想定範囲外のネットワーク番号を自動的に生成するようにすれば、オペレータはそのような特殊コードの入力を意識することなく、所望のネットワークを経由して、個々のPLCに対してルーチングテーブルを送信することが可能となる。
なお、想定範囲外のネットワーク番号としては、例えば1〜128が既存の番号範囲とすれば、任意のユニット番号に対して128を加算することによって、必ず想定範囲外のネットワーク番号を生成することができる。また、このような方法で想定範囲外のネットワーク番号を生成した場合、これを受信する側においては、一律に128減算することによって、元のユニット番号を復元することができる。
この発明によれば、特に2以上の通信ユニットを含むビルディングブロックタイプのPLCにおいて、個々の通信ユニットがどのネットワークに接続されているかを示すルーチングテーブルを使用せずとも、PLCのCPUユニットに接続されたツール装置から、当該PLCを経由して、任意のネットワークを介して他のPLCへと所望のデータ(例えば、ルーチングテーブルそのもの)を転送することができるから、この種のルーチングテーブルを使用した通信方式を採用するPLCシステムにおいても、ルーチングテーブルが設定されていない初期状態において、個々の分散するPLCに対してネットワークを経由してルーチングテーブルを送り込むことが可能となり、従前のように、多数のPLCのそれぞれに対して、現場へ足を運んでツール装置を接続してルーチングテーブルを設定する場合に比べ、大幅に労力が軽減されるという利点がある。
以下に、この発明に係るPLC及びツール装置の好適な実施の一形態を添付図面を参照しながら詳細に説明する。
本発明が適用されたPLCシステムの構成図が図1に示されている。同図に示されるように、このPLCシステムは、第1PLC(1−1)と、第2PLC(1−2)と、第3PLC(1−3)と、第4PLC(1−4)と、第5PLC(1−5)とからなる5台のPLCをネットワークで接続して構成されている。
より詳しくは、第1PLC(1−1)、第2PLC(1−2)、及び第4PLC(1−4)についてはネットワークAを介して結ばれている。同様にして、第3PLC(1−3)及び第5PLC(1−5)については、ネットワークBを介して結ばれている。ここで、ネットワークAのネットワーク番号は#20、ネットワークBのネットワーク番号は#30とされている。
この例では、第1PLC1−1は、1台の電源ユニットU0と、1台のCPUユニットU1と、2台の入力ユニットU2と、1台の出力ユニットU3と、2台の通信ユニットU4とを備えている。そして、この例にあっては、CPUユニットU1にはユニット番号(0)が、2台の入力ユニットU2にはユニット番号(1),(2)が、1台の出力ユニットU3にはユニット番号(3)が、2台の通信ユニットU4にはユニット番号(4),(5)が割り当てられている。
同様にして、第2PLC(1−2)は、1台の電源ユニットU0と、1台のCPUユニットU1と、1台の入力ユニットU2と、1台の出力ユニットU3と、1台の通信ユニットU4とを備えている。そして、CPUユニットU1にはユニット番号(0)が、入力ユニットU2にはユニット番号(1)が、出力ユニットU3にはユニット番号(2)が、通信ユニットU4にはユニット番号(3)がそれぞれ割り当てられている。
同様にして、第3PLC(1−3)は、1台の電源ユニットU0と、1台のCPUユニットU1と、1台の入力ユニットU2と、1台の出力ユニットU3と、1台の通信ユニットU4とを備えている。そして、CPUユニットU1にはユニット番号(0)が、入力ユニットU2にはユニット番号(1)が、通信ユニットU4にはユニット番号(2)が、出力ユニットU3にはユニット番号(3)がそれぞれ割り当てられている。
さらに、第1PLC(1−1)のユニット番号(4)にかかる通信ユニットにはノード番号(#3)が割り当てられ、隣接するユニット番号(5)にかかる通信ユニットにはノード番号(#1)が割り当てられている。同様にして、第2PLC(1−2)のユニット番号(3)にかかる通信ユニットにはノード番号(#2)が割り当てられている。同様に、第3PLC(1−3)のユニット番号(2)にかかる通信ユニットには、ノード番号(#1)が割り当てられている。
図から明らかなように、ネットワークA(#20)は、それぞれ通信ユニットを介して3台のPLCに接続される。同様にして、ネットワークB(#30)についても、それぞれ通信ユニットを介して2台のPLCに接続される。
なお、第1PLC(1−1)のCPUユニットU1には、ケーブルを介して設定ツール2が接続されており、後述するルーチングテーブルの転送処理に際しては、この設定ツール2を使用してユーザは所望の通信フレームを作成することとなる。
次に、ルーチングテーブルの構成例を示す図が図2に示されている。図1に示されるPLCシステムは、基本的には、ルーチングテーブルを用いて通信を行うことが可能となされている。そのためには、個々のPLCごとに図2に示されるようにルーチングテーブルを設定せねばならない。このルーチングテーブルは、図から明らかなように、ユニット番号とネットワーク番号との対応関係を明らかとするものである。
すなわち、図2(a)に示される第1PLCのルーチングテーブルにあっては、これを参照することによって、ネットワーク番号(#30)にかかるネットワークBが、ユニット番号(4)を有する通信ユニットに接続されることが示されており、またネットワーク番号(#20)を有するネットワークAが、ユニット番号(5)を有する通信ユニットに接続されることが示されている。
同様にして、図2(b)に示される第2PLCのルーチングテーブルの場合、ネットワーク番号(#20)を有するネットワークAが、ユニット番号(3)を有する通信ユニットに接続されることが示されている。
同様にして、図2(c)に示される第3PLCのルーチングテーブルの場合、ネットワーク番号(#30)を有するネットワークBが、ユニット番号(2)を有する通信ユニットに接続されることが示されている。
従って、何らかの通信フレームを受信したCPUユニットは、これらのルーチングテーブルの内容を参照することによって、その通信フレームに含まれるネットワーク番号に基づき、そのフレームをどの通信ユニットへと転送すればよいかを容易に理解することができ、これが存在するために、ルーチングテーブルを使用する通信方式においては、ネットワーク番号とノード番号とを指定するだけで、任意の通信フレームを所望のノード乃至ユニットへと伝送することが可能となるのである。
ここで、通信フレームの構成を説明する図が図3に示されている。後述する説明においては、図3に示される通信フレームを前提として、通信フレームのフォーマットが決定される。すなわち、通信フレームは、宛先アドレス部と送信元アドレス部とデータ部とを備えている。
そして、宛先アドレス部には、宛先ネットワーク番号と、宛先ノード番号と、宛先ユニット番号とが格納される。同様にして、送信元アドレス部にも、送信元ネットワーク番号と、送信元ノード番号と、送信元ユニット番号とが格納される。なお、データ部についてはコマンドデータ又はレスポンスデータが格納される。
図1に戻って、ネットワークA及びネットワークBに沿って往復矢印で描かれたa〜dは通信フレームの一例であり、それら通信フレームの具体例を示す図が図4に示されている。図4(a)に示される通信フレームaの具体例は、設定ツール2から第2PLC(1−2)のCPUユニットU1に宛てて送信されたものである。この場合、宛先アドレス部の内容は、ネットワーク番号(#20)、ノード番号(#2)、ユニット番号(0)となり、送信元アドレス部の内容はネットワークアドレス(#0)、ノードアドレス(#0)、ユニットアドレス(0)となる。
図4(b)に示される通信フレームbの具体例は、第1PLC(1−1)のCPUユニットU1から第2PLC(1−2)のCPUユニットU1に宛てて送信されるものである。この場合、宛先アドレス部の内容は、ネットワーク番号(#20)、ノード番号(#2)、ユニット番号(0)となり、送信元アドレス部の内容はネットワーク番号(#20)、ノード番号(#1)、ユニット番号(0)となる。
図4(c)に示される通信フレームの具体例は、第2PLCのCPUユニットから第1PLCのCPUユニットに宛てて送信されるものであり、図4(d)に示される通信フレームdの具体例は、第1PLC(1−1)のCPUユニットから設定ツール2へと送信されるものである。なお、通信フレームa,bはコマンドデータを送信するものであり、通信フレームc,dはレスポンスデータを送信するものである。
次に、CPUユニットのハードウェア構成を示すブロック図が図5に示されている。同図に示されるように、CPUユニット内には、ユニット全体を統括制御するマイクロプロセッサ(MPU)101と、マイクロプロセッサ(MPU)101で実行されるべきシステムプログラムを格納するシステムプログラムメモリ(SROM)102と、ユーザプログラムを格納保存するためのバッファメモリ(BROM)103と、マイクロプロセッサ(MPU)101がシステムプログラムを実行する際のワークエリアとして使用されるワークメモリ(WRAM)104と、電源投入と共にバッファメモリ103からユーザプログラムが転送格納されるユーザメモリ(UM)105と、ユーザメモリ(UM)105から順次ユーザプログラムを構成する各命令語を読み出しては実行する命令実行回路(ASIC)106と、図示しない入出力ユニットの入出力状態を反映するためのIOメモリ(IOM)107とを含んで構成される。なお、この種のCPUユニットのハードウェア構成については、種々の文献において公知であるから、これ以上の説明は省略する。
次に、CPUユニットの動作概要を示すゼネラルフローチャートが図6に示されている。同図に示されるように、CPUユニットが実行するシステムプログラムの全体は、電源オン時処理(ステップ101)、共通処理(ステップ102)、演算処理(ステップ103)、I/Oリフレッシュ処理(ステップ104)、周辺サービス処理(ステップ105)とを含んで構成され、稼働中にあっては、上記4つの処理をサイクリックに実行するように構成されている(ステップ102〜105)。なお、この種の動作概要を示すゼネラルフローチャートについては、既に種々の公開公報などにより当業者にはよく知られているから、これ以上の説明は省略する。
なお、以後説明する本発明に係る通信処理については、周辺サービス処理(ステップ105)の内部において適宜に実行される。
次に、CPUユニットで実行される設定ツールからの通信フレーム受信時処理の詳細を示すフローチャートが図7に示されている。同図において処理が開始されると、まず、設定ツールより受信した通信フレームが解析される(ステップ201)。
続くステップ202では、宛先ネットワーク番号に特殊コードを含むか否かの判定が行われる。ここで「特殊コード」としては、この実施形態の場合には、ネットワーク番号の想定範囲(1番〜128番)を外れるようにして特殊コードが作られている。この特殊コードの作り方としては、例えば、目的とするネットワークに接続された通信ユニットのユニット番号に対して、「128」を加算して、その加算結果をネットワーク番号に相当する「特殊コード」とするように仕組まれている。例えば、ユニット番号が「3」とすると、これに「128」を加算することによって、ネットワーク番号である特殊コードは「131」となる。
特殊コードであるネットワーク番号(131)は、ネットワーク番号と与えられた数値「1」〜「128」の想定範囲外となる。一方、こうして得られた特殊コード「131」から「128」を減算すれば、元のユニット番号「3」を求めることができる。従って、この変換手法によれば、既存の通信アルゴリズム乃至システム構成を前提として、僅かな変更を加えるだけで、CPUユニットに対して、目的とするユニット番号を知らしめることができるのである。
ここで、宛先ネットワーク番号に特殊番号を含むものと判定されると(ステップ202YES)、ステップ209へ進んで、宛先ネットワーク番号を0とし、送信元ユニット番号を受信した通信ポートのユニット番号とされる(ステップ209)。
続いて、ステップ210では、特殊コードを含む宛先ネットワーク番号から、先に説明した手法によって、ユニット番号が復元される。
続くステップ211では、生成した通信フレームを求めたユニット番号に該当するユニットへ宛てて、システムバスへと送り出す。
この一連の処理(ステップ202,209,210,211)によって、ルーチングテーブルを使用することなく、設定ツールより受信した通信フレームを、該当するネットワークに対応した通信ユニットからネットワーク上へと送信することが可能となるのである。
一方、宛先ネットワーク番号に特殊コードを含まないと判定され(ステップ202NO)、さらに宛先ネットワーク番号がルーチングテーブルに存在すれば(ステップ203)、送信元ユニット番号を受信した通信ポートのユニット番号とすると共に(ステップ206)、ルーチングテーブルから宛先ネットワーク番号に対応するユニット番号を取得し(ステップ207)、さらに生成した通信フレームをルーチングテーブルより取得したユニット番号に該当するユニットへ送り出す処理が実行される(ステップ208)。
以上の一連の処理(ステップ202,203,206,207,208)は、いわゆるルーチングテーブルを利用した振り分け処理である。
なお、宛先ネットワーク番号に特殊コードが含まれておらず(ステップ202NO)、しかも宛先ネットワーク番号がルーチングテーブルに存在しなければ(ステップ203NO)、エラー応答の通信フレームが自動的に生成されると共に(ステップ204)、生成した通信フレームは受信したユニットへとシステムバス上へと送られる(ステップ205)。
次に、CPUユニットで実行される通信ユニットからの通信フレーム受信時処理の詳細を示すフローチャートが図8に示されている。同図において処理が開始されると、まず、受信した通信フレームの解析が行われる(ステップ301)。
続いて、ステップ302では、ルーチングが完了しているか否かの判定が行われる。ここで、ルーチングが完了しているものと判定されれば(ステップ302YES)、続いてステップ308へと移って、宛先ユニット番号がCPUユニットであるか否かの判定が行われる。
ここで、宛先ユニット番号がCPUユニットであると判定されると(ステップ308YES)、受信した通信フレームのデータ部に従った処理を実行し(ステップ310)、受信した通信フレームの宛先アドレス部と送信アドレス部とを入れ替え、かつ生成したレスポンスデータをデータ部に含め(ステップ311)、生成した通信フレームを受信したユニットへとシステムバス上へと送り出す処理が実行される(ステップ312)。
一方、宛先ユニット番号がCPUユニットでなければ(ステップ308)、宛先ユニット番号で示されるユニットへと当該通信フレームはシステムバス上へと送り出される(ステップ309)。
また、ルーチングが完了しておらず(ステップ302NO)、しかも宛先ネットワーク番号がルーチングテーブルに存在すれば(ステップ303YES)、ルーチングテーブルから宛先ネットワーク番号に対応するユニット番号を取得し(ステップ306)、ルーチングテーブルより取得したユニット番号に該当するユニットへとその通信フレームは転送される(ステップ307)。
以上の一連の処理(ステップ302,303,306,307)は、いわゆるルーチングテーブルを使用した振り分け処理である。
なお、ルーチングテーブルが完了しておらず(ステップ302NO)、しかも宛先ネットワーク番号がルーチングテーブルに存在しなければ(ステップ303NO)、エラー応答の通信フレームが生成されると共に(ステップ304)、こうして生成されたフレームは受信したユニットへと送り出される(ステップ305)。
次に、通信ユニットで実行される通信フレーム受信処理の詳細を示すフローチャートが図9に示されている。同図において処理が開始されると、まず、受信した通信フレームの解析が行われる(ステップ401)。
ここで、宛先ネットワーク番号が0、かつ宛先ノード番号が自身のノード番号であると判定されると(ステップ402YES)、そのフレームが自ユニット宛であれば(ステップ405YES)、自ユニットにて処理し、レスポンスフレームを作成し、回線側へと返送する処理が実行される(ステップ407)。これに対して、自ユニット宛でなければ(ステップ405NO)、ルーチング処理を完了し、転送依頼するために、CPUユニットへと送信する処理が実行される(ステップ406)。
以上一連の処理(ステップ402,405,407又は406)が、本発明と関連する部分であって、このような処理が存在することによって、宛先ネットワーク番号0に相当する既存の隠れモードを利用することにより、実際のネットワーク番号を参照することなく、通信ユニットからCPUユニットへの通信フレームの転送が可能となるのである。
なお、宛先ネットワーク番号が0、かつ、宛先ノード番号が自身のノード番号でないとしても(ステップ402NO)、宛先ネットワーク番号、ノード番号が自身のネットワーク番号、ノード番号と一致すれば(ステップ403YES)、同様にして自ユニット宛か否かに応じて(ステップ405)、該当する処理が実行される(ステップ406又は407)。
なお、宛先ネットワーク番号が0、かつ、宛先ノード番号が自身のノード番号でなく(ステップ402NO)、しかも宛先ネットワーク番号、ノード番号が自身のネットワーク番号、ノード番号と一致しなければ(ステップ403NO)、CPUユニットへルーチング処理依頼するためにCPUユニットへと当該通信フレームを送り出す(ステップ404)。
設定ツールのハードウェア構成を示すブロック図が図10に示されている。同図に示されるように、設定ツール2は、PLC1と接続するものであり、またそのハードウェア構成としては、マイクロプロセッサ(MPU)201と、RAM202と、ディスプレイ203と、ディスプレイコントローラ204と、補助記憶装置205と、キーボード206と、ポインティングデバイス207と、通信インタフェース208とを含んで構成される。この設定ツール2としては、具体的には、パソコンのハードウェア構成をそのまま利用してもよく、あるいは専用のプログラミングツールとして特注してもよいであろう。
次に、設定ツールに関する構成が図11及び図12を参照して示されている。図11に示されるように、設定ツールの機能構成については、ルーチングテーブル設定制御部251によって、ルーチングテーブル選択処理部252、送信先選択処理部253、通信フレーム生成処理部254、及び通信フレーム受信処理部255が統括管理され、ユーザが設定ツールのルーチングテーブル設定機能を選択することにより、ルーチングテーブル設定制御部251が起動される。
また、ルーチングテーブル選択処理部252によって、ルーチングテーブル選択画面生成処理部256及びルーチングテーブル選択画面入力処理部257が統括管理される。具体的には、ルーチングテーブル選択処理部252は、補助記憶装置に格納されているルーチングテーブルを取得し、取得したルーチングテーブルをルーチングテーブル選択画面生成処理部254へ渡す。ルーチングテーブル選択画面生成処理部254は、ルーチングテーブルを所定のフォーマットに加工し、その表示処理を画面表示処理部263へ指示する。画面表示処理部263は、指示された内容に従って、ディスプレイコントローラを介してディスプレイへ表示する。ルーチングテーブル選択画面入力処理部257は、マウス等のポインティングデバイスやキーボードからの入力データを取得し、その入力データをルーチングテーブル選択処理部252へ渡す。
同様にして、送信先選択処理部253によって、送信先選択画面生成処理部258、及び送信先選択画面入力処理部259が統括管理される。具体的には、送信先選択処理部253は、補助記憶装置に格納されている送信先を取得し、取得した送信先を送信先選択画面生成処理部258へ渡す。送信先選択画面生成処理部258は、送信先を所定のフォーマットに加工し、その表示処理を画面表示処理部263へ指示する。画面表示処理部263は、指示された内容に従って、ディスプレイコントローラを介してディスプレイへ表示する。送信先選択画面入力処理部259は、マウス等のポインティングデバイスやキーボードからの入力データを取得し、その入力データを送信先選択処理部253へ渡す。
さらに、通信フレーム生成処理部254によって通信フレーム制御処理部260が管理され、同様に通信フレーム受信処理部255によって、通信フレーム解釈処理部261が制御され、通信フレーム解釈処理部261によって通信フレーム解釈処理結果表示画面生成処理部262が制御される。
その結果として、ルーチングテーブル選択画面生成処理部256、送信先選択画面生成処理部258、通信フレーム解釈処理結果表示画面生成処理部262と、画面表示処理部263とが協働することによって、ツール装置を構成するパソコンの画面上には、各種の案内表示や入力表示が行われることとなる。
次に、設定ツールのソフトウェア構成を示すブロック図が図12に示されている。同図において処理が開始されると、まずステップ501では、ルーチングテーブルの選択画面が表示される。すなわち、この実施形態においては、PLCネットワークシステムにおいて、まず個々のPLCにルーチングテーブルが未設定の状態にあり、そのためそれらPLCの何れか1つに設定ツールを図1のごとく接続することにより、設定ツールから送り出されたルーチングテーブルを、個々のPLCへと転送して自動的に設定を行おうとするものである。
ここで、ステップ501におけるルーチングテーブルの選択画面の表示とは、個々のPLCに転送されるべきルーチングテーブルを選択するためのものである。
この状態において、オペレータは、各PLCと関連づけながら、必要なルーチングテーブルを選択し、マウスやキーボードの操作によって、選択状態を確定する。
すると、ステップ502へ進んで、選択されたルーチングテーブルに基づき通信フレームのデータ部の構成が作成される。すなわち、選択されたルーチングテーブルの内容が、先に図3を参照して説明したデータ部に格納されるわけである。
このようにしてデータ部の作成が完了すると、パソコンの画面上には、送信先選択画面が案内表示される(ステップ503)。この案内画面は、PLCのシステム系統図として行ってもよいし、PLCのリストを表示する形でもよいであろう。この状態において、オペレータは、そのルーチングテーブルを送信しようとするノード(PLC又はその他の機器)をマウスやキーボードを利用して選択及び確定する。続くステップ504では、オペレータは、送信先に相当するノード内の各ユニットに対し、ユニット番号及びノード番号の入力を行う。すると、先に説明したように、入力されたユニット番号に対して一定値(例えば、「128」)を加算することによって、ネットワーク番号の想定範囲外となる特殊コードがネットワーク番号として生成される。
そして、以上求めた、特殊コードの形のネットワーク番号、ノード番号を用いて、通信フレームが生成される。この通信フレームにおいては、特殊コードの形で表されたネットワーク番号と、目的とする送信先ユニットにかかるノード番号とが含まれる。
ここで特殊コードは、特殊コードにユニット番号を加えた値が、0やネットワーク番号として利用可能な番号と重複しないようにするコードであれば良い。また、宛先ノード番号はノード番号2とし、宛先ユニット番号、送信元ネットワーク番号、送信元ノード番号、送信元ユニット番号は、初期値を0とする。
続くステップ505では、こうして作成された通信フレームは所定の通信コードを介してCPUユニットへと送り込まれることとなる。以後、CPUユニット側はどのようにこれを処理するかについては、先に詳細に説明したとおりであるから重ねて説明は省略する。
このように、以上の実施形態によれば、複数のPLCをネットワークで結んでなるPLCシステムにおいて、特定のPLCのCPUユニットに対し設定ツールを接続し、ユニット番号とノード番号とを入力するだけで、CPUユニットに対しては特殊コードとノード番号とを含む通信フレームが送り込まれ、これをCPUユニット側が逆算して処理することによって、ユニット番号を復元してPLC内におけるユニット振り分け処理を適切に行うのである。
そのため、この実施形態によれば、未だルーチングテーブルが未設定の状態にあるPLCシステムにおいても、特定のPLCを介してネットワーク上に接続された複数のPLCへとルーチングテーブルを利用することなく任意のデータを送り込むことができるから、これにルーチングテーブルをデータとして送り込めば、従前問題とされたルーチングテーブルの個別設定処理が不要となり、この種の設定処理の効率を著しく向上させることができる。
この発明によれば、2以上の通信ユニットを含むビルディングブロックタイプのPLCを含むPLCシステムにおいて、ルーチングテーブルを使用することなく、個々のPLC内におけるフレームのユニット振り分けを行わせることができるから、これを利用すれば、ルーチングテーブル設定前のPLCシステムにおけるルーチングテーブルの設定を、個々のPLCの設置場所に出向くことなく、通信を介して効率よくかつ迅速に行うことが可能となる。
本発明が適用されたPLCシステムの構成図である。 ルーチングテーブルの構成例を示す図である。 通信フレームの構成を説明する図である。 通信フレームの具体例を示す図である。 CPUユニットのハードウェア構成を示すブロック図である。 CPUユニットの動作概要を示すゼネラルフローチャートである。 CPUユニットで実行される設定ツールからの通信フレーム受信時処理の詳細を示すフローチャートである。 CPUユニットで実行される通信ユニットからの通信フレーム受信時処理の詳細を示すフローチャートである。 通信ユニットで実行される通信フレーム受信処理の詳細を示すフローチャートである。 設定ツールのハードウェア構成を示すブロック図である。 設定ツールの機能構成を示すブロック図である。 設定ツールのソフトウェア構成を示すブロック図である。
符号の説明
1−1〜1−5 第1PLC〜第5PLC
2 設定ツール
101 マイクロプロセッサ
102 システムプログラムメモリ
103 バッファユーザメモリ
104 ワーキングメモリ
105 ユーザメモリ
106 命令実行回路
107 IOメモリ
201 マイクロプロセッサ
202 RAM
203 ディスプレイ
204 ディスプレイコントローラ
205 補助記憶装置
206 キーボード
207 ポインティングデバイス
208 通信インタフェース
U0 電源ユニット
U1 CPUユニット
U2 入力ユニット
U3 出力ユニット
U4 通信ユニット

Claims (2)

  1. CPUユニットと、1又は2以上の入力又は出力ユニットと、1又は2以上の通信ユニットと、それらのユニット同士を内部で接続する内部システムバスとを少なくとも含み、
    CPUユニットには、ツール装置等の外部機器との通信を行うための通信用ポートが設けられ、かつ通信用ユニットのそれぞれには、他のPLCなどが接続されたネットワークに接続するための通信用ポートが設けられたルーチングテーブル方式の通信に対応可能なPLCであって
    前記外部機器や他のPLCとの通信は、各通信用ポートを介して送受信される通信フレームにより行われ、
    前記通信用フレームは、宛先ネットワーク番号と宛先ノード番号と宛先ユニット番号とを含む宛先アドレス部と、送信元ネットワーク番号と送信元ノード番号と送信元ユニット番号とを含む送信元アドレス部と、コマンドデータ又はレスポンスデータを含むデータ部とから構成され、
    前記CPUユニットには、
    前記通信用ポートを介して到来した通信フレームについて、宛先ネットワーク番号がネットワーク番号として使用される範囲内の値であるか否かを判定する第1のCPU側判定手段と、
    前記第1のCPU側判定手段により宛先ネットワーク番号がネットワーク番号として使用される範囲内の値であると判定された場合には、宛先ネットワーク番号に対応するネットワークへと接続された自機内通信ユニットへ当該通信フレームを転送する第1のCPU側通信フレーム転送手段と、
    前記第1のCPU側判定手段により宛先ネットワーク番号がネットワーク番号として使用される範囲外の特殊コードが含まれていると判定された場合には、当該特殊コードから所定のルールに従って得られたユニット番号に基づき、得られたユニット番号に対応する自機内通信ユニットに宛てて、宛先ネットワーク番号を0に変更した当該通信フレームを内部システムバスを介して転送する第のCPU側通信フレーム転送手段と、
    前記内部システムバスを介して到来した通信フレームについて、ルーチングが完了しているか否かを判定する第2のCPU側判定手段と、
    前記第2のCPU側判定手段によりルーチングが完了していると判定されときには、宛先ユニット番号がCPUユニットであれば、受信した通信フレームのデータ部にしたがった処理を実行すると共に、受信した通信フレームの宛先アドレスと送信アドレスとを入れ替えかつ生成したレスポンスデータをデータ部に含めてレスポンスフレームを生成し、生成されたレスポンスフレームを受信したユニットへ宛てて内部システムバスへと転送する一方、宛先ユニットがCPUユニットでなければ、その通信フレームを宛先ユニット番号で示されるユニットへ宛てて内部システムバスへと転送する第3のCPU側通信フレーム転送手段と、が設けられ、
    前記通信ユニットには、
    前記CPUユニットより転送された通信フレームをネットワークへと送信する通信ユニット側通信フレーム送信手段と、
    前記通信ポートを介してネットワークから到来した前記通信フレームについて、宛先ネットワーク番号が0で、かつ、宛先ノード番号が自身のノード番号であるか否かを判定する通信ユニット側判定手段と、
    前記通信ユニット側判定手段により宛先ネットワーク番号が0で、かつ、宛先ノード番号が自身のノード番号であると判定されときには、自ユニット宛であれば、自ユニットにて処理し、レスポンスフレームを作成してネットワーク側へと返送する一方、自ユニット宛でなければ、ルーチング処理を完了し、転送依頼するためにCPUユニットへ宛てて内部システムバスへと転送する通信ユニット側転送手段と、
    が含まれている、ことを特徴とするPLC。
  2. 複数のPLCを含むネットワークに任意のPLCを介して接続されるツール装置であって、
    前記PLCは、CPUユニットと、1又は2以上の入力又は出力ユニットと、1又は2以上の通信ユニットと、それらのユニット同士を内部で接続する内部システムバスとを少なくとも含み、CPUユニットには、ツール装置等の外部機器との通信を行うための通信用ポートが設けられ、かつ通信用ユニットのそれぞれには、他のPLCなどが接続されたネットワークに接続するための通信用ポートが設けられており、
    前記ツール装置は、演算手段と、記憶手段と、入力手段と、表示手段と、通信用ポートとを有し、
    前記PLCと前記ツール装置は通信ケーブルを介して通信用ポートにより接続され、通信フレームを送受信することにより通信処理が行われ、
    前記通信用フレームは、宛先ネットワーク番号と宛先ノード番号と宛先ユニット番号とを含む宛先アドレス部と、送信元ネットワーク番号と送信元ノード番号と送信元ユニット番号とを含む送信元アドレス部と、コマンドデータ又はレスポンスデータを含むデータ部とから構成され、
    前記演算手段は、
    ルーチングテーブルの選択画面を前記表示部に表示する第1の案内表示手段と、
    前記第1の案内表示手段にて表示された中から選択されたルーチングテーブルに基づいて、前記通信フレームのデータ部を作成するデータ部作成手段と、
    前記通信フレームの送信先を選択するための送信先選択画面を前記表示部に表示する第2の案内表示手段と、
    前記第2の案内表示手段にて表示された案内表示に基づき、前記入力手段により所定の入力操作により選択された送信先に対応するユニット番号とノード番号とに基づいて通信フレームを宛先アドレス部を作成する宛先アドレス部作成手段と、
    予め設定された自機のアドレス情報を送信元アドレス部とし、前記データ部作成手段で作成されたデータ部と、前記宛先アドレス部作成手段で作成された宛先アドレス部と合わせて通信フレームを生成する通信フレーム生成手段と、
    前記通信フレーム生成手段で生成された通信フレームを送信する送信手段と、を具備し、
    前記通信フレーム生成手段は、
    生成される通信フレームの送信先が、直接接続されたPLC、若しくはルーチングテーブルに登録されたネットワークである場合には、前記宛先ネットワーク番号として送信先に対応するネットワーク番号を用い、
    生成される通信フレームの送信先が、直接接続されたPLCではなく、また、ルーチングテーブルに登録されたネットワークでもない場合には、前記直接接続されたPLCの当該通信フレーム送信先が含まれるネットワークに接続された通信用ユニットに与えられたユニット番号に基づいて生成されたネットワーク番号として使用される範囲外の値を前記宛先ネットワーク番号として用いる、ことを特徴とするツール装置。
JP2007199382A 2007-07-31 2007-07-31 Plc Active JP4952926B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007199382A JP4952926B2 (ja) 2007-07-31 2007-07-31 Plc

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007199382A JP4952926B2 (ja) 2007-07-31 2007-07-31 Plc

Publications (2)

Publication Number Publication Date
JP2009037319A JP2009037319A (ja) 2009-02-19
JP4952926B2 true JP4952926B2 (ja) 2012-06-13

Family

ID=40439182

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007199382A Active JP4952926B2 (ja) 2007-07-31 2007-07-31 Plc

Country Status (1)

Country Link
JP (1) JP4952926B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014155627A1 (ja) 2013-03-28 2014-10-02 三菱電機株式会社 ネットワークユニット
JP2018045399A (ja) * 2016-09-14 2018-03-22 株式会社日立産機システム プログラマブルコントローラ
CN109343460B (zh) * 2018-11-23 2023-07-25 无锡信捷电气股份有限公司 用于建立与plc通信的方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3642594B2 (ja) * 1995-01-10 2005-04-27 オムロン株式会社 開発支援装置
JP3946312B2 (ja) * 1997-07-15 2007-07-18 富士電機ホールディングス株式会社 Pcのリモート支援システム及びその方法
JP4450167B2 (ja) * 2003-10-22 2010-04-14 オムロン株式会社 プログラマブル表示器
JP4147430B2 (ja) * 2005-03-01 2008-09-10 オムロン株式会社 プログラマブル・コントローラ・システム

Also Published As

Publication number Publication date
JP2009037319A (ja) 2009-02-19

Similar Documents

Publication Publication Date Title
JP5005010B2 (ja) 設備制御装置
KR20160087706A (ko) 가상화 플랫폼을 고려한 분산 데이터 처리 시스템의 자원 할당 장치 및 할당 방법
CN100533375C (zh) 自动布置方法和自动布置装置
JP4952926B2 (ja) Plc
CN105677605A (zh) 一种高效的可配置片上互联系统及其实现方法、装置
CN110480633B (zh) 一种控制设备的方法、装置及存储介质
CN109696832B (zh) 用于支持自动化系统的安装过程的方法
CN102809957A (zh) 用于标识基金会现场总线链接装置的系统和方法
JP2820189B2 (ja) 数値制御装置の制御ソフトウェア実行システム
JP2011186607A (ja) フィールドデバイス、フィールドデバイスの設定方法、フィールドデバイス管理装置及びプログラム
JP2007221364A (ja) コントローラ、制御システム及び制御装置の拡張方法
JP6662819B2 (ja) 制御システム
CN102809955A (zh) 用于对基金会现场总线链接装置进行写保护的系统和方法
WO2016042918A1 (ja) 情報処理装置およびその制御方法と制御プログラム
JP2008299763A (ja) 分散オブジェクト開発ツール
JP6985706B2 (ja) 情報処理システム
JPWO2020079730A1 (ja) エンジニアリングツール、コンピュータシステム、システム及びプログラム
JPH1139007A (ja) Pcのリモート支援システム及びその方法
WO2022049885A1 (ja) 制御装置
US20230405825A1 (en) Robot control device, robot control system, and robot control method
CN108415701B (zh) 信息处理装置与系统、以及用户界面制作方法与存储介质
CN114095303B (zh) 通信设备、数据传输方法及电子设备
JP4121987B2 (ja) 機器制御システム
JP4379710B2 (ja) ノードおよびツールならびにネットワークシステムおよび共有データの通信方法
KR20060126065A (ko) 폴링 메시지 처리 장치 및 그 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100511

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110623

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110629

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110829

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: 20120215

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: 20120228

R150 Certificate of patent or registration of utility model

Ref document number: 4952926

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150323

Year of fee payment: 3