Numerical control device and numerical control system

The numerical control device and system allow robots to continue operations by skipping contact events based on external force thresholds, enhancing user-friendly operation and dimension measurement capabilities.

DE112022007756T5Pending Publication Date: 2025-07-03FANUC LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
DE112022007756
Authority / Receiving Office
DE · DE
Patent Type
Applications
Current Assignee / Owner
Filing Date
2022-11-28
Publication Date
2025-07-03

AI Technical Summary

Technical Problem

Numerical control devices and systems face challenges in continuing robot operations when contact is detected, and users of machine tools find it difficult to operate unfamiliar robots effectively.

Method used

A numerical control device and system that include an analysis unit to analyze robot control commands, generate a contact skip operation signal, and transmit a robot command signal to the robot control device, allowing the robot to stop when external force exceeds a threshold and resume operation with a next command block.

Benefits of technology

Enables continuous operation of robots by skipping contact events and facilitating easy utilization of robot functions by machine tool users, with the ability to measure object dimensions post-contact.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

The present invention provides a numerical control device and a numerical control system that enable a robot to continue operating when contact is detected, and also enable a machine tool operator to easily use a function of the robot. The numerical control device includes an analysis unit, a contact operation operation unit, and a robot instruction generation unit. A robot controller includes an external force threshold for stopping the robot when the robot detects an external force.When the external force detected by the robot exceeds the external force threshold during robot movement, a numerical control device stops the robot movement in response to a contact skip operation signal and notifies the numerical control device that the robot has stopped moving. When the contact operation execution unit is notified by the robot control device that the robot has stopped moving, the contact operation execution unit executes the next instruction block of the robot control command.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to a numerical control apparatus and a numerical control system. TECHNICAL BACKGROUND

[0002] In the prior art, a technique has been disclosed regarding a cooperative robot that detects contact with a human and stops operation. For example, a technique for adjusting payload information of a held workpiece to accurately measure a contact force of a cooperative robot has been disclosed.

[0003] Furthermore, a technology related to a system for manipulating a robot from a machine tool to automate a machining site has been disclosed. For example, a technique for performing an operation of a robot using a numerical control command known to the user of a machine tool has been disclosed (see, for example, Patent Document 1). Citation listPatent document

[0004] Patent Document 1: Unexamined Japanese Patent Application, Publication No. 2014-241018 DISCLOSURE OF THE INVENTION Problems to be solved by the invention:

[0005] In a case where the numerical control device controls a robot using the numerical control command, if the robot detects contact with a target during its movement, the robot control device stops the operation of the robot and may not be able to continue the robot's operation. Furthermore, it is difficult for the machine tool user to operate the robot because they must use a teach pendant to operate an unfamiliar robot to utilize the robot's function.

[0006] Therefore, there is a need for a numerical control device and a numerical control system that are capable of continuing the operation of a robot when contact is detected and that allows the user of a machine tool to easily utilize the function of the robot. Means to solve the problems:

[0007] According to one aspect of the present disclosure, there is provided a numerical control device for controlling a robot via a robot control device using a numerical control program, the numerical control device comprising: an analysis unit that analyzes a robot control command in the numerical control program; a contact operation operation unit that generates a contact skip operation signal for causing the robot control device to perform a contact skip operation according to the robot control command analyzed by the analysis unit; and a robot command signal generation unit that generates a robot command signal including the contact skip operation signal and transmits the robot command signal to the robot control device.The robot control command includes an external force threshold for stopping the robot when the robot detects an external force. According to the contact skip operation signal, when the external force detected by the robot exceeds the external force threshold during a robot movement, the robot control device stops the movement of the robot and notifies the numerical control device that the robot has stopped moving. The contact operation command unit executes a next command block of the robot control command when notified by the robot control device that the robot has stopped moving.

[0008] According to one aspect of the present disclosure, there is provided a numerical control system for controlling a robot via a robot control device using a numerical control program of a numerical control device, the numerical control device comprising: an analysis unit that analyzes a robot control command in the numerical control program; a contact operation command unit that generates a contact skip operation signal for causing the robot controller to execute a contact skip operation according to the robot control command analyzed by the analysis unit; and a robot command signal generation unit that generates a robot command signal including the contact skip operation signal and transmits the robot command signal to the robot controller.The robot control command includes an external force threshold for stopping the robot when the robot detects an external force. The robot control device includes a contact operation execution unit that stops the movement of the robot according to the contact skip operation signal when the external force detected by the robot exceeds the external force threshold during a movement of the robot, and notifies the numerical control device that the robot has stopped moving. The contact operation command unit executes a next command block of the robot control command when notified by the robot control device that the robot has stopped moving. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a functional block diagram of a numerical control system according to an embodiment of the present disclosure, Fig. 2 is a functional block diagram of a numerical control device and a robot control device according to the present embodiment; Fig. 3 is a diagram showing an example of a contact skip command; Fig. 4 is a diagram showing an example of a contact skip command; Fig. 5 is a diagram showing an example of a numerical control program according to the present embodiment; and Fig. 6 is a sequence diagram showing a signal and information flow between the numerical control device and the robot control device when the Fig. 5 shown numerical control program is executed. PREFERRED EMBODIMENT OF THE INVENTION

[0009] An example of an embodiment of the present disclosure is described below. Fig. 1 is a functional block diagram of a numerical control system 1 according to an embodiment of the present disclosure.

[0010] The numerical control system 1 includes a machine tool 2 that machines a workpiece (not shown), a numerical control device (CNC) 4 that controls the operation of the machine tool 2, a cooperative robot 3 provided near the machine tool 2, and a robot control device 5 that controls the operation of a robot 3. The numerical control system 1 controls the operation of the machine tool 2 and the cooperative robot 3 in conjunction with each other using the numerical control device 4 and the robot control device 5 that are communicatively connected to each other.

[0011] The machine tool 2 machines a workpiece (not shown) according to a machine tool control signal transmitted from the numerical control device 4. The machine tool 2 is, for example, a lathe, a ball mill, a milling machine, a grinder, a laser processing machine, or an injection molding machine, but this is not limited.

[0012] The cooperative robot 3 operates under the control of the robot control device 5 and performs a predetermined operation on a workpiece to be machined by, for example, the machine tool 2. The cooperative robot 3 is, for example, an articulated robot in which a tool 3b for gripping, machining, or inspecting a workpiece is attached to one of its arm tips 3a. A case where the cooperative robot 3 is a six-axis articulated robot will be described below, but the present disclosure is not limited to this. In the following description, the cooperative robot 3 is a six-axis articulated robot, but the number of axes is not limited thereto.

[0013] The cooperative robot 3 has functions such as a contact stop function, a retraction mode function, and a reverse operation function, and can operate safely in cooperation with a person. The contact stop function is a function to stop immediately when the cooperative robot 3 comes into contact with the person with a slight force (e.g., 10 to 20 N (i.e., 1 to 2 kgf)). The retraction mode function is a function in which a person can retract the arm of the cooperative robot 3 in any axis by pushing the arm. The reverse operation function is a function to reduce pinching by immediately reversing the arm when the cooperative robot 3 comes into contact with a hard object. The cooperative robot 3 includes a force detection unit 31 (see Fig. 2) which includes a force detection sensor or the like for detecting an external force, e.g., contact with a person. The force detection sensor is, for example, a torque sensor, a force sensor, or the like. That is, the cooperative robot 3 detects contact with a person through the force detection sensor, and the robot control device 5 stops the operation of a robot 3 in response to the external force detected by the force detection sensor. Accordingly, the cooperative robot 3 can safely operate in cooperation with a person.

[0014] The numerical control device 4 and the robot control device 5 are each a computer configured by hardware such as an arithmetic processing unit such as a CPU (Central Processing Unit), an auxiliary storage unit such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive) on which various computer programs are stored, a main storage unit such as RAM (Random Access Memory) for temporarily storing data required for the arithmetic processing unit to execute a computer program, an operation unit such as a keyboard for performing various operations by an operator, and a display unit such as a display for displaying various information to the operator.The numerical control device 4 and the robot control device 5 can send and receive various signals to and from each other via, for example, Ethernet (registered trademark).

[0015] Fig. Fig. 2 is a functional block diagram of the numerical control device 4 and the robot control device 5 according to the present embodiment. First, a detailed configuration of the numerical control device 4 will be described. As shown in Fig. 2, the numerical control device 4 realizes various functions such as a function for controlling the operation of the machine tool 2 and a function for generating an operation trajectory of a control axis of the cooperative robot 3 by the hardware configuration described above.

[0016] The numerical control device 4 controls the cooperative robot 3 via the robot control device 5 using the numerical control program. That is, the numerical control device 4 generates various commands for controlling the operation of the cooperative robot 3 and the tool 3b according to the numerical control program for the robot and transmits the commands to the robot control device 5. More specifically, the numerical control device 4 includes a program input unit 41, an analysis unit 42, an operation control unit 43, a storage unit 44, a robot command signal generation unit 45, a data transmission / reception unit 46, and a contact operation command unit 47.

[0017] The program input unit 41 reads a numerical control program for a robot consisting of a plurality of robot command blocks from the storage unit 44 and sequentially inputs the numerical control program to the analysis unit 42.

[0018] The analysis unit 42 analyzes the command type based on the numerical control program input from the program input unit 41 for each command block and outputs the analysis result to the operation control unit 43 and the robot command signal generation unit 45. Specifically, when the command type of the command block is a numerical control command for the machine tool 2, the analysis unit 42 transmits the numerical control command for the machine tool to the operation control unit 43. When the command type of the command block is a robot numerical control command for the cooperative robot 3, the analysis unit 42 outputs the robot numerical control command (hereinafter also referred to as a robot command) to the robot command signal generation unit 45.

[0019] The operation control unit 43 generates a machine tool control signal for controlling the operation of the machine tool 2 according to the analysis result transmitted from the analysis unit 42, and transmits the machine tool control signal to an actuator that drives various axes of the machine tool 2. The machine tool 2 operates according to a machine tool control signal input from the operation control unit 43 to machine a workpiece (not shown).

[0020] The storage unit 44 stores, for example, a plurality of numerical control programs generated based on an operator's operation. Specifically, the storage unit 44 stores a numerical control program including a plurality of command blocks for the machine tool 2 for controlling the operation of the machine tool 2, a plurality of command blocks for the cooperative robot 3 for controlling the operation of the cooperative robot 3, and the like. The numerical control program stored in the storage unit 44 is written in a known programming language such as G code or M code for controlling the operation of the machine tool 2.

[0021] In addition, the storage unit 44 stores, for example, machine coordinate values indicating positions of various axes of the machine tool 2 operated under the numerical control program (i.e., positions of a tool post, a table, and the like of the machine tool 2). These machine coordinates are defined in a machine tool coordinate system that has a reference point at any location on the machine tool 2 or near the machine tool 2 as the origin. The storage unit 44 is sequentially updated by processing (not shown) to store the latest values of the machine coordinate values that sequentially change under the numerical control program.

[0022] The storage unit 44 stores, for example, robot coordinate values indicating the position and posture of a control point (e.g., the arm tip portion 3a of the cooperative robot 3) of the cooperative robot 3 operating under the control of the robot control device 5, in other words, the position of each control axis of the cooperative robot 3. These robot coordinates are defined in a robot coordinate system different from the coordinate system of the machine tool, as described above. The storage unit 44 is sequentially updated with the robot coordinate values acquired by the robot control device 5 through processing (not shown) to store the latest values of the robot coordinate values that sequentially change under the numerical control program.

[0023] In addition, the storage unit 44 stores, for example, learning positions such as a start point and an end point of the cooperative robot 3, which are input by the operator. Specifically, the storage unit 44 stores a learning position of the cooperative robot 3 input via a teach pendant or the like, a learning position input via a keyboard or the like, and the like. The learning position of the cooperative robot 3 includes robot coordinate values indicating the position of each control axis of the cooperative robot 3, and these robot coordinate values are defined under a robot coordinate system that is different from the coordinate system of the machine tool.

[0024] The robot command signal generation unit 45 generates a robot command signal for each robot command block based on the analysis result for each robot command block input from the analysis unit 42, and writes the generated robot command signal to the transmission / reception unit 46.

[0025] Specifically, the robot command signal generation unit 45 generates a robot command signal for each robot command block based on the robot numerical control command as an analysis result input from the analysis unit 42, and writes the generated robot command signal to the transmission / reception unit 46.

[0026] The transmission / reception unit 46 transmits and receives various data such as robot commands and robot coordinate values to and from the transmission / reception unit 60 of the robot control device 5. Specifically, the data transmission / reception unit 46 transmits the robot command signal generated by the robot command signal generation unit 45 to the data transmission / reception unit 60 of the robot control device 5.

[0027] The contact operation command unit 47 generates a contact skip operation signal to cause the robot device 5 to execute the contact skip operation according to the robot control command analyzed by the analysis unit 42. The contact operation command unit 47 notifies the robot command signal generation unit 45 of the generated contact skip operation signal.

[0028] When the contact skip command is extracted from the numerical control program, the analysis unit 42 notifies the contact operation command unit 47 of the command. The contact operation command unit 47 generates a contact skip operation signal in response to the notification of the command from the analysis unit 42 and notifies the robot command signal generation unit 45 of the contact skip operation signal.

[0029] The robot command signal generation unit 45 generates a robot command signal including the contact skipping operation signal and transmits the robot command signal to the robot control device 5 via the transmission / reception unit 46. Accordingly, the robot control device 5 executes the contact skipping operation according to the contact skipping operation signal.

[0030] Here, the contact skip operation indicates that in a case where the cooperative robot 3 detects an external force through a contact operation such as touching an object during the movement of the cooperative robot 3, the cooperative robot 3 stops the movement of the cooperative robot 3 and executes the next command block.

[0031] The contact skip operation signal instructs the robot control device 5 a threshold value for an external force for stopping the cooperative robot 3 when the cooperative robot 3 detects an external force, an operation type of the cooperative robot 3, a target position of the cooperative robot 3, a movement speed of the cooperative robot 3, a contact position at which the cooperative robot 3 touches an object, and the like.

[0032] The contact skipping operation signal may include indicating a force component or a torque component when the force detection unit 31 of the cooperative robot 3 detects the external force depending on the moving direction or the moving speed of the cooperative robot 3. For example, in a case where the cooperative robot 3 moves in the + (plus symbol) X direction, the contact skipping operation signal may indicate a force component or a torque component in the + X direction when the external force detection unit 31 detects the external force.

[0033] Furthermore, the contact skipping operation signal may include that the external force threshold of the contact skipping operation is smaller than the external force detection threshold of the contact stopping operation in which the operation of the cooperative robot 3 is stopped due to external contact.

[0034] According to the contact skip operation signal, the robot control device 5 stops the movement of the cooperative robot 3 when the external force detected by the cooperative robot 3 exceeds the external force threshold during the movement of the cooperative robot 3. Then, the robot control device 5 notifies the numerical control device 4 that the cooperative robot 3 has stopped its movement. When the contact operation command unit 47 is notified by the robot control device 5 that the cooperative robot 3 has stopped its movement, the contact operation command unit 47 executes the next command block of the robot control command.

[0035] The next command block of the robot control command may include, for example, detecting a position from the robot control device 5 at which the cooperative robot 3 detected a contact during the contact skipping operation and measuring the dimension of the object corresponding to the detected position.

[0036] Specifically, the next command block of the robot control command may include obtaining from the robot control device 5 position information about two positions where the cooperative robot 3 detected contact during the contact skipping operation, and measuring the dimension of the object according to the obtained position information of the two positions. For example, the two positions may be a first position where contact is detected while the cooperative robot 3 is moving in the +X direction and a second position where contact is detected while the cooperative robot 3 is moving in the - (minus)X direction. Accordingly, the robot control device 5 may measure the dimension of the object in the X direction based on the two positions.

[0037] Furthermore, the next command block of the robot control command may include, for example, the cooperative robot 3 grasping a workpiece with unknown dimensions or grasping the workpiece at a position where the cooperative robot 3 touches the workpiece while searching for the position of the workpiece.

[0038] Next, the configuration of the robot control device 5 will be described in detail. As shown in Fig. 2, in the robot control device 5, various functions such as a storage unit 51, an analysis unit 52, a robot command generation unit 53, a program management unit 54, a trajectory control unit 55, a kinematics control unit 56, a servo control unit 57, a payload setting selection unit 58, a dynamics control unit 59, a data transmission / reception unit 60, a contact operation execution unit 61, and a contact control unit 62 are realized through the hardware configuration. The robot control device 5 controls the operation of the cooperative robot 3 based on a command transmitted from the numerical control device 4 using these functional units.

[0039] The storage unit 51 stores a robot program for controlling the cooperative robot 3 and various types of information. Furthermore, the storage unit 51 stores payload settings of the cooperative robot 3. Although the storage unit 51 is provided in the robot control device 5 in the present embodiment, the storage unit 51 may be provided in the numerical control device 4 or in an electronic device, an external server, or the like outside the numerical control device 4 and the robot control device 5.

[0040] The data transmission / reception unit 60 receives the robot command signal transmitted from the data transmission / reception unit 46 of the numerical control device 4. Furthermore, the transmission / reception unit 60 sequentially outputs the received robot command signal to the analysis unit 52.

[0041] The analysis unit 52 analyzes the robot command signal input from the transmission / reception unit 60. Furthermore, the analysis unit 52 outputs the analysis result to the robot instruction generation unit 53.

[0042] The robot instruction generation unit 53 generates a robot instruction corresponding to the robot command signal based on the analysis result of the robot command signal input from the analysis unit 52. The robot instruction generation unit 53 outputs the generated robot instruction to the program management unit 54.

[0043] When the robot command is input from the robot command generation unit 53, the program management unit 54 sequentially executes the robot command to generate an operation plan of the cooperative robot 3 according to the robot command signal, and outputs the operation plan to the path control unit 55.

[0044] If the robot instruction input from the robot instruction generation unit 53 is a block robot instruction, the program management unit 54 adds the input block robot instruction to the robot program stored in the storage unit 51. As a result, a robot program corresponding to the robot command signal transmitted from the numerical control device 4 is generated and stored in the storage unit 51. The stored robot program is started and executed when the program management unit 54 receives a robot program activation command as a robot instruction.

[0045] When the operation plan is input from the program management unit 54, the path control unit 55 calculates the time series data of the control points of the cooperative robot 3 and outputs the time series data to the kinematics control unit 56.

[0046] The kinematics control unit 56 calculates a target angle for each joint of the cooperative robot 3 from the input time series data and passes the target angles to the servo control unit 57.

[0047] The servo control unit 57 generates a robot control signal for the cooperative robot 3 by feedback-feedbacking each servomotor of the cooperative robot 3 to realize the target angles input from the kinematics control unit 56, and transmits the robot control signal to the servomotor of the cooperative robot 3. Furthermore, the servo control unit 57 generates a robot control signal reflecting the torque calculated by the dynamics control unit 59 described later. Accordingly, the robot control device 5 can control the cooperative robot 3 based on the payload setting.

[0048] The payload setting selection unit 58 selects the payload setting stored in the storage unit 51 according to the robot command signal analyzed by the analysis unit 52 and notifies the dynamic control unit 59 of the selected payload setting.

[0049] The dynamics control unit 59 calculates the torque to be input to the cooperative robot 3 through inverse dynamics calculation based on the payload setting selected by the payload setting selection unit 58. The dynamics control unit 59 outputs the torque obtained by the calculation to the servo control unit 57.

[0050] Here, the inverse dynamics calculation of the cooperative robot 3 is a method for calculating the input torque for each motor to realize such a response, taking into account the hand load, gravity, and the weight applied to the cooperative robot 3, based on the desired motion (time series data of the position, velocity, and acceleration of each joint) calculated in the operation trajectory plan of the cooperative robot 3. For example, a numerical calculation method such as a torque calculation method or a Newton-Euler method is disclosed as a method for such an inverse dynamics calculation (e.g., Japanese Unexamined Patent Application Publication Nos. H8-118275 and 2015-58520).

[0051] In a case where the external force detected by the cooperative robot 3 exceeds the external force threshold value during the movement of the cooperative robot 3 according to the contact skip operation signal in the robot command signal analyzed by the analysis unit 52, the contact operation execution unit 61 stops the movement of the cooperative robot 3 and notifies the numerical control device 4 that the cooperative robot 3 has stopped the movement.

[0052] The contact control unit 62 controls the contact stop operation according to the result of detection of the external force by the force detection unit 31 in the cooperative robot 3. Here, the contact stop operation indicates that the cooperative robot 3 stops the operation of the cooperative robot 3 in response to an external contact force.

[0053] Next, the specific processing of the contact skip operation will be described. The contact operation execution operation unit 61 notifies the operation control unit 62 of an external force threshold value corresponding to the contact skip operation signal in the robot command signal analyzed by the analysis unit 52, and the operation control unit 62 starts monitoring for an external force exceeding the external force threshold value.

[0054] Furthermore, the contact operation execution unit 61 notifies the robot instruction generation unit 53 of the operation mode, the movement amount, and the movement speed of the cooperative robot 3 according to the contact skip operation signal, and the robot instruction generation unit 53 generates a robot instruction according to the operation mode, the movement amount, and the movement speed of the cooperative robot 3. Thereafter, the robot control device 5 executes the above-described control, and the cooperative robot 3 starts moving.

[0055] When the external force detected by the force detection unit 31 exceeds the external force threshold, the contact control unit 62 notifies the servo control unit 57 to stop the movement and acquires the position data of the position where the force detection unit 31 detected the external force exceeding the external force threshold.

[0056] The operation control unit 62 notifies the contact operation execution unit 61 of the acquired position information and the fact that the cooperative robot 3 has stopped. The contact operation execution unit 61 notifies the numerical control device 4 of the acquired position information and the fact that the cooperative robot 3 has stopped via the data transmission / reception unit 60.

[0057] As described above, when the contact operation command unit 47 is notified by the numerical control device 4 that the cooperative robot 3 has stopped moving, it executes the next command block of the robot control command. Furthermore, the numerical control device 4 executes, for example, the following command block and measures the dimensions of the object based on the acquired position data of the object.

[0058] Fig. 3 and Fig. 4 are diagrams showing examples of contact skip commands. The Fig. 3 is a command when the cooperative robot 3 executes the contact skipping operation during linear operation. The contact skipping command shown in Fig. 4 is a command when the cooperative robot 3 performs the contact skipping operation during the operation of each axis.

[0059] The Fig. The contact skip command shown in Figure 3 includes a plurality of handling commands and stop position storage targets corresponding to the handling commands. The respective handling commands are G codes from G100.1 to G100.9. The stop position storage targets are six macro variables corresponding to the linear motion of each of X, Y, Z, A, B, and C axes. For example, the stop position storage targets corresponding to the handling command G100.1 are six macro variables #100000 to #100005.

[0060] The Fig. The contact skip command shown in Figure 4 includes a variety of unwinding commands and stop position storage targets corresponding to the unwinding commands. The respective handling commands are G codes from G200.1 to G200.9. The stop position storage targets are six macro variables corresponding to the operation of each axis from J1, J2, J3, J4, J5, and J6. For example, the stop position storage targets corresponding to the machining command G200.1 are six macro variables #100060 to #100065.

[0061] Fig. 5 is a diagram showing an example of a numerical control program according to the present embodiment. Fig. 6 is a sequence diagram showing the flow of signals and information between the numerical control device 4 and the robot control device 5 when the Fig. 5 is executed. In the Fig. 5 and Fig.6, the numerical control device 4 executes a numerical control program including a contact skip operation command and measures the dimensions of a machined workpiece as an object by the cooperative robot 3.

[0062] First, the command "M 1 00" is issued, and the robot controller 5 waits for the machining system of the machine tool 2 to complete machining of the workpiece to be machined. Next, "G68.8" is input, and each axis coordinate system is selected. With the robot control command "G7.3 J1=_J2=_J3=_J4=_J5=_J6=_", the robot controller 5 positions the cooperative robot 3 at the home position on each axis coordinate system. The coordinate values for the intended position of the cooperative robot 3 are entered in the underline areas of the command.

[0063] Next, "G68.9" is commanded, and Cartesian coordinates are selected. When "G01 X_Y_Z_A_B_C_P_" is commanded, the robot controller 5 moves linearly and positions the cooperative robot 3 at a specified position (a specified position in the machine tool 2) in Cartesian coordinates. The coordinate values of the desired position of the cooperative robot 3 are entered in the lower part of the command.

[0064] Next, "G53.8 Q2" is commanded, and the cooperative robot 3 selects (changes) the tool coordinate system No. 2 (contact tool). When "G01 X_Y_Z_A_B_C_P_" is commanded, the robot controller 5 linearly moves the cooperative robot 3 and positions it at the start position for measuring the workpiece dimensions in the +X direction in Cartesian coordinates.

[0065] Then, the command "G100.0 X100.0 Q1.0 F100;" is issued, and the cooperative robot 3 and the robot controller 5 begin the contact skipping operation. This command moves the cooperative robot 3 in the +X direction and stops the movement of the cooperative robot 3 when the external force detector 31 detects an external force. Furthermore, the command sets the external force detection threshold to 1.0 N and the movement speed of the cooperative robot 3 to 100 mm / min.

[0066] In response to this command, the robot controller 5 causes the cooperative robot 3 to move linearly in the +X direction at a speed of 100 mm / min. Then, when an external force of more than 1.0 N is detected, the robot controller 5 stops the movement of the cooperative robot 3 and notifies (transmits) the numerical control device 4 of the position where the external force was detected.

[0067] When the robot controller 5 notifies the cooperative robot 3 of its movement stop, the contact operation command unit 47 executes the next block of the robot control command, namely "G01 X_Y_Z_A_B_C_P_." With the robot control command "G01 X_Y_Z_A_B_C_P_," the robot controller 5 moves linearly and positions the cooperative robot 3 at the start position for measuring the workpiece dimensions in the X direction in Cartesian coordinates.

[0068] Then, the command "G100.1 X-100.0 Q1.0 F100;" is issued, and the cooperative robot 3 and the robot controller 5 begin the contact skipping operation. This command moves the cooperative robot 3 in the -X direction and stops the movement of the cooperative robot 3 when the external force detector 31 detects an external force. Furthermore, the command sets the external force detection threshold to 1.0 N and the movement speed of the cooperative robot 3 to 100 mm / min.

[0069] In response to this command, the robot control device 5 causes the cooperative robot 3 to move linearly in the X direction at a speed of 100 mm / min. Then, when an external force of more than 1.0 N is detected, the robot control device 5 stops the movement of the cooperative robot 3 and notifies (transmits) the position information of the position where the external force was detected to the numerical control device 4.

[0070] When the stop of the movement of the cooperative robot 3 is notified by the numerical control device 4, the contact operation command unit 47 commands the next command block of the robot control command, that is, "#100 = 100006 - #100000." For example, #100006 is a macro variable that is a storage destination for the position information in the +X direction, and #100000 is a macro variable that is a storage destination for the position information in the -X direction. Accordingly, the robot control device 5 can calculate the dimension #100 of the workpiece from the position information of the two locations where the external force is detected.

[0071] Then, when the command "G01 X_Y_Z_A_B_C_P_" is given, the robot controller 5 moves linearly and positions the cooperative robot 3 at a specific position outside the machine tool 2 in Cartesian coordinates. As a result, the cooperative robot 3 is retracted to the outside of the machine tool 2.

[0072] Next, the "M101" command is issued, and the robot controller 5 waits for the machining system to complete the workpiece dimension measurement. Next, "M30" is issued, and the numerical control program is terminated.

[0073] As described above, the numerical control device 4 according to the present embodiment includes the analysis unit 42 that analyzes the robot control command in the numerical control program, the operation control unit 47 that generates a contact skip operation signal to cause the robot control device 5 to execute the contact skip operation according to the contact skip operation signal analyzed by the analysis unit 42, and the robot command signal generation unit 45 that generates the robot command signal including the contact skip operation signal and transmits the robot command signal to the robot control device 5. The contact skip command includes an external force threshold for stopping the cooperative robot 3 when the cooperative robot 3 detects an external force.According to the contact skip operation signal, when the external force detected by the cooperative robot 3 exceeds the external force threshold during the movement of the cooperative robot 3, the robot control device 5 stops the movement of the cooperative robot 3 and notifies the numerical control device 4 that the cooperative robot 3 has stopped the movement. When the robot control device 5 notifies the completion of the movement of the cooperative robot 3, the contact operation command unit 47 executes the next command block of the robot control command.

[0074] With such a configuration, the numerical control device 4 sets the threshold value of the external force acting on the cooperative robot 3 according to the command in the numerical control program, moves the cooperative robot 3, and stops the movement of the cooperative robot 3 when the external force is detected. This allows the numerical control device 4 to detect contact with the object and execute a continuous numerical control program by executing the command of the next sentence after contact detection. Furthermore, since the numerical control device 4 allows skipping of contacts of the cooperative robot 3 through a command in the numerical control program, the user of the machine tool 2 can easily utilize the function of the cooperative robot 3.

[0075] Furthermore, the next command block of the robot control command may include detecting, from the robot control device 5, a position where the cooperative robot 3 detected contact during the contact skipping operation and measuring the dimension of the object based on the detected position. With such a configuration, it is possible for the numerical control device 4 to measure the dimensions of an object, such as a workpiece machined by the machine tool 2.

[0076] Furthermore, the contact skipping operation signal may include an indication of a force component or a torque component when the force detection unit 31 of the cooperative robot 3 detects the external force depending on the moving direction or the moving speed of the cooperative robot 3. With such a configuration, the numerical control device 4 is able to measure the dimensions of the object for the specified component.

[0077] Furthermore, the contact skipping operation signal may include a threshold value for the external force of the contact skipping operation being smaller than the threshold value for detecting the external force of the contact stop operation, in which the operation of the cooperative robot 3 is stopped by an external contact. With such a configuration, it is possible for the numerical control device 4 to measure the dimensions of the object without stopping the operation when the cooperative robot 3 comes into contact with the object.

[0078] Furthermore, the numerical control system 1 includes the numerical control device 4 having the above-described configuration and the robot control device 5, which includes the contact operation execution unit 61 that stops the movement of the cooperative robot 3 according to the contact skip operation signal and notifies the numerical control device 4 that the cooperative robot 3 has stopped the movement when the external force detected by the cooperative robot 3 exceeds the external force threshold. When the stop of the movement of the cooperative robot 3 is notified by the robot control device 5, the contact operation command unit 47 executes the next command block of the robot control command.With such a configuration, the numerical control system 1 can detect contact with an object and execute a continuous numerical control program by executing a command of the next block after the contact is detected. Since the numerical control system 1 allows skipping of contacts of the cooperative robot 3 through the command in the numerical control program, the user of the machine tool 2 can easily utilize the function of the cooperative robot 3.

[0079] Although embodiments of the present invention have been described above, the numerical control system 1 can be implemented by hardware, software, or a combination thereof. The control method performed by the numerical control system 1 can also be implemented by hardware, software, or a combination thereof. Here, implementation by software indicates that it is implemented by a computer that reads and executes a program.

[0080] The program can be stored on and made available to the computer on various types of non-transitory computer-readable media (non-transitory computer-readable medium). Non-transitory computer-readable media includes various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic recording media (e.g., a hard disk drive), magneto-optical recording media (e.g., a magneto-optical disk), CD-ROMs (read-only memory), CD-Rs, CD-R / Ws, and semiconductor memories (e.g., mask ROM, programmable ROM (PROM), erasable PROM (EPROM), flash ROM, and random access memory (RAM)).

[0081] Although the present disclosure has been described in detail, the present disclosure is not limited to the individual embodiments described above. Various additions, substitutions, modifications, partial deletions, and the like can be made to these embodiments without departing from the gist of the present disclosure or the gist of the present disclosure as understood from the contents described in the claims and their equivalents. These embodiments can also be implemented in combination. In the embodiments described above, the order of each operation and the order of each process are shown only as an example and are not limited thereto. The same applies to cases where numerical values or numerical expressions are used in the description of the embodiment described above.

[0082] The following supplementary notes are further disclosed with respect to the embodiments and modifications described above. (Supplementary Note 1)

[0083] The numerical control device (4) for controlling the robot (3) via the robot control device (5) using a numerical control program is provided, the numerical control device comprising: the analysis unit (42) that analyzes a robot control command in the numerical control program; the contact operation command unit (47) that generates a contact skip operation signal for causing the robot controller to execute a contact skip operation according to the robot control command analyzed by the analysis unit; and the robot command signal generation unit (45) that generates a robot command signal including the contact skip operation signal and transmits the robot command signal to the robot controller. The robot control command includes an external force threshold for stopping the robot when the robot detects an external force.According to the contact skip operation signal, the robot control device stops the movement of the robot when the external force detected by the robot exceeds the external force threshold during a movement of the robot and notifies the numerical control device that the robot has stopped moving. The contact operation command unit executes a next command block of the robot control command when notified by the robot control device that the robot has stopped moving. Numerical control device. (Supplementary Note 2)

[0084] In the numerical control device as described in Supplementary Note 1, the next command block of the robot control command includes detecting a position from the robot control device at which the robot detected a contact during the contact skipping operation and measuring a dimension of an object according to the detected position. (Supplementary Note 3)

[0085] In the numerical control device as described in Supplementary Note 1, the contact skipping operation signal includes determining a force component or a torque component when the robot detects an external force corresponding to a moving direction or a moving speed of the robot. (Supplementary Note 4)

[0086] In the numerical control device as described in Supplementary Note 1, the robot is a cooperative robot that stops an operation upon detection of contact with a person, and the contact skip operation signal includes setting an external force threshold of the contact skip operation smaller than an external force detection threshold of a contact stop operation in which the cooperative robot stops an operation due to external contact. (Supplementary Note 5)

[0087] The numerical control system (1) for controlling the robot (3) via the robot control device (5) using a numerical control program of the numerical control device (4) is provided, wherein the numerical control device comprises the analysis unit (42) that analyzes a robot control command in the numerical control program; the contact operation command unit (47) that generates a contact skip operation signal for causing the robot control device to execute a contact skip operation according to the robot control command analyzed by the analysis unit; and the robot command signal generation unit (45) that generates a robot command signal including the contact skip operation signal and transmits the robot command signal to the robot control device.The robot control command includes an external force threshold for stopping the robot when the robot detects an external force. The robot control device includes a contact operation execution unit that stops the movement of the robot according to the contact skip operation signal when the external force detected by the robot exceeds the external force threshold during a movement of the robot, and notifies the numerical control device that the robot has stopped moving. The contact operation command unit executes a next command block of the robot control command when notified by the robot control device that the robot has stopped moving. (Supplementary Note 6)

[0088] In the numerical control system as described in Supplementary Note 5, the next command block of the robot control command includes detecting, from the robot control device, a position at which the robot detected contact during the contact skipping operation and measuring a dimension of an object corresponding to the detected position. (Supplementary Note 7)

[0089] In the numerical control system as described in Supplementary Note 5, the contact skipping operation signal includes determining a force component or a torque component when the robot detects an external force corresponding to a moving direction or a moving speed of the robot. (Supplementary Note 8)

[0090] In the numerical control system described in Supplementary Note 5, the robot is a cooperative robot that stops an operation when it detects contact with a person, and the contact skip operation signal includes setting an external force threshold of the contact skip operation smaller than an external force detection threshold in a contact stop operation in which the cooperative robot stops an operation due to external contact. EXPLANATION OF REFERENCE NUMBERS 1 Numerical control system 2 machine tools 3 Cooperative robot 4 Numerical control device 5 Robot control 31 External force detection unit 41 Program input unit 42 Analysis Unit 43 Operating control unit 44 storage unit 45 Robot command signal generation unit 46 Data transmission / reception unit 47 Contact operation command unit 51 storage unit 52 Analysis Unit 53 Robot instruction generation unit 54 Program Management Unit 55 Path control unit 56 Kinematics control unit 57 Servo control unit 58 Payload setting selection unit 59 Dynamic control unit 60 Data transmission / receiving unit 61 Contact operation execution unit 62 Contact control unit QUOTES CONTAINED IN THE DESCRIPTION

[0000] This list of documents submitted by the applicant was generated automatically and is included solely for the convenience of the reader. This list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions. Cited patent literature

[0000] JP 2014-241018

[0004] JP 8-118275

[0050] JP 2015-58520

[0050]

Claims

[1] A numerical control device for controlling a robot via a robot control device using a numerical control program, the numerical control device comprising: an analysis unit that analyzes a robot control command in the numerical control program; a contact operation command unit that generates a contact skip operation signal to cause the robot control device to execute a contact skip operation according to the robot control command analyzed by the analysis unit; and a robot command signal generating unit that generates a robot command signal including the contact skipping operation signal and transmits the robot command signal to the robot control device, where the robot control command includes an external force threshold for stopping the robot in a case where the robot detects an external force, the robot control device stops the movement of the robot according to the contact skipping operation signal when the external force detected by the robot exceeds the external force threshold during a movement of the robot, and notifies the numerical control device that the robot has stopped the movement, and the contact operation command unit executes a next command block of the robot control command when notified by the robot control device that the robot has stopped its movement. [2] The numerical control device according to claim 1, wherein the next command block of the robot control command includes detecting from the robot control device a position at which the robot detected contact during the contact skipping operation and measuring a dimension of an object corresponding to the detected position. [3] The numerical control device according to claim 1, wherein the contact skipping operation signal includes determining a force component or a torque component when the robot detects an external force, according to a moving direction or a moving speed of the robot. [4] The numerical control device according to claim 1, wherein the robot is a cooperative robot that stops an operation when detecting contact with a person, and the contact skipping operation signal comprises setting an external force threshold of the contact skipping operation to a smaller value than an external force detection threshold of a contact stopping operation in which the cooperative robot stops an operation due to external contact. [5] A numerical control system for controlling a robot via a robot control device using a numerical control program of a numerical control device, the numerical control device comprising: an analysis unit that analyzes a robot control command in the numerical control program; a contact operation command unit that generates a contact skip operation signal to cause the robot control device to execute a contact skip operation according to the robot control command analyzed by the analysis unit; and a robot command signal generating unit that generates a robot command signal including the contact skipping operation signal and transmits the robot command signal to the robot control device, where the robot control command includes an external force threshold for stopping the robot in a case where the robot detects an external force, according to the contact skipping operation signal, the robot control device comprises a contact operation execution unit which, when the external force detected by the robot exceeds the external force threshold during a movement of the robot, stops the movement of the robot and notifies the numerical control device that the robot has stopped the movement, and the contact operation command unit executes a next command block of the robot control command when notified by the robot control device that the robot has stopped its movement. [6] The numerical control system according to claim 5, wherein the next command block of the robot control command includes detecting, from the robot control device, a position at which the robot detected contact during the contact skipping operation, and measuring a dimension of an object corresponding to the detected position. [7] The numerical control system according to claim 5, wherein the contact skipping operation signal includes determining a force component or a torque component when the robot detects an external force according to a moving direction or a moving speed of the robot. [8] The numerical control system according to claim 5, wherein the robot is a cooperative robot that stops an operation upon detection of contact with a person, and the contact skipping operation signal comprises setting an external force threshold of the contact skipping operation to a smaller value than an external force detection threshold of a contact stopping operation in which the cooperative robot stops an operation due to external contact.

Citation Information

Patent Citations

  • 2014-241018

  • 8-118275

  • 2015-58520