(57)【要約】  結線元部品指定部１は、結線元部品を指定する。結線先端子指定部２は、結線先端子を指定する。結線元端子確定部３は、結線元部品の未結線端子から結線先端子に結線を行う際に、結線先端子指定部２による結線先端子の指定順と、結線元部品の未結線端子における予め定められた端子順に基づいて、結線対象となる結線元部品の未結線端子と結線先端子の対応付けを行う。結線作成部４は、結線元端子確定部３で対応付けられた未結線端子と結線先端子の間を結線する。
2009133590.tif 000002
【特許請求の範囲】
【請求項１】
結線元部品を指定する結線元部品指定部と、
結線先端子を指定する結線先端子指定部と、
前記結線元部品の未結線端子から前記結線先端子に結線を行う際に、前記結線先端子指定部による前記結線先端子の指定順と、前記結線元部品の未結線端子における予め定められた端子順に基づいて、結線対象となる前記結線元部品の未結線端子と前記結線先端子の対応付けを行う結線元端子確定部と、
前記結線元端子確定部で対応付けられた前記未結線端子と前記結線先端子の間を結線する結線作成部とを備えたことを特徴とする回路図編集装置。
【請求項２】
結線元部品が指定された場合、当該結線元部品の持つ未結線端子の端子順を、予め定められた端子順決定規則に従って決定する端子順決定部を備え、結線元端子確定部は、前記端子順決定部で端子順が決定された場合は、当該端子順で結線元部品の未結線端子と結線先端子の対応付けを行うことを特徴とする請求項１記載の回路図編集装置。
【請求項３】
結線元部品指定部による結線元部品の指定は、結線先端子指定部による結線先端子の指定前、指定後、および指定途中のいずれかで行われることを特徴とする請求項１記載の回路図編集装置。
【請求項４】
部品を配置すると共に、当該配置と同時に前記部品を結線元部品として指定する部品配置部を設けたことを特徴とする請求項１記載の回路図編集装置。
【請求項５】
結線元部品の未結線端子と結線先端子が、これら端子間の距離に基づく所定の条件を満たすか否かを判定する距離判定部と、
前記距離判定部で所定の条件を満たすと判定した場合、前記未結線端子と前記結線先端子との論理的な接続関係を示す間接ラベルを、それぞれの端子近傍に位置するよう付与する間接ラベル挿入部とを備えたことを特徴とする請求項１記載の回路図編集装置。
【請求項６】
結線対象として指定された結線先端子と結線元部品の未結線端子の信号種別を判定する信号種別判定部と、
前記信号種別判定部で、前記結線先端子と前記未結線端子の信号種別が不一致であると判定した場合、これら結線先端子と未結線端子間に、当該結線先端子の信号種別を前記未結線端子の信号種別に変換する信号種別変換部品を挿入する信号種別変換部品挿入部とを備えたことを特徴とする請求項１記載の回路図編集装置。
【請求項７】
回路図の編集を行うコンピュータを、結線元部品の未結線端子から、指定された結線先端子に結線を行う際に、前記結線先端子の指定順と、前記結線元部品の未結線端子における予め定められた端子順に基づいて、結線対象となる前記結線元部品の未結線端子と前記結線先端子の対応付けを行う結線元端子確定部と、前記結線元端子確定部で対応付けられた前記未結線端子と前記結線先端子の間を結線する結線作成部として機能させることを特徴とする回路図編集プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、回路図編集において、回路図上の端子間の結線を容易に実現するための回路図編集装置および回路図編集プログラムに関するものである。
【背景技術】
【０００２】
従来の回路図編集装置では、回路図上の端子間を結線する際に、結線元端子と結線先端子の二点を指定している。また、特許文献１や特許文献２のように端子間の結線作業の容易化のために、端子間の自動結線を行う事例も存在する。
【特許文献１】特開２００５−３３９１４３号公報
【特許文献２】特開平５−１９７７７２号公報
【０００３】
従来の回路図編集装置にあっては、結線を行う際、結線元端子と結線先端子の二点を指定しているので、多くの数の結線を作成する場合には入力作業が煩雑であった。
また、自動結線を行うもののうち、特許文献１については、距離の近さを判断基準として結線を行う端子の組合せを確定しているので、遠い位置にある端子間を結線することや、二本の結線を交差させることはできない等の制約があり、必ずしも所望の端子間の結線を行うことはできなかった。また、特許文献２については、座標の値や端子名を判断材料として結線を行う端子の組合せを確定しているので、座標の位置を判断材料とする場合は、ずれた座標位置にある端子間を結線することや、二本の結線を交差させることなどはできず、また端子名を判断材料とする場合は、端子の命名規則を設けそれに従わなければならないといった制約があり、この自動結線方法においても、所望の端子間の結線が得られない場合があった。【０００４】
この発明は、上記のような問題点を解決するためになされたものであり、回路図上の所望の組合せの端子間の結線を、少ない入力手数で作成することを目的としている。
【発明の開示】
【０００５】
この発明の回路図編集装置は、結線元部品の未結線端子から結線先端子に結線を行う際に、結線先端子の指定順と、結線元部品の未結線端子における予め定められた端子順に基づいて、結線対象となる結線元部品の未結線端子と結線先端子の対応付けを行うようにしたものである。
このことにより、回路図上の所望の組合せの端子間の結線を、少ない入力手数で作成することができる。
【図面の簡単な説明】
【０００６】
【図１】この発明の実施の形態１による回路図編集装置の構成図である。
【図２】この発明の実施の形態１による回路図編集装置のハードウェア構成図である。
【図３】この発明の実施の形態１による回路図編集装置の画面例の説明図である。
【図４】この発明の実施の形態１による回路図編集装置の部品情報保管領域の説明図である。
【図５】この発明の実施の形態１による回路図編集装置の端子情報保管領域の説明図である。
【図６】この発明の実施の形態１による回路図編集装置の結線元端子リストの説明図である。
【図７】この発明の実施の形態１による回路図編集装置の結線先端子リストの説明図である。
【図８】この発明の実施の形態１による回路図編集装置の動作を示すフローチャートである。
【図９】この発明の実施の形態１による回路図編集装置の編集エリアの結線前の画面事例を示す説明図である。
【図１０】この発明の実施の形態１による回路図編集装置の編集エリアの結線後の画面事例を示す説明図である。
【図１１】この発明の実施の形態１による回路図編集装置の編集エリアの画面事例（手順Ａ）を示す説明図である。
【図１２】この発明の実施の形態１による回路図編集装置の編集エリアの画面事例（手順Ｂ）を示す説明図である。
【図１３】この発明の実施の形態１による回路図編集装置の編集エリアの画面事例（手順Ｃ）を示す説明図である。
【図１４】この発明の実施の形態１による回路図編集装置の編集エリアの画面事例（結線の交差）を示す説明図である。
【図１５】この発明の実施の形態１による回路図編集装置の編集エリアの画面事例（空き端子の指定）を示す説明図である。
【図１６】この発明の実施の形態１による回路図編集装置の編集エリアの画面事例（結線元部品の連続指定）を示す説明図である。
【図１７】この発明の実施の形態１による回路図編集装置の編集エリアの画面事例（迂回経路）を示す説明図である。
【図１８】この発明の実施の形態１による回路図編集装置の編集エリアの画面事例（斜め線での結線）を示す説明図である。
【図１９】この発明の実施の形態２による回路図編集装置の構成図である。
【図２０】この発明の実施の形態２による回路図編集装置の動作を示すフローチャートである。
【図２１】この発明の実施の形態２による回路図編集装置の編集エリアの画面事例を示す説明図である。
【図２２】この発明の実施の形態３による回路図編集装置の構成図である。
【図２３】この発明の実施の形態３による回路図編集装置の動作を示すフローチャートである。
【図２４】この発明の実施の形態３による回路図編集装置の編集エリアの画面事例を示す説明図である。
【図２５】この発明の実施の形態４による回路図編集装置の動作を示すフローチャートである。
【図２６】この発明の実施の形態４による回路図編集装置の編集エリアの画面事例を示す説明図である。
【図２７】この発明の実施の形態５による回路図編集装置の構成図である。
【図２８】この発明の実施の形態５による回路図編集装置の動作を示すフローチャートである。
【図２９】この発明の実施の形態５による回路図編集装置の編集エリアの画面事例（編集開始前）を示す説明図である。
【図３０】この発明の実施の形態５による回路図編集装置の編集エリアの画面事例（手順Ｅ）を示す説明図である。
【図３１】この発明の実施の形態５による回路図編集装置の編集エリアの画面事例（手順Ｆ）を示す説明図である。
【図３２】この発明の実施の形態６による回路図編集装置の構成図である。
【図３３】この発明の実施の形態６による回路図編集装置の動作を示すフローチャートである。
【図３４】この発明の実施の形態６による回路図編集装置の編集エリアの画面事例を示す説明図である。
【図３５】この発明の実施の形態７による回路図編集装置の構成図である。
【図３６】この発明の実施の形態７による回路図編集装置の動作を示すフローチャートである。
【図３７】この発明の実施の形態７による回路図編集装置の編集エリアの画面事例を示す説明図である。
【発明を実施するための最良の形態】
【０００７】
以下、この発明をより詳細に説明するために、この発明を実施するための最良の形態について、添付の図面に従って説明する。
実施の形態１．
図１は、この発明の実施の形態１による回路図編集装置の構成図である。
図１に示す回路図編集装置は、結線元部品を指定する結線元部品指定部１、結線先端子を指定する結線先端子指定部２、結線元部品指定部１が指定した結線元部品情報と、結線先端子指定部２が端子を指定したことを示すクリック情報を受け、結線元部品の持つ未結線端子の予め定められている端子順と結線先端子の指定順とを対応付け、結線元端子を確定する結線元端子確定部３、結線先端子指定部２が指定した結線先端子情報と、結線元端子確定部３からの結線元端子情報を用いて、両端子間の結線情報を作成する結線作成部４、結線作成部４から結線情報を受け、結線を表示する表示部５を備えている。【０００８】
図２は、本発明の実施の形態１による回路図編集装置を実現するハードウェアの構成を示すブロック図である。
回路図編集装置は、ＰＣ（パーソナルコンピュータ）で実現され、制御部１０１とディスプレイ１０２とキーボード１０３とポインティングデバイス１０４からなる。制御部１０１は、ＣＰＵ１０５とメモリ１０６とハードディスク１０７を備えている。制御部１０１は、キーボード１０３及びポインティングデバイス１０４の入力に基づいて各種の処理を行い、処理結果をディスプレイ１０２に出力するものである。ディスプレイ１０２は、回路図を画面表示するための表示装置である。キーボード１０３やポインティングデバイス１０４は、種々の入力を行うための入力装置である。ＣＰＵ１０５は、回路図編集装置としての演算処理を行う演算処理装置である。メモリ１０６は各種のデータやプログラムを格納すると共に、ＣＰＵ１０５による演算処理の作業領域を構成する記憶部である。ハードディスク１０７は、種々のデータやプログラムを格納するための記憶装置である。尚、表示装置はディスプレイ１０２に、入力装置はキーボード１０３やポインティングデバイス１０４に、記憶装置はメモリ１０６やハードディスク１０７に限定されるものではない。【０００９】
また、図１における各機能部と図２におけるハードウェア構成との対応関係は次の通りである。即ち、結線元部品指定部１〜結線作成部４は、それぞれの機能に対応したプログラムがハードディスク１０７内に格納され、これらのプログラムをＣＰＵ１０５が読み出し、メモリ１０６を用いて実行することにより実現される。また、結線元部品指定部１および結線先端子指定部２は、ディスプレイ１０２への表示機能とキーボード１０３やポインティングデバイス１０４からの入力を受け付ける機能を有している。更に、表示部５は、ディスプレイ１０２とその表示機能を含んで構成されている。あるいは、結線元部品指定部１〜結線作成部４を専用のハードウェアで構成してもよい。【００１０】
本実施の形態における回路図編集装置が、ディスプレイ１０２を用いて提供する回路図編集プログラムの実行画面例を図３に示す。ここでは、回路図編集プログラムの一つであるＰＬＣ（プログラマブルロジックコントローラ）上で実行可能なプログラム作成時にファンクションブロック図を用いる回路図編集プログラムに関して説明を行う。回路図編集プログラムの実行画面は、メインメニュー５１、ファンクションブロックやファンクションなどの部品を配置するための部品ボタン５２、回路図を記述する編集エリア５３、編集モードを切り替えるモード変更ボタン５４を持つ。本回路図編集プログラムは、従来通りの手法で結線元端子と結線先端子を指定し、両端子間の結線を作成する通常編集モードと、本発明の特長を生かして結線元端子を指定することなく結線を作成することができる連続結線編集モードとの二つの編集モードを持つ。これらのモードは、モード変更ボタン５４にある連続結線ボタンや標準ボタンの押下やメインメニュー５１内の該当するメニュー項目の選択により自由に切り替えることができる。【００１１】
●（内部処理）
本実施の形態の回路図編集装置の内部においては、編集エリア５３に配置された部品に対して、配置順に部品ＩＤを割り当てて管理している。各部品が持つ端子には、左上から左下、次に右上から右下の順に端子ＩＤを割り当てて管理している。これにより、部品ＩＤと端子ＩＤの組合せで、端子を一意に指定することができる。本実施の形態では、部品ＩＤと端子ＩＤを組み合わせたものを端子情報と呼ぶ。【００１２】
本実施の形態の回路図編集装置では、メモリ１０６上に図４に示す部品情報保管領域と、図５に示すような端子情報保管領域の二種の回路図情報を保管するための領域を備えており、これらの情報を用いて編集エリア５３に回路図を表示している。部品情報保管領域は、部品ＩＤと部品種別と座標情報（Ｘ座標、Ｙ座標）からなる。端子情報保管領域は、端子情報と座標情報と入出力種別と結線端子情報からなる。入出力種別とは、その端子が入力属性か出力属性かを示すものである。結線端子情報とは、その端子の結線相手の端子を示すものであり、結線されている場合は結線相手の端子情報が保管され、結線されていない場合は部品ＩＤと端子ＩＤはともに０となる。編集エリア５３において、部品配置や端子間結線等の編集が行われた場合は、部品情報保管領域と端子情報保管領域の情報を更新する。【００１３】
本実施の形態の回路図編集装置を用いた結線作成処理の実行時には、メモリ１０６上に用意された結線元端子リスト（図６参照）、結線先端子リスト（図７参照）、結線先端子カウンタ（図示省略）の三つのデータ保存領域を、結線元部品指定部１〜表示部５が共有し利用しながら処理を進める。それぞれのデータ保存領域の説明を以下に記す。【００１４】
・結線元端子リスト
結線元部品指定部１によって指定された部品の持つ未結線状態である端子の端子情報を、端子ＩＤ順に保持する。本実施の形態における単一の部品が持ち得る端子の最大数をＭＡＸ＿ＮＵＭとすると、本リストは、１番目からＭＡＸ＿ＮＵＭ番目までのＭＡＸ＿ＮＵＭ個の領域を持つ。また本リストの部品ＩＤは、全てが結線元部品の部品ＩＤとなり同一な値となる。【００１５】
・結線先端子リスト
結線先端子指定部２によって指定された端子の端子情報を、指定順に保持する。本リストは、結線元端子リストと同様に、１番目からＭＡＸ＿ＮＵＭ番目までのＭＡＸ＿ＮＵＭ個の領域を持つ。【００１６】
・結線先端子カウンタ
０以上の整数値を保持する領域である。結線先端子指定部２によって指定された端子の数を保持する。この値は、結線先端子リストに入っている端子情報の数と同じ値となる。【００１７】
次に、本実施の形態による回路図編集装置の結線作成処理を、図８に示すフローチャートを用いて説明する。以降の説明では、結線先端子カウンタのその時点での値をｎとして説明を行う。
（ステップＳＴ１）連続結線編集モード開始イベント待ち
先ず、通常編集モードから連続結線編集モードへ変更するための連続結線編集モード開始イベントの入力を待つ。
（ステップＳＴ２）データ初期化
ステップＳＴ１において連続結線編集モード開始イベントを受けた場合、結線先端子指定部２と結線元端子確定部３は、データ保存領域の初期化処理を行う。初期化処理として、結線元端子リストと結線先端子リストを空にし、結線先端子カウンタの値を０とする。
（ステップＳＴ３）入力イベント待ち
入力されるイベントを待つ。ここで受ける可能性のあるイベントは、結線元部品指定イベント、結線先端子指定イベント、連続結線編集モード終了イベントの三種類である。
（ステップＳＴ４）入力イベント判定
ステップＳＴ３においてイベントが入力されたら、イベントの内容を判定する。
イベントが連続結線編集モード終了イベントであった場合、連続結線編集モードを終了し、通常編集モードに戻る。イベントが、結線元部品指定イベントであった場合、ステップＳＴ５に進む。イベントが、結線先端子指定イベントであった場合、ステップＳＴ９に進む。【００１８】
（ステップＳＴ５）結線元端子リスト判定
ステップＳＴ４での判定の結果、イベントが結線元部品指定イベントであった場合、結線元端子確定部３が、結線元端子リストが空かどうかを判定する。結線元端子リストが空でない場合、ステップＳＴ６に処理が進む。結線元端子リストが空である場合、ステップＳＴ７に処理が進む。
（ステップＳＴ６）データ初期化
ステップＳＴ５での判定の結果、結線元端子リストが空でない場合、つまり結線元部品が指定済みの状態で新たな結線元部品が指定された場合は、データ保存領域の初期化処理を行う。初期化処理の内容はステップＳＴ２と同様である。これにより、直前の結線処理対象であった結線元部品に関する情報が破棄され、今回指定された結線元部品が新たな結線処理対象となり、ステップＳＴ７に処理が進む。
（ステップＳＴ７）結線元端子情報保管
結線元端子確定部３が、結線元端子リストに、指定された結線元部品が持つ未結線端子の端子情報を端子ＩＤの若い順に保管する。
（ステップＳＴ８）結線先端子カウンタ値判定
結線元端子確定部３が、結線先端子カウンタの値を判定する。結線先端子カウンタの値が０であれば、結線先端子が未指定なので、ステップＳＴ３に戻って次のイベントを待つ。結線先端子カウンタの値が０でなければ、ステップＳＴ１４に進む。【００１９】
（ステップＳＴ９）未結線端子残存判定
ステップＳＴ４での判定の結果、イベントが結線先端子指定イベントであった場合、結線先端子指定部２が、結線元端子リストに未結線端子が残っているかを判定する。具体的には、結線元端子リストのデータの有無を調べ、データが存在する場合は、結線元端子リストのデータ数と結線先端子カウンタの値ｎを比較する。結線元端子リストにデータが存在しない場合は、結線元部品が未指定の状態であるため、未結線端子は有ると判定しステップＳＴ１１に進む。結線元端子リストにデータが存在し、ｎが結線元端子リストのデータ数未満であれば、未結線端子は有ると判定しステップＳＴ１１に進む。また、結線元端子リストにデータが存在し、ｎが結線元端子リストのデータ数以上であれば、未結線端子は無いと判定し、ステップＳＴ１０に進む。【００２０】
（ステップＳＴ１０）データ初期化
ステップＳＴ９での判定の結果、未結線端子が無い場合、つまり指定された結線元部品の全ての端子が結線済みの状態で新たな結線先端子が指定された場合は、データ保存領域の初期化処理を行う。初期化処理の内容はステップＳＴ２と同様である。これにより、直前の結線処理対象であった結線元部品に関する情報が破棄され、ステップＳＴ１１に処理が進む。
（ステップＳＴ１１）結線先端子カウンタ加算
結線先端子指定部２が、結線先端子カウンタに１を加える。
（ステップＳＴ１２）結線先端子情報保管
結線先端子指定部２が、結線先端子リストのｎ番目に、指定された結線先端子の端子情報を保管する。
（ステップＳＴ１３）結線元端子判定
結線先端子指定部２が端子を指定したことを示すクリック情報を、結線元端子確定部３が受け、指定された結線先端子に対応する結線元端子が存在するかを判定する。具体的には、結線元端子リストのｎ番目に端子情報が存在するかを判定する。結線元端子リストのｎ番目に端子情報が無い場合、ステップＳＴ３に戻り次のイベントを待つ。結線元端子リストのｎ番目に端子情報が有る場合、ステップＳＴ１４に処理が進む。【００２１】
（ステップＳＴ１４）結線作成指示
ステップＳＴ８での判定の結果、結線先端子カウンタが１以上であれば、結線元端子確定部３が、結線先端子カウンタの値ｎと、結線元部品の持つ未結線端子の数を比較し、小さい方の値（この値をｍと呼ぶ）の数だけ結線の作成を指示する。つまり、結線元端子確定部３が、結線元端子リストの１番目からｍ番目までのｍ本の結線の作成を結線作成部４に依頼する。また、ステップＳＴ１３での判定の結果、結線元端子リストのｎ番目に端子情報があった場合、結線元端子確定部３が、結線元端子リストのｎ番目の結線の作成を結線作成部４に依頼する。【００２２】
（ステップＳＴ１５）結線作成
本ステップは、結線作成部４における結線作成処理である。
結線作成部４は、結線元端子確定部３から指定された結線元端子番号から、結線元端子とそれに対応する結線先端子の端子情報を取得する。指定された番号をｐとすると、結線元端子リストのｐ番目の端子情報と結線先端子リストのｐ番目の端子情報を取得する。端子情報の取得後、両端子間を接続する結線情報を作成する。どちらかの端子情報の取得ができなかった場合は、結線情報の作成を行わない。複数本の結線情報の作成を行う場合は、上記処理を本数分だけ繰り返す。
ここで、結線情報を作成するとは、具体的には、始点座標、終点座標、折れ曲がりの角の座標、線色、線幅等の属性を持つ結線オブジェクトを作成することを指す。
また、結線作成部４は、結線情報を作成する際に、端子情報保管領域の結線元端子と結線先端子の結線端子情報を更新する。【００２３】
（ステップＳＴ１６）表示
本ステップは、表示部５における表示処理である。結線作成部４から受けた結線情報を表示部５において表示する。複数の結線情報を受けた場合は、その数だけ表示する。表示後はステップＳＴ３に戻り、次のイベントを待つ。
以上の内部処理により、本実施の形態における結線作成処理は実現される。【００２４】
●（動作事例）
以下、本実施の形態の回路図編集装置を用いた回路図作成の具体的な動作を説明する。
図９に示すようなＡＢＳ、ＳＱＲＴ、ＳＵＢの三つの部品が既に編集エリア５３に配置されている状況で、これらの部品を図１０に示すように結線する手順について説明する。
ここで、回路部品ＡＢＳは左側の入力端子に入力された値の絶対値を、右側の出力端子に出力するファンクションである。回路部品ＳＱＲＴは左側の入力端子に入力された値の平方根を、右側の出力端子に出力するファンクションである。回路部品ＳＵＢは、左上の第一入力端子に入力された値から、左下の第二入力端子に入力された値を引いた値を、右側の出力端子に出力するファンクションである。
以降では、ＡＢＳの出力端子とＳＵＢの第一入力端子、及びＳＱＲＴの出力端子とＳＵＢの第二入力端子を結線する手順について説明する。【００２５】
先ず、図３に示すモード変更ボタン５４を用いて、通常編集モードから連続結線編集モードに変更する。モード変更ボタン５４を押す際、内部では、ステップＳＴ１，ＳＴ２，ＳＴ３と処理が進む。
以降の手順に関しては、結線元部品と結線先端子の指定順の違いにより三通りの手順が存在する。それぞれを手順Ａ、Ｂ、Ｃとし、編集エリア５３の状態を図１１、図１２、図１３に示す。各図は上部・中部・下部からなり、編集エリア５３の表示状態を時系列に上から下へ表現したものである。【００２６】
（手順Ａ）
ここでは、結線元部品を最初に指定し、その後、結線先端子を順に指定する方法について述べる。
先ず、結線元部品として、ポインティングデバイス１０４を用いてＳＵＢを指定する。
このとき、ＳＵＢが結線元部品として強調表示され、さらに結線対象となるＳＵＢの第一入力端子が強調表示される（図１１上部）。ＳＵＢを指定する際、内部では、ステップＳＴ４，ＳＴ５，ＳＴ７，ＳＴ８，ＳＴ３と処理が進む。尚、結線元部品の指定方法としては、結線元部品指定部１により、例えば、編集画面上に部品の一覧を示す部品パレットを表示させ、この部品パレットから利用者がポインティングデバイス１０４により部品を選択することで結線元部品を指定する。あるいは、部品メニューから指定する部品を選択したり、キーボード１０３により部品名を直接入力する等、どのような指定方法であってもよい。【００２７】
次に、最初の結線先端子として、ポインティングデバイス１０４を用いてＡＢＳの出力端子を指定する。これにより、ＳＵＢの第一入力端子（結線元端子）とＡＢＳの出力端子（結線先端子）が対応付けられ、結線が表示される。同時に、ＳＵＢの第一入力端子の強調表示が解除され、次の結線対象となるＳＵＢの第二入力端子が強調表示される（図１１中部）。ＡＢＳの出力端子を指定する際、内部では、ステップＳＴ４，ＳＴ９，ＳＴ１１，ＳＴ１２，ＳＴ１３，ＳＴ１４，ＳＴ１５，ＳＴ１６，ＳＴ３と処理が進む。【００２８】
二番目の結線先端子として、ポインティングデバイス１０４を用いてＳＱＲＴの出力端子を指定する。これにより、ＳＵＢの第二入力端子（結線元端子）とＳＱＲＴの出力端子（結線先端子）が対応付けられ、結線が表示される。同時に、ＳＵＢの第二入力端子の強調表示が解除され、次の結線対象となるＳＵＢの出力端子が強調表示される（図１１下部）。ＳＱＲＴの出力端子を指定する際、内部では、ステップＳＴ４，ＳＴ９，ＳＴ１１，ＳＴ１２，ＳＴ１３，ＳＴ１４，ＳＴ１５，ＳＴ１６，ＳＴ３と処理が進む。【００２９】
（手順Ｂ）
ここでは、先ず結線先端子を順に指定し、その後結線元部品を指定する方法について述べる。
先ず、最初の結線先端子として、ポインティングデバイス１０４を用いてＡＢＳの出力端子を指定する。このとき、指定した端子が強調表示され、端子の近傍に指定順を表す“１”という数字が表示される（図１２上部）。ＡＢＳの出力端子を指定する際、内部では、ステップＳＴ４，ＳＴ９，ＳＴ１１，ＳＴ１２，ＳＴ１３，ＳＴ３と処理が進む。【００３０】
次に、二番目の結線先端子として、ポインティングデバイス１０４を用いてＳＱＲＴの出力端子を指定する。このとき、指定した端子が強調表示され、端子の近傍に指定順を表す“２”という数字が表示される（図１２中部）。ＳＱＲＴの出力端子を指定する際、内部では、ステップＳＴ４，ＳＴ９，ＳＴ１１，ＳＴ１２，ＳＴ１３，ＳＴ３と処理が進む。
この状態で、結線元部品として、ポインティングデバイス１０４を用いてＳＵＢを指定する。
これにより、ＳＵＢの第一入力端子（結線元端子）とＡＢＳの出力端子（結線先端子）、及びＳＵＢの第二入力端子（結線元端子）とＳＱＲＴの出力端子（結線先端子）が対応付けられ、それぞれの結線が表示される。それと同時に、結線先端子の近傍に表示されていた指定順を表す数字が消え、結線先端子の強調表示が解除され、結線元部品であるＳＵＢと次の結線対象となるＳＵＢの出力端子が強調表示される（図１２下部）。ＳＵＢを指定する際、内部では、ステップＳＴ４，ＳＴ５，ＳＴ７，ＳＴ８，ＳＴ１４，ＳＴ１５，ＳＴ１６，ＳＴ３と処理が進む。【００３１】
（手順Ｃ）
ここでは、結線先端子を指定している途中に結線元部品を指定し、その後結線先部品の指定を続ける方法について述べる。
先ず、最初の結線先端子として、ポインティングデバイス１０４を用いてＡＢＳの出力端子を指定する。このとき、指定した端子が強調表示され、端子の近傍に指定順を表す“１”という数字が表示される（図１３上部）。ＡＢＳの出力端子を指定する際、内部では、ステップＳＴ４，ＳＴ９，ＳＴ１１，ＳＴ１２，ＳＴ１３，ＳＴ３と処理が進む。
この状態で、結線元部品として、ポインティングデバイス４を用いてＳＵＢを指定する。
これにより、ＳＵＢの第一入力端子（結線元端子）とＡＢＳの出力端子（結線先端子）が対応付けられ、結線が表示される。それと同時に、結線先端子の近傍に表示されていた指定順を表す数字が消え、結線先端子の強調表示が解除され、結線元部品であるＳＵＢと次の結線対象となるＳＵＢの第二入力端子が強調表示される（図１３中部）。ＳＵＢを指定する際、内部では、ステップＳＴ４，ＳＴ５，ＳＴ７，ＳＴ８，ＳＴ１４，ＳＴ１５，ＳＴ１６，ＳＴ３と処理が進む。【００３２】
二番目の結線先端子として、ポインティングデバイス１０４を用いてＳＱＲＴの出力端子を指定する。このとき、ＳＵＢの第二入力端子（結線元端子）とＳＱＲＴの出力端子（結線先端子）が対応付けられ、結線が表示される。それと同時に、ＳＵＢの第二入力端子の強調表示が解除され、次の結線対象となるＳＵＢの出力端子が強調表示される（図１３下部）。ＳＱＲＴの出力端子を指定する際、内部では、ステップＳＴ４，ＳＴ９，ＳＴ１１，ＳＴ１２，ＳＴ１３，ＳＴ１４，ＳＴ１５，ＳＴ１６，ＳＴ３と処理が進む。【００３３】
以上のように、図１０のような所望の二本の結線の作成は、手順Ａ、Ｂ、Ｃのどの方法によっても同じ入力手数で実現可能である。【００３４】
従来手法の場合、それぞれの結線の結線元端子と結線先端子を指定することで結線を作成していたので、二本の結線を作成する場合には、ポインティングデバイス等を用いて四回（二つの結線元端子と二つの結線先端子）の指定を行わねばならなかった。
それに対して、本実施の形態の回路図編集装置では、結線元部品を指定することで結線元端子の明示的な指定を不要としているため、三回（一つの結線元部品と二つの結線先端子）の指定で二本の結線の作成が実現でき、結線作成のための手数が減少している。今回は、結線元部品から二本の結線を作成する例を挙げたが、結線元部品を起点とする結線の数が多いほど、従来手法と比較した手数減少の効果は増す。【００３５】
＜結線の交差＞
また、本実施の形態の回路図編集装置を用いることで、距離に基づく自動結線処理では困難であった交差した結線も容易に作成できる。例えば、上記の三種類の説明においては、結線先端子の指定時には、ＡＢＳの出力端子の指定後にＳＱＲＴの出力端子を指定しているが、これらの端子の指定順を逆にすることで、図１４のような従来の自動結線手法では作成ができない交差した結線が容易に作成可能となる。尚、結線作成処理の具体的な動作は、上述した三種類の手順のいずれかと同様であるため、ここでの説明は省略する。【００３６】
＜空き端子の指定＞
本実施の形態の回路図編集装置においては、結線作成処理を行う際に、まだ結線先端子が存在していない場合などには、結線を行わない結線元端子を空き端子として保留することも可能である。例えば、上記手順Ａにおいて、ＳＵＢの第一入力端子を空き端子とし、ＳＵＢの第二入力端子のみを結線する場合の手順を説明する。編集エリア５３の状態を図１５に示す。【００３７】
先ず、結線元部品として、ポインティングデバイス１０４を用いてＳＵＢを指定する。
このとき、ＳＵＢが結線元部品として強調表示され、さらに結線対象となるＳＵＢの第一入力端子が強調表示される（図１５上部）。ＳＵＢを指定する際、内部では、ステップＳＴ４，ＳＴ５，ＳＴ７，ＳＴ８，ＳＴ３と処理が進む。
次に、ＳＵＢの第一入力端子を空き端子とするため、ポインティングデバイス１０４を用いてＳＵＢの第一入力端子を指定する。そうすると、ＳＵＢの第一入力端子は、どの端子とも結線が行われず、ＳＵＢの第一入力端子の強調表示が解除され、次の結線対象となるＳＵＢの第二入力端子が強調表示される（図１５中部）。つまり、結線先端子の指定時に結線元端子を指定することで、空き端子の指定を実現する。ＳＵＢの第一入力端子を指定する際、内部では、ステップＳＴ４，ＳＴ９，ＳＴ１１，ＳＴ１２，ＳＴ１３，ＳＴ１４，ＳＴ１５，ＳＴ１６，ＳＴ３と処理が進む。但し、ステップＳＴ１５においては、結線元端子と結線先端子が同一端子であるので、結線の作成は行わない。【００３８】
次に、手順Ａと同様の処理により、ＳＱＲＴとＳＵＢの第二入力端子間の結線を行う（図１５下部参照）。
これにより、結線元部品の全端子に対応する結線先端子が編集エリア５３上に存在しない場合には、結線先端子が存在しない結線元端子を空き端子として保留し、結線先端子が存在する結線元端子に対しては、本発明による結線作成処理を行うことが可能となる。【００３９】
尚、ここでは結線先端子の指定時にポインティングデバイス１０４を用いて結線元端子を指定することで空き端子を指定したが、空き端子の指定方法は、この操作に限定するものではない。例えば、ポインティングデバイス１０４を用いて編集エリア５３上の回路部品でも端子でも無い位置を指定したり、キーボード１０３のスペースキーやＴａｂキーなどのキーを押下したり、などといった操作で、空き端子の指定を行うようにしてもよい。【００４０】
＜結線元部品の連続指定＞
ここまで、単一の結線元部品を指定し、その部品の持つ未結線端子に対して結線を行う処理について述べたが、もちろん複数の結線元部品を連続指定し結線処理を行うことも可能である。ある部品（α）を結線元部品として指定した状態で結線処理を進め、その後、部品（β）を結線元部品として指定した場合には、結線元部品の指定が（α）から（β）に移り、以降で指定する結線先端子は部品（β）の未結線端子と端子順に対応付けられ、結線が作成される。【００４１】
例えば、手順Ａの最終状態から、結線元部品としてＡＢＳを指定すると図１６上部のようになり、ＡＢＳとＡＢＳの入力端子が強調表示される。ＡＢＳを指定する際、内部では、ステップＳＴ４，ＳＴ５，ＳＴ６，ＳＴ７，ＳＴ８，ＳＴ３と処理が進む。ステップＳＴ５において、結線元部品としてＳＵＢが指定されているので、ステップＳＴ６に進みデータ初期化処理を行い、ＡＢＳを新たな結線元部品として処理を進める。
次に、結線先端子としてＳＵＢの出力端子を指定すると、結線対象となっているＡＢＳの入力端子と結線先端子に指定したＳＵＢの出力端子が結線される（図１６下部）。
このように、ＳＵＢの結線処理を行った後に、連続結線編集モードを終了させることなく、ＡＢＳの結線処理を連続で行うことが可能である。【００４２】
結線元部品（β）の指定を（β）に対応する結線先端子の指定より先に行う場合は、上記の方法で結線作成処理を連続して行えるが、（β）に対応する結線先端子の指定を結線元部品（β）の指定より先に行う場合は、以下のような方法で連続して結線作成処理を行える。（α）の持つ全端子が結線済み状態になった場合には、以降の結線先端子の指定は、その後指定される結線元部品（β）に対応付けられるため、明示的な操作を行うことなく（β）に対する結線作成処理を行うことができる。（α）が未結線端子を持った状態で、次の結線元部品（β）に対応する結線先端子を指定する場合は、明示的に（α）に対する結線作成処理の終了操作を行うことで（β）に対する結線作成処理を行うことができる。例えば、ポインティングデバイスの左右のボタンを同時に押下する操作を、現状の結線元部品に対する結線作成処理の終了操作に割り当てても良い。【００４３】
＜入力または出力端子の限定＞
本実施の形態においては、結線元部品の端子の入出力属性に関係無く全ての端子を結線元端子として結線処理を行う方法について述べてきたが、結線元部品の端子の入出力属性を考慮し、入力端子のみ、または出力端子のみを結線元端子の対象とすることもできる。これは明示的に切り替える手段を用意しても良いし、回路図編集装置の機能として事前に決定されていても良い。例えば、結線元部品の入力端子のみを結線元端子の対象とする構成が考えられる。この場合の回路図編集装置の内部処理における相違点は、ステップＳＴ７において結線元端子情報を保管する際に、入力属性の端子のみを結線元端子リストに保管する点である。【００４４】
＜結線作成方法＞
本実施の形態においては、結線先端子と結線元端子の対応付けが確定した後、明示的な指示をすることなく端子間の結線が描画される。その際の結線の経路策定のポリシーには、様々なものが考えられるが、ここでは、垂直線と水平線の組合せで最短になる経路を算出し、その経路にしたがって描画を行う。経路を算出する方法としては、例えば特開昭６０−８９８２号公報に示される経路の自動探索方法などを用いることができる。
算出した経路上に、他の回路部品等の障害物が存在した場合は、図１７のように、障害物を迂回する経路を算出し直し、その迂回経路に従って結線の描画を行う。また、算出された経路上に、既に他の結線が存在し、複数の線が重なる場合は、既存の結線の位置からずらした経路を算出し直し、その経路に従って結線の描画を行っても良い。尚、算出された経路上に、他の結線や他の回路部品等が存在するか否かは、回路部品や端子のＸ，Ｙ座標に基づいて判定することができる。
本実施の形態においては、結線を垂直線と水平線の組合せで実現したが、図１８のように、斜め線を用いてもよい。
尚、ここでは経路算出の際、最短経路をとるポリシーを用いているが、それ以外にも、曲がり角の数を最小にするポリシー、結線の交差を最小にするポリシー等が考えられ、これらを組み合わせた経路算出手法でも良い。【００４５】
＜結線先部品の指定＞
本実施の形態においては、結線先端子を指定する際に、該当する端子を指定してきたが、結線先端子を持つ部品（結線先部品）を指定しても良い。結線先部品の持つ未結線端子がただ一つの場合は、その未結線端子を結線先端子として処理を進める。結線先部品の持つ未結線端子が複数存在した場合は、結線先部品の持つ未結線端子のうち最も端子番号の小さいものを結線先端子として処理を進める。【００４６】
以上のように、実施の形態１の回路図編集装置によれば、結線元部品を指定する結線元部品指定部と、結線先端子を指定する結線先端子指定部と、結線元部品の未結線端子から結線先端子に結線を行う際に、結線先端子指定部による結線先端子の指定順と、結線元部品の未結線端子における予め定められた端子順に基づいて、結線対象となる結線元部品の未結線端子と結線先端子の対応付けを行う結線元端子確定部と、結線元端子確定部で対応付けられた未結線端子と結線先端子の間を結線する結線作成部とを備えたので、結線元端子を明示的に指定することなく所望の端子間の結線を実現することができ、従って、回路図編集の手数を軽減することができる。【００４７】
また、実施の形態１の回路図編集装置によれば、結線元端子確定部は、結線元部品指定部による結線元部品の指定と、結線先端子指定部による結線先端子の指定の順序に応じて、結線元部品の未結線端子と結線先端子の対応付けを行うようにしたので、結線元部品の指定と結線先端子の指定を任意の順に行うことができ、このため、利用者の好みに応じた柔軟な操作手順で結線を作成することができる。例えば、本実施の形態における回路図編集装置は、実施の形態中に手順Ａ、手順Ｂ、手順Ｃとして記載したように、異なった操作手順による結線作成処理を、何らかの動作モードの変更等を行うことなく実現することができるので、利用者は所望の操作手順を用いて結線を作成することができる。【００４８】
また、実施の形態１の回路図編集プログラムによれば、結線元部品の未結線端子から、指定された結線先端子に結線を行う際に、結線先端子の指定順と、結線元部品の未結線端子における予め定められた端子順に基づいて、結線対象となる結線元部品の未結線端子と結線先端子の対応付けを行う結線元端子確定部と、結線元端子確定部で対応付けられた未結線端子と結線先端子の間を結線する結線作成部として機能させるようにしたので、回路図編集の手数を軽減することのできる回路図編集装置をコンピュータ上に実現させることができる。【００４９】
実施の形態２．
実施の形態２は、結線元部品の持つ未結線端子の端子順を、予め定められた端子順決定規則に従って動的に決定するようにしたものである。
図１９は、実施の形態２による回路図編集装置を示す構成図である。
本実施の形態による回路図編集装置の構成は、実施の形態１の構成に端子順決定部６を加えたものであり、それ以外は実施の形態１と同様の構成である。端子順決定部６は、結線元部品指定部１によって結線元部品が指定された場合、その結線元部品の持つ未結線端子の端子順を、予め定められた端子順決定規則に従って決定するよう構成されている。
また、本実施の形態による回路図編集装置を実現するハードウェアの構成は、図２に示した回路構成と同様であり、端子順決定部６については、その機能に対応したプログラムがハードディスク１０７に格納され、ＣＰＵ１０５によって実行されることで実現されている。【００５０】
以下、実施の形態２の動作について説明する。
実施の形態１においては、ある回路部品の持つ端子順は予め定められており、変更されることは無かった。
それに対し、本実施の形態における回路図編集装置では、端子順を予め定められた端子順決定規則に従って決定する端子順決定部６を備えているため、結線元部品指定時の状況（他の回路部品の配置状況等）に応じて、結線元部品の持つ未結線端子の端子順は動的に変更される。【００５１】
●（内部処理）
端子順決定部６は、内部に端子順決定規則を持つ。端子順決定規則は、条件部と優先指定部からなり、条件部に書かれている内容が成立した場合に、優先指定部に書かれている内容に従って、端子順を補正する。
本実施の形態における結線作成時の内部処理の流れは、図８におけるステップＳＴ７の結線元端子情報保管処理以外は、実施の形態１と同様の処理となる。本実施の形態におけるステップＳＴ７の処理の流れを図２０のフローチャートに示す。【００５２】
（ステップＳＴ２１）端子順決定規則判定
端子順決定部６は、端子順決定規則の条件部の内容が成立するかを判定する。不成立であれば、何も行わずステップＳＴ２３に進む。成立であれば、処理はステップＳＴ２２に進む。
（ステップＳＴ２２）
ステップＳＴ２１の判定結果が成立の場合は、端子順決定規則の優先指定部に書かれている内容に従って、結線元端子の端子ＩＤを補正する。
（ステップＳＴ２３）
結線元端子確定部３が、結線元端子リストに、指定された結線元部品が持つ未結線端子の端子情報を端子ＩＤの若い順に保管する。【００５３】
●（動作事例）
ここでは、端子順決定規則として以下のような内容のものが指定されている場合の動作について説明する。
条件部：直前に配置された回路部品の出力端子の型と同一の型の入力端子を結線元部品が持つ。
優先指定部：該当の端子を優先する。【００５４】
編集エリア５３（図３参照）に、図２１上部に示すようなＡＢＳとＳＱＲＴとＦＵＮＣの三つの部品が配置されている状況で、ＦＵＮＣを結線元部品として指定し、ＦＵＮＣの第二入力端子とＳＱＲＴの出力端子を結線する場合の動作について説明する。
ＦＵＮＣという部品は、左上の第一入力端子が整数型（ＩＮＴ型）であり、左下の第二入力端子が実数型（ＲＥＡＬ型）であり、右側の出力端子が整数型である。またここでは、直前に配置された部品はＳＱＲＴであるとする。【００５５】
結線元部品指定部１によって、ＦＵＮＣを結線元端子として指定した場合、端子順決定部６は、直前に配置された部品であるＳＱＲＴの出力端子は実数型であるので、結線元端子であるＦＵＮＣの入力端子の中で、実数型の端子があれば、その端子を他の端子より優先する。
ここでは、条件に合う端子として、ＦＵＮＣの第二入力端子があるので、この端子が最初に結線される結線元端子となる。図２１中部にあるように、ＦＵＮＣが結線元端子として強調表示され、最初の結線元端子として第二入力端子が強調表示される。
次に、結線先端子として、ＳＱＲＴを指定すると、図２１下部にあるように、ＳＱＲＴの出力端子とＦＵＮＣの第二入力端子が結線され、次の結線元端子として、ＦＵＮＣの第一入力端子が強調表示される。
実施の形態１の構成におけるＦＵＮＣの結線元端子の指定順は、第一入力端子、第二入力端子、出力端子の順となるが、本実施の形態の構成により、予め決められた端子順決定規則を適用することで、第二入力端子、第一入力端子、出力端子の順に変わることとなる。【００５６】
ここでは、直前に配置された回路部品の出力端子の型と同一の型の入力端子を結線元部品が持つ場合に優先するという端子順決定規則で事例を説明したが、端子順決定規則は、所望のものを設定可能である。例えば、編集エリア５３上に描画されている未結線の出力端子の型と同一の型の入力端子を結線元部品が持つ場合に優先する、などという端子順決定規則でもよい。【００５７】
以上のように、実施の形態２の回路図編集装置によれば、結線元部品が指定された場合、結線元部品の持つ未結線端子の端子順を、予め定められた端子順決定規則に従って決定する端子順決定部を備え、結線元端子確定部は、端子順決定部で端子順が決定された場合は、端子順で結線元部品の未結線端子と結線先端子の対応付けを行うようにしたので、結線対象とする結線元部品の端子順を、端子順決定規則に従って動的に変更することができ、このため、より柔軟に結線作業を進めることができる。【００５８】
実施の形態３．
実施の形態３は、結線上に値の分岐を行うためのジャンクションを挿入するようにしたものである。
図２２は、実施の形態３による回路図編集装置を示す構成図である。
本回路図編集装置は、実施の形態１の回路図編集装置に、ジャンクション挿入部８を有する未結線端子判定部７を付加したものである。未結線端子判定部７は、結線先端子指定部２で指定された結線先端子が未結線端子であるか否かを判定し、未結線端子でなかった場合は、ジャンクション挿入部８によってジャンクションを挿入する機能部である。また、ジャンクション挿入部８は、結線上に値の分岐を行うためのジャンクションを挿入する機能部である。これ以外の構成は、実施の形態１と同様であるため、対応する部分に同一符号を付してその説明を省略する。
また、本実施の形態のハードウェア構成は、実施の形態１と同様であり、未結線端子判定部７は、その機能に対応したプログラムがハードディスク１０７に格納され、ＣＰＵ１０５によって読み出されて実行されることで実現されている。【００５９】
以下、実施の形態３の動作について説明する。
本実施の形態では、実施の形態１において結線先端子として指定した端子が未結線端子で無い場合の処理について説明する。未結線端子で無い場合、結線上に値の分岐を行うジャンクションを自動的に挿入する。これにより、明示的にジャンクションを挿入する手間が軽減される。【００６０】
●（内部処理）
本実施の形態における結線作成時の内部処理の流れは、図８におけるステップＳＴ１２の結線先端子情報保管処理以外は実施の形態１の流れと同様の処理となる。本実施の形態におけるステップＳＴ１２の処理の流れを図２３に示すフローチャートに示す。
（ステップＳＴ３１）未結線状態判定
未結線端子判定部７では、結線先端子指定部２が指定した結線先端子が、未結線端子かどうかを判定する。未結線端子であれば、何も特別な処理は行わずステップＳＴ３３に進む。未結線端子でなければ、処理はステップＳＴ３２に進む。
（ステップＳＴ３２）ジャンクション挿入
ステップＳＴ３１での判定結果が未結線端子でない場合は、ジャンクション挿入部８が、結線先端子に既に結線されている線上に値を分岐するためのジャンクションを挿入する。ジャンクション挿入後、ステップＳＴ３３に進む。
（ステップＳＴ３３）結線先端子情報保管
結線先端子指定部２は、結線先端子情報を結線先端子リストに保管する。ここで、ステップＳＴ３２においてジャンクションが挿入されていた場合は、そのジャンクションが結線先端子となり、ジャンクションの情報を結線先端子リストに保管する。【００６１】
●（動作事例）
編集エリア５３（図３参照）に、図２４上部に示すようなＡＤＤ、ＡＢＳ、ＳＱＲＴ、ＳＵＢの四つの部品が配置され、ＡＤＤの第二入力端子とＡＢＳの出力端子が既に結線されている状況で、ＳＵＢの第一入力端子とＡＢＳの出力端子を結線する場合の動作について説明する。
先ず、結線元部品として、ポインティングデバイス１０４を用いてＳＵＢを指定する。このとき、ＳＵＢが結線元部品として強調表示され、更に結線対象となるＳＵＢの第一入力端子が強調表示される（図２４中部）。ＳＵＢを指定する際、内部では、ステップＳＴ４，ＳＴ５，ＳＴ７，ＳＴ８，ＳＴ３と処理が進む。
次に、結線先端子として、ポインティングデバイス１０４を用いてＡＢＳの出力端子を指定する。このとき、ＡＢＳの出力端子はＡＤＤの第二入力端子と既に結線されており未結線端子ではないので、未結線端子判定部７によって結線済みと判定され、ジャンクション挿入部８により、既にある結線上に値を分配するジャンクションが挿入される。そして、このジャンクションを結線先端子とする結線が表示される。それと同時に、ＳＵＢの第一入力端子の強調表示が解除され、次の結線対象となるＳＵＢの第二入力端子が強調表示される（図２４下部）。ＡＢＳの出力端子を指定する際、内部では、ステップＳＴ４，ＳＴ９，ＳＴ１１，ＳＴ３１，ＳＴ３２，ＳＴ３３，ＳＴ１３，ＳＴ１４，ＳＴ１５，ＳＴ１６，ＳＴ３と処理が進む。【００６２】
以上のように、実施の形態３の回路図編集装置によれば、結線先端子指定部で指定された結線先端子が未結線端子であるか否かを判定し、未結線端子でなかった場合は、結線上に値の分岐を行うジャンクションを挿入する未結線端子判定部を備えたので、値の分岐を行うジャンクションが自動で挿入され、未結線端子でない端子も結線先端子として容易に選択可能となる。【００６３】
実施の形態４．
実施の形態４は、端子の入出力属性を考慮して結線処理を行うようにしたものである。
実施の形態１においては、各端子の入出力属性を考慮せずに結線処理を行っているが、本実施の形態では、各端子が入出力属性を持っている状況で、その入出力属性を考慮して結線を行う事例について述べる。端子の入出力属性を考慮する場合、入力端子同士や出力端子同士の結線は不可能とし、入力端子と出力端子間の結線のみを可能とする。
ここで、図面上の構成は実施の形態１の図１と同様であるため、図１を用いて説明する。実施の形態４の結線元端子確定部３は、基本的な機能は実施の形態１の結線元端子確定部３と同様であるが、結線処理を行う場合、回路部品の入力端子と出力端子間の結線のみを行うよう構成されている。その他の構成は実施の形態１と同様である。また、本実施の形態のハードウェア構成は、図２に示したものと同様である。【００６４】
以下、実施の形態４の動作について説明する。
●（内部処理）
実施の形態１では、データ保持領域として結線元端子リスト、結線先端子リスト、結線先端子カウンタの三種を用意していたが、本実施の形態においては、三種それぞれの領域に入力用と出力用があり、合計六種のデータ保持領域を持つ（入力結線元端子リスト、出力結線元端子リスト、入力結線先端子リスト、出力結線先端子リスト、入力結線先端子カウンタ、出力結線先端子カウンタの六種）。
入力結線元端子リスト、出力結線元端子リストのデータ構造は結線元端子リストと同様であり、入力結線先端子リスト、出力結線先端子リストのデータ構造は結線先端子リストと同様である。【００６５】
端子の持つ入出力属性に従った結線を実現するために、六種のデータ保持領域を入力結線先端子用データ保持領域と、出力結線先端子用データ保持領域の二つに分ける。入力結線先端子用データ保持領域とは、結線先端子が入力属性を持つ場合に用いられるデータ保持領域であり、入力結線先端子リスト、入力結線先端子カウンタ、出力結線元端子リストの三種からなる。出力結線先端子用データ保持領域とは、結線先端子が出力属性を持つ場合に用いられるデータ保持領域であり、出力結線先端子リスト、出力結線先端子カウンタ、入力結線元端子リストの三種からなる。【００６６】
出力結線元端子リストと入力結線先端子リスト、入力結線元端子リストと出力結線先端子リストを対応付けることで、結線先端子として入力属性を持つ端子が指定された場合は、結線元部品の出力属性を持つ端子と結線を行い、結線先端子として出力属性を持つ端子が指定された場合は、結線元部品の入力属性を持つ端子と結線を行うことができる。【００６７】
本実施の形態の回路図編集装置の結線作成時の内部処理を示すフローチャートを図２５に示す。このフローチャートは、いくつかのステップにおける処理の内容に違いはあるものの、基本的な処理の流れは、図８に示す実施の形態１のフローチャートと同様である。以降では、処理に相違のあるステップについて述べる。【００６８】
（ステップＳＴ４０２）（ステップＳＴ４０６）（ステップＳＴ４１０）データ初期化
データ初期化処理においては、入力結線元端子リスト、出力結線元端子リスト、入力結線先端子リスト、出力結線先端子リスト、入力結線先端子カウンタ、出力結線先端子カウンタの六種のデータ保持領域を結線先端子指定部２および結線元端子確定部３によって初期化する。
（ステップＳＴ４０５）結線元端子リスト判定
ステップＳＴ４での判定の結果、イベントが結線元部品指定イベントであった場合、結線元端子確定部３が、入力結線元端子リストと出力結線元端子リストが空かどうかを判定する。入力結線元端子リストと出力結線元端子リストのどちらかが空でない場合、ステップＳＴ４０６に処理が進む。入力結線元端子リストと出力結線元端子リストが空である場合、ステップＳＴ４０７に処理が進む。
（ステップＳＴ４０７）結線元端子情報保管
結線元端子確定部３が、入力結線元端子リストに、指定された結線元部品が持つ未結線入力端子の端子情報を端子ＩＤの若い順に保管し、出力結線元端子リストに、指定された結線元部品が持つ未結線出力端子の端子情報を端子ＩＤの若い順に保管する。
（ステップＳＴ４０８）結線先端子カウンタ値判定
結線元端子確定部３が、入力結線先端子カウンタと出力結線先端子カウンタの値を判定する。入力結線先端子カウンタと出力結線先端子カウンタの両方の値が０であれば、結線先端子が未指定なので、ステップＳＴ３に戻って次のイベントを待つ。入力結線先端子カウンタと出力結線先端子カウンタのどちらかの値が０でなければ、ステップＳＴ４１４に進む。【００６９】
（ステップＳＴ４０９）未結線端子残存判定
結線先端子指定部２が、入力結線元端子リストと出力結線元端子リストに未結線端子が残っているかを判定する。入力結線元端子リストと出力結線元端子リストのデータの有無を調べ、入力結線元端子リストにデータが存在する場合は、入力結線元端子リストのデータ数と出力結線先端子カウンタの値（この値をｎｏとする）を比較し、出力結線元端子リストにデータが存在する場合は、出力結線元端子リストのデータ数と入力結線先端子カウンタの値（この値をｎｉとする）を比較する。
入力結線元端子リストと出力結線元端子リストの両方にデータが存在しない場合は、結線元部品が未指定の状態であるため、未結線端子は有ると判定しステップＳＴ４１１に進む。入力結線元端子リストにデータが存在し、ｎｏが入力結線元端子リストのデータ数未満であれば、未結線端子は有ると判定しステップＳＴ４１１に進む。出力結線元端子リストにデータが存在し、ｎｉが出力結線元端子リストのデータ数未満であれば、未結線端子は有ると判定しステップＳＴ４１１に進む。
上記以外の場合は、未結線端子は無いと判定し、ステップＳＴ４１０に進む。【００７０】
（ステップＳＴ４１１）結線先端子カウンタ加算
指定された結線先端子が入力属性であれば、結線先端子指定部２が、入力結線先端子カウンタに１を加える。指定された結線先端子が出力属性であれば、結線先端子指定部２が、出力結線先端子カウンタに１を加える。
（ステップＳＴ４１２）結線先端子情報保管
指定された結線先端子が入力属性であれば、結線先端子指定部２が、入力結線先端子リストのｎｉ番目に、指定された結線先端子の端子情報を保管する。指定された結線先端子が出力属性であれば、結線先端子指定部２が、出力結線先端子リストのｎｏ番目に、指定された結線先端子の端子情報を保管する。
（ステップＳＴ４１３）結線元端子判定
結線先端子指定部２が端子を指定したことを示すクリック情報を、結線元端子確定部３が受け、指定された結線先端子に対応する結線元端子が存在するかを判定する。指定された結線先端子が入力属性であれば、出力結線元端子リストのｎｉ番目に端子情報が存在するかを判定する。出力結線元端子リストに該当する端子情報が無い場合、ステップＳＴ３に戻り次のイベントを待つ。出力結線元端子リストに該当する端子情報が有る場合、ステップＳＴ４１４に処理が進む。指定された結線先端子が出力属性であれば、入力結線元端子リストのｎｏ番目に端子情報が存在するかを判定する。入力結線元端子リストに該当する端子情報が無い場合、ステップＳＴ３に戻り次のイベントを待つ。入力結線元端子リストに該当する端子情報が有る場合、ステップＳＴ４１４に処理が進む。【００７１】
（ステップＳＴ４１４）結線作成指示
結線元端子確定部３が、ｎｉと、出力結線元部品の持つ未結線端子の数を比較し、小さい方の値（この値をｍｉと呼ぶ）の数だけ結線の作成を指示する。つまり、結線元端子確定部３が、出力結線元端子リストの１番目からｍｉ番目までのｍｉ本の結線の作成を結線作成部４に依頼する。次に、結線元端子確定部３が、ｎｏと、入力結線元部品の持つ未結線端子の数を比較し、小さい方の値（この値をｍｏと呼ぶ）の数だけ結線の作成を指示する。つまり、結線元端子確定部３が、入力結線元端子リストの１番目からｍｏ番目までのｍｏ本の結線の作成を結線作成部４に依頼する。また、ステップＳＴ４１３での判定の結果、該当する結線元端子情報があった場合、結線元端子確定部３が、該当する結線元端子についての結線の作成を結線作成部４に依頼する。【００７２】
●（動作事例）
ここで、本実施の形態の動作事例について述べる。編集エリア５３の状態を図２６に示す。図２６最上部に示すように、ＡＢＳ、ＳＱＲＴ、ＳＵＢ、ＡＤＤの四つの部品が配置されている。各部品の左側の端子は入力属性を持ち、右側の端子は出力属性を持っている。
先ず、結線元部品として、ポインティングデバイス１０４を用いてＳＵＢを指定する。
このとき、ＳＵＢが結線元部品として強調表示され、更に結線対象となるＳＵＢの第一入力端子と出力端子が強調表示される（図２６の上から二番目）。ＳＵＢを指定する際、内部では、ステップＳＴ４，ＳＴ４０５，ＳＴ４０７，ＳＴ４０８，ＳＴ３と処理が進む。【００７３】
次に、最初の結線先端子として、ポインティングデバイス１０４を用いてＡＢＳの出力端子を指定する。このとき、結線先端子が出力端子なので、結線元端子は入力属性を持つ結線対象端子であるＳＵＢの第一入力端子となり、両端子が対応付けられ、結線が表示される。同時に、ＳＵＢの第一入力端子の強調表示が解除され、次の結線対象となるＳＵＢの第二入力端子と出力端子が強調表示される（図２６の上から三番目）。ＡＢＳの出力端子を指定する際、内部では、ステップＳＴ４，ＳＴ４０９，ＳＴ４１１，ＳＴ４１２，ＳＴ４１３，ＳＴ４１４，ＳＴ４１５，ＳＴ４１６，ＳＴ３と処理が進む。【００７４】
二番目の結線先端子として、ポインティングデバイス１０４を用いてＡＤＤの第一入力端子を指定する。このとき、結線先端子が入力端子なので、結線元端子は出力属性を持つ結線対象端子であるＳＵＢの出力端子となり、両端子が対応付けられ、結線が表示される。同時に、ＳＵＢの出力端子の強調表示が解除され、次の結線対象となるＳＵＢの第二入力端子が強調表示される（図２６の上から四番目）。ＡＤＤの第一入力端子を指定する際、内部では、ステップＳＴ４，ＳＴ４０９，ＳＴ４１１，ＳＴ４１２，ＳＴ４１３，ＳＴ４１４，ＳＴ４１５，ＳＴ４１６，ＳＴ３と処理が進む。【００７５】
三番目の結線先端子として、ポインティングデバイス１０４を用いてＳＱＲＴの出力端子を指定する。このとき、結線先端子が出力端子なので、結線元端子は入力属性を持つ結線対象端子であるＳＵＢの第二入力端子となり、両端子が対応付けられ、結線が表示される。それと同時に、ＳＵＢの持つ全端子の結線が完了したので、ＳＵＢとＳＵＢの第二入力端子の強調表示が解除される（図２６最下部）。ＳＱＲＴの出力端子を指定する際、内部では、ステップＳＴ４，ＳＴ４０９，ＳＴ４１１，ＳＴ４１２，ＳＴ４１３，ＳＴ４１４，ＳＴ４１５，ＳＴ４１６，ＳＴ３と処理が進む。【００７６】
以上のように、実施の形態４の回路図編集装置によれば、端子の入出力属性を考慮し、結線元端子確定部は、結線処理を行う場合、回路部品の入力端子と出力端子間の結線のみを行うよう構成したので、結線元部品の入力端子の結線処理の後に出力端子の結線処理を行うという端子の入出力属性に関する指定順序の制約が無くなり、入力端子側の結線と出力端子側の結線を任意の順に行うことが可能となる。但し、入力端子の中で端子順に指定し、出力端子の中で端子順に指定する必要はある。
また、入力属性を持つ端子同士や出力属性を持つ端子同士は結線されることは無く、必ず入力属性を持つ端子と出力属性の持つ端子が結線されるので、端子の入出力属性の接続関係を正しいものとすることができる。【００７７】
実施の形態５．
実施の形態５は、部品の配置と同時にその部品を結線元部品として指定するようにしたものである。
図２７は、本実施の形態による回路図編集装置を示す構成図である。本実施の形態による回路図編集装置の構成は、実施の形態１の構成に部品配置部９を加えたものであり、それ以外は実施の形態１と同様の構成である。部品配置部９は、部品を配置すると共に、その配置と同時に配置部品を結線元部品として指定するよう構成されている。
また、実施の形態５による回路図編集装置を実現するハードウェアの構成は、実施の形態１と同様であり、部品配置部９は、その機能に対応したプログラムがハードディスク１０７に格納され、ＣＰＵ１０５によって読み出されて実行されることで実現されている。【００７８】
本実施の形態においては、この部品配置部９を用いて部品が配置される際に、配置対象となった部品を結線元部品として自動的に指定することで結線を作成する方法について説明する。
●（内部処理）
本実施の形態では、部品配置部９が部品を配置する際に、結線元部品指定イベントを発行する。これにより、自動的に配置対象部品が結線元部品となり、結線処理を行うことができる。
図２８は、実施の形態５の処理の流れを示すフローチャートである。
図２８に示す処理の流れは、図８に示す実施の形態１のフローチャートにステップＳＴ５１，ＳＴ５２，ＳＴ５３を付加したものである。以下、付加されたステップの処理内容を示す。【００７９】
（ステップＳＴ５１）配置イベント判定
入力されたイベントが部品配置部９による部品配置イベントかどうかを判定する。部品配置イベントであった場合、ステップＳＴ５２に処理が進む。部品配置イベント以外のイベント（結線元部品指定イベント、結線先端子指定イベント、連続結線編集モード終了イベント）であった場合はステップＳＴ４に進み、以降は実施の形態１と同様の処理となる。
（ステップＳＴ５２）部品配置処理
部品配置イベントを受けた場合、部品配置部９が指定された座標に指定された部品を配置する。配置時には、部品情報保管領域と端子情報保管領域に該当する部品および部品の持つ端子の情報を保管する。
（ステップＳＴ５３）結線元部品指定イベント発行
部品配置部９は、部品の配置終了後に、配置した部品を結線元部品とする結線元部品指定イベントを発行する。イベント発行後は、ステップＳＴ４からステップＳＴ５に進み、以降は実施の形態１と同様の処理となる。【００８０】
●（動作事例）
実際の回路図の編集作業においては、新たに部品を配置し、その部品の端子と既存の端子を結線するというように、部品配置作業と端子間結線作業を繰り返す回路図の編集がよく行われる。この方法で回路図の編集を行う場合、実施の形態１の構成では、配置した部品を結線元部品として指定するという手順が必要となる。配置した部品を自動的に結線元部品として処理することで、結線元部品の指定が不要となり、回路図編集の手数を軽減することができる。【００８１】
図２９に示すようなＡＢＳとＳＱＲＴの二つの部品が既にディスプレイ１０２上の編集エリア５３に配置されている状況から編集を開始し、部品ＳＵＢを配置し、実施の形態１と同様に図１０のように結線する手順について説明する。
先ず、図３に示すモード変更ボタンを用いて、通常編集モードから連続結線編集モードに変更する。
以降の手順に関しては、部品配置と結線先端子の指定順の違いにより三通りの手順が存在する。それぞれを手順Ｄ、Ｅ、Ｆとし、編集エリア５３の状態を、図１１と図３０および図３１に示す。各図は上部・中部・下部からなり、編集領域の表示状態を時系列に上から下へ表現したものである。【００８２】
（手順Ｄ）
ここでは、結線元となる部品を最初に配置し、その後、結線先端子を順に指定する方法について述べる。
先ず、ポインティングデバイス１０４を用いて部品ボタン５２から配置対象部品であるＳＵＢを選択し、編集エリア上の所望の位置を指定し配置する。配置処理実行後、ＳＵＢが指定位置に表示される。その際に、配置されたＳＵＢが結線元部品として自動的に指定され、ＳＵＢとＳＵＢの第一入力端子が強調表示される（図１１上部）。ＳＵＢを配置する際、内部では、ステップＳＴ５１，ＳＴ５２，ＳＴ５３，ＳＴ４，ＳＴ５，ＳＴ７，ＳＴ８，ＳＴ３と処理が進む。以降の処理は、実施の形態１の手順Ａと同様である。【００８３】
（手順Ｅ）
ここでは、最初に結線先端子を順に指定し、その後結線元となる部品を配置する方法について述べる。
先ず、最初の結線先端子として、ポインティングデバイス１０４を用いてＡＢＳの出力端子を指定する。このとき、指定した端子が強調表示され、端子の近傍に指定順を表す“１”という数字が表示される（図３０上部）。ＡＢＳの出力端子を指定する際、内部では、ステップＳＴ５１，ＳＴ４，ＳＴ９，ＳＴ１１，ＳＴ１２，ＳＴ１３，ＳＴ３と処理が進む。
次に、二番目の結線先端子として、ポインティングデバイス１０４を用いてＳＱＲＴの出力端子を指定する。このとき、指定した端子が強調表示され、端子の近傍に指定順を表す“２”という数字が表示される（図３０中部）。ＳＱＲＴの出力端子を指定する際、内部では、ステップＳＴ５１，ＳＴ４，ＳＴ９，ＳＴ１１，ＳＴ１２，ＳＴ１３，ＳＴ３と処理が進む。
この状態で、ポインティングデバイス１０４を用いて部品ボタン５２から配置対象部品であるＳＵＢを選択し、編集エリア上の所望の位置を指定し配置する。配置処理実行後、ＳＵＢが指定位置に表示される。このとき、ＳＵＢの第一入力端子（結線元端子）とＡＢＳの出力端子（結線先端子）、及びＳＵＢの第二入力端子（結線元端子）とＳＱＲＴの出力端子（結線先端子）が対応付けられ、それぞれの結線が表示される。それと同時に、結線先端子の近傍に表示されていた指定順を表す数字が消え、結線先端子の強調表示が解除され、結線元部品であるＳＵＢと次の結線対象となるＳＵＢの出力端子が強調表示される（図３０下部）。ＳＵＢを配置する際、内部では、ステップＳＴ５１，ＳＴ５２，ＳＴ５３，ＳＴ４，ＳＴ５，ＳＴ７，ＳＴ８，ＳＴ１４，ＳＴ１５，ＳＴ１６，ＳＴ３と処理が進む。【００８４】
（手順Ｆ）  ここでは、結線先端子を指定している途中に結線元となる部品を配置し、その後結線先部品の指定を続ける方法について述べる。
先ず、最初の結線先端子として、ポインティングデバイス１０４を用いてＡＢＳの出力端子を指定する。このとき、指定した端子が強調表示され、端子の近傍に指定順を表す“１”という数字が表示される（図３１上部）。ＡＢＳの出力端子を指定する際、内部では、ステップＳＴ５１，ＳＴ４，ＳＴ９，ＳＴ１１，ＳＴ１２，ＳＴ１３，ＳＴ３と処理が進む。【００８５】
この状態で、ポインティングデバイス１０４を用いて部品ボタン５２から配置対象部品であるＳＵＢを選択し、編集エリア上の所望の位置を指定し配置する。配置処理実行後、ＳＵＢが指定位置に表示される。このとき、ＳＵＢの第一入力端子（結線元端子）とＡＢＳの出力端子（結線先端子）が対応付けられ結線が表示される。それと同時に、結線先端子の近傍に表示されていた指定順を表す数字が消え、結線先端子の強調表示が解除され、結線元部品であるＳＵＢと次の結線対象となるＳＵＢの第二入力端子が強調表示される（図３１中部）。ＳＵＢを配置する際、内部では、ステップＳＴ５１，ＳＴ５２，ＳＴ５３，ＳＴ４，ＳＴ５，ＳＴ７，ＳＴ８，ＳＴ１４，ＳＴ１５，ＳＴ１６，ＳＴ３と処理が進む。
二番目の結線先端子として、ポインティングデバイス１０４を用いてＳＱＲＴの出力端子を指定する。このとき、ＳＵＢの第二入力端子（結線元端子）とＳＱＲＴの出力端子（結線先端子）が対応付けられ、結線が表示される。それと同時に、ＳＵＢの第二入力端子の強調表示が解除され、次の結線対象となるＳＵＢの出力端子が強調表示される（図３１下部）。ＳＱＲＴの出力端子を指定する際、内部では、ステップＳＴ５１，ＳＴ４，ＳＴ９，ＳＴ１１，ＳＴ１２，ＳＴ１３，ＳＴ１４，ＳＴ１５，ＳＴ１６，ＳＴ３と処理が進む。【００８６】
以上のように、所望の部品の配置と二本の結線の作成は、手順Ｄ、Ｅ、Ｆのどの方法によっても同じ入力手数で実現可能である。
また、結線元端子を示す強調表示は、編集エリア５３だけでなく、部品ボタン５２上で強調表示しても良い。【００８７】
以上のように、実施の形態５の回路図編集装置によれば、部品を配置すると共に、配置と同時に部品を結線元部品として指定する部品配置部を設けたので、配置対象となる部品が結線元部品に自動的に指定されるため、明示的に結線元部品を指定することなく結線作成処理を実行でき、回路図編集の手数を更に軽減することができる。【００８８】
実施の形態６．
実施の形態６は、回路図上で論理的な接続関係を示す間接ラベルを付与するようにしたものである。
図３２は、実施の形態６の回路図編集装置を示す構成図である。
実施の形態６による回路図編集装置の構成は、実施の形態１の構成に距離判定部１０と間接ラベル挿入部１１を加えたものである。距離判定部１０は、結線対象として対応付けられた結線元端子と結線先端子が、これら端子間の距離に基づく所定の条件を満たすか否かを判定する機能部である。また、間接ラベル挿入部１１は、距離判定部１０によって、所定の条件を満たすと判定された場合、回路図上の論理的な接続関係を示す間接ラベルを挿入する機能部である。これ以外の構成は実施の形態１と同様であるため、対応する部分に同一符号を付してその説明を省略する。【００８９】
また、実施の形態６による回路図編集装置を実現するハードウェアの構成は、図２に示したものと同様である。即ち、距離判定部１０および間接ラベル挿入部１１は、それぞれの機能に対応したプログラムがハードディスク１０７に格納され、ＣＰＵ１０５が対応したプログラムを読み込んでメモリ１０６上に展開して実行することにより、それぞれの機能が実現される。【００９０】
以下、実施の形態６の回路図編集装置の動作について説明する。
本実施の形態においては、距離判定部１０および間接ラベル挿入部１１を用いて、結線元端子から結線先端子までの距離が遠い場合に、間接ラベルである中間変数を挿入する方法について述べる。【００９１】
回路図編集プログラムは、回路図をシートと呼ばれる概念で管理している。編集エリア５３は、シートの一部分を切り出してディスプレイ１０２上に表示しており、シートが大きくなると、スクロールバー等を用いて編集エリア５３上の表示範囲を移動させながら回路図の編集を進めることになる。
シート上の離れた位置にある端子間の結線は、結線が長くなり見にくく、結線元端子と結線先端子の対応を確認するためにスクロールを行わねばならず、対応関係が分かりにくい等の問題がある。この問題への対応策として、間接ラベルとして中間変数を導入し、シート上では直接の結線を行わないが、論理的な接続関係を保つという手法が用いられている。また、異なるシート上の端子間を接続したい場合、結線を行うことは不可能であるため、中間変数を導入し、シート間での論理的な接続関係を持たせている。【００９２】
従来、このような中間変数を導入する際には、中間変数の作成と中間変数と端子間の結線を明示的に行っており、編集作業が煩雑になっていた。本実施の形態における回路図編集装置では、遠距離または異なるシート上の端子間の結線を行う場合には、自動的に中間変数を挿入することができるため、中間変数挿入作業の手数を減少させることができる。【００９３】
●（内部処理）
本実施の形態における結線作成時の内部処理の流れは、ステップＳＴ１４の処理以外は図８に示す実施の形態１のフローチャートと同様の処理となる。本実施の形態におけるステップＳＴ１４の処理の流れを図３３のフローチャートに示す。
（ステップＳＴ６１）端子間距離判定
ステップＳＴ８での判定の結果、結線先端子カウンタが１以上であれば、結線元端子確定部３が、結線先端子カウンタの値ｎと、結線元部品の持つ未結線端子の数を比較し、小さい方の値（この値をｍと呼ぶ）の数だけ、結線元端子についての距離判定を距離判定部１０に依頼する。また、ステップＳＴ１３での判定の結果、結線元端子リストのｎ番目に端子情報があった場合、結線元端子確定部３が、結線元端子リストのｎ番目の結線元端子についての距離判定を距離判定部１０に依頼する。【００９４】
距離判定部１０では、依頼された全ての結線元端子について、結線元端子と対応する結線先端子の座標情報から両端子間の距離を算出する。ここでは、Ｘ座標の値の差の二乗とＹ座標の値の差の二乗の和をとり、その値の平方根を距離とする。その距離が事前に決められている中間変数挿入距離以上であれば遠距離と判定し、両端子間の距離が中間変数挿入距離未満であれば近距離と判定する。また、結線元端子と結線先端子が異なるシート上に存在する場合には、距離判定部１０は、両端子間の距離を遠距離と判定する。
尚、ここでは上記のような方法で距離を算出したが、この算出方法に限定するものではない。例えば、ファンクションブロック図においては、Ｘ座標の距離よりＹ座標の距離が重視されることがあるので、Ｙ座標の距離だけを利用しても良いし、Ｙ座標に重みを付けた算出方法を用いても良い。また、ファンクションブロック図においては、接続関係を持つ回路群をネットワークという単位で管理することもあるので、ネットワークが離れている場合に遠距離とするなど、種々の基準を条件として判定しても良い。【００９５】
（ステップＳＴ６２）中間変数挿入
ステップＳＴ６１での判定結果が遠距離であった場合は、間接ラベル挿入部１１が、結線元端子の近傍と結線先端子の近傍に同一の中間変数を生成する。
（ステップＳＴ６３）結線作成指示
ステップＳＴ６１での判定結果が近距離の場合、距離判定部１０は、結線作成部４に対して結線元端子とそれに対応する結線先端子間の結線の作成を依頼する。ステップＳＴ６２において中間変数が作成された場合は、間接ラベル挿入部１１は、結線作成部４に対して、結線元端子と結線元端子の近傍の中間変数間の結線および結線先端子と結線先端子の近傍の中間変数間の結線の作成を依頼する。【００９６】
●（動作事例）
本実施の形態においては、結線作成処理の手順を行う前に、メインメニュー５１内に用意されている中間変数挿入距離設定を行う。中間変数挿入距離とは、中間変数が挿入するための基準となる距離の値であり、結線元端子と結線先端子の間の距離が中間変数挿入距離以上の場合は、中間変数が挿入され、中間変数挿入距離未満であった場合は、中間変数は挿入されない。中間変数挿入距離には、デフォルト値（例えば１０００ピクセル）が設定されているため、明示的に中間変数挿入距離の設定を行わなくても中間変数を挿入することは可能である。【００９７】
即ち、結線元端子と結線先端子間の距離が中間変数挿入距離未満であった場合は、編集エリア５３上に表示される結線は、実施の形態１と同様のものとなり、中間変数挿入距離以上であった場合は、両端子間に中間変数が挿入され、物理的な結線は行われていないが論理的な接続関係は保持した状態になる。それ以外の操作手順は、実施の形態１と同様である。【００９８】
例えば、実施の形態１の図１６の事例において、ＡＢＳの入力端子とＳＵＢの出力端子の距離が中間変数挿入距離以上であった場合は、ＳＵＢの出力端子を結線先端子として指定する際に、中間変数Ｍ１が自動的に挿入され、図３４のような形態の回路図となる。ＳＵＢの出力端子を指定する際、内部では、ステップＳＴ４，ＳＴ９，ＳＴ１１，ＳＴ１２，ＳＴ１３，ＳＴ６１，ＳＴ６２，ＳＴ６３，ＳＴ１５，ＳＴ１６，ＳＴ３と処理が進む。【００９９】
尚、上記例では、間接ラベルとして中間変数Ｍ１を表示するようにしたが、論理的な接続関係を示すものであればどのようなラベルであってもよい。【０１００】
以上のように、実施の形態６の回路図編集装置によれば、結線元部品の未結線端子と結線先端子が、これら端子間の距離に基づく所定の条件を満たすか否かを判定する距離判定部と、距離判定部で所定の条件を満たすと判定した場合、結線元部品の端子と結線先端子との論理的な接続関係を示す間接ラベルを、それぞれの端子近傍に位置するよう付与する間接ラベル挿入部とを備えたので、遠距離または異なるシート上の端子間の結線といったように、端子間の距離に基づく所定の条件を満たした場合は、自動的に間接ラベルを挿入することができるため、間接ラベル挿入作業の手数を減少させることができる。【０１０１】
実施の形態７．
実施の形態７は、結線先端子と結線元端子との信号種別が不一致であった場合に、これを一致させるための信号種別変換部品を挿入するようにしたものである。
図３５は、実施の形態７による回路図編集装置を示す構成図である。
本実施の形態による回路図編集装置の構成は、実施の形態１の構成に信号種別判定部１２と信号種別変換部品挿入部１３と信号種別変換部品保管部１４とを加えたものである。信号種別判定部１２は、結線対象として指定された結線先端子と結線元端子との信号種別を判定する機能部である。ここで信号種別とは、端子に入出力される信号の特徴を示すものであり、例えば、整数型や実数型といったデータの型情報や、端子の出力電圧や入力電圧といった電圧情報などを指している。信号種別変換部品挿入部１３は、信号種別判定部１２で、信号種別が不一致であると判定された場合、信号種別変換部品保管部１４から、結線先端子の信号種別を結線元端子の信号種別に変換する信号種別変換部品を取り出し、結線先端子と結線元端子間に挿入する機能部である。信号種別変換部品保管部１４は、種々の信号種別を変換するための信号種別変換部品を保管する格納部である。これ以外の構成は実施の形態１と同様であるため、対応する部分に同一符号を付してその説明を省略する。【０１０２】
また、実施の形態７による回路図編集装置を実現するハードウェアの構成は、図２に示す構成と同様である。即ち、信号種別判定部１２および信号種別変換部品挿入部１３は、それぞれの機能に対応したプログラムがハードディスク１０７に格納され、ＣＰＵ１０５が対応したプログラムを読み込んでメモリ１０６上に展開して実行することにより、それぞれの機能が実現されている。また、信号種別変換部品保管部１４は、ハードディスク１０７またはメモリ１０６上に形成されている。【０１０３】
以下、実施の形態７の動作について説明する。
本実施の形態においては、信号種別判定部１２、信号種別変換部品挿入部１３および信号種別変換部品保管部１４を用いて、結線元端子と結線先端子の信号種別が一致していない場合に、信号種別変換部品を挿入する方法について述べる。
ＰＬＣ向けプログラム作成にファンクションブロック図を用いる回路図編集プログラムにおいては、各端子が信号種別として型情報を持っている。ここでいう型情報とは、端子への入力や端子からの出力となる値が持つデータ型のことで、整数型、実数型、ブール型等が存在する。回路図編集装置において、型が不一致な端子間の結線を行うと、ＰＬＣ向けのプログラムを作成する際にはコンパイルエラーとなり、ＰＬＣ上では実行できない。そのため、型が一致していない端子間を接続する場合には、信号種別変換部品として型変換部品を両端子の間に配置し、出力端子と型変換部品の入力端子、型変換部品の出力端子と入力端子を結線することで、両端子の型の不一致を解消することで、ＰＬＣ上で実行可能な回路図としている。【０１０４】
従来、このような型変換部品を導入する際には、型変換部品の配置と型変換部品と両端子間の結線を明示的に行っており、編集作業が煩雑になっていた。本実施の形態における回路図編集装置では、型が一致していない端子間の結線を行う場合には、自動的に型変換部品を挿入することができるため、型変換部品挿入作業の手数を減少させることができる。【０１０５】
●（内部処理）
本実施の形態における結線作成時の内部処理の流れは、ステップＳＴ１４の処理以外は図８のフローチャートと同様の処理となる。本実施の形態におけるステップＳＴ１４の処理の詳細な流れを図３６に示すフローチャートに示す。
（ステップＳＴ７１）端子型判定
ステップＳＴ８での判定の結果、結線先端子カウンタが１以上であれば、結線元端子確定部３が、結線先端子カウンタの値ｎと、結線元部品の持つ未結線端子の数を比較し、小さい方の値（この値をｍと呼ぶ）の数だけ、結線元端子についての型判定を信号種別判定部１２に依頼する。また、ステップＳＴ１３での判定の結果、結線元端子リストのｎ番目に端子情報があった場合、結線元端子確定部３が、結線元端子リストのｎ番目の結線元端子についての型判定を信号種別判定部１２に依頼する。
信号種別判定部１２では、依頼された全ての結線元端子について、結線元端子と対応する結線先端子の型情報を取得し、両端子の型が接続可能であれば一致と判定し、両端子の型が接続不可能であれば不一致と判定する。【０１０６】
（ステップＳＴ７２）型変換部品挿入
ステップＳＴ７１での判定結果が不一致であった場合は、信号種別変換部品挿入部１３が、予め用意してある信号種別変換部品保管部１４の中から、入力型と出力型を条件として検索し、両端子間の型変換において必要となる型変換部品を確定し、結線元端子と結線先端子の間に、確定した型変換部品を配置する。信号種別変換部品保管部１４の中に、該当する型変換部品が存在しなかった場合は、型変換部品は配置しない。【０１０７】
（ステップＳＴ７３）結線作成指示
ステップＳＴ７１での判定結果が一致の場合、信号種別判定部１２は、結線作成部４に対して結線元端子とそれに対応する結線先端子間の結線の作成を依頼する。ステップ７２において型変換部品が作成された場合は、信号種別変換部品挿入部１３は、結線作成部４に対して、結線元端子と型変換部品の結線元端子側の端子との結線および結線先端子と型変換部品の結線先端子側の結線の作成を依頼する。また、ステップＳＴ７２において該当する型変換部品が無かったため、型変換部品が作成されなかった場合、信号種別変換部品挿入部１３は、結線作成部４に対して結線元端子とそれに対応する結線先端子間の結線の作成を依頼する。【０１０８】
●（動作事例）
本実施の形態における基本的な操作手順は、実施の形態１と同様である。
実施の形態１と同様の操作手順において、結線元端子と結線先端子の型情報が一致している場合は、編集エリア５３上に表示される結線は、実施の形態１と同様のものとなり、型情報に不一致がある場合は、両端子間に型変換部品が挿入される。これにより、コンパイルを行うことでＰＬＣ上において実行可能な回路図となる。
また、結線元端子と結線先端子の型情報の不一致を解消するための型変換部品が存在しなかった場合は、結線元端子と結線先端子を実施の形態１と同様に直接結線する。【０１０９】
ここで、図３７に示した編集エリア５３の状態を事例として動作を説明する。
図３７上部において、ＡＢＳの入力にはＡというＩＮＴ型（整数型）の変数が設定されている。ＡＢＳは絶対値を出力するものであり、出力端子の型は入力端子の型と同一の型になるため、ここでのＡＢＳの出力端子の型はＩＮＴ型である。ＳＱＲＴは、入力された値の平方根を出力するものであり、出力端子の型は入力端子の型に関わらずＲＥＡＬ型（実数型）である。また、ＳＱＲＴの出力端子とＳＵＢの第二入力端子が接続されている。この接続は、従来からある結線作成手法で、結線元端子と結線先端子を指定して結線を作成したものとする。【０１１０】
ＳＵＢの第二入力端子に、ＲＥＡＬ型であるＳＱＲＴの出力端子が接続されているので、この段階でＳＵＢは実数の減算を行う回路部品となっており、ＳＵＢの持つ全ての端子はＲＥＡＬ型となっている。図３７上部は、このように端子型を持つ部品が配置、結線されており、ＳＵＢを結線元部品として指定した状態である。
ここから、結線先端子としてＡＢＳの出力端子を指定した場合、結線元端子であるＳＵＢの第一入力端子はＲＥＡＬ型であり、結線先端子であるＡＢＳの出力端子はＩＮＴ型であるため、両端子の型は一致しない。本実施の形態においては、図３７下部のように、型の不一致を解消するための型変換部品を結線時に自動的に挿入することができる。ここでは、ＩＮＴ型の入力をＲＥＡＬ型に変換して出力するＩＮＴ＿ＴＯ＿ＲＥＡＬ部品が挿入される。ＡＢＳの出力端子を指定する際、内部では、ステップＳＴ４，ＳＴ９，ＳＴ１１，ＳＴ１２，ＳＴ１３，ＳＴ７１，ＳＴ７２，ＳＴ７３，ＳＴ１５，ＳＴ１６，ＳＴ３と処理が進む。【０１１１】
以上のように、実施の形態７の回路図編集装置によれば、結線対象として指定された結線先端子と結線元部品の未結線端子の信号種別を判定する信号種別判定部と、信号種別判定部で、結線先端子と未結線端子の信号種別が不一致であると判定した場合、これら結線先端子と未結線端子間に、結線先端子の信号種別を未結線端子の信号種別に変換する信号種別変換部品を挿入する信号種別変換部品挿入部とを備えたので、信号種別が一致していない端子間の結線を行う場合には、自動的に信号種別変換部品を挿入することができるため、信号種別変換部品を挿入する作業の手数を減少させることができる。
【産業上の利用可能性】
【０１１２】
以上のように、この発明に係る回路図編集装置および回路図編集プログラムは、回路図上の端子間の結線を少ない入力手数で作成することを可能とする構成に関するものであり、ＰＬＣ用の回路図を編集する回路図編集装置に用いるのに適している。
【図１】
2009133590.tif 000003
【図２】
2009133590.tif 000004
【図３】
2009133590.tif 000005
【図４】
2009133590.tif 000006
【図５】
2009133590.tif 000007
【図６】
2009133590.tif 000008
【図７】
2009133590.tif 000009
【図８】
2009133590.tif 000010
【図９】
2009133590.tif 000011
【図１０】
2009133590.tif 000012
【図１１】
2009133590.tif 000013
【図１２】
2009133590.tif 000014
【図１３】
2009133590.tif 000015
【図１４】
2009133590.tif 000016
【図１５】
2009133590.tif 000017
【図１６】
2009133590.tif 000018
【図１７】
2009133590.tif 000019
【図１８】
2009133590.tif 000020
【図１９】
2009133590.tif 000021
【図２０】
2009133590.tif 000022
【図２１】
2009133590.tif 000023
【図２２】
2009133590.tif 000024
【図２３】
2009133590.tif 000025
【図２４】
2009133590.tif 000026
【図２５】
2009133590.tif 000027
【図２６】
2009133590.tif 000028
【図２７】
2009133590.tif 000029
【図２８】
2009133590.tif 000030
【図２９】
2009133590.tif 000031
【図３０】
2009133590.tif 000032
【図３１】
2009133590.tif 000033
【図３２】
2009133590.tif 000034
【図３３】
2009133590.tif 000035
【図３４】
2009133590.tif 000036
【図３５】
2009133590.tif 000037
【図３６】
2009133590.tif 000038
【図３７】
2009133590.tif 000039
【国際調査報告】
2009133590.tif 000040
2009133590.tif 000041
2009133590.tif 000042
2009133590.tif 000043