説明

設計支援装置

【課題】 GUI画面上でユーザによって指定された各モジュールのインタフェース間の接続関係を定義づける設計支援装置を提供する。
【解決手段】 設計支援装置200は、モジュールと対応する制御プログラムを記憶する記憶部12と、入力部11を介してユーザから設計対象となる記憶部12に記憶されたモジュールを示す装置オブジェクトを表示する指示を受付ける選択受付部101と、表示された装置オブジェクトの入出力インタフェース間を接続する指定を受付ける接続受付部103と、選択受付部101によって受付けられたモジュールの入出力インタフェースを区別して装置オブジェクトをディスプレイ13に表示し、接続受付部103によって受付けられた入出力インタフェース間を結線してディスプレイ13に表示するモジュール表示部102と、接続受付部103によって受付けられたインタフェース間の接続関係を定義づける結線部104を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御プログラムを実行するプログラム実行装置の設計に関し、特に、複数のモジュールが結合されたプログラム実行装置の設計において各モジュールの接続関係の定義づけを支援する設計支援装置に関する。
【背景技術】
【0002】
一般に複数のモジュール(部品)を結合してなる電子装置を作成する場合、小さい処理単位でモジュールを結合させることにより電子装置を作成する方法が用いられている。ここで、モジュールは、プログラムを実行することによってある機能を実現するものである。
上記の方法によって電子装置を作成する場合、予めユーザは各モジュールの入出力インタフェースを定義したテーブルを作成し、当該テーブルに基づき各モジュールの接続関係を定義し、その定義に基づいて電子装置の作成を行っていた。また、その定義に基づいて作成したプログラムはシミュレーション用の装置を用いて動作検証し(特許文献1参照)、接続誤りがあれば各モジュールの入出力インタフェースと接続関係の定義を確認しながら修正しなければならなかった。
【特許文献1】特開昭62-14240号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかし、このような作業に不慣れなユーザの場合には接続関係を定義する作業に多大な時間を要するため、誰でも簡単な操作でモジュール間の接続を定義することができる設計支援装置が望まれている。
そこで、本発明は、上記の要望に鑑みてなされたものであり、モジュール間の接続関係を参照しながら簡易な操作で複数のモジュール間の接続を定義づけることができる設計支援装置を提供することを目的とする。
【課題を解決するための手段】
【0004】
上記課題を解決するために、本発明に係る設計支援装置は、入力データに基づいて演算しデータ出力を行う複数のプログラム実行装置間の連関を定義する設計支援装置であって、前記プログラム実行装置を入力と出力を区別して図形化してなる設計対象図形を表示する表示制御手段と、一のプログラム実行装置の入力と他のプログラム実行装置の出力を接続する指定を受付ける接続受付手段と、前記接続受付手段により受付けられた指定に従って前記設計対象図形の入力と出力を結線して表示する結線表示手段と、前記接続受付手段により受付けられた指定に従って各プログラム実行装置の接続関係を定義する定義手段とを備えることを特徴とする。
【発明の効果】
【0005】
上述した構成により、設計対象となるモジュールの入出力インタフェースが区別できるようにモジュールを図形化して表示するため、ユーザは抽象的に表示されたモジュールとそのインタフェースを見ながら簡単な操作で各モジュール間を接続することができ、モジュール間の接続関係を画面上で確認できるので接続漏れ等も生じにくい。
また、前記プログラム実行装置は制御プログラムを実行するものであり、前記設計支援装置は、更に、各制御プログラムを格納する格納手段と、前記定義手段によって定義された接続関係に従って連関するように当該接続に係る各プログラム実行装置に対応する制御プログラムをシミュレーション実行するシミュレーション手段を備えることとしてもよい。
【0006】
この構成により、設計支援装置は、ユーザによって接続されたモジュールの制御プログラムを実行することにより結合されたモジュールの連携動作をシミュレーションすることができる。
また、前記シミュレーション手段は、更に、前記結線に係る各プログラム実行装置の出力値に応じて結線の表示態様を変えて表示する結線表示変更部を備えることとしてもよい。
【0007】
この構成によれば、設計支援装置は、画面上で結線されたプログラム実行装置を示す設計対象図形(以下「装置オブジェクト」という)に対応する制御プログラムを実行し、出力されるデータ値に応じて画面上の結線幅を変えて表示するため、ユーザはデータ値の変化を確認することができる。
また、前記プログラム実行装置は制御プログラムを実行し、前記設計対象図形は枠を有している場合、前記設計支援装置は、更に、前記表示制御手段によって表示された設計対象図形に対応する制御プログラムを表示する指示を受付けるプログラム表示受付手段と、前記指示された設計対象図形の枠内に当該設計対象図形に対応する制御プログラムを表示するプログラム表示手段とを備えることとしてもよい。
【0008】
この構成によれば、設計支援装置は、設計対象となる装置オブジェクト枠内に当該装置オブジェクトに対応する制御プログラムを表示するため、装置オブジェクトがどのような処理を行うのか容易に確認することができる。
<実施の形態>
以下、本発明の実施の形態に係る設計支援装置200について説明する。
【0009】
本実施の形態に係る設計支援装置200は、GUI技術を用いて実現され、各モジュールに対応する制御プログラムとGUI画面上の各モジュールを示す装置オブジェクトを識別するオブジェクト名は、ユーザによってモジュール毎に予め登録されているものとする。
設計支援装置200は、GUI画面においてモジュール選択のためのライブラリ領域にオブジェクト名を一覧表示し、ユーザによるマウス操作によってライブラリから複数のオブジェクト名が選択され作業領域に配置されると、当該オブジェクト名の装置オブジェクトとそのインタフェースを同画面の作業領域に表示し、ユーザによるマウス操作に応じてモジュール間の接続を定義づける。
<全体構成>
図1は、本発明の実施形態に係る設計支援装置200の構成図である。
【0010】
設計支援装置200は、同図に示すように、入力部11、記憶部12、ディスプレイ13、及び制御部100を備える。
ここで、入力部11は、マウス、キーボードで実現され、ユーザによる操作を受付けて制御部100へ各操作を示す信号を送出する機能を有する。
記憶部12は、ハードディスク等で構成され、ユーザによって登録された制御プログラムとオブジェクト名等を対応付けた装置オブジェクトテーブル、入出力インタフェースの表示態様を示すインタフェーステーブル、表示されたオブジェクトの座標を示す座標テーブル、ユーザによって指定された各インタフェースの接続関係を定義した接続テーブル、及び装置オブジェクト等の表示態様を定義したオブジェクト情報を記憶している。尚、各テーブルの説明は後述することとする。
【0011】
ディスプレイ13は、例えば液晶ディスプレイ等で実現され、制御部100から送出される信号に応じて装置オブジェクト等の画像を表示する機能を有する。
また、制御部100は、メモリ及び制御プロセッサにより実現され、選択受付部101、モジュール表示部102、接続受付部103、結線部104、生成部105、シミュレーション部106、結線幅変更部107、グラフ表示部108、プログラム表示受付部109、及びプログラム表示部110を有し、入力部11から送出された信号に応じて動作する機能を有する。
【0012】
以下、制御部100の各部の機能について説明する。
選択受付部101は、ユーザから入力部11を介してモジュールの選択及び当該モジュールの装置オブジェクトを作業領域に配置する指示を受付け、当該モジュール及び当該モジュールを配置する座標を示す信号をモジュール表示部102へ送出する機能を有する。尚、ユーザが装置オブジェクトを作業領域に配置する操作は、例えばマウスを用いて作業領域にドラッグアンドドロップする。
【0013】
モジュール表示部102は、記憶部12からオブジェクト情報、インタフェーステーブル及び装置オブジェクトテーブルを読み出し、選択受付部101から受取ったモジュールのオブジェクトを配置する座標と、オブジェクト情報と、インタフェーステーブルとに基づいて、当該モジュールの装置オブジェクトを表示させる座標と各装置オブジェクトにおける入出力インタフェースの相対座標を算出して記憶部12の座標テーブルに当該座標を記憶し、ディスプレイ13の算出した座標位置に装置オブジェクトを表示する機能を有する。また、後述する結線部104からインタフェースの座標間を結線する指示を受付け、当該座標間を結線する結線オブジェクトをディスプレイ13に表示する機能を有する。
【0014】
接続受付部103は、ユーザから入力部11を介して接続するディスプレイ13上における点の指定を受付け、指定された点の座標を結線部104及び生成部105へ送出する機能を有する。ここで、点の指定はディスプレイ13上をマウスでクリックすることにより行い、クリックされた順に始点、終点と定め、クリックされた座標に始点か終点を示す情報を付加して送出するものとする。尚、複数の接続が指定された場合、2点がクリックされる毎にクリックされた座標に始点、終点を示す情報を付加して結線部104へ送出するものとする。
【0015】
結線部104は、記憶部12から座標テーブルを読み出し、座標テーブルと接続受付部103から受取った座標に基づいて始点及び終点となるインタフェースの中心座標を求め、当該座標間を結線して表示する指示をモジュール表示部102へ送出し、結線するモジュールとインタフェースの接続関係を記憶部12の接続テーブルに記憶する機能を有する。
生成部105は、ユーザから入力部11を介して制御プログラムを登録する指示を受付けると、記憶部12から装置オブジェクトテーブル及び接続テーブルを読み出し、接続に係る出力インタフェースの出力値が同接続に係る入力インタフェースの入力値となるように各モジュールに対応する制御プログラムを結合して新たな制御プログラムを生成する。また、生成した制御プログラムを新たなモジュールとして装置オブジェクトテーブルに記録する機能を有する。
【0016】
シミュレーション部106は、ユーザから入力部11を介して画面上の結線された装置オブジェクトの制御プログラムを実行する指示を受付け、記憶部12から装置オブジェクトテーブルと接続関係を定義した接続テーブルを読み出し、接続テーブルの接続関係に基づいて各モジュールに対応する制御プログラムを結合させた制御プログラムを実行する機能を有する。
【0017】
結線幅変更部107は、シミュレーション部106によって画面上で結線された装置オブジェクトの制御プログラムが実行されている場合に、ユーザから入力部11を介して結線オブジェクトに所定の操作が行われると、各結線オブジェクトの出力インタフェースにおける出力データ値に応じて結線オブジェクトの種類を変更して表示する機能を有する。
尚、結線オブジェクトは、標準の結線幅(以下「標準幅」という)のオブジェクトと標準幅より太い結線幅のオブジェクトの2種類である。標準幅より太い結線幅のオブジェクトは、ユーザによって結線オブジェクトに所定の操作がなされた場合に、結線における出力データが閾値を超えたときに表示し、2種類の結線オブジェクトは予めオブジェクト情報として記憶されており、閾値はユーザによって定められているものとする。尚、この所定の操作とは、例えばマウスで結線オブジェクトをクリックする操作である。
【0018】
グラフ表示部108は、シミュレーション部106によって制御プログラムが実行されている場合に、ユーザから入力部11を介して結線オブジェクトに所定の操作が行われると、操作が行われた結線オブジェクトにおける出力データを基に時系列グラフを表示する機能を有する。尚、この所定の操作は、例えば結線オブジェクトをマウスでダブルクリックする操作である。
【0019】
プログラム表示受付部109は、ユーザから入力部11を介して画面に表示された装置オブジェクトに所定の操作が行われると、指示された装置オブジェクトを示す信号をプログラム表示部110に送出する機能を有する。尚、この所定の操作は、例えば装置オブジェクトをマウスでダブルクリックする操作である。
プログラム表示部110は、プログラム表示受付部109から装置オブジェクトを示す信号を受取り、記憶部12の装置オブジェクトテーブルから当該装置オブジェクトの制御プログラムを読み出し、画面上の装置オブジェクトの枠内に当該制御プログラムを表示する機能を有する。
<データ>
以下、記憶部12において記憶されているテーブルデータについて説明する。
【0020】
図2(a)は、インタフェーステーブル300の構成及び内容例を示す図である。
インタフェーステーブル300は、同図に示す様にインタフェースと、色レベル及びオブジェクト図形を対応付けたテーブルである。当該テーブルは、予めユーザによって登録されているものであり、モジュール表示部102が装置オブジェクトを表示する際にモジュール表示部102によって読み出される。
【0021】
ここで、インタフェース301は、制御プログラムにおける入出力変数を入力インタフェースと出力インタフェースとを区別し、一モジュールに同一インタフェースが複数ある場合に各インタフェースを区別して示している。本実施では、入力1、入力2のようにインタフェースに番号を付して表す。
また、色レベル302は、インタフェースの表示色を示すものであり、説明の便宜上、色の濃淡をレベルで表すこととする。一モジュールに同じインタフェースが複数ある場合、各インタフェースを色の濃淡により区別する。
【0022】
オブジェクト図形303は、画面に表示させるインタフェースを表す図形を示しており、本実施の形態では入力インタフェースを図形1(四角形)、出力インタフェースを図形2(円形)で表している。
次に、図2(b)は装置オブジェクトテーブル400の構成及び内容例を示す図である。
装置オブジェクトテーブル400は同図に示すようにモジュール名401とオブジェクト名402、個数(入力)403、個数(出力)404及びプログラム405を対応付けたテーブルである。
【0023】
また、当該テーブルはユーザが予め登録するものとし、個数(入力)403及び個数(出力)404は、ユーザが予め登録するプログラムをデータ解析することによりモジュール中の入出力変数の個数を求めておき当該テーブルに各個数を登録することとしてもよいし、設計支援装置200がデータ解析機能を有する場合は登録されたプログラム毎にデータ解析を行い入出力変数の個数を自動的に求め、当該テーブルに求めた個数を記憶することとしてもよい。
【0024】
ここで、モジュール名401は、ユーザによって格納された制御プログラムの識別子を示している。
オブジェクト名402は、格納された制御プログラムに対応するプログラム実行装置のオブジェクト名である。
また、個数(入力)403及び個数(出力)404は、格納された各制御プログラムにおける入出力変数の個数を示している。
【0025】
プログラム405は、設計対象となるプログラム実行装置に対応する制御プログラムを示している。
次に図2(c)は、座標テーブル500の構成及び内容例を示す図である。
座標テーブルは、同図に示すようにモジュール名501と、モジュール枠座標502、入出力503、及び入出力座標504を対応付けたテーブルである。
【0026】
ここで、モジュール名501は、ユーザが入力部11を介して画面上のライブラリから作業領域に配置したオブジェクト名に対応するモジュール名を示している。
また、モジュール枠座標502は、画面上の作業領域をXY平面とした場合に作業領域に配置されたオブジェクトの2点の座標を示している。装置オブジェクトは矩形で、大きさは均一に定められている。この2点の座標は、作業領域にドラッグアンドドロップされた座標を矩形の中心座標とした場合の対角座標(左下と右上)である。
【0027】
また、入出力503は、指定された装置オブジェクトの矩形内に表示させる入出力インタフェースを示しており、各入出力インタフェースを各モジュールの入出力別に番号を付して表すこととする。例えば、モジュール1の場合、装置オブジェクトテーブルの個数(出力)404は2個のため、入出力503は出力1、出力2となる。
入出力座標504は、装置オブジェクトの矩形内に表示させる入出力インタフェースの座標であり、入出力インタフェースに対応する装置オブジェクトの座標における相対座標を示している。
【0028】
次に、図2 (d)は接続テーブル600の構成と内容例を示す図である。
接続テーブル600は、同図に示すように始点モジュール601と、出力インタフェース602、終点モジュール603、及び入力インタフェース604とを対応付けたテーブルであり、ユーザによって指定されたモジュールの接続関係を定義したものである。
ここで、始点モジュール601は、画面に表示された結線対象となる装置オブジェクトのうち、結線の始点側となるインタフェースの座標を含む装置オブジェクトのモジュール名を示している。
【0029】
出力インタフェース602は、ユーザによって指定された結線の始点となる出力インタフェースであり、マウスでクリックされた座標を含むインタフェースを示している。
終点モジュール603は、前述した始点モジュール601と同様、ユーザが指定した結線の終点側となるインタフェースの座標を含む装置オブジェクトのモジュール名を示している。
入力インタフェース604は、出力インタフェース602と同様、ユーザによってクリックされた結線の終点となる座標を含むインタフェースを示している。
<動作>
次に、上述した構成を備える設計支援装置200の動作について説明する。
【0030】
設計支援装置200は、ユーザから入力部11を介して設計対象となる装置オブジェクトを表示する指示を受付けた後、当該オブジェクトの入出力インタフェースの接続指示を受付け、当該指示に従ってモジュールの各インタフェースの接続関係を定義づけし、装置オブジェクトの各インタフェースを結線して表示する処理と、ユーザからの指示により、定義づけに従って制御プログラムをシミュレーション実行する処理と、定義づけに従って生成したモジュールを記憶する処理と、結線幅変更モードに切替える処理と、出力データをグラフ表示する処理と、装置オブジェクトに対応するユーザから設計対象となるプログラムを表示する処理を行う。
【0031】
以下、設計支援装置200の動作を示す図3及び図4のフローチャートに即して各動作について説明する。
(結線・定義処理)
選択受付部101は、入力部11を介してユーザから画面上のライブラリに表示された複数のオブジェクト名を同画面の作業領域内にドラッグアンドドロップする操作を受付けると、ドラッグアンドドロップされた作業領域上の座標を算出し、当該座標と当該装置オブジェクトに対応するモジュール名をモジュール表示部102へ送出する(図3ステップS01)。
【0032】
ステップS01に続いて、モジュール表示部102は、装置オブジェクトテーブル400から受取ったモジュールの入出力変数の個数を読み出し、オブジェクト情報を基に受取った座標を中心座標とする装置オブジェクトの枠座標を算出し、各入出力インタフェースの位置座標を算出し、インタフェースの位置座標を座標テーブル500に記録する。また、インタフェーステーブル300に基づいて入出力インタフェースの色を定めて装置オブジェクトと入出力インタフェースを作業領域上の算出した座標に描画する(図3ステップS02)。
【0033】
次に、接続受付部103は、ユーザから入力部11を介して作業領域に表示された装置オブジェクトの入力インタフェースと出力インタフェースを接続する指示を受付けると、指示された座標を算出し、当該座標に始点と終点の情報を付加して結線部104及び生成部105に送出する(図3ステップS03)。
ステップS03に続いて、結線部104は、受取った座標と座標テーブル500に基づいて結線の始点モジュールと出力インタフェースの座標、終点モジュールと入力インタフェースの座標を求め、接続テーブル600に記録する。また、結線部104は、接続テーブル600の入出力インタフェース間の結線オブジェクトを表示する指示をモジュール表示部102に送出し、モジュール表示部102は接続テーブル600と座標テーブル500を読み出し、結線する入出力インタフェースを示す座標の間を標準幅の結線オブジェクトで描画する(図3ステップS04)。
【0034】
(シミュレーション実行)
次に、ステップS05において、シミュレーション部106が入力部11を介してユーザからプログラム実行を指示するボタン押下を受付けたと判断した場合(ステップS05:Y)、シミュレーション部106は、接続テーブル600と装置オブジェクトテーブル400を読み出し、接続テーブル600における始点モジュールの出力インタフェースのデータを終点モジュールの入力インタフェースのデータに代入するように始点モジュールと終点モジュールの制御プログラムを結合させて実行する(図3ステップS06)。
【0035】
(結線幅変更処理)
続いて、結線幅変更部107が、制御プログラム実行中にユーザから入力部11を介してディスプレイ13の作業領域に表示された結線オブジェクトがクリックされたと判断した場合(図4ステップS07:Y)、結線幅変更部107は、結線オブジェクトにより結線された出力インタフェースのデータが出力される毎に、出力データが閾値を超えているかどうか判断し、閾値を超えている場合に標準幅より太い幅の結線オブジェクトを表示する(図4ステップS08)。
【0036】
(グラフ表示処理)
続いて制御プログラム実行中に、グラフ表示部108が、入力部11を介して作業領域に表示された結線オブジェクトがユーザによってダブルクリックされたと判断した場合(図4ステップS09:Y)、グラフ表示部108は、ダブルクリックされた結線オブジェクトの出力インタフェースのデータに基づいて、横軸に時間、縦軸にデータ値とするグラフを生成して表示する(図4ステップS10)。
【0037】
次に、ステップS11において、結線幅変更部107及びグラフ表示部108が入力部11を介してユーザから終了ボタンの押下を受付けた場合(図4ステップS11:Y)、結線幅変更部107は結線幅を変更する処理を終了し、グラフ表示部108はグラフの表示を終了し(図4ステップS12)、ステップS11において終了ボタンの押下を受付けなかった場合(ステップS11:N)、ステップS07に戻る。
【0038】
(プログラム表示処理)
図3のステップS05に戻り、シミュレーション部106が、実行を指示するボタン押下を受付けず(ステップS05:N)、プログラム表示受付部109が、入力部11を介して作業領域に表示された装置オブジェクトがユーザによってダブルクリックされたと判断した場合(図3ステップS13:Y)、プログラム表示部110へダブルクリックされた装置オブジェクトを示す信号を送出する。プログラム表示部110は、装置オブジェクトテーブル400から受取った装置オブジェクトのモジュールを読み出し、当該装置オブジェクトの枠内に当該モジュールのプログラムを表示し、当該装置オブジェクトの入出力インタフェースと当該インタフェースに対応する当該プログラム中の入出力変数とを結ぶ矢印を表示し、ステップS05に戻る (図3ステップS16)。
【0039】
(モジュール登録処理)
次に、生成部105がユーザから入力部11を介して登録ボタン押下を受付けた場合(図3ステップS13:N、ステップS14:Y)、生成部105は、装置オブジェクトテーブル400及び接続テーブル600を読み出し、接続テーブル600の始点モジュールの出力データを接続する終点モジュールの入力変数に代入するように各モジュールの制御プログラムを結合して制御プログラムを生成し、生成した制御プログラムに対応するモジュール名とオブジェクト名をユーザから入力部11を介して受付け、生成した制御プログラムと当該モジュール名とオブジェクト名を対応付けて記憶部12の装置オブジェクトテーブル400に記録し、ステップS05に戻る(図3ステップS15)。
【0040】
また、図3のステップS14において、生成部105が、ユーザによって登録ボタンの押下がなされなかったと判断した場合(ステップS14:N)、ステップS05に戻る。
<動作例>
次に、上述した図3及び図4の動作フローに従い図5〜7の例を用いて動作の説明を行う。
まず、設計支援装置200は、ディスプレイ13の画面上に図5(a)のライブラリ50、作業領域70、Startボタン61、Stopボタン62及び登録ボタン63を表示し、ライブラリ50にはユーザによって登録された装置オブジェクトテーブル400のオブジェクト名の一覧を表示する。
【0041】
選択受付部101は、ユーザからマウスを用いてライブラリ50のオブジェクト名“装置1”、“装置2”及び“装置3”を作業領域70にドラッグアンドドロップする操作を受付けると、“装置1”、“装置2”及び“装置3”の中心座標を読み取り、当該座標と装置オブジェクトテーブル400(図2(b))からオブジェクト名に対応するモジュールを示す信号をモジュール表示部102に送出する(図3ステップS01)。
【0042】
次に、モジュール表示部102は、受取った座標を中心座標として“装置1”、“装置2”及び“装置3”のオブジェクトの枠座標を算出し、装置オブジェクトテーブル400の個数(入力)403、個数(出力)404の数に応じて装置オブジェクトに対する各インタフェースの入出力座標を定めて図2(c)に示す座標テーブル500のモジュール枠座標502及び入出力座標504にそれぞれ記録する。また、図2(a)に示すインタフェーステーブル300の各インタフェースに対応する色及び図形を読み出し、装置オブジェクト内にインタフェースの図形を表示する(図3ステップS02)。
【0043】
例えば、 “装置2”のオブジェクト73の場合、装置オブジェクトテーブル400において、装置2のオブジェクト名に対応するモジュールはモジュール2であり、入力変数の個数が3個であり、各入力変数の入力インタフェースを入力1、入力2、入力3と定める。インタフェーステーブル300より全入力インタフェースを図形1(四角形)で装置オブジェクト73内に表し、各入力インタフェースの色を入力1が青1(薄青)、入力2が青2(青)、入力3が青3(濃青)で表示する。出力変数も同様にしてモジュール2の出力1を図形2(円形)、赤1(薄赤)で装置オブジェクト73内に表示する。
【0044】
次に、接続受付部103が、ユーザから図5(a)の装置1のオブジェクト71の出力1と装置2のオブジェクト73の入力1を順にクリックする操作を受付けると、クリックされた座標を算出し、当該座標に始点、終点の情報を付加して結線部104及び生成部105へ当該座標を示す信号を送出する(図3ステップS03)。
結線部104は、座標テーブル500(図2(c))を読み出し、受取った座標に対応する始点モジュールと出力インタフェース、終点モジュールと入力インタフェースを算出し、各インタフェース間の結線オブジェクトを表示する。また、接続受付部103から受取った座標と座標テーブル500に基づいてモジュール1の出力1とモジュール2の入力1を接続テーブル600(図2(d))に記録し、他の座標についても同様にモジュールとインタフェースを対応づけて記録する(図3ステップS04)。この例の場合、図5(b)において、装置オブジェクト71に対応するモジュール1の出力1と装置オブジェクト73に対応するモジュール2の入力1が結線部104によって結線され、結線オブジェクト74が表示される。他のインタフェースについても同様に結線され、結線オブジェクト75、76が表示される。
【0045】
次に、例えば、図5(b)に示す装置1のオブジェクト71、装置3のオブジェクト72及び装置2のオブジェクト73に各々対応するプログラムが図7(b)のオブジェクトを示す枠710、720、730内に記述された内容である場合において、ユーザがプログラム実行を指示するStartボタン61(図5(b))を押下したときの動作(図3ステップS05:Y)について説明する。
まず、図7(b)において各モジュールのインタフェースと当該モジュール中の入出力変数との対応について説明する。
【0046】
図7 (b)において、装置1の枠710内のOut1、Out2とモジュール1の出力1、出力2が順に対応し、装置3の枠720内のOut1とモジュール3の出力1が対応し、装置2の枠730内のIn1、In2、In3とモジュール2の入力1、入力2、入力3が順に対応している。
シミュレーション部106は、接続テーブル600(図2(d))と装置オブジェクトテーブル400(図2(b))から各装置オブジェクトに対応するモジュール1、モジュール2、モジュール3のプログラムを読み出し、モジュール1のOut1、Out2及びモジュール3のOut1をモジュール2のIn1、In2、In3に各々代入する命令をモジュール1及びモジュール3に挿入し、各モジュールのプログラムを実行する(図3ステップS06)。
【0047】
次に、ユーザが図5(b)の結線オブジェクト74、75、76のいずれかをクリックした場合において(図4ステップS07:Y)、結線幅変更部107は、装置オブジェクト71の出力1、出力2、及び装置オブジェクト72の出力1のデータが閾値を超えているとき、標準幅の結線オブジェクトに代えて閾値を超えた場合の結線オブジェクトを表示する(図7(a))(図4ステップS08)。尚、図7(a)の結線オブジェクト471は、閾値を超えた場合の結線オブジェクトを表しており、結線オブジェクト472は閾値範囲内を示している。
【0048】
また、プログラム実行中にユーザが図5(b)の結線オブジェクト76をダブルクリックした場合(図4ステップS09:Y)、グラフ表示部108は、プログラム実行中に当該オブジェクト72の出力1において出力されたデータを基に図6(a)に示すように作業領域270にグラフ272を表示する(図4ステップS10)。尚、図6(a)のグラフ272は、装置オブジェクト72に対応するモジュール3の出力1のデータが0か1を出力する場合について図示し、グラフ272に対応する結線オブジェクト271を強調して表示する。
【0049】
また、ユーザがStopボタン62を押下した場合(図4ステップS11:Y)、シミュレーション部106はプログラムの実行を終了し、結線幅変更部107は結線オブジェクトを変更する処理を終了し、グラフ表示部108はグラフ表示を終了する(図4ステップS12)。
次に、図3のステップS05において、ユーザが図5(b)の装置2のオブジェクトをダブルクリックした場合(図3ステップS05:N、ステップS13:Y)、プログラム表示受付部109は装置2のオブジェクトを示す信号をプログラム表示部110へ送出する。
【0050】
プログラム表示部110は、装置オブジェクトテーブル400(図2(b))から装置2のオブジェクトに対応するモジュール2のプログラムを読み出し、図6(b)に示すように装置2のオブジェクト371枠内に当該プログラムを表示し、モジュール2の入出力インタフェースとオブジェクト371枠内の入出力変数を結ぶ矢印372を表示する(図3ステップS16)。
また、図5(b)に示す各装置オブジェクトに対応するプログラムが上述した図7(b)に示す内容である場合において、ユーザが登録ボタン63を押下したとき(図3ステップS13:N、ステップS14:Y)、生成部105は、装置オブジェクトテーブル400(図2(b))からモジュール1とモジュール2とモジュール3のプログラムと、接続テーブル600(図2(d))を読み出し、モジュール1のOut1、Out2及びモジュール3のOut1をモジュール2のIn1、In2、In3に各々代入するように各モジュールのプログラムを結合させて新たなプログラムを生成し、ユーザから新たなモジュール名とオブジェクト名の入力を受付け、当該プログラムを装置オブジェクトテーブル400に記録する(図3ステップS15)。
<補足>
以上、本発明に係る設計支援装置について実施形態に基づいて説明したが、以下のように変形することもでき、本発明は上述の実施形態で示した設計支援装置に限られないことは勿論である。
(1)本実施の形態では、結線オブジェクトは閾値を超えた場合に限り標準幅の結線オブジェクトより太い結線オブジェクトを表示しているが、出力データ値に応じて結線オブジェクトの幅を変更して表示させてもよい。
(2)本実施の形態では、出力データが0か1の2値データについてグラフ表示しているが、データが2値の場合に限らず出力データのビット数に応じてグラフを表示させてもよい。
(3)本実施の形態では、装置オブジェクトのインタフェースの色は同一インタフェースが複数ある場合に色レベルを分けて表示させているが、ユーザによって選択されたモジュールの入出力インタフェースのうち、出力インタフェースと入力インタフェースが同じビット数である入出力インタフェースについては同じ色で表示させてもよい。
(4)本実施の形態では、ユーザによって作業領域に装置オブジェクトがダブルクリックされた場合に装置オブジェクトの枠内にオブジェクトに対応するプログラムを表示させているが、ライブラリに表示されたオブジェクト名を指定することにより装置オブジェクトとそのプログラムを表示させることとしてもよい。
(5)本実施の形態では、プログラム表示部110は、ユーザによってダブルクリックされた装置オブジェクトの枠内に当該オブジェクトに対応するプログラムを表示し、当該プログラム中の入出力変数と当該オブジェクトの入出力インタフェースを直線で表示することにより対応づけているが、入出力変数と入出力インタフェースを対応づける表示態様はこれに限られず、例えば、対応する入出力変数とインタフェースを同一の色で表示させてもよい。
(6)設計支援装置における各処理(図3、図4参照)をプロセッサに実行させるためのプログラムを、記録媒体に記録し又は各種通信路等を介して、流通させ頒布することもできる。このような記録媒体には、ICカード、ハードディスク、光ディスク、フレキシブルディスク、ROM等がある。流通、頒布されたプログラムはプロセッサに読み出され得るメモリ等に格納されることにより利用に供され、そのプロセッサがそのプログラムを実行することにより実施形態で示した設計支援装置の機能が実現されるようになる。
(7)本実施の形態では、モジュールがプログラムを実行する場合について説明したが、論理回路などのプログラムを実行しないものであってもよい。
【産業上の利用可能性】
【0051】
本発明に係る設計支援装置は、複数のモジュールを結合させて新規に電子装置を開発する場合や、学生等に対する制御システムの教育に利用することができる。
【図面の簡単な説明】
【0052】
【図1】本発明の実施形態に係る設計支援装置200の構成図である。
【図2】本発明の実施形態に係る設計支援装置200のテーブルの構成及び内容例を示す図である。
【図3】本発明の実施形態に係る設計支援装置200の処理を示すフローチャートである。
【図4】本発明の実施形態に係る設計支援装置200の処理を示すフローチャートである。
【図5】本発明の実施形態に係る設計支援装置200のオブジェクト表示処理及び結線処理の動作例を説明するための図である。
【図6】本発明の実施形態に係る設計支援装置200のグラフ表示処理及びプログラム表示処理の動作例を説明するための図である。
【図7】本発明の実施形態に係る設計支援装置200の結線幅変更処理及びモジュール登録の動作例を説明するための図である。
【符号の説明】
【0053】
11 入力部
12 記憶部
13 ディスプレイ
100 制御部
101 選択受付部
102 モジュール表示部
103 接続受付部
104 結線部
105 生成部
106 シミュレーション部
107 結線幅変更部
108 グラフ表示部
109 プログラム表示受付部
110 プログラム表示部
200 設計支援装置

【特許請求の範囲】
【請求項1】
入力データに基づいて演算しデータ出力を行う複数のプログラム実行装置間の連関を定義する設計支援装置であって、
前記プログラム実行装置を入力と出力を区別して図形化してなる設計対象図形を表示する表示制御手段と、
一のプログラム実行装置の入力と他のプログラム実行装置の出力を接続する指定を受付ける接続受付手段と、
前記接続受付手段により受付けられた指定に従って前記設計対象図形の入力と出力を結線して表示する結線表示手段と、
前記接続受付手段により受付けられた指定に従って各プログラム実行装置の接続関係を定義する定義手段と
を備えることを特徴とする設計支援装置。
【請求項2】
前記プログラム実行装置は制御プログラムを実行し、
前記設計支援装置は、更に、
各制御プログラムを格納する格納手段と、
前記定義手段によって定義された接続関係に従って連関するように当該接続に係る各プログラム実行装置に対応する制御プログラムをシミュレーション実行するシミュレーション手段
を備えることを特徴とする請求項1記載の設計支援装置。
【請求項3】
前記シミュレーション手段は、更に、
前記結線に係る各プログラム実行装置の出力値に応じて結線の表示態様を変えて表示する結線表示変更部を備えること
を特徴とする請求項2記載の設計支援装置。
【請求項4】
前記プログラム実行装置は制御プログラムを実行し、前記設計対象図形は枠を有しており、
前記設計支援装置は、更に、
前記表示制御手段によって表示された設計対象図形に対応する制御プログラムを表示する指示を受付けるプログラム表示受付手段と、
前記指示された設計対象図形の枠内に当該設計対象図形に対応する制御プログラムを表示するプログラム表示手段と
を備えることを特徴とする請求項1記載の設計支援装置。
【請求項5】
プログラムを実行可能な装置に、前記プログラム実行装置間の連関の定義づけ処理を実行させるためのプログラムであって、
前記定義づけ処理は、
前記プログラム実行装置を入力と出力を区別して図形化してなる設計対象図形を表示するステップと、
一のプログラム実行装置の入力と他のプログラム実行装置の出力を接続する指定を受付けるステップと、
前記接続受付手段により受付けられた指定に従って前記設計対象図形の入力と出力を結線して表示するステップと、
前記接続受付手段により受付けられた指定に従って各プログラム実行装置の接続関係を定義するステップとを含むこと
を特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2006−107378(P2006−107378A)
【公開日】平成18年4月20日(2006.4.20)
【国際特許分類】
【出願番号】特願2004−296772(P2004−296772)
【出願日】平成16年10月8日(2004.10.8)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成16年度独立行政法人情報通信研究機構、研究テーマ「人間情報コミュニケーションの研究開発」に関する委託研究、産業活力再生特別措置法第30条の適用を受ける特許出願
【出願人】(393031586)株式会社国際電気通信基礎技術研究所 (905)
【Fターム(参考)】