JP3177105B2 - プログラム作成方法及びプログラムを用いた制御装置 - Google Patents

プログラム作成方法及びプログラムを用いた制御装置

Info

Publication number
JP3177105B2
JP3177105B2 JP23904794A JP23904794A JP3177105B2 JP 3177105 B2 JP3177105 B2 JP 3177105B2 JP 23904794 A JP23904794 A JP 23904794A JP 23904794 A JP23904794 A JP 23904794A JP 3177105 B2 JP3177105 B2 JP 3177105B2
Authority
JP
Japan
Prior art keywords
program
execution
flow diagram
function
data flow
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 - Lifetime
Application number
JP23904794A
Other languages
English (en)
Other versions
JPH08106380A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP23904794A priority Critical patent/JP3177105B2/ja
Publication of JPH08106380A publication Critical patent/JPH08106380A/ja
Application granted granted Critical
Publication of JP3177105B2 publication Critical patent/JP3177105B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Programmable Controllers (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、各種のプロセス制御シ
ステム等で使用されるプログラムを作成するプログラム
作成方法及びそのプログラムを用いた制御装置に関す
る。
【0002】
【従来の技術】従来から、プロセス制御システムとして
適用されるDCS(デジタル・コントロール・システ
ム)やPC(プログラマブル・コントローラ)等におけ
るソフトウェアの作成は、ソフトウェア作成の生産性又
は保守性を向上させる観点からグラフィック形言語を用
いたプログラム作成装置が広く用いられている。
【0003】このグラフィック形言語としては、IEC
規格におけるラダー図(LD)やファンクションブロッ
ク図(FBD)が定められている。このグラフィック形
言語、特にファンクションブロック図を用いたプログラ
ム作成装置では、例えばPID制御のようなあらかじめ
決った動作をするブロック(FB:ファンクションブロ
ックと呼ぶ)が多種類用意され、これらファンクション
ブロックをを制御手順に従って表示画面上に組み合わせ
定義することによりデータフロー図を作成し、一連の制
御動作を実行可能とする制御プログラムを作成してい
る。
【0004】図8は、従来のプログラム作成装置を用い
て作成された制御プログラムのデータフロー図である。
この制御プログラムのデータフロー図は、データが左か
ら右、さらに上から下に順番に実行されることを前提と
して各ファンクションブロック21が並べられ、これら
ブロック21を順次信号線22で結線していく方式であ
る。このようなデータフロー図を用いた場合、ファンク
ションブロックの実行順番がわかりやすいという利点が
ある。
【0005】一方、図9は、従来の他のプログラム作成
装置を用いて作成された制御プログラムのデータフロー
図である。この制御プログラムのデータフロー図は、フ
ァンクションブロック21を自由に配置し、各ファンク
ションブロック21内で実行順序を定義しつつ、信号線
22で結線していく方式である。このような方式では、
ファンクションブロックを自由な位置に配置できるが、
実行順番がわかりにくく、定義作業も図8の方式よりも
繁雑である。
【0006】なお、図8,図9のような計装ループ図や
理論回路図(IBD)等をグラフィック形言語によって
プログラム化した図は、計装フロー図(データフロー
図)あるいはファンクションブロック図と呼ばれてい
る。
【0007】
【発明が解決しようとする課題】ところで、プロセス制
御システムに適用されるDCSやPCは、図8や図9に
示すようなデータフロー図が一つのシステム当り数十枚
から数百枚程度用いられ、さらに大規模システムであれ
ば数千枚程度用いられる。システム構築後もシステムの
増設、改造等に伴って、制御プログラムの修正が繰り返
される。
【0008】このように大規模で、増・改造等の度に繰
り返し修正されるプログラムは、高い生産性をもって作
成することが必要であり、また均一な品質を有し、保守
が容易でなければならない。
【0009】従って、この種の制御プログラム作成装置
は、容易、かつ、高速にプログラムを作成でき、作成さ
れたプログラムがプログラマの能力に左右されない均一
な品質のものであり、さらに、作成されたプログラムの
可読性が高く、どのようなプログラマ,オペレータであ
っても容易に内容、動作を理解でき、かつ、容易に修正
できるものでなければならない。
【0010】ここで、図10に沿って、プロセス制御の
内容把握からプログラム記述までの一連の作業を考えて
みる。まず、プログラマは制御するプロセスの内容に合
わせて図11(a)、図12(a)に示すような計装ル
ープ図、理論回路図(IBD)等を作成する(JS
1)。次に、計装ループ図内のPIDのような各要素は
グラフィック形言語のファンクションブロックとしてと
らえることができるので、計装ループ図、理論回路図
(IBD)等は図11(b)、図12(b)に示すよう
な各要素を節点とした有向グラフとしてそのまま表すこ
とができる(JS2)。
【0011】有向グラフは、節点(node)と向きを
考慮した枝(branch)からなっており、これらの
要素は複雑に絡み合っているので、これをそのまま計装
フロー図(データフロー図)に直すことはできない。ま
た、有向グラフには必ずしも一意に決った計算順序があ
るわけでもない。
【0012】従って、プログラマは、使用する制御プロ
グラム作成装置の機能に適合するように有向グラフの内
容を分解・再構成し、計算の順序を決めて、データフロ
ー図に相当するものに書き直さなければならない(JS
3)。この際、プログラマは有向グラフあるいはそれに
相当するものを頭の中で想定するだけで、有向グラフそ
のものは作らずに計装ループ図、理論回路図(IBD)
等を直接データフロー図に書き直すこともある。データ
フロー図に書き換える規則(ファンクションブロックの
計算順序等)を決めてしまえば、後はプログラムローダ
あるいはプログラムエディタ等を用いて定義作業をする
(JS4)だけであり、この定義作業は決った規則にし
たがって書いていく単純な作業であるので、プログラマ
でなくても同じ結果が得られる。
【0013】つまり、以上のような一連の作業の中で、
高生産性、均一な品質、保守の容易性を有するプログラ
ム作成のポイントは、有向グラフをデータフロー図に書
き直すところにある。従来の制御プログラム作成装置で
は有向グラフをそのままデータフロー図として用いるこ
とはできず、前述したようにプログラマがデータフロー
図に書き直しているが、この作業がプログラマの非常な
負担増となる。
【0014】例えば図8に示す従来の制御プログラム作
成装置では、データフロー図上でのファンクションブロ
ックの実行順序が左から右、上から下と決まっている。
従って、例えば一つのファンクションブロックから複数
の方向に枝を出す場合にはその方向が限定されるので、
有向グラフでは一つの節点(ファンクションブロック)
の記述で済むところを複数のファンクションブロックに
分けて記述しなければならないことが多い。また、交差
を含む等、枝が複雑に絡んでいる有向グラフは、複数枚
に分けないとデータフロー図に直すことができない。
【0015】また、有向グラフとデータフロー図が対応
していないので、プログラム作成時の試行錯誤、又は、
プログラム修正時に、データフロー図を大幅に書き直さ
なければならず、プログラムの生産性、保守性が低いと
いう問題点もある。
【0016】一方、図9に示す従来の制御プログラム作
成装置では、データフロー図内のファンクションブロッ
クの位置と実行順序に相関性はないが、各ファンクショ
ンブロックに次に実行するブロックを指定する必要があ
るので、やはり、有向グラフの内容をそのまま対応させ
るのは無理であり、図8の制御プログラム作成装置と同
様な問題点がある。さらに加えて、プログラムを修正す
る際にファンクションブロックの挿入削除をすると実行
順序の番号をすべて付け替えなければならないので、効
率が悪いばかりでなく間違いが起こり易く保守性が非常
に悪い。
【0017】このようにグラフィック形言語を用いた制
御プログラム作成装置によるプログラム作成・保守にお
いては、計装ループ図、理論回路図(IBD)等のごと
き有向グラフに相当するもの、又はこれらから作成した
有向グラフそのものをデータフロー図に書き直す作業の
とき、プログラマに多大な労力がかかる。また、この作
業ではプログラマの個人差による違いが生じ易く、均一
な品質のプログラム作成が妨げられる。さらに、データ
フロー図が計装ループ図、理論回路図(IBD)等と直
接対応せず、視覚的に似ていないので、プログラム(デ
ータフロー図)の可読性が悪く、プログラムの保守性が
悪い上、プロセス実行時にプロセスの進行状況がオペレ
ータ等にわかりにくいという問題点も生じている。
【0018】
【0019】本発明の目的は、プログラム作成の生産性
が高く、かつ、プログラムの均一な品質を保証するプロ
グラム作成方法を提供することにある。さらに、本発明
の他の目的は、プロセス実行時にオペレータがプロセス
の進行状況を容易に理解でき、かつ、プログラムの取扱
いが容易であるプログラムを用いた制御装置を提供する
ことにある。
【0020】
【0021】
【課題を解決するための手段】上記課題を解決するため
に、本発明は、プログラム作成画面上に複数種類の機能
シンボルを組み合わせてプログラムを作成するグラフィ
ック形言語を用いたプログラム作成方法において、プロ
グラム作成画面上の定義要素に複数個の機能シンボルを
定義し、この定義された前記機能シンボル間に方向性を
有する結合関係を定義し、プログラム作成画面上の右下
端の定義要素から走査を開始し、定義要素からなる行に
ついては各行を下から上へと走査し、各行内においては
定義要素を右から左へと走査し、この走査に基づいて機
能シンボルに連続した仮番号を付与し、機能シンボルを
節点とし、方向性を有する結合関係を枝とする有向グラ
フについて、仮番号を節点に付された半順序関係として
トポロジカルソートを行い、このトポロジカルソートに
より得られた順序関係を機能シンボルの実行順序とする
プログラムを作成するプログラム作成方法である。
【0022】さらに、別の発明は、プロセスの制御をお
こなう制御装置において、仮番号を付けされた方向性の
ある結合関係を有する複数の機能シンボルについて、ト
ポロジカルソートをおこなって機能シンボルの実行順序
を自動的に決定するプログラム実行順序決定手段と、こ
のプログラム実行順序決定手段によって作成された制御
プログラムをロードして実行するプログラム実行手段
と、制御プログラムに定義されている機能シンボルおよ
びその結合関係を制御プログラム実行中に表示すると共
に、制御プログラムの実行状況を表示する表示手段とを
有する制御装置である。
【0023】
【0024】
【0025】
【0026】
【作用】したがって、以上のような手段を講じたことに
より、プログラムすべき計装フロー図等の情報から、機
能シンボルの定義とこの定義された機能シンボル間の結
合関係が定義される。この結合関係は方向性を有するも
のであり、多くの場合はデータの流れが示される。
【0027】さらに、各機能シンボルに仮番号が付与さ
れる。引き続き、以上のように結合関係を決められ、仮
番号を付与された各機能シンボルについて、トポロジカ
ルソートがおこなわれ、実行の順番が自動的に決定され
る。
【0028】また、プログラム作成画面上の右下端の定
義要素から同画面上の左上端の定義要素に向って走査が
行われ、この走査に基づいて機能シンボルに連続した仮
番号が付与される。
【0029】そして、機能シンボルを節点とし、方向性
を有する結合関係を枝とする有向グラフについて、仮番
号を節点に付された半順序関係としてトポロジカルソー
トが行われ、このトポロジカルソートにより得られた順
序関係が機能シンボルの実行順序とされる。
【0030】以上のうち、例えば仮番号付与から機能シ
ンボルの実行順序の決定までを計算機上にプログラムさ
れた手段で自動的に行えば、制御プログラム作成につい
ての生産性を飛躍的に向上させることができる。
【0031】さらに、別の発明は、以上のような手段を
講じたことにより、プログラム実行手段によって、仮番
号を付けされた方向性のある結合関係を有する複数の機
能シンボルについて、トポロジカルソートをおこなって
機能シンボルの実行順序を自動的に決定された制御プロ
グラムが実行される。
【0032】さらに、表示手段によって、制御プログラ
ムに定義されている機能シンボルおよびその結合関係が
制御プログラム実行中に表示されると共に、制御プログ
ラムの実行状況が表示される。
【0033】従って、例えばプログラムすべき計装フロ
ー図等と同様な配置で機能シンボルおよびその結合関係
を定義しておけば、当該計装フロー図と同様な図形表示
が表示手段に表示され、実行状況がこれに沿って表示さ
れる。このため、オペレータにとって、プラント等の動
作状況が非常にわかりやすく、取り扱いが便利である。
【0034】
【実施例】以下、本発明の実施例について、図面を参照
して説明する。図1は本発明の一実施例に係るプログラ
ム作成方法が適用されるプログラム作成装置によって作
成されたプログラムを取り扱ってプロセス制御を実行す
る制御システムの構成を示す図である。
【0035】そのうちプログラム作成装置は、キーボー
ドやマウス等の入力装置1と、この入力装置1から入力
されるデータ等によってファンクションブロック(F
B)を定義してデータフロー図を作成するプログラム作
成装置本体2と、この装置本体2で作成されたデータフ
ロー図を表示する表示装置3とによって構成されてい
る。
【0036】前記プログラム作成装置本体2は、入力装
置1からのデータを取り込んで必要に応じて処理可能な
データに変換したり、処理結果のデータを表示装置3に
表示する入出力部4と、装置本体2の各構成要素その他
各種の付随する装置を統括制御する制御部5と、ファン
クションブロック(FB)の定義作業を行うFB定義作
業処理部6と、プログラマの操作で起動し、定義された
各ファンクションブロックの実行順序を自動決定するた
めの実行順序自動決定部7と、編集テーブル,実行テー
ブル及び作成されたプログラム等を格納する記憶装置8
とによって構成されている。
【0037】さらに、実行順序自動決定部7は、表示装
置3のデータフロー図作成画面上の右下のファンクショ
ンブロックから順に仮番号を付与する仮番号付与部9
と、トポロジカルソートによる深さ優先探索及びファン
クションブロックの拾い上げを行うFB拾い上げ処理部
10と、拾い上げにより決定されたファンクションブロ
ックの実行順序をもとに実行テーブルを作成する実行テ
ーブル作成部11とによって構成されている。
【0038】一方、制御システムは、プログラム作成装
置本体2によって作成された制御プログラムをロードし
て当該制御プログラムを実行するデジタル・コントロー
ル・システムDCSやプログラマブル・コントローラP
C等の制御装置12と、制御装置12による制御プログ
ラムの実行中、データフロー図等を表示してプログラム
の実行状態をオペレータに知らせる表示装置13と、制
御装置12によって制御されるプラント14とによって
構成されている。
【0039】なお、請求の範囲に記載する機能シンボル
定義手段は、例えば制御部5およびFB定義作業処理部
6によって構成され、仮番号付与手段は、例えば制御部
5および仮番号付与部9によって構成されている。さら
に、実行順序決定手段は、例えば制御部5およびFB拾
い上げ処理部10および実行テーブル作成部11によっ
て構成されている。
【0040】次に、以上のように構成された本実施例の
プログラム作成装置及びそのプログラムを取り扱う制御
装置の動作について説明する。まず、プログラム作成装
置の動作を図2及び図3のフロー図に沿って説明する。
【0041】図2は本実施例に係るプログラム作成装置
を用いたときの制御プログラム作成手順を示すフロー図
であり、本実施例に係るプログラム作成方法のフローを
示している。
【0042】まず、プログラマは、プロセス制御の対象
に適合する計装ループ図あるいは論理回路図を作成する
(S1)。計装ループ図の例は例えば図11(a)に示
す通りである。この段階は、プログラマによる作業とい
うよりもむしろシステム設計に属する部分であり、プロ
グラム作成の専門化でなくとも制御技術者であれば作業
を進めることができる。
【0043】次に、計装ループ図あるいは論理回路図か
ら、それに対応する有向グラフを作る(S2)。因み
に、図11(a)に対応する有向グラフは図11(b)
に示す通りである。この有向グラフは、計装ループ図内
の各要素を節点、信号結線を向きを考慮した枝として表
しているだけなので、必ずしも図面として描写する必要
はなく、プログラマが意識的、無意識的にかかわらず頭
の中で思い浮かべるだけで十分なことも多い。
【0044】この次ぎのS3より引き続き、プログラマ
はプログラム作成装置を用いて次の処理を行う。すなわ
ち、プログラマは、表示装置3上のデータフロー図作成
画面上でファンクションブロック15の定義作業を行う
(S3)。データフロー図作成画面は定義要素である単
位区画領域16の行列13×13からなっており、各単
位区画領域16にはそれぞれ1つのファンクションブロ
ックパートおよび矢印付き結線17をの何れかまたは両
方が設定される。
【0045】さらに、詳しく説明すると、設定された情
報は、各単位区画領域16に対応する図3(a)に示す
ような編集テーブルに格納される。編集テーブルにはフ
ァンクションブロックID,ファンクションブロックコ
ード,ファンクションブロックパートコード,右矢印
(矢印付き結線17)の有無,左矢印の有無,上矢印の
有無及び下矢印の有無が設定される。このようなファン
クションブロック15の設定作業(すなわち、データフ
ロー図作成作業)及びデータフロー図の追加,削除,複
写,移動等の編集作業は、キーボード,マウス等の入力
装置1を用いてデータフロー図作業画面上の表示マーク
等の選択などによって行われ、内部的には図3(a)の
編集テーブルの各情報を操作することにより行われる。
【0046】また、ファンクションブロックIDは、フ
ァンクションブロック15を識別するための名称であ
り、ファンクションブロックコードはファンクションブ
ロック15の機能を示す。ファンクションブロック15
は、機能によっては、2つ以上の単位区画領域を占有す
る、すなわち、2つ以上のファンクションブロックパー
トから構成されることがある。例えば複数個の入出力を
扱う場合である。このとき各ファンクションブロックパ
ートには、同一のファンクションブロックIDが付けら
れ、それぞれのファンクションブロックパートにファン
クションブロックパートコードが与えられる。
【0047】一方、単位区画領域16内の矢印付き結線
17(前述の右,左,上,下矢印)は、図3(b)に示
されるように、矢印付き結線17が設定される単位区画
領域16から上下左右の隣り合う単位区画領域16に対
して引かれる。データはこの結線の矢印17の向きに沿
って流れる。
【0048】図3(c)は、データフロー図作成画面の
一部にファンクションブロック15及び矢印付き結線1
7が表示された例であり、単位区画領域3−1及び3−
3に対応する編集テーブルの内容が示されている。
【0049】上述したファンクションブロック15の設
定、データフロー図編集機能は、プログラム作成装置本
体2内のFB定義作業部6によって実現される。この機
能を用い、図2中S3において有向グラフの節点をファ
ンクションブロック、向きを考慮した枝を矢印付き節点
としてそのまま入力する。このとき、ファンクションコ
ードは、計装フロー図等で決められる節点の機能に対応
して入力される。
【0050】図4は図11(a)及び図11(b)に対
応して入力されたデータフロー図を示す。この図は視覚
的に計装フロー図11(a)とほとんど同じである。図
中A〜Oは、ファンクションブロックIDを示してい
る。
【0051】次に、ファンクションブロック設定,編集
作業が終了した後に、プログラマは実行順序自動決定部
7を起動する。実行順序自動決定部7は、起動されると
図2のS4に示されるように実行順序の自動決定を行
い、データフロー図に対応する実行テーブルを作成す
る。
【0052】さらに、図2中S4のさらに詳しい手順に
ついて、図5を参照して説明する。このS4はファンク
ションブロックの実行順序の自動決定のフローを示して
いる。
【0053】まず、仮番号付与部9によりデータフロー
図作成画面上のすべてのファンクションブロックに仮番
号が付与される(ST1)。仮番号付与部9は、データ
フロー図作成画面上の右下端の単位区画から走査を開始
し、単位区画領域16からなる行については各行を下か
ら上へと走査し、各行内においては単位区画領域16を
右から左へと走査する。すなわち13×13の全単位区
画領域を順に右から左、下から上へと走査する。各ファ
ンクションブロックの検出はファンクションブロックパ
ートコード=1の位置で行われるものとし、走査にした
がってファンクションブロックが検出されるごとに1か
ら始まる連続した番号が付与される。
【0054】次に、FB拾い上げ処理部10により、ト
ポロジカルソートによるファンクションブロックの拾い
上げとファンクションブロックの実行順序の決定が行わ
れる(ST2)。
【0055】トポロジカルソートとはグラフ理論の一部
であって、半順序関係(必ずしも順序を比較できない場
合がある順序関係)が与えられたデータに対し、1番最
初に行う仕事から最後に行う仕事までを1列に並べるこ
とをいう。有向グラフでは、半順序関係になること多
く、このような場合、許される実行順序が複数存在す
る。トポロジカルソートでは、節点に番号を付与するこ
とによって、複数の実行順序のうちのひとつを特定す
る。
【0056】すなわち、本実施例は、ファンクションブ
ロックを節点,矢印付き結線17を枝とした有向グラフ
に対し、ST1の規則によって半順序関係を自動的に決
定にすることにより、トポロジカルソートを実行できる
ようにしている。
【0057】次に、図6(a)は、図4に示すデータフ
ロー図に、前記ST1の規則により仮番号を付与して作
成され有向グラフ図であり、図6(a)を用いてトポロ
ジカルソートによる拾い上げと実行順序決定を具体的に
説明する。
【0058】まず、トポロジカルソートは、例えば以下
の規則(「C言語によるはじめてのアルゴリズム入
門」,河西朝雄,技術評論社)によって仕事の実行順序
を決定する。 1)仮番号1の節点から、矢印(向きを考慮した枝)の
方向に沿って深さ優先探査を行い、行き着いた(つま
り、進行できる矢印がない)節点から、探索経路を戻る
ときに節点を拾っていく。 2)もし、閉路(深さ優先探査中にすでに訪れた節点に
戻る経路)が検出されたら、その閉路の始点のみを拾い
上げの対象とする。閉路において、閉路の始点以外の節
点は未訪問とする。 3)一つの拾い上げが終わったら、次の未訪問の節点の
うち、最も若い番号から1)、2)の拾い上げを繰り返
し、未訪問の節点がなくなるまで行う。 4)このようにして拾い上げられた節点を逆順に並べ変
えたものを実行の順序とする。
【0059】図6(a)は、一番始の深さ優先探査及び
拾い上げを行うとグループ1(G1)のようになる。以
下同様にグループ分けを行うと、図6(a)の有向グラ
フは10個の優先探査及び拾い上げグループに分けるこ
とができる。これを図6(b)に示す。さらに拾い上げ
結果から節点の実行順序を並べると図6(c)のように
なる。これにより、閉ループ(閉路)で発生する不確定
な順序が一定の規則で決め付けられると共に、矢印の向
きで決まる節点の順序は正しく決定できていることがわ
かる。
【0060】また、ここで仮番号を与えられた節点は、
図4のデータフロー図における各ファンクションブロッ
クに他ならないから、ファンクションブロックの実行順
序は図6(c)にファンクションブロックIDで示す通
りとなる。
【0061】さて、このようにしてファンクションブロ
ックの実行順序が決定されると、次に、実行テーブル作
成部11により実行テーブルが作成される(図5中ST
3)。
【0062】実行テーブルは、ファンクションブロック
の実行順通りに制御内容が並んだテーブルであり、制御
プログラムを実行する際に必要なものである。本実施例
の制御プログラムでは、これを有するので、矢印付き結
線を上下左右自由に設定することが可能となる。
【0063】まず、ファンクションブロックの実行順序
はST2により決定されている。次に、あるファンクシ
ョンブロックがどのファンクションブロックから入力を
得ているかという情報が必要である。これは、編集テー
ブルに設定されている矢印付き結線を逆にたどっていく
ことにより求めることができる。図7は、以上のように
して求められた図4のデータフロー図に対応する実行テ
ーブルである。
【0064】以上のように、図2のS1〜S4が実行さ
れ、データフロー図に対応する制御プログラムが作成さ
れる。実際には、このようなデータフロー図を数十枚か
ら数百枚組み合わせなければならないので、さらに、編
集作業を行って制御プログラムが完成する。完成したプ
ログラムは記憶装置8に保存される(S5)。
【0065】さらに、本実施例の制御システムでは、完
成した制御プログラムは制御装置12にロードされ、プ
ラントプロセスの制御が行われる。本実施例で作成され
た制御プログラムの実行中、図4と同様な計装フロー図
通りのデータフロー図が制御装置12の表示装置13に
表示され、プロセス実行状況が示される。
【0066】このように本実施例に係るプログラム作成
装置によれば、FB定義作業処理部6と実行順序自動決
定部7を設け、ファンクションブロック間の矢印付き結
線を上下左右方向に配置することができ、ファンクショ
ンブロックおよび矢印付き結線が定義設定されたデータ
フロー図におけるファンクションブロックの実行順序お
よび入出力関係を自動決定するようにしたので、従来
は、プログラマが行っていた有向グラフの分解、再構成
によるプログラム作成作業(図10、JS3)を、自動
的に行うことができ(図2、S4)、非常に高い生産性
でプログラムを作成、編集することができる。したがっ
て、プログラムの均一な品質も保証できる。
【0067】さらに、本実施例のプログラム作成装置に
より作成されたプログラムは、計装フロー図等をそのま
まデータフロー図にできるので、可読性が非常に高く、
保守,改造がしやすい。
【0068】また、このように本実施例に係るプログラ
ム作成方法によれば、ファンクションブロック間の矢印
付き結線を上下左右の自由な方向に配置し、全単位区画
領域を右下から順に右から左、下から上へと走査してフ
ァンクションブロックに仮番号を付与することにより半
順序関係を決定して、これらの関係からトポロジカルソ
ートを実行することによってファンクションブロックの
実行順序を決定するようにしたので、従来は、プログラ
マが行っていた有向グラフの分解、再構成によるプログ
ラム作成作業(図10、JS3)を、自動的に行うこと
ができ(図2、S4)、非常に高い生産性でプログラム
を作成、編集することができる。したがって、プログラ
ムの均一な品質も保証できる。
【0069】さらに、本実施例のプログラム作成方法に
より作成されたプログラムは、計装フロー図等をそのま
まデータフロー図にできるので、可読性が非常に高く、
保守,改造がしやすい。
【0070】さらに、このように本実施例に係る制御装
置によれば、本実施例の装置又は方法により作成された
制御プログラムを実行する制御装置および表示装置13
を設け、制御プログラムの実行中、計装フロー図通りの
データフロー図が制御装置12の表示装置13に表示さ
れ、プロセス実行状況が示されるので、オペレータがプ
ロセスおよび実行中のプロセス状況を把握し易く、オペ
レータの判断を助けることができる。
【0071】なお、本実施例では、単位区画領域の行列
を13×13としているが、これにとらわれるものでな
く、行列数は必要に応じて幾つにしてもよい。また、本
実施例は図11(a)に示されるような計装フロー図の
場合を扱っているが、本発明は、適用対象が例えば図1
2(a)に示されるような論理回路図であってもよく、
プログラム適用対象を有向グラフで表現できるものであ
れば、あらゆるグラフィック形言語を用いるプログラム
作成装置に適用することができる。
【0072】
【0073】
【発明の効果】以上詳記したように、本発明によれば、
プログラム作成の生産性が高く、かつ、プログラムの均
一な品質を保証するプログラム作成方法を提供すること
ができる。さらに、プロセス実行時にオペレータがプロ
セスの進行状況を容易に理解でき、かつ、プログラムの
取扱いが容易であるプラグラムを用いた制御装置を提供
することができる。
【図面の簡単な説明】
【図1】本発明の一実施例に係るプラグラム作成方法が
適用されるプログラム作成装置を接続した制御システム
を示す構成図。
【図2】本発明の一実施例に係るプログラム作成装置を
用いたときの制御プログラム作成手順を示すフロー図。
【図3】データフロー図作成画面上での編集テーブル内
容の一例を示す図。
【図4】本発明の一実施例に係るプログラム作成装置を
用いて作成した制御プログラムのデータフロー図。
【図5】実行順序の自動決定および実行テーブルの作成
手順を示すフロー図。
【図6】トポロジカルソートによる拾い上げおよび決定
されたファンクションブロックの実行順序を示す図。
【図7】実行テーブルの一例を示す図。
【図8】従来のプログラム作成装置を用いて作成された
制御プログラムのデータフロー図。
【図9】従来のプログラム作成装置を用いて作成された
制御プログラムのデータフロー図。
【図10】従来のプログラム作成装置を用いたときの制
御プログラム作成手順を示すフロー図。
【図11】計装ループ図およびその有向グラフを示す
図。
【図12】理論回路図およびその有向グラフを示す図。
【符号の説明】
2…プログラム作成装置本体、6…FB定義作業処理
部、7…実行順序自動決定部、9…仮番号付与部、10
…FB拾い上げ処理部、11…実行テーブル作成部、1
3…表示装置。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 Robert Sedgewick 著,野下 浩平訳,「アルゴリズム 第 3巻」,1993年9月30日初版発行,近代 科学社,pp.67−81 守屋悦郎著,「コンピュータサイエン スのための離散数学」,(1992/05 /25),株式会社サイエンス社,pp. 90−136 (58)調査した分野(Int.Cl.7,DB名) G06F 9/06

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 プログラム作成画面上に複数種類の機能
    シンボルを組み合わせてプログラムを作成するグラフィ
    ック形言語を用いたプログラム作成方法において、 前記プログラム作成画面上の任意の定義要素に複数個の
    機能シンボルを定義し、 定義された前記機能シンボル間に方向性を有する結合関
    係を定義し、 前記プログラム作成画面上の右下端の定義要素から走査
    を開始し、定義要素からなる行については各行を下から
    上へと走査し、各行内においては定義要素を右から左へ
    と走査し、この走査に基づいて前記機能シンボルに連続
    した仮番号を付与し、 前記機能シンボルを節点とし、前記方向性を有する結合
    関係を枝とする有向グラフについて、前記仮番号を節点
    に付された半順序関係としてトポロジカルソートを行
    い、 このトポロジカルソートにより得られた順序関係を前記
    機能シンボルの実行順序とするプログラムを作成するこ
    とを特徴としたプログラム作成方法。
  2. 【請求項2】 プロセスの制御をおこなう制御装置にお
    いて、 仮番号を付けされた方向性のある結合関係を有する複数
    の機能シンボルについて、トポロジカルソートをおこな
    って前記機能シンボルの実行順序を自動的に決定するプ
    ログラム実行順序決定手段と、 このプログラム実行順序決定手段によって作成された制
    御プログラムをロードして実行するプログラム実行手段
    と、 前記制御プログラムに定義されている機能シンボルおよ
    びその結合関係を制御プログラム実行中に表示すると共
    に、制御プログラムの実行状況を表示する表示手段とを
    有することを特徴とするプログラムを用いた制御装置。
JP23904794A 1994-10-03 1994-10-03 プログラム作成方法及びプログラムを用いた制御装置 Expired - Lifetime JP3177105B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23904794A JP3177105B2 (ja) 1994-10-03 1994-10-03 プログラム作成方法及びプログラムを用いた制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23904794A JP3177105B2 (ja) 1994-10-03 1994-10-03 プログラム作成方法及びプログラムを用いた制御装置

Publications (2)

Publication Number Publication Date
JPH08106380A JPH08106380A (ja) 1996-04-23
JP3177105B2 true JP3177105B2 (ja) 2001-06-18

Family

ID=17039088

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23904794A Expired - Lifetime JP3177105B2 (ja) 1994-10-03 1994-10-03 プログラム作成方法及びプログラムを用いた制御装置

Country Status (1)

Country Link
JP (1) JP3177105B2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4122974B2 (ja) * 2001-03-29 2008-07-23 三菱電機株式会社 プログラミングツール
JP2005222221A (ja) * 2004-02-04 2005-08-18 Hitachi Ltd 組込コントローラ開発ツール、組込コントローラ、及び組込コントローラ開発プロセス
KR100922677B1 (ko) * 2005-04-18 2009-10-19 가부시키가이샤 야스카와덴키 인버터
US7716630B2 (en) * 2005-06-27 2010-05-11 Ab Initio Technology Llc Managing parameters for graph-based computations
JP4556787B2 (ja) * 2005-06-30 2010-10-06 株式会社ジェイテクト プログラマブルコントローラの編集装置
JP2007128345A (ja) * 2005-11-04 2007-05-24 Toshiba Corp プログラム自動生成装置、プログラム自動生成方法、およびプログラム自動生成プログラム
JP4793588B2 (ja) * 2007-06-13 2011-10-12 オムロン株式会社 安全コントローラのプログラム開発支援装置
JP5487789B2 (ja) * 2009-08-07 2014-05-07 株式会社明電舎 ソフトウェアの開発支援システム、支援方法およびプログラム
JP4924851B2 (ja) * 2009-12-09 2012-04-25 オムロン株式会社 安全コントローラのプログラム開発支援装置
JP5779077B2 (ja) 2011-11-22 2015-09-16 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation プログラムの生成を支援する装置及び方法
JP2013171322A (ja) * 2012-02-17 2013-09-02 Toshiba Corp プラント運転支援装置、プラント運転支援プログラム、及びプラント運転支援方法
JP6092333B2 (ja) * 2015-09-02 2017-03-08 株式会社東芝 プラント運転支援装置、プラント運転支援プログラム、及びプラント運転支援方法
JP5971575B2 (ja) * 2015-09-02 2016-08-17 株式会社東芝 プラント運転支援装置、プラント運転支援プログラム、及びプラント運転支援方法
JP7340494B2 (ja) * 2020-07-02 2023-09-07 株式会社日立製作所 制御コントローラのプログラム作成装置並びに方法
JP7374381B1 (ja) * 2022-10-18 2023-11-06 三菱電機株式会社 シミュレーションプログラム、シミュレーション方法及びシミュレーション装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Robert Sedgewick 著,野下 浩平訳,「アルゴリズム 第3巻」,1993年9月30日初版発行,近代科学社,pp.67−81
守屋悦郎著,「コンピュータサイエンスのための離散数学」,(1992/05/25),株式会社サイエンス社,pp.90−136

Also Published As

Publication number Publication date
JPH08106380A (ja) 1996-04-23

Similar Documents

Publication Publication Date Title
JP3177105B2 (ja) プログラム作成方法及びプログラムを用いた制御装置
EP0461830B1 (en) Figure editing apparatus
CN100424600C (zh) 开发支持装置
US5177420A (en) Method of and apparatus for generating control program
US6411858B1 (en) Method of and apparatus for automatically generating control programs for computer controlled system
JP4973867B2 (ja) Plc制御プログラム開発装置及びプログラム
US6173208B1 (en) Method for generating control codes for use in a process control system
CN1722227B (zh) 数字混合器、混合器配置编辑装置及其机器可读介质
CN100388193C (zh) 修改面向对象的程序的方法、运行时系统和自动化系统
JPH0772920A (ja) Faシステムの制御方法及び装置
JP4366605B2 (ja) 開発支援装置およびプログラムならびに処理方法
JP2002258936A (ja) プラント監視制御システムエンジニアリングツール
CN112446625A (zh) 一种工艺线路生成系统、方法、平台及存储介质
Kamigaki et al. An object-oriented visual model-building and simulation system for FMS control
JPH1069379A (ja) 図的プログラミング方法
JP3623248B2 (ja) 複合加工用自動プログラミング装置
JPH0119170B2 (ja)
JP2831816B2 (ja) 設計情報間対応表示装置
JPH0588869A (ja) プログラム自動生成方法及び装置
KR100252923B1 (ko) 자동 이·적재 패턴 생성 방법
JPS60156144A (ja) 周期処理の負荷最適分散制御方式
JPH03262050A (ja) パラメータパターンデータ作成装置
Yan et al. Modeling and control of workstation level information flow in FMS using modified Petri nets
JP2993288B2 (ja) 加工プログラム作成装置
JPH04195675A (ja) 探索木を用いたスケジューリング方式及びバックトラック処理方式

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080406

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090406

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100406

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100406

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110406

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130406

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140406

Year of fee payment: 13

EXPY Cancellation because of completion of term