JP2014120187A - 制御システム、マスターモジュール、および、リフレッシュ方法 - Google Patents

制御システム、マスターモジュール、および、リフレッシュ方法 Download PDF

Info

Publication number
JP2014120187A
JP2014120187A JP2012274624A JP2012274624A JP2014120187A JP 2014120187 A JP2014120187 A JP 2014120187A JP 2012274624 A JP2012274624 A JP 2012274624A JP 2012274624 A JP2012274624 A JP 2012274624A JP 2014120187 A JP2014120187 A JP 2014120187A
Authority
JP
Japan
Prior art keywords
refresh
input
module
cycle
slave modules
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
JP2012274624A
Other languages
English (en)
Other versions
JP6036256B2 (ja
Inventor
Kazuto Nagatsuka
一人 永塚
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.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co Ltd
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 Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP2012274624A priority Critical patent/JP6036256B2/ja
Publication of JP2014120187A publication Critical patent/JP2014120187A/ja
Application granted granted Critical
Publication of JP6036256B2 publication Critical patent/JP6036256B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Programmable Controllers (AREA)
  • Selective Calling Equipment (AREA)
  • Dram (AREA)

Abstract

【課題】タクト時間を短縮し、制御システム全体の高精度化および生産性の向上を図る。
【解決手段】CPUモジュール122は、リフレッシュ周期が等しい入出力モジュールをグループ化するグループ化部172と、グループ化されたグループ毎に、リフレッシュタイミングが偏らないようにリフレッシュ周期の位相を分散させるスケジュール部174と、分散された位相に基づいて複数の入出力モジュールをリフレッシュするリフレッシュ実行部176とを備える。
【選択図】図3

Description

本発明は、マスターモジュールが複数のスレーブモジュールそれぞれをリフレッシュする制御システム、マスターモジュール、および、リフレッシュ方法に関する。
大規模な制御システムでは、システムの構築やメンテナンスの容易性の観点からコントローラの階層構造がとられ、階層間はネットワークにより接続される。例えば、制御システムでは、1の管理装置に対して複数のプログラマブルコントローラがネットワークを介して接続され、それぞれのプログラマブルコントローラに1または複数の被制御機器が接続される。そして、プログラマブルコントローラは、上位の管理装置から制御指令を受けて、その制御指令を解析し、下位の被制御機器を制御する。
また、プログラマブルコントローラでは、CPUモジュール、通信モジュール、入出力モジュール、電源モジュールといった複数種類のモジュールが分散配置され、それぞれのモジュール数を調整することで、メンテナンスやシステムの拡張を容易にしている。したがって、プログラマブルコントローラにおいて下位の被制御機器を制御する場合、CPUモジュールが、上位の管理装置から制御指令を受けて制御指令を解析し、入出力モジュールを通じて被制御機器に制御指令を伝達する。
上記入出力モジュールでは、CPUモジュールと被制御機器との情報交換のため(CPUモジュールに被制御機器の検知結果を入力したり、被制御機器に制御指令を出力するため)リフレッシュが必要となる。上記CPUモジュールは、同プログラマブルコントローラに含まれる複数の入出力モジュール全てのリフレッシュを実行管理する。
例えば、リフレッシュ周期を概算し、その概算されたリフレッシュ周期で入出力モジュールをリフレッシュし、そのリフレッシュ周期が適当であるか否かを判定しながらリフレッシュ周期を調整する技術が開示されている(例えば、特許文献1)。
ところで、CPUモジュールと入出力モジュールとが、Ethernet(登録商標)等、1の通信時には帯域が占有されてしまうネットワークで接続されている場合、複数の入出力モジュールを一度にリフレッシュすることができない。したがって、複数の入出力モジュールのいずれに対してリフレッシュを行うか、その順番をスケジューリングし、CPUモジュールは、かかるスケジュールに従って入出力モジュールを管理していた。
特開昭62−271591号公報
入出力モジュールは、CPUモジュールと被制御機器の情報交換タイミングによって、リフレッシュが必要な時間間隔が異なる。CPUモジュールは、不要なリフレッシュを回避すべく、入出力モジュール毎に定められたリフレッシュ周期に基づいて、リフレッシュのスケジューリングを行う。
しかし、複数の入出力モジュールのリフレッシュタイミングを単純に分散させてスケジューリングすると、複数の入出力モジュールのリフレッシュタイミングが重なり、CPUモジュールにおけるプログラムの実行周期であるタクト時間を超過する場合が生じうる。したがって、全ての入出力モジュールのリフレッシュタイミングが重なった場合でもタクト時間を超過しないように、タクト時間を十分に長くとる必要がある。
しかし、近年、制御システムの大規模化および複雑化により入出力モジュールの数が増える傾向にある。このとき上記のようなスケジューリングでは、増設した入出力モジュールの分だけ単純にタクト時間が長期化されることになる。一方で、制御システムの高精度化および生産性の向上も望まれ、タクト時間の短縮化が希求されている。
そこで、本発明は、このような課題に鑑み、タクト時間を短縮し、制御システム全体の高精度化および生産性の向上を図ることが可能な制御システム、マスターモジュール、および、リフレッシュ方法を提供することを目的としている。
上記課題を解決するために、リフレッシュ周期が、プログラムの実行周期であるタクト時間と整数値との積で表され、整数値が個々に設定される複数のスレーブモジュールと、スレーブモジュールそれぞれに設定されたリフレッシュ周期に応じて、スレーブモジュールをリフレッシュするマスターモジュールと、を備えた本発明の制御システムでは、マスターモジュールは、リフレッシュ周期が等しいスレーブモジュールをグループ化するグループ化部と、グループ化されたグループ毎に、リフレッシュタイミングが偏らないようにリフレッシュ周期の位相を分散させるスケジュール部と、分散された位相に基づいて複数のスレーブモジュールをリフレッシュするリフレッシュ実行部と、を備えることを特徴とする。
スケジュール部は、グループ内におけるスレーブモジュールのリフレッシュ周期の位相をタクト時間ずつシフトさせてもよい。
スケジュール部は、グループ内のスレーブモジュールの総数が整数値より大きい場合、スレーブモジュールの総数を整数値で除算した商に整数値を乗じた数のスレーブモジュールについて、リフレッシュ周期の位相を均等に分散させ、除算した余りのスレーブモジュールについて、リフレッシュタイミングが偏らないようにリフレッシュ周期の位相を分散させてもよい。
上記課題を解決するために、複数のスレーブモジュールに個々に設定され、プログラムの実行周期であるタクト時間と整数値との積で表されたリフレッシュ周期に応じて、スレーブモジュールをリフレッシュする本発明のマスターモジュールは、リフレッシュ周期が等しいスレーブモジュールをグループ化するグループ化部と、グループ化されたグループ毎に、リフレッシュタイミングが偏らないようにリフレッシュ周期の位相を分散させるスケジュール部と、分散された位相に基づいて複数のスレーブモジュールをリフレッシュするリフレッシュ実行部と、を備えることを特徴とする。
上記課題を解決するために、リフレッシュ周期が、プログラムの実行周期であるタクト時間と整数値との積で表され、整数値が個々に設定される複数のスレーブモジュールと、スレーブモジュールを制御するマスターモジュールを用いて、スレーブモジュールそれぞれに設定されたリフレッシュ周期に応じて、マスターモジュールがスレーブモジュールをリフレッシュする本発明のリフレッシュ方法では、マスターモジュールが、リフレッシュ周期が等しいスレーブモジュールをグループ化し、グループ化したグループ毎に、リフレッシュタイミングが偏らないようにリフレッシュ周期の位相を分散させ、分散した位相に基づいて複数のスレーブモジュールをリフレッシュすることを特徴とする。
本発明によれば、タクト時間を短縮し、制御システム全体の高精度化および生産性の向上を図ることが可能となる。
制御システムを構成する各装置の概略的な関係を示した外観図である。 制御システムの概略的な構成を示した説明図である。 CPUモジュールのハードウェア構成の一例を示す図である。 リフレッシュ周期リストを説明するための説明図である。 グループ化部の動作を説明するための説明図である。 スケジュール部の動作を説明するための説明図である。 スケジュール部の動作を説明するための説明図である。 スケジュール部の他の動作を説明するための説明図である。 スケジュール部の他の動作を説明するための説明図である。 リフレッシュ方法の処理の流れを示したフローチャートである。
以下に添付図面を参照しながら、本発明の好適な実施形態について詳細に説明する。かかる実施形態に示す寸法、材料、その他具体的な数値などは、発明の理解を容易とするための例示にすぎず、特に断る場合を除き、本発明を限定するものではない。なお、本明細書および図面において、実質的に同一の機能、構成を有する要素については、同一の符号を付することにより重複説明を省略し、また本発明に直接関係のない要素は図示を省略する。
大規模なプラント等に適用される制御システムでは、そのシステム全体の処理の複雑さや物理的配置の関係により、複数の制御ユニットによる制御アプリケーションの分割制御が行われる。ここで、制御ユニットは、主として、プログラマブルコントローラ、および、プログラマブルコントローラに制御される被制御機器との組み合わせを示す。制御システムでは、このような制御ユニットが複数準備され、当該制御システム全体の制御を担う管理装置に接続される。以下、制御システムを構成する各装置を説明する。
(制御システム100)
図1は、制御システム100を構成する各装置の概略的な関係を示した外観図であり、図2は、制御システム100の概略的な構成を示した説明図である。制御システム100は、管理装置110と、1または複数のプログラマブルコントローラ120と、1または複数の被制御機器130とを含んで構成される。また、管理装置110と複数のプログラマブルコントローラ120とは、例えば、ギガ(G)ベース等のEthernet(登録商標)によるネットワーク配線140によって互いに接続される。さらに、複数のプログラマブルコントローラ120と複数の被制御機器130とは、例えば、専用の接続配線142を通じて通信可能に接続されている。
管理装置110は、制御システム100全体がアプリケーションに定められた工程の流れに沿って動作するように、複数のプログラマブルコントローラ120を一括して制御する。例えば、管理装置110は、個々のプログラマブルコントローラ120からステータス情報や制御結果を収集したり、その収集した内容に応じて、個々のプログラマブルコントローラ120に各種制御指令を出力したりする。
プログラマブルコントローラ120は、PLC(Programmable Logic Controller)とも呼ばれ、図2に示すように、CPUモジュール122、通信モジュール124、入出力(I/O)モジュール126、電源モジュール128等の複数のモジュールを含んで構成される。また、電源モジュール128を除く各モジュール同士は、管理装置110との接続同様、例えば、Ethernet(登録商標)によるネットワーク配線140によって互いに接続される。
ここで、CPUモジュール122は、アプリケーションを実現するために、それぞれの制御ユニット用に分割された実行プログラムを管理装置110からダウンロードし、その実行プログラムを遂行したり、制御ユニットの動作状況を不図示のモニタに表示したりする。その際、管理装置110から受信した制御指令、入出力モジュール126を通じて入力された被制御機器130のセンサ検出結果等に基づいて被制御機器130を制御する。また、CPUモジュール122は、自己の状態を示すステータス情報、センサの検出結果、制御結果等のデータを管理装置110に送信する。
通信モジュール124は、Ethernet(登録商標)を通じて、管理装置110、他のプログラマブルコントローラ120、および、他のモジュールに接続され、それぞれと通信を確立することができる。
入出力モジュール126は、被制御機器130に対して入出力の管理を行う。例えば、被制御機器130がセンサであれば、センサ検出結果を収集し、電動機であれば、ディスクリートで表される制御指令を送信するとともに、その制御結果を収集する。電源モジュール128は、CPUモジュール122、通信モジュール124、入出力モジュール126等の各モジュールに電力を供給する。
図1に戻って、被制御機器130は、FA(Factory Automation)における様々な状態を検知するセンサ、そのセンサの検知結果に応じて動作する電動機、エンコーダ等の電気機器で構成される。
このような制御システム100は、様々な制御対象に適用できる。例えば、生産実行システム(MES:Manufacturing Execution System)に制御システム100を適用した場合、被制御機器130としての、モーションコントロールユニット、センタシーラユニット(Center Sealer Unit)、および、フィルムユニット(Film Unit)等の生産機器にプログラマブルコントローラ120を接続する。
例えば、プログラマブルコントローラ120は、入出力モジュール126等から生産機器の動作状態を読み出し、モータドライバ等を通じて生産機器内の電動機を回転制御する。管理装置110は、各プログラマブルコントローラ120単位の情報の収集および制御指令の送信を実行する。こうして、制御システム100全体として、工程管理、品質管理、製造量管理等の生産支援管理を総合的に行うことが可能となる。
(リフレッシュ処理)
ところで、プログラマブルコントローラ120内の入出力モジュール126では、CPUモジュール122と被制御機器130との情報交換のためリフレッシュが必要となる。ここでは、リフレッシュ対象であるスレーブモジュールとして、入出力モジュール126を例示し、その入出力モジュール126(スレーブモジュール)に対してリフレッシュを実行するマスターモジュールとしてCPUモジュール122を挙げる。本実施形態では、CPUモジュール122が、同プログラマブルコントローラ120に含まれる複数の入出力モジュール126全てのリフレッシュを実行管理する。
上述したように、プログラマブルコントローラ120内では、入出力モジュール126同士でリフレッシュ周期が異なる場合がある。このように入出力モジュール126間でリフレッシュ周期が異なると、全ての入出力モジュール126のリフレッシュタイミングが重なる可能性がある。この場合、全てのリフレッシュタイミングが重なった場合を想定してタクト時間を決めなくてはならないので、タクト時間が不必要に長くなる。例えば、1の入出力モジュール126のリフレッシュに100μsecの時間を要するとすると、タクト時間は、入出力モジュール126の総数、例えば、12を乗じた1.2msec以上に設定しなければならない。
タクト時間が長くなると、被制御機器130の制御周期が長くなるので、リアルタイム性を要する制御システム100の精度が劣化し、生産性が落ちることとなる。そこで、本実施形態では、入出力モジュール126のリフレッシュ周期を適切にスケジューリングする。
入出力モジュール126は、それぞれリフレッシュが必要な時間間隔が異なるので、画一的な処理のため、この時間間隔をタクト時間の整数倍に合わせる。具体的に、リフレッシュを要する最大時間間隔以下で、整数値が最大になるリフレッシュ周期を各入出力モジュール126に割り当てる。したがって、入出力モジュール126のリフレッシュ周期は、それぞれ、タクト時間と整数値との積で表される。CPUモジュール122は、入出力モジュール126それぞれに設定されたリフレッシュ周期に応じて、各入出力モジュール126をリフレッシュする。
リフレッシュ周期がタクト時間と整数値の積で表される場合において、整数値が異なる、すなわち、リフレッシュ周期が異なる場合は、各入出力モジュール126のリフレッシュタイミングが重なり得る。本実施形態では、整数値が等しい、すなわち、リフレッシュ周期が等しいものが複数ある場合に、リフレッシュ周期が等しいグループの中でリフレッシュタイミングを分散させることを特徴とする。この場合、グループ内では、リフレッシュタイミングが異なる状態が維持されるので、少なくとも、リフレッシュ周期が等しい入出力モジュール126については、リフレッシュタイミングが極力重ならないようにすることができる。
上記の考え方を用いて、入出力モジュール126全てのリフレッシュ周期をスケジューリングすることで、タクト時間を短縮し、制御システム100全体の高精度化および生産性の向上を図ることができる。以下、プログラマブルコントローラ120の、特にCPUモジュール122について詳述する。
(CPUモジュール122)
図3は、CPUモジュール122のハードウェア構成の一例を示す図である。図3に示すCPUモジュール122は、入力部150と、出力部152と、通信部154と、ROM156と、RAM158と、CPU160とを含んで構成される。このうち、入力部150と、出力部152と、ROM156と、RAM158と、CPU160とは共通バス162によりデータ移動可能に接続されている。ここでは、本実施形態に関係のあるリフレッシュ処理について説明し、本実施形態と関係のない事項は省略する。
入力部150は、キーボードや、マウス、タッチパネル等のポインティングデバイス、音声入力デバイス等に接続され、例えば、ユーザによるプログラムの実行等、各種操作を受け付ける。出力部152は、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイ等に接続され、本実施形態における処理を行うCPUモジュール122を操作するのに必要な各種ウィンドウ、データ、制御プログラムの進行状況や制御結果等を表示させる。
通信部154は、Ethernet(登録商標)を通じて、通信モジュール124と通信を確立し、その通信モジュール124を通じて、管理装置110、他のプログラマブルコントローラ120、および、入出力モジュール126と通信することができる。
ROM156は、上述した基本プログラムや実行プログラムを格納する。また、補助記憶装置として、ハードディスク等のストレージ手段を有していてもよい。RAM158は、基本プログラムや実行プログラムの一部や、実行プログラムを遂行することにより生じるデータ(例えば、ステータス情報、センサの検出結果、制御結果等)を一時的に格納する。また、RAM158では、後述するリフレッシュ周期リストも保持される。
CPU160は、OS(Operating System)等の基本プログラムおよび実行プログラムに基づいて、各種演算やデータの入出力等、CPUモジュール122全体の処理を制御する。また、CPU160は、ROM156に格納された実行プログラムを遂行し、ワークエリアとしてのRAM158を利用することで、タクト時間取得部170、グループ化部172、スケジュール部174、リフレッシュ実行部176といった機能部として機能する。以下、各機能部を説明する。
タクト時間取得部170は、管理装置110から、自己のプログラマブルコントローラ120に属する1または複数の入出力モジュール126に関するリフレッシュ周期を示したリフレッシュ周期リストを取得する。このように、管理装置110は、プログラマブルコントローラ120単位で、全ての入出力モジュール126のリフレッシュ周期を管理している。
図4は、リフレッシュ周期リスト190を説明するための説明図である。ここでは、CPUモジュール122が属するプログラマブルコントローラ120に、12の入出力モジュール126が含まれる例を挙げて説明する。
図4のリフレッシュ周期リスト190には、各入出力モジュール126を示す識別子(ここでは数値)と、整数値とが対応付けられている。ここで、リフレッシュ周期は、予め定められたタクト時間×整数値となる。
グループ化部172は、リフレッシュ周期リスト190を参照し、自己のプログラマブルコントローラ120に属する1または複数の入出力モジュール126から、リフレッシュ周期が等しい入出力モジュール126をグループ化する。
図5は、グループ化部172の動作を説明するための説明図である。グループ化部172は、リフレッシュ周期リスト190から順次入出力モジュール126を抽出し、整数値を基準に入出力モジュール126を振り直す。すると、図5のように、整数値1〜10に各入出力モジュール126が割り当てられる。ここでは、整数値1に1つ(識別子=3)の入出力モジュール126がグループ化され、整数値2に3つ(識別子=1、2、8)の入出力モジュール126がグループ化され、整数値4に3つ(識別子=4、5、6)の入出力モジュール126がグループ化され、整数値6に3つ(識別子=10、11、12)の入出力モジュール126がグループ化され、整数値8に2つ(識別子=7、9)の入出力モジュール126がグループ化される。
スケジュール部174は、グループ毎に、リフレッシュタイミングが偏らないようにリフレッシュ周期の位相を分散させる。上述したように、本実施形態では、整数値が等しい、すなわち、リフレッシュ周期が等しい入出力モジュール126が複数ある場合に、リフレッシュ周期が等しいグループの中でリフレッシュタイミングが偏らないように位相を分散させる。こうすることで、グループ内では、リフレッシュタイミングが異なる状態が維持されるので、少なくとも、リフレッシュ周期が等しい入出力モジュール126については、リフレッシュタイミングが極力重ならないようにすることができる。
図6および図7は、スケジュール部174の動作を説明するための説明図である。ここでは、説明の便宜上、タクト時間の整数倍にあたるリフレッシュタイミングに、その整数値を付している。
スケジュール部174は、グループ内における入出力モジュール126のリフレッシュ周期の位相をタクト時間ずつシフトさせる。例えば、整数値が2である入出力モジュール126は3つ(識別子=1、2、8)あるので(図5参照)、その3つの入出力モジュール126の位相を図6(a)に「◎」で示すように、タクト時間ずつシフトさせて配置する。そして、配置した時点を起点にして、図6(a)で「○」で示すように、各入出力モジュール126を周期的にリフレッシュする。ここでは、識別子=1、2、8の入出力モジュール126のリフレッシュ周期が等しいので、タクト時間分のシフトが維持され、リフレッシュタイミングは、図6(a)に重畳数で示されるように、最大で2つの入出力モジュール126しか重ならない。
また、整数値が4である入出力モジュール126は3つ(識別子=4、5、6)あるので(図5参照)、その3つの入出力モジュール126の位相を図6(b)に「◎」で示すように、タクト時間ずつシフトさせて配置する。そして、配置した時点を起点にして、図6(b)で「○」で示すように、各入出力モジュール126を周期的にリフレッシュする。ここでは、識別子=4、5、6の入出力モジュール126のリフレッシュ周期が等しいので、タクト時間分のシフトが維持され、リフレッシュタイミングが重なることはない。
このようにして、全ての入出力モジュール126を配置すると、図7のようなスケジュールが生成される。図7の重畳数で示されるように、リフレッシュタイミングは、最大で6つの入出力モジュール126しか重ならない。したがって、リフレッシュタイミングが最大6つ重なることのみを想定したタクト時間を設定することができる。例えば、1の入出力モジュール126のリフレッシュに100μsecを要するとしたら、従来では、タクト時間を、100μsecに入出力モジュール126の総数を乗じて1.2msecとしなければならなかったところ、本実施形態では、最大の重畳数である6を乗じた600μsecに抑えることができる。
また、ここでは、複数の入出力モジュール126の位相をタクト時間ずつシフトさせて配置する例を挙げたが、リフレッシュ周期内であれば、どのように分散させてもよく、間欠的に位相を配置してもよい。
ところで、図6および図7の例では、3つの入出力モジュール126の位相を図6に「◎」で示すように、単純にタクト時間ずつシフトさせて配置した。しかし、リフレッシュ周期は、入出力モジュール126毎に定められたリフレッシュが必要な時間間隔であるため、図6(a)における識別子8の入出力モジュール126のように、リフレッシュ周期(タクト時間×2)以上の時間、リフレッシュを行わないと不具合の原因になる場合がある。
その場合、スケジュール部174は、グループ内の入出力モジュール126の総数が整数値より大きい場合、入出力モジュール126の総数を整数値で除算した商に整数値を乗じた数の入出力モジュール126について、リフレッシュ周期の位相を均等に分散させ、除算した余りの入出力モジュール126について、リフレッシュタイミングが偏らないように、すなわち、除算した余りの入出力モジュール126同士が重ならないように、リフレッシュ周期の位相を分散させる。
図8および図9は、スケジュール部174の他の動作を説明するための説明図である。例えば、スケジュール部174は、総数3を整数値2で除算して、商1と余り1を導出する。そして、スケジュール部174は、商1に整数値2を乗じた数の入出力モジュール126、ここでは、識別子=1、2の入出力モジュール126を図8のように均等に分散させる。また、スケジュール部174は、余り1に対応する識別子=8の入出力モジュール126を、図8のように、リフレッシュ周期内で適当に配置する。
ここでも、図6(a)同様、識別子=1、2、8の入出力モジュール126のリフレッシュ周期が等しいので、タクト時間分のシフトが維持され、リフレッシュタイミングは、図8に重畳数で示されるように、最大で2つの入出力モジュール126しか重ならない。このようにして、全ての入出力モジュール126を配置すると、図9のようなスケジュールが生成される。ここでは、リフレッシュ周期以上の時間、リフレッシュを行わない入出力モジュール126がなくなるので、不具合の可能性を断つことができる。
かかる構成では、リフレッシュ周期が等しいグループ内において、リフレッシュ周期の位相が等しい入出力モジュール126の総数(重畳数)の上限と下限との差が1以下となる。例えば、図8に示した整数値が2である入出力モジュール126のグループ内において、リフレッシュ周期の位相が等しい入出力モジュール126の総数は、重畳数で示したように2か1のいずれかとなり、上限2と下限1との差は1となる。また、グループ内の入出力モジュールの総数が整数値の倍数になる場合、すなわち、総数を整数値で除算したときに余りが生じない場合は、リフレッシュ周期の位相が等しい入出力モジュール126の総数(重畳数)は全て等しくなるので、上限と下限との差は0となる。
リフレッシュ実行部176は、分散された位相に基づき、図7や図9のスケジュールに従って、CPUモジュール122が入出力モジュール126に被制御機器130への出力データを配信するための出力配信メッセージ、および、入出力モジュール126からCPUモジュール122に被制御機器130の入力データを収集するための入力収集メッセージを含むフレームを送信して、複数の入出力モジュール126をリフレッシュする。
上述した実施形態によると、リフレッシュ周期の位相が等しい(リフレッシュタイミングが重なる)入出力モジュール126の総数は、図5に示した、リフレッシュ周期が等しいグループ数に依存する。ただし、グループ内の入出力モジュール126の総数をその整数値で除算したときに商が生じる(1以上である)場合、その商の分だけ、リフレッシュ周期の位相が等しい入出力モジュール126の総数が増える。例えば、上述した例では、グループ数は5となり(整数値=1、2、4、6、8)、リフレッシュ周期の位相が等しい入出力モジュール126の総数の候補数が5となる。そして、整数値2のグループについてはグループ内の入出力モジュール126の総数3が整数値2より大きいので、その商1が候補数5に加えられる。こうして導出されたリフレッシュ周期の位相が等しい入出力モジュール126の総数6がリフレッシュに要する最大時間を示すことになる。したがって、1の入出力モジュール126のリフレッシュに要する時間に、かかる総数を乗じることで最小のタクト時間を導出することができる。
(リフレッシュ方法)
以下、制御システム100の具体的なリフレッシュ方法について説明する。
図10は、リフレッシュ方法の処理の流れを示したフローチャートである。まず、タクト時間取得部170は、管理装置110から、自己のプログラマブルコントローラ120に属する1または複数の入出力モジュール126に関するリフレッシュ周期リスト190を取得する(S200)。
続いて、グループ化部172は、リフレッシュ周期リスト190から1の入出力モジュール126を抽出し(S202)、その整数値に対応するグループに対応付ける(S204)。そして、グループ化部172は、リフレッシュ周期リスト190に含まれる入出力モジュール126全てのグループへの対応付けが完了したか否か判定する(S206)。その結果、入出力モジュール126全てのグループへの対応付けが完了していれば(S206におけるYES)、ステップS208に処理を移行し、未だ、対応付けが完了していない入出力モジュール126があれば(S206におけるNO)、ステップS202からの処理を繰り返す。こうして、リフレッシュ周期が等しい入出力モジュール126がグループ化される。
次に、スケジュール部174は、グループ化部172がグループ化した複数のグループのうち1のグループを抽出し(S208)、そのグループ内に含まれる入出力モジュール126の総数がグループの整数値より大きいか否か判定する(S210)。その結果、入出力モジュール126の総数が整数値より大きいと(S210におけるYES)、ステップS212に処理を移行し、総数が整数値以下であれば(S210におけるNO)、ステップS214に処理を移行する。
入出力モジュール126の総数が整数値より大きいと、スケジュール部174は、リフレッシュタイミングが偏らないように、すなわち、入出力モジュール126同士が重ならないように、リフレッシュ周期の位相を分散させる(S212)。また、入出力モジュール126の総数が整数値以下であれば、スケジュール部174は、入出力モジュール126の総数を整数値で除算した商に整数値を乗じた数の入出力モジュール126について、リフレッシュ周期の位相を均等に分散させ、除算した余りの入出力モジュール126について、リフレッシュタイミングが偏らないように、すなわち、除算した余りの入出力モジュール126同士が重ならないように、リフレッシュ周期の位相を分散させる(S214)。
そして、スケジュール部174は、グループ化された全てのグループについてリフレッシュタイミングの配置が完了したか否か判定する(S216)。その結果、全てのグループについて配置が完了していれば(S216におけるYES)、ステップS218に処理を移行し、未だ、配置されていないグループがあれば(S216におけるNO)、ステップS208からの処理を繰り返す。こうして、リフレッシュタイミングが均されることになる。
続いて、リフレッシュ実行部176は、分散された位相に基づき、複数の入出力モジュール126のリフレッシュを開始する(S218)。
以上、説明した、制御システム100によると、リフレッシュタイミングが時間方向に均され、リフレッシュタイミングが重なる入出力モジュール126を削減できるので、タクト時間を短縮することができ、ひいては、制御システム100全体の高精度化および生産性の向上を図ることが可能となる。
また、タクト時間が固定されている場合、追加可能な入出力モジュール126を増やすことができる。
また、コンピュータを、制御システム100、CPUモジュール122として機能させるプログラムや当該プログラムを記録した、コンピュータで読み取り可能なフレキシブルディスク、光磁気ディスク、ROM、CD、DVD、BD等の記憶媒体も提供される。ここで、プログラムは、任意の言語や記述方法にて記述されたデータ処理手段をいう。
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明はかかる実施形態に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
例えば、上述した実施形態においては、マスターモジュールとしてCPUモジュール122を、スレーブモジュールとして入出力モジュール126を例に挙げて説明したが、かかる場合に限らず、リフレッシュの実行元や実行先となる様々なモジュールをマスターモジュールやスレーブモジュールとして適用することができる。
なお、本明細書のリフレッシュ方法の各工程は、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいはサブルーチンによる処理を含んでもよい。
本発明は、マスターモジュールが複数のスレーブモジュールそれぞれをリフレッシュする制御システム、マスターモジュール、および、リフレッシュ方法に利用することができる。
100 …制御システム
122 …CPUモジュール(マスターモジュール)
126 …入出力モジュール(スレーブモジュール)
170 …タクト時間取得部
172 …グループ化部
174 …スケジュール部
176 …リフレッシュ実行部

Claims (5)

  1. リフレッシュ周期が、プログラムの実行周期であるタクト時間と整数値との積で表され、該整数値が個々に設定される複数のスレーブモジュールと、
    前記スレーブモジュールそれぞれに設定されたリフレッシュ周期に応じて、該スレーブモジュールをリフレッシュするマスターモジュールと、
    を備えた制御システムであって、
    前記マスターモジュールは、
    前記リフレッシュ周期が等しいスレーブモジュールをグループ化するグループ化部と、
    グループ化されたグループ毎に、リフレッシュタイミングが偏らないように前記リフレッシュ周期の位相を分散させるスケジュール部と、
    分散された位相に基づいて前記複数のスレーブモジュールをリフレッシュするリフレッシュ実行部と、
    を備えることを特徴とする制御システム。
  2. 前記スケジュール部は、前記グループ内における前記スレーブモジュールの前記リフレッシュ周期の位相を前記タクト時間ずつシフトさせることを特徴とする請求項1に記載の制御システム。
  3. 前記スケジュール部は、前記グループ内の前記スレーブモジュールの総数が前記整数値より大きい場合、該スレーブモジュールの総数を該整数値で除算した商に該整数値を乗じた数のスレーブモジュールについて、前記リフレッシュ周期の位相を均等に分散させ、該除算した余りのスレーブモジュールについて、リフレッシュタイミングが偏らないように該リフレッシュ周期の位相を分散させることを特徴とする請求項1または2に記載の制御システム。
  4. 複数のスレーブモジュールに個々に設定され、プログラムの実行周期であるタクト時間と整数値との積で表されたリフレッシュ周期に応じて、該スレーブモジュールをリフレッシュするマスターモジュールであって、
    前記リフレッシュ周期が等しいスレーブモジュールをグループ化するグループ化部と、
    グループ化されたグループ毎に、リフレッシュタイミングが偏らないように前記リフレッシュ周期の位相を分散させるスケジュール部と、
    分散された位相に基づいて前記複数のスレーブモジュールをリフレッシュするリフレッシュ実行部と、
    を備えることを特徴とするマスターモジュール。
  5. リフレッシュ周期が、プログラムの実行周期であるタクト時間と整数値との積で表され、該整数値が個々に設定される複数のスレーブモジュールと、該スレーブモジュールを制御するマスターモジュールを用いて、該スレーブモジュールそれぞれに設定されたリフレッシュ周期に応じて、該マスターモジュールが該スレーブモジュールをリフレッシュするリフレッシュ方法であって、
    前記マスターモジュールは、
    前記リフレッシュ周期が等しいスレーブモジュールをグループ化し、
    グループ化したグループ毎に、リフレッシュタイミングが偏らないように前記リフレッシュ周期の位相を分散させ、
    分散した位相に基づいて前記複数のスレーブモジュールをリフレッシュすることを特徴とするリフレッシュ方法。
JP2012274624A 2012-12-17 2012-12-17 制御システム、マスターモジュール、および、リフレッシュ方法 Active JP6036256B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012274624A JP6036256B2 (ja) 2012-12-17 2012-12-17 制御システム、マスターモジュール、および、リフレッシュ方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012274624A JP6036256B2 (ja) 2012-12-17 2012-12-17 制御システム、マスターモジュール、および、リフレッシュ方法

Publications (2)

Publication Number Publication Date
JP2014120187A true JP2014120187A (ja) 2014-06-30
JP6036256B2 JP6036256B2 (ja) 2016-11-30

Family

ID=51174901

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012274624A Active JP6036256B2 (ja) 2012-12-17 2012-12-17 制御システム、マスターモジュール、および、リフレッシュ方法

Country Status (1)

Country Link
JP (1) JP6036256B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11792268B2 (en) 2020-03-31 2023-10-17 Mitsubishi Electric Corporation Communication device, communication method, and recording medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09237110A (ja) * 1995-12-26 1997-09-09 Meidensha Corp リモートio伝送装置
JP2001333083A (ja) * 2000-05-19 2001-11-30 Mitsubishi Electric Corp フィールド機器の新規追加および削除の設定方法、並びにフィールド機器の新規追加方法
JP2006171833A (ja) * 2004-12-13 2006-06-29 Fuji Electric Fa Components & Systems Co Ltd Plcのデータ交換システム、及びplcのデータ交換システムの制御方法
JP2010251887A (ja) * 2009-04-13 2010-11-04 Panasonic Corp 双方向無線通信システム、制御装置、被制御装置、干渉回避方法
JP2012068856A (ja) * 2010-09-22 2012-04-05 Fuji Electric Co Ltd プログラマブルコントローラシステム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09237110A (ja) * 1995-12-26 1997-09-09 Meidensha Corp リモートio伝送装置
JP2001333083A (ja) * 2000-05-19 2001-11-30 Mitsubishi Electric Corp フィールド機器の新規追加および削除の設定方法、並びにフィールド機器の新規追加方法
JP2006171833A (ja) * 2004-12-13 2006-06-29 Fuji Electric Fa Components & Systems Co Ltd Plcのデータ交換システム、及びplcのデータ交換システムの制御方法
JP2010251887A (ja) * 2009-04-13 2010-11-04 Panasonic Corp 双方向無線通信システム、制御装置、被制御装置、干渉回避方法
JP2012068856A (ja) * 2010-09-22 2012-04-05 Fuji Electric Co Ltd プログラマブルコントローラシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11792268B2 (en) 2020-03-31 2023-10-17 Mitsubishi Electric Corporation Communication device, communication method, and recording medium

Also Published As

Publication number Publication date
JP6036256B2 (ja) 2016-11-30

Similar Documents

Publication Publication Date Title
Luo et al. GPU based parallel genetic algorithm for solving an energy efficient dynamic flexible flow shop scheduling problem
CN106272484B (zh) 一种多异构工业机器人控制系统
US10990087B2 (en) Parallel control method and system for intelligent workshop
Pellicciari et al. A method for reducing the energy consumption of pick-and-place industrial robots
JP5935903B2 (ja) 制御システム、マスタープログラマブルコントローラ、スレーブプログラマブルコントローラ、および、制御方法
JP6946909B2 (ja) 制御システムおよび制御装置
Michalos et al. Performance assessment of production systems with mobile robots
JP5822621B2 (ja) サーボドライブシステム
CN104808592A (zh) 一种基于虚拟上位机的数控系统
WO2019058861A1 (ja) 制御システムおよび制御装置
Bryner Smart manufacturing: the next revolution
US20150177723A1 (en) Control unit, output control method and program
JP6036256B2 (ja) 制御システム、マスターモジュール、および、リフレッシュ方法
CN105892412A (zh) 基于自定义总线的多轴运动控制系统硬件架构
WO2020240944A1 (ja) 制御システム、サポート装置およびサポートプログラム
Della Vedova et al. Real-time scheduling for industrial load management
CN102594574A (zh) 电源分配单元及其所适用的电源管理架构
Harjunkoski Future of control and operations in the era of industrial internet of things
KR101646444B1 (ko) 에너지 관리 시뮬레이션을 위한 가상공장 시뮬레이션 시스템 및 방법
EP3812856A1 (en) Distributed multi-node control system and method
CN104008001A (zh) 用于大数据支撑的虚拟机动态迁移算法
Baratta et al. Human Robot Collaboration: an assessment and optimization methodology based on dynamic data exchange
Yang et al. A single-machine scheduling problem with learning effects in intermittent batch production
Shukla et al. Simulation modeling for manufacturing system application using simulink/simevents
Nayak et al. Modeling job shop scheduling for peak electricity load constraint

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151116

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161017

R150 Certificate of patent or registration of utility model

Ref document number: 6036256

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250