WO1993008957A1 - Method of automatically selecting proximity point in program - Google Patents

Method of automatically selecting proximity point in program Download PDF

Info

Publication number
WO1993008957A1
WO1993008957A1 PCT/JP1992/001392 JP9201392W WO9308957A1 WO 1993008957 A1 WO1993008957 A1 WO 1993008957A1 JP 9201392 W JP9201392 W JP 9201392W WO 9308957 A1 WO9308957 A1 WO 9308957A1
Authority
WO
WIPO (PCT)
Prior art keywords
program
block
robot
current position
set distance
Prior art date
Application number
PCT/JP1992/001392
Other languages
French (fr)
Japanese (ja)
Inventor
Atsushi Watanabe
Takayuki Ito
Original Assignee
Fanuc Ltd
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 Fanuc Ltd filed Critical Fanuc Ltd
Publication of WO1993008957A1 publication Critical patent/WO1993008957A1/en

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/425Teaching successive positions by numerical control, i.e. commands being entered to control the positioning servo of the tool head or end effector
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35428Block selection, search
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36074Display part, select, mark element and edit corresponding block

Definitions

  • the present invention relates to teaching a robot to a program, and more particularly, to correcting and re-teaching program position data.
  • An object of the present invention is to provide a method of automatically selecting a nearby point of a program that can easily detect a block position of a program whose teaching position is to be corrected.
  • a robot is manually moved to an arbitrary position, and a program search command is input to the robot controller, so that the robot controller g G) The current position is obtained, a block in the program that teaches a position within a set distance range from the current position is detected, and the block is displayed on the display device.
  • the robot control device obtains the robot current position S by manually moving the mouth port to an arbitrary position and inputting a program search command to the robot control device g.
  • the program is sequentially read, and it is determined whether or not the teaching position of the block whose position has been taught is within the set distance range from the current position. Displayed on the display device, when the reading of the program is interrupted and the next candidate command is input, the program is read sequentially and a block that teaches the position within the set distance range from the current position g is displayed. So that
  • the robot is manually moved to an arbitrary position, and a program search command is input to the robot control device.
  • the current position is obtained, the program is read sequentially, and the block of the teaching position closest to the current position is obtained from the teaching position of the block whose position is taught, and the block is displayed on the display device. I do.
  • another aspect of the present invention is that the robot is manually moved to an arbitrary position and a program search command is input to the robot control device. , And sequentially read each block of each program stored in the storage device of the robot control device, so that the taught position of the block whose position has been taught is within a set distance range from the current position described above. The program name is displayed on the display device if it is within the set distance range.
  • the robot control device obtains the robot current position by manually moving the robot to an arbitrary position and inputting a program search command to the robot control device.
  • each block of one program stored in the storage device of the robot control device is sequentially read, and the taught position of the block whose position is taught is set within a set distance range from the current position.
  • the program name is displayed if it is within the set distance range.
  • the program block to be stored next is read very closely and the position within the set distance range from the above current position is taught.
  • the program name is displayed on the display device.
  • the robot control device manually moves the mouth port to an arbitrary position and inputs a program search command to the robot control device.
  • each block of each program stored in the storage device of the robot control device is sequentially read, and from the teaching position of the block whose position has been taught, the current position is most frequently found. The block at the closest teaching position is obtained, and the name of the program in which the block is programmed is displayed on the display device.
  • the detected block is displayed on the display device together with the program name.
  • the robot control device when the robot is moved to a position where the operation of the robot is to be changed, and a blob search command is input to the mouth port control device, the robot control device first The current position g of the robot is obtained, then the teaching program is read, and it is determined whether the distance between the teaching position of the block storing the position data and the current position is within the set range. If it is within the setting range, the block is displayed on the display device. Also, when the next candidate command is input, each block of the program is read again and the teaching position data is read. Searches for and displays blocks within the set range distance from the current position.
  • the operating system discovers a block of the program that is trying to correct the position data, and according to another aspect, the position data within a set distance range from the current position. Search for and display the block where the position closest to the current position was taught from the positions stored in the program, not the evening. Further, when a plurality of programs are stored in the robot control device, the above operation can be performed by designating the programs. In addition, the above operation is performed for all programs to be stored, and when a block whose distance from the current position is within the set range or the closest block is detected, the program name is set. Is displayed, and the program name and corresponding block are displayed to make it easier to find the program or block to be modified.
  • FIG. 1 is a flowchart of a program near-point automatic selection process of a first embodiment performed by a processor of a robot control device according to an embodiment of the present invention
  • FIG. 2 is a flowchart of the automatic selection process of the neighboring points of the program according to the second embodiment.
  • FIG. 3 is a flowchart of the automatic selection process of the proximity point of the program according to the third embodiment.
  • FIG. 4 shows the block diagram of the robot control system in each embodiment.
  • FIG. 4 shows an embodiment of a robot control system for carrying out the present invention.
  • the robot control device 10 has a processor 11 and the port processor 11 1 R0M12, which stores a control program for controlling the control device 10, RAM13, which is used for temporary storage of data, etc., a teaching program, various set values, parameters, and the like are stored.
  • Operation panel 16 Robot joint axes 1 to N
  • the axis control devices 17-1 through 17-7-N that control the axis are connected by path 18.
  • the teaching operation panel 16 has an LCD screen, and displays programs and the like here.
  • Each axis controller 17-1 to 17-N is connected to a support motor Ml to Mn for driving each joint axis via a sub-amber 1911 to 1919N, respectively. I have.
  • the robot control system and robot belong to the conventional robot control system and robot, and a detailed description thereof will be omitted.
  • FIG. 1 is a flowchart of a program neighborhood point automatic selection process executed by the processor 11 of the robot controller 10 in the first embodiment of the present invention.
  • the first embodiment is characterized in that a block whose position within a set distance range from the current position of the mouth pot is taught is automatically detected and displayed. Sign.
  • the distance range DO of the position to be detected is set in the robot controller 10 with respect to the current robot position in advance, and the non-volatile memory 14 of the robot controller is set. If a plurality of teaching programs are stored in the same program, set the target teaching program name (program number) from the teaching operation panel 16 or CR TZM DI 15. If only one teaching program is stored, there is no need to set the program name.
  • the position where the teaching position data is to be corrected that is, the position where the robot operation is to be corrected due to a failure in the robot operation or the like can be clearly specified by the robot operation position.
  • the processor 11 of the mouth port controller 10 is processed as shown in the flowchart of FIG.
  • the current position ( ⁇ , yo, ⁇ ) of the robot is determined (step Al).
  • the index i specifying the block in the program is set to "1" (step A2), and the i-th block indicated by the index i is read, and The i-th block is displayed on the display device of the teaching operation panel 16 or CR TZM DI 15 (steps A3 to A4).
  • the read block command is It is determined whether or not it is a program end command.
  • Steps A5 and A6 it is determined whether or not it is an action statement. If it is not an action statement, the index i is set to "1J increment”. (Step A13), return to Step A3, read the next block and display it. The display of the block will be displayed in a stable manner, and will be scrolled when it is fully displayed on the CRT screen. The scanned block is displayed while scanning
  • step SA7 the teaching position (p, yp, zp) taught in this block is read (step SA7), and in step A1, The distance D between the obtained robot current position (x0, y0, ⁇ ) and this teaching position (xp, yp, zp) ⁇ is obtained by performing the following calculation (step A8) c
  • step A9 It is determined whether or not the distance D between the teaching position thus obtained and the current position is equal to or less than the set distance range D0 (step A9). If the range is not ⁇ 3 ⁇ 4, the process returns to step A13 and returns to index i. The processing of step A3 and the following steps are performed with “1” as the increment.
  • the distance between the teaching position and the current position! ) Is within the set range DO, the process proceeds from step A9 to step A10, and the cursor is moved to the position of the display block indicated by the index i, and the block is moved relative to the current position. To inform the operator that the block is teaching a position within the setting range DO.
  • the processor determines whether a next candidate selection command or a termination command has been input by a soft key or a command, and waits for the command to be input from the operation (evening). Steps A11, A12)
  • the operator reads the displayed program block and determines whether or not the corresponding block indicated by the cursor is the block to be corrected.
  • the operator scrolls the CRT screen to read the contents of blocks before and after the block specified by the cursor, and corrects the block specified by the cursor to be corrected. It is only necessary to judge whether or not it is a problem. If the block indicated by this force solver is not the block to be corrected, a next candidate selection command is input, and processor 11 executes step A 13. Then, the index i is incremented by “1”, and then the process of step A3 is executed. Thereafter, this process is executed until a block to be corrected is detected, and when it is detected, an end command is input (step A12), and this process ends.
  • the block when a block to be corrected is detected, the block is corrected to the current position or desired position data and You may end the process. Also, without inputting the end command, the above processing is executed up to the program end, and the current position (x 0, y 0, ⁇ 0) It is also possible to detect a block that has taught a position within the set distance range DO from, and obtain a block to be corrected from the detected block. If a block that teaches a position within the set distance range DO from the current position ( ⁇ , y0, ⁇ ) is not detected, it means that the set range D0 is too small. , In this case, the setting range! It is sufficient to reset the value to 0 and execute the processing of the flowchart in FIG. 1 again.
  • FIG. 2 is a flowchart according to a second embodiment of the present invention.
  • the second embodiment differs from the first embodiment in that a block that has taught the position closest to the current position g is detected and displayed.
  • the processor 11 of the robot control device 10 obtains the current position of the robot, sets the index i for designating the block in the program to "1", and designates it.
  • Read from the i-th block of the programmed program determine whether the command of the block is a program end or an operation statement, and if it is not a program end or an operation statement, set the index i to "1" increment. Read them sequentially from the beginning of the program (steps B1 to B5 and step Bll).
  • the second embodiment does not display the read blocks at this stage.
  • this block Read the position (xp, yP, zp) taught in (Step B6), and find the distance D between the current position and the taught position as in Step A8 of the first embodiment (Step B. 7).
  • the distance stored in the register R (D) is compared with the obtained distance D (step B8).
  • This register setting R (D) is an initial setting, and initially the maximum value that can be stored in the register setting is set. If the distance obtained in step B7 is smaller than the value stored in this register R (D) ('the distance obtained at the beginning is smaller), The distance D obtained in step B7 is stored in R (D), and the value of index i is stored.
  • step B9 The current value of index i is stored in register R (i) (steps B9, B10).
  • step B11 in which the index i is incremented by "1", and the processing from step B3 is executed.
  • step B8 if the distance D between the teaching position obtained in step B7 and the current position is equal to or greater than the value stored in the register R (D), the values in steps B9 and B10 are used. Proceed to step B11 without performing any processing.
  • the register R (D) the taught position data of the block in which the position closest to the current position in the block read up to that point was taught is stored.
  • the value of the index i indicating the position (sequence number) of the block is stored in the register R (i).
  • step B4 the processing shifts to step B12, and the value stored in the register R (i) is displayed on the CRT screen.
  • Register R (i) stores the index value indicating the block that taught the position closest to the current position in the program, so a force solver is added according to the value of register E (i).
  • the block indicated by “” means the block that teaches the position closest to the current position. Usually, this position indicates the position or block to be corrected. Differently, it can detect blocks that are about to be fixed immediately.
  • FIG. 3 is a flowchart of a third embodiment of the present invention.
  • a plurality of teaching programs are stored in the mouth port control device 10 and a teaching program is designated.
  • the feature is that, in all stored teaching programs, a block that has taught a position within the set range DO from the current position where the robot is positioned is detected.
  • a distance range DO to be detected is set in the robot controller 10, the mouth port is manually moved to a position where the mouth port is to be corrected by jog feed or the like, and then a program search command is input.
  • the processor 11 of the control device 10 obtains the current position of the robot, and sets the index j specifying the program and the index i specifying the block in the program to "1", respectively (step Cl). , C 2), and then determine whether or not the program indicated by the indicator j is stored.
  • step C 4 If it exists, read the block indicated by index i of the program indicated by index j (step C 4)> It is determined whether it is a program end or an action statement (steps C5 and C6), and if it is neither a program end nor an action statement, the index i is incremented by “1” (step C5). C13), and return to step C4. If it is an action statement, the position taught by this block is read, the distance D from the current position is obtained (steps C7 and C8), and whether this distance is equal to or less than the set distance range DO is determined.
  • Step C 9 the process goes to Step C 13 to perform the processing of Step C 4 and below. That is, the processing of steps C4 to C9 and step C13 of the same processing as steps SA3 to A9 and step A13 of the first embodiment is performed.
  • step C9 when it is determined in step C9 that the distance D obtained in step C8 is equal to or less than the set distance D0, the program name indicated by the index j and the index i of the program are indicated.
  • the cursor is attached to the block, and is displayed on the CRT screen (Step C10). In this case, too, the block before and after the block indicated by the index i is displayed. Rolling also displays the contents of other blocks. Then, it is determined whether a next candidate command or a termination command has been input (steps Cll, C12), and if a next candidate command has been input (step Cll), the process proceeds to step C13. In the same way as described above, the index i is incremented by 1 and Perform the following process.
  • Step C5 When the block indicating the position in the parentheses is displayed, the next candidate instruction is issued, and the program end of the j-th program is read (step C5), the index j is set to “1”. (Step C15), and sets the index: L to "1" (Step C15), returns to Step C3, and returns to the program indicated by the value of the index j (next Judge whether there is a program, and if it is stored, execute the same processing from step C4 as described above.
  • step C12 The above processing is executed while sequentially updating the index j for the stored teaching programs, and the operator inputs an end command in the middle (step C12), or the above processing is completed for all the stored teaching programs. Then (step C 3), this process ends.
  • the block when the teaching position is within the set distance DO from the current position, the block is displayed.
  • the block is closest to the current position.
  • the block whose position has been taught and the program name to which the block belongs may be displayed.
  • the block of the announcement position closest to the current position is obtained and displayed for each teaching program, and the next teaching program is input to the next position each time a next catch command is input.
  • the block at the closest teaching position may be detected and displayed.
  • the present invention corrects the operation position of the robot when it is desired to correct the operation position, that is, the correction of the teaching position data of the teaching program.
  • the location cannot be easily detected on the teaching program, but the position and posture of the robot to be corrected are naturally known. Can be specified. Then, by moving the robot to the position to be corrected, the robot controller automatically moves the robot within a set distance from the current position of the robot.
  • the block that has been taught, or the block that has taught the nearest position S at the current position is detected and displayed, so the block on the program that is to be easily corrected is displayed. Position can be detected.
  • the blocks that teach the positions within the set distance range are displayed sequentially by inputting the next candidate command. However, it is only necessary to find the target block from among them, and the block can be easily detected.
  • the setting is made from the current position of the robot V in the designated program.
  • the block that teaches the position within the distance range or the block that teaches the position closest to the current position can be displayed, and the block to be corrected is displayed. Can be easily detected.
  • the program name and block that teach the position within the set distance range from the robot's current position or the position that is close to the current position are taught.
  • the block being taught and the teaching program containing this block can also be displayed, so that the object to be corrected can be detected easily and without skill.

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

A method of automatically selecting a proximity point in the program so as to readily detect a block position in the program where a teaching position is to be corrected, in which the robot is moved to a teaching position changing position and a program retrieval instruction is inputted to a control device. Then, the control device determines the current position of the robot (A1) and finds the distance D between a position in which reading of the program is taught and the current position (A3 to A8). When the distance is shorter than a set distance D0 (A9), this block is displayed (A10) with the cursor set at it. The program is further read with successive candidate instructions inputted (A11) and blocks teaching successively detected positions lying within the set distance D0 are displayed in succession. Since a position desired to be changed is known, the robot can easily be positioned there. Because the control device automatically detects a block instructing a teaching position proximate to said changing position, a program correcting position is easily detected. In place of a method of comparing the distance D between said taught position and the current one with a set distance D0, it is possible that distances D between taught positions and the current one are determined one by one and a block indicating the minimum value is specified as the most proximate to the current position.

Description

明 細 書  Specification
プロ グラム近傍点自動選択方法  Automatic selection of program near points
技 術 分 野 . 本発明は、 ロ ボヅ ト に対するプログラムの教示、 特に プログラムの位置データの修正、 再教示に関する。  TECHNICAL FIELD The present invention relates to teaching a robot to a program, and more particularly, to correcting and re-teaching program position data.
背 景 技 術  Background technology
ロボヅ 卜 に対 してすでに教示されたプロ グラム に対 し て、 そのプログラムの位置デ一夕 を修正 しょ う と する と き、 修正 しょ う とする ロボ ッ トの位置 · 姿勢の状態は分 かっていても、 その位置が教示プロ グラム中どこ にある のかはオペレータ に とって明白ではない。 そこで、 従来 は、 教示されたプログラムを表示装置に表示させて、 履 次目で追って修正 しょ う とする対応箇所を探 し出すか、 オペレー夕が記憶してお く か、 記録 しておき、 その記憶 も し く は記録に基づいて対応するプログラム箇所を探 し 出 して いる。  When trying to correct the position of a program that has already been taught to a robot, the position and posture of the robot to be corrected are not known. Even so, it is not clear to the operator where the position is in the teaching program. Therefore, in the past, the program taught was displayed on a display device, and the corresponding part to be corrected later in the course of class was searched for, or stored or recorded by the operator. It finds the corresponding program location based on that memory or record.
しか しながら、 オペレータがプロ グラムの位置と ロ ボ ッ トの位置 · 姿勢との関係を記憶 してお く と い う事は熟 練者に とってはある程度可能ではあって も、 未熟練者に とっては不可能に近いものである。 また、 記録を と つて お く と しても、 その記録を取る こ と事態が煩わ しいもの で、 多大な時間 と労働を必要とする。 プロ グラ ム を表示 装置に表示して初めか ら 目で追って対応箇所を探 し出す のも煩わ しい作業であ り、 1 つ 1 つプロ グラムの各ブロ ヅ クの内容を解析し、 修正 しょ う と するプログラム位置 か否か判断しなければならず、 この場合にも多大な時間 と労儺を必要とする。 特に、 その現場のプログラムに精 通していないものにとっては、 対応箇所をプログラ.ムか ら探し出すことは非常に困難な事項である。 However, it is possible for the skilled operator to memorize the relationship between the position of the program and the position / posture of the robot, but it is possible for the skilled person to do so. This is almost impossible. Also, even if records are kept, it is troublesome to keep records, and it requires a lot of time and labor. Displaying the program on the display device and searching for the corresponding part at a glance from the beginning is also a troublesome task.Analyze and correct the contents of each block of the program one by one. Program location It is necessary to judge whether this is the case or not, and this case also requires a lot of time and labor. In particular, it is very difficult for a person who is not familiar with the program at the site to find the corresponding point from the program.
発 明 の 開 示  Disclosure of the invention
本発明の目的は、 教示位置を修正しょう とするプログ ラムのブロック位置を簡単に検出できるプログラム近傍 点自動選択方法を提洪することにある。  An object of the present invention is to provide a method of automatically selecting a nearby point of a program that can easily detect a block position of a program whose teaching position is to be corrected.
'上記目的を達成するため、 本発明の一態様は、 ロボッ トを任意の位置に手動で移動させ、 プログラム検索指令 をロボッ ト制御装置に入力することにより、 ロボッ ト制 御装 gは口ポッ ト現在位置を求め、 該現在位置よ り設定 距離範囲内にある位置を教示したプログラム中のブロッ クを検出して、 該プロックを表示装置に表示するよう に する。  'In order to achieve the above object, according to one embodiment of the present invention, a robot is manually moved to an arbitrary position, and a program search command is input to the robot controller, so that the robot controller g G) The current position is obtained, a block in the program that teaches a position within a set distance range from the current position is detected, and the block is displayed on the display device.
さらに本発明の別の態様は、 口ポッ トを任意の位蘆に 手動で移動させ、 プログラム検索指令をロボッ ト制御装 gに入力することにより、 ロボッ ト制御装置はロボヅ ト 現在位 Sを求めると^に、 プログラムを順次読み取り、 位置が教示されたブロックの教示位置が、 上記現在位置 よ り設定距離範囲内に有るか否か判断し、 設定距離範囲 内に有る場合には、 このブロヅクを表示装置に表示し、 プログラムの読み取り を中断し次候補指令が入力される とさらにプログラムを順次読み取り、 上記現在位 gよ り 設定距離範囲内に有る位置を教示したブロ ックを表示す るよう にする。 Further, in another aspect of the present invention, the robot control device obtains the robot current position S by manually moving the mouth port to an arbitrary position and inputting a program search command to the robot control device g. In step (1) and (2), the program is sequentially read, and it is determined whether or not the teaching position of the block whose position has been taught is within the set distance range from the current position. Displayed on the display device, when the reading of the program is interrupted and the next candidate command is input, the program is read sequentially and a block that teaches the position within the set distance range from the current position g is displayed. So that
さ らに本発明の別の態様は、 ロボッ ト を任意の位置に 手動で移動させ、 プログラム検索指令をロボッ ト制.御装 置に入力するこ とによ り、 ロボヅ ト制御装置はロボヅ ト 現在位置を求めると共に、 プログラムを順次読み取り、 位置が教示されたブロ ックの教示位置中から、 上記現在 位置に一番近い教示位置のブロ ッ ク を求め、 該ブロ ッ ク を表示装置に表示する。  In another aspect of the present invention, the robot is manually moved to an arbitrary position, and a program search command is input to the robot control device. The current position is obtained, the program is read sequentially, and the block of the teaching position closest to the current position is obtained from the teaching position of the block whose position is taught, and the block is displayed on the display device. I do.
'さ らに本発明の別の態様は、 ロボッ ト を任意の位置に 手動で移動させ プログラム検索指令をロボッ ト制御装 置に入力するこ とによ り、 ロボッ ト制御装置はロボッ ト 現在位置を求めると共に、 該ロボッ ト制御装置の記憶装 置内に記憶する各プログラムの各ブロ ッ クを順次読み取 り、 位置が教示されたブロ ックの教示位置が、 上記現在 位置よ り設定距離範囲内に有るか否か判断し、 設定距離 範囲内に有る場合には、 当該プログラム名を表示装置に 表示する。  Further, another aspect of the present invention is that the robot is manually moved to an arbitrary position and a program search command is input to the robot control device. , And sequentially read each block of each program stored in the storage device of the robot control device, so that the taught position of the block whose position has been taught is within a set distance range from the current position described above. The program name is displayed on the display device if it is within the set distance range.
さらに本発明の別の態様は、 ロボッ ト を任意の位置に 手動で移動させ、 プログラム検索指令をロボッ ト制御装 置に入力するこ とによ り、 ロボッ ト制御装置はロボッ ト 現在位置を求めると共に、 該ロボッ ト制御装置の記憶装 置内に記憶する 1つのプログラムの各ブロ ックを順次読 み取り、 位置が教示されたブロ ッ クの教示位置が、 上記 現在位置よ り設定距離範囲内に有るか否か判断 し、 設定 距離範囲内に有る場合には、 当該プログラム名を表示装 置に表示し、 プログラムの読み取り を中断し次候補指令 が入力される と次ぎに記憶するプログラムのブロ ック.を 頗次読み取り、 上記現在位置よ り設定距離範囲内に.有る 位 を教示したブロックが検出される毎に当該プログラ ム名を表示装置に表示する。 Further, in another aspect of the present invention, the robot control device obtains the robot current position by manually moving the robot to an arbitrary position and inputting a program search command to the robot control device. At the same time, each block of one program stored in the storage device of the robot control device is sequentially read, and the taught position of the block whose position is taught is set within a set distance range from the current position. The program name is displayed if it is within the set distance range. When the next candidate command is input when the program reading is interrupted and the next candidate command is input, the program block to be stored next is read very closely and the position within the set distance range from the above current position is taught. Each time a block is detected, the program name is displayed on the display device.
さらに本凳明の別の態様は、 口ポッ トを任意の位置に 手動で移動させ、 プログラム検索指令をロボッ ト制御装 置に入力することによ り、 ロボヅ ト制御装置は口ポヅ ト 瑭在位置を求めると共に、 該ロボッ ト制御装置の記憶装 置内に記憶する各プログラムの各ブロックを頫次読み取 り、 位置が教示されたブロ ックの教示位置中から、 上記 現在位置に一番近い教示位置のブロックを求め、 該ブロ ヅクがプログラムされているプログラム名を表示装置に 表示する。  Further, another aspect of the present invention is that the robot control device manually moves the mouth port to an arbitrary position and inputs a program search command to the robot control device. In addition to obtaining the current position, each block of each program stored in the storage device of the robot control device is sequentially read, and from the teaching position of the block whose position has been taught, the current position is most frequently found. The block at the closest teaching position is obtained, and the name of the program in which the block is programmed is displayed on the display device.
なお、 好ま しく は、 プログラム名と共に検出されたブ ロックをも表示装置に表示する。  Preferably, the detected block is displayed on the display device together with the program name.
上述のよう に、 本発明の一態様によれば、 ロボッ トの 動作を変更したい位置にロボッ トを移動させ、 ブログラ ム検索指令を口ポッ ト制御装置に入力すると、 ロボヅ ト 制御装置はまず、 ロボッ トの現在位 gを求め、 次に教示 プログラムを読みだし、 位置データを記憶するブロック の教示位置と上記現在位置間の距離が設定範囲内か否か 判断する。 設定範囲内であれば、 そのブロ ックを表示装 置に表示する。 また、 次候補指令が入力される と、 再び プログラムの各ブロ ックを読み進み、 教示位置データが 現在位置から設定範囲距離内にあるブロ ッ ク を探 しだ し 表示する。 以下この処理を続け、 オペレー夕が位置デー 夕 を修正 しょ う とするプロ グラムのブロ ッ クの発見.を容 また、 別の態様によれば、 現在位置か ら設定距離範囲 内の位置デ一夕ではな く、 プログラム中に記憶する位置 デ一夕の中か ら現在位置に最も近い位置デ一夕が教示さ れたブロ ッ ク を探しだ し表示する。 さ ら に、 ロ ボッ ト制 御装置内にプログラムが複数記憶されている場合には、 プログラムを指定する こ と によって上記動作を させる こ とができる。 さ ら には、 記憶するすべてのプロ グラム に 対して上記動作を行い、 現在位置からの距離が設定範囲 内にあるか若 し く は 1 番近いブロ ッ クが検出される と、 そのプログラム名を表示し、 さ ら にはプロ グラ ム名 と対 応ブロ ッ クを表示するよ う に して修正 しょ う とするプロ グラム, ブロ ッ クの発見を容易にする。 As described above, according to one embodiment of the present invention, when the robot is moved to a position where the operation of the robot is to be changed, and a blob search command is input to the mouth port control device, the robot control device first The current position g of the robot is obtained, then the teaching program is read, and it is determined whether the distance between the teaching position of the block storing the position data and the current position is within the set range. If it is within the setting range, the block is displayed on the display device. Also, when the next candidate command is input, each block of the program is read again and the teaching position data is read. Searches for and displays blocks within the set range distance from the current position. Following this process, the operating system discovers a block of the program that is trying to correct the position data, and according to another aspect, the position data within a set distance range from the current position. Search for and display the block where the position closest to the current position was taught from the positions stored in the program, not the evening. Further, when a plurality of programs are stored in the robot control device, the above operation can be performed by designating the programs. In addition, the above operation is performed for all programs to be stored, and when a block whose distance from the current position is within the set range or the closest block is detected, the program name is set. Is displayed, and the program name and corresponding block are displayed to make it easier to find the program or block to be modified.
図 面 の 簡 単 な 説 明  Brief explanation of drawings
図 1 は本発明の一実施例のロボッ ト制御装置のプロセ ッサが実施する第 1 の実施例のプロ グラム近傍点自動選 択処理のフ ローチャー ト、  FIG. 1 is a flowchart of a program near-point automatic selection process of a first embodiment performed by a processor of a robot control device according to an embodiment of the present invention;
図 2 は同第 2 の実施例のプロ グラム近傍点自動選択処 理のフ ローチヤ一 ト、  FIG. 2 is a flowchart of the automatic selection process of the neighboring points of the program according to the second embodiment.
図 3 は同第 3 の実施例のプログラム近傍点自動選択処 理のフ ローチヤ一ト、  FIG. 3 is a flowchart of the automatic selection process of the proximity point of the program according to the third embodiment.
図 4 は同各実施例における ロボヅ ト制御系のブロ ッ ク 図である。 Figure 4 shows the block diagram of the robot control system in each embodiment. FIG.
発明 を実施するための最良 .の方法 図 4は本凳明を実施するロボヅ ト制御系の一実施例で. ロボッ ト制御装置 1 0は、 プロセッサ 1 1を有し、 該ブ 口セッサ 1 1には、 該制御装置 1 0を制御する制御プロ グラムを記億した R 0M 1 2、 データの一時記憶等に利 用される RAM 1 3、 教示プログラム、 各種設定値, パ ラメータ等を記憶する不揮癸性メモ リ 14、 C R T表示 装置付き手動入力装置 (以下 CR TZMD I という ) 1 5 ロボッ ト に動作プログラム等を教示するための教示 操作盤 1 6、 ロボッ トの各関節軸 1〜Nを制御する軸制 御装置 1 7— 1〜 1 7— Nがパス 1 8で接続されている。 なお、 この教示操作盤 1 6は L C Dの画面を有し、 ブロ. グラム等の表示をここで行う。 各軸制御装置 1 7— 1〜 1 7— Nには夫々サ一ボアンブ 1 9一 1〜 1 9一 Nを介 して各関節軸を駆動するサ一ポモータ M l〜M nが接続 されている。  BEST MODE FOR CARRYING OUT THE INVENTION FIG. 4 shows an embodiment of a robot control system for carrying out the present invention. The robot control device 10 has a processor 11 and the port processor 11 1 R0M12, which stores a control program for controlling the control device 10, RAM13, which is used for temporary storage of data, etc., a teaching program, various set values, parameters, and the like are stored. Non-volatile memory 14, Manual input device with CRT display device (hereinafter referred to as CR TZMD I) 15 Teaching for teaching the robot an operation program, etc. Operation panel 16, Robot joint axes 1 to N The axis control devices 17-1 through 17-7-N that control the axis are connected by path 18. The teaching operation panel 16 has an LCD screen, and displays programs and the like here. Each axis controller 17-1 to 17-N is connected to a support motor Ml to Mn for driving each joint axis via a sub-amber 1911 to 1919N, respectively. I have.
上記ロボヅ トの制御系及びロボヅ トは従来のロボヅ ト の制御系及びロボッ ト に属するものであ り、 詳細な説明 は省略する。  The robot control system and robot belong to the conventional robot control system and robot, and a detailed description thereof will be omitted.
図 1は本発明の第 1の実施例における上記ロボッ ト訶 御装置 1 0のプロセヅサ 1 1が実施するプログラム近傍 点自動選択処理のフローチャー トである。 この第 1の実 施例は、 口ポッ ト現在位置から設定距離範囲内の位置が 教示されたブロックを自動的に検出し表示するこ とを特 徴とする。 FIG. 1 is a flowchart of a program neighborhood point automatic selection process executed by the processor 11 of the robot controller 10 in the first embodiment of the present invention. The first embodiment is characterized in that a block whose position within a set distance range from the current position of the mouth pot is taught is automatically detected and displayed. Sign.
まず、 予め、 ロボッ ト現在位置に対 して.検出すべき位 置の距離範囲 D O をロ ボッ ト制御装置 1 0 に設定 し、. ま た、 ロボッ ト制御装置の不揮発性メ モ リ 1 4に複数の教 示プロ グラムが記憶されて いるな らば、 対象となる教示 プログラム名 (プロ グラム番号) を教示操作盤 1 6若 し く は C R TZM D I 1 5か ら設定する。 なお、 教示プロ グラムが 1つ しか記憶されてなければプロ グラム名を設 定'する必要はない。  First, the distance range DO of the position to be detected is set in the robot controller 10 with respect to the current robot position in advance, and the non-volatile memory 14 of the robot controller is set. If a plurality of teaching programs are stored in the same program, set the target teaching program name (program number) from the teaching operation panel 16 or CR TZM DI 15. If only one teaching program is stored, there is no need to set the program name.
そ して、 教示操作盤 1 6 を操作 してロ ボヅ ト をジ ョ グ 送り等で位置データ を修正 しょう とする位置に移動させ る。 なお、 教示位置データ を修正 したい箇所、 すなわち、 ロボッ ト動作上不具合が生 じたなどの理由 によ り ロボッ ト動作を修正 しょう とする箇所は、 ロボッ ト の動作位置 で明白 に指定できる。  Then, operate the teaching operation panel 16 to move the robot to the position where the position data is to be corrected by jog feed or the like. The position where the teaching position data is to be corrected, that is, the position where the robot operation is to be corrected due to a failure in the robot operation or the like can be clearly specified by the robot operation position.
次に、 C R TZM EI I 1 5若 し く は教示操作盤 1 6か らプロ グラム検索指令を入力する と、 口ポッ ト制御装置 1 0のプロセヅサ 1 1 は図 1のフ ローチャー ト に示す処 理を開始 し、 まず、 ロ ボッ ト の現在位置 ( χ θ , y o , ζ θ)を求める (ステヅプ A l ) 。 次に、 プロ グラム中の ブロ ッ ク を指定する指標 i を 「 1 」 にセ ヅ 卜 し ( ステ ツ プ A 2 ) 、 この指標 iで示される i番目のブロ ヅ ク を読 みだ し、 この i番目のブロ ッ ク を教示操作盤 1 6若 し く は C R TZM D I 1 5の表示装置に表示する ( ステ ップ A 3〜A 4 ) 。 そ して、 読み取ったブロ ッ クの指令がブ ログラムエン ドを指令するものか否かを判断し、 プログ ラムエン ドでなければ動作文か否か判断し (ステヅブ A 5, A 6 ) 、 動作文でもなければ指標 iを 「 1 J イ ンク リ メ ン ト し (ステヅブ A 1 3 ) 、 ステヅブ A 3 に戻り次 のブロックを読みそれを表示する。 なお、 ブロ ヅクの表 示は厩次表示されてゆき、 C R T画面一杯に表示される とスクロールされながら読み取ったブロ ックが表示され る o Next, when a program search command is input from the CR TZM EI I 15 or the teaching operation panel 16, the processor 11 of the mouth port controller 10 is processed as shown in the flowchart of FIG. First, the current position (χθ, yo, ζθ) of the robot is determined (step Al). Next, the index i specifying the block in the program is set to "1" (step A2), and the i-th block indicated by the index i is read, and The i-th block is displayed on the display device of the teaching operation panel 16 or CR TZM DI 15 (steps A3 to A4). Then, the read block command is It is determined whether or not it is a program end command. If it is not a program end, it is determined whether or not it is an action statement (steps A5 and A6). If it is not an action statement, the index i is set to "1J increment". (Step A13), return to Step A3, read the next block and display it.The display of the block will be displayed in a stable manner, and will be scrolled when it is fully displayed on the CRT screen. The scanned block is displayed while scanning
一方、 ステップ A 6で読み取ったブロ ックが動作文を 定義したものであれば、 このブロックで教示されている 教示位置 ( p , y p , z p ) を読み取り (ステヅブ S A 7 ) 、 ステップ A 1で求めたロボッ ト現在位置 (x0 , y 0 , ζ θ)とこの教示位置 ( xp , yp , z p ) 閎の距 離 Dを次の演算を行う ことによって求める (ステヅブ A 8 ) c  On the other hand, if the block read in step A6 defines an action statement, the teaching position (p, yp, zp) taught in this block is read (step SA7), and in step A1, The distance D between the obtained robot current position (x0, y0, ζθ) and this teaching position (xp, yp, zp) 閎 is obtained by performing the following calculation (step A8) c
D = { (xp -xO ) 2 + ( y p - y 0 ) 2 D = ((xp -xO) 2 + (yp-y 0) 2
+ ( z P - z 0 ) 2 } 1/2 + (z P-z 0) 2 } 1/2
こう して求められた教示位置と現在位置間の距離 Dが 設定されている距離範囲 D 0 以下か否か判断し (ステツ プ A 9 ) 、 範囲 ί¾でなければステップ A 1 3に戻り指標 iを 「 1」 イ ンク リ メ ン ト と してステヅブ A 3以下の処 理を実行する。 一方、 教示位置と現在位置間の距離!)が 設定範囲 DO 内であると、 ステップ A 9からステップ A 1 0に移行し、 カーソルをこの指標 iで示される表示ブ ロックの位置に移動させ、 該ブロ ヅクが現在位置に対し て設定範囲 D O 内にある位置を教示 して いるブロ ッ クで あるこ と をオペレー夕 に知 らせる。 また、 プロセ ッサは ソフ ト キ一若 し く はコマン ド によって次候補選択指令が 入力されたか、 終了指令が入力されたか判断 し、 ォペ レ —夕から指令が入力されるのを待つ (ステヅブ A 1 1, A 1 2 ) It is determined whether or not the distance D between the teaching position thus obtained and the current position is equal to or less than the set distance range D0 (step A9). If the range is not ί¾, the process returns to step A13 and returns to index i. The processing of step A3 and the following steps are performed with “1” as the increment. On the other hand, the distance between the teaching position and the current position! ) Is within the set range DO, the process proceeds from step A9 to step A10, and the cursor is moved to the position of the display block indicated by the index i, and the block is moved relative to the current position. To inform the operator that the block is teaching a position within the setting range DO. In addition, the processor determines whether a next candidate selection command or a termination command has been input by a soft key or a command, and waits for the command to be input from the operation (evening). Steps A11, A12)
オペレー夕 は表示されたプログラムブロ ッ ク を読み、 カーソルで示される対応ブロ ッ クが修正 しょ う と するブ 口 ヅ クか否かを判断する。 なお、 オペレータは、 C R T 画面をス ク ロールさせて力一ソルで指定されて いるブロ ヅクの前後のブロ ヅ ク 内容を読み取 り、 カーソルで指定 されているブロ ッ クが修正 しょう とするブロ ッ クか否か を判断すればよい。 も し、 この力一ソルで示されるブロ ヅ クが修正しょ う とするブロ ッ クではない場合には、 次 候補選択指令を入力すれば、 プロセ ッサ 1 1はス テ ヅ ブ A 1 3 に移行 し指標 iを 「 1」 イ ンク リ メ ン ト した後ス テツプ A 3移行の処理を実行する。 以下この処理を修正 しょう とするブロ ッ クが検出されるまで実行 し、 検出さ れる と、 終了指令を入力 し (ステップ A 1 2 ) 、 この処 理を終了する。 なお、 このフ ローチャー トでは記載して いないが、 修正 しょ う とするブロ ッ クが検出された と き、 そのブ-ロ ッ ク を現在位置も し く は希望する位置データ に 修正 して この処理を終了する よ う に して も よ い。 また、 終了指令を入力する こ とな く、 プロ グラムエン ド まで上 述した処理を実行し、 順次現在位置 ( x 0 , y 0 , ζ 0) から設定距離範囲 D O 内にある位置を教示したブロック を検出して、 検出されたブロ ックから修正するブロ ヅク を求めるよう にしてもよい。 . なお、 現在位置 ( χ θ , y 0 , ζ θ )から設定距離範囿 D O 内にある位置を教示したブロ ヅクが検出されない場 合には、 設定範囲 D 0 が小さ過ぎたことを意味し、 この 場合には、 設定範囲! 0 を設定し直し、 再度図 1のフロ 一チャー トの処理を実行させるよう にすればよい。 The operator reads the displayed program block and determines whether or not the corresponding block indicated by the cursor is the block to be corrected. The operator scrolls the CRT screen to read the contents of blocks before and after the block specified by the cursor, and corrects the block specified by the cursor to be corrected. It is only necessary to judge whether or not it is a problem. If the block indicated by this force solver is not the block to be corrected, a next candidate selection command is input, and processor 11 executes step A 13. Then, the index i is incremented by “1”, and then the process of step A3 is executed. Thereafter, this process is executed until a block to be corrected is detected, and when it is detected, an end command is input (step A12), and this process ends. Although not described in this flowchart, when a block to be corrected is detected, the block is corrected to the current position or desired position data and You may end the process. Also, without inputting the end command, the above processing is executed up to the program end, and the current position (x 0, y 0, ζ 0) It is also possible to detect a block that has taught a position within the set distance range DO from, and obtain a block to be corrected from the detected block. If a block that teaches a position within the set distance range DO from the current position (χθ, y0, ζθ) is not detected, it means that the set range D0 is too small. , In this case, the setting range! It is sufficient to reset the value to 0 and execute the processing of the flowchart in FIG. 1 again.
図 2は本発明の第 2実施例のフローチヤ一トである。 この第 2実施例は、 現在位 gに一番近い位置を教示した ブロヅクを検出し表示させるものである点が上記第 1 の 実施例と異なるものである。 まず、 ロボッ トを動作位置 を修正しょう とする位置に移動させ、 かつ、 プログラム を指定し、 プログラム検索指令を入力する。 ロボッ ト制 御装置 1 0のプロセッサ 1 1 は、 第 1の実施例と同様に、 ロボヅ トの現在位置を求め、 プログラム中のブロ ヅクを 指定する指標 i を 「 1 」 にセッ ト し、 指定されたプログ ラムの i番目のブロックから読みだし該ブロヅクの指令 がプログラムエン ドか動作文かを判断し、 プログラムェ ン ド又は動作文でなければ、 指標 i を 「 1 」 イ ンク リ メ ン 卜 しプログラムの初めから順次読み出す (ステップ B 1〜: B 5、 およびステップ B l l ) 。 ただし、 この第 2 実施例では第 1の実施例と異なり、 読み出 したブロック を表示するこ とはこの段階では行わない。  FIG. 2 is a flowchart according to a second embodiment of the present invention. The second embodiment differs from the first embodiment in that a block that has taught the position closest to the current position g is detected and displayed. First, move the robot to the position where the operation position is to be corrected, specify the program, and input the program search command. As in the first embodiment, the processor 11 of the robot control device 10 obtains the current position of the robot, sets the index i for designating the block in the program to "1", and designates it. Read from the i-th block of the programmed program, determine whether the command of the block is a program end or an operation statement, and if it is not a program end or an operation statement, set the index i to "1" increment. Read them sequentially from the beginning of the program (steps B1 to B5 and step Bll). However, unlike the first embodiment, the second embodiment does not display the read blocks at this stage.
読み出したブロックが動作文であると、 このブロ ック で教示された位置 ( xp , y P , z p ) を読み込み (ス テヅブ B 6 ) 、 第 1の実施例のステップ A 8 と同様に、 現在位置と教示位置間の距離 Dを求める (ステップ B.7 ) 。 次にレ ジスタ R ( D ) に記憶する距離と求めた距離 D と を比較す る ( ステ ッ プ B 8 ) 。 なお、 こ の レ ジス 夕 R ( D ) は初期設定で、 初めは該レ ジス夕が記憶できる最 大値が設定されている。 ステ ップ B 7で求めた距離がこ の レ ジス タ R ( D ) に記憶す る値よ り 小 さ い と き に は ('初めは求めた距離の方が小さ い) 、 該レジス夕 R ( D ) にステヅブ B 7で求めた距離 Dを格納し、 指標 iの値を 記憶する レジス夕 R ( i ) に現時点の指標 iの値を格納 する (ステヅブ B 9, B 1 0 ) 。 次に、 ステップ B 1 1 に移行 し指標 i を 「 1」 イ ンク リ メ ン ト してステップ B 3以下の処理を実行する。 ま た、 ステップ B 8で、 ステ ッブ B 7で求めた教示位置と現在位置間の距離 Dがレジ スタ R ( D ) に記憶する値以上の と き にはステヅブ B 9, B 1 0の処理を行う こ とな く ステ ップ B 1 1 に移行する。 その結果レジス夕 R ( D ) には、 その時点までに読み込 んだブロ ッ ク において現在位置から最も近い位置が教示 されたブロ ッ クの教示位置データが記憶される こ と にな り、 レジスタ R ( i ) にはそのブロ ッ クの位置 ( シーケ ンス番号) を示す指標 iの値が記憶される こ と になる。 以下、 上記処理を繰り かえ し実行 しプロ グラムエン ド が検出される と (ステ ップ B 4 ) 、 ステ ップ B 1 2に移 行 し、 C R T画面に、 レジスタ R ( i ) に記憶する値に 対応するブロックにカーソルを付して表示すると共に該 ブロック近傍位置のプログラムブロ ックを表示する。 レ ジスタ R ( i ) には、 当該プログラムにおいて現在位置 に最も近い位置を教示したブロックを示した指標の値を 記憶しているから、 該レジスタ E ( i ) の値によって力 一ソルを付して表示されたブロックが現在位置に最も近 い位置を教示しているブロ ックを意味し、 通常この位置 が修正しょう とする位置, ブロックを指すものであるか ら、 第 1の実施例と異なって、 ただちに修正しよう とす るブロヅクを検出することができる。 If the read block is an action statement, this block Read the position (xp, yP, zp) taught in (Step B6), and find the distance D between the current position and the taught position as in Step A8 of the first embodiment (Step B. 7). Next, the distance stored in the register R (D) is compared with the obtained distance D (step B8). This register setting R (D) is an initial setting, and initially the maximum value that can be stored in the register setting is set. If the distance obtained in step B7 is smaller than the value stored in this register R (D) ('the distance obtained at the beginning is smaller), The distance D obtained in step B7 is stored in R (D), and the value of index i is stored. The current value of index i is stored in register R (i) (steps B9, B10). Next, the process proceeds to step B11, in which the index i is incremented by "1", and the processing from step B3 is executed. In step B8, if the distance D between the teaching position obtained in step B7 and the current position is equal to or greater than the value stored in the register R (D), the values in steps B9 and B10 are used. Proceed to step B11 without performing any processing. As a result, in the register R (D), the taught position data of the block in which the position closest to the current position in the block read up to that point was taught is stored. The value of the index i indicating the position (sequence number) of the block is stored in the register R (i). Thereafter, when the above processing is repeated and a program end is detected (step B4), the processing shifts to step B12, and the value stored in the register R (i) is displayed on the CRT screen. To The cursor is attached to the corresponding block and displayed, and the program block near the block is displayed. Register R (i) stores the index value indicating the block that taught the position closest to the current position in the program, so a force solver is added according to the value of register E (i). The block indicated by “” means the block that teaches the position closest to the current position. Usually, this position indicates the position or block to be corrected. Differently, it can detect blocks that are about to be fixed immediately.
図 3は本発明の第 3の実施例のフローチャー 卜で、 こ の第 3の実施例は、 口ポッ ト制御装置 1 0 に複数の教示 プログラムが格納されており、 かつ、 教示プログラムを 指定することなく、 記憶する全ての教示プログラムにお いてロボッ トを位置付けた現在位置から設定範囲 D O 内 にある位置を教示したブロックを検出することを特徴と する。  FIG. 3 is a flowchart of a third embodiment of the present invention. In the third embodiment, a plurality of teaching programs are stored in the mouth port control device 10 and a teaching program is designated. The feature is that, in all stored teaching programs, a block that has taught a position within the set range DO from the current position where the robot is positioned is detected.
まず、 ロボッ ト制御装置 1 0に検出すべき距離範囲 D O を設定し、 ジョグ送り等で手動で口ポッ トを修正し よう とする位置に移動させた後、 プログラム検索指令を 入力すると、 ロボヅ ト制御装置 1 0のプロセッサ 1 1 は、 ロボッ トの現在位置を求め、 プロラムを指定する指標 j 及びプログラム中のプロ ッ クを指定する指標 i を夫々 「 1」 にセヅ 卜 し (ステップ C l, C 2 ) 、 次にこの指 標 j で示されるプログラムが記億されているか否か判断 し (初めは 1番目のプログラムで有り通常存在する) 、 存在するな らば、 こ.の指標 j で示されるプログラムの指 標 iで示されるブロ ヅ ク を読みだ し (ステップ C 4 ) > プログラムエン ドか否か, 動作文か否か判断し ( ステ ツ プ C 5, C 6 ) 、 プロ グラムエン ドでも動作文でもなけ れば指標 iを 「 1」 イ ンク リ メ ン ト し (ステップ C 1 3 ) 、 ステップ C 4に戻る。 また、 動作文であれば、 このブロ ッ クで教示された位置を読みだ し、 現在位置との距離 D を求め ( ステップ C 7, C 8 ) 、 この距離が設定距離範 囲 D O 以下か否か判断し (ステップ C 9 ) 、 設定距離範 囲 D 0以下でなければステップ C 1 3 に移行 しステ ヅブ C 4以下の処理を行う。 すなわち第 1の実施例のステップ S A 3〜A 9及びステヅブ A 1 3 と同等の処理のステ ツ プ C 4〜 C 9及びステ ヅプ C 1 3の処理を行う。 First, a distance range DO to be detected is set in the robot controller 10, the mouth port is manually moved to a position where the mouth port is to be corrected by jog feed or the like, and then a program search command is input. The processor 11 of the control device 10 obtains the current position of the robot, and sets the index j specifying the program and the index i specifying the block in the program to "1", respectively (step Cl). , C 2), and then determine whether or not the program indicated by the indicator j is stored. (Initially, this is the first program and usually exists.) If it exists, read the block indicated by index i of the program indicated by index j (step C 4)> It is determined whether it is a program end or an action statement (steps C5 and C6), and if it is neither a program end nor an action statement, the index i is incremented by “1” (step C5). C13), and return to step C4. If it is an action statement, the position taught by this block is read, the distance D from the current position is obtained (steps C7 and C8), and whether this distance is equal to or less than the set distance range DO is determined. (Step C 9), and if it is not less than the set distance range D 0, the process goes to Step C 13 to perform the processing of Step C 4 and below. That is, the processing of steps C4 to C9 and step C13 of the same processing as steps SA3 to A9 and step A13 of the first embodiment is performed.
一方、 ステ ップ C 9で、 ステップ C 8で求めた距離 D が設定距離 D 0 以下と判断された場合には、 指標 j で示 されるプログラム名 と、 このプロ グラムの指標 iで示さ れるブ口 ヅ ク にカーソルを付 してを C R T画面に表示す る (ステヅプ C 1 0 ) 、 この場合に も、 指標 iで示され る当該ブロ ッ ク と共に前後のブロ ッ クが表示されス ク ロ ールする こ と によ り 他のブロ ッ クの内容も表示される。 そ して、 次候補指令か終了指令が入力されたか否か判断 し (ステップ C l l, C 1 2 ) 、 次候補指令が入力さ れ る と (ステップ C l l ) 、 ステップ C 1 3 に移行 し前述 同様指標 iを 「 1」 イ ンク リ メ ン ト してステップ C 3以 下の処理を実行する。 On the other hand, when it is determined in step C9 that the distance D obtained in step C8 is equal to or less than the set distance D0, the program name indicated by the index j and the index i of the program are indicated. The cursor is attached to the block, and is displayed on the CRT screen (Step C10). In this case, too, the block before and after the block indicated by the index i is displayed. Rolling also displays the contents of other blocks. Then, it is determined whether a next candidate command or a termination command has been input (steps Cll, C12), and if a next candidate command has been input (step Cll), the process proceeds to step C13. In the same way as described above, the index i is incremented by 1 and Perform the following process.
以下頫次、 現在位置から設定距離!)内にある位置を教 示したブロックが表示され、 かつ次候補指令が指令され、 j 番目のプログラムのプログラムェン ドが読み取られる と (ステップ C 5 ) 、 指標 j を 「 1」 イ ンク リ メ ン ト し (ステップ C 1 4 ) 、 かつ、 指標: Lを 「 1 」 にセッ ト し て (ステップ C 1 5 ) 、 ステヅプ C 3 に戻り、 指標 j で の値で示されるプログラム (次のプログラム) があるか 判断し、 記億されていれば、 前述同様のステップ C 4以 下の処理を実行する。  Below 頫 Next, set distance from current position! When the block indicating the position in the parentheses is displayed, the next candidate instruction is issued, and the program end of the j-th program is read (step C5), the index j is set to “1”. (Step C15), and sets the index: L to "1" (Step C15), returns to Step C3, and returns to the program indicated by the value of the index j (next Judge whether there is a program, and if it is stored, execute the same processing from step C4 as described above.
以下記憶教示プログラムに対して順次指標 j を更新し ながら上記処理を実行し、 オペレータが途中で終了指令 を入力するか (ステップ C 1 2 ) 、 全ての記憶教示プロ グラムに対して上記処理を終了すると (ステップ C 3 ) 、 この処理を終了する。  The above processing is executed while sequentially updating the index j for the stored teaching programs, and the operator inputs an end command in the middle (step C12), or the above processing is completed for all the stored teaching programs. Then (step C 3), this process ends.
なお、 上記第 3の実施例では、 教示位置が現在位置よ り設定距離 D O 内にある場合にそのブロックを表示する よう にしたが、 第 2の実施例と同様に現在位置に一番近 い位置が教示されたブロック及びそのブロ ックが属する プログラム名を表示するよう にしてもよい。 この場合に おいても、 各教示プログラム毎に現在位置に一番近い敦 示位置のプロックを求め表示し、 次候捕指令が入力され る毎に次の教示プログラムに対して現在位置に一番近い 教示位置のブロ ックを検出して表示するよう に してれけ もよい。 以上、 各実施例に示 したよ う に、 本発明は、 ロ ボッ ト の動作位置を修正 した い と き、 すなわち、 教示プロ グラ ムの教示位置デ一夕 を修正 したい と き、 その修正 した い 箇所は教示プロ グラム上では簡単に検出する こ とができ ないが、 その修正 しょ う とするロ ボヅ 卜 の位置 · 姿勢は. 当然分かって いるものであるから、 その位置は簡単に指 定する こ とができる。 そ して、 ロ ボヅ ト を この修正する 位置に移動させてお く こ とで、 ロ ボッ ト制御装置が自動 的に該ロ ポ ト の現在位置か ら設定距離範囲内にある位 置を教示 したブロ ッ ク、 も し く は現在位置にも っ と も近 い位 Sを教示 したブロ ッ ク を検出 して表示するか ら、 簡 単に修正 しょ う とするプロ グラム上のブロ ッ クの位置を 検出する こ とができる。 ま た、 現在位置から設定距離範 囲内にあるブロ ッ ク を表示する場合には、 次候補指令を 入力する こ と によって、 設定距離範囲内の位置を教示 し たブロ ッ クを順次表示するので、 この中から 目的 とする ブロ ッ ク を求めればよいこ と にな り、 簡単に検出する こ とができ る。 In the third embodiment, when the teaching position is within the set distance DO from the current position, the block is displayed. However, similar to the second embodiment, the block is closest to the current position. The block whose position has been taught and the program name to which the block belongs may be displayed. In this case as well, the block of the announcement position closest to the current position is obtained and displayed for each teaching program, and the next teaching program is input to the next position each time a next catch command is input. The block at the closest teaching position may be detected and displayed. As described above, as described in each of the embodiments, the present invention corrects the operation position of the robot when it is desired to correct the operation position, that is, the correction of the teaching position data of the teaching program. The location cannot be easily detected on the teaching program, but the position and posture of the robot to be corrected are naturally known. Can be specified. Then, by moving the robot to the position to be corrected, the robot controller automatically moves the robot within a set distance from the current position of the robot. The block that has been taught, or the block that has taught the nearest position S at the current position is detected and displayed, so the block on the program that is to be easily corrected is displayed. Position can be detected. In addition, when displaying blocks within the set distance range from the current position, the blocks that teach the positions within the set distance range are displayed sequentially by inputting the next candidate command. However, it is only necessary to find the target block from among them, and the block can be easily detected.
さ ら に、 ロ ボッ ト制御装置内に複数の教示プログラム が格納されている場合には、 教示プログラムを指定する こ と によって、 その指定プロ グラムの中において、 ロ ボ V 卜の現在位置から設定距離範囲内の位置を教示 して い るブロ ッ ク、 も し く は現在位置に最も近い位置を教示 し ているブロ ッ ク を表示させる こ とができ るので、 修正 し よ う とするブロ ッ ク を簡単に検出する こ とができ る。 ま た、 記億している全ての教示プログラムにおいて、 ロボ ッ 卜の現.在位置から設定距離範囲内の位置を教示してい るプログラム名及びブロック、 も しく は現在位置に考も 近い位置を教示しているブロック とこのブロヅクを含む 教示プログラムを表示することもできるので、 修正しよ う とする対象が簡単に、 かつ熟練を要さず検出するこ と ができる。 Further, when a plurality of teaching programs are stored in the robot control device, by specifying the teaching program, the setting is made from the current position of the robot V in the designated program. The block that teaches the position within the distance range or the block that teaches the position closest to the current position can be displayed, and the block to be corrected is displayed. Can be easily detected. Ma Also, in all the teaching programs that are stored, the program name and block that teach the position within the set distance range from the robot's current position or the position that is close to the current position are taught. The block being taught and the teaching program containing this block can also be displayed, so that the object to be corrected can be detected easily and without skill.

Claims

請 求 の 範 囲 The scope of the claims
1 . ロボヅ ト を任意の位置に手動で移動させ、 プロ グラ ム検索指令を ロ ボッ ト制御装置に入力する こ と に よ り、 ロ ボッ ト制御装置はロ ボッ ト現在位置を求め、 該現在位 置よ り設定距離範囲内にある位置を教示 したプロ グラ ム 中のブロ ッ ク を検出 して、 該ブロ ッ ク を表示装置に表示 するこ と を特徴とするプロ グラム近傍点自動選択方法。 1. By manually moving the robot to an arbitrary position and inputting a program search command to the robot controller, the robot controller obtains the robot current position and obtains the current robot position. Detecting a block in a program that teaches a position within a set distance range from the position, and displaying the block on a display device, the method for automatically selecting a neighboring point of a program. .
2 . プロ グラム中のブロ ッ ク を検出 し表示装置に表示 し, そのプロ ヅ クの位置デ一夕 を修正するよ う に した請求の 範囲第 1 項記載のプログラム近傍点自動選択方法。 2. The method according to claim 1, wherein a block in the program is detected and displayed on a display device, and the position of the block is corrected.
3 . 現在位置よ り設定距離範囲内にある位置を教示 した ブロ ッ クが検出されなかった場合は、 その設定距離を大 きな値に設定 し直すこ とを特徴とする請求の範囲第 1 項 記載のプログラム近傍点自動選択方法。  3. If a block that teaches a position within a set distance range from the current position is not detected, the set distance is reset to a larger value. Item automatic selection method of program neighborhood point described in.
4 . ロボヅ ト を任意の位置に手動で移動させ、 プロ グラ ム検索指令をロボヅ ト制御装置に入力する こ と によ り、 ロボッ ト制御装置はロ ボッ ト現在位置を求める と共に、 プログラムを順次読み取り、 位置が教示されたブロ ッ ク の教示位置が、 上記現在位置よ り設定距離範囲内に有る か否か判断し、 設定距離範囲内に有る場合には、 このブ 口 ヅ ク を表示装置に表示し、 プロ グラムの読み取 り を中 断 し次候補指令が入力される と さ ら にプロ グラ ム を順次 読み取 り、 上記現在位置よ り 設定距離範囲内に有る位置 を教示 したブロ ヅ ク を表示するよ う に した こ と を特徴 と するプロ グラム近傍点自動選択方法。 4. By manually moving the robot to an arbitrary position and inputting a program search command to the robot controller, the robot controller obtains the robot current position and sequentially executes the program. It is determined whether the taught position of the block whose reading and position has been taught is within the set distance range from the above current position, and if it is within the set distance range, this block is displayed on the display device. Is displayed, the reading of the program is interrupted, and when the next candidate command is input, the program is read sequentially, and a block that teaches a position within the set distance range from the above current position is taught. The automatic selection method of the proximate point of a program, characterized in that the program is displayed.
5 . 現在位置から設定距離範囲内にある位置を教示した ブロックが検出されなかった場合には、. その設定距離を 大きな値に設定し直すことを特徴とする請求の範囲.第 4 項記載のプログラム近傍点自動選択方法。 5. If no block teaching a position within the set distance range from the current position is not detected, the set distance is reset to a large value. Automatic selection method of near point of program.
6 . ロボヅ ト を任意の位置に手動で移動させ、 ブログラ ム検索指令をロボッ ト制御装置に入力することによ り、 ロポッ ト制御装置はロボッ ト現在位置を求める と共に、 プログラムを順次読み取り、 位置が教示されたブロ ック の教示位 S中から、 上記現在位置に一番近い教示位置の ブロックを求め、 該ブロックを表示装置に表示するよう に したことを特徵とするプログラム近傍点自動選択方法。 6. By manually moving the robot to an arbitrary position and inputting a program search command to the robot controller, the robot controller obtains the robot's current position, reads the program sequentially, and reads the program. A block at the teaching position closest to the current position from the teaching position S of the block taught by the program, and displaying the block on a display device. .
7. ロボヅ ト を任意の位置に手動で移動させ、 プログラ ム検索指令をロポッ ト制御装置に入力することによ り、 ロポッ 卜制御装置は口ポッ ト現在位置を求める と共に、 該ロポッ ト制御装置の記憶装置内に記憶する各プロダラ 厶の各ブロックを順次読み取り、 位置が教示されたブロ ックの教示位置が、 上記現在位置よ り設定距離範囲内に 有るか否か判新し、 設定距離範囲内に有る場合には、 当 該プログラム名を表示装置に表示するこ とを特徴とする プログラム近傍点自動選択方法。 7. By manually moving the robot to an arbitrary position and inputting a program search command to the robot controller, the robot controller obtains the current position of the mouth port and obtains the current position of the mouth controller. Each block of each program stored in the storage device is sequentially read, and it is determined whether or not the taught position of the block whose position has been taught is within the set distance range from the current position, and the set distance is determined. A program near point automatic selection method, wherein the program name is displayed on a display device if it is within the range.
8 . 現在位置よ り設定距離範囲内にある位置を教示した ブロックが検出されなかった場合は、 その設定距離を大 きな値に設定し直すこ とを特徴とする請求の範囲第 7項 記載のプログラム近傍点自動選択方法。  8. If no block that has taught a position within the set distance range from the current position is not detected, the set distance is reset to a larger value. Automatic selection method of program neighborhood point.
9 . ロボヅ 卜を任意の位置に手動で移動させ、 プログラ ム検索指令をロ ボッ ト制御装置に入力する こ と によ り、 ロボッ ト制御装置はロ ボッ ト現在位置を求める と共に、 該.ロボッ ト制御装置の記憶装置内に記憶する 1 つのプロ グラムの各ブロ ッ ク を順次読み取 り、 位置が教示された ブロ ッ クの教示位置が、 上記現在位置よ り設定距離範囲 内に有るか否か判断 し、 設定距離範囲内に有る場合には. 当該プログラム名を表示装置に表示 し、 プログラムの読 み取り を中断 し次候補指令が入力される と次ぎに記憶す るプロ グラムのブロ ッ クを順次読み取 り、 上記現在位置 よ り設定距離範囲内に有る位置を教示したブロ ッ クが検 出される毎に当該プロ グラム名を表示装置に表示する よ う に したこ と を特徴とするプログラム近傍点自動選択方 法。 9. Manually move the robot to the desired position and By inputting a robot search command to the robot controller, the robot controller obtains the robot current position and obtains one program stored in the storage device of the robot controller. Each block is read sequentially, and it is determined whether or not the taught position of the block whose position has been taught is within the set distance range from the current position, and if the taught position is within the set distance range. The program name is displayed on the display device.When reading of the program is interrupted and the next candidate command is input, the program blocks to be stored next are sequentially read and within the set distance range from the above current position. Automatically selecting a nearby point of a program, wherein the program name is displayed on a display device every time a block that teaches a position in the program is detected.
1 0 . 現在位置よ り設定距離範囲内にある位置を教示 し たブロ ッ クが検出されなかった場合は、 その設定距離を 大きな値に設定 し直すこ と を特徴とする請求の範囲第 9 項記載のプロ グラム近傍点自動選択方法。  10. If no block that has taught a position within a set distance range from the current position is not detected, the set distance is reset to a larger value. Automatic selection method of program neighboring points described in section.
1 1 . ロボッ ト を任意の位置に手動で移動させ、 プロ グ ラム検索指令をロボッ ト制御装置に入力する こ と によ り、 ロボヅ ト制御装置は口 ポッ ト現在位置を求める と共に、 該ロボッ ト制御装置の記憶装置内に記憶する各プロ グラ ムの各ブロ ッ ク を順次読み取 り、 位置が教示されたブロ ッ クの教示位置中か ら、 上記現在位置に一番近い教示位 置のブロ ッ ク を求め、 該ブロ ッ クがプロ グラム されて い るプロ グラム名を表示装置に表示する よ う に した こ と を 特徵とするプログラム近傍点自動選択方法。 1 1. By manually moving the robot to an arbitrary position and inputting a program search command to the robot controller, the robot controller obtains the current position of the mouth port and obtains the robot's current position. Each block of each program stored in the storage device of the controller is sequentially read, and the teaching position closest to the current position is selected from the teaching positions of the blocks whose positions have been taught. A block is obtained, and the name of the program in which the block is programmed is displayed on the display device. A special program near point automatic selection method.
1 2. プログラム名と共に検出されたブロックをも表示 装置に表示することを特徴とする請求の範囲第 1 1 ^記 載のプログラム近傍点自動選択方法。  1 2. The method according to claim 11, wherein the detected block is also displayed on the display device together with the program name.
δ δ
PCT/JP1992/001392 1991-11-08 1992-10-27 Method of automatically selecting proximity point in program WO1993008957A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP3/319575 1991-11-08
JP31957591A JPH05134738A (en) 1991-11-08 1991-11-08 Program approximation point automatic selection system

Publications (1)

Publication Number Publication Date
WO1993008957A1 true WO1993008957A1 (en) 1993-05-13

Family

ID=18111796

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1992/001392 WO1993008957A1 (en) 1991-11-08 1992-10-27 Method of automatically selecting proximity point in program

Country Status (2)

Country Link
JP (1) JPH05134738A (en)
WO (1) WO1993008957A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2624134B2 (en) * 1993-07-12 1997-06-25 村田機械株式会社 Loader teaching method and teaching operation box
WO1997002114A1 (en) * 1995-07-05 1997-01-23 Fanuc Ltd Apparatus for controlling movement of robot and method of controlling movement of robot
JP6081981B2 (en) * 2014-12-19 2017-02-15 ファナック株式会社 Numerical control device having automatic display means of teaching program
CN107443389B (en) 2016-05-31 2019-12-31 发那科株式会社 Robot control device and robot control method
JP6470326B2 (en) 2017-01-31 2019-02-13 ファナック株式会社 Control device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04112211A (en) * 1990-08-31 1992-04-14 Mitsubishi Electric Corp Detection of taught position and locus

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58155188A (en) * 1982-03-08 1983-09-14 新明和工業株式会社 Industrial robot
JP2811444B2 (en) * 1987-10-20 1998-10-15 株式会社三協精機製作所 How to modify program points

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04112211A (en) * 1990-08-31 1992-04-14 Mitsubishi Electric Corp Detection of taught position and locus

Also Published As

Publication number Publication date
JPH05134738A (en) 1993-06-01

Similar Documents

Publication Publication Date Title
US5313571A (en) Apparatus for storing and displaying graphs
WO1993008957A1 (en) Method of automatically selecting proximity point in program
JPH08304581A (en) Device and method for plant inspection support
US10705489B2 (en) Controller
WO1994009422A1 (en) Method for teaching position to robot
CN116197894A (en) Program creation device and program
JPH0746288B2 (en) Control method and device for robot with hand vision
JPH05265533A (en) Method for controlling robot
JPH1185446A (en) Method for displaying trend graph
JPH05127720A (en) Offline instruction device for robot
US20020085036A1 (en) Derived data display adjustment system
JPH0747209B2 (en) Welding condition automatic setting device
JPH11104982A (en) Teaching method of robot
JP3177489B2 (en) Rating adding device and rating adding method for house evaluation calculation
JP2681815B2 (en) Equipment control processor
JPH09114506A (en) Program managing device
JP2000351070A (en) Setting method and system for welding condition
JPH1133963A (en) Welding robot operation simulating and displaying device
JPH0896001A (en) Flowchart editing device
JPH0614915A (en) Method for retrieving and displaying slice image in ct device
US20240116191A1 (en) Robot control device, robot control system, and robot control method
JP2921228B2 (en) Programmable controller
JPH0944227A (en) Robot teaching device
JP2842511B2 (en) Form creation device
JP2815270B2 (en) CAD system with dimension line editing function

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): KR US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB GR IE IT LU MC NL SE

122 Ep: pct application non-entry in european phase