(57)【要約】【課題】組込み制御装置で実行されるプログラムを効率よく作成する。【解決手段】プログラミング装置は、図式化プログラム１０を入力に応じて編集する編集部と、編集部で編集された図式化プログラム１０をディスプレイに表示させる表示部と、編集部で編集された図式化プログラム１０をマイクロプロセッサにて実行可能なプログラムに変換する変換部と、を備えている。図式化プログラム１０では、一連処理ごとにモジュール１１が構成されている。このモジュール１１にあっては、シーケンス図Ｃ及び内部変数１９，３５を独自に含んでいるため、同様な一連処理を繰り返しプログラミングする場合、モジュール１１を複製するようにプログラミングできると共に、各モジュール１１に内部変数１９，３５を割り当てる必要もない。よって、一連処理を１度プログラミングすれば、そのプログラムを容易に再利用できる。【選択図】図２
2009271770.tif 000002
【特許請求の範囲】
【請求項１】
組込み制御装置上で実行されるプログラムを作成するためのプログラミング装置であって、
プログラムを図式化してなる図式化プログラムを入力に応じて編集する編集手段と、
前記編集手段で編集された前記図式化プログラムを画面に表示させる表示手段と、
前記編集手段で編集された前記図式化プログラムを前記組込み制御装置にて実行可能なプログラムに変換する変換手段と、を備え、
前記図式化プログラムでは、一連の処理ごとにモジュールが構成されており、
前記モジュールは、前記処理を実行するためのシーケンス図、及び前記モジュール内での処理状態を表す内部変数を含むことを特徴とするプログラミング装置。
【請求項２】
前記モジュールは、複数の前記シーケンス図がグループ化されてなるシーケンス図群を複数含み、
複数の前記シーケンス図群のそれぞれは、該シーケンス図群ごとに指定された指定値に基づいて前記処理を実行することを特徴とする請求項１記載のプログラミング装置。
【請求項３】
前記図式化プログラムは、複数層に階層化され、上位階層において前記モジュールが上位モジュールとして構成されると共に、下位階層において前記モジュールが下位モジュールとして構成されており、
前記上位モジュールでは、前記下位モジュールの呼び出しが行われることを特徴とする請求項１又は２記載のプログラミング装置。
【請求項４】
前記図式化プログラムは、複数層に階層化され、上位階層において前記モジュールが上位モジュールとして構成されると共に、下位階層において前記モジュールが下位モジュールとして構成されており、
前記下位モジュールは、前記シーケンス群を複数含み、
前記上位モジュールでは、前記下位モジュールの前記シーケンス群の呼び出しが行われることを特徴とする請求項２記載のプログラミング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御を必要とするシステム内に組み込む制御装置である組込み制御装置上で実行されるプログラムを作成するためのプログラミング装置に関する。
【背景技術】
【０００２】
従来のプログラミング装置としては、プログラムを図式化してなる図式化プログラムを入力に応じて編集する編集手段と、編集手段で編集された図式化プログラムを画面に表示させる表示手段と、編集手段で編集された図式化プログラムを組込み制御装置にて実行可能なプログラムに変換する変換手段と、を備えたものが知られている（例えば、特許文献１参照）。このようなプログラミング装置では、通常、ラダー言語が用いられており、図式化プログラムが接点図及びコイル図で表されている。
【特許文献１】特開平９−６２３１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上述したようなプログラミング装置では、次の問題がある。すなわち、処理状態を表す変数を割り当てる必要がある。そのため、例えば、同様な一連の処理（以下、単に「一連処理」という）を繰り返しプログラミングする場合、かかる一連処理を複製するようにプログラミングすることが難しく、プログラミングする際の再利用性が低くなってしまう。よって、プログラムを効率よく作成することが困難となり、ひいては生産性が低下してしまう。
【０００４】
そこで、本発明は、組込み制御装置上で実行されるプログラムを効率よく作成することができるプログラミング装置を提供することを課題とする。
【課題を解決するための手段】
【０００５】
上記課題を解決するため、本発明に係るプログラミング装置は、組込み制御装置上で実行されるプログラムを作成するためのプログラミング装置であって、プログラムを図式化してなる図式化プログラムを入力に応じて編集する編集手段と、編集手段で編集された図式化プログラムを画面に表示させる表示手段と、編集手段で編集された図式化プログラムを組込み制御装置にて実行可能なプログラムに変換する変換手段と、を備え、図式化プログラムでは、一連の処理ごとにモジュールが構成されており、モジュールは、処理を実行するためのシーケンス図、及びモジュール内での処理状態を表す内部変数を含むことを特徴とする。
【０００６】
このプログラミング装置による図式化プログラムでは、一連処理ごとにモジュールが構成されている。そして、このモジュールにあっては、シーケンス図及び内部変数を独自に含んでいる。そのため、同様な一連処理を繰り返しプログラミングする場合、モジュールを複製するようにプログラミングすることができ、且つ各モジュールに内部変数を割り当てる必要もない。すなわち、一連処理を１度プログラミングすれば、そのプログラムを容易に再利用してプログラミングすることができる。その結果、組込み制御装置上で実行されるプログラムを効率よく作成することが可能となる。
【０００７】
ここで、モジュールは、複数のシーケンス図がグループ化されてなるシーケンス図群を複数含み、複数のシーケンス図群のそれぞれは、該シーケンス図群ごとに指定された指定値に基づいて処理を実行することが好ましい。この場合、処理を自由にシーケンス図群としてグループ化することができると共に、これら各シーケンス図群の実行形態を指定値で指定することが可能となる。
【０００８】
また、図式化プログラムは、複数層に階層化され、上位階層においてモジュールが上位モジュールとして構成されると共に、下位階層においてモジュールが下位モジュールとして構成されており、上位モジュールでは、下位モジュールの呼び出しが行われることが好ましい。この場合、上位モジュールは、下位モジュールにて内部変数をさらに保持することができる。よって、例えば、上位モジュールに呼び出される下位モジュールを複数形成すると、上位モジュールが下位モジュール別に内部変数を保持できるため、上位モジュールにおいて複数の下位モジュールを並列に動作させることが可能となる。
【０００９】
また、図式化プログラムは、複数層に階層化され、上位階層においてモジュールが上位モジュールとして構成されると共に、下位階層においてモジュールが下位モジュールとして構成されており、下位モジュールは、シーケンス群を複数含み、上位モジュールでは、下位モジュールのシーケンス群の呼び出しが行われることが好ましい。この場合、下位モジュールが複数の役割をシーケンス群として持ち、上位モジュールがその役割単位で下位モジュールを利用することになる。その結果、下位階層において下位モジュールが複数に散在してしまうのを抑制でき、図式化プログラムが煩雑になるのを抑制することが可能となる。
【発明の効果】
【００１０】
本発明によれば、組込み制御装置上で実行されるプログラムを効率よく作成することが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、添付図面を参照して、本発明の好適な実施形態について詳細に説明する。なお、以下の説明において、同一又は相当要素には同一の符号を付し、重複する説明は省略する。
【００１２】
図１は、本発明の一実施形態に係るプログラミング装置を示す概略ブロック図である。プログラミング装置１は、制御を必要とするシステム内に組み込む制御装置であるマイクロプロセッサ（組込み制御装置）２上で実行されるプログラムを、図形を利用して作成するものである。具体的には、プログラミング装置１は、プログラムの構造を図式化してなる図式化プログラム１０（図２参照）によって、マイクロプロセッサ２上で実行されるプログラムを作成する。
【００１３】
このプログラミング装置１は、コンピュータに搭載されており、ここでは、パソコン３のＥＣＵ４に搭載されている。プログラミング装置１は、編集部（編集手段）５、表示部（表示手段）６及び変換部（変換手段）７を備えている。
【００１４】
編集部５は、例えばマウスやキーボード等の入力装置８からの入力に応じて、図式化プログラム１０を編集する。具体的には、編集部５は、図式化プログラム１０の図形要素、及び図形要素を構成する要素等を、利用者と対話形式で追加、移動又は削除したりする。より具体的には、編集部５は、ＥＣＵ４の内部記憶領域にデータ表現を構成し、このデータ表現を利用者の入力に従って編集すると共に、ハードディスクドライブ等の記憶装置（不図示）にデータ表現を格納したり呼び出したりすることで、内部記憶領域にデータ表現を再現する。
【００１５】
表示部６は、編集部５で編集された図式化プログラム１０をディスプレイ（画面）９上に表示させるためのものである。変換部７は、編集部５によって編集された図式化プログラム１０の情報を記憶装置から呼び出し、内部記憶領域にデータ表現を再現し、マイクロプロセッサ２にて実行可能なプログラムに変換する。
【００１６】
次に、プログラミング装置１による図式化プログラム１０について説明する。
【００１７】
図２は、図１のプログラミング装置による図式化プログラムを示す概略図である。図２に示すように、図式化プログラム１０は、ひとまとまりの処理を表すモジュール１１で構成されている。換言すると、図式化プログラム１０では、一連の処理（以下、単に「一連処理」という）ごとにモジュール１１が構成されており、１つのソースファイルに１つのモジュール１１が対応するようになっている。
【００１８】
この図式化プログラム１０は、上位階層Ｕと下位階層Ｄとに階層化されており、上位階層Ｕにて上位モジュール１２が構成されると共に、下位階層Ｄにて下位モジュール１３ａ，１３ｂが構成されている。
【００１９】
上位モジュール１２は、処理を実行するための図形要素であるシーケンス図Ｃとして、下位モジュール呼出し１４ａ，１４ｂを少なくとも含んでいる。下位モジュール呼出し１４ａ，１４ｂは、下位モジュール１３ａ，１３ｂを呼び出す（コールする）ためのものである。これらの下位モジュール呼出し１４ａ，１４ｂは、矩形枠からなり、その型を識別するための識別図１５を左上部に有している。また、下位モジュール呼出し１４ａ，１４ｂの枠内には、その名称１６ａ，１６ｂが記入されている。名称１６ａ，１６ｂは、呼び出す下位階層Ｄの下位モジュール１３ａ，１３ｂに対応している。
【００２０】
また、下位モジュール呼出し１４ａ，１４ｂのそれぞれには、入力端子１７及び出力端子１８が形成されている。これにより、下位モジュール呼出し１４ａ，１４ｂは、下位モジュール１３ａ，１３ｂへの入力値を入力端子１７から入力し、下位モジュール１３ａ，１３ｂの出力値を出力端子１８から出力する。
【００２１】
また、上位モジュール１２は、該上位モジュール１２内での処理状態を表す変数である内部変数１９を含んでいる。この内部変数１９は、内部変数領域２０に格納されている。
【００２２】
図３は、ディスプレイ上に表示された編集画面の一例を示す図である。図３に示すように、内部変数領域２０は、例えばディスプレイ９の左側部分にて表すことができる。そして、シーケンス図Ｃは、例えばディスプレイ９の内部変数領域２０の右側部分に表すことができる。これについては、以下のモジュールについて同様である。
【００２３】
図２に戻り、下位モジュール１３ａ，１３ｂは、上位階層Ｕの上位モジュール１２に呼び出されるものであり、入力に基づいて出力を求める処理を行う。この下位モジュール１３ａ，１３ｂは、シーケンス図Ｃとして、例えば、条件演算図３１及び応答処理図３２（詳しくは後述）を少なくとも含んでいる。
【００２４】
また、下位モジュール１３ａ，１３ｂは、該下位モジュール１３ａ，１３ｂ内での処理状態を表す変数である内部変数３５（３５ａ，３５ｂ）を含んでいる。この内部変数３５ａ，３５ｂは、内部変数領域３６（３６ａ，３６ｂ）にそれぞれ格納されている。
【００２５】
また、上位モジュール１２では、下位モジュール呼出し１４ａ，１４ｂにてコールするための識別子として、名称１６（１６ａ，１６ｂ）が定義されている。なお、これらの名称１６ａ，１６ｂは、内部変数領域２０にてそれぞれ定義することができる。ここでは、名称１６は、「ｍｏｄｕｌｅ  下位モジュール  下位モジュール利用名称」のかたちで定義されている。
【００２６】
ちなみに、下位モジュール１３のソースファイルは、上位モジュール１２と同じフォルダで保存されている。これにより、コンパイラは、上位モジュール１２を読み込む際、下位モジュール１３ａ，１３ｂを自動的に読み込んで繋ぎ合わせることができる。
【００２７】
次に、図２に示す図式化プログラムを詳細に説明する。
【００２８】
図４は図２の図式化プログラムにおける上位モジュールの詳細を示す図であり、図５は図２の図式化プログラムにおける下位モジュールの詳細を示す図である。図４，５に示すように、図式化プログラム１０は、フィードバックによる位置決め制御を行って、装置を目標位置に一定速度で移動させるものである。ここでの図式化プログラム１０では、「一定速度移動処理」という型のモジュールを下位モジュール１３ａ，１３ｂとして複数回（ここでは２回）利用している。
【００２９】
図４に示すように、上位モジュール１２は、前述のように、シーケンス図Ｃとして下位モジュール呼出し１４ａ，１４ｂを含むと共に、内部変数領域２０に格納された内部変数１９を含んでいる。ここでの下位モジュール呼出し１４ａは、「左端への移動処理」と定義した下位モジュール１３ａを呼び出し、下位モジュール呼出し１４ａは、「中央への移動処理」と定義した下位モジュール１３ｂを呼び出す。
【００３０】
また、上位モジュール１２は、条件演算図３１と、応答処理図３２とを含んでいる。条件演算図３１は、条件演算（つまり、条件判断処理の演算）を示すものである。この条件演算図３１は、矩形枠からなり、その内部に条件判断演算式３３が記入されている。また条件演算図３１には、その内部に条件判断属性図２１が形成されている。この条件判断属性図２１は、その形態の違いによって以下の演算規則を条件演算図３１に与える。
【００３１】
図６は、条件判断属性図を説明するための図である。図６（ａ）に示す条件判断属性図２１ａは、条件判断演算式３３の演算値を条件演算の演算値とする。図６（ｂ）に示す条件判断属性図２１ｂは、条件判断演算式３３の演算値の反転結果を条件演算の演算値とする。図６（ｃ）に示す条件判断属性図２１ｃは、条件判断演算式３３の演算値が偽から真に変わったときだけ条件演算の演算値を真とし、それ以外は偽とする。図６（ｄ）に示す条件判断属性図２１ｄは、条件判断演算式３３の演算値が真から偽に変わったときだけ条件演算の演算値を真とし、それ以外は偽とする。
【００３２】
図４に示すように、応答処理図３２は、応答処理を示すものである。この応答処理図３２は、矩形枠からなり、その内部に応答処理内容３４が記入される。応答処理図３２は、応答処理内容３４が左辺値の場合、入力された演算結果を代入する。一方、応答処理内容３４が演算式の場合、入力された演算結果が真になったとき、演算式を演算する。他方、応答処理内容３４が文の場合、入力された演算結果が真になったとき、文を実行する。
【００３３】
図５に示すように、下位モジュール１３ａ，１３ｂは、前述のように、シーケンス図Ｃとして条件演算図３１を含むと共に、内部変数領域３６ａ，３６ｂに格納された内部変数３５ａ，３５ｂを含んでいる。また、下位モジュール１３ａ，１３ｂは、状態保持図４０を含んでいる。
【００３４】
状態保持図４０は、状態保持回路を表すものであり、上位階層Ｕ０と下位階層Ｄ０とに階層化されている。上位階層Ｕ０には、状態定義図４１が形成されており、下位階層Ｄ０には、矢印４２、条件演算図３１及び応答処理図３４が制御枠４３に囲まれるようにして形成されている。
【００３５】
状態定義図４１は、状態の名称を示す状態名称図４５及び、条件演算図３１が上下方向に積み重ねられてグループ化されている。なお、状態定義図４１は、条件演算図３１を１つ以上含んでいればよい。
【００３６】
矢印４２は、状態での処理順序を示すものである。始端に○印が形成された矢印４２は、始端の条件演算図３１の演算値が偽になったときに、その演算値が真となるという演算規則を与える。制御枠４３は、状態保持図４０の下位階層Ｄ０を画成するものであり、その左上部には、上記の条件演算図３１と同様な制御枠条件演算図４４が形成されている。この制御枠条件演算図４４による条件演算が真の場合、制御枠４３内の各処理が演算される一方、偽の場合、制御枠４３内の各状態がリセットされるという演算規則が与えられる
【００３７】
この図式化プログラム１０では、下位モジュール呼出し１４ａに、「移動可能」の演算値、「位置目標値」及び「移動速度」がそれぞれ入力される。また、下位モジュール呼出し１４ａに、左右往復位置指令値が「位置初期値」として入力される。そして、左端移動指示がなされた場合、かかる移動指示が下位モジュール呼出し１４ａに「移動指令」として入力され、下位モジュール１３ａが呼び出される。
【００３８】
下位モジュール１３ａでは、移動指令の立ち上がりを受けて、「移動中」という状態が保持される。「移動可能」という条件が成り立っており、且つ「移動完了」でない間、この状態は保持される。移動中の状態の間、位置指令値が小さいときには、移動速度（サンプル周期での移動量）が位置指令値に加えられる一方、位置指令値が大きいときには、位置指令値から移動速度が減算される。なお、位置指令値が小さいという判断は、「位置目標値−移動速度」で比較され、位置指令値が大きいという判断は、「位置目標値＋移動速度」で比較される。最後に、位置指令値が所定範囲になったとき（小さくもなく大きくもないとき）、位置目標値に到達したと判断される。
【００３９】
ここで、上位モジュール１２においては、下位モジュール呼出し１４ａからの位置指令値が「左右往復位置指令値」に設定され、移動中の演算値は「左端へ移動中」に設定され、移動完了の演算値は「左端へ移動完了」に設定される。以上により、装置が左端に一定速度で移動されることとなる。
【００４０】
また、この図式化プログラム１０では、下位モジュール呼出し１４ｂに、「移動可能」の演算値、「位置目標値」及び「移動速度」がそれぞれ入力される。また、下位モジュール呼出し１４ｂに、左右往復位置指令値が「位置初期値」として入力される。そして、中央移動指示がなされた場合、かかる移動指示が下位モジュール呼出し１４ｂに「移動指令」として入力され、下位モジュール１３ｂが呼び出される。
【００４１】
下位モジュール１３ｂでは、上記の下位モジュール１３ａと同様に、移動指令の立ち上がりを受けて、「移動中」という状態が保持される。「移動可能」という条件が成り立っており、且つ「移動完了」でない間、この状態は保持される。移動中の状態の間、位置指令値が小さいときには、移動速度が位置指令値に加えられる一方、位置指令値が大きいときには、位置指令値から移動速度が減算される。最後に、位置指令値が所定範囲になったとき、位置目標値に到達したと判断される。
【００４２】
ここで、上位モジュール１２においては、下位モジュール呼出し１４ｂからの位置指令値が「左右往復位置指令値」に設定され、移動中の演算値は「中央へ移動中」に設定され、移動完了の演算値は「中央へ移動完了」に設定される。以上により、装置が中央に一定速度で移動されることとなる。
【００４３】
以上、本実施形態によれば、一連処理ごとにモジュール１１が構成されている。そして、このモジュール１１にあっては、シーケンス図Ｃ及び内部変数１９，３５を独自に含んでいる。そのため、共通する一連処理（ここでは、一定速度移動距離の処理）を繰り返しプログラミングする際、例えば、下位モジュール１３ａをプログラミングした後，この下位モジュール１３ａを複製するよう下位モジュール１３ｂをプログラミングすることができる。具体的には、同じ型のモジュールを別々の名称で上位モジュール１２から呼び出すことによって、下位モジュール１３ａ，１３ｂを複製したことと等価になっている。これと共に、複製された下位モジュール１３ａ，１３ｂに内部変数３５を別途に割り当てる必要もない。
【００４４】
すなわち、モジュール１１を１度プログラミングしてしまえば、このモジュール１１を容易に再利用してプログラミングすることができ、よって、マイクロプロセッサ２上で実行されるプログラムを効率よく作成することが可能となる。その結果、プログラミングする際の生産性及び効率を高めることができる。かかる効果は、特に、プログラミングする設計者にとって有効なものといえる。
【００４５】
また、本実施形態では、上述したように、図式化プログラム１０が階層化され、上位階層Ｕにて上位モジュール１２が構成されると共に、下位階層Ｄにて下位モジュール１３ａ，１３ｂが構成されている。そして、上位モジュール１２では、下位モジュール１３ａ，１３ｂが別々の実態としてコールされている。これにより、上位モジュール１２は、下位モジュール１３ａ，１３ｂ別に内部変数３５ａ，３５ｂをさらに保持できる。その結果、上位モジュール１２において下位モジュール１３ａ，１３ｂを並列に動作させることが可能となる。
【００４６】
ここで、従来のプログラミング装置では、プログラムの処理が複雑で多くなった場合、一つ一つの処理を逐次に書き表すのは大変な手間である。また、共通の処理に間違いが見つかったときには、全ての処理を修正しなければならない。この点においても、一連処理でモジュール１１を構成し該モジュール１１を再利用してプログラミングできるという本実施形態の効果は、顕著である。
【００４７】
なお、下位モジュール１３ａ，１３ｂは、手続き型言語のサブルーチンと異なり、終了させずに常に作動させることが可能である。
【００４８】
次に、図１のプログラミング装置による図式化プログラムの他の例について説明する。
【００４９】
図７は、図１のプログラミング装置による図式化プログラムの他の例を示す概略図である。図７に示すように、図式化プログラム５０のモジュール５１は、複数のシーケンス図Ｃがグループ化されてなるプロシジャ（ｐｒｏｃ：シーケンス図群）５２を複数含んでおり、いわゆるマルチスレッドを構成している。ここでは、モジュール５１は、高速周期で演算処理するグループである高速プロシジャ５２ａと、低速周期で演算処理させるグループである低速プロシジャ５２ｂとを含んでいる。
【００５０】
プロシジャ５２では、条件演算図３１及び応答処理図３２が制御枠５３で囲われてグループ化されている。この制御枠５３の左上部には、後述の指定値５６ａ，５６ｂに対応する名称が記入される名称図５４が形成されている。
【００５１】
また、モジュール５１には、指定値領域５５が設けられている。指定値領域５５では、指定値５６ａ，５６ｂがプロシジャ５２ａ，５２ｂごとに指定されている。
【００５２】
この図式化プログラム５０によれば、高速プロシジャ５２ａが指定値５６ａに基づいて実行されることにより、この高速プロシジャ５２ａでグループ化された演算処理が高速周期で実行されることになる。また、低速プロシジャ５２ｂが指定値５６ｂに基づいて実行されることにより、高速プロシジャ５３ｂでグループ化された演算処理が低速周期で実行されることになる。
【００５３】
以上、本実施形態によれば、プロシジャ５２ａ，５２ｂのそれぞれは、該プロシジャ５２ａ，５２ｂごとに指定された指定値５６ａ，５６ｂに基づいて処理を実行する。よって、処理を自由にプロシジャ５２ａ，５２ｂとしてグループ化することができると共に、各プロシジャ５２ａ，５２ｂの実行形態を指定値５６ａ，５６ｂでそれぞれ指定することが可能となる。
【００５４】
次に、図１のプログラミング装置による図式化プログラムのさらに他の例について説明する。
【００５５】
図８は、図１のプログラミング装置による図式化プログラムのさらに他の例を示す概略図である。図８に示すように、図式化プログラム６０では、下位階層Ｄにて下位モジュール６３が構成されている。
【００５６】
下位モジュール６３は、上記のプロシジャ５２と同様なプロシジャ（シーケンス図群）６４を複数含んでいる。具体的には、下位モジュール６３は、入力に関する入力プロシジャ６４ａと、出力に関する出力プロシジャ６４ｂとを含んでいる。入力プロシジャ６４ａは、入力処理の応答演算を示す応答演算図６５を複数含んでいる。出力プロシジャ６４ｂは、出力処理の応答演算を示す応答演算図６６を複数含んでいる。
【００５７】
また、図式化プログラム６０では、上位階層Ｕにて上位モジュール６２が構成されている。上位モジュール６２は、下位モジュール呼出し６７ａ，６７ｂを含んでいる。下位モジュール呼出し６７ａ，６７ｂは、下位モジュール６３のプロシジャ６３ａ，６３ｂを呼び出すためのものである。下位モジュール呼出し６７ａ，６７ｂの枠内には、下位モジュール呼出し６７ａ，６７ｂの名称６８ａ，６８ｂが記入されている。これらの名称６８ａ，６８ｂは、呼び出す下位モジュール６３及びプロシジャ６４に対応しており、この記入に応じて下位モジュール６３がプロシジャ６４単位でコールされる。
【００５８】
以上、本実施形態によれば、上位モジュール６２おいて下位モジュール６３のプロシジャ６４ａ，６４ｂがコールされる。よって、下位モジュール６３が複数の役割をプロシジャ６４ａ，６４ｂとして持つことができ、上位モジュール６２がその役割単位で選択的に下位モジュール６３を利用することが可能となる。これにより、下位階層Ｄにおいて下位モジュール６３が散在するのを抑制でき、図式化プログラム６０が煩雑になるのを抑制することが可能となる。加えて、図形化プログラム６０を理解しやすいように表示することができる。
【００５９】
以上、本発明の好適な実施形態について説明したが、本発明は上記実施形態に限定されるものではない。例えば、上記実施形態では、図式化プログラム１０，６０を、上位階層Ｕと下位階層Ｄとの２階層に階層化したが、３階層以上に階層化してもよく、複数層に階層化すればよい。
【００６０】
また、上位モジュール１２，６２は、下位モジュール１３ａ，１３ｂ，６３の内部変数３５に直接アクセスするように、下位モジュール１３ａ，１３ｂ，６３に関連付けられていてもよい。この場合、下位階層Ｄにおけるディスプレイ９上のスペースを節約することができ、コンパクトで理解しやすく表示することができる。
【００６１】
また、上記実施形態では、プログラミング装置１をパソコン３に搭載したが、種々のコンピュータに搭載することも勿論可能である。なお、本発明の適用範囲は上記実施形態に限定されるものでなく、本発明は、シーケンス制御を行う様々な組込み制御装置上で実行される様々なプログラムを作成することができる。
【図面の簡単な説明】
【００６２】
【図１】本発明の一実施形態に係るプログラミング装置を示す概略ブロック図である。
【図２】図１のプログラミング装置による図式化プログラムを示す概略図である。
【図３】ディスプレイ上に表示された編集画面の一例を示す図である。
【図４】図２の図式化プログラムにおける上位モジュールの詳細を示す図である。
【図５】図２の図式化プログラムにおける下位モジュールの詳細を示す図である。
【図６】条件判断属性図を説明するための図である。
【図７】図１のプログラミング装置による図式化プログラムの他の例を示す概略図である。
【図８】図１のプログラミング装置による図式化プログラムのさらに他の例を示す概略図である。
【符号の説明】
【００６３】
１…プログラミング装置、２…マイクロプロセッサ（組込み制御装置）、５…編集部（編集手段）、６…表示部（表示手段）、７…変換部（変換手段）、９…ディスプレイ（画面）、１０，５０，６０…図式化プログラム、１１…モジュール、１２…上位モジュール（モジュール）、１３ａ，１３ａ…下位モジュール（モジュール）、１９，３５…内部変数、５２，６４…プロシジャ（シーケンス図群）、Ｃ…シーケンス図。
【図１】
2009271770.tif 000003
【図２】
2009271770.tif 000004
【図３】
2009271770.tif 000005
【図４】
2009271770.tif 000006
【図５】
2009271770.tif 000007
【図６】
2009271770.tif 000008
【図７】
2009271770.tif 000009
【図８】
2009271770.tif 000010