Robot control device and robot control method
By independently interpreting and executing action commands and logical commands in the robot control device, the complexity problem caused by the association of logical commands and teaching positions in the prior art is solved, and the function of logical commands being executed at any position and at a time is realized, which improves the flexibility and maintenance of the system.
Patent Information
- Application Number
- CN202011030263.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-10-09
- Filing Date
- 2020-09-27
- Publication Date
- 2025-05-23
- Estimated Expiration
- 2040-09-27
AI Technical Summary
In the prior art, the robot control device needs to associate the logical commands with the robot's teaching position, resulting in the teaching program becoming complex and large when continuously teaching a short-pitch processing interval, and the logic commands cannot be executed regularly at any position.
By introducing an action command interpretation unit, a logic command interpretation unit and a command execution unit into the robot control device, the action command and logic command can be independently interpreted and executed, so that the logic command can be executed at any position and at a time, and is free from the limitations of the action command.
It realizes the independence of logical commands, can be executed at any location and at a time, simplifies teaching procedures, improves maintenance and visibility, and reduces the complexity of robot action planning processing.
Smart Images

Figure CN112643647B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a robot control device and a robot control method, and more particularly to a robot control device and a robot control method capable of executing a logic command for controlling a machining process at any position in an industrial robot, independently of the execution status of a teaching program for robot motion. Background Art
[0002] Fig. 7A Shows an example of a teaching program for controlling a robot. Fig. 7A In the example shown, for the command to move from the starting point P[1] to the end point P[8], the combined motion command and teaching position are inserted at the position where the logic command is to be executed. Figure 7B yes Fig. 7A In various robot applications that involve processing in conjunction with a robot on a robot trajectory, such as laser processing, arc welding, and discrete welding, a robot control device that controls the robot generally generates a program such as Fig. 7A The teaching program shown in the figure is used to teach the robot movements.
[0003] In more detail, in Fig. 7AIn the teaching program shown, the first line defines that the robot starts moving to the teaching position P[1] at a speed of 500 mm / s. The second line defines that the robot starts moving to the next teaching position P[3] without stopping at the teaching position P[2], and sets the processing called DO[1] to start (ON) at the teaching position P[2]. Here, the teaching position P[2] is the position where the logic command DO[1] is to be executed. In addition, "CNT100" indicates that the action starts at the teaching position P[2] without stopping and the action starts at the next teaching position P[3], and "100" indicates the overlap of the action defined in the previous line and the operation defined in the current line. The third line defines that the action starts at the teaching position P[3] without stopping and the action starts at the next teaching position P[4], and sets the processing called DO[1] to end (OFF) at the teaching position P[3]. Line 4 defines the action of starting the next teaching position P[5] without stopping at the teaching position P[4], and setting the processing process called DO[2] to start at the teaching position P[4]. Line 5 defines the action of starting the next teaching position P[6] without stopping at the teaching position P[5], and setting the processing process called DO[2] to end at the teaching position P[5]. Line 6 defines the action of starting the next teaching position P[7] without stopping at the teaching position P[6], and setting the processing process called DO[3] to start at the teaching position P[6]. Line 7 defines the action of starting the next teaching position P[8] without stopping at the teaching position P[7], and setting the processing process called DO[3] to end at the teaching position P[7]. Line 8 defines stopping the movement of the robot at the teaching position P[8].
[0004] At this time, the robot control device is the communication and serial communication of input and output signals such as DI (Digital Input) / DO (Digital Output), AI (Analogue Input) / AO (Analogue Output) between the robot and external peripheral devices (various application control devices such as PLC (Programmable Logic Controller) and laser oscillators), thereby controlling the processing process such as laser welding in conjunction with the robot's actions.
[0005] Patent document 1 discloses another example of a teaching program. In the technology of patent document 1, as shown in the drawing of patent document 1, a teaching program includes a line of robot motion commands, such as a line of commands for starting / ending welding gas and arc, and in the line of motion commands, after defining a teaching point equivalent to a welding position, etc., arc welding is started / ended according to the start / end commands of welding gas and arc.
[0006] Patent Document 1: Japanese Patent Application Publication No. 2009-181526 Summary of the invention
[0007] As described above, various commands are taught based on the teaching position of the robot by the teaching program, and therefore there is a limitation that the logic commands for controlling the processing process such as laser welding must be associated with the teaching position of the robot.
[0008] Fig. 8A This is a conceptual diagram showing an example where a logic command is not associated with a teaching position. Fig. 8A In the example, only two points, P[1] and P[8], are shown as teaching positions, but the "start" and "end" of each of the logic commands DO[1], DO[2], and DO[3] are not associated with either P[1] or P[8]. In general teaching programs, it is not possible to make the logic commands independent of the teaching positions.
[0009] In particular, when continuously teaching machining sections with short pitches, the number of robot teaching positions must be increased by the number of starting ends and ending ends of the machining sections, so the teaching program becomes complicated and large, which is not preferable from the perspective of maintenance.
[0010] In addition, when the robot is taught positions too closely, the robot's motion plan processing may be delayed and the cycle time may increase.
[0011] Furthermore, since the logic command needs to be associated with the robot's teaching position, it needs to be integrated with the execution order of the robot's motion command line. Due to this limitation, the execution position of the processing process is usually limited to the interval of the teaching position before and after the line, so the signal cannot be output at any timing.
[0012] For example, Figure 8B This is a conceptual diagram showing an example in which the order of action commands is different from the order of logic commands. Figure 8B In the example, the "Start" of the logic command DO[1] is executed at the teaching position P[2], and the "End" of the logic command DO[1] is executed at the teaching position P[3], but then the "Start" of the logic command DO[2] is executed between the "Open" of DO[1] and the "End" of DO[1].
[0013] However, in the existing teaching program, according to the order of motion commands, DO[1] is "opened" at the teaching position P[2], DO[1] is "ended" at the teaching position P[3], and then DO[2] is "started" at a teaching position after the teaching position P[3]. Figure 8B As shown, logic commands cannot be executed in an order that is different from the order of action commands.
[0014] An object of the present invention is to provide a robot control device and a robot control method, wherein a logic command can be executed at an arbitrary position and timing independently of an action command (teaching position) of the robot.
[0015] One embodiment of the present invention is a robot control device, comprising: a motion command interpretation unit, which interprets a motion command program that records the robot's teaching motion and teaching position to generate a motion command; a logic command interpretation unit, which interprets a logic command program that records a logic command for instructing the robot to perform a processing process and an execution position of the logic command independently of the teaching motion and the teaching position to generate a logic command including the execution position; and a command execution unit, which executes the motion command and the logic command.
[0016] According to one embodiment, the logic command can be independent of the motion command (teaching position) of the robot and executed at an arbitrary position and timing. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] Figure 1 It is an overall structural diagram of a robot control system according to an embodiment.
[0018] Figure 2 This is a functional block diagram of a robot control device according to one embodiment.
[0019] Figure 3A It is a diagram showing an example of a machining program used by a robot control device according to an embodiment.
[0020] Figure 3B This is a conceptual diagram showing the content of a machining program used by a robot control device according to one embodiment.
[0021] Figure 4 It is a diagram showing an example of a machining program used by a robot control device according to an embodiment.
[0022] Figure 5 It is a diagram showing an example of a motion trajectory and a processing section of a robot controlled by a robot control device according to an embodiment.
[0023] Fig. 6A It is a diagram showing an example of a motion trajectory and a processing section of a robot controlled by a robot control device according to an embodiment.
[0024] Figure 6B It is a diagram showing a method of adjusting the machining start timing by a robot control device in the related art.
[0025] Figure 6CIt is a diagram showing a method of adjusting the machining start timing by a robot control device according to an embodiment.
[0026] Fig. 7A This is a diagram showing an example of a processing program used in the prior art.
[0027] Figure 7B This is a conceptual diagram showing an example of the relationship between the teaching position and the start / end point of the machining process based on a machining program used in the conventional art.
[0028] Fig. 8A This is a conceptual diagram showing an example of the relationship between the teaching position and the start / end point of the machining process, which is impossible in the conventional technology.
[0029] Figure 8B This is a conceptual diagram showing an example of the relationship between the teaching position and the start / end point of the machining process, which is impossible in the conventional technology. DETAILED DESCRIPTION
[0030] Below, refer to Figure 1 to Figure 6C Embodiments of the present invention will be described.
[0031] [1. Configuration of Embodiment]
[0032] Figure 1 The overall structure of a robot control system 1 according to an embodiment of the present invention is shown. The robot control system 1 includes a robot control device 10, a robot 20, and an external peripheral device 30. The robot control device 10 and the robot 20, as well as the robot control device 10 and the external peripheral device 30, are connected to each other so as to be communicable. Figure 1 Although not shown in the figure, the robot control device 10, the robot 20, and the external peripheral device 30 may be connected to each other so as to be communicable via a network.
[0033] The robot control device 10 is a device for controlling the robot 20. Specifically, the robot control device 10 stores teaching programs, teaching data, motion parameters, etc. for motion control and processing control of the robot 20, and controls the robot 20 by executing the teaching programs based on the teaching data and motion parameters.
[0034] The robot 20 is, for example, a 6-axis vertical articulated robot or a 4-axis vertical articulated robot, but is not limited thereto and may be an orthogonal coordinate robot, a horizontal articulated robot, a parallel robot, or the like.
[0035] The external peripheral device 30 is various application control devices such as a PLC and a laser oscillator.
[0036] exist Figure 1In the robot control system 1 shown, for example, when the external peripheral device 30 is a control device for a laser oscillator, the robot control device 10 controls the movement of the robot 20 by performing input and output signals and serial communication with the robot 20 and the external peripheral device 30, and controls the laser processing process performed by the robot 20.
[0037] Figure 2 2 is a functional block diagram of the robot control device 10 . The robot control device 10 includes a storage unit 11 and a control unit 12 .
[0038] The storage unit 11 stores an operation command program describing the teaching operation and teaching position of the robot 20 and a logic command program describing logic commands for instructing a machining process of the robot 20 and execution positions of the logic commands, regardless of the teaching operation and teaching position.
[0039] Figure 3A 1 is an example of an action command program and a logic command program executed by the robot control device 10 of this embodiment. Figure 3B yes Figure 3A The diagram shows a conceptual diagram of the contents described in the motion command program and the logic command program.
[0040] like Figure 3A As shown, the motion of the robot 20 at each teaching position is instructed by the motion command program.
[0041] exist Figure 3A In the example, the motion command program instructs the robot to move from the teaching position P[1] to the teaching position P[8].
[0042] Furthermore, in the logic command program, the start / end of the machining process in a position independent of the taught position specified by the motion command program is instructed.
[0043] exist Figure 3A In the logic command program shown, in line 1, it is indicated that the machining process DO[1] is started at position P[2]. In line 2, it is indicated that the machining process DO[1] is ended at position P[3]. In line 3, it is indicated that the machining process DO[2] is started at position P[4]. In line 4, it is indicated that the machining process DO[2] is ended at position P[5]. In line 5, it is indicated that the machining process DO[3] is started at position P[6]. In line 6, it is indicated that the machining process DO[3] is ended at position P[7].
[0044] The control unit 12 includes a CPU, a ROM, a RAM, a CMOS memory, and the like, and these components are configured to be communicable with each other via a bus, which is well known to those skilled in the art.
[0045] The CPU is a processor that controls the robot control device 10 as a whole. The CPU reads out the system program and application program stored in the ROM via the bus, and controls the entire robot control device 10 according to the system program and application program, thereby Figure 2 As shown, the control unit 100 is configured to realize the functions of an operation command interpretation unit 121 , a logic command interpretation unit 122 , and a command execution unit 123 .
[0046] As described above, the motion command interpretation unit 121 interprets the motion command program describing the teaching motion and teaching position of the robot 20 , and generates a motion command.
[0047] As described above, the logic command interpreting unit 122 interprets the logic command program that describes the logic command for instructing the processing to be performed by the robot 20 and the execution position of the logic command, and generates the logic command including the execution position.
[0048] When the teaching program starts, the command execution unit 123 starts the task processing performed by the motion command interpretation unit 121 and the task processing performed by the logic command interpretation unit 122, and executes the motion command generated by the motion command interpretation unit 121, monitors the robot position during the action performed by the robot 20, and executes each logic command generated by the logic command interpretation unit 122 at the timing of the execution position of the logic command.
[0049] Thus, when the robot control device 10 executes Figure 3A In the case of the action command program and logic command program shown in Figure 3B As shown, midway along the path connecting the teaching position P[1] and the teaching position P[8] specified in the action command program, the processing DO[1] starts at position P[2], ends at position P[3], starts at position P[4], ends at position P[5], starts at position P[3], ends at position P[6], and ends at position P[7].
[0050] In addition, as described above, the position where the execution of the logic command starts / ends in the logic command program is preferably a position on the trajectory moved by the motion command program, but is not limited thereto. For example, the position where the execution of the logic command starts / ends may be a position on the trajectory moved by the motion command program and closest to the execution position of the machining process.
[0051] [2. Effects achieved by implementation methods]
[0052] In the robot control device 10 of the present embodiment, when teaching a logic command for controlling a processing process such as laser welding, the logic command can be executed at an arbitrary position and timing independently of an operation command (teaching position) of the robot 20 .
[0053] In addition, in the robot control device 10 of the present embodiment, even in the case of continuous teaching of short-pitch processing intervals, there is no need to increase the number of teaching positions corresponding to the number of starting ends and ending ends of the processing intervals. Therefore, the teaching program can be easily installed, thereby improving the maintainability and visibility of the teaching program, etc.
[0054] Furthermore, in the robot control device 10 of the present embodiment, the number of teaching points of the robot 20 can be minimized, so the motion planning process of the robot 20 can also be lightweight, and the original performance of the robot 20 can be brought into play.
[0055] Furthermore, in the robot control device 10 of the present embodiment, since the execution order of the motion commands of the robot 20 and the execution order of the logic commands do not need to be coordinated, the logic commands can be executed at any timing regardless of the teaching position related to the motion of the robot 20 .
[0056] Figure 4 FIG. 1 is a diagram showing another example of the motion command program and the logic command program executed by the robot control device 10 of the present embodiment. Figure 4 The example shown is similar to Figure 3A When comparing the examples shown, the order of the lines constituting the logic command program is reversed.
[0057] In the robot control device 10 of this embodiment, as Figure 4 As shown, in the motion command program, the robot 20 is recorded in the order of teaching position P[1] and teaching position P[8]. On the other hand, in the logic command program, even if it is recorded in the order of position P[7], position P[6], position P[5], and in the order of position P[4], position P[3], and position P[2], each logic command is executed at a timing passing through position P[2] to position P[7] regardless of the recording order.
[0058] Furthermore, in the prior art, in order to adjust the execution timing of the logic command, it is necessary to fine-tune the teaching position of the robot motion of the same line constituting the combination, and the motion plan and even the motion trajectory are changed each time the adjustment is made. On the other hand, in the robot control device 10 of the present embodiment, since the logic command program and the motion command program are separated, only the execution timing of the logic command can be fine-tuned, and the motion plan and motion trajectory will not be affected.
[0059] Figure 5This is a diagram showing the motion trajectory of the robot 20 and the tool 22 provided on the manipulator 21 of the robot 20, and the processing section included in the motion trajectory. The tool 22 moves in a manner of passing through P[1]→P[2]→P[3]→P[4], and the processing starts at P[2] and ends at P[3].
[0060] Fig. 6A It specifically indicates Figure 5 The diagram of the motion trajectory and processing section shown is a diagram showing the motion trajectory and processing section before the signal output timing of the teaching position P[2] is adjusted.
[0061] Figure 6B 1 is a diagram showing the change of the motion trajectory and the processing interval when the processing start timing is adjusted by the prior art. Fig. 7A As shown, the starting point of the processing process is combined with the teaching position involved in the action of the robot 20, so at the teaching position of the action of the robot 20, that is, Figure 6B In the example, the position of the teaching position P[2] needs to be fine-tuned, and the motion plan and even the motion trajectory will change each time the adjustment is made. Therefore, it is necessary to repeatedly adjust the signal timing and the teaching position included in the motion trajectory.
[0062] Figure 6C is a diagram showing the motion trajectory and processing interval when the processing start timing is adjusted in the robot control device 10 of this embodiment. Fig. 6A The motion trajectory before the adjustment signal output timing is compared with the processing interval. The motion trajectory has not changed, and only the start timing of the processing interval is delayed. This is because the logic command program is separated from the motion command program, so the teaching position involved in the action of the robot 20 can be kept unchanged, and only the execution timing of the logic command can be fine-tuned. Therefore, the change of the processing interval does not affect the motion plan and motion trajectory.
[0063] [3. Example]
[0064] The motion trajectory taught to the robot 20 is displayed on an information output terminal such as a tablet device. By directly touching the displayed motion trajectory with a finger, a touch pen or other device, the position and timing of signal output can be specified on the motion trajectory taught to the robot 20, and even the position and timing of executing logic commands for controlling process processing can be specified.
[0065] In this way, a logic command program can be generated from the execution position of the specified logic command, and can be executed in matching with the motion command program. In addition, since the user of the robot control device 10 can intuitively specify the execution timing of the logic command and can teach the process processing command, the time required for teaching and motion confirmation can be shortened.
[0066] In addition, the robot control method of the present invention is not limited to application to serial communication with the external peripheral device 30 and input and output of signals, and can be applied to all logical commands executed regardless of the operating state of the robot 20.
[0067] Explanation of symbols
[0068] 1: robot control system, 10: robot control device, 11: storage unit, 12: control unit, 20: robot, 30: external peripheral device, 121: motion command interpretation unit, 122: logic command interpretation unit, 123: command execution unit.
Claims
1. A robot control device, It is characterized in that have: An action command interpretation unit that interprets an action command program describing a teaching action and a teaching position of the robot to generate an action command; A logic command interpretation unit that interprets a logic command program that describes a logic command for instructing a processing process to be performed by the robot and an execution position of the logic command independently of the teaching action and the teaching position, and generates a logic command including the execution position; as well as A command execution unit executes the above-mentioned action command and the above-mentioned logic command, The execution position of the above-mentioned logic command exists on the movement trajectory of the above-mentioned robot based on the above-mentioned teaching action and the above-mentioned teaching position, The command execution unit monitors a position of the robot during operation of the robot based on the operation command, and executes each logic command generated by the logic command interpretation unit at a timing passing through an execution position of the logic command.
2. The robot control device according to claim 1, It is characterized in that In the above-mentioned logic command program, when the above-mentioned execution position does not exist on the movement trajectory of the above-mentioned robot based on the above-mentioned teaching action and the above-mentioned teaching position, the above-mentioned command execution unit executes the above-mentioned logic command at a position on the above-mentioned movement trajectory closest to the execution position of the above-mentioned processing process.
3. A robot control method, It is characterized in that The following steps are involved: The motion command interpretation step interprets the motion command program that describes the robot's teaching motion and teaching position to generate the motion command; A logic command interpretation step of interpreting a logic command program that describes a logic command for instructing a processing process to be performed by the robot and an execution position of the logic command independently of the teaching action and the teaching position, and generating a logic command including the execution position; as well as Command execution steps, execute the above action commands and the above logic commands, The execution position of the above-mentioned logic command exists on the movement trajectory of the above-mentioned robot based on the above-mentioned teaching action and the above-mentioned teaching position, In the command execution step, the position of the robot is monitored during the operation of the robot based on the operation command, and each logic command generated in the logic command interpretation step is executed at a timing passing through the execution position of the logic command.
Citation Information
Patent Citations
Robot system
JP2009181526A
System for commanding a robot
CN103718120A