JP5401222B2 - スケジューリング方法およびスケジュール表示方法 - Google Patents

スケジューリング方法およびスケジュール表示方法 Download PDF

Info

Publication number
JP5401222B2
JP5401222B2 JP2009207014A JP2009207014A JP5401222B2 JP 5401222 B2 JP5401222 B2 JP 5401222B2 JP 2009207014 A JP2009207014 A JP 2009207014A JP 2009207014 A JP2009207014 A JP 2009207014A JP 5401222 B2 JP5401222 B2 JP 5401222B2
Authority
JP
Japan
Prior art keywords
program
execution
scale
start point
scale value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009207014A
Other languages
English (en)
Other versions
JP2011059858A (ja
Inventor
達也 北條
照子 松村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Azbil Corp
Original Assignee
Azbil Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Azbil Corp filed Critical Azbil Corp
Priority to JP2009207014A priority Critical patent/JP5401222B2/ja
Publication of JP2011059858A publication Critical patent/JP2011059858A/ja
Application granted granted Critical
Publication of JP5401222B2 publication Critical patent/JP5401222B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、コンピュータ技術に関し、スケジューリング方法およびスケジュール表示方法に関する。
プロセス制御器やPLC(Programmable Logic Controller)等のデジタル式コントローラは、離散的に制御処理を行う。そのため、デジタル式コントローラは、所定の実行周期で制御処理を行うプログラムを繰り返し実行している(例えば、下記特許文献1参照)。近年、マイクロプロセッサの高集積化によって、マイクロプロセッサの処理能力の高速化が進み、実行周期の短縮化が進んでいる。一方、実行周期を短いものから長いものまで用意し、制御処理の用途に応じて適切な実行周期を各プログラムに割り当てることも行われている。
特開2002−351509号公報
プログラムの実行スケジュールを設定する場合、スケジュールツール上にプログラムを順次割り当てていくことでスケジューリングする方法がある。上記特許文献1は、プログラムの実行周期ごとに目盛を設け、割り当てたプログラムが実行周期ごとに実行されるか否かを判定する方法を示している(例えば、特許文献1の図16および図17参照)。特許文献1のように実行周期が固定されている場合には、実行周期に合わせた目盛を設けることで、プログラムの周期的な実行を確認し易くすることができる。しかしながら、実行周期が異なるプログラムの実行スケジュールを設定する場合に、それぞれの実行周期に合わせた目盛をスケジュールツール上に設けると目盛が複雑になり、プログラムの周期的な実行を確認することが難しくなる。
これを解決するために、それぞれの実行周期ごとにスケジュールツールを用意し、それぞれの実行周期に相応する目盛をそれぞれのスケジュールツールに設けることも考えられる。しかしながら、プログラムを実際に実行させるときには、全てのプログラムが同一のコンピュータ上で実行されることとなる。したがって、異なるスケジュールツール上でスケジューリングした場合には、異なるスケジュールツール上で割り当てられたプログラム間の実行時における処理関係が不明確となり、プログラムの処理が特定の時間に集中してしまう等の不利益が生ずる。
そこで、本発明は、上述した従来技術による問題点を解消するためになされたものであり、それぞれ実行周期が異なるプログラムを、実行負荷を平準化させて効率的にスケジューリングさせることが可能なスケジューリング方法およびスケジュール表示方法を提供することを目的とする。
本発明に係るスケジューリング方法は、それぞれ実行周期が異なる少なくとも二つのプログラムの実行スケジュールを設定するスケジューリング方法であって、実行周期が長い方のプログラムの実行開始点を、実行スケジュールを設定するスケジュール期間を第1の間隔ごとに区分する目盛のいずれかの目盛値に割り当てるステップと、実行開始点を割り当てた目盛値から次の目盛値までの間を第2の間隔ごとに区分する目盛のいずれかの目盛値に、上記実行開始点を展開するステップと、展開した実行開始点の目盛値を、スケジュール期間を第2の間隔ごとに区分する目盛の目盛値に変換するステップと、を含み、第1の間隔は長い方の実行周期に相応する間隔であり、第2の間隔は短い方の実行周期に相応する間隔である。
なお、実行周期に相応する間隔とは、例えば、実行周期が秒単位(例えば、1秒)である場合には、実行周期以下でありかつ秒単位となる間隔(例えば、0.5秒)が該当し、実行周期が分単位(例えば、5分)である場合には、実行周期以下でありかつ分単位となる間隔(例えば、1分)が該当し、実行周期が時間単位(例えば、2時間)である場合には、実行周期以下でありかつ時間単位となる間隔(例えば、1時間)が該当する。
かかる構成を採用することで、実行周期が長い方のプログラムをスケジューリングする際に、その実行周期に相応する第1の間隔ごとに区分する目盛のいずれかの目盛値にプログラムの開始点を割り当てることができるため、周期的に実行されるプログラムのスケジュールを確認し易くすることができる。また、上記割り当てた目盛値を、短い方の実行周期に相応する第2の間隔ごとに区分する目盛の目盛値に変換することができるため、それぞれ実行周期が異なるプログラムを同一の目盛上で管理することが可能となる。
また、本発明に係るスケジュール表示方法は、上記スケジューリング方法によってスケジューリングされた結果を表示する方法であって、第2の間隔ごとに区分する目盛の各目盛値に設定されている実行開始点の分布状態を表示画面上に表示させるステップを含む。
かかる構成を採用することで、それぞれ実行周期が異なるプログラムのスケジュール状況を的確に把握することが可能となる。
本発明によれば、それぞれ実行周期が異なるプログラムを、実行負荷を平準化させて効率的にスケジューリングさせることが可能となるスケジューリング方法およびスケジュール表示方法を提供することができる。
実施形態におけるコントローラの構成を模式的に例示する図である。 スケジュール情報テーブルのデータ構成を例示する図である。 スケジューリングの処理手順を説明するための図である。 スケジューリングの処理手順を説明するための図である。 スケジューリングの処理手順を説明するための図である。 スケジュールされたプログラムの実行開始点の分布状態を表示する画面例である。 スケジュールの変更手順を説明するための図である。 スケジュールの追加手順を説明するための図である。 スケジュールの追加手順を説明するための図である。 スケジューリングの流れを説明するためのフローチャートである。
以下、図面を参照して本発明の実施の形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、以下に明示しない種々の変形や技術の適用を排除するものではない。すなわち、本発明は、その趣旨を逸脱しない範囲で種々変形して実施することができる。
まず、図1を参照して、実施形態におけるコントローラ1の構成について説明する。図1は、実施形態におけるコントローラ1の構成を模式的に例示した図である。
同図に示すように、コントローラ1は、各種プログラムの実行スケジュールを設定するスケジューラ10と、スケジューリングされたプログラムを実行する演算部20と、各種プログラムおよび各種情報を記憶する記憶部30と、各種情報を入力するための入力部40と、各種情報を表示するための表示部50と、各種情報を外部とやりとりするための通信部60とを有する。これらの要素は信号を伝送するバス70を介して相互に接続されている。
記憶部30は、それぞれ実行周期が異なる複数のプログラムを記憶する。複数のプログラムは、それぞれ複数の機能ブロックを含んでいる。また、記憶部30には、図2に示すスケジュール情報テーブルが格納されている。スケジュール情報テーブルは、プログラムを一意に特定するプログラムIDに対応付けて、プログラムの実行周期、プログラムの実行時間およびプログラムの実行開始点を記憶する。
図2に示すように、プログラムIDには、例えば“00001”のように、プログラムを一意に特定する情報が格納される。実行周期には、例えば“300”(秒)のように、プログラムを実行する周期が格納される。実行時間には、例えば“0.5”(秒)のように、プログラムの実行に要する時間が格納される。実行開始点には、例えば“0”のように、プログラムの実行開始点が割り当てられているスケジュールツール上の目盛値が格納される。
なお、プログラムの実行時間は、実行するマシンの性能により異なる。本実施形態におけるプログラムの実行時間は、一のプログラムがコントローラで実行されたときに、一のプログラムの実行が1回完了するのに要する時間をいう。また、プログラムの実行周期は、プログラムの仕様や用途により異なる。本実施形態におけるプログラムの実行周期は、一のプログラムの実行が繰り返される場合に、1回の実行が開始されてから終了するまでに許容される最大の期間をいう。
図1に示すスケジューラ10は、後述するプログラムの実行スケジュール割り当て処理(以下、「スケジューリング処理」という。)を実行するスケジューリング処理部11と、スケジューリング処理部11によってスケジュールされた結果を表示部50に表示させるスケジュール表示部12とを有する。以下において、スケジューリング処理部11によって実行されるスケジューリング処理について説明する。
本実施形態におけるスケジューリング処理では、例示的に、スケジューリング処理の対象として実行周期が5分のプログラムと1秒のプログラムとがそれぞれある場合に、実行周期が長い方(5分)のプログラムをスケジューリングする際のスケジューリング処理について説明する。このスケジューリング処理では、実行周期が長い方(5分)のプログラムの実行開始点を、実行周期が長い方(5分)のプログラムをスケジューリングする際に用いる目盛のいずれかの目盛値に割り当てた後に、その目盛値を、実行周期が短い方(1秒)のプログラムをスケジューリングする際に用いる目盛のいずれかの目盛値に変換して設定する点に特徴がある。
なお、実行周期が短い方(1秒)のプログラムをスケジューリングする場合には、実行周期が短い方(1秒)のプログラムをスケジューリングする際に用いる目盛のいずれかの目盛値にプログラムの実行開始点を設定していくことになる。
ここで、本実施形態では、説明の便宜のために、二つのプログラム(実行周期が5分のプログラムと1秒のプログラム)をスケジューリングする場合について説明するが、本発明を二つのプログラムをスケジューリングする場合に限定するものではない。本発明は、それぞれの実行周期ごとに複数のプログラムが存在し、これら複数のプログラムをスケジューリングする場合にも適用することができる。
図3〜図5を参照して、スケジューリング処理の手順について具体的に説明する。各図に示す白丸は、既に実行開始点が設定されているプログラムを示す。各図に示す黒丸は、実行開始点を設定している最中のプログラムを示す。また、各図に併せて図10に示すスケジューリングの流れを示すフローチャートも参照しながら説明する。
まず、図3に示す第1段階では、実行周期が5分のプログラムの実行開始点を、1時間のスケジュール期間を1分(第1の間隔)ごとに60等分に区分する目盛のいずれかの目盛値に割り当てる(図10のステップS1)。この目盛は、実行周期が長い方(5分)のプログラムをスケジューリングする際に用いる目盛である。つまり、1時間のスケジュール期間を、5分の実行周期に相応する間隔となる1分ごとに区分した目盛である。
図3に示す第1段階では、実行周期が5分のプログラムの実行開始点が目盛値“3”に割り当てられ、さらに5分間隔ごとに設けられている目盛値“8”、“13”、“18”、…、“58”にも割り当てられたことを示している(図3の黒丸部分参照)。
ここで例示するものは、実行周期が5分のプログラムであり、各プログラムは5分ごとに繰り返し実行される。したがって、実行周期が5分のプログラムの実行開始点は、“0”〜“4”までのいずれかの目盛値に割り当てることとする。また、プログラムの実行開始点を、目盛値“0”〜“4”のうち、まだプログラムが割り当てられていない目盛値であって、最小の目盛値に割り当てる。このとき、目盛値“0”〜“4”の全てに既にプログラムが割り当てられている場合には、割り当てられているプログラムの数が最も少ない目盛値であって、最小の目盛値に割り当てることとする。なお、この割り当て条件にある「プログラムの数」を「プログラムの処理負荷総数」に替えることとしてもよい。
また、プログラムの実行開始点を“0”〜“4”までのいずれかの目盛値に割り当てる際に、1時間分のスケジュール期間における5つの目盛グループごとのプログラム総数を比較して、プログラム総数が最も少ないグループに割り当てることとしてもよい。5つの目盛グループとは、“0”グループ、“1”グループ、“2”グループ、“3”グループおよび“4”グループをいう。例えば、“0”グループには、“0”、“5”、“10”、…、“55”が属し、“1”グループには、“1”、“6”、“11”、…、“56”が属することになる。なお、この割り当て条件にある「プログラム総数」を「プログラムの処理負荷総数」に替えることとしてもよい。
一方、目盛値“5”以上には、目盛値“0”〜“4”までに割り当てられたプログラムを実行周期間隔ごとに割り当てる。例えば目盛値“0”に割り当てられたプログラムは、目盛値“5”、“10”、“15”、…、“55”にも割り当てられることとなる。
このように、実行周期が5分のプログラムをスケジューリングする際に、5分の実行周期に相応する間隔となる1分ごとの目盛値上にプログラムの開始点を割り当てることで、実行周期が5分のプログラムを5グループに分散して実行させることができ、処理負荷の分散を図ることができる。また、5分ごとに周期的に実行される各プログラムのスケジュールを確認し易くすることができる。
続いて、図3に示す第2段階にあるように、第1段階で割り当てたプログラムの実行開始点を、第1段階で割り当てられた目盛値“3”から次の目盛値“4”までの間の時間である1分を0.5秒(第2の間隔)ごとに120等分に区分する目盛のいずれかの目盛値に展開する(図10のステップS2)。
図4に、第2段階の目盛を拡大して表わした図を示す。図4に示す目盛は、実行周期が短い方(1秒)のプログラムをスケジューリングする際に用いる目盛である。つまり、図3に示す第1段階の目盛値“3”から目盛値“4”までの間の時間である1分を、1秒の実行周期に相応する間隔となる0.5秒ごとに区分した目盛である。
図4に示す第2段階では、第1段階で割り当てられたプログラムの実行開始点の目盛値“3”が、第2段階における目盛値“1”に展開されたことを示している(図4の黒丸部分参照)。
ここで、第1段階で割り当てられたプログラムの実行開始点は、第2段階の目盛値“0”〜“119”のうち、まだプログラムが展開されていない目盛値であって、最小の目盛値に展開する。ただし、目盛値“0”〜“119”の全てに既にプログラムが展開されている場合には、展開されているプログラムの数が最も少ない目盛値であって、最小の目盛値に展開することとする。なお、この割り当て条件にある「プログラムの数」を「プログラムの処理負荷総数」に替えることとしてもよい。
続いて、図3に示す第3段階にあるように、第2段階で展開したプログラムの実行開始点の目盛値を、1時間のスケジュール期間を0.5秒(第2の間隔)ごとに7200等分に区分する目盛上の目盛値に変換する(図10のステップS3)。
図5に、第3段階の目盛を拡大して表わした図を示す。図5に示す目盛は、実行周期が短い方(1秒)のプログラムをスケジューリングする際に用いる目盛である。つまり、1時間のスケジュール期間を、1秒の実行周期に相応する間隔となる0.5秒ごとに区分した目盛である。
図5に示す第3段階では、第2段階で展開されたプログラムの実行開始点の目盛値“1”が、第3段階における目盛値“361”に変換されたことを示している(図5の黒丸部分参照)。
ここで、図3に示すように、第2段階における目盛値“0”から目盛値“120”は、第3段階における目盛値“360”から目盛値“480”に相当する。したがって、第2段階の目盛値“1”は、第3段階の目盛値“361”に相当することとなる。第2段階の目盛値を第3段階の目盛値に変換する場合には、例えば、以下の式1を用いることができる。
変換後の目盛値=(T1/T2)*M1+M2 … 式1
ここで、上記式1のT1は実行周期が長い方(5分)のプログラムをスケジューリングする際に用いる1目盛の時間(60秒)であり、T2は実行周期が短い方(1秒)のプログラムをスケジューリングする際に用いる1目盛の時間(0.5秒)である。M1はプログラムの実行開始点をT1間隔ごとの目盛上に割り当てたときの目盛値(第1段階の目盛値“3”)であり、M2はプログラムの実行開始点をT2間隔ごとの目盛上に展開したときの目盛値(第2段階の目盛値“1”)である。
上記式1に、T1=60(秒)、T2=0.5(秒)、M1=3、M2=1をそれぞれ代入すると、変換後の目盛値=(60/0.5)*3+1=361が求まる。
スケジューリング処理部11は、式1を用いて算出した変換後の目盛値を、図2に示すスケジュール情報テーブルの実行開始点に格納する。
次に、スケジュール表示部12によって、表示部50に表示されるスケジュール結果の内容について具体的に説明する。
スケジュール表示部12は、操作者の操作指示に従って、スケジュール情報テーブルに格納されているスケジュール情報を参照し、図6に示すプログラムの実行開始点の分布状態を表示部50に表示させる(図10のステップS4)。
図6に示す分布状態は、1時間のスケジュール期間を0.5秒間隔ごとに7200等分に区分した目盛ごとに、各目盛値に設定されたプログラムの個数を模式的に表したものである。なお、図6に示す目盛は、実行周期が短い方(1秒)のプログラムをスケジューリングする際に用いる目盛である。つまり、1時間のスケジュール期間を、1秒の実行周期に相応する間隔となる0.5秒ごとに区分した目盛である。
図6に示す分布状態は、例えば、目盛値“0”に三個のプログラムが設定され、目盛値“1”に二個のプログラムが設定され、目盛値“3”に一個のプログラムが設定されていることを示す。操作者は、この分布状態を参照することで、プログラムの集中度合い等を確認することができる。したがって、操作者は、プログラムの分散化を図るべく、後述するスケジュールの変更やスケジュールの追加を行うことによって処理効率を向上させることが可能となる。
次に、スケジュールの変更手順(図10のステップS5、S6)について説明する。スケジュールを変更する際には、実行周期が短い方(1秒)のプログラムをスケジューリングする際に用いる目盛、つまり、上記第3段階における目盛の目盛値を用いて行うこととする(ただし、上記第1段階における目盛の目盛値を用いて行うことも可能である)。具体的には、操作者が、スケジュールの変更対象となるプログラムを指定し、変更先の目盛値を指定する。これにより、スケジューリング処理部11は、スケジュール情報テーブルに格納されている実行開始点を、指定された変更先の目盛値に書き換える。
図7を参照してさらに具体的に説明する。図7に示す目盛は、実行周期が短い方(1秒)のプログラムをスケジューリングする際に用いる目盛である。つまり、1時間のスケジュール期間を、1秒の実行周期に相応する間隔となる0.5秒ごとに区分した目盛である。
図7に示すように、目盛値“361”に実行開始点が設定されているプログラム(図7の破線で示す白丸部分参照)が指定され、変更先の目盛値として“362”(図7の黒丸部分参照)が指定された場合に、スケジューリング処理部11は、このプログラムのプログラムIDに対応してスケジュール情報テーブルに記憶されている実行開始点を、“361”から“362”に書き換える。
次に、前後関係のあるプログラムをスケジュールに追加する手順(図10のステップS7、S8)について説明する。前後関係のあるプログラムをスケジュールに追加する際には、実行周期が短い方(1秒)のプログラムをスケジューリングする際に用いる目盛、つまり、上記第3段階における目盛の目盛値を用いて行うこととする(ただし、上記第1段階における目盛の目盛値を用いて行うことも可能である)。具体的には、操作者が、追加対象となるプログラムの実行開始点を追加する位置として、スケジュール済のプログラムおよびそのプログラムの前か後を指定する。これにより、スケジューリング処理部11は、スケジュール済のプログラムの処理と、追加対象となるプログラムの処理とが重複することがないように、スケジュール済のプログラムの実行開始点が設定されている目盛値の前か後の目盛値に、追加対象となるプログラムの実行開始点を設定する。
追加する際にプログラムの処理が重複しないようにすることで、前のプログラムで処理されたデータを待機させることなく後のプログラムで引き継ぐことができる。つまり、前のプログラムで処理されたデータが次周期以降において後のプログラムが実行されるまで待機する事態を回避させることができるため、前後関係のあるプログラムの実行順序を維持しつつ処理効率を向上させることが可能となる。
図8および図9を参照してさらに具体的に説明する。図8および図9に示す目盛は、実行周期が短い方(1秒)のプログラムをスケジューリングする際に用いる目盛である。つまり、1時間のスケジュール期間を、1秒の実行周期に相応する間隔となる0.5秒ごとに区分した目盛である。
図8を参照して、スケジュール済のプログラムおよびそのプログラムの後が指定された場合について説明する。図8に示すように、実行開始点が目盛値“361”に設定されているプログラム(図8の白丸部分参照)と、そのプログラムの後とが指定された場合に、スケジューリング処理部11は、指定されたプログラムのプログラムIDに対応してスケジュール情報テーブルに記憶されている実行時間を取得する。この取得した実行時間が例えば0.7秒であるとする。スケジューリング処理部11は、追加対象となるプログラムの実行開始点を設定する目盛値として、指定されたプログラムの目盛値“361”から0.7秒以上間隔が空いている目盛値のうち最小の目盛値である“363”(図8の黒丸部分参照)を選択する。スケジューリング処理部11は、追加対象となるプログラムのプログラムIDに対応してスケジュール情報テーブルに記憶される実行開始点に“363”を書き込む。
図9を参照して、スケジュール済のプログラムおよびそのプログラムの前が指定された場合について説明する。図9に示すように、実行開始点が目盛値“361”に設定されているプログラム(図9の白丸参照)と、そのプログラムの前とが指定された場合に、スケジューリング処理部11は、追加するプログラムのプログラムIDに対応してスケジュール情報テーブルに記憶されている実行時間を取得する。この取得した実行時間が例えば0.8秒であるとする。スケジューリング処理部11は、追加するプログラムの実行開始点を設定する目盛値として、指定されたプログラムの目盛値“361”から0.8秒以上間隔が空いている目盛値のうち最大の目盛値である“359”(図9の黒丸参照)を選択する。スケジューリング処理部11は、追加するプログラムのプログラムIDに対応してスケジュール情報テーブルに記憶される実行開始点に“359”を書き込む。
上述してきたように、本実施形態のコントローラ1では、実行周期が長い方(5分)のプログラムをスケジューリングする際に、その実行周期に相応する間隔ごとに区分する目盛のいずれかの目盛値にプログラムの開始点を割り当てることができるため、周期的に実行されるプログラムのスケジュールを確認し易くすることができる。なお、実行周期が短い方のプログラムをスケジューリングする場合には、短い方の実行周期に相応する間隔ごとに区分する目盛に直接的に割り当てていけばよい。
このように、上記割り当てた目盛値を、短い方の実行周期(1秒)に相応する間隔ごとに区分する目盛の目盛値に変換することができるため、それぞれ実行周期が異なるプログラムを同一の目盛上で管理することができる。これにより、それぞれ実行周期が異なるプログラムを効率的にスケジューリングさせることが可能となる。また、同一の目盛上で管理することで変更処理や追加処理が容易に行えるため、スケジュール調整を簡易にすることができる。
また、スケジューリング処理によって設定されたプログラムの実行開始点の分布状態を、短い方の実行周期(1秒)に相応する間隔ごとに区分する目盛上に表示させることができるため、プログラムの集中状態や分散状態を容易に確認することができる。これにより、それぞれ実行周期が異なるプログラムのスケジュール状況を的確に把握することが可能となる。
なお、上述した実施形態では、実行周期が二種類(5分と1秒)存在する場合について説明しているが、実行周期が三種類以上存在する場合にも本発明を適用することができる。実行周期が三種類以上存在する場合には、実行周期が最短のプログラムと、それ以外の実行周期のうちのいずれか一の実行周期のプログラムとで、上述した実施形態と同様のスケジューリング処理を実行し、それ以外の実行周期の方を順次変更しながらそれぞれの組み合わせごとにスケジューリング処理を実行することとすればよい。
1…コントローラ、10…スケジューラ、11…スケジューリング処理部、12…スケジュール表示部、20…演算部、30…記憶部、40…入力部、50…表示部、60…通信部、70…バス。

Claims (4)

  1. それぞれ実行周期が異なる二つのプログラムの実行スケジュールを設定するスケジューリング方法であって、
    実行周期が長い方のプログラムの実行開始点を、前記実行スケジュールを設定するスケジュール期間を第1の間隔ごとに区分する目盛のいずれかの目盛値に割り当てるステップと、
    前記実行周期が長い方のプログラムの実行開始点を割り当てた目盛値から次の目盛値までの間を第2の間隔ごとに区分する目盛の目盛値のうち、既に展開されているプログラムの実行開始点の数が最も少ない目盛値であって、最小の目盛値に、前記実行周期が長い方のプログラムの実行開始点を展開するステップと、
    前記展開した前記実行周期が長い方のプログラムの実行開始点の目盛値を、前記スケジュール期間を前記第2の間隔ごとに区分する目盛の目盛値に変換して、前記実行スケジュールを設定するステップと、
    実行周期が短い方のプログラムの実行開始点を、前記実行スケジュールを設定するスケジュール期間を前記第2の間隔ごとに区分する目盛のいずれかの目盛値に割り当てて、前記実行スケジュールを設定するステップと、を含み、
    前記第1の間隔は、長い方のプログラムの実行周期に対応する期間を等間隔に分割したときの一つの間隔であり、前記第2の間隔は、短い方のプログラムの実行周期に対応する期間を等間隔に分割したときの一つの間隔であることを特徴とするスケジューリング方法。
  2. プログラムの実行開始点に対して既に割り当てられている目盛値を変更する際に、変更対象となるプログラムの実行開始点を指定するステップと、
    前記指定された変更対象となるプログラムの実行開始点の目盛値の変更先として、前記スケジュール期間を前記第2の間隔ごとに区分する目盛のいずれかの目盛値を指定するステップと、
    前記指定された変更対象となるプログラムの実行開始点に割り当てられている目盛値を、前記指定された前記第2の間隔ごとに区分する目盛の目盛値に変更するステップと、
    をさらに含むことを特徴とする請求項1記載のスケジューリング方法。
  3. プログラムの実行開始点を新たに追加する際に、新たに追加する位置として、既に目盛値が割り当てられているプログラムの実行開始点および当該プログラムの実行開始点の前または後を指定するステップと、
    前記指定されたプログラムの実行開始点に対応するプログラムの処理と追加対象となるプログラムの処理とが重複しないように、前記第2の間隔ごとに区分する目盛の目盛値に、前記追加対象となるプログラムに対応する前記実行開始点を割り当てるステップと、
    をさらに含むことを特徴とする請求項1または2記載のスケジューリング方法。
  4. 請求項1〜3のいずれか1項に記載のスケジューリング方法によってスケジューリングされた結果を表示する方法であって、
    前記第2の間隔ごとに区分する目盛の各目盛値に設定されている前記実行開始点の分布状態を表示画面上に表示させるステップを含むことを特徴とするスケジュール表示方法。
JP2009207014A 2009-09-08 2009-09-08 スケジューリング方法およびスケジュール表示方法 Expired - Fee Related JP5401222B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009207014A JP5401222B2 (ja) 2009-09-08 2009-09-08 スケジューリング方法およびスケジュール表示方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009207014A JP5401222B2 (ja) 2009-09-08 2009-09-08 スケジューリング方法およびスケジュール表示方法

Publications (2)

Publication Number Publication Date
JP2011059858A JP2011059858A (ja) 2011-03-24
JP5401222B2 true JP5401222B2 (ja) 2014-01-29

Family

ID=43947429

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009207014A Expired - Fee Related JP5401222B2 (ja) 2009-09-08 2009-09-08 スケジューリング方法およびスケジュール表示方法

Country Status (1)

Country Link
JP (1) JP5401222B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015210688A (ja) * 2014-04-28 2015-11-24 株式会社日立製作所 サーバ仮想化システム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08147178A (ja) * 1994-11-24 1996-06-07 Hitachi Ltd 共有資源アクセス方法および共有資源アクセス装置
JP2001256064A (ja) * 2000-03-10 2001-09-21 Mitsubishi Electric Corp 複数周期実行タスクの最適化スケジューリング方式

Also Published As

Publication number Publication date
JP2011059858A (ja) 2011-03-24

Similar Documents

Publication Publication Date Title
JP2015529429A (ja) サービスに基づく通信ネットワーク評価方法及び装置
US20120023277A1 (en) Method for Operating an Automation Device
US9632496B2 (en) Engineering apparatus which associates programmable logic controller data with human machine interface data
JP6448187B2 (ja) 工程管理装置、工程管理プログラムおよび工程管理システム
US11561786B2 (en) Update management device, update management system, and update management method
US20140310052A1 (en) Method And Apparatus For Generating An Engineering Workflow
JP5911044B1 (ja) プログラム生成装置及びその方法
US11886170B2 (en) Control system, setting device and setting program
JP6395708B2 (ja) 複数の生産ラインを有する電子部品装着システムの管理方法及び管理装置
JP5401222B2 (ja) スケジューリング方法およびスケジュール表示方法
JP2007148635A (ja) 生産スケジューリングプログラム及び生産スケジューリング装置
JP2020061055A (ja) 制御システム、制御装置および制御方法
JP2018018270A (ja) 生産スケジュール作成システムおよび生産スケジュール作成方法
US8201023B2 (en) Test optimization
JP2015200986A (ja) クラウド制御システム、及びクラウド制御システムの制御プログラムのスケジューリング方法
JP2018116389A (ja) 処理装置
JP4898365B2 (ja) 組み込み用プログラム開発装置、及びプログラム自動生成方法
JPWO2018235124A1 (ja) 分散配置装置、分散配置システム、および、分散配置方法
JP4648136B2 (ja) 生産計画作成方法及び生産計画作成装置、並びにプログラム
JP5963190B2 (ja) 生産計画の作成システム及び作成プログラム
JP2010160599A (ja) スケジューラ、情報処理装置およびスケジューリング方法
CN111240829A (zh) 一种基于时间片的多核任务调度方法、装置、存储介质及电子设备
KR102492399B1 (ko) 감시제어장치
US20200160254A1 (en) Group Assignments
JP2020113007A (ja) 資源スケジューリング装置、資源スケジューリング方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120322

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130802

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130926

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131028

R150 Certificate of patent or registration of utility model

Ref document number: 5401222

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees