Robot control device, machine tool and cooperation system
The cooperation system between robot control devices and machine tools addresses the complexity of integrating robots by allowing direct access and modification of the machine tool's storage area through the robot control device, eliminating the need for IO instruments and ladder program modifications, thus enhancing usability and reducing data corruption risks.
Patent Information
- Application Number
- DE112022007637
- Authority / Receiving Office
- DE · DE
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2022-10-28
- Publication Date
- 2025-06-05
AI Technical Summary
Current cooperation systems between robot control devices and machine tools require IO instruments, complex ladder program modifications, and hardware changes, making it difficult for end users to integrate or retrofit robots into existing machine tools.
The system includes a robot control device with a communication unit and a robot program execution unit that can access and modify the storage area of a machine tool's ladder program without the need for IO instruments or ladder program modifications, using a synchronous storage area for data synchronization.
This solution eliminates the need for IO instruments and ladder program modifications, allowing end users to easily integrate or retrofit robot control devices into existing machine tools, enhancing usability and reducing the risk of data corruption.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical field
[0001] The present disclosure relates to a robot control device, a machine tool, and a collaboration system, and more particularly relates to a collaboration system including a machine tool and a robot control device, the machine tool and the robot control device being configured to collaborate, and the robot control device and the machine tool used in the collaboration system. State of the art
[0002] Cooperative systems in which a robot control device and a machine tool cooperate are disclosed, for example, in Patent Documents 1, 2, and 3.
[0003] Patent Document 1 discloses an integrated control system of a work robot including a robot control CPU, a work tool control CPU, a shared memory, and a system bus connected to boards of the CPUs and the memory to integrate the CPUs and the memory. Patent Document 1 also discloses an integrated control system of a work robot connected to another system via a network CPU.
[0004] Patent Document 2 discloses a production line control device applied to a case where a plurality of operating instruments are controlled by computer programs to assemble a plurality of product models. In the production line control device, a control program number for each operating instrument corresponding to a product model is stored in an X-register, and the control program number for the operating instrument corresponding to a specific model is determined based on information indicating the product model and the storage content of the X-register. Then, the production line control device operates each operating instrument in accordance with a control program of the specified control program number.
[0005] Patent Document 3 discloses that a manufacturing system includes a plurality of types of manufacturing devices operated by operation programs with mutually different language specifications. The manufacturing system includes a cell control device that generates an operation program to be executed by each manufacturing device, and a communication device that transmits the operation program generated by the cell control device to the manufacturing device. A common language specification is predetermined for manufacturing devices of different types. The cell control device includes a reading unit that reads a common computer program generated based on the common language specification and a conversion unit that converts the common computer program into the operation program of the respective manufacturing devices.
[0006] For example, a ladder logic program that sequences a work robot is disclosed in Patent Document 4. Patent Document 4 discloses that a ladder logic program is generated using a function block that executes predetermined processing, an internal counter that increments a count value by one each time an operation of the function block is completed, and a determination block that determines whether the count value of the internal counter is equal to an operation count value set in the determination block, and outputs that the operation conditions of the function block are satisfied when it is determined that the count values are equal.Patent Document 4 also discloses that a computer program is displayed so that a user can set a process number indicating an optional process order, wherein the determination block is set as the operation count, and the function block is connected to an output of the determination block corresponding to the number of an executed process. Citation listPatent document Patent Document 1: Unexamined Japanese Patent Application Publication No. H09-323279; Patent Document 2: Unexamined Japanese Patent Application Publication No. H06-114656; Patent Document 3: Unexamined Japanese Patent Application Publication No. 2017-134722; Patent Document 4: Unexamined Japanese Patent Application Publication No. 2016-081223. Disclosure of the invention Problems to be solved by the invention
[0007] In a collaborative system in which a robot controller and a machine tool cooperate, communication is performed between the machine tool and the robot controller, for example, to establish a switch interlock between the operation of a robot controlled by the robot controller and the machining by the machine tool. For this communication, IO communication, for example, is typically used. IO communication requires an IO instrument for IO communication, the association between the IO instrument and a ladder program, such as modifying a ladder program for the machine tool, and the like, which complicates setup. In some cases, a robot must be later introduced into a machine tool in operation.In such a case, it is difficult for end users to add hardware such as an IO instrument or modify the ladder programs, and therefore it is necessary to request support from a machine tool manufacturer.
[0008] Thus, a robot control device, a machine tool, and a cooperation system were required that eliminate the need for an IO instrument for IO communication, the association between the IO instrument and a ladder program, the modification of a ladder program for a machine tool, and the like. Means of solving the tasks
[0009] A representative first aspect of the present disclosure is a robot control device that cooperates with a machine tool that is sequence-controlled by a ladder program, the robot control device including a communication unit that communicates with the machine tool; and a robot program execution unit that determines an address assigned to a memory area of the machine tool for referencing by the ladder program, requests data of the address of the memory area from the machine tool via the communication unit, and is capable of accessing the data from the machine tool via the communication unit.
[0010] A representative second aspect of the present disclosure is a machine tool that cooperates with a robot control device that controls a robot with a robot program, the machine tool comprising: a communication unit that communicates with the robot control device; a ladder program execution unit that executes a ladder program that performs sequence control of the machine tool; a storage area accessed by the ladder program execution unit; a synchronous storage area provided separately from the storage area; and a synchronous storage forwarding unit that stores write data acquired from the robot control device via the communication unit in the synchronous storage area and forwards the stored write data to the storage area when execution of one cycle of the ladder program is completed.
[0011] A representative third aspect of the present disclosure is a cooperation system including a machine tool and a robot control device, wherein the machine tool and the robot control device are configured to cooperate, wherein the robot control device is the robot control device of the first aspect or the machine tool is the machine tool of the second aspect. Brief description of the drawings Fig. 1 is a block diagram showing the configuration of a cooperation system of a first embodiment of the present disclosure. Fig. Figure 2 is a diagram showing an example of a robot program in a case of cooperation with a machine tool. Fig. 3 is a block diagram showing the configuration of a cooperation system of a second embodiment of the present disclosure. Fig. 4 is a flowchart showing the operation of the cooperation system of the second embodiment. Fig. Figure 5 is a diagram describing an example of tearing. Preferred embodiment of the invention
[0012] Embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings. (First embodiment)
[0013] Fig. 1 is a block diagram showing the configuration of a cooperation system of a first embodiment of the present disclosure. As shown in Fig. As shown in Figure 1, this collaborative system 10 includes a robot control device 100 and a machine tool 200. The robot control device 100 and the machine tool 200 cooperate. The robot control device 100 controls a robot 300.
[0014] The robot control device 100 includes a robot program 101, an execution unit 102, and a communication unit 103. The execution unit 102 is a robot program execution unit. The robot program 101 is a computer program that controls the robot 300. The robot program 101 contains reference commands to a ladder program 204 of the machine tool 200 for cooperative control of the robot control device 100 and the machine tool 200. The robot program 101 is, for example, a robot ladder program that sequence-controls the robot 300.
[0015] The execution unit 102 controls the robot 300 based on the robot program 101. In a case where the robot program 101 includes reference commands, the execution unit 102 sends a reference request to a communication unit 201 of the machine tool 200 via the communication unit 103. The reference request includes an address assigned to a memory area 202 for reference by the ladder program 204 of the machine tool 200, which will be described later. Accordingly, the execution unit 102 designates an address assigned to the memory area 202 of the machine tool 200 to be referenced by the ladder program 204 and is able to access data of the address of the memory area 202 via the communication unit 103.After receiving the data designated at the address from the machine tool 200 via the communication unit 103, the execution unit 102 executes the robot program 101 using the data. The communication unit 103 communicates with the communication unit 201 of the machine tool 200 via an Ethernet (R) or the like.
[0016] The machine tool 200 includes the communication unit 201, the memory area 202, an execution unit 203, and the ladder program 204. The execution unit 203 is a ladder program execution unit.
[0017] The communication unit 201 communicates with the communication unit 103 via an Ethernet (R) or the like. The memory area 202 stores data required by the execution unit 203 to execute the ladder program 204. The memory area 202 is assigned an address to reference data during the execution of the ladder program.
[0018] The execution unit 203 reads the ladder program 204 and controls the machining of a machining target object (workpiece) by the machine tool 200. When the execution unit 203 receives a reference request with an address via the communication unit 201, it references the memory area 202 using the address and reads the data designated by the address. The execution unit 203 transmits the read data to the communication unit 103 of the robot control device 100 via the communication unit 201.
[0019] Fig. Figure 2 is a diagram showing an example of a robot program in the case of cooperation with the machine tool. In the Fig. In the robot program shown in Figure 2, "7: R[1] = ReadCNCPMC (Y0000.0)" is a command that stores data corresponding to the address (Y0000.0) of the ladder program 204 on the machine tool 200 side in a register (R[1]) of the execution unit 102. The data corresponding to the address (Y0000.0) is stored in the memory area 202. The execution unit 102 designates the address (Y0000.0) in the ladder program 204 of the machine tool 200 as an argument and performs a reference request. A return value of the machine tool 200 is the data corresponding to the designated address (Y0000.0) read from the memory area 202. The execution unit 102 stores the data corresponding to the address (Y0000.0) in the register R[1] in the execution unit 102. As shown in Fig. 2, the robot program also contains commands other than robot operation commands.
[0020] The above description refers to an example in which the execution unit 102 reads data from the memory area 202 of the machine tool 200, but the present embodiment is also applicable to an example in which the execution unit 102 writes data to the memory area 202 of the machine tool 200. In this case, the robot program 101 of the robot control device 100 includes write commands for the ladder program 204 of the machine tool 200. Then, the execution unit 102 sends a write request to the communication unit 201 of the machine tool 200 via the communication unit 103. The write request includes an address assigned to the memory area 202 of the machine tool 200 and write data.
[0021] In the above-described embodiment, the robot control device is capable of designating the memory area of the machine tool with the address of the ladder program and accessing the memory area. This eliminates the need for an IO device for IO communication, the association between the IO device and a ladder program, the modification of the ladder program for the machine tool, and the like. Consequently, even when the robot control device is retrofitted to an existing machine tool, an end user can handle it. (Second embodiment)
[0022] Fig. 3 is a block diagram illustrating the configuration of a cooperation system of a second embodiment of the present disclosure. Fig. 4 is a flowchart showing the operation of the cooperation system of the second embodiment. As shown in Fig. 3, this cooperation system 11 comprises the robot control device 100 and a machine tool 210. In the cooperation system 11, the machine tool 200 of the Fig. 1 is replaced by the machine tool 210.
[0023] The machine tool 210 includes the communication unit 201, the storage area 202, the execution unit 203, the ladder program 204, a synchronous storage area 205, and a synchronous storage forwarding unit 206. The configuration of the machine tool 210 except for the synchronous storage area 205 and the synchronous storage forwarding unit 206 is the same as that of the machine tool 200, so their description is omitted.
[0024] The operation of the collaboration system 11 is described below with reference to Figs. 3 and 4. The robot program 101 of the robot control device 100 contains write commands for the ladder program 204 of the machine tool 200.
[0025] As in Fig. 4, the execution unit 102 of the robot control device 100 starts the execution of the robot program 101 (step S11) and sends a write request to the communication unit 201 of the machine tool 200 via the communication unit 103 in a case where the robot program 101 includes write commands (step S12). The write request includes an address assigned to the synchronous memory area 205 of the machine tool 200 and write data.
[0026] As in Fig. 4, the synchronous memory forwarding unit 206 writes the write data into the synchronous memory area 205 based on the write request received via the communication unit 201 and stores data (step S21). The execution unit 203 of the machine tool 200 has already started executing the ladder program 204 (step S31). The synchronous memory forwarding unit 206 checks the execution status of the ladder program 204 with the execution unit 203 (step S22). In a case where the execution of one cycle of the ladder program 204 is completed, the execution unit 203 notifies the synchronous memory forwarding unit 206 of the completion of the execution (step S32).
[0027] If the synchronous memory forwarding unit 206 has not received the execution completion notification from the execution unit 203, the synchronous memory forwarding unit 206 remains on standby to wait for the completion of one cycle of the ladder program 204. If the synchronous memory forwarding unit 206 has received the execution completion notification, the synchronous memory forwarding unit 206 refers to the contents of the synchronous memory area 205 and writes (forwards) data written to the synchronous memory area 205 to the memory area 202, thereby updating the data (step S23). After that, the synchronous memory forwarding unit 206 notifies the robot control device 100 of the data update and write completion (completion notification) via the communication unit 201 and also performs the completion notification to the execution unit 203 (step S24).After the execution unit 203 receives the termination message, it executes the ladder program 204 using the updated data in the memory area 202.
[0028] In the Fig. In the robot program shown in Figure 2, "5: CNC K0000.1 1" is a command that writes "1" to the synchronous memory area 205 designated by an address K0000.0 of the ladder program 204 on the machine tool 200 side. The execution unit 102 specifies the address (K0000.0) in the ladder program 204 of the machine tool 200 and executes a write request. After the write request is detected, the synchronous memory forwarding unit 206 of the machine tool 200 executes the Fig. 4.
[0029] In the present embodiment described above, the robot control device is capable of designating the synchronous memory area of the machine tool with the address of the ladder program and accessing and writing to the synchronous memory area. This eliminates the need for an IO instrument for IO communication, the association between the IO instrument and a ladder program, the modification of the ladder program for the machine tool, and the like. Consequently, even if the robot control device is retrofitted to an existing machine tool, an end user can handle it. Furthermore, in the present embodiment, it is possible to prevent unexpected malfunctions such as tearing.
[0030] Tearing refers to data corruption caused by reading or writing data at inappropriate times. Fig. 5 is a diagram describing an example of tearing. As in Fig. 5, consider, for example, a case where there is an 8-bit memory area shared by a plurality of processes, a process S A continuously updates data bit by bit and a process S B reads all 8 bits at once at any given time. In such a case, asynchronous reading and writing causes problems. If the process S B performs the reading asynchronously, while the process S A writes, inconsistent data is sent from the process S B read because the data is currently being processed by process S A be updated.
[0031] Since the synchronous storage area is provided separately from the storage area in the present embodiment, it is possible to prevent asynchronous reading of data from the storage area at inappropriate timings, thereby avoiding tearing.
[0032] In each of the embodiments described above, the robot control device and the machine tool of the collaborative system can be implemented using hardware, software, or a combination thereof to implement the functional blocks included in the robot control device and the machine tool. Software implementation means that the implementation is performed by a computer that reads and executes a computer program.
[0033] To implement functional blocks included in the robot control device and the machine tool in the present embodiment through software or a combination thereof, the robot control device and the machine tool each specifically include an arithmetic processing device such as a central processing unit (CPU). The arithmetic processing device functions as an execution unit. The robot control device and the machine tool each also include an auxiliary storage device such as a hard disk drive (HDD) on which various control programs, such as application software and an operating system (OS), are stored, and a main storage device such as a random access memory (RAM) for storing data temporarily required by the arithmetic processing device when executing a computer program.The main memory device includes the storage area and / or the synchronous storage area.
[0034] Then, the arithmetic processing device in the robot control device and the machine tool reads the application software or the operating system from the auxiliary storage device and performs arithmetic processing based on the application software or the operating system, while loading the read application software or the operating system into the main storage device. Furthermore, various types of hardware included in each device are controlled based on the result of the arithmetic processing. Accordingly, the functional blocks of the present embodiment are implemented.
[0035] Components included in both the robot control device and the machine tool can be implemented by hardware, including electronic circuits, etc. In a case where both the robot control device and the machine tool are composed of hardware, some or all of the functions of the components included in both the robot control device and the machine tool can be implemented by an integrated circuit (IC) such as an application-specific integrated circuit (ASIC), a gate array, a field-programmable gate array (FPGA), or a complex programmable logic device (CPLD).
[0036] Computer programs can be stored and delivered to a computer using various types of non-transitory computer-readable media. Non-transitory computer-readable media includes various types of tangible storage media. Examples of non-transitory computer-readable media include magnetic storage media (e.g., hard disk drives), magneto-optical storage media (e.g., magneto-optical disks), CD-ROMs (read-only memories), CD-Rs, CD-R / Ws, and semiconductor memories (e.g., mask ROMs, programmable ROMs (PROMs), erasable PROMs (EPROMs), flash ROMs, and random access memories (RAMs)). Computer programs can be delivered to a computer through various types of transient computer-readable media.
[0037] An effect of at least one of the embodiments described above is that the robot control device is capable of designating the memory area or the synchronous memory area of the machine tool with the address of the ladder program and accessing the memory area or the synchronous memory area. This eliminates the need for an IO instrument for IO communication, the association between the IO instrument and a ladder program, the modification of the ladder program for the machine tool, and the like. This leads to the effect that even when the robot control device is retrofitted to an existing machine tool, an end user can handle it.
[0038] Although the present disclosure is described above, the present disclosure is not limited to the individual embodiments described above. The embodiments may be subjected to various kinds of additions, replacements, changes, partial deletions, and the like without departing from the scope of the present disclosure or the gist of the present disclosure, which is understood from the contents described in the claims and their equivalents. The embodiments may be combined with each other. For example, the orders of operation and processing in the embodiments described above are presented as examples, and the present invention is not limited thereto.
[0039] The following addendums are disclosed in addition to the embodiments and modifications described above. (Addendum 1)
[0040] A robot control device (100) that operates in cooperation with a machine tool (200, 210) that is sequence-controlled by a ladder program, the robot control device comprising a communication unit (103) that communicates with the machine tool; and a robot program execution unit (102) that designates an address assigned to a memory area (202) of the machine tool for reference by the ladder program, requests data of the address of the memory area from the machine tool via the communication unit, and is capable of accessing the data from the machine tool via the communication unit. (Addendum 2)
[0041] The robot control device according to addendum (1), wherein the robot program execution unit (102) determines the memory area at the address from an instruction of a robot program. (Addendum 3)
[0042] The robot control device according to addendum (2), wherein a robot ladder program that performs sequence control is included as a robot program, and the robot ladder program designates the memory area at the address and accesses the memory area. (Addendum 4)
[0043] A cooperation system (10, 11) comprising the robot control device (100) according to any one of the addendums (1) to (3) and a machine tool (200, 210), wherein the robot control device and the machine tool are configured to cooperate, wherein the machine tool (200, 210) comprises a ladder program execution unit (203) that executes a ladder program that performs sequence control of the machine tool, a memory area (202) accessed by the ladder program execution unit, and a communication unit (201) that communicates with the robot control device, and the memory area is assigned an address for reference by the ladder program. (Addendum 5)
[0044] A machine tool (210) that cooperates with a robot control device (100) that controls a robot with a robot program, the machine tool including a communication unit (201) that communicates with the robot control device; a ladder program execution unit (203) that executes a ladder program that performs sequence control of the machine tool; a storage area (202) accessed by the ladder program execution unit; a synchronous storage area (205) provided separately from the storage area; and a synchronous storage forwarding unit (206) that stores write data acquired by the robot control device via the communication unit in the synchronous storage area and forwards the stored write data to the storage area when the execution of one cycle of the ladder program is completed. (Addendum 6)
[0045] A robot control device (100) that cooperates with the machine tool (210) according to the addendum (5), the robot control device (100) comprising a communication unit (103) that communicates with the machine tool; and a robot program execution unit (102) that determines an address assigned to a synchronous memory area of the machine tool for reference by the ladder program and transmits the write data in the synchronous memory area to the machine tool via the communication unit. (Addendum 7)
[0046] A cooperation system (11) comprising a machine tool (210) and a robot control device (100), wherein the machine tool and the robot control device are configured to cooperate, wherein the machine tool (210) comprises: a communication unit (201) that communicates with the robot control device, a ladder program execution unit (203) that executes a ladder program that performs sequence control of the machine tool, a storage area (202) accessed by the ladder program execution unit, a synchronous storage area (205) provided separately from the storage area, and a synchronous storage forwarding unit (206) that stores write data acquired from the robot control device via the communication unit in the synchronous storage area and forwards the stored write data to the storage area,when the execution of one cycle of the ladder program is completed, and the robot control device comprises: a communication unit (103) that communicates with the machine tool, and a robot program execution unit (102) that determines an address assigned to the synchronous memory area for referencing by the ladder program and transmits write data in the synchronous memory area to the machine tool via the communication unit., Explanation of reference symbols 10, 11 Cooperation system 100 robot control device 101 Robot Program 102 Execution unit 103 Communication unit 200, 210 machine tool 201 Communication Unit 202 memory area 203 Execution unit 204 Ladder Plan Program 205 Synchronous memory area 206 Synchronous memory forwarding 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 09-323279
[0006] JP 06-114656
[0006] JP 2017-134722
[0006] JP 2016-081223
[0006]
Claims
[1] A robot control device that cooperates with a machine tool that is sequence-controlled by a ladder program, the robot control device comprising: a communication unit that communicates with the machine tool; and a robot program execution unit that determines an address assigned to a memory area of the machine tool for referencing by the ladder program and is capable of accessing data of the address of the memory area via the communication unit. [2] The robot control device according to claim 1, wherein the robot program execution unit determines the memory area at the address from an instruction of a robot program. [3] The robot control device according to claim 2, wherein a robot ladder program that performs sequence control is included as the robot program, and the robot ladder program designates the memory area at the address and accesses the memory area. [4] A cooperation system comprising the robot control device according to any one of claims 1 to 3 and a machine tool, wherein the robot control device and the machine tool are configured to cooperate, the machine tool comprising: a ladder program execution unit that executes a ladder program that performs sequence control of the machine tool, a memory area accessed by the ladder program execution unit, and a communication unit that communicates with the robot control device, and wherein the memory area is assigned an address for reference by the ladder program. [5] A machine tool that cooperates with a robot control device that controls a robot with a robot program, the machine tool comprising: a communication unit that communicates with the robot control device; a ladder program execution unit that executes a ladder program that performs sequence control of the machine tool; a memory area accessed by the ladder program execution unit; a synchronous storage area provided separately from the storage area; and a synchronous memory forwarding unit that stores write data acquired from the robot control device via the communication unit in the synchronous memory area and forwards the stored write data to the memory area when the execution of one cycle of the ladder program is completed. [6] A robot control device that cooperates with the machine tool according to claim 5, the robot control device comprising: a communication unit that communicates with the machine tool; and a robot program execution unit that determines an address assigned to a synchronous memory area of the machine tool for referencing by the ladder program and transmits the write data in the synchronous memory area to the machine tool via the communication unit. [7] A cooperation system comprising a machine tool and a robot control device, the machine tool and the robot control device being configured to cooperate, the machine tool comprising: a communication unit that communicates with the robot control device, a ladder program execution unit that executes a ladder program that performs sequence control of the machine tool, a memory area accessed by the ladder program execution unit, a synchronous storage area provided separately from the storage area, and a synchronous memory forwarding unit that stores write data acquired from the robot control device via the communication unit in the synchronous memory area and forwards the stored write data to the memory area when the execution of one cycle of the ladder program is completed, and the robot control device comprises: a communication unit that communicates with the machine tool, and a robot program execution unit that determines an address assigned to the synchronous memory area for referencing by the ladder program and transmits write data in the synchronous memory area to the machine tool via the communication unit.
Citation Information
Patent Citations
2016-081223
2017-134722
09-323279
06-114656