JP2009037319A - Plc - Google Patents

Plc Download PDF

Info

Publication number
JP2009037319A
JP2009037319A JP2007199382A JP2007199382A JP2009037319A JP 2009037319 A JP2009037319 A JP 2009037319A JP 2007199382 A JP2007199382 A JP 2007199382A JP 2007199382 A JP2007199382 A JP 2007199382A JP 2009037319 A JP2009037319 A JP 2009037319A
Authority
JP
Japan
Prior art keywords
unit
communication
cpu
frame
plc
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.)
Granted
Application number
JP2007199382A
Other languages
English (en)
Other versions
JP4952926B2 (ja
Inventor
Sumito Shirane
角人 白根
Masahiro Sugano
雅弘 菅野
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
Omron Tateisi Electronics Co
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, Omron Tateisi Electronics Co 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)

Abstract

【課題】2以上の通信ユニットを含むビルディングブロック型PLCを複数ネットワークで接続したPLCシステムにおいて、ルーチングテーブルを使用することなく、PLC内における通信フレームの振り分けを可能とすること。
【解決手段】設定ツールからCPUユニットに送り込まれる通信フレームのネットワークアドレスに想定外の特殊コードを含ませ、これを一定のルールで処理することでユニット番号を復元可能とし、復元されたユニット番号で通信フレームのネットワーク振り分けを可能とする。
【選択図】図7

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 (3)

  1. 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ユニットへ宛てて内部システムバスへと転送する通信ユニット側転送手段と、
    が含まれている、ことを特徴とするPLC。
  2. CPUユニットと、1又は2以上の入力又は出力ユニットと、1又は2以上の通信ユニットと、それらのユニット同士を内部で接続する内部システムバスとを少なくとも含み、
    CPUユニットには、ツール装置等の外部機器との通信を行うための通信用ポートが設けられ、かつ通信用ユニットのそれぞれには、ネットワークに接続するための通信用ポートが設けられたPLCに通信ケーブルを介して接続されるツール装置であって、
    ルーチングテーブルの選択画面を表示する第1の案内表示手段と、
    選択されたルーチングテーブルに基づいて、通信フレームのデータ部を作成するデータ部作成手段と、
    送信先選択画面を表示する第2の案内表示手段と、
    入力されたユニット番号とノード番号とに基づいて通信フレームを生成する通信フレーム生成手段と、
    生成された通信フレームを送信する送信手段と、
    を具備する、ことを特徴とするPLCのツール装置。
  3. 通信フレーム生成手段は、
    与えられたユニット番号に基づいて、想定範囲外のネットワーク番号を生成する、ことを特徴とする請求項2に記載の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 true JP2009037319A (ja) 2009-02-19
JP4952926B2 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)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018045399A (ja) * 2016-09-14 2018-03-22 株式会社日立産機システム プログラマブルコントローラ
US10133252B2 (en) 2013-03-28 2018-11-20 Mitsubishi Electric Corporation Network unit
CN109343460A (zh) * 2018-11-23 2019-02-15 无锡信捷电气股份有限公司 用于建立与plc通信的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08190484A (ja) * 1995-01-10 1996-07-23 Omron Corp 開発支援装置
JPH1139007A (ja) * 1997-07-15 1999-02-12 Fuji Electric Co Ltd Pcのリモート支援システム及びその方法
JP2005128720A (ja) * 2003-10-22 2005-05-19 Omron Corp プログラマブル表示器
JP2006277728A (ja) * 2005-03-01 2006-10-12 Omron Corp プログラマブル・コントローラ・システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08190484A (ja) * 1995-01-10 1996-07-23 Omron Corp 開発支援装置
JPH1139007A (ja) * 1997-07-15 1999-02-12 Fuji Electric Co Ltd Pcのリモート支援システム及びその方法
JP2005128720A (ja) * 2003-10-22 2005-05-19 Omron Corp プログラマブル表示器
JP2006277728A (ja) * 2005-03-01 2006-10-12 Omron Corp プログラマブル・コントローラ・システム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10133252B2 (en) 2013-03-28 2018-11-20 Mitsubishi Electric Corporation Network unit
JP2018045399A (ja) * 2016-09-14 2018-03-22 株式会社日立産機システム プログラマブルコントローラ
CN109343460A (zh) * 2018-11-23 2019-02-15 无锡信捷电气股份有限公司 用于建立与plc通信的方法
CN109343460B (zh) * 2018-11-23 2023-07-25 无锡信捷电气股份有限公司 用于建立与plc通信的方法

Also Published As

Publication number Publication date
JP4952926B2 (ja) 2012-06-13

Similar Documents

Publication Publication Date Title
CN105677605A (zh) 一种高效的可配置片上互联系统及其实现方法、装置
TWI534569B (zh) 控制裝置、開發裝置,及開發程式
JP4952926B2 (ja) Plc
CN110480633B (zh) 一种控制设备的方法、装置及存储介质
JP2007221364A (ja) コントローラ、制御システム及び制御装置の拡張方法
JP2007102632A (ja) シミュレーション装置
JP2011186607A (ja) フィールドデバイス、フィールドデバイスの設定方法、フィールドデバイス管理装置及びプログラム
KR20110020395A (ko) 컴퓨터시스템 및 그 제어방법
JP6662819B2 (ja) 制御システム
WO2016042918A1 (ja) 情報処理装置およびその制御方法と制御プログラム
WO2012049773A1 (ja) プログラマブルコントローラ
JP2008299763A (ja) 分散オブジェクト開発ツール
KR101133592B1 (ko) 폴링 메시지 처리 장치 및 그 방법
CN105578352B (zh) 一种音箱重启的控制方法、装置及移动终端、音箱和系统
JPH1139007A (ja) Pcのリモート支援システム及びその方法
JPWO2020079730A1 (ja) エンジニアリングツール、コンピュータシステム、システム及びプログラム
JP6985706B2 (ja) 情報処理システム
WO2022049885A1 (ja) 制御装置
JP4121987B2 (ja) 機器制御システム
KR20110114240A (ko) 멀티 코어 사이의 데이터 전송 장치 및 방법
JP4379710B2 (ja) ノードおよびツールならびにネットワークシステムおよび共有データの通信方法
JP2009265750A (ja) Plcのプログラム開発支援装置
JP5663418B2 (ja) プラント制御システム
JP5538742B2 (ja) メッセージ通信装置及びその処理方法
KR20110023415A (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