Working robot operating system and method
By using AI algorithms in the control equipment to optimize the execution plan of the working robot repair process, the problems of welding nozzle waste and production cycle delay in multiple working robot environments are solved, and the stability of welding quality and production efficiency are improved.
Patent Information
- Application Number
- CN202410141220.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-08-18
- Filing Date
- 2024-01-31
- Publication Date
- 2025-02-21
AI Technical Summary
在多个工作机器人环境中,焊接喷嘴的浪费和生产周期延迟的问题,导致焊接质量不稳定和生产效率降低。
By integrating AI algorithms in the control equipment, based on the product production information and working component specification information of each working robot, the execution plan of the repair process is determined and optimized, ensuring the effective use of welding nozzles and the reasonable arrangement of production cycles.
It effectively prevents the waste of welding nozzles, reduces the delay in production cycle, and improves the stability and production efficiency of welding quality.
Smart Images

Figure CN119489433A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to a working robot operating system and method for performing a control operation so that the working robot performs a specific process. Background Art
[0002] Recently, with the automation of factory production of vehicles, working robots have been used to perform tasks in specific processes. For example, welding work (e.g., spot welding) typically performed in the body-in-white (BIW) process to produce a car body can be performed by a working robot.
[0003] The working robot may be equipped with a welding gun. The welding gun may be equipped with a welding nozzle including an upper nozzle and a lower nozzle. When the welding work is performed by the working robot, the working robot positions the upper nozzle and the lower nozzle at a position where the welding work is to be performed on a panel included in a vehicle body. Then, the working robot applies strong electricity for a short period of time so that the resistance heat generated when the electricity is applied can cause the panel to melt and join.
[0004] Generally, when a welding work is performed using a working robot, it is desirable to maintain constant welding quality due to the welding work. The welding quality may be determined by a current value flowing between an upper nozzle and a lower nozzle of a welding nozzle mounted on the working robot. Therefore, in order to keep the current value flowing between the upper nozzle and the lower nozzle constant, a cutting work such as automatic nozzle trimming (ATD) or a replacement work may be periodically performed on the upper nozzle and the lower nozzle.
[0005] However, since the timing of the cutting work or the replacement work may vary depending on the size and material of the upper and lower nozzles and the target vehicle on which the welding work is performed, and in addition, since a typical factory is equipped with a large number of working robots, it may be difficult to regularly manage the timing of the cutting work or the replacement work.
[0006] Therefore, in the case where a plurality of working robots are provided, an attempt is made to increase the convenience of management by performing cutting work or replacement work on the plurality of working robots at the same time, or by performing the cutting work or replacement work individually using a separate controller corresponding to each of the plurality of working robots.
[0007] However, when cutting work or replacement work is performed on multiple working robots at the same time, the welding nozzle of the working robot performing less welding work is replaced. Therefore, there is a problem that the welding nozzle is not used properly and cutting work or replacement work is frequently performed to cause waste of the welding nozzle.
[0008] When each of the plurality of working robots performs cutting work or changing work individually, it is possible to prevent the welding nozzle from being wasted. However, due to the cutting work or changing work of any one of the working robots, the process handled by the working robots may be delayed. When such delays occur continuously, there is a problem that the total cycle time is delayed and thus the productivity is reduced.
[0009] The subject matter described in this Background section is only intended to enhance understanding of the background of the present disclosure. Therefore, the Background section may contain information that does not form the prior art that is already known to a person of ordinary skill in the art to which the present disclosure belongs. Summary of the invention
[0010] Therefore, the present disclosure is made in view of the above-mentioned problems. The present disclosure provides a working robot operating system and method capable of preventing waste of necessary components when executing a process and preventing delay in the total cycle time of the process.
[0011] The technical problems to be solved by the present disclosure are not limited to the above technical problems. Based on the following description, ordinary technicians in the field to which the present disclosure belongs can more clearly understand other technical problems not mentioned in this article.
[0012] According to one aspect of the present disclosure, a working robot operating system is provided. The working robot operating system includes a plurality of working robots, each of which is configured to perform a working process involving degradation of a working part and a repair process for repairing the degradation of the working part. The working robot operating system also includes a control device, which is configured to determine an existing execution plan for executing the repair process of each of the plurality of working robots based on production information of a product of each working robot and specification information of the working part. The control device is also configured to determine an optimal execution plan for the repair process of each of the plurality of working robots based on the determined existing execution plan. The control device is further configured to control the plurality of working robots so that the repair process is performed by following the determined optimal execution plan.
[0013] The control device may be configured to determine an execution cycle of the repair process based on the production information and the specification information. The control device may also be configured to determine an existing execution plan based on the determined execution cycle.
[0014] The control device may be configured to determine each workload and the maximum workload of each working robot based on the production information and the specification information. The control device may also be configured to determine the execution cycle based on the determined each workload and the maximum workload of each working robot.
[0015] The control device may be configured to perform a control operation so that each of the plurality of working robots performs a repair process based on a determined existing execution plan. The control device may also be configured to determine whether a working process of each product of each of the plurality of working robots is delayed based on an execution result of the repair process performed by each of the plurality of working robots. The control device may further be configured to determine an optimal execution plan based on an existing execution plan of at least one working robot among the plurality of working robots whose working process is determined to be delayed.
[0016] The control device may be configured to classify a plurality of working robots into a group in which no delay occurs for each product, a group in which delay occurs in some products, and a group in which delay occurs in all products based on a determination as to whether a working process is delayed. The control device may also be configured to determine an optimal execution plan based on an existing execution plan of at least one working robot classified into the group in which delay occurs in some products or the group in which delay occurs in all products in the classification group.
[0017] The control device may be configured to determine an execution time point of a repair process of at least one working robot based on an existing execution plan. The control device may also be configured to determine a candidate sequence range of at least one working robot based on a preset cycle adjustment value, so that the determined execution time point is included in the last sequence position. The control device may further be configured to determine an optimal execution plan based on the determined candidate sequence range.
[0018] The control device may be configured to determine whether the work process is delayed in each of the candidate sequence positions included in the candidate sequence range. The control device may also be configured to classify the determined candidate sequence range into a first case where delay occurs in all candidate sequence positions and a second case where there is a candidate sequence position where no delay occurs. The control device may be further configured to determine the best execution plan based on the candidate sequence range having the earliest sequence position in the candidate sequence range classified as the first case.
[0019] The control device may be configured to determine a reference point used as a criterion for calculating a sequence score for each of the candidate sequence ranges classified as the first case and the second case. The control device may also be configured to calculate a sequence score for each sequence position based on the candidate sequence range with the earliest sequence position. The control device may be further configured to determine a time point corresponding to a sequence position with a highest sequence score in the calculated sequence scores as an optimal execution time point. The control device may be further configured to determine an optimal execution plan based on the determined optimal execution time point.
[0020] The control device may be configured to determine a next optimal execution time point based on a candidate sequence range having a next earliest sequence position among the candidate sequence ranges classified as the first case after determining the optimal execution time point.
[0021] The control device may be configured to determine, for a candidate sequence range existing before the determined optimal execution time point in the first case and the second case, a reference point of the candidate sequence range as the optimal execution time point.
[0022] The control device may be configured to receive process execution information obtained by execution of the plurality of working robots following the optimal execution plan. The control device may be further configured to determine a process execution result based on the received process execution information and cause the process execution result to be output.
[0023] The control device may be configured to determine a process execution result based on the process execution information, the process execution result including at least one of information on a number of repair processes of the work component or information on whether the repair of the work component is defective.
[0024] The control device may be configured to store the determined optimal execution plan. The control device may also be configured to determine whether the production information has changed. The control device may be configured to control the plurality of working robots so that the repair process is performed by following the stored optimal execution plan when the production information has not changed.
[0025] The control device may be configured to update the stored optimal execution plan in consideration of the changed production information when the production information changes. The control device may also be configured to control the plurality of working robots so that the repair process is performed by following the updated optimal execution plan.
[0026] The control device may be a programmable logic controller (PLC) configured to control a plurality of working robots.
[0027] The control device may include a corresponding counter provided to correspond to each of the plurality of working robots. The control device may further include a control panel configured to control the working robot by receiving a signal from the corresponding counter.
[0028] The working part may include a welding nozzle. The working process may be a welding process. The repair process may be an automatic nozzle dressing (ATD) process.
[0029] According to another aspect of the present disclosure, a working robot operating method is provided. The working robot operating method includes determining, by a control device, an existing execution plan for executing a repair process for repairing deterioration of a working part of each of a plurality of working robots based on production information of a product of each working robot and specification information of the working part. The working robot operating method also includes determining, by the control device, an optimal execution plan for the repair process of each of a plurality of working robots based on the determined existing execution plan. The working robot operating method further includes controlling, by the control device, a plurality of working robots so that the repair process is executed by following the determined optimal execution plan.
[0030] The working robot operation method may further include determining, by the control device, a process execution result based on process execution information obtained by execution of a plurality of working robots following an optimal execution plan after control, the process execution result including at least one of information about the number of repair processes of the working part and information about whether the repair of the working part is defective. The working robot operation method may further include outputting, by the control device, the process execution result. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] The above and other objects, features and other advantages of the present disclosure will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings, in which:
[0032] Figure 1 is a block diagram of a working robot operating system according to an embodiment of the present disclosure;
[0033] Figure 2 is a block diagram of the operation of a control device according to an embodiment of the present disclosure;
[0034] Figure 3 is a graph for describing a problem of an optimization model derived based on a conditional expression and a function according to an embodiment of the present disclosure;
[0035] Figure 4-10 is a table for describing a process of determining an optimal execution plan in a control device according to an embodiment of the present disclosure;
[0036] Figure 11-13 is a diagram for describing an effect obtained when an execution process causes a working robot to follow an optimal execution plan according to an embodiment of the present disclosure;
[0037] Figures 14A-14D is a diagram for describing execution result information of a repair process of a working component according to an embodiment of the present disclosure; and
[0038] Fig.15 and 16 It is a flowchart for describing a working robot operation method according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0039] When describing the embodiments disclosed in this specification, it has been determined that the detailed description of the relevant well-known technologies, configurations, functions or components may obscure the key points of the embodiments disclosed in this specification, so the detailed description thereof is omitted. In addition, the drawings are only used to enhance the understanding of the embodiments disclosed in this specification. The technical ideas of the present disclosure are not limited by the drawings. In addition, it should be understood that the present disclosure covers all changes, equivalents and substitutes included in the spirit and technical scope of the present disclosure.
[0040] Although terms including ordinal numbers such as "first," "second," etc. may be used herein to describe various elements, these elements are not limited by these terms. These terms are generally used only to distinguish one element from another.
[0041] Terms such as "-unit", "-module", etc. may represent a unit for performing at least one function or operation. For example, these terms may refer to at least one hardware component such as a field programmable gate array (FPGA) or an application specific integrated circuit (ASIC), at least one software stored in a memory, or at least one process executed by a processor.
[0042] When an element is referred to as being "coupled" or "connected" to another element, the element may be directly coupled or connected to the other element. However, it should be understood that there may be another element between them. Conversely, when an element is referred to as being "directly coupled" or "directly connected" to another element, it should be understood that there are no other elements between them.
[0043] Unless the context clearly indicates otherwise, a singular expression includes a plural form.
[0044] In this specification, it should be understood that terms such as "include" or "have" or their variations are intended to indicate the presence of features, numbers, steps, operations, elements, parts, or combinations thereof described in the specification. Such terms do not exclude the possibility of the presence or addition of one or more other features, numbers, steps, operations, elements, parts, or combinations thereof.
[0045] When a component, device, element, etc. of the present disclosure is described as having a purpose or performing an operation, function, etc., the component, device or element should be considered herein as being "configured to" satisfy the purpose or perform the operation or function.
[0046] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. In the accompanying drawings and the following description, the same or similar elements are denoted by the same reference numerals regardless of the reference numerals, and redundant descriptions thereof are omitted.
[0047] Before describing the embodiments of the present disclosure, it should be noted that the purpose of the present disclosure is to prevent the waste of necessary components when a working robot performs a working process in which a working component such as a welding nozzle or a cutting nozzle is deteriorated or consumed, and to prevent the cycle time of the entire process from being delayed due to the repair of the deterioration. Hereinafter, it is assumed that the working process is a welding process, and the working robot is a welding robot that performs the welding process. However, this is for ease of description, and the embodiments of the present disclosure are not limited to the type of working process or robot.
[0048] First, refer to Figure 1 A working robot operating system according to an embodiment of the present disclosure is described.
[0049] Figure 1 A block diagram of a working robot operating system according to an embodiment of the present disclosure.
[0050] refer to Figure 1 , a working robot operating system according to an embodiment of the present disclosure may include a plurality of working robots 110 - 1 , 110 - 2 , … , 110 -N and a control device 120 . Figure 1 Components related to the embodiments of the present disclosure are mainly described. A working robot operating system may actually include fewer or more components than the described components.
[0051] In addition, in order to perform the allocation function, each of the multiple working robots 110-1, 110-2, ..., 110-N and the control device 120 may include a communication device configured to communicate with another device (such as a controller or sensor), a memory configured to store an operating system or logic instructions and input / output information, and one or more processors configured to perform the determinations, operations and decisions necessary to control the allocation function.
[0052] According to an embodiment of the present disclosure, the plurality of working robots 110-1, 110-2, ..., 110-N may each include a working part 111. In addition, the plurality of working robots 110-1, 110-2, ..., 110-N may each perform a working process involving degradation of the working part 111 and a repair process for repairing the degradation of the working part 111.
[0053] Based on the above assumptions, a plurality of working robots 110-1, 110-2, ..., 110-N according to an embodiment of the present disclosure may be welding robots. Therefore, the corresponding working part 111 may be a welding nozzle provided for welding work. The working process involving the deterioration of the working part 111 may refer to the process of performing welding work. The repair process of repairing the deterioration of the working part 111 may refer to the process of performing cutting work (e.g., automatic nozzle trimming (ATD)) or replacement work of the welding nozzle. However, this is an example and the present disclosure is not necessarily limited to this.
[0054] The control device 120 may be configured to communicate with the plurality of working robots 110-1, 110-2, ..., 110-N. The control device 120 may control each of the plurality of working robots 110-1, 110-2, ..., 110-N. According to one embodiment, the specific operations performed by the control device 120 will be described below with reference to Figure 2 Describe in more detail.
[0055] Figure 2 is a block diagram of the operation of a control device according to an embodiment of the present disclosure.
[0056] refer to Figure 2 , the control device 120 according to an embodiment of the present disclosure may include a collector 121 , a determination unit 122 , a control command unit 123 , a communication unit 124 , and an output unit 125 . Figure 2 Components related to the embodiments of the present disclosure are mainly described. The control device 120 may actually include fewer or more components than those described.
[0057] The collector 121 may collect production information of the product of each working robot and specification information of the working part 111. The production information of the product may be information about at least one of the type of product to be produced, the specification of the product, the production quantity of the product, the workload of each working robot according to the product, or a combination thereof. However, it should be noted that this is illustrative and the present disclosure is not necessarily limited thereto.
[0058] For example, the collector 121 may collect product production information from a manufacturing execution system (MES) server provided separately. The MES server may provide the product production information as a csv format file to the collector 121. However, it should be noted that this is illustrative and the present disclosure is not necessarily limited thereto.
[0059] The collector 121 may provide the collected information to the determination unit 122. The determination unit 122 may perform the following operations based on the collected information.
[0060] The determination unit 122 may determine an existing execution plan (schedule) for executing the repair process of each of the plurality of working robots 110-1, 110-2, ..., 110-N based on the product production information of each working robot and the specification information of the working part 111. The determination unit 122 may determine an optimal execution plan for the repair process of each of the plurality of working robots 110-1, 110-2, ..., 110-N based on the determined existing execution plan.
[0061] The determination unit 122 may perform the above operation based on a predefined model, or may perform the above operation based on an artificial intelligence (AI) algorithm.
[0062] For example, a model capable of preventing waste of necessary components and preventing delay in the total cycle time of the process when performing the process can be predefined in the determination unit 122 based on conditional expressions and functions based on the work items, work specifications and specifications of the working part 111 of each working robot.
[0063] However, when the model is used, the complexity of the problem increases exponentially according to the size of the input data. Therefore, the model has a structure that is difficult to achieve the best within a given solution time. Therefore, it is difficult to ensure the best gap of the solution that can be obtained within the desired level (for example, within 5%). For example, the best gap may mean a value expressed as a ratio of the degree of closeness of the target equation value of the solution obtained within the solution time to the target equation value of the best solution, which will be referred to below. Figure 3 Describe in more detail.
[0064] Figure 3 is a graph for describing a problem of an optimization model derived based on a conditional expression and a function according to an embodiment of the present disclosure.
[0065] Figure 3 is a graph where the x-axis represents the solution time and the y-axis represents the optimal gap of the solution. More specifically, Figure 3 A graph is depicted assuming a problem with 65 worker robots and 840 production sequences, and depicting the optimal gap as a function of the solution time for the problem.
[0066] A smaller optimal gap can mean that the solution obtained from the model is closer to the optimal solution. Figure 3 , it can be seen that even when the solution time is set long enough, it is difficult to significantly improve the optimal gap.
[0067] In other words, as the size of the input data increases, the solution obtained from the model may take a significant amount of time to approach the optimal solution.
[0068] In addition, due to security reasons during plant operation, it may be difficult to communicate with the outside. Therefore, in order to solve the model, external communication with the server where the solver is installed may be required, which brings operational risks.
[0069] Therefore, in order to prevent problems that occur when performing operations based on the above model, in an embodiment of the present disclosure, the determination unit 122 performs the above operations based on an AI algorithm.
[0070] return Figure 2 , the determination unit 122 may perform operations based on an AI algorithm that can simultaneously satisfy productivity and profitability. Figure 4-10 The operations performed by the determination unit 122 according to one embodiment are described in more detail.
[0071] Figure 4-10 The table is used to describe a process of determining an optimal execution plan in a control device according to an embodiment of the present disclosure.
[0072] It should be noted that providing Figure 4-10 The numerical values disclosed in are only for describing the operation of the determination unit 122 according to the embodiment of the present disclosure. It should be noted that the present disclosure is not limited to Figure 4-10 The values disclosed in .
[0073] First, refer to Figure 4 , the determination unit 122 may determine each workload and the maximum workload of each working robot based on the production information of the product of each working robot and the specification information of the working part 111. The determination unit 122 may determine the execution cycle of the repair process based on the determined each workload and the maximum workload of each working robot. The working part 111 according to an embodiment of the present disclosure may refer to a welding nozzle. In addition, the corresponding working part specification may refer to the diameter of the welding nozzle. According to the diameter of the welding nozzle, each workload and the maximum workload of each working robot may be determined. The maximum workload may mean the maximum workload that can be executed before executing the repair process of the working part 111 provided in the working robot.
[0074] In addition, the determination unit 122 may determine existing execution plans of the plurality of working robots 110-1, 110-2, ..., 110-N based on the determined execution cycle. The existing execution plan may refer to a plan that maximizes the utilization rate of the working part 111 provided for each working robot.
[0075] The determination unit 122 may provide the determined existing execution plan to the control command unit 123. Therefore, the control command unit 123 may provide a control command to each of the plurality of working robots 110-1, 110-2, ..., 110-N so that each of the plurality of working robots 110-1, 110-2, ..., 110-N performs the repair process based on the existing execution plan.
[0076] Each of the plurality of working robots 110-1, 110-2, ..., 110-N may perform a repair process based on an existing execution plan during the working process according to a control command transmitted from the control command unit 123. Each of the plurality of working robots 110-1, 110-2, ..., 110-N may provide an execution result of performing the repair process to the control device 120. In one example, the communication unit 124 provided in the control device 120 may receive an execution result of performing the repair process. The communication unit 124 may then provide the received execution result back to the determination unit 122.
[0077] The determination unit 122 may determine whether the working process of each product is delayed based on the execution results obtained by the plurality of working robots 110-1, 110-2, ..., 110-N based on the existing execution plan. Then, the determination unit 122 may determine the best execution plan for the repair process based on the existing execution plan of at least one working robot among the plurality of working robots 110-1, 110-2, ..., 110-N whose working process is determined to be delayed.
[0078] In one example, the determination unit 122 may classify the plurality of working robots 110-1, 110-2, ..., 110-N into a plurality of groups according to the determination as to whether a delay occurs. For example, the determination unit 122 may classify the plurality of working robots 110-1, 110-2, ..., 110-N into a group in which no delay occurs for each product, a group in which a delay occurs in some products, and a group in which a delay occurs in all products according to the determination as to whether a delay occurs. In one example, at least one working robot may have to be included in each of the classified groups.
[0079] As reference below Figure 5-10 Described in more detail, in one embodiment, the determination unit 122 may determine the optimal execution plan for the repair process based on an existing execution plan of at least one working robot that is classified into a group in which delays occur in some products or a group in which delays occur in all products in the classification group.
[0080] Figure 5 A table of existing execution plans of at least one working robot classified into a group in which delays occur in some products or a group in which delays occur in all products according to the description of an embodiment of the present disclosure. The horizontal axis variable in the table may indicate that at least one working robot is classified into a group in which delays occur in some products or a group in which delays occur in all products. The vertical axis variable in the table may indicate a time point at which a repair process is executed.
[0081] The determining unit 122 may determine an execution time point of the repair process of each of the at least one working robot based on an existing execution plan of the at least one working robot. Figure 5 , defining binary variables 0 and 1, where 0 may mean not to perform the repair process, and 1 may mean to perform the repair process. However, this is illustrative, and the present disclosure is not limited thereto. The determination unit 122 may determine that the variable 1 appears in Figure 5 The time points in the table are determined as the execution time points of the repair process of each of the at least one working robot.
[0082] In addition, the determination unit 122 may determine the candidate sequence range of at least one working robot based on the preset cycle adjustment value so that the determined execution time point is included in the last sequence position. For example, referring to the working robot b in the at least one working robot, the execution time point of the repair process exists at the ninth time point, and the candidate sequence range (shaded area) may be set from the fifth time point to the ninth time point based on the preset cycle adjustment value (e.g., 5) so that the execution time point is included in the last sequence position. The above example can be equally applied to at least one working robot classified as a group in which delays occur in some products or a group in which delays occur in all products.
[0083] The determination unit 122 may determine whether a delay in the working process occurs for each candidate sequence position included in the candidate sequence range based on the determined candidate sequence range. According to the determination result, the determination unit 122 may classify the candidate sequence range determined for at least one working robot into a first case where a delay occurs in all candidate sequence positions and a second case where there is a candidate sequence position where no delay occurs. Figure 6 , the first case can be distinguished and classified by the dotted area, and the second case can be distinguished and classified by the shaded area.
[0084] The determination unit 122 may determine a reference point used as a criterion for calculating the sequence score of each of the candidate sequence ranges classified into the first case and the second case. For example, the determination unit 122 may determine a time point located at the highest time point as the reference point for the first case. The determination unit 122 may also determine a time point corresponding to the latest sequence position in the candidate sequence where no delay occurs as the reference point for the second case. Figure 6 , the reference point of the first case can be distinguished by a circle, and the reference point of the second case can be distinguished by a triangle. However, this is illustrative, and the present disclosure is not necessarily limited thereto.
[0085] The determination unit 122 may determine a candidate sequence range having an earliest sequence position among the candidate sequence ranges classified as the first case. The determination unit 122 may calculate a sequence score for each sequence position based on the candidate sequence ranges.
[0086] For example, refer to Figure 6 , there is a candidate sequence range M1 having the earliest sequence position in the candidate sequence range classified as the first case. The determination unit 122 may calculate the sequence score corresponding to each sequence position where the candidate sequence range M1 exists based on the candidate sequence range M1. For example, when the candidate sequence range M1 is from the fifth time point to the ninth time point, the sequence score of each sequence position may be calculated based on the candidate sequence of the candidate sequence range included in the corresponding range.
[0087] In one example, a score for each sequence position in the candidate sequence range may be assigned such that the score increases as the sequence position decreases from the reference point (in other words, the time point is later). Figure 7 The score for each sequence position in the range of candidate sequences assigned to the specified assignment. Figure 7 , when assigning a score to each sequence position within each candidate sequence, the scores assigned to the same sequence position may be summed to calculate a sequence score for each sequence position. However, this is illustrative, and the present disclosure is not necessarily limited thereto.
[0088] The determining unit 122 may determine the sequence position having the highest sequence score among the calculated sequence scores. The determining unit 122 may also determine the time point corresponding to the sequence as the optimal execution time point. For example, the determining unit 122 may determine the time point corresponding to the reference sequence. Figure 7 The ninth time point with the highest sequence score among the sequence scores calculated for each sequence position. Figure 8 As indicated by the grid area of , the determination unit 122 may determine the ninth time point as the optimal execution time point. Therefore, at least one working robot having a candidate sequence range at the determined optimal execution time point may perform the repair process at the same time point.
[0089] However, there may be a working robot in which the candidate sequence range does not exist at the determined optimal execution time point. In this case, for the candidate sequence range that exists before the determined optimal execution time point among the candidate sequence ranges classified into the first case and the second case, the determination unit 122 may determine the reference point of the candidate sequence range as the optimal execution time point. Figure 8 For the candidate sequence range M2 that exists before the determined optimal execution time point (eg, the ninth time point), the determination unit 122 may determine the reference point of the candidate sequence range M2 as the optimal execution time point.
[0090] In addition, reference Fig. 9 , when determining the best execution time point, the determination unit 122 may determine a candidate sequence range M3 having the next earliest sequence position in the candidate sequence range classified as the first case, and may determine the next best execution time point based on the candidate sequence range M3. Then, the determination unit 122 may determine the best execution time point for each candidate sequence range classified as the first case. In this case, the determination unit 122 may perform the same process as described above.
[0091] For example, refer to Fig. 9, the determination unit 122 may determine the sequence score of each sequence based on the candidate sequence range M3. The determination unit 122 may then determine the 15th time point with the highest sequence score as the best execution time point. In addition, in the case where there is a candidate sequence range before the determined best execution time point, the reference point may be determined as the best execution time point.
[0092] The determination unit 122 may determine the best execution plan based on the best execution time point determined for each candidate sequence range classified as the first case. When determining the best execution plan, the determination unit 122 may perform a virtual simulation based on the determined best execution plan, and may analyze the results obtained through the virtual simulation. For example, the determination unit 122 may determine the best execution plan according to each cycle adjustment value by changing a preset cycle adjustment value used to determine the above-mentioned candidate sequence range. Therefore, the determination unit 122 may perform a virtual simulation based on the best execution plan determined according to each cycle adjustment value. Then, the results corresponding to each corresponding adjustment value obtained through the virtual simulation may be derived.
[0093] For example, Fig.10 As shown, the determination unit 122 may derive result data corresponding to the cycle adjustment value obtained by virtual simulation based on the optimal execution plan. The determination unit 122 may store the derived result data in a separately provided memory (not shown). Thereafter, when the cycle adjustment value is set by the factory user, the determination unit 122 may determine the optimal execution plan corresponding to the set cycle adjustment value, so that each of the plurality of working robots 110-1, 110-2, ..., 110-N may perform the repair process based on the optimal execution plan.
[0094] Since the ratio of the profit rate and the productivity improvement effect can be changed according to the cycle adjustment value, the working robot can be operated based on the optimal execution plan corresponding to the selected cycle adjustment value by storing the derived result data corresponding to different cycle adjustment values. Therefore, there is an advantage of being able to flexibly take measures according to the purpose of the production operation.
[0095] Reference again Figure 2 , the determination unit 122 may provide the determined optimal execution plan to the control command unit 123. The control command unit 123 may generate a control command for each of the plurality of working robots 110-1, 110-2, ..., 110-N to perform the repair process by following the optimal execution plan. The control command unit 123 may provide a control command to each of the plurality of working robots 110-1, 110-2, ..., 110-N.
[0096] According to one embodiment, the following reference Figure 11-13 Describe in more detail the advantages of using the best execution plan.
[0097] Figure 11-13 is a diagram for describing an effect obtained when an execution process causes a working robot to follow an optimal execution plan according to an embodiment of the present disclosure.
[0098] Fig.11 The table is a diagram illustrating existing execution plans of multiple working robots 110 - 1 , 110 - 2 , . . . , 110 -N according to an embodiment of the present disclosure. Fig.12 The table is a diagram illustrating optimal execution plans of multiple working robots 110 - 1 , 110 - 2 , . . . , 110 -N according to an embodiment of the present disclosure.
[0099] For example, Fig.11 and 12 0 indicated on the best execution plan may mean that the repair process is not executed and 2 may mean that the repair process is executed by receiving a repair process command. However, this is illustrative, and the present disclosure is not necessarily limited thereto.
[0100] See also Fig.11 When each of the plurality of working robots 110-1, 110-2, ..., 110-N performs the repair process based on the existing execution plan, each of the plurality of working robots 110-1, 110-2, ..., 110-N frequently performs the repair process at different time points. Therefore, there is a disadvantage in that the number of delays in the entire process of producing the product increases.
[0101] However, reference Fig.12 When each of the plurality of working robots 110-1, 110-2, ..., 110-N performs the repair process based on the optimal execution plan, some of the plurality of working robots 110-1, 110-2, ..., 110-N are grouped to perform the repair process. Therefore, there is an advantage in that the number of delays in the entire process can be prevented from increasing.
[0102] Can be based on Fig.13 to compare the advantages and disadvantages. Fig.13 The table compares a case where a repair process is jointly executed in the past and a case where the repair process is executed based on an existing execution plan and an optimal execution plan according to an embodiment of the present disclosure.
[0103] refer to Fig.13 , when the repair process is executed based on the existing execution plan, the number of delays in the entire process may be greatly increased due to the frequent execution of the repair process. However, since the working parts 111 provided in the plurality of working robots 110-1, 110-2, ..., 110-N are used up to the maximum workload, there is an advantage in that the total number of repair processes executed is significantly small. Therefore, the number of working parts 111 used can be minimized.
[0104] When the repair process is performed together in the past, the number of delays in the entire process can be significantly improved when compared with the situation based on the existing execution plan. However, it can be seen that the total number of repair processes performed will increase. Therefore, the number of working parts 111 used will also increase.
[0105] However, when the repair process is executed based on the optimal execution plan according to the embodiment of the present disclosure, the disadvantages of the above two situations can be improved, thereby minimizing the number of delays in the entire process and minimizing the total number of repair processes executed. In addition, the advantage is that the number of working components 111 used can be similar to the number in the execution case based on the existing execution plan.
[0106] Each of the plurality of working robots 110-1, 110-2, ..., 110-N can be based on Figure 2 The control command unit 123 shown in the figure may transmit a control command to execute the repair process to follow the optimal execution plan, and may transmit process execution information of the repair process to the control device 120. For example, the process execution information transmitted to the control device 120 may include an initial separation distance of the working part 111 determined before the repair process is performed and a corrected separation distance of the working part 111 determined after the repair process is performed.
[0107] For example, the repair process according to the embodiment of the present disclosure may be a cutting process or a replacement process for repairing the deterioration of the working part 111. In this case, as shown below with reference to Figures 14A-14D Described in more detail, when the repair process is performed, the cutting process or the replacement process may be performed such that the plurality of working robots 110 - 1 , 110 - 2 , . . . , 110 -N follow an optimal execution plan.
[0108] Figures 14A-14D The diagram is used to describe the repair process execution result information of a working component according to an embodiment of the present disclosure.
[0109] When the cutting process is performed in each of the plurality of working robots 110-1, 110-2, ..., 110-N, the cutting process of the working part 111 may be performed by a cutting device provided to correspond to each of the plurality of working robots 110-1, 110-2, ..., 110-N. The plurality of working robots 110-1, 110-2, ..., 110-N may each store and provide execution result information according to the execution of the cutting process.
[0110] For example, refer to Fig.14A, each of the plurality of working robots 110-1, 110-2, ..., 110-N may determine the initial separation distance D1 of the working part 111 before performing the cutting process of the working part 111. In one example, each of the plurality of working robots 110-1, 110-2, ..., 110-N may be determined using an encoder provided therein. However, this is illustrative, and the present disclosure is not necessarily limited thereto.
[0111] When performing a cutting process on the working part 111 , each of the plurality of working robots 110 - 1 , 110 - 2 , . . . , 110 -N may determine a corrected separation distance D2 of the working part 111 after performing the cutting process.
[0112] Each of the plurality of working robots 110-1, 110-2, ..., 110-N may determine one side distance D3 of the working part 111 using the cutting amount inspection plate P. In addition, the other side distance of the working part 111 may be determined based on the determined initial separation distance D1, correction separation distance D2, and one side distance D3.
[0113] The plurality of working robots 110-1, 110-2, ..., 110-N may provide result values of the determined distances to the control device 120. The control device 120 may store the result values in a separately provided memory (not shown) as execution result information of the cutting process.
[0114] When the replacement process is performed in each of the plurality of working robots 110-1, 110-2, ..., 110-N, this process may be performed by a separately provided replacement device or manually by an operator. In this case, there is a risk of missing or erroneously installing the replacement part during the replacement process. Therefore, it is necessary to determine whether there is a defect associated therewith, which may be determined based on the above-mentioned initial separation distance and correction separation distance.
[0115] For example, when performing a replacement process in each of the plurality of working robots 110-1, 110-2, ..., 110-N, each of the plurality of working robots 110-1, 110-2, ..., 110-N may determine an initial separation distance of the working part 111 before performing the replacement process, which may correspond to Fig. 14B In one example, each of the plurality of working robots 110-1, 110-2, ..., 110-N may be determined using an encoder provided therein. However, this is illustrative, and the present disclosure is not necessarily limited thereto.
[0116] In addition, when performing the replacement process on the working part 111, each of the plurality of working robots 110-1, 110-2, ..., 110-N may determine a corrected separation distance of the working part 111 after performing the replacement process, which may correspond to Fig.14A situation.
[0117] In addition, refer to Fig.14D , each of the plurality of working robots 110 - 1 , 110 - 2 , . . . , 110 -N may use the cutting amount inspection plate P to determine a one side distance D4 of the working part 111 .
[0118] The plurality of working robots 110-1, 110-2, ..., 110-N may provide result values of the determined distances to the control device 120. The control device 120 may store the result values in a separately provided memory (not shown) as execution result information of the replacement process.
[0119] return Figure 2 , the control device 120 may determine the number of repair processes of the working part 111 based on the execution result of the cutting process. In addition, the control device 120 may determine whether the working part 111 is defective based on the execution result of the replacement process. For example, when the determined one side distance D4 exceeds the preset reference distance and the corrected separation distance is greater than the initial separation distance, the control device 120 may determine that the replacement process of the working part 111 is performed without any defects. However, when the determined one side distance D4 is less than the preset reference distance or the corrected separation distance is less than the initial separation distance, it may be determined that a defect has occurred in the working part 111. When it is determined that a defect has occurred in the working part 111, the process performed by the corresponding working robot may be suspended.
[0120] In addition, the control device 120 may output the execution result of the repair process including the cutting process and the replacement process. For example, the output unit 125 may output the execution result of the repair process performed by following the best execution plan among multiple working robots 110-1, 110-2, ..., 110-N. In one example, the output unit 125 may output the execution result through a separate output device (not shown) linked to the output unit 125. The output device may be, for example, a display device configured to output the execution result visually or audibly. However, this is illustrative, and the present disclosure is not necessarily limited to this.
[0121] When the output unit 125 outputs the execution result through the output device, the manager can easily check the current state and process quantity caused by the repair process of the working part 111 of each of the plurality of working robots 110-1, 110-2, ..., 110-N. In this way, the work quality of the plurality of working robots 110-1, 110-2, ..., 110-N can be effectively managed.
[0122] The control device 120 may store the determined optimal execution plan in a separately provided memory and determine whether the production information has changed. When the production information has not changed, the control device 120 may control the plurality of working robots 110-1, 110-2, ..., 110-N so that the repair process is performed by following the stored optimal execution plan.
[0123] When the production information changes, the control device 120 may update the stored optimal execution plan based on the changed production information. Then, the control device 120 may control the plurality of working robots 110-1, 110-2, ..., 110-N so that the repair process is performed by following the updated optimal execution plan.
[0124] As described above, the control device 120 according to an embodiment of the present disclosure may be a programmable logic controller (PLC) configured to control a plurality of working robots 110-1, 110-2, ..., 110-N, or may include a counter provided to correspond to each of the plurality of working robots 110-1, 110-2, ..., 110-N and a control panel configured to control the corresponding working robot by receiving a signal from the counter. However, this is illustrative, and the present disclosure is not necessarily limited thereto.
[0125] In addition, a control device 120 according to an embodiment of the present disclosure is equipped with a collector 121, a determination unit 122, a control command unit 123, a communication unit 124, and an output unit 125. However, this is illustrative, and the present disclosure is not necessarily limited thereto. For example, the corresponding components of the control device 120 may be provided in different devices, or may be grouped according to roles or functions, thereby providing different groups in different devices.
[0126] In the following, based on the above Figure 1 and 2 For the configuration of the working robot operating system in Fig.15 and 16 A method for operating a working robot according to an embodiment is described. Figure 1-14D A detailed description is given in , so the detailed description of each step is omitted.
[0127] Furthermore, hereinafter, for the convenience of description, it is assumed that corresponding operations are commonly performed in the control device 120 .
[0128] Fig.15 and 16 It is a flowchart for describing a working robot operation method according to an embodiment of the present disclosure.
[0129] First, refer to Fig.15In operation S1510, the control device 120 may determine an existing execution plan for executing a repair process of each of the plurality of working robots 110-1, 110-2, ..., 110-N based on production information of a product of each working robot and specification information of the working part 111.
[0130] In operation S1520, the control device 120 may determine an optimal execution plan for the repair process of each of the plurality of working robots 110-1, 110-2, ..., 110-N based on the determined existing execution plan. The optimal execution plan may be determined by a process executed in the determination unit 122 as a component of the control device 120 described above.
[0131] After determining the optimal execution plan, in operation S1530, the control device 120 may determine whether the production information of the product has changed. When the production information has not changed (No in operation S1530), the method may proceed to operation S1540. In operation S1540, the control device 120 may control the plurality of working robots 110-1, 110-2, ..., 110-N based on the determined optimal execution plan.
[0132] When the production information changes (Yes in operation S1530), the method may proceed to operation S1550. In operation S1550, the control device 120 may update the optimal execution plan based on the changed production information (S1550) and allow the plurality of working robots 110-1, 110-2, ..., 110-N to be controlled based on the updated optimal execution plan.
[0133] The control device 120 may thus control the plurality of working robots 110-1, 110-2, ..., 110-N so that the repair process is performed to follow the optimal execution plan. In operation S1560, the control device 120 may collect process execution information according to the execution of the repair process from the plurality of working robots 110-1, 110-2, ..., 110-N. In operation S1570, the control device 120 may determine the process execution result based on the collected process execution information. Fig.16 This process is explained in more detail. In operation S1580, the control device 120 may allow the determined process execution result to be output.
[0134] In operation S1590, the control device 120 determines whether the production of the product is finished. When the product is still being produced (No in operation S1590), the control device 120 may repeatedly perform the above operations S1510-S1580.
[0135] Next, refer to Fig.16 Detailed Description Fig.15 Step S1570.
[0136] refer to Fig.16 In operation S1601 , each of the plurality of working robots 110 - 1 , 110 - 2 , . . . , 110 -N may determine an initial separation distance before performing a repair process of the working part 111 .
[0137] In addition, the repair process according to the embodiment of the present disclosure can be divided into a cutting process and a replacement process, and each process will be described separately below.
[0138] First, when the cutting process of the working part 111 is performed in operation S1602, each of the plurality of working robots 110-1, 110-2, ..., 110-N may determine the correction separation distance and the one side distance after performing the cutting process of the working part 111 in operation S1603. Each of the plurality of working robots 110-1, 110-2, ..., 110-N may provide the determined distance information as process execution information to the control device 120. In operation S1604, the control device 120 may store the received distance information in a separately provided memory.
[0139] When the replacement process of the working part 111 is performed in operation S1605, each of the plurality of working robots 110-1, 110-2, ..., 110-N may determine the correction separation distance and the one side distance after performing the replacement process of the working part 111 in operation S1606. Each of the plurality of working robots 110-1, 110-2, ..., 110-N may provide the determined distance information to the control device 120 as process execution information.
[0140] In operation S1607, the control device 120 may determine whether the determined one side distance exceeds the preset reference distance based on the process execution information. When the one side distance exceeds the preset reference distance (yes in operation S1607), in operation S1608, the control device 120 may determine whether the corrected separation distance is greater than the initial separation distance.
[0141] When the one side distance exceeds the reference distance (Yes in operation S1607 ), and the corrected separation distance is greater than the initial separation distance (Yes in operation S1608 ), the control device 120 may determine in operation S1609 that the replacement process of the working part 111 has been normally performed.
[0142] However, when the one side distance is less than or equal to the reference distance (No in operation S1607) or the corrected separation distance is less than or equal to the initial separation distance (No in operation S1608), the control device 120 may determine in operation S1610 that a defect has occurred in the working part 111 due to the replacement process, and perform a control operation to pause the process of the corresponding working robot.
[0143] According to an embodiment of the present disclosure, a working robot operating system and method controls a plurality of working robots so that repair work is performed based on an optimal execution plan, thereby preventing waste of working parts because the repair work is performed at an appropriate time.
[0144] Furthermore, by controlling a plurality of working robots so that the repair work is performed based on an optimal execution plan, the total cycle time can be prevented from being delayed due to the repair work, and productivity can be improved.
[0145] Furthermore, by outputting the execution result of the repair work based on the optimal execution plan, real-time monitoring can be performed, and problems caused by defects in the repair work can be prevented.
[0146] Effects obtainable through the present disclosure are not limited to the above-mentioned effects. From the above description, a person skilled in the art can clearly understand other effects not mentioned herein.
[0147] While the present disclosure has been illustrated and described in conjunction with specific embodiments, it will be apparent to those skilled in the art that the present disclosure may be improved and modified in various ways without departing from the technical spirit of the present disclosure as provided by the following claims.
[0148] The present disclosure described above can be implemented as computer-readable codes on a program recording medium. Computer-readable media include all types of recording devices that store readable data by a computer system. Examples of computer-readable media include HDD (hard disk drive), SSD (solid state drive), SDD (silicon disk drive), ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc.
[0149] The above detailed description should not be interpreted as limiting in all aspects, but should be regarded as illustrative. The scope of the present disclosure should be determined by a reasonable interpretation of the appended claims. All changes within the equivalent scope of the present disclosure are included in the scope of the present disclosure.
Claims
1. A working robot operating system, comprising: a plurality of working robots, each of the working robots being configured to perform a working process involving degradation of a working component and a repair process of repairing the degradation of the working component; as well as Control device, configured as determining an existing execution plan for executing the repair process of each of the plurality of working robots based on production information of a product of each working robot and specification information of a working part, determining an optimal execution plan of the repair process for each of the plurality of working robots based on the determined existing execution plans, and The plurality of working robots are controlled so that the repair process is performed by following the determined optimal execution plan.
2. The working robot operating system according to claim 1, wherein the control device is configured to: determining an execution period of the repair process based on the production information and the specification information; and The existing execution plan is determined based on the determined execution cycle.
3. The working robot operating system according to claim 2, wherein the control device is configured to: determining each workload and a maximum workload of each working robot based on the production information and the specification information; and The execution period is determined based on the determined workload of each working robot and the maximum workload.
4. The working robot operating system according to claim 1, wherein the control device is configured to: performing a control operation so that each of the plurality of working robots executes the repair process based on the determined existing execution plan; determining whether a working process of each product of each of the plurality of working robots is delayed based on an execution result of the repair process performed by each of the plurality of working robots; and The optimal execution plan is determined based on an existing execution plan of at least one working robot among the plurality of working robots whose working process is determined to be delayed.
5. The working robot operating system according to claim 4, wherein the control device is configured to: classifying the plurality of working robots into a group in which no delay occurs for each product, a group in which delay occurs in some products, and a group in which delay occurs in all products based on the determination as to whether the working process is delayed; and The optimal execution plan is determined based on an existing execution plan of at least one working robot classified into a group in which delays occur in some products or a group in which delays occur in all products among the classified groups.
6. The working robot operating system according to claim 4, wherein the control device is configured to: Determining an execution time point of the repair process of the at least one working robot based on the existing execution plan; determining a candidate sequence range of the at least one working robot based on a preset cycle adjustment value so that the determined execution time point is included in the last sequence position; and The optimal execution plan is determined based on the determined candidate sequence range.
7. The working robot operating system according to claim 6, wherein the control device is configured to: determining whether the working process is delayed in each of the candidate sequence positions included in the candidate sequence range; Classifying the determined candidate sequence range into a first case where delay occurs in all the candidate sequence positions and a second case where there is a candidate sequence position where no delay occurs; and The optimal execution plan is determined based on a candidate sequence range having an earliest sequence position among the candidate sequence ranges classified as the first case.
8. The working robot operating system according to claim 7, wherein the control device is configured to: determining a reference point used as a criterion for calculating a sequence score for each of the candidate sequence ranges classified as the first case and the second case; calculating a sequence score for each sequence position based on the candidate sequence range having the earliest sequence position; Determine the time point corresponding to the sequence position with the highest sequence score among the calculated sequence scores as the optimal execution time point; and The optimal execution plan is determined based on the determined optimal execution time point.
9. A working robot operating system according to claim 8, wherein the control device is configured to: after determining the optimal execution time point, determine the next optimal execution time point based on the candidate sequence range having the next earliest sequence position in the candidate sequence range classified as the first case.
10. A working robot operating system according to claim 8, wherein the control device is configured to: for a candidate sequence range that exists before the determined optimal execution time point in the first case and the second case, determine the reference point of the candidate sequence range as the optimal execution time point.
11. The working robot operating system according to claim 1, wherein the control device is configured to: receiving process execution information obtained by execution of the plurality of working robots following the optimal execution plan; and A process execution result is determined based on the received process execution information and caused to be output.
12. A working robot operating system according to claim 11, wherein the control device is configured to: determine a process execution result based on the process execution information, and the process execution result includes at least one of information about the number of repair processes of the working part or information about whether the repair of the working part is defective.
13. The working robot operating system according to claim 1, wherein the control device is configured to: storing the determined optimal execution plan; determining whether the production information has changed; and When the production information has not changed, the plurality of working robots are controlled so that the repair process is performed by following a stored optimal execution plan.
14. The working robot operating system according to claim 13, wherein the control device is configured to: When the production information changes, updating the stored optimal execution plan taking into account the changed production information; and The plurality of working robots are controlled so that the repair process is performed by following the updated optimal execution plan.
15. The working robot operating system according to claim 1, wherein the control device is a programmable logic controller (PLC) configured to: control the plurality of working robots.
16. The working robot operating system according to claim 1, wherein the control device comprises: a corresponding counter provided to correspond to each of the plurality of working robots; as well as A control panel is configured to control the working robot by receiving signals from the corresponding counters.
17. The working robot operating system according to claim 1, wherein: The working part comprises a welding nozzle; The working process is a welding process; and The repair process is an automatic nozzle trimming ATD process.
18. A method for operating a working robot, the method comprising the following steps: determining, by the control device, an existing execution plan for executing a repair process for repairing deterioration of a working part of each of the plurality of working robots based on production information of a product of each working robot and specification information of the working part; determining, by the control device, an optimal execution plan for the repair process for each of the plurality of working robots based on the determined existing execution plans; as well as The plurality of working robots are controlled by the control device so that the repair process is performed by following the determined optimal execution plan.
19. The working robot operating method according to claim 18, further comprising the following steps: determining, by the control device, a process execution result based on process execution information obtained by execution of the plurality of working robots following the optimal execution plan after the control, the process execution result including at least one of information on the number of the repair processes of the working part and information on whether the repair of the working part is defective; as well as The process execution result is output by the control device.