JP5602643B2 - Schedule creation device, schedule creation method, and schedule creation program - Google Patents
Schedule creation device, schedule creation method, and schedule creation program Download PDFInfo
- Publication number
- JP5602643B2 JP5602643B2 JP2011001413A JP2011001413A JP5602643B2 JP 5602643 B2 JP5602643 B2 JP 5602643B2 JP 2011001413 A JP2011001413 A JP 2011001413A JP 2011001413 A JP2011001413 A JP 2011001413A JP 5602643 B2 JP5602643 B2 JP 5602643B2
- Authority
- JP
- Japan
- Prior art keywords
- schedule
- sub
- control loop
- execution
- execution data
- 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
Links
Images
Landscapes
- Programmable Controllers (AREA)
Description
本発明は、フィールドバスのセグメントに定義された複数の機能ブロックによって構成される制御ループを、周期的に実行するスケジュールを作成するスケジュール作成装置スケジュール作成方法、及びスケジュール作成プログラムに関する。 The present invention relates to a schedule creation apparatus and a schedule creation program for creating a schedule for periodically executing a control loop composed of a plurality of functional blocks defined in a fieldbus segment.
生産プロセスを管理する現場では、通信機能を有する各種のフィールド機器(例えばセンサやバルブ等)をプラントに設置し、フィールド機器をフィールドバスと呼ばれるネットワークに接続することで、フィールド機器から発信される信号を管理装置等が受信し、各種の生産プロセスを管理している。このため、フィールド機器は、フィールドバスと呼ばれるネットワークに接続されている。 In the field where production processes are managed, various field devices with communication functions (for example, sensors and valves) are installed in the plant, and the signals transmitted from the field devices are connected to a network called a field bus. Is received by a management device and manages various production processes. For this reason, the field device is connected to a network called a field bus.
フィールドバスは、デジタル信号による双方向通信が可能な通信方式であり、1994年に設立されたフィールドバス協会(Fieldbus Foundation TM)により、通信仕様が、ファウンデーションフィールドバス(Foundation fieldbus)として規格化(標準化)されている。 Fieldbus is a communication method that enables two-way communication using digital signals, and its communication specifications are standardized (Foundation fieldbus) by the Fieldbus Foundation TM established in 1994 (standardization). )
従来、フィールドバスのセグメントにおいて、当該セグメントに定義された複数の機能ブロックによって構成される制御ループを、周期的に実行するスケジュールを作成するものとして、制御ループごとに作成したサブスケジュールを使用してスケジュールを作成するもの知られている(例えば、特許文献1参照)。 Conventionally, in a fieldbus segment, using a sub-schedule created for each control loop as a schedule for periodically executing a control loop composed of a plurality of functional blocks defined in the segment. It is known to create a schedule (see, for example, Patent Document 1).
しかしながら、制御ループの実行タイミングを制御するリンクマスタデバイスの性能によって設定可能なサブスケジュールの数が制限されるため、従来のスケジュール作成装置では、制御ループの実行周期の数が、設定可能なサブスケジュールの数より大きい場合に、制御ループを所望の実行周期で実行させることができなかった。 However, since the number of sub-schedules that can be set is limited by the performance of the link master device that controls the execution timing of the control loop, in the conventional schedule creation device, the number of control loop execution cycles can be set When the number is larger than the number of the control loop, the control loop cannot be executed in a desired execution cycle.
本発明のいくつかの態様は前述の問題に鑑みてなされたものであり、制御ループの実行周期の数が、設定可能なサブスケジュールの数より大きい場合でも、制御ループを所望の実行周期で実行させることが可能となるスケジュール作成装置、スケジュール作成方法、及びスケジュール作成プログラムを提供することを目的の1つとする。 Some aspects of the present invention have been made in view of the above-described problems. Even when the number of execution cycles of the control loop is larger than the number of sub-schedules that can be set, the control loop is executed at a desired execution cycle. It is an object to provide a schedule creation device, a schedule creation method, and a schedule creation program that can be executed.
本発明に係るスケジュール作成装置は、フィールドバスの複数の機能ブロックによって構成される制御ループを、複数のサブスケジュールを用いて周期的に実行するスケジュールを作成するスケジュール作成装置であって、制御ループの実行周期のi倍(iは2以上の整数)の周期を有するサブスケジュールが設定されている場合に、該サブスケジュールにおいて該制御ループを実行させる実行データをi個生成する実行データ生成部を備える。 A schedule creation device according to the present invention is a schedule creation device for creating a schedule for periodically executing a control loop constituted by a plurality of functional blocks of a fieldbus using a plurality of sub-schedules. When a sub-schedule having a period i times the execution period (i is an integer equal to or greater than 2) is set, an execution data generation unit is provided that generates i execution data for executing the control loop in the sub-schedule. .
かかる構成によれば、制御ループの実行周期のi倍(iは2以上の整数)の周期を有するサブスケジュールが設定されている場合に、当該サブスケジュールにおいて当該制御ループを実行させる実行データをi個生成する。これにより、例えばTの周期を有するサブスケジュールにおいて、制御ループをT/iの実行周期でi回実行させることが可能となる。 According to this configuration, when a sub-schedule having a period i times (i is an integer of 2 or more) the execution period of the control loop is set, the execution data for executing the control loop in the sub-schedule is i. Generate. As a result, for example, in a sub-schedule having a period of T, the control loop can be executed i times at an execution period of T / i.
好ましくは、前述の実行データは、サブスケジュールの開始時間を基準とするオフセット時間を含む。 Preferably, the execution data includes an offset time based on the start time of the sub-schedule.
かかる構成によれば、実行データは、サブスケジュールの開始時間を基準とするオフセット時間を含む。これにより、i個の実行データを生成する際に、それぞれのオフセット時間の間隔を実行周期に設定することで、容易に当該サブスケジュールにおいて制御ループをi回実行させることができる。 According to such a configuration, the execution data includes an offset time with reference to the start time of the sub-schedule. Thereby, when generating i pieces of execution data, the control loop can be easily executed i times in the sub-schedule by setting the interval of each offset time to the execution cycle.
好ましくは、制御ループの実行周期のi倍の周期を有し、それぞれの周期が相互に異なる複数のサブスケジュールが設定されている場合に、実行データ生成部は、該複数のサブスケジュールのうちの最短の周期を有するサブスケジュールにおいて実行データをi個生成する。 Preferably, when a plurality of sub-schedules having a period i times the execution period of the control loop and different from each other are set, the execution data generation unit I pieces of execution data are generated in the sub-schedule having the shortest cycle.
かかる構成によれば、制御ループの実行周期のi倍(iは2以上の整数)の周期を有し、それぞれの周期が相互に異なる複数のサブスケジュールが設定されている場合に、当該複数のサブスケジュールのうちの最短の周期を有するサブスケジュールにおいてi個の実行データを生成する。これにより、例えば、最長の周期を有するサブスケジュールにおいて実行データを生成する場合と比較して、最短の周期を有するサブスケジュールにおいて実行データを生成すると少ない実行データで済み、生成する実行データの数を減少させることができる。これにより、作成するスケジュールのサイズ等を小さくすることができる。 According to such a configuration, when a plurality of sub-schedules having a period that is i times (i is an integer of 2 or more) the execution period of the control loop and different from each other are set, I pieces of execution data are generated in the sub-schedule having the shortest period among the sub-schedules. Thus, for example, compared with the case of generating execution data in the sub-schedule having the longest cycle, if execution data is generated in the sub-schedule having the shortest cycle, less execution data is required, and the number of execution data to be generated is reduced. Can be reduced. As a result, the size of the schedule to be created can be reduced.
好ましくは、制御ループの動作タイミングを制御するリンクマスタデバイスに、フィールドバスを介してスケジュールを送信する送信部を更に備える。 Preferably, a link master device that controls the operation timing of the control loop is further provided with a transmission unit that transmits the schedule via the field bus.
かかる構成によれば、制御ループの動作タイミングを制御するリンクマスタデバイスに、フィールドバスを介してスケジュールを送信する送信部を更に備える。これにより、リンクマスタデバイスは、スケジュール作成装置により作成されたスケジュールを実行することができる。 According to this configuration, the link master device that controls the operation timing of the control loop is further provided with a transmission unit that transmits the schedule via the fieldbus. Thereby, the link master device can execute the schedule created by the schedule creation device.
好ましくは、前述のリンクマスタデバイスには設定可能なサブスケジュールの数の最大値である設定可能最大数が定められており、フィールドバスのセグメントにリンクマスタデバイスが複数存在する場合に、フィールドバスを介して各リンクマスタデバイスの設定可能最大数を取得する設定可能最大数取得部と、取得された各リンクマスタデバイスの設定可能最大数のうちの最小値に基づいて、サブスケジュールを設定するサブスケジュール設定部と、を更に備える。 Preferably, the aforementioned link master device has a maximum configurable number that is the maximum number of sub-schedules that can be set, and when there are a plurality of link master devices in the field bus segment, A sub-schedule for setting a sub-schedule based on the minimum value of the maximum settable number of each link master device acquired and the settable maximum number acquisition unit for acquiring the maximum settable number of each link master device via And a setting unit.
かかる構成によれば、フィールドバスのセグメントにリンクマスタデバイスが複数存在する場合に、フィールドバスを介して各リンクマスタデバイスの設定可能最大数を取得する設定可能最大数取得部と、取得された各リンクマスタデバイスの設定可能最大数のうちの最小値に基づいて、サブスケジュールを設定するサブスケジュール設定部と、を更に備える。これにより、セグメントにおける全てのリンクマスタデバイスが設定可能な数のサブスケジュールが設定される。これにより、セグメントにおける全てのリンクマスタデバイスが実行可能なスケジュールを各リンクマスタデバイスに送信することができる。 According to such a configuration, when there are a plurality of link master devices in the fieldbus segment, the settable maximum number acquisition unit that acquires the settable maximum number of each link master device via the fieldbus, and each acquired A sub-schedule setting unit configured to set a sub-schedule based on a minimum value of the settable maximum number of link master devices; Thereby, the number of sub-schedules that can be set by all the link master devices in the segment are set. Accordingly, a schedule that can be executed by all link master devices in the segment can be transmitted to each link master device.
本発明に係るスケジュール作成方法及びスケジュール作成プログラムは、フィールドバスの複数の機能ブロックによって構成される制御ループを、複数のサブスケジュールを用いて周期的に実行するスケジュールを作成するスケジュール作成方法であって、制御ループの実行周期のi倍(iは2以上の整数)の周期を有するサブスケジュールが設定されている場合に、実行データ生成部が、該サブスケジュールにおいて該制御ループを実行させる実行データをi個生成するステップを備える。 A schedule creation method and a schedule creation program according to the present invention are a schedule creation method for creating a schedule for periodically executing a control loop constituted by a plurality of functional blocks of a fieldbus using a plurality of sub-schedules. When a sub-schedule having a period that is i times the control loop execution period (i is an integer of 2 or more) is set, the execution data generation unit executes the execution data for executing the control loop in the sub-schedule. i generating step is provided.
かかる構成によれば、制御ループの実行周期のi倍(iは2以上の整数)の周期を有するサブスケジュールが設定されている場合に、実行データ生成部が、当該サブスケジュールにおいて当該制御ループを実行させる実行データをi個生成するステップを備える。これにより、例えばTの周期を有するサブスケジュールにおいて、制御ループ135をT/iの実行周期でi回実行させることが可能となる。
According to such a configuration, when a sub-schedule having a period i times (i is an integer equal to or greater than 2) the execution period of the control loop is set, the execution data generation unit executes the control loop in the sub-schedule. A step of generating i pieces of execution data to be executed. Thereby, for example, in a sub-schedule having a period of T, the
好ましくは、前述の実行データは、サブスケジュールの開始時間を基準とするオフセット時間を含む。 Preferably, the execution data includes an offset time based on the start time of the sub-schedule.
かかる構成によれば、実行データは、サブスケジュールの開始時間を基準とするオフセット時間を含む。これにより、i個の実行データを生成する際に、それぞれのオフセット時間の間隔を実行周期に設定することで、容易に当該サブスケジュールにおいて制御ループをi回実行させることができる。 According to such a configuration, the execution data includes an offset time with reference to the start time of the sub-schedule. Thereby, when generating i pieces of execution data, the control loop can be easily executed i times in the sub-schedule by setting the interval of each offset time to the execution cycle.
好ましくは、制御ループの実行周期のi倍の周期を有し、それぞれの周期が相互に異なる複数のサブスケジュールがセグメントに設定され、記憶部に記憶されている場合に、前述の生成するステップは、実行データ生成部が、該複数のサブスケジュールのうちの最短の周期を有するサブスケジュールにおいて実行データをi個生成する。 Preferably, when a plurality of sub-schedules having a period i times the execution period of the control loop and different from each other are set in the segment and stored in the storage unit, the generating step described above is performed The execution data generation unit generates i execution data in the sub-schedule having the shortest cycle among the plurality of sub-schedules.
かかる構成によれば、制御ループの実行周期のi倍(iは2以上の整数)の周期を有し、それぞれの周期が相互に異なる複数のサブスケジュールがセグメントに設定され、記憶部に記憶されている場合に、実行データ生成部が、当該複数のサブスケジュールのうちの最短の周期を有するサブスケジュールにおいてi個の実行データを生成する。これにより、例えば、最長の周期を有するサブスケジュールにおいて実行データを生成する場合と比較して、最短の周期を有するサブスケジュールにおいて実行データを生成すると少ない実行データで済み、生成する実行データの数を減少させることができる。これにより、作成するスケジュールのサイズ等を小さくすることができる。 According to such a configuration, a plurality of sub-schedules having a period i times (i is an integer equal to or greater than 2) the execution period of the control loop and different from each other are set as segments and stored in the storage unit. The execution data generation unit generates i pieces of execution data in the sub-schedule having the shortest cycle among the plurality of sub-schedules. Thus, for example, compared with the case of generating execution data in the sub-schedule having the longest cycle, if execution data is generated in the sub-schedule having the shortest cycle, less execution data is required, and the number of execution data to be generated is reduced. Can be reduced. As a result, the size of the schedule to be created can be reduced.
好ましくは、制御ループの動作タイミングを制御するリンクマスタデバイスに、送信部が、フィールドバスを介して前記スケジュールを送信するステップを更に備える。 Preferably, the transmission unit further includes a step of transmitting the schedule via the field bus to the link master device that controls the operation timing of the control loop.
かかる構成によれば、制御ループの動作タイミングを制御するリンクマスタデバイスに、送信部が、フィールドバスを介してスケジュールを送信するステップを更に備える。これにより、リンクマスタデバイスは、スケジュール作成方法又はスケジュール作成プログラムにより作成されたスケジュールを実行することができる。 According to this configuration, the transmission unit further includes a step of transmitting the schedule via the fieldbus to the link master device that controls the operation timing of the control loop. Thereby, the link master device can execute the schedule created by the schedule creation method or the schedule creation program.
好ましくは、前述のリンクマスタデバイスには設定可能なサブスケジュールの数の最大値である設定可能最大数が定められており、フィールドバスのセグメントにリンクマスタデバイスが複数存在する場合に、設定可能最大数取得部が、フィールドバスを介して各リンクマスタデバイスの設定可能最大数を取得するステップと、サブスケジュール設定部が、取得された各リンクマスタデバイスの設定可能最大数のうちの最小値に基づいて、サブスケジュールを設定するステップと、を更に備える。 Preferably, the above-mentioned link master device has a settable maximum number that is the maximum number of subschedules that can be set, and can be set when there are multiple link master devices in a fieldbus segment. The number acquisition unit obtains the maximum settable number of each link master device via the fieldbus, and the sub-schedule setting unit determines the minimum number of the acquired maximum settable number of each link master device. And setting a sub-schedule.
かかる構成によれば、フィールドバスのセグメントにリンクマスタデバイスが複数存在する場合に、設定可能最大数取得部が、フィールドバスを介して各リンクマスタデバイスの設定可能最大数を取得するステップと、サブスケジュール設定部が、取得された各リンクマスタデバイスの設定可能最大数のうちの最小値に基づいて、サブスケジュールを設定するステップと、を更に備える。これにより、セグメントにおける全てのリンクマスタデバイスが設定可能な数のサブスケジュールが設定される。これにより、セグメントにおける全てのリンクマスタデバイスが実行可能なスケジュールを各リンクマスタデバイスに送信することができる。 According to such a configuration, when there are a plurality of link master devices in a fieldbus segment, the settable maximum number acquisition unit acquires the settable maximum number of each link master device via the fieldbus; The schedule setting unit further includes a step of setting a sub-schedule based on a minimum value of the acquired maximum number of link master devices that can be set. Thereby, the number of sub-schedules that can be set by all the link master devices in the segment are set. Accordingly, a schedule that can be executed by all link master devices in the segment can be transmitted to each link master device.
本発明によれば、例えばTの周期を有するサブスケジュールにおいて、制御ループをT/iの実行周期でi回実行させることが可能となる。これにより、制御ループの実行周期の数(種類)が、設定可能なサブスケジュールの最大値(設定可能最大数)より大きい場合でも、制御ループの実行周期のi倍の周期を有するサブスケジュールが設定されている場合に、当該制御ループを所望の実行周期で実行させることができる。 According to the present invention, for example, in a sub-schedule having a period of T, a control loop can be executed i times at a T / i execution period. Thereby, even when the number (type) of execution cycles of the control loop is larger than the maximum value (maximum number that can be set) of the settable sub-schedule, a sub-schedule having a cycle i times the execution cycle of the control loop is set If it is, the control loop can be executed at a desired execution cycle.
以下に本発明の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号で表している。但し、図面は模式的なものである。したがって、具体的な寸法などは以下の説明を照らし合わせて判断するべきものである。また、図面相互間においても互いの寸法の関係や比率が異なる部分が含まれていることは勿論である。 Embodiments of the present invention will be described below. In the following description of the drawings, the same or similar parts are denoted by the same or similar reference numerals. However, the drawings are schematic. Therefore, specific dimensions and the like should be determined in light of the following description. Moreover, it is a matter of course that portions having different dimensional relationships and ratios are included between the drawings.
[第1実施形態]
図1乃至図13は、本発明の第1実施形態を示すためのものである。図1は、本発明の第1実施形態におけるフィールド機器管理システムの概略構成を説明するブロック図である。図1に示すように、フィールド機器管理システム100は、フィールドバスのセグメント(以下、単にセグメントという)10と、コントローラ20と、本発明に係るスケジュール作成装置30とを備える。
[First Embodiment]
1 to 13 are for illustrating a first embodiment of the present invention. FIG. 1 is a block diagram illustrating a schematic configuration of a field device management system according to the first embodiment of the present invention. As shown in FIG. 1, a field
セグメント10は、複数のフィールド機器11A〜11Jと、リンクマスタデバイス12とを含む。各フィールド機器11A〜11Jと、リンクマスタデバイス12とは、フィールドバスFに接続しており、相互に通信可能となっている。
The
フィールドバスFは、前述の規格化(標準化)されたファウンデーションフィールドバス(Foundation fieldbus)プロトコルを、通信仕様として用いるネットワークである。また、セグメント10は、フィールドバスFの基本構成であり、1本の伝送媒体からなる1つの伝送路を意味するフィールドバス用語である。
The fieldbus F is a network that uses the above-mentioned standardized (standardized) Foundation fieldbus protocol as a communication specification. The
各フィールド機器11A〜11Jは、プラント内に装備される各種の機器であり、フィールバスFを介して双方向に通信可能なフィールバス適合の機器である。各フィールド機器11A〜11Jとしては、例えば、流量センサ、圧力センサ及び温度センサ等の各種センサや、流量制御弁および圧力制御弁等のバルブ(弁)、ポンプ及びファン等のアクチュエータが該当する。
The
リンクマスタデバイス12は、リンクアクティブスケジューラ(Link Active Scheduler、以下LASという)機能を有するLAS部121と、記憶部122とを有する機器である。
The
LAS部121は、フィールドバスF上で行われる周期的通信、非周期的通信などを含む全ての通信を制御するためのネットワーク制御機能を有する。LAS部121は、例えば、周期的通信を起動するためのトリガフレームの送出、非周期的通信を行うために各フィールド機器11A〜11Jに送信許可を与えるフレームの送出などの機能を有する。なお、以下において、特に必要な場合を除き、周期的通信のみを説明し、非周期的通信については説明を省略する。
The
記憶部122は、メモリなどの記憶手段であり、マクロサイクルデータ122aと、サブスケジュールデータ122bと、スケジュールプログラム122cとを記憶する。
The
ここで、スケジュールは、後述する制御ループの周期的動作の実行タイミングを定めたものである。マクロサイクルは、スケジュールの基準周期を意味するフィールドバス用語であり、スケジュールに対して1つ設定されるものである。サブスケジュールは、制御ループを実行させる実行データを含み、複数設定されるものである。本実施形態では、スケジュールは複数のサブスケジュールを使用して実施(実行)される。 Here, the schedule defines the execution timing of the periodic operation of the control loop described later. A macro cycle is a fieldbus term meaning a reference period of a schedule, and one macro cycle is set for a schedule. The sub-schedule includes execution data for executing the control loop, and a plurality of sub-schedules are set. In this embodiment, the schedule is implemented (executed) using a plurality of sub-schedules.
マクロサイクルデータ122aは、マクロサイクルに関する情報、例えば周期の情報を含む。サブスケジュールデータ122bは、サブスケジュールに関する情報、例えば各サブスケジュールの周期、設定可能なサブスケジュールの数の最大値(以下、設定可能最大数という)などの情報を含む。スケジュールプログラム122cは、複数のサブスケジュールをマージして作成され、制御ループの周期的動作がマクロサイクルの周期で繰り返されるようにスケジューリングされたプログラムである。LAS部121は、このスケジュールプログラム122cに基づいて、セグメント10における動作及び通信を制御している。
The
コントローラ20は、例えば、CPU(図示省略)、メモリなどの記憶手段(図示省略)、及びデータ通信(データ送受信)のためのインターフェース(図示省略)を備える。コントローラ20は、フィールドバスFに接続しており、各フィールド機器11A〜11J及びリンクマスタデバイス12と相互に通信可能であるとともに、スケジュール作成装置30に接続して相互に通信可能となっている。
The
スケジュール作成装置30は、リンクマスタデバイス12が使用するスケジュールプログラムを作成するための装置である。スケジュール作成装置30は、入出力インターフェース部31と、記憶部32と、設定部33と、実行データ生成部34と、スケジュールプログラム作成部35と、データロード部36と、を備える。
The schedule creation device 30 is a device for creating a schedule program used by the
入出力インターフェース部31は、キーボードやマウスなどの入力手段と、ディスプレイやプリンタなどの出力手段との間でデータ通信(データ送受信)を行うためのものである。入出力インターフェース部31は、例えば、スケジュール作成装置30により実行されるプログラム(ソフトウエア)により、ユーザに対してGUI(Graphical User Interface)を提供するようにしてもよい。
The input /
記憶部32は、メモリなどの記憶手段であり、リンクマスタデバイス12の記憶部122と同様のマクロサイクルデータ32a、サブスケジュールデータ32b、及びスケジュールプログラム122cとを記憶する。また、記憶部32は、後述する機能ブロックに関する情報、例えば機能ブロックの定義の情報を含む機能ブロックデータ13を記憶する。
The
設定部33は、入出力インターフェース部31を介して入力される後述の制御ループの実行周期に基づいて、複数のサブスケジュールを設定する。
The setting
実行データ生成部34は、設定部33により設定されたサブスケジュールにおいて、制御ループを実行させる実行データを生成する。
The execution
スケジュールプログラム作成部35は、実行データ生成部34により生成された実行データを含むサブスケジュールを用いて、スケジュールプログラム32cを作成する。
The schedule
データロード部36は、スケジュールプログラム作成部35により作成されたスケジュールプログラム32cを含むデータを、フィールドバスFを介してリンクマスタデバイス12に送信する。
The data load
機能ブロック(Function Block)は、制御システムを構築するに必要な単位機能を機能ブロック化したものを意味するフィールドバス用語である。具体的には、機能ブロックは、セグメント10を構成する機器、例えば、各フィールド機器11A〜11Jに実行される機能を定義したものである。機能ブロックに定義される機能は、測定値、例えば、電圧値、温度値、流量値などを各フィールド機器11A〜11Jに取得させたり、アルゴリズム又は計算、例えば、微分、積分、加算、減算、乗算、除算などを行わせたり、計装、例えばバルブ開閉、炉調整、ボイラ調整などを制御させたり、或いはその他の機能を行わせるものである。
A function block (Function Block) is a fieldbus term meaning a function block of unit functions necessary for constructing a control system. Specifically, the functional block defines a function to be executed by devices constituting the
図2は、図1に示したフィールド装置と機能ブロックとの関係を説明するブロック図である。図2に示すように、図1に示した機能ブロックデータ13は、アナログ入力(以下、AIという)機能を有するAI機能ブロック(AI1)13a、比例・積分・微分(以下、PIDという)機能を有するPID機能ブロック(PID1)13b、アナログ出力(以下、AOという)機能を有するAO機能ブロック(AO1)13c、AI機能を有するAI機能ブロック(AI2)13d、PID機能を有するPID機能ブロック(PID2)13e、AO機能を有するAO機能ブロック(AO2)13f、AI機能を有するAI機能ブロック(AI3)13g、PID機能を有するPID機能ブロック(PID3)13h、AO機能を有するAO機能ブロック(AO3)13i、AI機能を有するAI機能ブロック(AI4)13j、PID機能を有するPID機能ブロック(PID4)13k、AO機能を有するAO機能ブロック(AO4)13l、AI機能を有するAI機能ブロック(AI5)13m、PID機能を有するPID機能ブロック(PID5)13n、及びAO機能を有するAO機能ブロック(AO5)13o、の情報を含む。
FIG. 2 is a block diagram for explaining the relationship between the field device shown in FIG. 1 and functional blocks. As shown in FIG. 2, the
AI機能ブロック(AI1)13aはフィールド機器11Aにより実行される機能を定義し、PID機能ブロック(PID1)13bとAO機能ブロック(AO1)13cとは、フィールド機器11Bにより実行される機能を定義する。AI機能ブロック(AI2)13dはフィールド機器11Cにより実行される機能を定義し、PID機能ブロック(PID2)13eとAO機能ブロック(AO2)13fとは、フィールド機器11Dにより実行される機能を定義する。AI機能ブロック(AI3)13gはフィールド機器11Eにより実行される機能を定義し、PID機能ブロック(PID3)13hとAO機能ブロック(AO3)13iとは、フィールド機器11Fにより実行される機能を定義する。AI機能ブロック(AI4)13jはフィールド機器11Gにより実行される機能を定義し、PID機能ブロック(PID4)13kとAO機能ブロック(AO4)13lとは、フィールド機器11Hにより実行される機能を定義する。AI機能ブロック(AI5)13mはフィールド機器11Iにより実行される機能を定義し、PID機能ブロック(PID5)13nとAO機能ブロック(AO5)13oは、フィールド機器11Jにより実行される機能を定義する。
The AI function block (AI1) 13a defines a function executed by the
なお、本実施形態では、セグメント10を構成する各フィールド機器11A〜11Jにより実行される機能ブロックのみを示したが、これに限定されず、フィールドバスFに接続される他の機器、例えば、他のセグメントを構成するフィールド機器が実行する機能を機能ブロックとして定義してもよい。
In the present embodiment, only functional blocks executed by the
図3乃至図7は、図2に示した機能ブロックにより構成される制御ループの例を説明するイメージ図である。図3乃至図7に示すように、図2に示した各機能ブロック13a〜13oは、少なくとも1つの入力、及び/又は少なくとも1つの出力を含む。各機能ブロック13a〜13oは、例えば、入出力インターフェース部31を介するユーザの操作により、相互に接続(結合)される。このように、機能ブロックを接続(結合)することにより、スケジュールの制御対象となる制御ループが形成(構成)される。
3 to 7 are image diagrams for explaining examples of control loops configured by the functional blocks shown in FIG. As shown in FIGS. 3-7, each
図3に示す例では、AI機能ブロック(AI1)13aの出力は、PID機能ブロック(PID1)13bの入力に接続され、PID機能ブロック(PID1)13bの出力は、AO機能ブロック(AO1)13cの入力に接続される。また、AO機能ブロック(AO1)13cの出力は、PID機能ブロック(PID1)13bの入力に接続される。このように、AI機能ブロック(AI1)13a、PID機能ブロック(PID1)13b、及びAO機能ブロック(AO1)13cを接続(結合)することにより、制御ループ131を形成する。
In the example shown in FIG. 3, the output of the AI function block (AI1) 13a is connected to the input of the PID function block (PID1) 13b, and the output of the PID function block (PID1) 13b is connected to the AO function block (AO1) 13c. Connected to input. The output of the AO function block (AO1) 13c is connected to the input of the PID function block (PID1) 13b. In this manner, the
図4に示す例において、AI機能ブロック(AI2)13dの出力は、PID機能ブロック(PID2)13eの入力に接続され、PID機能ブロック(PID2)13eの出力は、AO機能ブロック(AO2)13fの入力に接続される。また、AO機能ブロック(AO2)13fの出力は、PID機能ブロック(PID2)13eの入力に接続される。このように、AI機能ブロック(AI2)13d、PID機能ブロック(PID2)13e、及びAO機能ブロック(AO2)13fを接続(結合)することにより、制御ループ132を形成する。
In the example shown in FIG. 4, the output of the AI function block (AI2) 13d is connected to the input of the PID function block (PID2) 13e, and the output of the PID function block (PID2) 13e is connected to the AO function block (AO2) 13f. Connected to input. The output of the AO function block (AO2) 13f is connected to the input of the PID function block (PID2) 13e. In this way, the
図5に示す例において、AI機能ブロック(AI3)13gの出力は、PID機能ブロック(PID3)13hの入力に接続され、PID機能ブロック(PID3)13hの出力は、AO機能ブロック(AO3)13iの入力に接続される。また、AO機能ブロック(AO3)13iの出力は、PID機能ブロック(PID3)13hの入力に接続される。このように、AI機能ブロック(AI3)13g、PID機能ブロック(PID3)13h、及びAO機能ブロック(AO3)13iを接続(結合)することにより、制御ループ133を形成する。
In the example shown in FIG. 5, the output of the AI function block (AI3) 13g is connected to the input of the PID function block (PID3) 13h, and the output of the PID function block (PID3) 13h is the output of the AO function block (AO3) 13i. Connected to input. The output of the AO function block (AO3) 13i is connected to the input of the PID function block (PID3) 13h. In this way, the
図6に示す例において、AI機能ブロック(AI4)13jの出力は、PID機能ブロック(PID4)13kの入力に接続され、PID機能ブロック(PID4)13kの出力は、AO機能ブロック(AO4)13lの入力に接続される。また、AO機能ブロック(AO4)13lの出力は、PID機能ブロック(PID4)13kの入力に接続される。このように、AI機能ブロック(AI4)13j、PID機能ブロック(PID4)13k、及びAO機能ブロック(AO4)13lを接続(結合)することにより、制御ループ134を形成する。
In the example shown in FIG. 6, the output of the AI functional block (AI4) 13j is connected to the input of the PID functional block (PID4) 13k, and the output of the PID functional block (PID4) 13k is connected to the AO functional block (AO4) 13l. Connected to input. The output of the AO function block (AO4) 13l is connected to the input of the PID function block (PID4) 13k. In this manner, the
図7に示す例において、AI機能ブロック(AI5)13mの出力は、PID機能ブロック(PID5)13nの入力に接続され、PID機能ブロック(PID5)13nの出力は、AO機能ブロック(AO5)13oの入力に接続される。また、AO機能ブロック(AO5)13oの出力は、PID機能ブロック(PID5)13nの入力に接続される。このように、AI機能ブロック(AI5)13m、PID機能ブロック(PID5)13n、及びAO機能ブロック(AO5)15oを接続(結合)することにより、制御ループ135を形成する。
In the example shown in FIG. 7, the output of the AI functional block (AI5) 13m is connected to the input of the PID functional block (PID5) 13n, and the output of the PID functional block (PID5) 13n is connected to the AO functional block (AO5) 13o. Connected to input. The output of the AO function block (AO5) 13o is connected to the input of the PID function block (PID5) 13n. In this way, the
なお、本実施形態では、セグメント10に定義された各機能ブロック13a〜13oにより形成(構成)される制御ループのみを示したが、これに限定されず、制御ループは、フィールドバスFの他のセグメントに定義された機能ブロックを含んでいてもよい。
In the present embodiment, only the control loop formed (configured) by the
図8は、図3に示した制御ループの実行タイミングを説明する図である。以下の説明において、特に記載した場合を除き、マクロサイクルは4000ms、サブスケジュールの設定可能最大数は「4」であるものとする。図3に示した制御ループ131の実行周期が4000msの場合、図1に示した設定部33は、図8に示すように、スケジュール200を構成するサブスケジュール210の周期として、制御ループ131の実行周期と同じ4000msを設定する。これにより、スケジュール200においてサブスケジュール210が1回実行される。なお、制御ループ131の実行周期は、図1に示した入出力インターフェース部31を介してユーザにより入力される。次に、図1に示した実行データ生成部34は、制御ループ131に対してサブスケジュール210を割り当てる。また、制御ループ131を構成するAI機能ブロック(AI1)13a、PID機能ブロック(PID1)13b、及びAO機能ブロック(AO1)13cを、サブスケジュール210においてそれぞれ1回実行させるために、実行データ生成部34は、実行データ211、212、213を生成する。さらに、図3に示したAI機能ブロック(AI1)13aとPID機能ブロック(PID1)13bとの接続は、異なる装置、すなわち、図2に示したように、フィールド装置11Aの機能ブロックとフィールド装置11Bの機能ブロックとの接続なので、AI機能ブロック(AI1)13aの出力をPID機能ブロック(PID1)13bに入力させるために、実行データ生成部34は、セグメント10における通信(C1)131aを実行させる実行データ214を生成する。このように、サブスケジュール210において制御ループ131が1回実行される。
FIG. 8 is a diagram for explaining the execution timing of the control loop shown in FIG. In the following description, it is assumed that the macro cycle is 4000 ms and the maximum number of sub-schedules that can be set is “4”, unless otherwise specified. When the execution cycle of the
生成された各実行データ211〜214は、サブスケジュール210において所定のタイミングで実行するために、基準時間(図3において0ms)からのオフセット時間を含む。図8に示す例では、実行データ211は0msのオフセット時間が設定され、実行データ212は200msのオフセット時間が設定され、実行データ213は330msのオフセット時間が設定され、実行データ214は170msのオフセット時間が設定される。なお、各実行データ211〜214のオフセット時間は、入出力インターフェース部31を介してユーザにより入力される。
Each of the generated
図9は、図4に示した制御ループの実行タイミングを説明する図である。図4に示した制御ループ132の実行周期が2000msの場合、図1に示した設定部33は、図9に示すように、スケジュール200を構成するサブスケジュール220の周期として、制御ループ132の実行周期と同じ2000msを設定する。これにより、スケジュール200においてサブスケジュール210が2回実行される。なお、制御ループ132の実行周期は、図1に示した入出力インターフェース部31を介してユーザにより入力される。次に、図1に示した実行データ生成部34は、制御ループ132に対してサブスケジュール220を割り当てる。また、制御ループ132を構成するAI機能ブロック(AI2)13d、PID機能ブロック(PID2)13e、及びAO機能ブロック(AO2)13fを、サブスケジュール220においてそれぞれ1回実行させるために、実行データ生成部34は、実行データ221、222、223を生成する。さらに、実行データ生成部34は、図4に示したAI機能ブロック(AI2)13dとPID機能ブロック(PID2)13eとの接続は、異なる装置、すなわち、図2に示したように、フィールド装置11Cの機能ブロックとフィールド装置11Dの機能ブロックとの接続なので、AI機能ブロック(AI2)13dの出力をPID機能ブロック(PID2)13fに入力させるために、セグメント10における通信(C2)132aを実行させる実行データ224を生成する。これにより、サブスケジュール220において制御ループ132が1回実行される。
FIG. 9 is a diagram for explaining the execution timing of the control loop shown in FIG. When the execution cycle of the
生成された各実行データ221〜224は、サブスケジュール220において所定のタイミングで実行するために、基準時間(図9において0ms又は2000ms)からのオフセット時間を含む。図9に示す例では、実行データ221は0msのオフセット時間が設定され、実行データ222は140msのオフセット時間が設定され、実行データ223は270msのオフセット時間が設定され、実行データ214は110msのオフセット時間が設定される。なお、各実行データ221〜224のオフセット時間は、入出力インターフェース部31を介してユーザにより入力される。
Each of the generated
図10は、図5に示した制御ループの実行タイミングを説明する図である。図5に示した制御ループ133の実行周期が1000msの場合、図1に示した設定部33は、図10に示すように、スケジュール200を構成するサブスケジュール230の周期として、制御ループ133の実行周期と同じ1000msを設定する。これにより、スケジュール200においてサブスケジュール210が4回実行される。なお、制御ループ133の実行周期は、図1に示した入出力インターフェース部31を介してユーザにより入力される。次に、図1に示した実行データ生成部34は、制御ループ133に対してサブスケジュール230を割り当てる。また、制御ループ133を構成するAI機能ブロック(AI3)13g、PID機能ブロック(PID3)13h、及びAO機能ブロック(AO3)13iを、サブスケジュール230においてそれぞれ1回実行させるために、実行データ生成部34は、実行データ231、232、233を生成する。さらに、図5に示したAI機能ブロック(AI3)13gとPID機能ブロック(PID3)13hとの接続は、異なる装置、すなわち、図2に示したように、フィールド装置11Eの機能ブロックとフィールド装置11Fの機能ブロックとの接続なので、AI機能ブロック(AI3)13gの出力をPID機能ブロック(PID3)13hに入力させるために、実行データ生成部34は、セグメント10における通信(C3)133aを実行させる実行データ234を生成する。これにより、サブスケジュール230において制御ループ133が1回実行される。
FIG. 10 is a diagram for explaining the execution timing of the control loop shown in FIG. When the execution cycle of the
生成された各実行データ231〜234は、サブスケジュール230において所定のタイミングで実行するために、基準時間(図10において0ms、1000ms、2000ms、又は3000ms)からのオフセット時間を含む。図10に示す例では、実行データ231は0msのオフセット時間が設定され、実行データ232は110msのオフセット時間が設定され、実行データ233は240msのオフセット時間が設定され、実行データ234は80msのオフセット時間が設定される。なお、各実行データ231〜234のオフセット時間は、入出力インターフェース部31を介してユーザにより入力される。
Each of the generated
図11は、図6に示した制御ループの実行タイミングを説明する図である。図6に示した制御ループ134の実行周期が800msの場合、図1に示した設定部33は、図11に示すように、スケジュール200を構成するサブスケジュール240の周期として、制御ループ133の実行周期と同じ800msを設定する。これにより、スケジュール200においてサブスケジュール210が5回実行される。なお、制御ループ134の実行周期は、図1に示した入出力インターフェース部31を介してユーザにより入力される。次に、図1に示した実行データ生成部34は、制御ループ134に対してサブスケジュール240を割り当てる。また、制御ループ134を構成するAI機能ブロック(AI4)13j、PID機能ブロック(PID4)13k、及びAO機能ブロック(AO4)13lを、サブスケジュール240においてそれぞれ1回実行させるために、実行データ生成部34は、実行データ241、242、243を生成する。また、図6に示したAI機能ブロック(AI4)13jとPID機能ブロック(PID4)13kとの接続は、異なる装置、すなわち、図2に示すように、フィールド装置11Gの機能ブロックとフィールド装置11Hの機能ブロックとの接続なので、AI機能ブロック(AI4)13jの出力をPID機能ブロック(PID4)13kに入力させるために、実行データ生成部34は、セグメント10における通信(C4)134aを実行させる実行データ244を生成する。これにより、サブスケジュール240において制御ループ134が1回実行される。
FIG. 11 is a diagram for explaining the execution timing of the control loop shown in FIG. When the execution period of the
生成された各実行データ241〜244は、サブスケジュール240において所定のタイミングで実行するために、基準時間(図11において0ms、800ms、1600ms、2400ms、又は3200ms)からのオフセット時間を含む。図11に示す例では、実行データ241は0msのオフセット時間が設定され、実行データ242は170msのオフセット時間が設定され、実行データ243は300msのオフセット時間が設定され、実行データ244は140msのオフセット時間が設定される。なお、各実行データ241〜244のオフセット時間は、入出力インターフェース部31を介してユーザにより入力される。
Each of the generated
図7に示した制御ループ135の実行周期が500msの場合、設定されたサブスケジュール210〜240の数が設定最大値(「4」)に達しているため、従来は、制御ループ135の実行をスケジューリングできないか、又は、設定された4つのサブスケジュール210〜240の周期のうち、最も近い周期、例えば800msに、制御ループ135の実行周期を変更する等の対応が取られていた。
When the execution cycle of the
図12は、図7に示した制御ループの実行タイミングを説明する図である。これに対し、設定されたサブスケジュール210〜240の数が設定最大値(「4」)に達している場合であって、制御ループ135の実行周期と同じ周期を有するサブスケジュール210〜240が存在しない場合、図1に示した実行データ作成部34は、図12に示すように、制御ループ135の実行周期のi倍(iは2以上の整数)の周期を有するサブスケジュール、例えば2倍の周期を有するサブスケジュール230を制御ループ135に対して割り当てる。なお、制御ループ135の実行周期は、図1に示した入出力インターフェース部31を介してユーザにより入力される。また、制御ループ135を構成するAI機能ブロック(AI5)13m、PID機能ブロック(PID5)13n、及びAO機能ブロック(AO5)13oを、サブスケジュール230においてそれぞれi回、すなわち2回実行させるために、実行データ作成部34は、実行データ235a、236a、237aと、実行データ235b、236b、237bと、を生成する。また、図7に示したAI機能ブロック(AI5)13mとPID機能ブロック(PID5)13nとの接続は、異なる装置、すなわち、図2に示すように、フィールド装置11Iの機能ブロックとフィールド装置11Jの機能ブロックとの接続なので、AI機能ブロック(AI5)13mの出力をPID機能ブロック(PID5)13nに入力させるために、スケジュール作成装置30はセグメント10における通信(C5)135aを2回実行する実行データ238a及び実行データ238bを生成する。このように、サブスケジュール230において制御ループ135を実行させる、実行データ235a,236a,237a,238aと、実行データ235b,236b,237b,238bとの2個の実行データを生成することにより、1000msの周期を有するサブスケジュール230において、制御ループ135を1000ms/2、すなわち500msの実行周期で2回実行させることが可能となる。
FIG. 12 is a diagram for explaining the execution timing of the control loop shown in FIG. On the other hand, when the number of set
なお、前述したように、制御ループ135の実行周期のi倍(iは2以上の整数)の周期を有し、それぞれの周期が相互に異なる複数のサブスケジュール210,220,230が設定されている場合に、実行データ作成部34は、最短の周期を有するサブスケジュール230において実行データをi個、すなわち2個生成することが好ましい。これにより、例えば、最長の周期を有するサブスケジュール210において実行データを生成する場合、制御ループを8回実行させる必要があるため、8個の実行データを生成するのに対し、最短の周期を有するサブスケジュール230において実行データを生成すると2個の実行データで済み、生成する実行データの数を減少させることができる。
As described above, a plurality of
生成された各実行データ235a、236a、237a、238aは、サブスケジュール230において所定のタイミングで実行するために、基準時間(図12において0ms、1000ms、2000ms、又は3000ms)からのオフセット時間を含む。図12に示す例では、実行データ235aは0msのオフセット時間が設定され、実行データ236aは230msのオフセット時間が設定され、実行データ237aは360msのオフセット時間が設定され、実行データ238aは200msのオフセット時間が設定される。なお、各実行データ235a、236a、237a、238aのオフセット時間は、入出力インターフェース部31を介してユーザにより入力される。また、生成された各実行データ235b、236b、237b、238bは、サブスケジュール230において所定のタイミングで実行するために、基準時間(図12において0ms、1000ms、2000ms、又は3000ms)からのオフセット時間を含む。図12に示す例では、実行データ235bは500msのオフセット時間が設定され、実行データ236bは730msのオフセット時間が設定され、実行データ237bは860msのオフセット時間が設定され、実行データ238bは700msのオフセット時間が設定される。なお、各実行データ235b、236b、237b、238bのオフセット時間は、入出力インターフェース部31を介してユーザにより入力されたオフセット時間に、制御ループ135の実行周期を加算して算出する。このように、2個の実行データ235a、236a、237a、238a、235b、236b、237b、238bを生成する際に、それぞれのオフセット時間の間隔を実行周期、すなわち500msに設定することで、容易に当該サブスケジュール230において制御ループ135を2回実行させることができる。
Each of the generated
図1に示したスケジュールプログラム作成部35は、サブスケジュール210〜240ごとに作成された実行データをマージしてスケジュールプログラム32cを作成する。図1に示したデータロード部36は、作成されたスケジュールプログラム32cと、記憶部32のマクロサイクルデータ32a及びサブスケジュールデータ32bを、図1に示したコントローラ20及びフィールドバスFを介してリンクマスタデバイス12に送信(ロード)する。これにより、リンクマスタデバイス12は、スケジュール作成装置30により作成されたスケジュールプログラム32cを実行することができる。
The schedule
次に、図13を参照しながらスケジュール作成方法及びスケジュール作成プログラムについて説明する。図13は、図1に示したスケジュール作成装置の動作を説明するフローチャートである。ユーザの操作により制御ループが作成され、図1に示した入出力インターフェース部31を介して制御ループの実行周期が入力されると、図1に示したスケジュール作成装置30は、処理S300を開始する。すなわち、図13に示すように、図1に示す設定部33は、図1に示した記憶部32からサブスケジュールデータ32bを読み出し、入力された制御ループの実行周期の数(種類)が、サブスケジュールの設定可能最大数より大きいか否かを判定する(S301)。なお、制御ループの実行周期の数とは、その種類の数を意味し、例えば、4つの制御ループが全て同じ実行周期を有する場合、制御ループの実行周期の数は「4」であるが、その種類数は1つであるため、設定部33は、制御ループの実行周期の数(種類)を「1」として判定する。
Next, a schedule creation method and a schedule creation program will be described with reference to FIG. FIG. 13 is a flowchart for explaining the operation of the schedule creation device shown in FIG. When a control loop is created by a user's operation and the execution period of the control loop is input via the input /
S301の判定の結果、入力された制御ループの実行周期の数(種類)がサブスケジュールの設定可能最大数より大きい場合、設定部33は、入力された制御ループの実行周期に基づいて、設定可能最大数までサブスケジュールの周期を設定し(S302)、記憶部32にサブスケジュールデータ32bを書き込む(更新する)。一方、S301の判定の結果、入力された制御ループの実行周期の数(種類)がサブスケジュールの設定可能最大数より大きくない場合、設定部33は、入力された制御ループの実行周期に基づいて、サブスケジュールの周期を設定し(S303)、記憶部32にサブスケジュールデータ32bを書き込む(更新する)。なお、設定部33は、S302又はS302において、同時に、設定された複数のサブスケジュールの周期における最小公倍数をマクロサイクルとして設定し、マクロサイクルデータ32aを更新するようにしてもよい。
As a result of the determination in S301, when the number (type) of execution cycles of the input control loop is larger than the maximum number that can be set in the sub-schedule, the setting
図8乃至図12に示した例の場合、サブスケジュールの設定最大値が「4」に対して、形成された制御ループ131〜135の実行周期は5つ(5種類)であるから、S302において、設定部33は、例えば、実行周期の長い順、又は実行周期の入力順に、サブスケジュール210〜240の周期として、4000ms、2000ms、1000ms、800msを設定する。また、設定部33は、マクロサイクル(スケジュール200の周期)として、最小公倍数である4000msを設定する。
In the case of the example shown in FIGS. 8 to 12, since the set maximum value of the sub-schedule is “4”, the execution cycles of the formed
本実施形態では、入力された制御ループの実行周期に基づいて、S302又はS303において、サブスケジュールの周期、およびマクロサイクルを自動的に設定するようにしたが、これに限定されない。例えば、あらかじめ、サブスケジュールの周期、及びマクロサイクルをユーザが入力して手動で設定しておいてもよい。この場合、処理S300は、次のS304から開始する。 In the present embodiment, the sub-schedule period and the macro cycle are automatically set in S302 or S303 based on the input execution period of the control loop. However, the present invention is not limited to this. For example, the user may manually set the sub-schedule period and the macro cycle in advance. In this case, the process S300 starts from the next S304.
S302又はS303の後、図1に示した実行データ作成部34は、記憶部32からサブスケジュールデータ32bを読み出し、入力された制御ループの実行周期と設定された各サブスケジュールの周期とに基づいて、各制御ループに対してサブスケジュールを割り当て可能か否か判定する(S304)。具体的には、実行データ作成部34は、制御ループの実行周期と同じ周期を有するサブスケジュールが設定されている場合、又は制御ループの実行周期のi倍(iは2以上の整数)の周期を有するサブスケジュールが設定されている場合に、サブスケジュールを割り当て可能であると判定する。一方、実行データ作成部34は、その他の場合、すなわち、制御ループの実行周期と同じ周期を有するサブスケジュールが設定されていない場合であって、制御ループの実行周期のi倍(iは2以上の整数)の周期を有するサブスケジュールが設定されていない場合に、サブスケジュールを割り当て可能ではない(割り当て不能)と判定する。
After S302 or S303, the execution
S304の判定の結果、サブスケジュールを割り当て可能である場合、実行データ作成部34は、記憶部32からサブスケジュールデータ32bを読み出して、形成された制御ループに対してサブスケジュールを割り当てるとともに、入出力インターフェース部31を介して入力されたオフセット時間に基づいて、制御ループごとに、各機能ブロック及び通信の実行データを生成する(S305)。一方、S304の判定の結果、サブスケジュールを割り当て不能である場合、実行データ作成部34は、入出力インターフェース部を介してエラーを出力し(S306)、スケジュール作成装置30は処理S300を終了する。
If the sub-schedule can be assigned as a result of the determination in S304, the execution
なお、S306において、エラーを出力する前に、実行データ作成部34は、入力された制御ループの実行周期を、設定されているサブスケジュールの周期に基づく周期に変更するか否かを問うようにしてもよい。例えば、サブスケジュールの周期として、4000ms、2000ms、1000ms、800msが設定されており、入力された制御ループの実行周期が501msである場合、制御ループの実行周期が500msであれば、周期が1000msのサブスケジュールを割り当て可能であるから、実行データ作成部34は、入出力インターフェース部31を介して、制御ループの実行周期を500msに変更するか否かを問うメッセージを出力する。この場合、入力された制御ループの実行周期が500msに変更されたときには、エラーを出力することなく、実行データ作成部34は、S305のステップを行う。
In S306, before outputting an error, the execution
図3乃至図6及び図8乃至図11に示した制御ループ131〜134の例の場合、実行データ作成部34は、S304で、各制御ループ131〜134に対して、同じ周期を有するサブスケジュール210〜240をそれぞれ割り当てる。次に、実行データ作成部34は、S305で、スケジュール210において制御ループ131の実行データ211〜214を、スケジュール220において制御ループ132の実行データ221〜224を、スケジュール230において制御ループ133の実行データ231〜234を、スケジュール240において制御ループ134の実行データ241〜244を、それぞれ生成する。
In the case of the
また、図7及び図12に示した制御ループ135の例の場合、実行データ作成部34は、S304で、設定されている複数のサブスケジュール210〜240の中から、制御ループ135の実行周期のi倍(iは2以上の整数)の周期を有するサブスケジュールを検索する。この場合、実行データ作成部34は、2倍の周期を有するサブスケジュール230と、4倍の周期を有するサブスケジュール220と、8倍の周期を有するサブスケジュール210とを検出する。ここで、実行データ作成部34は、最短の周期を有するサブスケジュール230を制御ループ135に対して割り当てる。次に、実行データ作成部34は、割り当てられたスケジュール230において制御ループ135を実行させる、実行データ235a、236a、237a、238aと、実行データ235b、236b、237b、238bとの2個生成する。これにより、1000msの周期を有するサブスケジュール230において、制御ループ135を1000ms/2、すなわち500msの実行周期で2回実行させることが可能となる。
Further, in the case of the example of the
実行データ作成部34により生成される、実行データ235a、236a、237a、238a、235b、236b、237b、238bは、サブスケジュール230の開始時間を基準とするオフセット時間を含むことが好ましい。これにより、2個の実行データ235a、236a、237a、238a、235b、236b、237b、238bを生成する際に、それぞれのオフセット時間の間隔を実行周期、すなわち500msに設定することで、容易に当該サブスケジュール230において制御ループ135を2回実行させることができる。
The
なお、前述したように、制御ループ135の実行周期のi倍(iは2以上の整数)の周期を有し、それぞれの周期が相互に異なる複数のサブスケジュール210,220,230が設定され、サブスケジュールデータ32bとして記憶部32に記憶されている場合に、実行データ作成部34は、最短の周期を有するサブスケジュール230において実行データをi個、すなわち2個生成することが好ましい。これにより、例えば、最長の周期を有するサブスケジュール210において実行データを生成する場合、制御ループを8回実行させる必要があるため、8個の実行データを生成するのに対し、最短の周期を有するサブスケジュール230において実行データを生成すると2個の実行データで済み、生成する実行データの数を減少させることができる。
As described above, a plurality of
S305の後、スケジュールプログラム作成部35は、サブスケジュールごとに作成された実行データをマージしてスケジュールプログラム32cを作成し(S306)、記憶部32にスケジュールプログラム32cを書き込む。
After S305, the schedule
S306の後、データロード部36は、記憶部32からマクロサイクルデータ32a、サブスケジュールデータ32b、及びスケジュールプログラム32cを読み出し、図1に示したコントローラ20及びフィールドバスFを介してリンクマスタデバイス12に送信(ロード)し(S307)、スケジュール作成装置30は処理S300を終了する。これにより、リンクマスタデバイス12は、スケジュール作成方法又はスケジュール作成プログラムにより作成されたスケジュールを実行することが可能となる。
After S306, the
送信(ロード)されたマクロサイクルデータ32a、サブスケジュールデータ32b、及びスケジュールプログラム32cは、それぞれマクロサイクルデータ122a、サブスケジュールデータ122b、スケジュールプログラム122cとして、記憶部122に記憶される。これにより、スケジュールプログラム32cに基づいて、リンクマスタデバイス12のLAS部121は、セグメント10における周期的動作を制御することができる。
The transmitted (loaded) macrocycle
本実施形態では、スケジュール作成装置30がスケジュールプログラム32cを作成するようにしたが、これに限定されない。リンクマスタデバイス12に送信(ロード)可能である限り、他の装置、例えば、コントローラ20やリンクマスタデバイス12自身であってもよい。また、スケジュールプログラム32cを作成するのは、装置、すなわちハードウエアに限定されず、ハードウエアが実行するソフトウエア(プログラム)であってもよい。さらに、スケジュールプログラム32cはソースプログラムであってもオブジェクトプログラムであってもよい。また、作成されるスケジュールは、スケジュールプログラム32cのようにプログラム形式でなくても、データ形式やファイル形式であってもよい。
In the present embodiment, the schedule creation device 30 creates the
このように、本実施形態におけるスケジュール作成装置30によれば、制御ループ135の実行周期のi倍(iは2以上の整数)の周期を有するサブスケジュール230が設定されている場合に、当該サブスケジュール230において当該制御ループ135を実行させる、実行データ235a、236a、237a、238aと、実行データ235b、236b、237b、238bとの2個生成する。これにより、1000msの周期を有するサブスケジュール230において、制御ループ135を1000ms/2、すなわち500msの実行周期で2回実行させることが可能となる。これにより、制御ループの実行周期の数(種類)が、サブスケジュールの設定可能最大数より大きい場合でも、制御ループの実行周期のi倍の周期を有するサブスケジュールが設定されている場合に、当該制御ループを所望の実行周期で実行させることができる。
As described above, according to the schedule creation device 30 in the present embodiment, when a sub-schedule 230 having a period that is i times (i is an integer of 2 or more) the execution period of the
また、本実施形態におけるスケジュール作成装置30によれば、実行データ235a、236a、237a、238a、235b、236b、237b、238bは、サブスケジュール230の開始時間を基準とするオフセット時間を含む。これにより、2個の実行データ235a、236a、237a、238a、235b、236b、237b、238bを生成する際に、それぞれのオフセット時間の間隔を実行周期、すなわち500msに設定することで、容易に当該サブスケジュール230において制御ループ135を2回実行させることができる。
Further, according to the schedule creation device 30 in the present embodiment, the
また、本実施形態におけるスケジュール作成装置30によれば、制御ループ135の実行周期のi倍(iは2以上の整数)の周期を有し、それぞれの周期が相互に異なる複数のサブスケジュール210,220,230が設定されている場合に、当該複数のサブスケジュール210,220,230のうちの最短の周期を有するサブスケジュール230において2個の実行データ235a、236a、237a、238a、235b、236b、237b、238bを生成する。これにより、例えば、最長の周期を有するサブスケジュール210において実行データを生成する場合、制御ループ135を8回実行させる必要があるため、8個の実行データを生成するのに対し、最短の周期を有するサブスケジュール230において実行データを生成すると2個の実行データで済み、生成する実行データの数を減少させることができる。これにより、作成するスケジュールプログラム32cのサイズ等を小さくすることができる。
Further, according to the schedule creation device 30 in the present embodiment, a plurality of
また、本実施形態におけるスケジュール作成装置30によれば、制御ループ131〜135の動作タイミングを制御するリンクマスタデバイス12に、フィールドバスFを介してスケジュールプログラム32cを送信するデータロード部36を更に備える。これにより、リンクマスタデバイス12は、スケジュール作成装置30により作成されたスケジュールプログラム32cを実行することができる。
Further, according to the schedule creation device 30 in the present embodiment, the
また、本実施形態におけるスケジュール作成方法及びスケジュール作成プログラムによれば、制御ループ135の実行周期のi倍(iは2以上の整数)の周期を有するサブスケジュール230が設定されている場合に、実行データ生成部34が、当該サブスケジュール230において当該制御ループ135を実行させる、実行データ235a、236a、237a、238aと、実行データ235b、236b、237b、238bとの2個生成するステップを備える。これにより、1000msの周期を有するサブスケジュール230において、制御ループ135を1000ms/2、すなわち500msの実行周期で2回実行させることが可能となる。これにより、制御ループの実行周期の数(種類)が、サブスケジュールの設定可能最大数より大きい場合でも、制御ループの実行周期のi倍の周期を有するサブスケジュールが設定されている場合に、当該制御ループを所望の実行周期で実行させることができる。
In addition, according to the schedule creation method and schedule creation program in the present embodiment, when the sub-schedule 230 having a period that is i times (i is an integer of 2 or more) the execution period of the
また、本実施形態におけるスケジュール作成方法及びスケジュール作成プログラムによれば、実行データ235a、236a、237a、238a、235b、236b、237b、238bは、サブスケジュール230の開始時間を基準とするオフセット時間を含む。これにより、2個の実行データ235a、236a、237a、238a、235b、236b、237b、238bを生成する際に、それぞれのオフセット時間の間隔を実行周期、すなわち500msに設定することで、容易に当該サブスケジュール230において制御ループ135を2回実行させることができる。
Further, according to the schedule creation method and schedule creation program in the present embodiment, the
また、本実施形態におけるスケジュール作成方法及びスケジュール作成プログラムによれば、制御ループ135の実行周期のi倍(iは2以上の整数)の周期を有し、それぞれの周期が相互に異なる複数のサブスケジュール210,220,230が設定されている場合に、実行データ生成部34が、当該複数のサブスケジュール210,220,230のうちの最短の周期を有するサブスケジュール230において2個の実行データ235a、236a、237a、238a、235b、236b、237b、238bを生成する。これにより、例えば、最長の周期を有するサブスケジュール210において実行データを生成する場合、制御ループ135を8回実行させる必要があるため、8個の実行データを生成するのに対し、最短の周期を有するサブスケジュール230において実行データを生成すると2個の実行データで済み、生成する実行データの数を減少させることができる。これにより、作成するスケジュールプログラム32cのサイズ等を小さくすることができる。
Further, according to the schedule creation method and schedule creation program in the present embodiment, a plurality of sub-cycles having a cycle i times (i is an integer of 2 or more) the execution cycle of the
また、本実施形態におけるスケジュール作成方法及びスケジュール作成プログラムによれば、制御ループ131〜135の動作タイミングを制御するリンクマスタデバイス12に、データロード部36が、フィールドバスFを介してスケジュールプログラム32cを送信するステップを更に備える。これにより、リンクマスタデバイス12は、スケジュール作成方法又はスケジュール作成プログラムにより作成されたスケジュールプログラム32cを実行することができる。
Further, according to the schedule creation method and schedule creation program in the present embodiment, the
[第2実施形態]
図14及び図15は、本発明の第2実施形態を示すためのものである。なお、特に記載がない限り、前述した実施形態と同一構成部分は同一符号をもって表し、その説明を省略する。また、図示しない構成部分は、前述した実施形態と同様とする。
[Second Embodiment]
14 and 15 are for illustrating a second embodiment of the present invention. Unless otherwise specified, the same components as those in the above-described embodiment are denoted by the same reference numerals, and the description thereof is omitted. Further, components not shown in the figure are the same as those in the above-described embodiment.
図14は、本発明の第2実施形態におけるフィールド機器管理システムの概略構成を説明するブロック図である。図14に示すように、セグメント10は、第1実施形態のリンクマスタデバイス12と同様の構成を有する、複数のリンクマスタデバイス12A、12B、12Cとを備える。
FIG. 14 is a block diagram illustrating a schematic configuration of a field device management system according to the second embodiment of the present invention. As shown in FIG. 14, the
各リンクマスタデバイス12A、12B、12Cには、設定可能なサブスケジュールの数の最大値、すなわち設定可能最大数が定められている。各リンクマスタデバイス12A、12B、12Cの記憶部122A、122B、122Cには、それぞれの設定可能最大数が記憶されている。各リンクマスタデバイス12A、12B、12Cの設定可能最大数は、リンクマスタデバイスの能力(性能)に依存し、マルチベンダ対応のフィールドバスFにおいては、各リンクマスタデバイス12A、12B、12Cによって設定可能最大数が異なる場合がある。以下の説明において、特に記載した場合を除き、設定可能最大数として、リンクマスタデバイス12Aに「4」、リンクマスタデバイス12Bに「3」、リンクマスタデバイス12Cに「2」が、記憶されているものとする。
Each
セグメント10に複数のリンクマスタデバイス12A、12B、12Cが存在する場合、セグメント10において作動しているリンクマスタデバイスは1つであるが、何らかの理由で当該リンクマスタデバイスの動作が停止した場合に、待機している他のリンクマスタデバイスに自動的に切り替わり、セグメント10におけるスケジュールの実行を継続するようになっている。例えば、各リンクマスタデバイス12A、12B、12Cの設定可能最大数が全て「2」の場合、作動中のリンクマスタデバイス12Aが停止したときに、リンクマスタデバイス12B又はリンクマスタデバイス12Cに切り替わり、スケジュールの実行を継続する。
When there are a plurality of
スケジュール作成装置30Aは、設定可能最大数取得部37を備える。設定可能最大数取得部37は、フィールドバスF及びコントローラ20を介して各リンクマスタデバイス12A、12B、12Cから設定可能最大数を取得する。設定可能最大数取得部37は、例えば、セグメント10に新たなリンクマスタデバイスが接続(設置)されたときに、設定可能最大数を取得する。
The schedule creation device 30 </ b> A includes a settable maximum
設定部33は、入出力インターフェース部31を介して入力される制御ループの実行周期と、設定可能最大数取得部37により取得された複数の設定可能最大数のうちの最小値と、に基づいて、複数のサブスケジュールを設定する。
The setting
前述の例では、リンクマスタデバイス12Cに記憶された設定可能最大数「2」が最小値であるため、設定部33は、2つのサブスケジュールを設定する。これにより、セグメント10における全てのリンクマスタデバイス12A、12B、12Cが設定可能な数のサブスケジュールが設定される。
In the above example, since the maximum settable number “2” stored in the
データロード部36は、スケジュールプログラム作成部35により作成されたスケジュールプログラム32cを含むデータを、フィールドバスFを介して各リンクマスタデバイス12A、12B、12Cに送信する。
The data load
次に、図15を参照しながらスケジュール作成方法及びスケジュール作成プログラムについて説明する。図15は、図14に示したスケジュール作成装置の動作を説明するフローチャートである。図13に示した処理S300を実行する前に、図14に示したスケジュール作成装置30Aは、処理S400を開始する。すなわち、設定可能最大数取得部37は、フィールドバスF及びコントローラ20を介して各リンクマスタデバイス12A、12B、12Cに設定可能最大数の問い合わせ制御信号を送信し、各リンクマスタデバイス12A、12B、12Cから設定可能最大数を取得する(S401)。
Next, a schedule creation method and a schedule creation program will be described with reference to FIG. FIG. 15 is a flowchart for explaining the operation of the schedule creation device shown in FIG. Before executing the process S300 illustrated in FIG. 13, the
次に、設定可能最大数取得部37は、各リンクマスタデバイス12A、12B、12Cから設定可能最大数を受信し、取得済であるか否かを判定する(S402)。なお、設定可能最大数取得部37は、全てのリンクマスタデバイス12A、12B、12Cから設定可能最大数を受信した場合に取得済であると判定し、全てのリンクマスタデバイス12A、12B、12Cのうち1つでも設定可能最大数を受信していない場合には取得済でないと判定する。
Next, the settable maximum
S402の判定の結果、各リンクマスタデバイス12A、12B、12Cから設定可能最大数を取得済である場合、設定可能最大数取得部37は、各リンクマスタデバイス12A、12B、12Cから取得した設定可能最大数のうちの最小値を決定し(S403)、当該最小値を設定可能最大数として、記憶部32にサブスケジュールデータ32bを書き込む(更新する)。S403の後、スケジュール作成装置30Aは処理S400を終了する。一方、S402の判定の結果、各リンクマスタデバイス12A、12B、12Cから設定可能最大数を取得済でない場合、設定可能最大数取得部37は、所定時間経過後に、再度S401を行う。
As a result of the determination in S402, when the settable maximum number has been acquired from each
処理S400の後、図13に示した処理S300において、設定部33は、S301において記憶部32からサブスケジュールデータ32bを読み出し、S302においてS403で決定した設定可能最大数までサブスケジュールの周期を設定する。また、データロード部36は、S307において、記憶部32からマクロサイクルデータ32a、サブスケジュールデータ32b、及びスケジュールプログラム32cを読み出し、コントローラ20及びフィールドバスFを介して各リンクマスタデバイス12A、12B、12Cに送信(ロード)する。
After the process S400, in the process S300 shown in FIG. 13, the setting
前述の例では、S401及びS402において、設定可能最大数取得部37は、リンクマスタデバイス12Aから設定可能最大数「4」を、リンクマスタデバイス12Bから設定可能最大数「3」を、リンクマスタデバイス12Cから設定可能最大数「2」を、それぞれ取得する。S403において、設定可能最大数取得部37は、リンクマスタデバイス12Cから取得した設定可能最大数「2」が最小値であるため、設定可能最大数として「2」を記憶部32のサブスケジュールデータ32bに書き込む(更新する)。次に、設定部33は、S302において2つのサブスケジュールを設定する。これにより、セグメント10における全てのリンクマスタデバイス12A、12B、12Cが設定可能な数のサブスケジュールが設定される。
In the above-described example, in S401 and S402, the settable maximum
本実施形態では、設定可能最大数取得部37が各リンクマスタデバイス12A、12B、12Cから設定可能最大数を取得するようにしたが、これに限定されない。例えば、フィールドバスFに接続される他の機器に、各リンクマスタデバイス12A、12B、12Cの設定可能最大数を記憶しておき、設定可能最大数取得部37は、当該機器に記憶された各リンクマスタデバイス12A、12B、12Cの設定可能最大数を取得するようにしてもよい。
In the present embodiment, the maximum settable
このように、本実施形態におけるスケジュール作成装置30Aによれば、フィールドバスFのセグメント10にリンクマスタデバイス12A、12B、12Cが複数存在する場合に、フィールドバスFを介して各リンクマスタデバイス12A、12B、12Cの設定可能最大数を取得する設定可能最大数取得部37と、取得された各リンクマスタデバイス12A、12B、12Cの設定可能最大数のうちの最小値に基づいて、サブスケジュールを設定する設定部33と、を備える。これにより、セグメント10における全てのリンクマスタデバイス12A、12B、12Cが設定可能な数のサブスケジュールが設定される。これにより、セグメント10における全てのリンクマスタデバイス12A、12B、12Cが実行可能なスケジュールプログラム32cを各リンクマスタデバイス12A、12B、12Cに送信することができる。
As described above, according to the
このように、本実施形態におけるスケジュール作成方法及びスケジュール作成プログラムによれば、フィールドバスFのセグメント10にリンクマスタデバイス12A、12B、12Cが複数存在する場合に、設定可能最大数取得部37が、フィールドバスFを介して各リンクマスタデバイス12A、12B、12Cの設定可能最大数を取得するステップと、設定部33が、取得された各リンクマスタデバイス12A、12B、12Cの設定可能最大数のうちの最小値に基づいて、サブスケジュールを設定するステップと、を備える。これにより、セグメント10における全てのリンクマスタデバイス12A、12B、12Cが設定可能な数のサブスケジュールが設定される。これにより、セグメント10における全てのリンクマスタデバイス12A、12B、12Cが実行可能なスケジュールプログラム32cを各リンクマスタデバイス12A、12B、12Cに送信することができる。
Thus, according to the schedule creation method and schedule creation program in the present embodiment, when there are a plurality of
なお、前述の各実施形態の構成は、組み合わせたり或いは一部の構成部分を入れ替えたりしたりしてもよい。また、本発明の構成は前述の実施形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加えてもよい。 Note that the configurations of the above-described embodiments may be combined or a part of the components may be replaced. The configuration of the present invention is not limited to the above-described embodiment, and various modifications may be made without departing from the scope of the present invention.
10…セグメント、12,12A,12B,12C…リンクマスタデバイス、30,30A…スケジュール作成装置、33…設定部、34…実行データ生成部、36…データロード部、37…設定可能最大素取得部、131〜135…制御ループ、200…スケジュール、210〜240…サブスケジュール、F…フィールドバス
DESCRIPTION OF
Claims (7)
前記制御ループの実行周期のi倍(iは2以上の整数)の周期を有する前記サブスケジュールが設定されている場合に、該サブスケジュールにおいて該制御ループを実行させる実行データをi個生成する実行データ生成部と、
前記制御ループの動作タイミングを制御するリンクマスタデバイスに、前記フィールドバスを介して前記スケジュールを送信する送信部と、を備え、
前記リンクマスタデバイスには設定可能な前記サブスケジュールの数の最大値である設定可能最大数が定められており、
前記フィールドバスのセグメントに前記リンクマスタデバイスが複数存在する場合に、前記フィールドバスを介して前記各リンクマスタデバイスの前記設定可能最大数を取得する設定可能最大数取得部と、
取得された前記各リンクマスタデバイスの前記設定可能最大数のうちの最小値に基づいて、前記サブスケジュールを設定するサブスケジュール設定部と、を更に備える
ことを特徴とするスケジュール作成装置。 A schedule creation device for creating a schedule for periodically executing a control loop constituted by a plurality of functional blocks of a fieldbus using a plurality of sub-schedules,
Execution for generating i execution data for executing the control loop in the sub-schedule when the sub-schedule having a period i times (i is an integer of 2 or more) the execution period of the control loop is set A data generator ;
A link master device that controls the operation timing of the control loop, and a transmission unit that transmits the schedule via the fieldbus,
The link master device has a settable maximum number that is the maximum number of subschedules that can be set,
When there are a plurality of link master devices in the fieldbus segment, a settable maximum number acquisition unit that acquires the settable maximum number of each link master device via the fieldbus;
A schedule creation apparatus , further comprising: a sub-schedule setting unit configured to set the sub-schedule based on a minimum value among the settable maximum numbers of the acquired link master devices .
ことを特徴とする請求項1に記載のスケジュール作成装置。 The schedule creation apparatus according to claim 1, wherein the execution data includes an offset time based on a start time of the sub-schedule.
ことを特徴とする請求項1又は2に記載のスケジュール作成装置。 When a plurality of sub-schedules having a period i times the execution period of the control loop and different from each other are set, the execution data generation unit The schedule creation device according to claim 1, wherein i pieces of the execution data are generated in the sub-schedule having the shortest cycle.
前記制御ループの実行周期のi倍(iは2以上の整数)の周期を有する前記サブスケジュールが設定されている場合に、実行データ生成部が、該サブスケジュールにおいて該制御ループを実行させる実行データをi個生成するステップと、
前記制御ループの動作タイミングを制御するリンクマスタデバイスに、送信部が、前記フィールドバスを介して前記スケジュールを送信するステップと、を備え、
前記リンクマスタデバイスには設定可能な前記サブスケジュールの数の最大値である設定可能最大数が定められており、
前記フィールドバスのセグメントに前記リンクマスタデバイスが複数存在する場合に、設定可能最大数取得部が、前記フィールドバスを介して前記各リンクマスタデバイスの前記設定可能最大数を取得するステップと、
サブスケジュール設定部が、取得された前記各リンクマスタデバイスの前記設定可能最大数のうちの最小値に基づいて、前記サブスケジュールを設定するステップと、を更に備える
ことを特徴とするスケジュール作成方法。 The control loop constituted by a plurality of functional blocks of the fieldbus, a scheduling method for creating a periodically scheduled to be executed using a plurality of sub-schedules,
Execution data that causes the execution data generation unit to execute the control loop in the sub-schedule when the sub-schedule having a period that is i times (i is an integer of 2 or more) the execution period of the control loop is set Generating i pieces ,
The link master device for controlling the operation timing of the control loop, the transmission unit transmits the schedule via the field bus,
The link master device has a settable maximum number that is the maximum number of subschedules that can be set,
When there are a plurality of link master devices in the fieldbus segment, a settable maximum number acquisition unit acquires the settable maximum number of each link master device via the fieldbus; and
A sub-schedule setting unit, further comprising: setting the sub-schedule based on a minimum value among the settable maximum numbers of the acquired link master devices .
ことを特徴とする請求項4に記載のスケジュール作成方法。 The schedule creation method according to claim 4 , wherein the execution data includes an offset time based on a start time of the sub-schedule.
ことを特徴とする請求項4又は5に記載のスケジュール作成方法。 When the plurality of sub-schedules having a period that is i times the execution period of the control loop and different from each other are set, the generation step includes the execution data generation unit scheduling method according to claim 4 or 5, characterized in that the execution data to i number generated in the sub-schedule with the shortest period of the sub-schedule.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011001413A JP5602643B2 (en) | 2011-01-06 | 2011-01-06 | Schedule creation device, schedule creation method, and schedule creation program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011001413A JP5602643B2 (en) | 2011-01-06 | 2011-01-06 | Schedule creation device, schedule creation method, and schedule creation program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012145975A JP2012145975A (en) | 2012-08-02 |
JP5602643B2 true JP5602643B2 (en) | 2014-10-08 |
Family
ID=46789503
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011001413A Active JP5602643B2 (en) | 2011-01-06 | 2011-01-06 | Schedule creation device, schedule creation method, and schedule creation program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5602643B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8543748B2 (en) * | 2011-09-09 | 2013-09-24 | General Electric Company | Fieldbus device control system |
JP2016224541A (en) * | 2015-05-27 | 2016-12-28 | アズビル株式会社 | Process controller, process control system, and software program |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3412667B2 (en) * | 1996-12-17 | 2003-06-03 | 横河電機株式会社 | Scheduling method of fieldbus system |
JP3956206B2 (en) * | 2002-08-19 | 2007-08-08 | 横河電機株式会社 | Engineering equipment |
US7761171B2 (en) * | 2006-09-29 | 2010-07-20 | Fisher-Rosemount Systems, Inc. | Methods and apparatus to generate schedules to execute functions in a process control system |
-
2011
- 2011-01-06 JP JP2011001413A patent/JP5602643B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2012145975A (en) | 2012-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20080249641A1 (en) | Automatic Configuration of Synchronous Block Execution for Control Modules Run in Fieldbus Networks | |
US20230297408A1 (en) | Modular process control system | |
EP3116166B1 (en) | Control system, control device, and control method | |
JP7404478B2 (en) | Synchronization of configuration changes within a process plant | |
Jensen | Asynchronous decentralized realtime computer systems | |
EP1240560B1 (en) | Reprogrammable field device in a distributed process control system | |
JP4966004B2 (en) | Network equipment system | |
WO2016130873A1 (en) | Extending a programmable logic controller with apps | |
US20090204695A1 (en) | Automation network comprising network components that produce status messages | |
JP2002118579A (en) | Configuration device and system | |
WO2015136960A1 (en) | Controller | |
JP5660082B2 (en) | Process control apparatus and system | |
JP7000686B2 (en) | Control device | |
EP3940477A1 (en) | Control system, setting device and setting program | |
JP5602643B2 (en) | Schedule creation device, schedule creation method, and schedule creation program | |
JP2010117753A (en) | Field equipment and field equipment software updating system using the same | |
JP7403214B2 (en) | System and method for port-to-port communication of enhanced modular controllers | |
WO2021181799A1 (en) | Robot control system and control method | |
JP7375532B2 (en) | control system | |
US7636866B2 (en) | Situational aware output configuration and execution | |
JP6939665B2 (en) | Network system | |
JP4516933B2 (en) | Control system and control device group updating method | |
KR101445997B1 (en) | Engineering tool and programmable controller | |
WO2023248548A1 (en) | Control system, relay device, and communication method | |
Danos et al. | Self assembling graphs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130826 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140421 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140423 |
|
A521 | Written amendment |
Effective date: 20140526 Free format text: JAPANESE INTERMEDIATE CODE: A523 |
|
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: 20140813 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140820 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5602643 Country of ref document: JP |