JP6297792B2 - Robot, robot control method, and robot control program - Google Patents
Robot, robot control method, and robot control program Download PDFInfo
- Publication number
- JP6297792B2 JP6297792B2 JP2013105665A JP2013105665A JP6297792B2 JP 6297792 B2 JP6297792 B2 JP 6297792B2 JP 2013105665 A JP2013105665 A JP 2013105665A JP 2013105665 A JP2013105665 A JP 2013105665A JP 6297792 B2 JP6297792 B2 JP 6297792B2
- Authority
- JP
- Japan
- Prior art keywords
- point
- point type
- work
- data
- unit
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 29
- 238000003860 storage Methods 0.000 claims description 43
- 238000013500 data storage Methods 0.000 claims description 16
- 230000000449 premovement Effects 0.000 description 19
- 238000012790 confirmation Methods 0.000 description 14
- 230000004048 modification Effects 0.000 description 11
- 238000012986 modification Methods 0.000 description 11
- 230000009471 action Effects 0.000 description 10
- 230000008859 change Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 6
- 238000004140 cleaning Methods 0.000 description 5
- 239000013256 coordination polymer Substances 0.000 description 5
- 238000005476 soldering Methods 0.000 description 4
- 239000011248 coating agent Substances 0.000 description 3
- 238000000576 coating method Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical compound [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 229910000679 solder Inorganic materials 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 229910052742 iron Inorganic materials 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Landscapes
- Manipulator (AREA)
Description
本発明は、記憶した複数の作業命令を、所定の位置で動作させるロボットの制御方法、その制御方法を利用したロボット、及びそのロボットの動作を制御するための動作設定プログラムに関する。 The present invention relates to a robot control method for operating a plurality of stored work commands at predetermined positions, a robot using the control method, and an operation setting program for controlling the operation of the robot.
所定の位置を示すポイントにおいて、ねじ締めや塗布などの複数の作業を1つで行うロボットに対しては、所定のポイントで行う作業内容を記憶させるティーチングを行う必要がある。近年、作業の効率化やそれに伴うロボットの高性能化に伴い、ティーチングにおいてはポイントにおける作業内容だけでなく、ポイント移動前や、ポイントへ移動中の作業内容の設定も可能になっている。また、PTP駆動やCP駆動など、移動の仕方も増えており、移動の仕方に合わせた作業内容を設定することも可能となっている。 For a robot that performs a plurality of operations such as screw tightening and application at a point indicating a predetermined position, it is necessary to perform teaching for storing the details of the operation performed at the predetermined point. In recent years, with the improvement of work efficiency and the performance of robots associated therewith, it is possible to set not only the work content at a point but also the work content before or during a point movement in teaching. In addition, the way of movement such as PTP drive and CP drive is increasing, and it is also possible to set the work contents according to the way of movement.
そのため、ティーチングを行うユーザは、ポイントを示す「X座標,Y座標,Z座標」やポイントでの作業を示す「ポイント作業」だけでなく、「ポイント種別」、「移動前作業」、「移動中作業」の設定を行う必要がある。また、作業ポイントが複数ある場合には、各ポイントにおいて、それぞれの項目の設定を必要とする。 For this reason, the teaching user does not only have “X coordinate, Y coordinate, Z coordinate” indicating a point and “point operation” indicating a point operation, but also “point type”, “pre-movement operation”, “moving” It is necessary to set "work". When there are a plurality of work points, it is necessary to set each item at each point.
このようなロボットのティーチングにおいては、あるポイントにおいて、ねじ締めを行う場合には、次の(a)〜(d)の項目を設定する必要がある。
(a)「ポイント種別」として、PTP駆動点と設定する。
(b)「作業前動作」として、フィーダにねじを取りに行く作業を設定する。
(c)「移動中作業」として、ドライバをポイントに到達する0.1秒前にスタートする作業を設定する。
(d)「ポイント作業」として、ねじ締めドライバの完了信号を見ながらZ軸をねじ締め速度で下降させる作業を設定する。
In such robot teaching, when screws are tightened at a certain point, the following items (a) to (d) must be set.
(a) Set “PTP drive point” as the “point type”.
(b) As the “pre-operation operation”, set the operation to go to the feeder to remove the screw.
(c) Set “work in progress” to start 0.1 seconds before the driver reaches the point.
(d) As “point operation”, an operation for lowering the Z-axis at the screw tightening speed while setting the completion signal of the screw tightening driver is set.
以上の(a)〜(d)を設定することで、あるポイントでのねじ締め作業のティーチングをすることができる。一方、複数のポイントにおいてねじ締めをする場合には、各ポイントで同じ設定をする必要がある。各ポイントにおいて、同じ作業を設定することは、非効率的であり、入力ミスが生じる可能性もある。また、ユーザの意識の中では、(a)〜(d)は、まとめて「ねじ締めをするための設定」に相当するのに、1つのねじ締め作業のために複数の作業を設定するのは、煩雑である。 By setting the above (a) to (d), it is possible to teach a screw tightening operation at a certain point. On the other hand, when screw tightening at a plurality of points, it is necessary to make the same setting at each point. Setting the same work at each point is inefficient and can lead to input errors. Also, within the user's consciousness, (a) to (d) collectively correspond to “setting for screw tightening”, but a plurality of operations are set for one screw tightening operation. Is complicated.
一方、(a)〜(d)の作業を「ねじ締め点」として、予めシステムに組み込んでしまったねじ締め専用のシステムを供給することも行われている。これは、予めドライバの長さや形状などの情報を登録しておき、その情報に基づいて作業内容を指定しておく。このような専用システムの場合には、作業をする点を指定するだけで済むので、ティーチングは、非常に簡便である。しかしながら、様々な種類のドライバを用いるロボットの場合は、そのすべてのドライバに対した専用システムを供給することが必要であり、さらに、ねじ締め器具としてドライバ以外の器具を使用する場合を考慮すると、すべてに対応する専用システムを用意することは、事実上困難である。 On the other hand, a system dedicated to screw tightening that has been incorporated in the system in advance is also used with the operations (a) to (d) as “screw tightening points”. For this, information such as the length and shape of the driver is registered in advance, and the work content is designated based on the information. In the case of such a dedicated system, teaching is very simple because it is only necessary to specify a point to work on. However, in the case of a robot using various types of drivers, it is necessary to supply a dedicated system for all the drivers, and considering the case of using a device other than the driver as a screw tightening device, It is practically difficult to prepare a dedicated system for all of them.
本発明は、上記のような従来技術の問題点を解決するために提案されたもので、作業命令の内容をポイント種別名と対応付けて記憶させておき、ティーチングの際には、位置とポイント種別名を指定する。これにより、ティーチングの作業を簡単な手順で行うことが可能となる。さらに、ポイント種別名と対応付ける作業命令は、自由に設定することができるので、専用システムを用意することなく、専用システムを供給した場合と同様の利便性を提供することができる。 The present invention has been proposed in order to solve the above-described problems of the prior art. The contents of the work instruction are stored in association with the point type name, and when teaching, the position and the point are stored. Specify the type name. As a result, teaching work can be performed in a simple procedure. Furthermore, since the work instruction associated with the point type name can be freely set, the same convenience as when the dedicated system is supplied can be provided without preparing the dedicated system.
上記の目的を達成するために、本発明は、ユニットを指定したポイントに移動させ、ユニットに作業をさせる制御部を備えるロボットにおいて、前記ユニットに実行させる作業の命令列を記憶する作業命令列記憶部と、前記作業命令列を、ティーチングの際に指定されるポイント種別名と対応付けて記憶するポイント種別定義データ記憶部と、前記ユニットを移動させるポイントの位置情報と、ポイント種別名とを対応付けてポイント列として記憶するポイント列記憶部とを備え、前記ポイント種別定義データ記憶部は、予め記憶したポイント種別定義データを、作業命令列として新たなポイント種別名と対応付け、当該ポイント種別定義データに対して追加または上書きを行い新たなポイント種別定義データとして記憶し、前記制御部は、記憶されたポイント種別名から前記ポイント種別定義データを参照し、前記ポイント種別定義データに含まれる作業命令列を実行させること、を特徴とする。 In order to achieve the above object, the present invention provides a work instruction sequence storage for storing a sequence of operations to be executed by a unit in a robot having a control unit that moves the unit to a specified point and causes the unit to perform an operation. The point type definition data storage unit that stores the work instruction sequence in association with the point type name specified in teaching, the position information of the point to which the unit is moved, and the point type name A point sequence storage unit for storing the point type as a point sequence, and the point type definition data storage unit associates the previously stored point type definition data with a new point type name as a work instruction sequence, and defines the point type definition stored as addition or perform overwrite new point type definition data to the data, wherein, Referring to the point type definition data from憶been point type name, thereby executing the task instruction sequence included in the point type definition data, and wherein.
また、ロボットの制御方法、及びロボットの制御プログラムも本発明の一態様である。 A robot control method and a robot control program are also one embodiment of the present invention.
以下、本発明に係るロボットの実施形態について図面を参照しつつ詳細に説明する。実施形態において、重複する図面の説明は省略する。 DESCRIPTION OF EMBODIMENTS Hereinafter, embodiments of a robot according to the present invention will be described in detail with reference to the drawings. In the embodiment, description of overlapping drawings is omitted.
[第1の実施形態]
図1は、本実施形態のロボットの全体構成を示す図である。本実施形態のロボット10は、ユニットを取り付ける駆動台20と、その駆動台を移動させるモータ12を複数備える。ロボット10は、モータ12を制御することにより、駆動台20を横方向であるX軸方向、奥行き方向であるY軸方向、水平方向であるZ軸方向に駆動させ、ユニット30を所定のポイントに移動させる。
[First Embodiment]
FIG. 1 is a diagram illustrating an overall configuration of the robot according to the present embodiment. The
ロボット10のティーチングにおいては、ユーザは、ユニット30を移動させるポイントと、そのポイントにおけるユニット30の作業内容を示すポイント種別とを対応づけてポイント列として設定する。ポイント種別としては、ポイント種別名、ポイントでの作業内容、ポイント毎に設定するデータ項目を予め定義しておく。
In teaching the
このようなロボット10の制御では、ティーチングで設定したポイントの順にユニット30を移動させ、各ポイントにおけるポイント種別で定義した作業内容をユニット30に実行させる。
In such control of the
[1−1.構成]
図2は、このようなロボット10の構成を示すブロック図である。図2において、マイクロコンピュータを主体に構成される制御部1は、ロボット10全体の制御を行う。制御部1は、ロボット制御プログラム記憶部2に記憶されている制御プログラムに従って、入力操作、表示、記憶、モータ駆動、信号入出力を行う。ロボット10は、操作部3、表示部4、一時記憶部5、ポイント列記憶部6、作業命令列記憶部7、ポイント種別定義記憶部8、モータ駆動制御部11を備える。この制御動作の為に一時記憶部5を使用する。
[1-1. Constitution]
FIG. 2 is a block diagram showing the configuration of such a
制御部1は、マイクロコンピュータを主体に構成される。制御部1は、モータ駆動制御部11に指令を出力し、モータ12を駆動して各種の動作を実行させる。モータ駆動制御部11とモータ12は必要とする任意の数だけ設けられ、モータ12には、モータ12の動力により、作業及び動作を実行するユニット30が接続される。例えば、ねじ締めユニットの場合においては、ねじ締めユニットを所定のポイントに移動させるためのX軸方向移動用モータ、Y軸方向移動用モータ、Z軸方向移動用モータに加えて、ねじ締め器具を回転させるためのねじ締め用のモータの4つのモータで制御を行う。また、制御部1は信号入出力部13に指令を出し、外部からの信号入力及び外部への信号出力を実行させる。外部から入力した信号を、ロボット10の制御に反映させるや、外部への信号に基づいて外部機器の制御を行う。
The
操作部4はキーボード等の入力装置や、ティーチングのためのハード的、ソフト的機構などであって、ロボット10のプログラムやデータの入力を行うものである。また表示部3はLCD表示装置等で、設定値の表示や操作部4による入力状態を表示するものである。
The
一時記憶部5は、所謂メモリであり、制御部1が制御指令を出力する際の必要な情報を一時的に記憶する記憶部である。
The
作業命令列記憶部7は、ユニット30に実行させるための作業命令を記憶する。作業命令は、ロボットに作業動作を指示する命令であり、例えば、ねじ締め作業、塗布作業、はんだ付け作業などの各種作業の命令がある。作業命令は、ユニット30がポイントに移動する前、ポイントに移動する途中、ポイント到達時などの複数のタイミングで行う作業命令を設定し記憶する。また、作業命令と番号を対応させて記憶しても良い。一例を以下に示す。
「移動前作業番号1」として、各ポイントに移動してくる前にフィーダからねじ取りをする作業を記憶する。この場合、フィーダねじ取り作業は作業命令として別途記憶しておく。
「移動中作業番号5」として、各ポイントに移動してくる移動中に実行する作業の指定で、例えば、ねじ締め用のドライバを各点に到着する0.1秒前にスタートするといった作業を記憶する。
「ポイント作業番号10」として、実際のねじ締め動作を行う作業でねじ締めドライバの完了信号を見ながらZ軸をねじ締め速度で下降させるといった作業を記憶する。
The work instruction
As “
By specifying the work to be executed while moving to each point as “moving
As “
ポイント種別定義データ記憶部8は、ポイント種別名、及びそこで実行する作業命令列により定義されるポイント種別定義データを記憶する。ポイント種別定義データとしては、ポイント種別を一意に区別する為のポイント種別ID、ポイント種別選択での表示に利用する為のポイント種別名、基本的な移動の仕方を指定する為の元となるポイント種別ID、指定の位置に移動する前に実行する作業命令列を指定する為の移動前作業番号、指定の位置に移動する途中で実行する作業命令列を指定する為の移動中作業番号、指定の位置に移動してから実行する作業命令列を指定する為のポイント作業番号といったものを含む。
The point type definition
図3にポイント種別定義記憶部8に記憶するポイント種別定義データの一例を示す。図3では「元となるポイント種別ID=PTPPiont」「移動前作業番号=1」「移動中作業番号=5」「ポイント作業番号=10」なる特性を持った点を「ねじ締め点」として定義する。
FIG. 3 shows an example of the point type definition data stored in the point type
ポイント列記憶部6は、ユニット30を移動させるポイントと、そのポイントにおいて実行するポイント種別とを対応付けたポイント列として記憶する。ポイント種別とは、作業命令列記憶部7に記憶されるポイント列に関連づけられたポイント種別名、ポイント種別定義へのアドレス、または、ポイント種別コードである。
The point
図4に、ポイント列記憶部6に記憶するポイント列定義の一例を示す。図4では、「X座標=100.00」「Y座標=100.00」「Z座標=30.000」「ポイント種別=ねじ締め点」を「ポイント番号=1」と対応付けて記憶する。図4では、座標とポイント種別とを対応付けるポイントが3つあるので、それぞれのポイント毎に、座標とポイント種別とを対応付けて記憶する。
FIG. 4 shows an example of the point sequence definition stored in the point
図4では、ポイント種別名を表示しているが、ポイント列記憶部6に格納するのは、容量を抑えるために、ポイント種別名ではなく、ポイント種別定義への(アドレス)ポインターやポイント種別コードといったものにすることもできる。ここでポイント種別コードとは、ポイント種別IDから作り出すコード(数値)で、図5にその例を示す。図5の例では、4バイトのコードとしている。上位2バイトはポイント種別ID文字列のCRC(巡回冗長検査:Cyclic Redundancy Check)を取っている。CRCを取っているのに格別の意味は無く、文字列をもとに何らかの数値をできるだけランダムに作り出す為にこれを利用している。3バイト目は上位2バイトが異なったIDに対して同じになってしまった場合に利用する。通常0とし、重複した場合には1,2,・・・として上位3バイトのコードとしては重複が無い様にする。最下位の1バイトは、大元の基本種別に対応した1バイトのコードとする。ここで、基本種別とは、「PTP駆動点」「CP開始点」「CP通過点」「CP終了点」「CP円弧補助点」などの移動を指定する基本的な種別である。
In FIG. 4, the point type name is displayed, but the point
[1−2.作用]
以上のような構成を有するロボット10においては、ティーチングにおいて、次の2つのステップにおいて、設定を行う。
(1)ポイント種別定義データを設定ステップ。
(2)ポイント列の設定ステップ。
以下では、各ステップを詳述に説明する。
[1-2. Action]
In the
(1) A step of setting point type definition data.
(2) Step sequence setting step.
Hereinafter, each step will be described in detail.
(1)ポイント種別定義データの設定手順
図6は、ポイント種別定義データの設定手順を示すフローチャートである。システムインテグレータや工場の生産技術部門の者(以下、中間業者と呼ぶ)は表示部3を見ながら操作部4を使って、ポイント種別定義データを入力する。図6のフローチャートに基づいてポイント種別定義データの入力手順を説明する。
(1) Point Type Definition Data Setting Procedure FIG. 6 is a flowchart showing a point type definition data setting procedure. A system integrator or a person in the production engineering department of the factory (hereinafter referred to as an intermediary) inputs point type definition data using the
初めに、中間業者が操作部4を操作して、ポイント種別IDを文字列として入力する(ステップS1)。ポイント種別IDは一意でなければならないので、既に存在しているIDと重複していないかどうかの判定を行う(ステップS2)。判定の結果、重複している場合(ステップS2のY)には、ポイント種別IDの入力に戻る。
First, the middleman operates the
判定の結果、重複がなければ場合(ステップS2のN)には、元となるポイント種別IDを一覧から選択して入力する(ステップS3)。次にポイント種別名を入力する(ステップS4)。 If there is no overlap as a result of the determination (N in step S2), the original point type ID is selected from the list and input (step S3). Next, a point type name is input (step S4).
次に、移動前作業番号の入力を行う。移動前に実行する作業があるならば(ステップS5のY)、移動前作業番号を入力する(ステップ6)。 Next, the work number before movement is input. If there is an operation to be performed before the movement (Y in step S5), the operation number before the movement is input (step 6).
同様に、移動中作業番号の入力を行う。移動中に実行する作業があるならば(ステップS7のY)、移動中作業番号を入力する(ステップ8)。 Similarly, the moving work number is input. If there is an operation to be performed during movement (Y in step S7), the moving operation number is input (step 8).
最後に、移動後作業番号の入力を行う。移動後に実行する作業があるならば(ステップS9)、ポイント作業番号を入力する(ステップ10)。移動前作業番号、移動中作業番号、ポイント作業番号は、予め作業命令列記憶部7に番号を付けて命令列を入力・記憶しておき、ステップ6、ステップ8、ステップ10で入力する、移動前作業番号、移動中作業番号、ポイント作業番号は、この作業命令列記憶部7に記憶されている命令列を番号により指定する。
Finally, input the work number after movement. If there is a work to be executed after the movement (step S9), the point work number is input (step 10). The work number before movement, the work number during movement, and the point work number are numbered in advance in the work instruction
(2)ポイント列の設定手順
図7は、ポイント列の設定手順を示すフローチャートである。ポイント列の設定では、中間業者が定義したポイント種別定義データを使用する。
(2) Point Sequence Setting Procedure FIG. 7 is a flowchart showing a point sequence setting procedure. In the point column setting, the point type definition data defined by the middleman is used.
ポイント列の設定手順では、初めに、ユーザは、ポイントの座標を入力する(ステップ1)。次にポイント種別を選択入力する(ステップ2)。これを必要なポイント数分繰り返す(ステップ3)。この様に、ポイント列の設定では、ポイント種別として「ねじ締め点」を選択設定して位置座標を指定するだけで済む。つまり、移動前作業や移動中作業などはポイント種別「ねじ締め点」の定義により参照・実行されることとなり、ポイント列を作成する上ではメインのティーチングであるポイント種別を設定することのみで良い。すなわち、本実施形態では、ねじ締め位置を指定することのみで良い。 In the point sequence setting procedure, first, the user inputs the coordinates of a point (step 1). Next, the point type is selected and input (step 2). This is repeated for the necessary number of points (step 3). As described above, in setting the point sequence, it is only necessary to select and set “screw tightening point” as the point type and specify the position coordinates. In other words, pre-moving work and moving work are referred to and executed based on the definition of the point type “screw tightening point”, and it is only necessary to set the point type that is the main teaching to create the point sequence. . That is, in this embodiment, it is only necessary to specify the screw tightening position.
[1−3.効果]
以上の様な本実施形態のロボット10の制御においては、指定されたポイント種別名(例えば「ねじ締め点」)からポイント種別定義データを参照してこれに従って命令実行や移動を行うことになる。
[1-3. effect]
In the control of the
定義されたポイント種別を使うことにより、作業者は位置を指定するだけで済みティーチングが非常に簡単になり、誤りを防ぐこともできる。 By using the defined point type, the operator only needs to specify the position, teaching becomes very simple, and errors can be prevented.
また、中間業者がポイント種別定義をしようとした時、例えば「フィーダからねじを取る作業」は、ねじ締め点の移動前作業であることが明確になる。また、「フィーダからねじを取る作業」を、ねじを締める点の前の点の作業に含めてしまった形でプログラムを組むこともできる。しかし定義をすることにより「フィーダからねじを取る作業」は、ねじ締め点の移動前作業と関連づけされる。ポイント種別定義をするということから、作業の観点を見直しする必要が起こり、結果として意味的にポイントに属しているものをポイントに属させる構成になり、作成や保守が容易になる。 In addition, when an intermediate contractor tries to define a point type, for example, it becomes clear that “operation to remove a screw from a feeder” is an operation before moving a screw fastening point. It is also possible to create a program in such a way that the “work to remove the screw from the feeder” is included in the work at the point before the screw is tightened. However, by defining, the “operation to remove the screw from the feeder” is related to the operation before moving the screw fastening point. Since the point type is defined, it is necessary to review the viewpoint of the work, and as a result, a configuration that semantically belongs to the point belongs to the point, and creation and maintenance become easy.
また、図3の例では「ポイント種別ID」と「ポイント種別名」とを別に設けている。本質的には「ポイント種別ID」のみで良いが、操作性向上の面から「名」を別に設けている。「ポイント種別ID」は「元となるポイント種別ID」の指定をするのに使い(一意に区別する)、「ポイント種別名」の方は作業者が選択設定する時に使う。複数言語対応(例えば日本語表示と英語表示を切り替えられる)する場合、「ID」は1つとして、「名」を言語毎に設定しておくことにより、作業者が各言語に対応したポイント種別名で選択設定できる様にすることができ、分かりやすくなる。図8に複数言語に対応した、ポイント種別定義記憶部8の記憶状態の一例を示す。
In the example of FIG. 3, “point type ID” and “point type name” are provided separately. Essentially, only the “point type ID” is sufficient, but “name” is provided separately from the viewpoint of improving operability. “Point type ID” is used to specify “original point type ID” (distinguishes uniquely), and “point type name” is used when an operator selects and sets. When multiple languages are supported (for example, switching between Japanese and English display), by setting “Name” for each language and “Name” for each language, the operator can select the point type corresponding to each language. You can select and set by name, which makes it easier to understand. FIG. 8 shows an example of the storage state of the point type
図3のポイント種別定義では移動前作業番号、ポイント作業番号といった形で、別途ティーチングした命令列を番号で指定する。ポイント作業番号でなく、命令列に名前(ID)を付けて、名前(ID)を指定しても良い。 In the point type definition in FIG. 3, a command sequence separately taught is designated by a number in the form of a work number before movement and a point work number. The name (ID) may be specified by attaching a name (ID) to the instruction sequence instead of the point work number.
さらに、ポイント種別定義の中に命令列を直に設定することもできる。ポイント種別定義では実行する命令列はその定義に固有のものと考えることができる。その意味で、別途ティーチングした命令列を番号等で参照するのではなく、定義の中に命令列を含ませてしまう方が分かり易く、また間違ってポイント種別定義に利用していた命令列を書き換えたり削除してしまったりすることも防げる。この実現方法では、命令列はポイント種別定義の一部となる。 Furthermore, an instruction sequence can be set directly in the point type definition. In the point type definition, the instruction sequence to be executed can be considered unique to the definition. In that sense, it is easier to understand that the instruction sequence is included in the definition rather than referring to the instruction sequence separately taught by number, etc., and the instruction sequence used for the point type definition by mistake is rewritten. Or even deleting it. In this implementation method, the instruction sequence becomes part of the point type definition.
例えば、図9は、移動前作業、移動中作業の命令列を直に設定した例である。移動前作業では、ねじの有無をsensorIn1から読み込み、これがOFFしているならば、ねじが無いとしてエラー処理ルーチンを呼んでいる。(call Error(10))。移動中作業では、移動終了までの時間(moveEndTime())が100[msec]より少なくなったら、ねじ締めドライバを回転開始(set out1)している。 For example, FIG. 9 is an example in which the command sequences for the pre-movement work and the movement work are set directly. In the pre-movement work, the presence / absence of a screw is read from sensorIn1, and if this is OFF, an error handling routine is called because there is no screw. (Call Error (10)). In the operation during movement, when the time until the movement ends (moveEndTime ()) becomes less than 100 [msec], the screw tightening driver is started to rotate (set out1).
さらに、本実施形態のユニット30は、必要とする作業及び動作に合わせて、交換可能とする。すなわち、本実施形態においては、ねじ締めユニットを例に挙げて説明をしたが、塗布ユニット、ディスペンスユニット、ボードカッターユニット、半田ユニット、リードカッターユニット、カメラユニットなどを用いることもできる。
Furthermore, the
[第2の実施形態]
第2の実施形態は、第1の実施形態のポイント列記憶部において、更に、ユニット30の作業の前後に行う作業を対応づけてポイント列として設定する。以下、第2の実施形態のロボット10のティーチング方法について詳述します。
[Second Embodiment]
In the second embodiment, in the point string storage unit of the first embodiment, the work performed before and after the work of the
[2−1.構成]
本実施形態におけるポイント列記憶部6では、ユニット30を移動させるポイントと、そのポイントにおいて実行するポイント種別と、ユニット30の作業の前後に行う作業とを対応付けてポイント列として記憶する。図10に、ポイント列記憶部6に記憶するポイント列記憶部に記憶するポイント列の一例を示す。図10では、「X座標=100.00」「Y座標=100.00」「Z座標=30.000」「ポイント種別=ねじ締め点」「ポイント作業番号(前)=20」「ポイント作業番号(後)=30」を「ポイント番号=1」と対応付けて記憶する。
[2-1. Constitution]
In the point
図10のポイント番号2に示すように、「ポイント作業番号(前)」「ポイント作業番号(後)」は、作業の必要が無い場合には設定をしないことも可能である。
[2−2.作用・効果]
以上のような構成を有するロボット10では、例えば「ねじ締め」の点でねじを締め始める直前に、ワーク押さえの為のパルス出力信号を出すとか、ねじを締め終わったところで、しめたネジの個数をカウントするため、外部カウンタにパルス出力を出す。
As indicated by
[2-2. Action / Effect]
In the
これを実現する方法として、例えば、図10に示す様に「ポイント作業番号(前)」と「ポイント作業(後)」といった2つの番号を設定する。 As a method for realizing this, for example, two numbers such as “point work number (front)” and “point work (back)” are set as shown in FIG.
作業番号20に「ワーク押さえの為のパルス出力信号を出す」命令(列)を、作業番号30に「しめたネジの個数をカウントするための外部カウンタにパルス出力を出す」命令(列)を設定しておき、図10のポイント番号1及びポイント番号3の様に、「ポイント作業番号(前)=20」と「ポイント作業(後)=30」といった設定をすることにより、ねじ締め動作の前後に付随的な作業を行わせる。
A command (sequence) for outputting a pulse output signal for pressing a work is issued to the
また、前後に付随的な作業を付ける別の実現方法として、ポイント作業番号を付けた場合には、元の作業は実行されなくなり、その代わり「元の作業を呼び出す」特別な命令を用意し、これを使う。例えば、命令callBaseを元の作業を呼び出す命令とする。図11に示した様に、ポイント番号1及びポイント番号3ではポイント作業として25を付ける。ポイント作業番号を設定すると、「ねじ締め点」ではあってもねじ締め動作は実行されなくなる(上書きされる)。代わりに、作業25では、out2へのパルス出力の後、callBase命令を実行し、これによってねじ締め動作が実行される。これにより、前後に付随的な作業付けるだけでなく、条件判断により元の作業を呼び出さないといったことも可能になる。
Also, as another realization method to attach ancillary work before and after, if you give a point work number, the original work will not be executed, instead, prepare a special command "call the original work" Use this. For example, the instruction callBase is an instruction for calling the original work. As shown in FIG. 11, with
さらに、図10の説明及び図11の説明では、ポイント位置で実行する「ポイント作業」を例として説明したが、作業ポイントへの移動を開始する前に実行する「移動前作業」や、移動している最中に実行する「移動中作業」についても、同様とすることができる。 Furthermore, in the description of FIG. 10 and FIG. 11, the “point work” executed at the point position has been described as an example. However, the “pre-movement work” executed before starting the movement to the work point, The same can be applied to the “moving work” executed during the operation.
[第3の実施形態]
第3の実施形態は、第1の実施形態のポイント種別定義データ記憶部においてポイント種別定義データを定義づけする際に、元となるポイント種別として基本的なポイント種別だけではなく、定義したポイント種別を用いる。以下、第3の実施形態のロボット10のティーチング方法について詳述します。
[Third Embodiment]
In the third embodiment, when defining the point type definition data in the point type definition data storage unit of the first embodiment, not only the basic point type but also the defined point type as the original point type Is used. Hereinafter, the teaching method of the
[3−1.構成]
本実施形態におけるポイント種別定義データ記憶部は、継承する元となるポイント種別ID、ポイント種別名およびそこで実行する作業命令列により定義されるポイント種別定義データを記憶する。
[3-1. Constitution]
The point type definition data storage unit in the present embodiment stores the point type ID, the point type name, and the point type definition data defined by the work instruction sequence executed there.
図12に再利用しない確認付きねじ締め点の定義にるポイント種別定義記憶部8に記憶するポイント種別定義データの一例を示す。図3に示したねじ締め点の定義とは移動前作業番号を変え、確認を行う動作とフィーダねじ取りの動作を合わせて行う作業「2」を指定する、といったこともできる。しかしこれは作業「2」を作業「1」を元にして作り直しているわけで、誤りが発生しやすい。これに対し「元となるポイント種別」に既に定義した「ねじ締め点」を指定して定義できるようにする。この場合、「移動前作業番号」や「ポイント作業番号」を改めて指定する必要は無い。「ねじ締め点」定義にこれらの動作は含まれている。付け加えるのは、確認を行う動作「3」を、移動前作業の「前」に行うように「移動前作業番号(前)」にこれを指定する。
これに対して、図13に継承による確認付きねじ締め点の定義によるポイント種別定義記憶部8に記憶するポイント種別定義データの一例を示す。図13では「元となるポイント種別ID=TighteningPoint」「移動前作業番号=無し」「移動中作業番号=無し」「ポイント作業番号=無し」「移動前作業番号=3」「移動前作業番号=無し」なる特性を持った点を「確認付きねじ締め点」として定義する。
FIG. 12 shows an example of the point type definition data stored in the point type
On the other hand, FIG. 13 shows an example of the point type definition data stored in the point type
[3−2.作用]
以上のような構成を有するロボット10では、ポイント種別定義データとして定義した「ねじ締め点」と、ほとんどの動作が同じであるが、フィーダねじ取りに行く前にねじ締供給装置の準備ができているかどうかの確認を行う。
[3-2. Action]
In the
この場合、図12の様に、図3に示したねじ締め点の定義とは移動前作業番号を変え、確認を行う動作とフィーダねじ取りの動作を合わせて行う作業「2」を指定する。 In this case, as shown in FIG. 12, the pre-movement work number is changed from the definition of the screw tightening point shown in FIG. 3, and the work “2” to be performed by combining the checking operation and the feeder screwing operation is designated.
しかしこれは作業「2」を作業「1」を元にして作り直しているわけで、誤りが発生しやすい。これに対し「元となるポイント種別」に既に定義した「ねじ締め点」を指定して定義できるようにする。 However, this is because the work “2” is remade based on the work “1”, and an error is likely to occur. On the other hand, the “screw tightening point” already defined in the “original point type” can be specified and defined.
これにより「移動前作業番号」や「ポイント作業番号」を改めて指定する必要は無い。「ねじ締め点」定義にこれらの動作は含まれている。付け加えるのは、確認を行う動作「3」を、移動前作業の「前」に行うように「移動前作業番号(前)」にこれを指定する。図12では、元の「ねじ締め点」定義の内容を継承して「確認付きねじ締め点」を定義している。 As a result, it is not necessary to designate the “pre-movement work number” or the “point work number” again. These actions are included in the “screw tightening point” definition. In addition, the operation “3” for performing confirmation is designated as “operation number before movement (previous)” so as to be performed “before” the operation before movement. In FIG. 12, the content of the original “screw tightening point” definition is inherited to define “screw tightening point with confirmation”.
図13の継承によるポイント種別定義では、元となるポイント種別で定義された「移動前作業」があり、これに「移動前作業(前)」を付け加えて新たなポイント種別を定義している。ここで、「移動前作業(前)」とは、元となるポイント種別で定義された「移動前作業」を実行する前に実行する作業という意味で「(前)」が付いている。またこの為、「移動前作業(後)」といったものも考えなくてはならなくなる。 In the point type definition by inheritance in FIG. 13, there is “pre-movement work” defined by the original point type, and “pre-movement work (previous)” is added to this to define a new point type. Here, “pre-movement work (previous)” is attached with “(front)” in the sense that the work is executed before the “pre-movement work” defined by the original point type is executed. For this reason, the “work before movement (after)” must also be considered.
[3−3.効果]
この様な方式の利点は、ポイント種別定義自体の構造を簡略にできると共に、元となるポイント種別に付いている作業の実行を前、後といった順番だけではなく、条件によっては実行しないといったことも含め制御できることになり、融通性が高くなる。
[3-3. effect]
The advantage of such a method is that the structure of the point type definition itself can be simplified, and the operations attached to the original point type are not executed in the order of before and after, but also depending on conditions. It becomes possible to control including this, and flexibility becomes high.
さらに、ポイント種別定義の再利用について別の例で説明する。ここでは、追加的な継承ではなく、上書き(置き換え)的な継承により再利用を行うことも可能である。同じねじ締めを継承するにしても、例えばねじ締め動作は同じだが、フィーダからのねじ取り方法が全く異なる様な場合。フィーダからのねじ取り作業を行う「移動前作業」をまったく置き換えて別の作業にすることを可能にする。 Further, the reuse of the point type definition will be described with another example. Here, it is possible to perform reuse not by additional inheritance but by overwrite (replacement) inheritance. Even if the same screw tightening is inherited, for example, the screw tightening operation is the same, but the screw removal method from the feeder is completely different. This makes it possible to completely replace the “pre-movement work” in which the screw removal work from the feeder is performed and to make another work.
例えば、このポイント種別名を「別フィーダねじ締め点」として図14の様に定義する。ここで「移動前作業番号」を「4」として、元々の「移動前作業番号=1」を上書きする。追加的な継承及び上書き的な継承ができることにより、ポイント種別定義を再利用可能な部品として扱うことができる様になる。そしてこの再利用により、プログラムの作成効率を上げることができる。 For example, this point type name is defined as “another feeder screw fastening point” as shown in FIG. Here, the “work number before movement” is set to “4”, and the original “work number before movement = 1” is overwritten. By allowing additional inheritance and overwrite inheritance, the point type definition can be handled as a reusable component. This reuse can improve the efficiency of program creation.
上書き的な作業指定だけに限定し、但し特殊な命令として、元となるポイント種別で定義された作業をサブルーチン的に呼び出す命令(例えばcallBase)を付加する方法が考えられる。図14の例で言えば、上書きする「移動前作業」として、確認を行う命令(列)の後に元となるポイント種別の「移動前作業」を呼び出す命令callBaseを実行させれば目的の作業が得られる。 The method is limited to overwriting work designation. However, as a special instruction, a method of adding an instruction (for example, callBase) for calling a work defined by the original point type in a subroutine is conceivable. In the example of FIG. 14, as the “pre-movement work” to be overwritten, if the instruction callBase for calling the “pre-movement work” of the original point type is executed after the instruction (sequence) to be confirmed, the target work is performed. can get.
[第4の実施形態]
本実施形態は、第1の実施形態の構成に加えて、設定データ記憶部を設けるものである。本実施形態は、ユニット30として塗布ユニットを使用する。各ポイントにおいて一定の時間塗布作業をする場合には、ポイント列として、ユニット30を移動させるポイントと、そのポイントにおいて実行するポイント種別、ポイント種別における設定データとを対応付けて記憶する。このポイント種別における設定データで設定した時間が、ポイント種別として、塗布作業を選択した場合の塗布時間に相当する。
[Fourth Embodiment]
In the present embodiment, a setting data storage unit is provided in addition to the configuration of the first embodiment. In the present embodiment, an application unit is used as the
[4−1.構成]
ポイント種別定義データ記憶部において、ポイント種別定義データを定義づけする際に、ポイント種別名と、実行する作業命令列と共に、設定データを定義ことで、作業命令列を実行する場合には、設定データの内容に合わせて作業命令が実行させる。
[4-1. Constitution]
When defining the point type definition data in the point type definition data storage unit, by defining the setting data together with the point type name and the work instruction sequence to be executed, the setting data is The work order is executed according to the contents of.
設定データとしては、データのIDや名前を定義する。図15は、ポイント種別定義記憶部8に記憶するポイント種別定義データの一例を示す。図15では、設定データを区別するためデータID、データ名を定義する。また、複数のデータを追加できる様にそれぞれを「データ#1」「データ#2」といった形で区別できるようにしている。また、名前だけではなく、下限値、上限値を設定している。これ以外に既定値や単位などを指定しても良い。
As setting data, the data ID and name are defined. FIG. 15 shows an example of the point type definition data stored in the point type
このポイント設定データは、ポイント作業の命令列から参照できるものとする。例えば、図15の点塗布点のポイント作業番号「6」では図16のようにIOのONとOFFの間、この塗布時間を参照して時間待ちする。 This point setting data can be referred to from a point work instruction sequence. For example, in point operation number “6” of the point application point in FIG. 15, the application time is referred to during the ON and OFF of the IO as shown in FIG.
ポイント列記憶部6では、ユニット30を移動させるポイントと、そのポイントにおいて実行するポイント種別と、ポイント種別における設定データとを対応付けてポイント列として記憶する。
In the point
ポイント種別として「点塗布点」を記憶する場合、設定データとして「点塗布時間」を入力できるようにする。すなわち、ポイント列のポイント毎の入力設定項目として「点塗布時間」が付加されることになる。 When “point application point” is stored as the point type, “point application time” can be input as setting data. That is, “point application time” is added as an input setting item for each point in the point sequence.
図17は、本実施形態のポイント列記憶部6に記憶するポイント列の一例を示す。図17では、ポイント番号1において「点塗布時間=0.5」、ポイント番号2において「点塗布時間=0.5」、ポイント番号3において「点塗布時間=1.0」と入力し設定している。
FIG. 17 shows an example of a point sequence stored in the point
[4−2.作用・効果]
ティーチングに基づき点塗布点を実行する時には、「点塗布点」の定義を参照して、ポイント作業「6」を実行する。このポイント作業実行の「delay PointDispenceTime」を解釈実行する時にも、「点塗布点」の定義を参照することになる。ここで、PointDispenceTimeの実体(値)はポイント毎に存在する(複数存在する)ことになる。実行する場合にはPointDispenceTimeという1つのIDを使って、現在実行しているポイントのPointDispenceTimeを参照できる様にする。
[4-2. Action / Effect]
When executing the point application point based on teaching, the point operation “6” is executed with reference to the definition of “point application point”. When interpreting and executing “delay PointDispenceTime” of this point work execution, the definition of “point application point” is referred to. Here, the substance (value) of PointDispenceTime exists for each point (a plurality exists). When executing, one PointDispenceTime ID is used so that the PointDispenceTime of the currently executed point can be referred to.
さらに、塗布装置を動かして点塗布を行う時、各点毎に塗布の時間を変えたい場合がある。ポイントのデータとして「点塗布時間」といったものを持ち、設定した値を塗布作業で参照することを可能にする。 Furthermore, when the application device is moved to perform point application, it may be desired to change the application time for each point. The point data includes “point application time”, and the set value can be referred to in the application work.
本実施形態では、「点塗布時間」として数値型のデータの入力を行ったが、選択型や文字列型のデータを入力しても良い。選択型とは2以上の選択枝の中から一つを選ぶようなもので、内部的には適当な整数を割り当てて記憶するにしても、項目名だけではなく、選択枝の名前の定義も必要となる。数値型以外のデータも定義できるようにする為、データ定義として型を指定し、型によって定義する項目も異なってくる。 In the present embodiment, numerical data is input as “point application time”, but selective data or character string data may be input. A selection type is one in which one of two or more choices is selected. Even if an appropriate integer is assigned and stored internally, not only the item name but also the definition of the name of the choice is defined. Necessary. In order to be able to define data other than numeric types, the type is specified as the data definition, and the items to be defined differ depending on the type.
図18に選択型のデータ定義を含んだポイント種別定義の例を示す。この例は、点はんだの例で、データ#2が選択型データになっている。はんだ動作を行う前にはんだコテの先を「クリーニング」つまり清掃するかどうかを指定する。移動前作業番号に設定されている、作業「8」で、
if CleaningYN==1 then クリーニング動作実行 endif
といった命令を書くことにより、クリーニング有りに設定している場合はクリーニング動作実行を行わせる様にする。ここではCleaningYNは「クリーニング無し」の時、値として0、「クリーニング有り」の時、値として1を取るものとしている。又、図19にこの点はんだ点の種別定義を使ったポイント列を示す
FIG. 18 shows an example of a point type definition including a selection type data definition. This example is a point soldering example, and
if CleaningYN == 1 then execute cleaning operation endif
By writing a command such as this, the cleaning operation is executed when cleaning is set. Here, CleaningYN takes a value of 0 when “no cleaning”, and takes a value of 1 when “cleaning”. FIG. 19 shows a point sequence using this type of point solder point definition.
[第5の実施形態]
[5−1.構成]
本実施形態は、第1の実施形態の構成に加えて、独立データ組記憶部を設けるものである。ポイント種別定義データで、作業命令列がどの独立定義データを参照するかを合わせて定義することで、作業命令列を実行する場合には、独立定義データの内容に合わせて作業命令が実行させる。
[Fifth Embodiment]
[5-1. Constitution]
In the present embodiment, an independent data set storage unit is provided in addition to the configuration of the first embodiment. By defining which independent definition data the work instruction sequence refers to in the point type definition data, when executing the work instruction sequence, the work instruction is executed according to the contents of the independent definition data.
独立データ組記憶部で記憶する独立データ組としては、作業命令列に対する条件データを複数集めたものである。独立データ組としては、データ組を一意に区別する為のデータ組ID、ポイント種別選択での表示に利用する為のデータ組名、条件データID、条件データ名、条件データとしての上限値及び下限値といったものを含んでいる。 The independent data set stored in the independent data set storage unit is a collection of a plurality of condition data for work instruction sequences. Independent data sets include data set IDs for uniquely distinguishing data sets, data set names for use in point type selection, condition data IDs, condition data names, upper and lower limits as condition data It includes things like values.
図20に、独立データ組記憶部に記憶する独立データ組定義の一例を示す。図20では、「データ組ID=ScrewCondition」「データ組名=ねじ締め条件」に対して、データ#1ID=ThredPitch、データ#2ID=ScrewLengthなど複数のデータの条件が記憶される。
FIG. 20 shows an example of the independent data set definition stored in the independent data set storage unit. In FIG. 20, a plurality of data conditions such as
ポイント種別定義データ記憶部では、ポイント種別名、そこで実行する作業命令列および作業命令列が参照する独立データ組を記憶する。例えば、図21のポイント種別名定義では、参照する独立データ組として「データ#1ID=ThredPitch」が記憶される。
The point type definition data storage unit stores a point type name, a work instruction sequence executed there, and an independent data set referred to by the work instruction sequence. For example, in the point type name definition of FIG. 21, “
[5−2.作用・効果]
以上のような構成を有するロボット10では、ねじ締めをする作業、ここではポイント作業「10」の中で、ねじ締め条件を図21のようにして参照する。この例では独立データ組を配列として複数化し、これを番号により参照する。
[5-2. Action / Effect]
In the
この様な方式の利点は、例えば、「ねじ締め」において、ねじピッチ(ThredPitch)、ねじ長さ(ScrewLength)、ドライバ回転数(RotateSpeed)、...といったデータにより、ねじを締める時の下降速度や下降距離を制御する場合、これらのデータは各ポイントに持たない方が使いやすい。1つのデータではなく複数のデータ組により条件が指定され、個々の点で条件を変更する必要が低い場合には、ポイントにデータを持たず、独立したデータ組を複数持ち、これを番号等によりポイントから間接参照すると使い勝手が良い。 Advantages of such a method include, for example, “screw tightening”, screw pitch (ThredPitch), screw length (ScrewLength), driver rotation speed (RotateSpeed),. . . When controlling the descending speed and descending distance when tightening the screw by such data, it is easier to use these data if they do not have at each point. When conditions are specified by multiple data sets instead of one data, and it is not necessary to change the conditions at each point, there is no data at the point, and there are multiple independent data sets. Indirect reference from the point is convenient.
また、上記例では、ScrewConditionを定義したが、これをユーザが定義せず、予め組み込みの条件データの枠組みを用意しても良い。ユーザはその枠組みの中で、項目を定義する。合わせてポイントにも、予め組み込みの「条件番号」といったものを用意しておく。これによって例えば、条件番号「1」を付けたポイントで、「ScrewLength」といった名前のみでデータアクセスをすると、自動的に条件番号「1」のねじ長さの設定値を取ってくるといったことを行えるようにすることができる。 In the above example, the ScrewCondition is defined. However, the user may not define this, but a framework of built-in condition data may be prepared in advance. Users define items within that framework. In addition, a built-in “condition number” is also prepared in advance for the points. As a result, for example, when data access is made only with a name such as “ScrewLength” at a point with condition number “1”, the set value of the screw length with condition number “1” can be automatically fetched. Can be.
[第5の実施形態の変形例1]
第5の実施形態では、作業列毎に参照する独立組データを記憶したが、作業を行うプログラム毎に参照する独立組データを記憶しても良い。
[First Modification of Fifth Embodiment]
In the fifth embodiment, the independent set data to be referenced for each work column is stored. However, the independent set data to be referred to for each program for performing work may be stored.
プログラム定義データ記憶部を設け、作業を行うプログラムにおいて、作業命令列が参照する条件データを記憶させる。これにより、作業を行うプログラム内で参照する条件データに基づいて作業を行うことが可能となる。 A program definition data storage unit is provided to store condition data referred to by a work instruction sequence in a program for performing work. As a result, the work can be performed based on the condition data referred to in the work program.
つまり、図20のScrewConditionの定義データを独立データとしてではなく、図23に示すように、プログラム毎に設定するデータの定義として定義する。そして、これを図24の様に作業から参照する。 That is, the definition data of ScrewCondition in FIG. 20 is not defined as independent data, but as data defined for each program as shown in FIG. And this is referred from work like FIG.
これも独立データ組の場合同様、予め組み込みのプログラムデータの枠組みを用意し、その中で定義する様にすることもできる。図25の様に、最終のデータIDのみで、現在実行中のプログラムのプログラムデータを参照することができる。 As in the case of an independent data set, a built-in program data framework can be prepared in advance and defined therein. As shown in FIG. 25, it is possible to refer to the program data of the currently executing program only with the final data ID.
[第5の実施形態の変形例2]
第5の実施形態の変形例1では、作業を行うプログラム毎に参照する独立組データを記憶したが、全プログラムに共通する独立組データをシステムデータ定義として記憶しても良い。
[
In the first modification of the fifth embodiment, the independent set data that is referred to for each program that performs work is stored, but independent set data that is common to all programs may be stored as a system data definition.
すなわち、全プログラムに関するシステム定義データ記憶部を設け、全プログラムにおいて、作業命令列が参照する条件データを記憶させる。これにより、全プログラムで参照する条件データに基づいて作業を行うことが可能となる。 That is, a system definition data storage unit for all programs is provided, and condition data referred to by a work instruction sequence is stored in all programs. This makes it possible to perform work based on the condition data referenced by all programs.
例えば、図26の様にして装置の応答待ち時間をデータとして持つことを定義する。この、値は、図27の様な形で参照する。 For example, as shown in FIG. 26, it is defined to have the response waiting time of the apparatus as data. This value is referred to as shown in FIG.
装置の応答待ち時間などの装置の固定された特性などは、装置を変えない限りは変更の必要がなく、ポイント毎、あるいはプログラム毎にデータを持つ必要は無い。このような場合には、全プログラムに共通にデータを定義した方が有用である。 The fixed characteristics of the device such as the response time of the device do not need to be changed unless the device is changed, and it is not necessary to have data for each point or each program. In such a case, it is useful to define data common to all programs.
ポイント設定データ定義、独立データ組定義、プログラムデータ定義、システムデータ定義のいずれの場合も、データ定義によりデータ記憶ができ、これが参照できるだけではなく、データ定義に従って入力設定操作をする手段を持つことが重要である。
その為、データ定義はデータの名称と型だけではなく、入力操作に必要な情報、例えば値の下限値、上限値といったものも合わせて定義できるようにする。
In any of the point setting data definition, independent data set definition, program data definition, and system data definition, data can be stored by the data definition and not only can be referred to, but also has a means to perform input setting operations according to the data definition. is important.
Therefore, not only the name and type of data but also data necessary for input operation, for example, a lower limit value and an upper limit value can be defined.
[第6の実施形態]
[6−1.構成]
本実施形態は、第1の実施形態に加えて、アカウント記憶部を設けるものである。図28に示すように、アカウント記憶部は、個々のデータ毎に、その所有者がどのアカウントであるかの情報、並びに保護モードの設定値を記憶する。
[Sixth Embodiment]
[6-1. Constitution]
In the present embodiment, an account storage unit is provided in addition to the first embodiment. As shown in FIG. 28, the account storage unit stores, for each piece of data, information on which account the owner is and a set value of the protection mode.
「ポイント種別定義」、一部の「ポイント作業」、「独立データ組定義」「プログラムデータ定義」「システムデータ定義」等のデータは、それぞれ個別に「所有者」があるものとする。所有者はそれを作成した時に、ログインしている「アカウント」とする。 Data such as “point type definition”, some “point work”, “independent data set definition”, “program data definition”, “system data definition”, etc. each have an “owner”. The owner is the logged-in "account" when creating it.
[6−2.作用]
本実施形態は、アカウント記憶部に対して「アカウント」を追加作成できる機能を持たせる。「アカウント」は「ログイン名(ID)」と「パスワード(又は暗証番号)」からなる。上記データの作成を行うには、まず「ログイン」操作をし(ログインする為には、ログイン名(ID)を指定し、パスワードを入力する必要がある)、その後、作成を行う。この時作られる定義等は、その「アカウント」の所有となる。所有者のある定義等に対するアクセスは制限することができる様にする。
[6-2. Action]
In the present embodiment, a function capable of additionally creating an “account” in the account storage unit is provided. The “account” consists of a “login name (ID)” and a “password (or personal identification number)”. To create the above data, first perform a “login” operation (to log in, you need to specify a login name (ID) and enter a password), and then create it. The definition created at this time is owned by the “account”. Access to certain definitions of the owner can be restricted.
所有者はそのデータに対して保護モードを設定・変更できる様にする。保護モードを設定することにより「変更権」「参照権」「利用権」といったものを制限することができる。
(1)「変更権」:データを変更することができる。この場合の「変更」とは例えばポイント作業の命令を変更するといったことを意味する。「変更権」はそのまま「削除権」を意味するものとする。「変更権」が無いということは「削除権」が無い。つまりそのデータを削除することはできない。
(2)「参照権」:データを読む(見る)ことができる。参照権が無いと、例えばポイント種別定義の内容を見ることができない。後述の「利用権」とは別である。内容を見ることができなくてもそれを利用することはできる。
(3)「利用権」:データを利用することができる。「設定データの値を変える(設定する)」のは変更権が無くても利用権があればできるものとする。
The owner can set and change the protection mode for the data. By setting the protection mode, it is possible to limit things such as “change right”, “reference right”, and “use right”.
(1) “Change right”: Data can be changed. “Change” in this case means, for example, changing a point work command. “Change right” means “deletion right” as it is. If there is no “change right”, there is no “delete right”. In other words, the data cannot be deleted.
(2) “Reference right”: Data can be read (viewed). If there is no reference right, for example, the contents of the point type definition cannot be viewed. This is different from the “use right” described later. You can use it even if you can't see it.
(3) “Usage rights”: Data can be used. “Changing (setting) the value of setting data” is assumed to be possible if there is a use right even if there is no change right.
保護モードには「制限無し(No-Limit)」「公開(Public)」「保護(Protected)」「私的(Private)」といったものを設ける。それぞれのモードでのアクセス制限は図29のとおりとなる。「私的」なものとは、例えば中間的な種別定義で、これを利用できなくするのはデータ保護というよりは、見えなくすることにより分かり易くすることを目的としている。私的な(利用権を制限した)種別定義は所有者以外からは、その存在すら知ることができない。 Protection modes include “No-Limit”, “Public”, “Protected”, and “Private”. Access restrictions in each mode are as shown in FIG. “Private” means, for example, an intermediate type definition, and the purpose of making it unusable is not to protect data but to make it invisible by making it invisible. Private type definitions (with limited usage rights) cannot be known by anyone other than the owner.
[6−3.効果]
本実施形態においては、中間業者(システムインテグレータ等)がポイント種別定義等を行い、これをユーザに提供する場合などにおいて、中間業者が作成したポイント種別定義等をユーザに公開することを防止することができる。
[6-3. effect]
In the present embodiment, when an intermediate contractor (system integrator, etc.) defines a point type and provides it to the user, the point type definition created by the intermediate contractor is prevented from being disclosed to the user. Can do.
また、工場の生産技術部門がポイント種別定義等を行い、実作業者が位置を指定して最終的なティーチングを行う場合において。実作業者が間違ってポイント種別定義等を削除してしまうのを防ぐためのプロテクトとして機能する。 Also, when the production engineering department of the factory defines point types, etc., and the actual worker specifies the position and performs final teaching. It functions as a protect to prevent an actual worker from deleting the point type definition etc. by mistake.
以下にアクセス制限との関連においてポイント種別定義の継承に関する補足説明を行う。
図3ねじ締め点の定義,図13の継承による確認付きねじ締め点の定義,図14の上書き継承による別フィーダねじ締め点の定義の関連は図30の様に表せる。白抜きの△付き矢印により、継承関係を示している。
The following is a supplementary explanation regarding inheritance of point type definitions in relation to access restrictions.
FIG. 30 shows the relationship between the definition of the screw tightening point in FIG. 3, the definition of the screw tightening point with confirmation by inheritance in FIG. 13, and the definition of another feeder screw tightening point by overwriting inheritance in FIG. Inheritance relationships are indicated by white arrows with triangles.
図30では、「確認付きねじ締め点(図13)」が「ねじ締め点(図3)」を元にして作られていることを示している。「別フィーダねじ締め点(図14)」も同様に「ねじ締め点」を元にして作られている。一方、図12の再利用しない確認付きねじ締め点の定義の関連を同様に表すと図31の様になる。図31の「確認付きねじ締め点(図12)」は、「ねじ締め点」を継承しているのではなく、おお元の「PTP駆動点」に戻って作られていることがわかる。 FIG. 30 shows that the “screw fastening point with confirmation (FIG. 13)” is created based on the “screw fastening point (FIG. 3)”. “Another feeder screw tightening point (FIG. 14)” is similarly created based on the “screw tightening point”. On the other hand, if the relationship of the definition of the screw fastening point with confirmation not reused in FIG. It can be seen that the “screw tightening point with confirmation (FIG. 12)” in FIG. 31 does not inherit the “screw tightening point” but is made back to the original “PTP driving point”.
この両方の方式は結果としての動作は同じである。しかし、定義レベルや公開・非公開に関連して考えると、この定義方式の違いは大きい。 Both schemes have the same resulting behavior. However, considering the definition level and public / non-disclosure, the difference in this definition method is significant.
つまり、図30の様に「ねじ締め点」を継承する方式は「ねじ締め点」の定義内容が非公開であっても可能である。一方、図31の様に継承しないで「確認付きねじ締め点」を定義するには「ねじ締め点」の定義が非公開であるとむずかしい。 That is, as shown in FIG. 30, the method of inheriting “screw tightening point” is possible even if the definition content of “screw tightening point” is not disclosed. On the other hand, it is difficult to define the “screw tightening point” in order to define the “screw tightening point with confirmation” without inheriting it as shown in FIG.
図12の定義で、「移動中作業番号=5」「ポイント作業番号=10」と指定しているが、この番号(即ち作業内容)は「ねじ締め点」の動作から流用している。この番号(即ち作業内容)が非公開ならばこの様な定義をすることができない。
一方、図13の継承による確認付きねじ締めの定義では、元となるポイント種別の「ねじ締め点」に関して知る必要があるのは「TighteningPoint」という種別IDだけである。そこでの作業が実際にどのようにして行われているかについては知る必要が無い。ポイント作業番号が非公開であっても、あるいは定義内に書かれた作業が非公開であっても、確認付きねじ締めを定義することができる。
In the definition of FIG. 12, “moving work number = 5” and “point work number = 10” are specified, but this number (that is, the work content) is diverted from the operation of “screw tightening point”. If this number (that is, the work contents) is not disclosed, such a definition cannot be made.
On the other hand, in the definition of screw tightening with confirmation by inheritance in FIG. 13, it is only the type ID “TighteningPoint” that needs to be known about the “screw tightening point” of the original point type. There is no need to know how the work there is actually done. Whether the point work number is private or the work written in the definition is private, you can define screw tightening with confirmation.
「ねじ締め点」が中間業者(インテグレータ)により定義され、この内容が非公開になっているとする。生産技術レベルで、この「ねじ締め点」を元に「確認付きねじ締め点」を定義しようとした場合には、図13の様な継承による定義が効果的である。 It is assumed that the “screw tightening point” is defined by an intermediate contractor (integrator) and this content is not disclosed. In the production technology level, when trying to define a “screw fastening point with confirmation” based on this “screw fastening point”, the definition by inheritance as shown in FIG. 13 is effective.
[7.他の実施形態]
以上のように本発明の実施形態を説明したが、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。そして、この実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
[7. Other Embodiments]
Although the embodiments of the present invention have been described above, various omissions, replacements, and changes can be made without departing from the scope of the invention. And this embodiment and its deformation | transformation are included in the invention described in the claim, and its equivalent range while being included in the range and summary of invention.
Claims (7)
前記ユニットに実行させる作業の命令列を記憶する作業命令列記憶部と、
前記作業命令列を、ティーチングの際に指定されるポイント種別名と対応付けて記憶するポイント種別定義データ記憶部と、
前記ユニットを移動させるポイントの位置情報と、ポイント種別名とを対応付けてポイント列として記憶するポイント列記憶部とを備え、
前記ポイント種別定義データ記憶部は、予め記憶したポイント種別定義データを、作業命令列として新たなポイント種別名と対応付け、当該ポイント種別定義データに対して追加または上書きを行い新たなポイント種別定義データとして記憶し、
前記制御部は、記憶されたポイント種別名から前記ポイント種別定義データを参照し、
前記ポイント種別定義データに含まれる作業命令列を実行させること、
を特徴とするロボット。 In a robot with a control unit that moves the unit to the specified point and causes the unit to work,
A work instruction sequence storage unit for storing an instruction sequence of work to be executed by the unit;
A point type definition data storage unit for storing the work instruction sequence in association with a point type name specified in teaching;
A point sequence storage unit for storing the position information of the point to which the unit is moved and the point type name in association with each other and storing it as a point sequence;
The point type definition data storage unit associates previously stored point type definition data with a new point type name as a work instruction sequence, and adds or overwrites the point type definition data to create new point type definition data. Remember as
The control unit refers to the point type definition data from the stored point type name,
Causing a work instruction sequence included in the point type definition data to be executed;
Robot characterized by.
前記ユニットを移動させるポイントと、そのポイントにおいて実行するポイント種別と、前記ポイント種別に基づく作業の前後に行う作業命令列とを対応付けてポイント列として記憶することを特徴とする請求項1に記載のロボット。 In the point string storage unit,
The point which moves the said unit, the point classification performed in the point, and the work command sequence performed before and after the operation | work based on the said point classification are matched and memorize | stored as a point sequence. Robot.
前記ポイント種別定義データ記憶部では、ポイント種別名と、実行する作業命令列と共に、設定データを対応付けて記憶することを特徴とする請求項1または2に記載のロボット。 A setting data storage unit for storing setting data for the work instruction sequence;
The robot according to claim 1 or 2 , wherein the point type definition data storage unit stores setting data in association with a point type name and a work instruction sequence to be executed.
前記独立データ組記憶部は、前記作業命令列がどの独立定義データを参照するかを記憶することを特徴とする請求項1〜3の何れか1項に記載のロボット。 An independent data set storage unit for storing an independent data set obtained by collecting a plurality of condition data for the work instruction sequence;
The independent data set storage unit, a robot according to any one of claim 1 to 3, wherein the storing whether the work instruction sequence refers to any independent definition data.
前記データの閲覧、書換え、または消去の少なくともいずれか1つに関するアクセス権を設けることを特徴とする請求項1〜4の何れか1項に記載のロボット。 For each data to be stored, an account storage unit that stores information on which account the owner is, as well as a set value of the protection mode,
The robot according to any one of claims 1 to 4 , wherein an access right relating to at least one of browsing, rewriting, and erasing of the data is provided.
前記ユニットに実行させる作業の命令列を記憶する作業命令列記憶部ステップと、
前記命令列を、ティーチングの際に指定されるポイント種別名と対応付けてポイント種別定義データとして記憶するポイント種別定義データ記憶ステップと、
前記ユニットを移動させるポイントの位置情報と、ポイント種別名とを対応付けてポイント列として記憶するポイント列記憶ステップを備え、
前記ポイント種別定義データ記憶ステップは、予め記憶したポイント種別定義データを、作業命令列として新たなポイント種別名と対応付け、当該ポイント種別定義データに対して追加または上書きを行い新たなポイント種別定義データとして記憶し、
記憶されたポイント種別名から前記ポイント種別定義データを参照し、
前記ポイント種別定義データに含まれる命令列を実行する実行ステップを備えること、
を特徴とするロボットの制御方法。 In the robot control method that moves the unit to the specified point and causes the unit to work,
A work instruction sequence storage unit step for storing a sequence of operations to be executed by the unit;
A point type definition data storage step for storing the instruction sequence as a point type definition data in association with a point type name specified in teaching;
A point sequence storage step of storing the position information of the point to which the unit is moved and the point type name in association with each other as a point sequence;
The point type definition data storage step associates previously stored point type definition data with a new point type name as a work instruction sequence, and adds or overwrites the point type definition data to create new point type definition data. Remember as
Refer to the point type definition data from the stored point type name,
Comprising an execution step of executing an instruction sequence included in the point type definition data;
A method for controlling a robot characterized by the above.
前記コンピュータに対して、
前記ユニットに実行させる作業の命令列を記憶させ、
前記命令列を、ティーチングの際に指定されるポイント種別名と対応付けて記憶させ、
前記ユニットを移動させるポイントの位置情報と、ポイント種別名とを対応付けてポイント列とし記憶させ、
予め記憶したポイント種別定義データを、作業命令列として新たなポイント種別名と対応付け、当該ポイント種別定義データに対して追加または上書きを行い新たなポイント種別定義データとして記憶させ、
記憶されたポイント種別名から前記ポイント種別定義データを参照し、前記ポイント種別定義データに含まれる命令列を実行させること、
を特徴とするロボットの制御プログラム。 In a control program for a robot that moves a unit to a specified point using a computer and causes the unit to work,
For the computer
Storing a sequence of operations to be executed by the unit;
The instruction sequence is stored in association with the point type name specified in teaching,
The position information of the point to which the unit is moved and the point type name are associated with each other and stored as a point string,
The previously stored point type definition data is associated with a new point type name as a work instruction sequence, added or overwritten on the point type definition data, and stored as new point type definition data.
Referring to the point type definition data from the stored point type name, and executing a sequence of instructions included in the point type definition data;
A robot control program characterized by
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013105665A JP6297792B2 (en) | 2013-05-17 | 2013-05-17 | Robot, robot control method, and robot control program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013105665A JP6297792B2 (en) | 2013-05-17 | 2013-05-17 | Robot, robot control method, and robot control program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014226730A JP2014226730A (en) | 2014-12-08 |
JP6297792B2 true JP6297792B2 (en) | 2018-03-20 |
Family
ID=52127047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013105665A Active JP6297792B2 (en) | 2013-05-17 | 2013-05-17 | Robot, robot control method, and robot control program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6297792B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6562665B2 (en) * | 2015-03-18 | 2019-08-21 | 蛇の目ミシン工業株式会社 | robot |
JP6585391B2 (en) | 2015-06-11 | 2019-10-02 | 蛇の目ミシン工業株式会社 | robot |
JP6585393B2 (en) * | 2015-06-15 | 2019-10-02 | 蛇の目ミシン工業株式会社 | robot |
JP7488637B2 (en) * | 2019-10-01 | 2024-05-22 | 株式会社ジャノメ | ROBOT AND METHOD FOR CONTROLLING ROBOT |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0651820A (en) * | 1992-08-03 | 1994-02-25 | Fujitsu Ten Ltd | Control method for work robot |
JPH06110539A (en) * | 1992-09-29 | 1994-04-22 | Fanuc Ltd | Remote diagnostic device for computer control equipment |
JPH07182023A (en) * | 1993-12-22 | 1995-07-21 | Ricoh Co Ltd | Robot controller |
JPH0991022A (en) * | 1995-09-20 | 1997-04-04 | Yaskawa Electric Corp | Robot controller |
JPH10260712A (en) * | 1997-01-14 | 1998-09-29 | Sekisui Chem Co Ltd | Operation program preparing method for robot |
US6662082B2 (en) * | 2000-08-25 | 2003-12-09 | Janome Sewing Machine Co., Ltd. | System for operating a robot with easy programming |
JP5071361B2 (en) * | 2008-12-09 | 2012-11-14 | 株式会社安川電機 | Method for creating work program for double-arm robot and double-arm robot |
-
2013
- 2013-05-17 JP JP2013105665A patent/JP6297792B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014226730A (en) | 2014-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6297792B2 (en) | Robot, robot control method, and robot control program | |
KR101889631B1 (en) | Device for assisting creation of sequence program | |
EP1736869A2 (en) | Program creation apparatus, program creation method and program | |
CN111971650B (en) | Drawing device and storage medium | |
JP3847585B2 (en) | Editor registration device, registration program, and recording medium recording the same | |
EP0621527A1 (en) | Hierarchically grouped macroinstructions for a graphical user interface | |
JP6337810B2 (en) | Information processing apparatus, information processing method, and program | |
US5995987A (en) | Programming method and programming unit for programmable controller in which only common names for application instructions need be designated by the programmer | |
WO2022208849A1 (en) | Robot control device, robot control system, and robot control method | |
US11360454B2 (en) | Ladder display device for circuit generation using touch panel | |
JP3795357B2 (en) | Editor device, editor program, and recording medium recording the same | |
JPS61114831A (en) | System of storing and displaying data on mold of injection molding machine | |
JP2020089970A (en) | Information processing method and information processor | |
CN105593925B (en) | Programable display and the storage medium for storing its program | |
JP7409852B2 (en) | robot control device | |
JP2786737B2 (en) | Process display device | |
JPH03168801A (en) | Plant operation device | |
JPH06138925A (en) | Numerical controller | |
JP2982370B2 (en) | Operating condition setting method of information processing system | |
JPS6330976A (en) | Macrocommand editing system | |
JP3164680B2 (en) | Screen display data change device | |
JP3823938B2 (en) | Program creation device | |
JP4079601B2 (en) | Matrix data search result display device | |
JPS5958512A (en) | Job selective starting system | |
JPH06149521A (en) | Multiwindow optimizing display system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160502 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170125 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170131 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170321 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20170808 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171106 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20171107 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20171129 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180130 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180222 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6297792 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |