Robot control device

The robot control device simplifies the operation of multiple robots by assigning independent control units to each robot, enabling easy construction and modification of the robot system while ensuring cooperative operation.

JP7710509B2Active Publication Date: 2025-07-18FUJI CORP
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2023514238
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-04-14
Publication Date
2025-07-18
Estimated Expiration
2041-04-14

AI Technical Summary

Technical Problem

Existing multi-robot controllers require complex operation programs to account for the relationships between multiple robots, leading to a complicated robot system.

Method used

A robot control device with independently configured control units assigned to different robots, generating drive commands for each servo motor, allowing operation programs to be created for each robot independently, eliminating the need to consider relationships with other robots.

Benefits of technology

Facilitates the construction of a simpler robot system by enabling operation of multiple robots with a single control device, allowing for easy addition or modification of robots and ensuring cooperative operation without interference.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007710509000001
    Figure 0007710509000001
  • Figure 0007710509000002
    Figure 0007710509000002
  • Figure 0007710509000003
    Figure 0007710509000003
Patent Text Reader

Abstract

This robot control device comprises a plurality of control units and a management unit. Each of the control units is independently configured and allocated with a different robot as a control target, and receives instructions and generates driving commands for driving each servo motor mounted on the corresponding robot. The management unit instructs the operation of the robots respectively corresponding to the plurality of control units.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification discloses a robot control device.

Background Art

[0002] Conventionally, a multi-robot controller that controls a plurality of robots with a single controller has been known. For example, Patent Document 1 discloses a controller that includes one control means and a number of drivers equal to or greater than the total number of robot axes respectively connected to the control means, and also includes a setting means, a processing condition determination means, a movement command input means, and a movement command discrimination means. The setting means can set the correspondence relationship between each driver and the drive axes of the plurality of robots. The processing condition determination means determines the processing conditions of the drivers according to the correspondence relationship. The movement command input means inputs a movement command including a drive target command that specifies the robot to be driven and the drive axis and a movement position designation that specifies the movement position. The movement command discrimination means discriminates the movement command and selects the driver corresponding to the drive target. The control means obtains the processing content based on the determined processing conditions and the movement position specified by the movement command for the selected driver, and controls the driver according to this processing content.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] In the above-described controller, some of the plurality of drivers drive the motors of each drive axis of one robot, respectively, and the other drivers drive the motors of each drive axis of other robots, respectively. For this reason, it may be necessary to create the operation programs of the robots in consideration of the relationship with each other's robots, and there is a risk that the robot system will become complicated.

[0005] The main object of the present disclosure is to provide a robot control device that can operate a plurality of robots with a single control device and is easy to construct a robot system.

Means for Solving the Problems

[0006] The present disclosure has adopted the following means to achieve the above main object.

[0007] The robot control device of the present disclosure A plurality of control units that are respectively assigned different robots as control targets, are independently configured, and generate drive commands for driving each servo motor mounted on the corresponding robot upon receiving an instruction, and A supervision control unit that instructs the operation of the robots corresponding to the plurality of control units, respectively, The gist is to include.

[0008] In the robot control device of the present disclosure, a plurality of control units and a control unit for controlling the plurality of control units are provided. Each control unit is assigned a different robot as a control target and is configured independently of each other. And each control unit generates a drive command for driving each servo motor provided in the corresponding robot in response to an instruction from the control unit. Thereby, in advance, by assigning the robots to be controlled to each control unit and preparing an operation program or the like for operating each robot, it becomes possible to operate a plurality of robots with one robot control device. In addition, since different robots are assigned to each control unit, the operation program of the robot may be created for each robot, and it is not necessary to consider the relationship with other robots. For this reason, it is easy to construct a robot system.

Brief Description of the Drawings

[0009]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Embodiments for Carrying Out the Invention

[0010] Next, embodiments for implementing the present disclosure will be described with reference to the drawings. FIG. 1 is a schematic configuration diagram of a robot system 1 including a robot control device 20 of the present disclosure. FIG. 2 is a schematic configuration diagram of the robot control device 20. As shown in FIG. 1, the robot system 1 of the present embodiment includes a plurality of robots 10 (10a, 10b, 10c...), a plurality of motor amplifier groups 11 (11a, 11b, 11c,...), and one robot control device 20 that outputs drive commands to each motor amplifier group 11 to control the plurality of robots 10.

[0011] The plurality of robots 10 (10a, 10b, 10c...) include a plurality of types of robots with different joint types and structures, such as horizontal articulated robots, vertical articulated robots, rectangular coordinate robots, parallel link robots, and the like. Each motor amplifier group 11 (11a, 11b, 11c,...) includes the same number of motor amplifiers as the number of servo motors provided for each drive axis (joint) of the corresponding robot 10. The drive axis (joint) of each robot 10 operates when the robot control device 20 outputs a drive command to each motor amplifier of each motor amplifier group 11, and the motor amplifier that receives the drive command drives and controls the corresponding servo motor.

[0012] The robot control device 20 is a servo controller that is connected to the host device 2 and each motor amplifier group 11, receives commands such as a hand position command from the host device 2, generates a drive command based on the position command, and controls each motor amplifier group 11 (motor amplifier). This robot control device 20 has a microcomputer including a CPU, ROM, RAM, non-volatile memory, input / output interface, etc., and various logic ICs (all not shown). As shown in FIGS. 1 and 2, the robot control device 20 constructs a control unit 22, a plurality of objects 30 (30a, 30b, 30c,...), a storage unit 40, and a communication unit 50 as functional blocks by at least one of hardware such as a CPU, ROM, RAM, non-volatile memory, and logic IC, and software such as various programs installed in the ROM.

[0013] The control unit 22 exchanges commands and data with the upper-level device 2 via the external interface unit 21. The control unit 22 receives commands including an operation program for operating the robot 10 and a hand position command of the robot 10 from the upper-level device 2, distributes them to each object 30, or receives the operation states of a plurality of robots 10 from each object 30 and transmits them to the upper-level device 2.

[0014] Each object 30 (30a, 30b, 30c,...) is independently configured and is a control unit that controls a different robot 10 assigned as a control target and is in charge of controlling the robot 10. Each object 30 generates a drive command by executing command generation, kinematic calculation, control calculation, status monitoring, etc. described later according to the operation program of the robot 10 in charge, and outputs it to the corresponding motor amplifier group 11 (motor amplifier).

[0015] The storage unit 40 includes a plurality of first storage units 41 (41a, 41b, 41c,...) and a second storage unit 42.

[0016] Each first storage unit 41 (41a, 41b, 41c, …) has a shared area that can be read from and written to by both the control unit 22 and the corresponding object 30. In the shared area of each first storage unit 41, the operation program of the robot 10 that each object 30 is in charge of, the registration information necessary for the execution of the operation program, and other data (such as the operation state of the robot 10) exchanged between the control unit 22 and the object 30 are stored in a changeable manner. Here, as shown in FIG. 3, the registration information includes object identification information, effective axis information, port information, algorithm information, control type information, motion network information, control cycle information, and the like. The object identification information indicates information for identifying the object 30, such as an object number. This object identification information is associated with the robot identification information for identifying the robot 10 that the object 30 is in charge of. The effective axis information indicates the number of drive axes (joints) of the robot 10 in charge, such as 4 axes or 5 axes. The port information indicates the output destination of the drive command for each drive axis (motor amplifier) of the robot 10. The algorithm information indicates the control algorithm of the servo motor, such as 4-axis kinematics or 5-axis kinematics. The control type information indicates the control method of the servo motor, such as torque control, position control, or speed control. The motion network information indicates the type of network used for communication with the motor amplifier group 11. The control cycle information indicates the control cycle of the robot 10. The operation program and the registration information are stored in the corresponding first storage unit 41 by the control unit 22 that has acquired the operation program and the registration information from the host device 2 after being input in advance by the operator to the host device 2.

[0017] The second storage unit 42 has a shared area that can be read from and written to by each object 30. In the shared area of the second storage unit 42, data for monitoring the positions of the robots 10 that each object 30 is in charge of (the position of the end effector and the positions of each link) between the objects 30 is stored.

[0018] The communication unit 50 inputs a drive command from each object 30, and outputs the input drive command from a specified port to a specified motor amplifier group 11 (motor amplifier) based on the registration information. Further, the communication unit 50 inputs position information of each drive axis (joint) of the robot 10 from each motor amplifier group 11 (motor amplifier), and outputs the input position information to a specified object 30 based on the registration information.

[0019] Next, the operation of the robot control device 20 will be described. In particular, the operations of the control unit 22 and each object 30 will be described. First, the operation of the control unit 22 will be described, and then the operation of each object 30 will be described.

[0020] FIG. 4 is a flowchart showing an example of control processing executed by the control unit 22. In the control processing, the control unit 22 first determines whether a command or data has been received from the host device 2 (step S100). If the control unit 22 determines that no command or data has been received, it proceeds to step S130. On the other hand, if the control unit 22 determines that a command or data has been received, it identifies the object 30 that is the destination of the command or data (step S110), and stores the received command or data in the corresponding first storage unit 41 of the identified destination object 30 (step S120). Here, the command or data to be received includes robot identification information for identifying the robot 10 related to the command and the like. Since the object identification information (registration information) stored in each first storage unit 41 is associated with the robot identification information for identifying the robot 10 that the object 30 is in charge of, the control unit 22 can identify the object 30 to which the command and the like should be executed by referring to the object identification information corresponding to the robot identification information.

[0021] Then, the control unit 22 determines whether the status information (including the end - effector position, link position, and other operating conditions) of each robot 10 stored in the second storage unit 42 has been updated (step S130). If the control unit 22 determines that the status information has not been updated, it ends the control process. On the other hand, if the control unit 22 determines that the status information has been updated, it reads out the updated status information from the second storage unit 42 (step S140), transmits the read - out status information to the host device 2 (step S150), and ends the control process.

[0022] Next, the operations of each object 30 will be described. FIG. 5 is a flowchart showing an example of the drive - command generation process executed by each object 30. This process is executed at a cycle based on the registration information (control - cycle information) stored in the corresponding first storage unit 41 in each object 30.

[0023] In the drive - command generation process, each object 30 first determines whether it has received an end - effector position command from the host device 2 (whether the end - effector position command received from the host device 2 is stored in the corresponding first storage unit 41) (step S200). If each object 30 determines that it has not received an end - effector position command, it ends the drive - command generation process. On the other hand, if each object 30 determines that it has received an end - effector position command, it acquires the end - effector position and link position of other robots 10 other than the robot 10 in charge (step S210). This process is performed in step S270 described later by reading from the second storage unit 42 what other objects 30 have stored in the second storage unit 42. Subsequently, each object 30 sets the operable range (operable range) of the robot 10 in charge based on the acquired end - effector position and link position of other robots 10 (step S220). The operable range is set as the range within which the end - effector and links of the robot 10 in charge can operate without interfering with other robots 10.

[0024] Next, each object 30 converts the received end - effector position command into an end - effector position command in units of the control cycle within the operable range set in step S220 (step S230). Subsequently, each object 30 converts the end - effector position command into the target positions of the respective joints (drive axes) of the robot 10 responsible for the end - effector position command through a kinematic operation according to the corresponding registration information (step S240). Then, each object 30 generates drive commands for the respective motor amplifiers of the motor amplifier group 11 to move the positions of the respective joints (drive axes) of the responsible robot 10 to their respective target positions through control operations (torque control, position control, speed control) according to the corresponding registration information (step S250).

[0025] When each object 30 generates a drive command, it outputs the generated drive command to the communication unit 50, thereby outputting it to the respective motor amplifiers of the corresponding motor amplifier group 11 (step S260). Then, each object 30 acquires the positions of the respective joints of the robot 20 from the position sensors, obtains the end - effector position and the link positions based on the acquired positions, stores them in the second storage unit 42 as end - effector position information and link position information (step S270), and ends the drive - command generation process. Thus, in step S200, each object 30 sets the operable range of the responsible robot 10 by referring to the end - effector position information and the link position information of the other robot 10 stored in the second storage unit 42, which is a shared area, and generates drive commands within the operable range, eliminating the need to create an operation program in advance considering the relationship with the other robot 10, and enabling cooperative operation and interference avoidance with the other robot 10.

[0026] Here, the correspondence between the main elements of the embodiment and the main elements of the present disclosure described in the claims will be described. That is, the plurality of objects 30 in the present embodiment correspond to the plurality of control units of the present disclosure, and the control unit 22 corresponds to the control unit. Also, the storage unit 40 (the first storage unit 41 and the second storage unit 42) corresponds to the storage unit.

[0027] As described above, the robot control device of the present disclosure is configured such that different robots are assigned as control targets and are independent of each other, and includes a plurality of control units that generate drive commands for driving each servo motor mounted on the corresponding robot upon receiving an instruction, and a supervision unit that instructs the operations of the robots corresponding to the plurality of control units, respectively. This is the gist of the present disclosure.

[0028] In the robot control device of the present disclosure, a plurality of control units and a supervision unit that supervises the plurality of control units are provided. Each control unit is configured such that different robots are assigned as control targets and are independent of each other. Then, each control unit generates a drive command for driving each servo motor provided in the corresponding robot upon receiving an instruction from the supervision unit. As a result, by previously assigning the robots to be controlled to each control unit and preparing an operation program or the like for operating the robot 10 for each robot 10, it becomes possible to operate a plurality of robots with one robot control device. Further, since different robots are assigned to each control unit, the operation program of the robot may be created for each robot, and there is no need to consider the relationship with other robots. Therefore, it is easy to construct a robot system.

[0029] In such a robot control device of the present disclosure, a storage unit that stores registration information corresponding to the specifications of each robot is provided. The plurality of control units generate the drive command based on the registration information of the corresponding robot stored in the storage unit, and the storage unit may store the registration information so that it can be changed. By doing so, it is possible to appropriately control a plurality of robots according to their specifications with one robot control device, and it becomes possible to easily respond to the addition or specification change of the robots. In this case, the registration information may include at least one of the number of drive axes of the robot, an algorithm for setting the target position of the drive axis, a control type for controlling the servo motor, a network type used for communication with an amplifier for driving the servo motor, and a control cycle.

[0030] Also, in the robot control device of the present disclosure, the storage unit is shared among the plurality of control units, and the plurality of control units sequentially store the position information of the corresponding robots in the storage unit, and set an operable range by referring to the position information of other robots stored in the storage unit, and may generate the drive command within the operable range. By setting the operable range based on the position information of other robots stored by other control units and operating the robot, cooperative operation and interference avoidance with other robots become possible.

[0031] Note that the present disclosure is not limited to the above-described embodiments, and it goes without saying that the present disclosure can be implemented in various modes as long as it belongs to the technical scope of the present disclosure.

Industrial Applicability

[0032] The present disclosure can be used in the manufacturing industry of robot control devices and the like.

Explanation of Signs

[0033] 1 Robot system, 2 Host device, 10, 10a, 10b, 10c Robots, 11, 11a, 11b, 11c Motor amplifier groups, 20 Robot control device, 20 Robots, 21 External interface unit, 22 Control unit, 30, 30a, 30b, 30c Objects, 40 Storage unit, 41, 41a, 41b, 41c First storage unit, 42 Second storage unit, 50 Communication unit.

Claims

1. A plurality of control units, each of which is assigned a different robot as a control target and is independently configured, and generates drive commands for driving each servo motor mounted on the corresponding robot in response to instructions; A supervision control unit that instructs the operations of the robots corresponding to the plurality of control units respectively; A storage unit that stores registration information corresponding to the specifications of each robot and stores status information of each robot in a shared area; A robot control device comprising: Each of the plurality of control units stores the status information in the shared area for the corresponding robot, sets the operable range of the corresponding robot based on the status information of other robots, and generates a drive command for the corresponding robot within the operable range. Robot control device.

2. The robot control device according to Claim 1, wherein the storage unit stores the registration information so as to be changeable. Robot control device.

3. The robot control device according to Claim 2, wherein the registration information includes at least one of the number of drive axes of the robot, an algorithm for setting a target position of the drive axis, a control type for controlling the servo motor, a network type used for communication with an amplifier for driving the servo motor, and a control cycle. Robot control device.

4. The robot control device according to any one of Claims 1 to 3, wherein the plurality of control units sequentially store the position information of the corresponding robots in the storage unit, set the operable range by referring to the position information of other robots stored in the storage unit, and generate the drive command within the operable range. Robot control device.

Citation Information

Patent Citations

  • Interference check device for robot arm

    JP1987198905A

  • Universal robot controller

    JP1991282703A

  • Method and device for controlling a plurality of robots

    JP1994246664A

  • Controller for robot cell

    JP1994301412A

  • Method and device for preventing interfernece between robots

    JP1996036410A