JPH0749651A - 制御プログラムの作成支援装置 - Google Patents

制御プログラムの作成支援装置

Info

Publication number
JPH0749651A
JPH0749651A JP19745193A JP19745193A JPH0749651A JP H0749651 A JPH0749651 A JP H0749651A JP 19745193 A JP19745193 A JP 19745193A JP 19745193 A JP19745193 A JP 19745193A JP H0749651 A JPH0749651 A JP H0749651A
Authority
JP
Japan
Prior art keywords
component
program
control program
information
materialization
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.)
Pending
Application number
JP19745193A
Other languages
English (en)
Inventor
Seiichiro Tanaka
誠一郎 田中
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 JP19745193A priority Critical patent/JPH0749651A/ja
Publication of JPH0749651A publication Critical patent/JPH0749651A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【目的】 開発工数を大幅に削減することができ、か
つ、信頼性の高い制御プログラムを作成可能な、制御プ
ログラムの作成支援装置を提供する。 【構成】 プログラム部品作成部1によってプログラム
部品を作成し、プログラム部品ライブラリ2に格納す
る。制御プログラム編集部3によって部品合成前制御プ
ログラムを作成し、部品合成前制御プログラムファイル
4に格納する。部品実体化情報定義部5によって部品実
体化情報を作成し、部品実体化情報ファイル6に格納す
る。部品合成部7によって、必要なプログラム部品を部
品実体化情報に基づいて実体化し、部品合成前制御プロ
グラムに合成して、部品合成後制御プログラムを作成
し、部品合成後制御プログラムファイル8に格納する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ラダー図をプログラム
部品として用意し、それを再利用することにより、コン
ピュータ用の制御プログラムの作成を支援する装置に関
する。
【0002】
【従来の技術】近年、ラダー図を含む制御プログラムを
作成する場合に、ラダー図をコンピュータ画面上に表示
し、編集する技術が開発されている。このような技術と
しては、例えば、(株)東芝製のT−PDS(Program
Development & DocumentationSystem)などがある。こ
のような技術においては、ラダー図の各接点や命令語
に、デバイス番号、レジスタ番号、および定数が直接書
き込まれる。
【0003】そのため、過去に作成したラダー図を再利
用して新しい制御プログラムを作成しようとする場合に
は、ラダー図に、過去のデバイス番号、レジスタ番号、
および定数が残っていることから、この過去のラダー図
をそのまま使用することはできない。したがって、この
ような場合には、次の2つの方法のいずれかを選択し
て、ラダー図の再利用を行うことになる。すなわち、1
つの方法は、過去に作成したラダー図を参考にして同じ
構造のラダー図を記述し、デバイス番号、レジスタ番
号、および定数を新たに書き込む方法であり、もう1つ
の方法は、過去に作成したラダー図をコピーして、そこ
に書き込まれているデバイス番号、レジスタ番号、およ
び定数を書き換える方法である。
【0004】
【発明が解決しようとする課題】ところで、以上のよう
に、過去に作成したラダー図をコピーしてこのラダー図
の再利用を行う場合には、デバイス番号、レジスタ番
号、および定数を書き直す必要がある。しかしながら、
このような書き換え作業は、プログラム開発の工数を増
大させてしまう。また、この書き換え作業においては、
書き換え漏れなどのミスを生じる可能性があり、作成し
た制御プログラムの信頼性の低下につながる。
【0005】本発明は、以上のような従来技術の問題点
を解決するために提案されたものであり、その目的は、
開発工数を大幅に削減することができ、かつ、信頼性の
高い制御プログラムを作成可能な、制御プログラムの作
成支援装置を提供することである。
【0006】
【課題を解決するための手段】本発明による制御プログ
ラムの作成支援装置は、ラダー図をプログラム部品とし
て作成、管理するように構成したものである。すなわ
ち、ラダー図が、その中で使用されているデバイス番号
とレジスタ番号および定数を書き換えるだけで、他の制
御プログラムの一部または全部として使用できる場合に
は、そのラダー図を、制御プログラムを構成するプログ
ラム部品として考えることができる。そこで、本発明に
おいては、このようにプログラム部品として考えられる
ラダー図の中で使用されているデバイス、レジスタ、お
よび定数に対して、抽象的な名前を付けることにより、
ラダー図を複数の制御プログラムに使用可能なプログラ
ム部品として作成、管理する。
【0007】そして、このような本発明による制御プロ
グラムの作成支援装置は、基本的に、プログラム部品作
成部、プログラム部品ライブラリ、制御プログラム編集
部、部品合成前制御プログラムファイル、部品実体化情
報定義部、部品実体化情報ファイル、部品合成部、およ
び部品合成後制御プログラムファイルを有する。
【0008】このうち、まず、プログラム部品作成部
は、ラダー図をプログラム部品として、そのプログラム
部品名、コメント、および使用されているデバイス、レ
ジスタ、定数に関する情報を合わせて登録し、前記デバ
イス、レジスタ、定数に関する情報の一部として、ユー
ザによって付けられた抽象的な名前の情報を登録する。
より具体的に、本発明においては、プログラム部品とし
て考えられるラダー図の中で使用されているデバイスと
レジスタを、そのラダー図の中だけで使用されるローカ
ルデバイス、ローカルレジスタと、そのラダー図以外で
も一般的に使用されるグローバルデバイス、グローバル
レジスタとに区別する。また、定数については、値が固
定されている不変定数と値が可変な可変定数とに区別す
る。そして、不変定数以外の、ローカルデバイス、ロー
カルレジスタ、グローバルデバイス、グローバルレジス
タ、および可変定数に対して、抽象的な名前を付けて作
成されたラダー図を、プログラム部品として、そのプロ
グラム部品名、コメント、および使用されているデバイ
ス、レジスタ、定数に関する情報を合わせて登録し、前
記デバイス、レジスタ、定数に関する情報の一部とし
て、ユーザによって付けられた抽象的な名前の情報を登
録する。続いて、プログラム部品ライブラリは、前記プ
ログラム部品作成部によって登録されたプログラム部品
を格納する。
【0009】次に、制御プログラム編集部は、前記プロ
グラム部品ライブラリに格納されたプログラム部品の部
品合成情報を含む部品合成前制御プログラムを編集す
る。続いて、部品合成前制御プログラムファイルは、前
記制御プログラム編集部によって編集された部品合成前
制御プログラムを格納する。
【0010】一方、部品実体化情報定義部は、前記プロ
グラム部品ライブラリに格納されたプログラム部品のデ
バイス、レジスタ、定数に関する抽象的な名前の情報
と、実際のデバイス番号、レジスタ番号、および定数の
情報との対応関係を示す部品実体化情報を編集する。続
いて、部品実体化情報ファイルは、前記部品実体化情報
定義部によって編集された部品実体化情報を格納する。
【0011】さらにまた、部品合成部は、前記部品合成
前制御プログラムファイルに格納された部品合成前制御
プログラムを呼び出し、この部品合成前制御プログラム
の部品合成情報に基づいて、前記プログラム部品ライブ
ラリからプログラム部品を検索し、得られたプログラム
部品を前記部品実体化情報ファイルに格納された部品実
体化情報により実体化し、実体化されたプログラム部品
を前記部品合成前制御プログラムに合成し、部品合成後
制御プログラムを作成する。続いて、部品合成後制御プ
ログラムファイルは、前記部品合成部によって作成され
た部品合成後制御プログラムを格納する。
【0012】
【作用】以上のような構成を有する本発明の制御プログ
ラムの作成支援装置においては、ラダー図に使用される
デバイス、レジスタ、および定数に抽象的な名前を付け
て、ラダー図をプログラム部品として作成し、このプロ
グラム部品とは別に、部品合成前制御プログラムおよび
部品実体化情報をそれぞれ作成して、個別に管理するこ
とができる。そのため、過去に作成したラダー図を利用
して、新たな部品合成前制御プログラムに対応する部品
実体化情報を作成し、この部品実体化情報によって、プ
ログラム部品としてのラダー図を実体化して、部品合成
前制御プログラムに合成することにより、新たな制御プ
ログラムを作成することができる。したがって、過去に
作成したラダー図を、プログラム部品として再利用し
て、制御プログラムを作成することができるため、開発
工数を大幅に削減することができる。
【0013】特に、デバイス、レジスタ、および定数に
抽象的な名前を付けて、ラダー図をプログラム部品とし
て作成し、別に作成された部品実体化情報を使用して、
自動的に実際の名前に変換できるため、デバイス番号や
レジスタ番号、定数などの各要素の書き換えが少なく、
その他の新規開発部分も少なくなる。したがって、作業
効率を向上でき、また、バグの混入する割合を低減する
ことができる。さらに、作成される制御プログラムは、
通常の方法で作成したものと同じ形態で出力されるた
め、デバッグ時においては、従来行っていた方法をその
まま使用できる。
【0014】
【実施例】
(1)第1実施例 以下には、本発明による制御プログラムの作成支援装置
の一実施例(第1実施例)について、図1〜図22を参
照して具体的に説明する。この場合、図1は、本発明に
よる制御プログラムの作成支援装置の一実施例を示す構
成図、図2〜図5は、図1の作成支援装置の処理手順を
示すフローチャート、図6〜図14は、図1の作成支援
装置によって作成する制御プログラムの制御対象の一例
として、自動溶接機の動作を示す説明図である。
【0015】また、図15は、レーザー溶接の制御プロ
グラムに使用するプログラム部品の一例を示す表、図1
6は、レーザー溶接の制御プログラムに使用する部品合
成前制御プログラムの一例を示す説明図、図17および
図18は、図15のプログラム部品の部品実体化情報の
ひな型の一例を示す表、図19および図20は、図17
および図18のひな型を使用して部品実体化情報を作成
した一例をそれぞれ示す表、図21および図22は、図
19および図20の部品実体化情報を完成した一例をそ
れぞれ示す表、図23は、レーザー溶接の部品合成後制
御プログラムの一例を示す説明図である。
【0016】(1−1)制御プログラムの制御対象 本実施例の制御プログラムの作成支援装置の説明に先立
ち、この実施例における制御プログラムの制御対象であ
る自動溶接機の動作について、図6〜図14を参照して
説明する。まず、自動溶接機は、図6〜図14に示すよ
うに、左アーム10、右アーム11、左アームの先に取
り付けられた左チャック12、右アーム11の先に取り
付けられた右チャック13、上溶接レーザー14、下溶
接レーザー15、図示していないスタートスイッチ、左
アーム後退検出センサ21、左アーム前進検出センサ2
2、右アーム前進検出センサ23、この自動溶接機は、
コンピュータに接続されコンピュータに入力されている
制御プログラムにより制御される。コンピュータとの接
続関係は、次の通りである。 スタートスイッチ … X000 左アーム後退検出センサ21 … X001 左アーム前進検出センサ22 … X002 右アーム前進検出センサ23 … X003 左アーム10 … Y010 右アーム11 … Y011 左チャック12 … Y012 右チャック13 … Y013 上溶接レーザー14 … Y014 下溶接レーザー15 … Y015 また、自動溶接機の挙動は、次のステップ1〜8に示す
通りである。 ステップ1:図6に示すような停止状態から、スタート
スイッチ(X000)がONになると、左チャック12
(Y012)と右チャック13(Y013)がともにO
Nになり、被加工物16a,16bを保持する(図
7)。このとき、1秒に設定したコンピュータ内部のタ
イマをスタートする。 ステップ2:ステップ1においてスタートさせたタイマ
がタイムアップした時点で、左アーム10(Y010)
をONにして前進させ、左チャック12(Y012)に
保持された被加工物16aを上側溶接位置に移動させる
(図8)。 ステップ3:左アーム前進検出センサ22(X002)
がONになった時点で、右アーム11(Y011)をO
Nにし、右アーム11(Y011)を前進させ、右側の
チャック13(Y013)に保持された被加工物16b
を上側溶接位置に移動させ、被加工物16aと当接させ
る(図9)。 ステップ4:右アーム前進検出センサ23(X003)
がONになった時点で、上溶接レーザー14(Y01
4)によって被加工物16a,16bの当接部の上側を
1秒間隔で5回ほど溶接する(図10)。 ステップ5:ステップ4における被加工物16a,16
bの当接部の上側の溶接が終わり、両側の被加工物16
a,16bが単体の被化合物16として一体化された時
点で、右チャック13(Y013)をOFFにして、右
チャック13(Y013)から被加工物16を離す(図
11)。このとき、2秒に設定したコンピュータ内部の
タイマをスタートする。 ステップ6:ステップ5においてスタートさせたタイマ
がタイムアップした時点で、左アーム10(Y010)
と右アーム11(Y011)の両方をOFFにして両方
のアーム10,11を後退させ、被加工物16を下側溶
接位置に移動させる(図12)。 ステップ7:左アーム後退検出センサ21(X001)
がONになった時点で、下溶接レーザー15(Y01
5)によって被加工物16の当接部の下側を1秒間隔で
3回ほど溶接する(図13)。 ステップ8:ステップ7における被加工物16の下側の
溶接が終った時点で、左チャック12(Y012)をO
FFにして、左チャック12(Y012)から被加工物
16を離し、溶接を終了する(図14)。
【0017】(1−2)第1実施例の構成 以上のような自動溶接機の制御プログラムの作成を行う
本実施例の制御プログラムの作成支援装置の構成につい
て、図1を参照して説明する。
【0018】すなわち、図1に示すように、本実施例の
制御プログラムの作成支援装置は、プログラム部品作成
部1、プログラム部品ライブラリ2、制御プログラム編
集部3、部品合成前制御プログラムファイル4、部品実
体化情報定義部5、部品実体化情報ファイル6、部品合
成部7、および部品合成後制御プログラムファイル8を
有する。
【0019】このうち、プログラム部品作成部1は、ラ
ダー図などのプログラム部品を登録する機能部であり、
プログラム部品ライブラリ2には、このプログラム部品
作成部1によって登録された複数のプログラム部品が予
め格納されている。具体的には、図15に示すような表
形式のラダー図のプログラム部品が、ユーザによって予
め作成され、格納されている。この図15の例では、プ
ログラム部品名は、「レーザー溶接」である。このプロ
グラム部品の機能の詳細な説明は、コメントの欄に記述
されている。表の下部には、部品の本体であるラダー図
が記述されている。
【0020】より詳細に、このラダー図で使用されるデ
バイスとレジスタは、それぞれ、このラダー図だけで使
用されるローカルデバイス、ローカルレジスタと、この
ラダー図以外でも一般的に使用されるグローバルデバイ
ス、グローバルレジスタに区別されている。また、定数
は、実体化のときに値の変更が可能な可変定数と、値の
変更ができない不変定数に区別されている。そして、不
変定数以外の、ローカルデバイス、ローカルレジスタ、
グローバルデバイス、グローバルレジスタ、および可変
定数には、それぞれを容易に識別できるように、抽象的
な名前が付けられている。
【0021】すなわち、まず、このプログラム部品で使
用するグローバルデバイスは、2つであり、それぞれ、
「スタート」と「実行完了」という抽象的な名前が付け
られている。この場合、「スタート」のデバイスタイプ
は、入力デバイス、出力デバイス、リレーデバイスの何
れでもよく、「実行完了」のデバイスタイプは、出力デ
バイス、リレーデバイスの何れかであることが記述され
ている。また、このプログラム部品では、グローバルレ
ジスタの欄は空欄とされており、グローバルレジスタは
使用されていない。
【0022】次に、ローカルデバイスは、2つであり、
それぞれ、「実行中」と「レーザー出力」という抽象的
な名前が付けられている。この場合、「実行中」のデバ
イスタイプはリレーデバイスで、「レーザー出力」のデ
バイスタイプは出力デバイスであることが記述されてい
る。また、ローカルレジスタは、2つであり、それぞ
れ、「タイマ_1」と「カウンタ_1」という抽象的な
名前が付けられている。この場合、「タイマ_1」のレ
ジスタタイプはタイマレジスタであり、「カウンタ_
1」のレジスタタイプはカウンタレジスタである。ま
た、可変定数は、1つであり、「n回」という抽象的な
名前が付けられている。さらに、表の下部には、部品の
本体であるラダー図が記してある。定数としては、「タ
イマ_1」の設定時間である1秒も使用されているが、
この定数「1秒」は、この部品では不変定数として扱わ
れている。
【0023】(1−3)第1実施例の作用 以上のような構成を有する本実施例の制御プログラムの
作成支援装置によって、図6〜図14に示すような自動
溶接機の制御プログラムを作成する場合の処理手順を、
図2〜図5に示すフローチャートに従って説明する。
【0024】[制御プログラムの作成の概要]制御プロ
グラムの作成は、図2に示すような手順によって行われ
る。すなわち、プログラム部品作成部1によってプログ
ラム部品を作成し(ステップ201)、制御プログラム
編集部3によって部品合成前制御プログラムを作成し
(ステップ202)、部品実体化情報定義部5によって
部品実体化情報を作成し(ステップ203)た後、部品
合成部7によって必要なプログラム部品を部品実体化情
報に基づいて実体化し、部品合成前制御プログラムに合
成して、部品合成後制御プログラムを作成する(ステッ
プ204)。
【0025】[プログラム部品の作成]図2のステップ
201におけるプログラム部品の作成は、具体的には、
ユーザにより、プログラム部品作成部1を使用して、図
3に示すような手順で行われる。すなわち、プログラム
部品本体となるラダー図を作成し(ステップ301)、
ラダー図中のデバイス、レジスタ、および定数を分類し
(ステップ302)、分類されたデバイス、レジスタ、
および定数に抽象的な名前を付け、そのタイプを定義し
(ステップ303)、作成されたプログラム部品をプロ
グラム部品ライブラリ2に格納する(ステップ30
4)。
【0026】[部品合成前制御プログラムの作成]図2
のステップ202における部品合成前制御プログラムの
作成は、一般的な制御プログラムの作成と同様に、ユー
ザにより、制御プログラム編集部3を使用して行われる
が、特に、本実施例においては、図16に示すように、
部品合成前制御プログラムの部品を合成したい場所に、
部品合成情報が記述される。この部品合成情報として
は、プログラム部品名とその部品を実体化したときの名
前が記述される。図16の例においては、プログラムの
2箇所に、「部品名:レーザー溶接、実体名:上側溶
接」および「部品名:レーザー溶接、実体名:下側溶
接」という部品合成情報が記述されている。
【0027】[部品実体化情報の作成]図2のステップ
203における部品実体化情報の作成は、具体的には、
ユーザにより、部品実体化情報定義部5を使用して、図
4に示すような手順で行われる。すなわち、部品実体化
情報定義部5は、部品合成前制御プログラムファイル4
から部品合成前制御プログラムを読み込み(ステップ4
01)、部品合成前制御プログラム中に記述された部品
合成情報を検索し(ステップ402)、部品合成情報が
あるか否かを判断する(ステップ403)。そして、部
品合成情報がある場合には、そこに記述されている部品
名に対応するプログラム部品をプログラム部品ライブラ
リ2から読み込む(ステップ404)。この場合、図1
6に示す部品合成前制御プログラムには、2箇所に部品
合成情報があるため、まず、第1の部品合成情報「部品
名:レーザー溶接、実体名:上側溶接」が得られ、続い
て、この部品合成情報に記述されている部品名「レーザ
ー溶接」に対応するプログラム部品として、図15に示
すプログラム部品が得られることになる。
【0028】次に、部品実体化情報定義部5は、得られ
たプログラム部品と部品合成情報に記述されている実体
名から、部品実体化情報のひな型を作成する(ステップ
405)。すなわち、この場合、図15のプログラム部
品と、部品合成情報に記述されている実体名「上側溶
接」から、図17に示すような部品実体化情報のひな型
を作成する。
【0029】続いて、部品実体化情報定義部5は、作成
されたひな型をユーザに提示し、各デバイス、レジスタ
の割付と定数への代入を促し、これに応じて、ユーザ
が、部品実体化情報を作成する(ステップ406)。こ
の場合、ユーザが必ず行わなければならないのは、グロ
ーバルデバイス、グローバルレジスタの割付と、ローカ
ルデバイス、ローカルレジスタでタイプが入力または出
力のものの割付と、可変定数への代入である。ローカル
デバイス、ローカルレジスタでタイプが入力または出力
でないものについては、必ずしも割付を行う必要はな
い。
【0030】図19は、図17のひな型を基にして、図
16の部品合成前制御プログラムにおける第1の部品合
成情報「部品名:レーザー溶接、実体名:上側溶接」に
対応する部品実体化情報を作成した一例である。この図
19に示す部品実体化情報においては、グローバルデバ
イス、グローバルレジスタの割付と、ローカルデバイ
ス、ローカルレジスタでタイプが入力または出力のもの
の割付と、可変定数への代入が、それぞれ行われてお
り、ローカルデバイス、ローカルレジスタでタイプが入
力または出力でないものについては、割付は行われてい
ない。
【0031】この後、部品実体化情報定義部5は、部品
合成前制御プログラムの未検索部分があるか否かを判断
し(ステップ407)、未検索部分がある場合には、再
び、部品合成前制御プログラム中に記述された部品合成
情報を検索し(ステップ402)、部品合成情報がある
か否かを判断する(ステップ403)。そして、部品合
成情報がある場合には、そこに記述されている部品名に
対応するプログラム部品をプログラム部品ライブラリ2
から読み込む(ステップ404)。この場合、図16に
示す部品合成前制御プログラムから、第2の部品合成情
報「部品名:レーザー溶接、実体名:下側溶接」が得ら
れ、続いて、この部品合成情報に記述されている部品名
「レーザー溶接」に対応するプログラム部品として、図
15に示すプログラム部品が得られることになる。
【0032】次に、部品実体化情報定義部5は、得られ
たプログラム部品と部品合成情報に記述されている実体
名から、部品実体化情報のひな型を作成する(ステップ
405)。すなわち、この場合、図15のプログラム部
品と、部品合成情報に記述されている実体名「下側溶
接」から、図18に示すような部品実体化情報のひな型
を作成する。
【0033】続いて、部品実体化情報定義部5は、作成
されたひな型をユーザに提示し、各デバイス、レジスタ
の割付と定数への代入を促し、これに応じて、ユーザ
が、部品実体化情報を作成する(ステップ406)。図
20は、図18のひな型を基にして、図16の部品合成
前制御プログラムにおける第2の部品合成情報「部品
名:レーザー溶接、実体名:下側溶接」に対応する部品
実体化情報を作成した一例であり、グローバルデバイ
ス、グローバルレジスタの割付と、ローカルデバイス、
ローカルレジスタでタイプが入力または出力のものの割
付と、可変定数への代入が、それぞれ行われており、ロ
ーカルデバイス、ローカルレジスタでタイプが入力また
は出力でないものについては、割付は行われていない。
【0034】この後、部品実体化情報定義部5は、部品
合成前制御プログラムの未検索部分があるか否かを判断
する(ステップ407)。この場合、図16の部品合成
前制御プログラムの2つの部品合成情報は、ともに検索
済みであるため、部品合成前制御プログラムの終了まで
を検索した時点で、未検索部分はないと判断して、作成
された全ての部品実体化情報(ここでは、図19と図2
0の部品実体化情報)を、部品実体化情報ファイル6に
格納する(ステップ408)。また、部品合成前制御プ
ログラムの終了までの検索が済んでいない場合には、未
検索部分があると判断して、再び、部品合成前制御プロ
グラム中に記述された部品合成情報を1つ検索し(ステ
ップ402)、部品合成情報があるか否かを判断する
(ステップ403)。この場合、部品合成情報はないた
め、作成された全ての部品実体化情報(ここでは、図1
9と図20の部品実体化情報)を部品実体化情報ファイ
ル6に格納する(ステップ408)。
【0035】なお、以上のような部品実体化情報の作成
に際しては、一般的に、全ての部品合成情報に対して部
品実体化情報を作成しなければならない。ただし、部品
合成情報においてプログラム部品名と実体名が同じもの
が複数ある場合は、それらについて1つの部品実体化情
報を作成すればよい。
【0036】[部品合成]図2のステップ204におけ
る部品の合成は、具体的には、ユーザにより、部品合成
部7を使用して、図5に示すような手順で行われる。す
なわち、部品合成部7は、部品合成前制御プログラムフ
ァイル4から部品合成前制御プログラムを読み込み(ス
テップ501)、部品合成前制御プログラム中に記述さ
れた部品合成情報を検索し(ステップ502)、部品合
成情報があるか否かを判断する(ステップ503)。そ
して、部品合成情報がある場合には、そこに記述されて
いる部品名および実体名に対応する部品実体化情報を部
品実体化情報ファイル6から読み込む(ステップ50
4)。この場合、図16に示す部品合成前制御プログラ
ムには、2箇所に部品合成情報があるため、まず、第1
の部品合成情報「部品名:レーザー溶接、実体名:上側
溶接」が得られ、続いて、この部品合成情報に記述され
ている部品名「レーザー溶接」および実体名「上側溶
接」に対応する部品実体化情報として、図19に示す部
品実体化情報が得られることになる。
【0037】次に、部品合成部7は、得られた部品実体
化情報の中で、割付が行われていないローカルデバイス
とローカルレジスタに適当な番号を割り付け、部品実体
化情報を完成させる(ステップ505)。すなわち、こ
の場合、図19の部品実体化情報の中で、割付が行われ
ていないローカルデバイスとローカルレジスタに適当な
番号を割り付け、図21に示すような部品実体化情報を
完成させる。なお、この割り付けに使用する番号として
は、部品合成前制御プログラムで使われていなくて、か
つ、それ以前に部品合成部で完成させた部品実体化情報
でも使われていない番号を使用する。デバイスやレジス
タのタイプが予め定義してあるものと一致していること
は当然のことである。
【0038】続いて、部品合成部7は、完成した部品実
体化情報に従い、抽象的な名前が付けられたプログラム
部品であるラダー図に、実際のデバイス番号やレジスタ
番号、定数を付け、プログラム部品を実体化し(ステッ
プ506)、実体化されたプログラム部品を部品合成前
制御プログラムに合成し、部品合成後制御プログラムを
作成する(ステップ507)。この場合、図15に示す
プログラム部品であるラダー図を、図21の部品実体化
情報に基づいて実体化し、実体化されたラダー図を、図
16の部品合成前制御プログラムの第1の部品合成情報
の位置に挿入し、部品合成後制御プログラムを作成す
る。
【0039】この後、部品合成部7は、部品合成前制御
プログラムの未検索部分があるか否かを判断し(ステッ
プ508)、未検索部分がある場合には、再び、部品合
成前制御プログラム中に記述された部品合成情報を検索
し(ステップ502)、部品合成情報があるか否かを判
断する(ステップ503)。そして、部品合成情報があ
る場合には、そこに記述されている部品名および実体名
に対応する部品実体か情報を部品実体化情報ファイル6
から読み込む(ステップ504)。この場合、図16に
示す部品合成前制御プログラムから、第2の部品合成情
報「部品名:レーザー溶接、実体名:下側溶接」が得ら
れ、続いて、この部品合成情報に記述されている部品名
「レーザー溶接」および実体名「上側溶接」に対応する
部品実体化情報として、図20に示す部品実体化情報が
得られることになる。
【0040】次に、部品合成部7は、得られた部品実体
化情報の中で、割付が行われていないローカルデバイス
とローカルレジスタに適当な番号を割り付け、部品実体
化情報を完成させる(ステップ505)。すなわち、こ
の場合、図20の部品実体化情報の中で、割付が行われ
ていないローカルデバイスとローカルレジスタに適当な
番号を割り付け、図22に示すような部品実体化情報を
完成させる。
【0041】続いて、部品合成部7は、完成した部品実
体化情報に従い、抽象的な名前が付けられていたプログ
ラム部品であるラダー図に実際のデバイス番号やレジス
タ番号、定数を付け、プログラム部品を実体化し(ステ
ップ506)、実体化したプログラム部品を部品合成前
制御プログラムに合成し、部品合成後制御プログラムを
作成する(ステップ507)。この場合、図15に示す
プログラム部品であるラダー図を、図22の部品実体化
情報に基づいて実体化し、実体化されたラダー図を、図
16の部品合成前制御プログラムの第2の部品合成情報
の位置に挿入する。その結果、図23に示すような部品
合成後制御プログラムが作成される。
【0042】この後、部品合成部7は、部品合成前制御
プログラムの未検索部分があるか否かを判断する(ステ
ップ508)。この場合、図16の部品合成前制御プロ
グラムの2つの部品合成情報は、ともに検索済みである
ため、部品合成前制御プログラムの終了までを検索した
時点で、未検索部分はないと判断して、最終的に得られ
た部品合成後制御プログラムを部品合成後制御プログラ
ムファイル8に格納する(ステップ509)。また、部
品合成前制御プログラムの終了までの検索が済んでいな
い場合には、未検索部分があると判断して、再び、部品
合成前制御プログラム中に記述された部品合成情報を検
索し(ステップ502)、部品合成情報があるか否かを
判断する(ステップ503)。この場合、部品合成情報
はないため、最終的に得られた部品合成後制御プログラ
ムを部品合成後制御プログラムファイル8に格納する
(ステップ509)。
【0043】(1−4)第1実施例の効果 以上のように、本実施例においては、ラダー図に使用さ
れるデバイス、レジスタ、および定数に抽象的な名前を
付けて、ラダー図をプログラム部品として作成し、この
プログラム部品とは別に、部品合成前制御プログラムお
よび部品実体化情報をそれぞれ作成して、個別に管理す
ることができる。そのため、過去に作成されたラダー図
を利用して、新たな部品合成前制御プログラムに対応す
る部品実体化情報を作成し、この部品実体化情報によっ
て、プログラム部品としてのラダー図を実体化して、部
品合成前制御プログラムに合成することにより、新たな
制御プログラムを作成することができる。したがって、
過去に作成したラダー図をプログラム部品として再利用
して、制御プログラムを作成することができるため、開
発工数を大幅に削減することができる。
【0044】特に、本実施例では、ラダー図に使用され
るデバイス、レジスタ、および定数などの各要素に抽象
的な名前を付けて、ラダー図をプログラム部品として作
成するため、実際の名前を付ける場合に比べてラダー図
の作成が容易である。また、部品実体化情報の作成に当
たっては、抽象的な名前を付けたひな型を作成すること
により、このひな型を適宜利用して、必要な実際の名前
を割り付けるだけで容易に部品実体化情報を作成でき
る。また、部品実体化情報の作成に当たって、割り付け
の必要な部分は、図17および図18に示すように、空
欄として表現されるため、直接書き換える場合に比べ
て、書き換え漏れの生じる可能性を低くできる。
【0045】そして、抽象的な名前から実際の名前への
書き換えに当たっては、部品合成部7により、部品実体
化情報を使用して、自動的に一括して行うことができる
ため、名前の書き換え作業を最小限に低減できる。さら
に、このようなラダー図内の各要素の名称の抽象化によ
り、プログラム部品としてのラダー図の再利用が最大限
に可能となるため、ラダー図本体その他の新規開発部分
をできる限り少なくすることができなる。したがって、
作業効率を向上でき、また、バグの混入する割合を低減
することができるため、作成される制御プログラムの信
頼性を向上できる。さらに、作成される制御プログラム
は、通常の方法で作成されたものと同じ形態で出力され
るため、デバッグ時においては、従来行っていた方法を
そのまま使用できる。
【0046】(2)第2実施例 以下には、図1の作成支援装置を使用した前記第1実施
例の変形例(第2実施例)について、図24および図2
5を参照して具体的に説明する。この場合、図24は、
レーザー溶接の制御プログラムに使用する部品合成前制
御プログラムの別の一例を示す説明図、図25は、図2
4の部品合成前制御プログラムの部品実体化情報のひな
型の一例を示す説明図である。
【0047】すなわち、前記第1実施例では、図15に
示すように、ラダー図の中で使われているデバイス番
号、レジスタ番号、および定数のみを、抽象的な名前に
置き換える反面、図16に示すように、部品合成前制御
プログラムの中においては、実際のデバイス番号、レジ
スタ番号、および定数を使用している。これに対して、
本実施例では、前記第1実施例と同様に、ラダー図の中
で使われるデバイス番号、レジスタ番号、および定数を
抽象的な名前に置き換えることに加えて、図24に示す
ように、部品合成前制御プログラムの中で使われている
デバイス番号、レジスタ番号、および定数についても、
抽象的な名前に置き換えて記述している。このような抽
象的な名前を使用した部品合成前制御プログラムを実体
化するための部品実体化情報のひな型は、例えば、図2
5に示すように作成される。この場合には、図25に示
すような部品実体化情報に基づいて、前記第1実施例に
おけるラダー図の実体化と同様の方法で部品合成前制御
プログラムを実体化することができる。
【0048】すなわち、本実施例においては、前記第1
実施例と同様の作用効果が得られることに加えて、さら
に、部品合成前制御プログラムについても、プログラム
部品として再利用することが可能となる。したがって、
制御プログラムの開発に当たっては、過去に作成したラ
ダー図および部品合成前制御プログラムを、それぞれプ
ログラム部品として再利用して、制御プログラムを作成
することができるため、開発工数をさらに削減すること
ができる。
【0049】(3)他の実施例 なお、本発明は、前記実施例に限定されるものではな
く、例えば、プログラム部品作成部、プログラム部品ラ
イブラリ、制御プログラム編集部、部品合成前制御プロ
グラムファイル、部品実体化情報定義部、部品実体化情
報ファイル、部品合成部、および部品合成後制御プログ
ラムファイルの具体的な構成は、適宜選択可能である。
また、プログラム部品の作成、部品合成前制御プログラ
ムの作成、部品実体化情報の作成、および部品合成など
の具体的な処理手順は適宜変更可能である。さらに、本
発明は、自動溶接機に限らず、各種の制御対象に関する
各種の制御プログラムの作成に一般的に適用可能であ
り、同様に、優れた作用効果が得られるものである。
【0050】
【発明の効果】以上説明したように、本発明の制御プロ
グラムの作成支援装置によれば、ラダー図の中で使用さ
れているデバイス、レジスタ、および定数に対して、抽
象的な名前を付けることにより、ラダー図を複数の制御
プログラムに使用可能なプログラム部品として作成、管
理し、別に作成した部品実体化情報によって、プログラ
ム部品としてのラダー図を実体化し、部品合成前制御プ
ログラムに合成することにより、1つのラダー図を利用
して、複数の制御プログラムを作成することができ、ま
た、書き換え部分その他の新規開発部分が少なくなる。
したがって、従来に比べて、開発工数を大幅に削減する
ことができ、かつ、信頼性の高い制御プログラムを作成
することができる。
【図面の簡単な説明】
【図1】本発明による制御プログラムの作成支援装置の
一実施例を示す構成図。
【図2】図1の作成支援装置の処理手順を示す図であ
り、特に、制御プログラムの作成手順の概要を示すフロ
ーチャート。
【図3】図2の制御プログラムの作成手順のうち、特
に、プログラム部品の作成手順の詳細を示すフローチャ
ート。
【図4】図2の制御プログラムの作成手順のうち、特
に、部品実体化情報の作成手順の詳細を示すフローチャ
ート。
【図5】図2の制御プログラムの作成手順のうち、特
に、部品合成手順の詳細を示すフローチャート。
【図6】図1の作成支援装置によって作成する制御プロ
グラムの制御対象の一例として、自動溶接機の動作を示
す図であり、特に、停止状態を示す説明図。
【図7】図1の作成支援装置によって作成する制御プロ
グラムの制御対象の一例として、自動溶接機の動作を示
す図であり、特に、左右のチャックによる被加工物の保
持状態を示す説明図。
【図8】図1の作成支援装置によって作成する制御プロ
グラムの制御対象の一例として、自動溶接機の動作を示
す図であり、特に、被加工物の保持後の左アームの前進
によって、左側の被加工物を上側溶接位置に移動させた
状態を示す説明図。
【図9】図1の作成支援装置によって作成する制御プロ
グラムの制御対象の一例として、自動溶接機の動作を示
す図であり、特に、左アームの前進後の右アームの前進
によって右側の被加工物を上側溶接位置に移動させ、左
側の被加工物と当接させた状態を示す説明図。
【図10】図1の作成支援装置によって作成する制御プ
ログラムの制御対象の一例として、自動溶接機の動作を
示す図であり、特に、被加工物の上側溶接時を示す説明
図。
【図11】図1の作成支援装置によって作成する制御プ
ログラムの制御対象の一例として、自動溶接機の動作を
示す図であり、特に、被加工物の上側溶接後に右チャッ
クから被加工物を離した状態を示す説明図。
【図12】図1の作成支援装置によって作成する制御プ
ログラムの制御対象の一例として、自動溶接機の動作を
示す図であり、特に、右チャックから被加工物を離した
後に左右のアームを後退させて、被加工物を下側溶接位
置に移動させた状態を示す説明図。
【図13】図1の作成支援装置によって作成する制御プ
ログラムの制御対象の一例として、自動溶接機の動作を
示す図であり、特に、被加工物の下側溶接時を示す説明
図。
【図14】図1の作成支援装置によって作成する制御プ
ログラムの制御対象の一例として、自動溶接機の動作を
示す図であり、特に、左チャックから被加工物を離し
て、溶接を終了した状態を示す説明図。
【図15】レーザー溶接の制御プログラムに使用するプ
ログラム部品の一例を示す表。
【図16】レーザー溶接の制御プログラムに使用する部
品合成前制御プログラムの一例を示す説明図。
【図17】図15のプログラム部品の部品実体化情報の
ひな型の一例として、部品名「レーザー溶接」、実体名
「上側溶接」の部品実体化情報を示す表。
【図18】図15のプログラム部品の部品実体化情報の
ひな型の一例として、部品名「レーザー溶接」、実体名
「下側溶接」の部品実体化情報を示す表。
【図19】図17のひな型を使用して部品実体化情報を
作成した一例を示す表。
【図20】図18のひな型を使用して部品実体化情報を
作成した一例を示す表。
【図21】図19の部品実体化情報を完成した一例を示
す表。
【図22】図20の部品実体化情報を完成した一例を示
す表。
【図23】レーザー溶接の部品合成後制御プログラムの
一例を示す説明図。
【図24】レーザー溶接の制御プログラムに使用する部
品合成前制御プログラムの別の一例を示す説明図。
【図25】図24の部品合成前制御プログラムの部品実
体化情報のひな型の一例を示す説明図。
【符号の説明】
1…プログラム部品作成部 2…プログラム部品ライブラリ 3…制御プログラム編集部 4…部品合成前制御プログラムファイル 5…部品実体化情報定義部 6…部品実体化情報ファイル 7…部品合成部 8…部品合成後制御プログラムファイル

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 ラダー図を含む制御プログラムの作成支
    援装置において、 ラダー図をプログラム部品として、そのプログラム部品
    名、コメント、および使用されているデバイス、レジス
    タ、定数に関する情報を合わせて登録し、前記デバイ
    ス、レジスタ、定数に関する情報の一部として、ユーザ
    によって付けられた抽象的な名前の情報を登録するプロ
    グラム部品作成部と、 前記プログラム部品作成部によって登録されたプログラ
    ム部品を格納するプログラム部品ライブラリと、 前記プログラム部品ライブラリに格納されたプログラム
    部品の部品合成情報を含む部品合成前制御プログラムを
    編集する制御プログラム編集部と、 前記制御プログラム編集部によって編集された部品合成
    前制御プログラムを格納する部品合成前制御プログラム
    ファイルと、 前記プログラム部品ライブラリに格納されたプログラム
    部品のデバイス、レジスタ、定数に関する抽象的な名前
    の情報と、実際のデバイス番号、レジスタ番号、および
    定数の情報との対応関係を示す部品実体化情報を編集す
    る部品実体化情報定義部と、 前記部品実体化情報定義部によって編集された部品実体
    化情報を格納する部品実体化情報ファイルと、 前記部品合成前制御プログラムファイルに格納された部
    品合成前制御プログラムを呼び出し、この部品合成前制
    御プログラムの部品合成情報に基づいて、前記プログラ
    ム部品ライブラリからプログラム部品を検索し、得られ
    たプログラム部品を前記部品実体化情報ファイルに格納
    された部品実体化情報により実体化し、実体化されたプ
    ログラム部品を前記部品合成前制御プログラムに合成
    し、部品合成後制御プログラムを作成する部品合成部
    と、 前記部品合成部によって作成された部品合成後制御プロ
    グラムを格納する部品合成後制御プログラムファイル
    と、 を有することを特徴とする制御プログラムの作成支援装
    置。
JP19745193A 1993-08-09 1993-08-09 制御プログラムの作成支援装置 Pending JPH0749651A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19745193A JPH0749651A (ja) 1993-08-09 1993-08-09 制御プログラムの作成支援装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19745193A JPH0749651A (ja) 1993-08-09 1993-08-09 制御プログラムの作成支援装置

Publications (1)

Publication Number Publication Date
JPH0749651A true JPH0749651A (ja) 1995-02-21

Family

ID=16374731

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19745193A Pending JPH0749651A (ja) 1993-08-09 1993-08-09 制御プログラムの作成支援装置

Country Status (1)

Country Link
JP (1) JPH0749651A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2005101147A1 (ja) * 2004-04-15 2007-08-30 三菱電機株式会社 プログラマブルロジックコントローラの周辺装置及びそのプログラム作成方法
WO2011080945A1 (ja) * 2009-12-28 2011-07-07 三菱電機株式会社 プログラム作成支援装置
DE10210280B4 (de) * 2001-03-12 2012-11-08 Omron Corp. Steuerungen, Tools und diese umfassende Systeme
WO2014080489A1 (ja) * 2012-11-22 2014-05-30 三菱電機株式会社 システム構築支援装置
CN106707973A (zh) * 2015-11-17 2017-05-24 发那科株式会社 时序控制编程装置、时序控制编程方法以及作业系统

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10210280B4 (de) * 2001-03-12 2012-11-08 Omron Corp. Steuerungen, Tools und diese umfassende Systeme
JP4513806B2 (ja) * 2004-04-15 2010-07-28 三菱電機株式会社 プログラマブルロジックコントローラの周辺装置及びそのプログラム作成方法
JPWO2005101147A1 (ja) * 2004-04-15 2007-08-30 三菱電機株式会社 プログラマブルロジックコントローラの周辺装置及びそのプログラム作成方法
TWI464558B (zh) * 2009-12-28 2014-12-11 Mitsubishi Electric Corp 程式作成支援裝置
WO2011080945A1 (ja) * 2009-12-28 2011-07-07 三菱電機株式会社 プログラム作成支援装置
CN102640112A (zh) * 2009-12-28 2012-08-15 三菱电机株式会社 程序制作支援装置
US20120222001A1 (en) * 2009-12-28 2012-08-30 Mitsubishi Electric Corporation Program creation support device
JPWO2011080945A1 (ja) * 2009-12-28 2013-05-09 三菱電機株式会社 プログラム作成支援装置
JP5506822B2 (ja) * 2009-12-28 2014-05-28 三菱電機株式会社 プログラム作成支援装置
US8843885B2 (en) 2009-12-28 2014-09-23 Mitsubishi Electric Corporation Program creation support device
WO2014080489A1 (ja) * 2012-11-22 2014-05-30 三菱電機株式会社 システム構築支援装置
JP5726387B2 (ja) * 2012-11-22 2015-05-27 三菱電機株式会社 システム構築支援装置
CN104797993A (zh) * 2012-11-22 2015-07-22 三菱电机株式会社 系统构建辅助装置
CN104797993B (zh) * 2012-11-22 2016-10-12 三菱电机株式会社 系统构建辅助装置
US9811071B2 (en) 2012-11-22 2017-11-07 Mitsubishi Electric Corporation System construction support apparatus
CN106707973A (zh) * 2015-11-17 2017-05-24 发那科株式会社 时序控制编程装置、时序控制编程方法以及作业系统
JP2017091458A (ja) * 2015-11-17 2017-05-25 ファナック株式会社 シーケンス制御プログラミング装置、シーケンス制御プログラミング方法及び作業システム
US10324438B2 (en) 2015-11-17 2019-06-18 Fanuc Corporation Sequence-control programming apparatus, sequence-control programming method, and operating system
CN106707973B (zh) * 2015-11-17 2019-08-13 发那科株式会社 时序控制编程装置、时序控制编程方法以及作业系统

Similar Documents

Publication Publication Date Title
EP0002750B1 (en) Computerized numerical controller for a machine tool
JPH04330520A (ja) ワークステーション内にソフトウェア・ファイルを設置する方法及び装置
US5729747A (en) Design method and apparatus of computer program for business processing
JPH0749651A (ja) 制御プログラムの作成支援装置
JPH03158908A (ja) 複合加工機における自動プログラミング方式
US4814999A (en) Automatic programming system
JP2000284815A (ja) プログラム作成装置
JPH0528088A (ja) ハードウエア構成情報の自動作成方法
JP2696206B2 (ja) 自動パートプログラム作成方法
JP3019915B2 (ja) 手続き呼出し方法
JP3259987B2 (ja) 対話形数値制御装置
JPS6319007A (ja) 数値制御装置におけるデ−タ伝送方法
JPH064214B2 (ja) 数値制御工作機械における加工順序制御方法
JPH0390933A (ja) ソフトウェアプログラム自動生成方式
JP3241434B2 (ja) Ncデータ作成方法
KR100817364B1 (ko) 프로그래머블 로직 컨트롤러의 주변 장치 및 그 프로그램작성 방법
JPS63310024A (ja) プログラムの行番号変更方法
JPH1185229A (ja) Plcにおけるソフトウェア部品の入出力端子割付方法
JPS63298402A (ja) プログラマブルコントロ−ラのi/0アドレスの自動割付装置
JPS62194542A (ja) プログラム管理方式
JP2004326161A (ja) シーケンスプログラム編集装置
JPH0784620A (ja) 工具経路情報の変換処理方法
JPH0619655B2 (ja) デイジタイジングデ−タへのncプログラム挿入方法
JPH04343689A (ja) ロボットの数値制御装置
JPS62264308A (ja) デイジタイジングデ−タへのncプログラム挿入方法