DETAILED CORRESPONDENCE
This is the first office action regarding application number 18/842,466, filed on 29 August 2024.
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
Claim Interpretation
The following is a quotation of 35 U.S.C. 112(f):
(f) Element in Claim for a Combination. – An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The following is a quotation of pre-AIA 35 U.S.C. 112, sixth paragraph:
An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The claims in this application are given their broadest reasonable interpretation using the plain meaning of the claim language in light of the specification as it would be understood by one of ordinary skill in the art. The broadest reasonable interpretation of a claim element (also commonly referred to as a claim limitation) is limited by the description in the specification when 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is invoked.
As explained in MPEP § 2181, subsection I, claim limitations that meet the following three-prong test will be interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph:
(A) the claim limitation uses the term “means” or “step” or a term used as a substitute for “means” that is a generic placeholder (also called a nonce term or a non-structural term having no specific structural meaning) for performing the claimed function;
(B) the term “means” or “step” or the generic placeholder is modified by functional language, typically, but not always linked by the transition word “for” (e.g., “means for”) or another linking word or phrase, such as “configured to” or “so that”; and
(C) the term “means” or “step” or the generic placeholder is not modified by sufficient structure, material, or acts for performing the claimed function.
Use of the word “means” (or “step”) in a claim with functional language creates a rebuttable presumption that the claim limitation is to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites sufficient structure, material, or acts to entirely perform the recited function.
Absence of the word “means” (or “step”) in a claim creates a rebuttable presumption that the claim limitation is not to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is not interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites function without reciting sufficient structure, material or acts to entirely perform the recited function.
Claim limitations in this application that use the word “means” (or “step”) are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action. Conversely, claim limitations in this application that do not use the word “means” (or “step”) are not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action.
This application includes one or more claim limitations that do not use the word “means,” but are nonetheless being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, because the claim limitations use a generic placeholder that is coupled with functional language without reciting sufficient structure to perform the recited function and the generic placeholder is not preceded by a structural modifier. Such claim limitations are:
a. “control parameter calculation unit” in claims 1, 5, 8 and 10-11
b. “optimization unit” in claims 1, 5 and 11
c. “task module selection unit” in claims 1 and 5
d. “control unit” in claims 1, 5-6 and 11
Because these claim limitations are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, they are being interpreted to cover the corresponding structure described in the specification as performing the claimed function, and equivalents thereof. Regarding the limitations reciting the “units”, the specification discloses a computer in Figure 2 and paragraphs [0017]-[0020] in the specification filed on 29 August 2024 and an algorithm for performing the claimed functions in Figures 3-4 and their corresponding paragraphs, in the specification filed on 29 August 2024.
If applicant does not intend to have these limitations interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, applicant may: (1) amend the claim limitations to avoid them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph (e.g., by reciting sufficient structure to perform the claimed function); or (2) present a sufficient showing that the claim limitations recite sufficient structure to perform the claimed function so as to avoid them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 1-14 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Regarding Claims 1-14
Independent claims 1, 5 and 14 recite "the other robot", but there is no prior recitation of the other robot. Additionally, the claim language in claims 1 and 14 implies that there is a first robot which the other robot is different from, but there is no recitation of a first robot. Therefore, there is insufficient antecedent basis for "the other robot". Accordingly, the claims are indefinite because the metes and bounds of the claims are unclear. The remaining claims are additionally rejected by virtue of dependency on at least claims 1 and 5. For the purpose of compact prosecution, "the other robot" will be interpreted as "a robot".
Claims 3 and 7 additionally recite "the robot" but there is insufficient antecedent basis for "the robot" and it is unclear whether "the robot" is the same or different from "the other robot". Accordingly, the claims are indefinite because the metes and bounds of the claims are unclear. For the purpose of compact prosecution, "the other robot" and "the robot" will be interpreted as being the same robot.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Claims 1-6 and 10-14 are rejected under 35 U.S.C. 103 as being unpatentable over Kobayashi et al. (US 20190366541 A1 and Kobayashi hereinafter), in view of Takeda (US 20180178379 A1 and Takeda hereinafter).
Regarding Claim 1
Kobayashi teaches a control system which controls each of a plurality of robots operated in the same work environment (see all Figs.; [0006]), the control system comprising:
a control parameter calculation unit which calculates control parameters for the plurality of robots (see Fig. 3, "Actions"; Figs. 6-8B, Actions A1-A3 and B1-B3; [0031 "Among the actions of the robot system, the actions “Move”, “Transfer”, and “Place” are actions in an “interference zone” to be described later (such actions are referred to as interference actions) while the actions “Pick” and “MoveHome” are actions in a “non-interference zone” to be described later (such actions are referred to as non-interference actions)."], [0039 "The task A is the one-arm task that includes actions A1, A2, and A3 which require 1 second, 3 seconds, and 1 second, respectively. Of the actions A1 to A3, the actions A1 and A3 are the actions in the non-interference zone whereas the action A2 is the action in the interference zone..."]-[0040 "The task B is the one-arm task that includes actions B1, B2, and B3 which require 2 seconds, 4 seconds, and 1 second, respectively. Of the actions B1 to B3, the actions B1 and B3 are the actions in the non-interference zone whereas the action B2 is the action in the interference zone...."] and [0054]-[0058]);
an optimization unit which generates processes for the plurality of robots based on the control parameters (see Figs. 7-8B, all; [0006], [0034 "When the task plan development unit 24 develops the task plan, the task plan development unit 24 assigns the tasks (the actions) to the respective arms R1 and R2 so as to minimize task time for the tasks assigned to the robot system, and thus determines the order of execution of the tasks (namely, start time of each task (action))."], [0054]-[0058] and [0078 "The task plan (see FIG. 15) for the robot system created at the stage of completion of the processing in FIG. 5 organizes the order of execution of the tasks and the actions so as to minimize the total task time while taking into account the collaborative tasks, the one-arm tasks, the interference actions, and the non-interference actions."]);
a task module selection unit which selects a task module for each of the plurality of robots based on the processes (see Figs. 8A-8B, all; Figs. 9A-16, all; [0006], [0025], [0031], [0034 "When the task plan development unit 24 develops the task plan, the task plan development unit 24 assigns the tasks (the actions) to the respective arms R1 and R2 so as to minimize task time for the tasks assigned to the robot system, and thus determines the order of execution of the tasks (namely, start time of each task (action)). In this case, the task plan development unit 24 takes into account whether each task assigned to the robot system is the one-arm task or the collaborative task that involves two arms R1 and R2, and whether each action is the interference action or the non-interference action."], [0039]-[0040], [0054]-[0058 "In the examples of FIGS. 8A and 8B, it is possible to regard the target actions A2 and A3 assigned to the arm R1 as a first task and the target actions B2 and B3 assigned to the arm R2 as a second task. Step S30 may be regarded as the processing to compare the task completion time in the case of delaying the first task (the case of a first task order) for the purpose of avoiding an overlap of the site to carry out the first task (the target actions A2 and A3) and the site to carry out the second task (the target actions B2 and B3) with the task completion time in the case of delaying the second task (the case of a second task order) for the same purpose, and then to adopt the task order that has the earlier completion time."] and [0078]); and
wherein the optimization unit restricts a task of the other robot when execution times of tasks affecting each other overlap (see Fig. 8A, all; Figs. 9A-16, all; [0006 "...execute comparison processing that includes comparing first end time with second end time when the sites to carry out the first task and the second task are likely to overlap each other, the first end time being end time of all of the first and second tasks when adopting a first task order to delay the first task in order to avoid the overlap of the sites to carry out the first task and the second task, and the second end time being end time of all of the first and second tasks when adopting a second task order to delay the second task in order to avoid the overlap of the sites to carry out the first task and the second task, and execute determination processing that includes selecting the first task order when the first end time is earlier than the second end time, and selecting the second task order when the second end time is earlier than the first end time."], [0040 "The task B is the one-arm task that includes actions B1, B2, and B3 which require 2 seconds, 4 seconds, and 1 second, respectively."] and [0054]-[0058 "Step S30 may be regarded as the processing to compare the task completion time in the case of delaying the first task (the case of a first task order) for the purpose of avoiding an overlap of the site to carry out the first task (the target actions A2 and A3) and the site to carry out the second task (the target actions B2 and B3) with the task completion time in the case of delaying the second task (the case of a second task order) for the same purpose, and then to adopt the task order that has the earlier completion time."]).
Although it may be inherent, Kobayashi does not explicitly teach a control unit which controls the plurality of robots based on the task modules.
Takeda teaches a control system which controls each of a plurality of robots operated in the same work environment (see all Figs.; [0006]), the control system comprising:
a control parameter calculation unit which calculates control parameters for the plurality of robots (see Fig. 4A-4B, operation programs PRG_R1 and PRG_R2; [0022] and [0033 "In FIGS. 4A and 4B, “PRG_R1_1” to “PRG_R1_8” each refer to an operation program for Robot #1, which is necessary for executing the corresponding process. “PRG_R2_1” and “PRG_R2_7” each refer to an operation program for Robot #2, which is necessary for executing the corresponding process ... These operation programs are stored in, for example, the auxiliary storage device (not illustrated) included in the task planning device 1 or a storage device (not illustrated) included in the robot system 2."]);
an optimization unit which generates processes for the plurality of robots based on the control parameters (see Figs. 4A-5, all; [0020] and [0043 "Subsequently at step S5, it is determined whether the entire task time measured by the simulator 11 is an optimized task time. The optimization refers to generation of a task plan with which the entire task time is minimized. At step S5, when it is determined that no optimization has been achieved, steps S2 to S4 are repeated until it is determined that the optimization has been achieved. "]-[0047]);
a task module selection unit which selects a task module for each of the plurality of robots based on the processes (see Figs. 4A-5, all; [0006], [0016]-[0020] and [0040 "Subsequently, the task plan generation unit 13 generates a task plan (step S3 in FIG. 3). Specifically, with the input task content as a goal, the task plan generation unit 13 generates a task plan based on the process information table and the information related to the system state acquired by the system state acquisition unit 12 ... once a workpiece is input to the workpiece supply port at Process P1, Robot #1 executes Processes P2 to P7, Robot #2 executes Processes P5 to P10, Machine Tool #2 executes Process P16, Robot #2 executes Processes P4, P7, P5, and P10, Machine Tool #2 executes Process P17, and Robot #2 executes Process P13, before the workpiece is finally discharged through the workpiece discharge port at Process P18."]-[0043]); and
a control unit which controls the plurality of robots based on the task modules (see [0044 "When it is determined that the optimization has been achieved at step S5, the task plan generation unit 13 transmits the optimized task plan to the robot system 2 (step S6 in FIG. 3). Each device included in the robot system 2 operates based on the task plan transmitted by the task plan generation unit 13.”]),
wherein the optimization unit restricts a task of the other robot when execution times of tasks affecting each other overlap (see Fig. 5, interlock time and/or stand-by time; [0019], [0041]-[0042 "In a task plan for a workpiece supplied second, however, an interlock time is provided right before Process P8, which is performed by Robot #1, to avoid interference that would otherwise occur between Robot #1 and Robot #2 when the temporary placing table as an exclusively used resource is simultaneously used in Processes P5 and P8. In addition, a stand-by time is provided right after Process P8 to plan a stand-by until Robot #2 is available. In this case, the entire task time includes the sum of task times taken for processes, the interlock time, and the stand-by time."] and [0050 "When interlock occurs, a device that performs the corresponding process does not operate during the interlock time in the above-described embodiment, but may, for example, slowly operate to avoid interference with any other device."]).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to modify the control system of Kobayashi to include a control unit which controls the plurality of robots based on the task modules, as taught by Takeda, in order to operate each robot based on the task modules transmitted by the task module selection unit.
Regarding Claim 2
Modified Kobayashi teaches the control system according to claim 1 (as discussed above in claim 1),
Kobayashi further teaches wherein the restriction of the task of the other robot is delay processing of the time of task execution (see Fig. 8A, all; Figs. 9A-16, all; [0006 "...execute comparison processing that includes comparing first end time with second end time when the sites to carry out the first task and the second task are likely to overlap each other, the first end time being end time of all of the first and second tasks when adopting a first task order to delay the first task in order to avoid the overlap of the sites to carry out the first task and the second task, and the second end time being end time of all of the first and second tasks when adopting a second task order to delay the second task in order to avoid the overlap of the sites to carry out the first task and the second task, and execute determination processing that includes selecting the first task order when the first end time is earlier than the second end time, and selecting the second task order when the second end time is earlier than the first end time."], and [0054]-[0058 "Step S30 may be regarded as the processing to compare the task completion time in the case of delaying the first task (the case of a first task order) for the purpose of avoiding an overlap of the site to carry out the first task (the target actions A2 and A3) and the site to carry out the second task (the target actions B2 and B3) with the task completion time in the case of delaying the second task (the case of a second task order) for the same purpose, and then to adopt the task order that has the earlier completion time."]).
Takeda additionally teaches wherein the restriction of the task of the other robot is delay processing of the time of task execution (see Fig. 5, interlock time and/or stand-by time; [0019], [0041]-[0042 "In a task plan for a workpiece supplied second, however, an interlock time is provided right before Process P8, which is performed by Robot #1, to avoid interference that would otherwise occur between Robot #1 and Robot #2 when the temporary placing table as an exclusively used resource is simultaneously used in Processes P5 and P8. In addition, a stand-by time is provided right after Process P8 to plan a stand-by until Robot #2 is available. In this case, the entire task time includes the sum of task times taken for processes, the interlock time, and the stand-by time."] and [0050 "When interlock occurs, a device that performs the corresponding process does not operate during the interlock time in the above-described embodiment, but may, for example, slowly operate to avoid interference with any other device."]).
Regarding Claim 3
Modified Kobayashi teaches the control system according to claim 1 (as discussed above in claim 1),
Kobayashi is silent regarding wherein the restriction of the task of the other robot is slowing down of the operation of the robot.
Takeda teaches wherein the restriction of the task of the other robot is slowing down of the operation of the robot (see [0050 "When interlock occurs, a device that performs the corresponding process does not operate during the interlock time in the above-described embodiment, but may, for example, slowly operate to avoid interference with any other device."]).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to further modify the control system of modified Kobayashi to restrict the task of the other robot by slowing down of the operation of the robot, as taught by Takeda, in order to slowly operate the robot to avoid interference with any other device.
Regarding Claim 4
Modified Kobayashi teaches the control system according to claim 1 (as discussed above in claim 1),
Kobayashi further teaches wherein the restriction of the task of the other robot is conducted by changing the control parameters (see Fig. 8A, all; Figs. 9A-16, all; [0006 "...execute comparison processing that includes comparing first end time with second end time when the sites to carry out the first task and the second task are likely to overlap each other, the first end time being end time of all of the first and second tasks when adopting a first task order to delay the first task in order to avoid the overlap of the sites to carry out the first task and the second task, and the second end time being end time of all of the first and second tasks when adopting a second task order to delay the second task in order to avoid the overlap of the sites to carry out the first task and the second task, and execute determination processing that includes selecting the first task order when the first end time is earlier than the second end time, and selecting the second task order when the second end time is earlier than the first end time."], and [0054]-[0058 "Step S30 may be regarded as the processing to compare the task completion time in the case of delaying the first task (the case of a first task order) for the purpose of avoiding an overlap of the site to carry out the first task (the target actions A2 and A3) and the site to carry out the second task (the target actions B2 and B3) with the task completion time in the case of delaying the second task (the case of a second task order) for the same purpose, and then to adopt the task order that has the earlier completion time."]).
Takeda additionally teaches wherein the restriction of the task of the other robot is conducted by changing the control parameters (see Fig. 5, interlock time and/or stand-by time; [0019], [0041]-[0042 "In a task plan for a workpiece supplied second, however, an interlock time is provided right before Process P8, which is performed by Robot #1, to avoid interference that would otherwise occur between Robot #1 and Robot #2 when the temporary placing table as an exclusively used resource is simultaneously used in Processes P5 and P8. In addition, a stand-by time is provided right after Process P8 to plan a stand-by until Robot #2 is available. In this case, the entire task time includes the sum of task times taken for processes, the interlock time, and the stand-by time."] and [0050 "When interlock occurs, a device that performs the corresponding process does not operate during the interlock time in the above-described embodiment, but may, for example, slowly operate to avoid interference with any other device."]).
Regarding Claim 5
Kobayashi teaches a control system which controls each of a plurality of robots operated in the same work environment (see all Figs.; [0006]), the control system comprising:
a control parameter calculation unit which calculates control parameters for the plurality of robots (see Fig. 3, "Actions"; Figs. 6-8B, Actions A1-A3 and B1-B3; [0031 "Among the actions of the robot system, the actions “Move”, “Transfer”, and “Place” are actions in an “interference zone” to be described later (such actions are referred to as interference actions) while the actions “Pick” and “MoveHome” are actions in a “non-interference zone” to be described later (such actions are referred to as non-interference actions)."], [0039 "The task A is the one-arm task that includes actions A1, A2, and A3 which require 1 second, 3 seconds, and 1 second, respectively. Of the actions A1 to A3, the actions A1 and A3 are the actions in the non-interference zone whereas the action A2 is the action in the interference zone..."]-[0040 "The task B is the one-arm task that includes actions B1, B2, and B3 which require 2 seconds, 4 seconds, and 1 second, respectively. Of the actions B1 to B3, the actions B1 and B3 are the actions in the non-interference zone whereas the action B2 is the action in the interference zone...."] and [0054]-[0058]);
an optimization unit which generates processes for the plurality of robots based on the control parameters (see Figs. 7-8B, all; [0006], [0034 "When the task plan development unit 24 develops the task plan, the task plan development unit 24 assigns the tasks (the actions) to the respective arms R1 and R2 so as to minimize task time for the tasks assigned to the robot system, and thus determines the order of execution of the tasks (namely, start time of each task (action))."], [0054]-[0058] and [0078 "The task plan (see FIG. 15) for the robot system created at the stage of completion of the processing in FIG. 5 organizes the order of execution of the tasks and the actions so as to minimize the total task time while taking into account the collaborative tasks, the one-arm tasks, the interference actions, and the non-interference actions."]);
a task module selection unit which selects a task module for each of the plurality of robots based on the processes (see Figs. 8A-8B, all; Figs. 9A-16, all; [0006], [0025], [0031], [0034 "When the task plan development unit 24 develops the task plan, the task plan development unit 24 assigns the tasks (the actions) to the respective arms R1 and R2 so as to minimize task time for the tasks assigned to the robot system, and thus determines the order of execution of the tasks (namely, start time of each task (action)). In this case, the task plan development unit 24 takes into account whether each task assigned to the robot system is the one-arm task or the collaborative task that involves two arms R1 and R2, and whether each action is the interference action or the non-interference action."], [0039]-[0040], [0054]-[0058 "In the examples of FIGS. 8A and 8B, it is possible to regard the target actions A2 and A3 assigned to the arm R1 as a first task and the target actions B2 and B3 assigned to the arm R2 as a second task. Step S30 may be regarded as the processing to compare the task completion time in the case of delaying the first task (the case of a first task order) for the purpose of avoiding an overlap of the site to carry out the first task (the target actions A2 and A3) and the site to carry out the second task (the target actions B2 and B3) with the task completion time in the case of delaying the second task (the case of a second task order) for the same purpose, and then to adopt the task order that has the earlier completion time."] and [0078]), wherein
when execution times of tasks affecting each other overlap, the control parameter calculation unit imposes an operation restriction on the operation of the other robot in order to reduce the effect on the task execution of one robot, to calculate the control parameters (see Fig. 8A, all; Figs. 9A-16, all; [0006 "...judging whether or not a site to carry out a first task assigned to a first robot and a site to carry out a second task assigned to a second robot are likely to overlap each other, execute comparison processing that includes comparing first end time with second end time when the sites to carry out the first task and the second task are likely to overlap each other, the first end time being end time of all of the first and second tasks when adopting a first task order to delay the first task in order to avoid the overlap of the sites to carry out the first task and the second task, and the second end time being end time of all of the first and second tasks when adopting a second task order to delay the second task in order to avoid the overlap of the sites to carry out the first task and the second task..."], [0031] and [0054]-[0058 "In the examples of FIGS. 8A and 8B, it is possible to regard the target actions A2 and A3 assigned to the arm R1 as a first task and the target actions B2 and B3 assigned to the arm R2 as a second task. Step S30 may be regarded as the processing to compare the task completion time in the case of delaying the first task (the case of a first task order) for the purpose of avoiding an overlap of the site to carry out the first task (the target actions A2 and A3) and the site to carry out the second task (the target actions B2 and B3) with the task completion time in the case of delaying the second task (the case of a second task order) for the same purpose, and then to adopt the task order that has the earlier completion time."]), and
when the execution times of the tasks affecting each other overlap, the optimization unit calculates the time required for the other robot to execute the task based on the control parameters for the other robot, and generates processes for the plurality of robots based on the calculation results (see Fig. 8A, all; Figs. 9A-16, all; [0006 "...execute comparison processing that includes comparing first end time with second end time when the sites to carry out the first task and the second task are likely to overlap each other, the first end time being end time of all of the first and second tasks when adopting a first task order to delay the first task in order to avoid the overlap of the sites to carry out the first task and the second task, and the second end time being end time of all of the first and second tasks when adopting a second task order to delay the second task in order to avoid the overlap of the sites to carry out the first task and the second task, and execute determination processing that includes selecting the first task order when the first end time is earlier than the second end time, and selecting the second task order when the second end time is earlier than the first end time."], [0040 "The task B is the one-arm task that includes actions B1, B2, and B3 which require 2 seconds, 4 seconds, and 1 second, respectively."] and [0054]-[0058 "Step S30 may be regarded as the processing to compare the task completion time in the case of delaying the first task (the case of a first task order) for the purpose of avoiding an overlap of the site to carry out the first task (the target actions A2 and A3) and the site to carry out the second task (the target actions B2 and B3) with the task completion time in the case of delaying the second task (the case of a second task order) for the same purpose, and then to adopt the task order that has the earlier completion time."]).
Although it may be inherent, Kobayashi does not explicitly teach a control unit which controls the plurality of robots based on the task modules.
Takeda teaches a control system which controls each of a plurality of robots operated in the same work environment (see all Figs.; [0006]), the control system comprising:
a control parameter calculation unit which calculates control parameters for the plurality of robots (see Fig. 4A-4B, operation programs PRG_R1 and PRG_R2; [0022] and [0033 "In FIGS. 4A and 4B, “PRG_R1_1” to “PRG_R1_8” each refer to an operation program for Robot #1, which is necessary for executing the corresponding process. “PRG_R2_1” and “PRG_R2_7” each refer to an operation program for Robot #2, which is necessary for executing the corresponding process ... These operation programs are stored in, for example, the auxiliary storage device (not illustrated) included in the task planning device 1 or a storage device (not illustrated) included in the robot system 2."]);
an optimization unit which generates processes for the plurality of robots based on the control parameters (see Figs. 4A-5, all; [0020] and [0043 "Subsequently at step S5, it is determined whether the entire task time measured by the simulator 11 is an optimized task time. The optimization refers to generation of a task plan with which the entire task time is minimized. At step S5, when it is determined that no optimization has been achieved, steps S2 to S4 are repeated until it is determined that the optimization has been achieved. "]-[0047]);
a task module selection unit which selects a task module for each of the plurality of robots based on the processes (see Figs. 4A-5, all; [0006], [0016]-[0020] and [0040 "Subsequently, the task plan generation unit 13 generates a task plan (step S3 in FIG. 3). Specifically, with the input task content as a goal, the task plan generation unit 13 generates a task plan based on the process information table and the information related to the system state acquired by the system state acquisition unit 12 ... once a workpiece is input to the workpiece supply port at Process P1, Robot #1 executes Processes P2 to P7, Robot #2 executes Processes P5 to P10, Machine Tool #2 executes Process P16, Robot #2 executes Processes P4, P7, P5, and P10, Machine Tool #2 executes Process P17, and Robot #2 executes Process P13, before the workpiece is finally discharged through the workpiece discharge port at Process P18."]-[0043]); and
a control unit which controls the plurality of robots based on the task modules (see [0044 "When it is determined that the optimization has been achieved at step S5, the task plan generation unit 13 transmits the optimized task plan to the robot system 2 (step S6 in FIG. 3). Each device included in the robot system 2 operates based on the task plan transmitted by the task plan generation unit 13.']), wherein
when execution times of tasks affecting each other overlap, the control parameter calculation unit imposes an operation restriction on the operation of the other robot in order to reduce the effect on the task execution of one robot, to calculate the control parameters (see Fig. 5, interlock time and/or stand-by time; [0019], [0041]-[0042 "In a task plan for a workpiece supplied second, however, an interlock time is provided right before Process P8, which is performed by Robot #1, to avoid interference that would otherwise occur between Robot #1 and Robot #2 when the temporary placing table as an exclusively used resource is simultaneously used in Processes P5 and P8. In addition, a stand-by time is provided right after Process P8 to plan a stand-by until Robot #2 is available. In this case, the entire task time includes the sum of task times taken for processes, the interlock time, and the stand-by time."] and [0050 "When interlock occurs, a device that performs the corresponding process does not operate during the interlock time in the above-described embodiment, but may, for example, slowly operate to avoid interference with any other device."]), and
when the execution times of the tasks affecting each other overlap, the optimization unit calculates the time required for the other robot to execute the task based on the control parameters for the other robot, and generates processes for the plurality of robots based on the calculation results (see Figs. 5, "Entire Task Time" and/or task time for just Robot #1; [0018]-[0019], [0041 "The entire task time includes the sum of task times taken for processes, any stand-by time due to dependency among the processes, and any interlock time due to interference among the devices. In the Example, the entire task time is a time between Processes P1 and P18 as illustrated in FIG. 5."]-[0042] and [0055 "In the above-described task planning device according to the aspect of the present invention, the task plan generation unit may calculate an entire task time based on a time taken for each process included in the task, a stand-by time until execution of each process, and a time in which devices used in each process interfere with each other, and may perform optimization to minimize the entire task time.']).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to modify the control system of Kobayashi to include a control unit which controls the plurality of robots based on the task modules, as taught by Takeda, in order to operate each robot based on the task modules transmitted by the task module selection unit.
Regarding Claim 6
Modified Kobayashi teaches the control system according to claim 5 (as discussed above in claim 5),
Kobayashi further teaches wherein the control unit switches the control parameter for the other robot according to the status of execution of the task for the one robot (see Fig. 8A, all; Figs. 9A-16, all; [0006 "...execute comparison processing that includes comparing first end time with second end time when the sites to carry out the first task and the second task are likely to overlap each other, the first end time being end time of all of the first and second tasks when adopting a first task order to delay the first task in order to avoid the overlap of the sites to carry out the first task and the second task, and the second end time being end time of all of the first and second tasks when adopting a second task order to delay the second task in order to avoid the overlap of the sites to carry out the first task and the second task, and execute determination processing that includes selecting the first task order when the first end time is earlier than the second end time, and selecting the second task order when the second end time is earlier than the first end time."], and [0054]-[0058 "Step S30 may be regarded as the processing to compare the task completion time in the case of delaying the first task (the case of a first task order) for the purpose of avoiding an overlap of the site to carry out the first task (the target actions A2 and A3) and the site to carry out the second task (the target actions B2 and B3) with the task completion time in the case of delaying the second task (the case of a second task order) for the same purpose, and then to adopt the task order that has the earlier completion time."]).
Takeda additionally teaches wherein the control unit switches the control parameter for the other robot according to the status of execution of the task for the one robot (see Fig. 5, interlock time and/or stand-by time; [0019], [0041]-[0042 "In a task plan for a workpiece supplied second, however, an interlock time is provided right before Process P8, which is performed by Robot #1, to avoid interference that would otherwise occur between Robot #1 and Robot #2 when the temporary placing table as an exclusively used resource is simultaneously used in Processes P5 and P8. In addition, a stand-by time is provided right after Process P8 to plan a stand-by until Robot #2 is available. In this case, the entire task time includes the sum of task times taken for processes, the interlock time, and the stand-by time."] and [0050 "When interlock occurs, a device that performs the corresponding process does not operate during the interlock time in the above-described embodiment, but may, for example, slowly operate to avoid interference with any other device."]).
Regarding Claim 10
Modified Kobayashi teaches the control system according to claim 5 (as discussed above in claim 5),
Kobayashi further teaches wherein an execution time of the task executed by the other robot at a normal time, a time at which the execution of the task executed by the one robot and the execution of the task executed by the other robot overlap, a control parameter of the other robot at a normal time, and a control parameter which is calculated by the control parameter calculation unit and which is at a time when restricted by the operation restriction of the other robot, are used for calculation of the time required for the other robot to execute the task (see Fig. 8A, all, especially Ta; Figs. 9A-16, all; [0006 "...execute comparison processing that includes comparing first end time with second end time when the sites to carry out the first task and the second task are likely to overlap each other, the first end time being end time of all of the first and second tasks when adopting a first task order to delay the first task in order to avoid the overlap of the sites to carry out the first task and the second task, and the second end time being end time of all of the first and second tasks when adopting a second task order to delay the second task in order to avoid the overlap of the sites to carry out the first task and the second task, and execute determination processing that includes selecting the first task order when the first end time is earlier than the second end time, and selecting the second task order when the second end time is earlier than the first end time."], [0040 "The task B is the one-arm task that includes actions B1, B2, and B3 which require 2 seconds, 4 seconds, and 1 second, respectively."] and [0056 "In this case, the task plan development unit 24 calculates completion time Ta of all of the target actions in the case of starting the target actions A2 and A3 earlier as illustrated in FIG. 8A and completion time Tb of all of the target actions in the case of starting the target actions B2 and B3 earlier as illustrated in FIG. 8B, and then compares the completion time Ta with the completion time Tb."]-[0058 "Step S30 may be regarded as the processing to compare the task completion time in the case of delaying the first task (the case of a first task order) for the purpose of avoiding an overlap of the site to carry out the first task (the target actions A2 and A3) and the site to carry out the second task (the target actions B2 and B3) with the task completion time in the case of delaying the second task (the case of a second task order) for the same purpose, and then to adopt the task order that has the earlier completion time."]).
Regarding Claim 11
Modified Kobayashi teaches the control system according to claim 5 (as discussed above in claim 5),
Kobayashi further teaches wherein the control parameter calculation unit calculates control parameters of the other robot and the one robot (see Fig. 3, "Actions"; Figs. 6-8B, Actions A1-A3 and B1-B3; [0031 "Among the actions of the robot system, the actions “Move”, “Transfer”, and “Place” are actions in an “interference zone” to be described later (such actions are referred to as interference actions) while the actions “Pick” and “MoveHome” are actions in a “non-interference zone” to be described later (such actions are referred to as non-interference actions)."], [0039 "The task A is the one-arm task that includes actions A1, A2, and A3 which require 1 second, 3 seconds, and 1 second, respectively. Of the actions A1 to A3, the actions A1 and A3 are the actions in the non-interference zone whereas the action A2 is the action in the interference zone..."]-[0040 "The task B is the one-arm task that includes actions B1, B2, and B3 which require 2 seconds, 4 seconds, and 1 second, respectively. Of the actions B1 to B3, the actions B1 and B3 are the actions in the non-interference zone whereas the action B2 is the action in the interference zone...."] and [0054]-[0058]); when the task execution times of the plurality of robots overlap, the optimization unit calculates the time required for the other robot and the one robot to execute the task based on the control parameters for the other robot and the one robot (see Fig. 8A-8B, all, especially times Ta and Tb; Figs. 10A-10B, all, especially times Tc and Td; [0006 "...execute comparison processing that includes comparing first end time with second end time when the sites to carry out the first task and the second task are likely to overlap each other, the first end time being end time of all of the first and second tasks when adopting a first task order to delay the first task in order to avoid the overlap of the sites to carry out the first task and the second task, and the second end time being end time of all of the first and second tasks when adopting a second task order to delay the second task in order to avoid the overlap of the sites to carry out the first task and the second task, and execute determination processing that includes selecting the first task order when the first end time is earlier than the second end time, and selecting the second task order when the second end time is earlier than the first end time."], [0056 "In this case, the task plan development unit 24 calculates completion time Ta of all of the target actions in the case of starting the target actions A2 and A3 earlier as illustrated in FIG. 8A and completion time Tb of all of the target actions in the case of starting the target actions B2 and B3 earlier as illustrated in FIG. 8B, and then compares the completion time Ta with the completion time Tb."]-[0058] and [0066 "In this case, the task plan development unit 24 calculates completion time Tc of all of the target actions in the case of starting the target actions C1, C2, and C3 of the arm R1 earlier as illustrated in FIG. 10A and completion time Td of all of the target actions in the case of starting the target actions B2 and B3 of the arm R2 earlier as illustrated in FIG. 10B, and then compares the completion time Tc with the completion time Td. In the example of FIGS. 10A and 10B, the completion time Tc in FIG. 10A is earlier than the completion time Td in FIG."]); and the control unit switches the control parameters for the other robot and the one robot depending on a task execution status of the one robot (see Fig. 8A, all; Figs. 9A-16, all; [0006 "...execute comparison processing that includes comparing first end time with second end time when the sites to carry out the first task and the second task are likely to overlap each other, the first end time being end time of all of the first and second tasks when adopting a first task order to delay the first task in order to avoid the overlap of the sites to carry out the first task and the second task, and the second end time being end time of all of the first and second tasks when adopting a second task order to delay the second task in order to avoid the overlap of the sites to carry out the first task and the second task, and execute determination processing that includes selecting the first task order when the first end time is earlier than the second end time, and selecting the second task order when the second end time is earlier than the first end time."], and [0054]-[0058 "Step S30 may be regarded as the processing to compare the task completion time in the case of delaying the first task (the case of a first task order) for the purpose of avoiding an overlap of the site to carry out the first task (the target actions A2 and A3) and the site to carry out the second task (the target actions B2 and B3) with the task completion time in the case of delaying the second task (the case of a second task order) for the same purpose, and then to adopt the task order that has the earlier completion time."]).
Regarding Claim 12
Modified Kobayashi teaches the control system according to claim 5 (as discussed above in claim 5),
Kobayashi further teaches wherein based on the task module, any of the plurality of robots is through remote operation (see Fig. 16, all; [0035] and [0079 "In this case, the display control unit 26 creates a display screen as illustrated in FIG. 16 based on the task plan developed by the task plan development unit 24, and causes the display unit 93 to display the created display screen. The display screen in FIG. 16 makes it possible to check the tasks assigned to the persons (#1, #2, #3, and so on) and to the robot systems (M1 and so on), and to check the order of the tasks (the start time of the tasks)."]).
Although it may be inherent and/or implied, Kobayashi does not explicitly teach the plurality of robots is controlled by an operator through remote operation.
Takeda teaches wherein based on the task module, any of the plurality of robots is controlled by an operator through remote operation (see Fig. 1, all; [0014]-[0015], [0020], [0038 "First, the user inputs a task content to the task plan generation unit 13 of the task planning device 1 (step S1 in FIG. 3). In the Example, the task content is “processing A and processing B on a workpiece”."], [0044] and [0052]-[0053]).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to further modify the control system of modified Kobayashi to control the plurality of robots by an operator through remote operation, as taught by Takeda, in order to provide an operator with the flexibility of assigning tasks to the plurality of robots.
Regarding Claim 13
Modified Kobayashi teaches the control system according to claim 5 (as discussed above in claim 5),
Kobayashi further teaches wherein the task module is comprised of two or more operations, and different operation restrictions are set for each operation (see Fig. 8A-16, all, especially Fig. 10B; [0006 "...execute comparison processing that includes comparing first end time with second end time when the sites to carry out the first task and the second task are likely to overlap each other, the first end time being end time of all of the first and second tasks when adopting a first task order to delay the first task in order to avoid the overlap of the sites to carry out the first task and the second task, and the second end time being end time of all of the first and second tasks when adopting a second task order to delay the second task in order to avoid the overlap of the sites to carry out the first task and the second task, and execute determination processing that includes selecting the first task order when the first end time is earlier than the second end time, and selecting the second task order when the second end time is earlier than the first end time."], [0054]-[0058 "Step S30 may be regarded as the processing to compare the task completion time in the case of delaying the first task (the case of a first task order) for the purpose of avoiding an overlap of the site to carry out the first task (the target actions A2 and A3) and the site to carry out the second task (the target actions B2 and B3) with the task completion time in the case of delaying the second task (the case of a second task order) for the same purpose, and then to adopt the task order that has the earlier completion time."] and [0066]).
Regarding Claim 14
Kobayashi teaches a control method of controlling each of a plurality of robots operated in the same work environment (see all Figs.; [0006]), the control method comprising the steps of:
calculating control parameters for the plurality of robots (see Fig. 3, "Actions"; Figs. 6-8B, Actions A1-A3 and B1-B3; [0031 "Among the actions of the robot system, the actions “Move”, “Transfer”, and “Place” are actions in an “interference zone” to be described later (such actions are referred to as interference actions) while the actions “Pick” and “MoveHome” are actions in a “non-interference zone” to be described later (such actions are referred to as non-interference actions)."], [0039 "The task A is the one-arm task that includes actions A1, A2, and A3 which require 1 second, 3 seconds, and 1 second, respectively. Of the actions A1 to A3, the actions A1 and A3 are the actions in the non-interference zone whereas the action A2 is the action in the interference zone..."]-[0040 "The task B is the one-arm task that includes actions B1, B2, and B3 which require 2 seconds, 4 seconds, and 1 second, respectively. Of the actions B1 to B3, the actions B1 and B3 are the actions in the non-interference zone whereas the action B2 is the action in the interference zone...."] and [0054]-[0058]); generating processes for the plurality of robots based on the control parameters (see Figs. 7-8B, all; [0006], [0034 "When the task plan development unit 24 develops the task plan, the task plan development unit 24 assigns the tasks (the actions) to the respective arms R1 and R2 so as to minimize task time for the tasks assigned to the robot system, and thus determines the order of execution of the tasks (namely, start time of each task (action))."], [0054]-[0058] and [0078 "The task plan (see FIG. 15) for the robot system created at the stage of completion of the processing in FIG. 5 organizes the order of execution of the tasks and the actions so as to minimize the total task time while taking into account the collaborative tasks, the one-arm tasks, the interference actions, and the non-interference actions."]); selecting a task module for each of the plurality of robots based on the processes (see Figs. 8A-8B, all; Figs. 9A-16, all; [0006], [0025], [0031], [0034 "When the task plan development unit 24 develops the task plan, the task plan development unit 24 assigns the tasks (the actions) to the respective arms R1 and R2 so as to minimize task time for the tasks assigned to the robot system, and thus determines the order of execution of the tasks (namely, start time of each task (action)). In this case, the task plan development unit 24 takes into account whether each task assigned to the robot system is the one-arm task or the collaborative task that involves two arms R1 and R2, and whether each action is the interference action or the non-interference action."], [0039]-[0040], [0054]-[0058 "In the examples of FIGS. 8A and 8B, it is possible to regard the target actions A2 and A3 assigned to the arm R1 as a first task and the target actions B2 and B3 assigned to the arm R2 as a second task. Step S30 may be regarded as the processing to compare the task completion time in the case of delaying the first task (the case of a first task order) for the purpose of avoiding an overlap of the site to carry out the first task (the target actions A2 and A3) and the site to carry out the second task (the target actions B2 and B3) with the task completion time in the case of delaying the second task (the case of a second task order) for the same purpose, and then to adopt the task order that has the earlier completion time."] and [0078]); and
restricting a task of the other robot when execution times of tasks affecting each other overlap (see Fig. 8A, all; Figs. 9A-16, all; [0006 "...execute comparison processing that includes comparing first end time with second end time when the sites to carry out the first task and the second task are likely to overlap each other, the first end time being end time of all of the first and second tasks when adopting a first task order to delay the first task in order to avoid the overlap of the sites to carry out the first task and the second task, and the second end time being end time of all of the first and second tasks when adopting a second task order to delay the second task in order to avoid the overlap of the sites to carry out the first task and the second task, and execute determination processing that includes selecting the first task order when the first end time is earlier than the second end time, and selecting the second task order when the second end time is earlier than the first end time."], [0040 "The task B is the one-arm task that includes actions B1, B2, and B3 which require 2 seconds, 4 seconds, and 1 second, respectively."] and [0054]-[0058 "Step S30 may be regarded as the processing to compare the task completion time in the case of delaying the first task (the case of a first task order) for the purpose of avoiding an overlap of the site to carry out the first task (the target actions A2 and A3) and the site to carry out the second task (the target actions B2 and B3) with the task completion time in the case of delaying the second task (the case of a second task order) for the same purpose, and then to adopt the task order that has the earlier completion time."]).
Although it may be inherent, Kobayashi does not explicitly teach controlling the plurality of robots based on the task modules.
Takeda teaches a control method of controlling each of a plurality of robots operated in the same work environment (see all Figs.; [0006]), the control method comprising the steps of:
calculating control parameters for the plurality of robots (see Fig. 4A-4B, operation programs PRG_R1 and PRG_R2; [0022] and [0033 "In FIGS. 4A and 4B, “PRG_R1_1” to “PRG_R1_8” each refer to an operation program for Robot #1, which is necessary for executing the corresponding process. “PRG_R2_1” and “PRG_R2_7” each refer to an operation program for Robot #2, which is necessary for executing the corresponding process ... These operation programs are stored in, for example, the auxiliary storage device (not illustrated) included in the task planning device 1 or a storage device (not illustrated) included in the robot system 2."]); generating processes for the plurality of robots based on the control parameters (see Figs. 4A-5, all; [0020] and [0043 "Subsequently at step S5, it is determined whether the entire task time measured by the simulator 11 is an optimized task time. The optimization refers to generation of a task plan with which the entire task time is minimized. At step S5, when it is determined that no optimization has been achieved, steps S2 to S4 are repeated until it is determined that the optimization has been achieved. "]-[0047]); selecting a task module for each of the plurality of robots based on the processes (see Figs. 4A-5, all; [0006], [0016]-[0020] and [0040 "Subsequently, the task plan generation unit 13 generates a task plan (step S3 in FIG. 3). Specifically, with the input task content as a goal, the task plan generation unit 13 generates a task plan based on the process information table and the information related to the system state acquired by the system state acquisition unit 12 ... once a workpiece is input to the workpiece supply port at Process P1, Robot #1 executes Processes P2 to P7, Robot #2 executes Processes P5 to P10, Machine Tool #2 executes Process P16, Robot #2 executes Processes P4, P7, P5, and P10, Machine Tool #2 executes Process P17, and Robot #2 executes Process P13, before the workpiece is finally discharged through the workpiece discharge port at Process P18."]-[0043]); and controlling the plurality of robots based on the task modules (see [0044 "When it is determined that the optimization has been achieved at step S5, the task plan generation unit 13 transmits the optimized task plan to the robot system 2 (step S6 in FIG. 3). Each device included in the robot system 2 operates based on the task plan transmitted by the task plan generation unit 13.']); and
restricting a task of the other robot when execution times of tasks affecting each other overlap (see Fig. 5, interlock time and/or stand-by time; [0019], [0041]-[0042 "In a task plan for a workpiece supplied second, however, an interlock time is provided right before Process P8, which is performed by Robot #1, to avoid interference that would otherwise occur between Robot #1 and Robot #2 when the temporary placing table as an exclusively used resource is simultaneously used in Processes P5 and P8. In addition, a stand-by time is provided right after Process P8 to plan a stand-by until Robot #2 is available. In this case, the entire task time includes the sum of task times taken for processes, the interlock time, and the stand-by time."] and [0050 "When interlock occurs, a device that performs the corresponding process does not operate during the interlock time in the above-described embodiment, but may, for example, slowly operate to avoid interference with any other device."]).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to modify the process of Kobayashi to further control the plurality of robots based on the task modules, as taught by Takeda, in order to operate each robot based on the task modules transmitted.
Claim 7 is rejected under 35 U.S.C. 103 as being unpatentable over Kobayashi (as modified by Takeda) as applied to claim 5 above, and further in view of Nakamoto et al. (US 20220203529 A1 and Nakamoto hereinafter).
Regarding Claim 7
Modified Kobayashi teaches the control system according to claim 5 (as discussed above in claim 5),
Kobayashi is silent regarding wherein the control parameter includes either the speed, acceleration, angular speed, or angular acceleration related to the operation of the robot.
Nakamoto teaches a control system which controls each of a plurality of robots operated in the same work environment (see all Figs.; [0005]), the control system comprising:
a control parameter calculation unit which calculates control parameters for the plurality of robots (see [0018]-[0020], [0067 "The completion time calculation unit 72 calculates a required time of the task based on the content of the task commanded by the user, a preset movement speed of the robot 2, an operation speed of the task execution mechanism 22 of the robot 2, and the like, and calculates the time the task is completed based on the calculated required time of the task and the current time."] and [0081]);
an optimization unit which generates processes for the plurality of robots based on the control parameters (see [0004]-[0005] and [0046]);
a task module selection unit which selects a task module for each of the plurality of robots based on the processes (see [0005], [0014], [0067]-[0067] and [0081]-[0082]); and
a control unit which controls the plurality of robots based on the task modules (see [0006], [0013 ...a control unit that controls the robot based on a determination result of the determination unit or the time slot in which the robot is caused to execute the task…] and [0082]),
wherein the control parameter includes the speed related to the operation of the robot (see [0067 "The completion time calculation unit 72 calculates a required time of the task based on the content of the task commanded by the user, a preset movement speed of the robot 2, an operation speed of the task execution mechanism 22 of the robot 2, and the like, and calculates the time the task is completed based on the calculated required time of the task and the current time."] and [0081]).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to further modify the control parameter of the control system of modified Kobayashi to include a speed related to the operation of the robot, as taught by Nakamoto, in order to calculated a required time for completing each task based on the movement speed of the robot.
Claims 8-9 are rejected under 35 U.S.C. 103 as being unpatentable over Kobayashi (as modified by Takeda) as applied to claim 5 above, and further in view of Soe-Knudsen et al. (US 20230035296 A1 and Soe-Knudsen hereinafter).
Regarding Claim 8
Modified Kobayashi teaches the control system according to claim 5 (as discussed above in claim 5),
Kobayashi is silent regarding wherein the control parameter calculation unit gives a conditional formula for a physical quantity which makes an effect as to whether or not the task is executed, and calculates such a control parameter as to satisfy the conditional formula.
Soe-Knudsen teaches a control system which controls a robot (see all Figs.; [0015]-[0016]), the control system comprising:
a control parameter calculation unit which calculates control parameters for the robot (see Fig. 4, step 470; [0015]-[0016], [0049 "Also, the vibrational properties can be received in form of at least one external object vibration formula, where the external object vibration formula defines at relationship between the vibrational properties of the at least one external object and at least one robot parameter. This makes it possible to obtain the vibrational properties of the external object based on robot parameters such as position, orientation, speed, acceleration of parts of the robot arm, as such parameters may influence the vibrational properties of the external object. The external object vibration formula may for instance be defined in form of a mathematical formula, program codes, look up tables or combinations thereof"], [0058]-[0064 "Step 470 of generating a control signal for the robot arm is performed based on the target motion MD and the received vibrational properties, ωi, ζi and the control signal comprises control parameters for the joint motor."] and [0065]);
a task module selection unit which selects a task module for the robot (see [0015] and [0063]); and
a control unit which controls the robot based on the task modules (see [0015]-[0016] and [0066]),
wherein the control parameter calculation unit gives a conditional formula for a physical quantity which makes an effect as to whether or not the task is executed, and calculates such a control parameter as to satisfy the conditional formula (see Fig. 4, all; [0015 "Where, the robot controller according to an independent claim comprises an external object installation interface configured to receive vibrational properties of at least one external object connected to the robot arm and where the robot controller is configured to generate a control signal for the robot arm based on a target motion and the received vibrational properties of the at least one external object"]-[0016], [0049 "Also, the vibrational properties can be received in form of at least one external object vibration formula, where the external object vibration formula defines at relationship between the vibrational properties of the at least one external object and at least one robot parameter. This makes it possible to obtain the vibrational properties of the external object based on robot parameters such as position, orientation, speed, acceleration of parts of the robot arm, as such parameters may influence the vibrational properties of the external object. The external object vibration formula may for instance be defined in form of a mathematical formula, program codes, look up tables or combinations thereof"], [0058]-[0064] and [0065]).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to further modify the control system of modified Kobayashi to give a conditional formula for a physical quantity which makes an effect as to whether or not the task is executed and calculate such a control parameter as to satisfy the conditional formula, as taught by Soe-Knudsen, in order to minimize vibrations of and/or caused by the object connected to the robot.
Regarding Claim 9
Modified Kobayashi teaches the control system according to claim 8 (as discussed above in claim 8),
Kobayashi is silent regarding wherein the physical quantity is a physical quantity related to the vibration of an object in an environment in which the plurality of robots work, or a physical quantity related to noise at a certain location in a work environment.
Soe-Knudsen teaches wherein the physical quantity is a physical quantity related to the vibration of an object in an environment in which the plurality of robots work (see Fig. 4, all; [0015 "Where, the robot controller according to an independent claim comprises an external object installation interface configured to receive vibrational properties of at least one external object connected to the robot arm and where the robot controller is configured to generate a control signal for the robot arm based on a target motion and the received vibrational properties of the at least one external object"], [0049 "Also, the vibrational properties can be received in form of at least one external object vibration formula, where the external object vibration formula defines at relationship between the vibrational properties of the at least one external object and at least one robot parameter. This makes it possible to obtain the vibrational properties of the external object based on robot parameters such as position, orientation, speed, acceleration of parts of the robot arm, as such parameters may influence the vibrational properties of the external object. The external object vibration formula may for instance be defined in form of a mathematical formula, program codes, look up tables or combinations thereof"], [0058]-[0064] and [0065]).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to further modify the control system of modified Kobayashi to give a conditional formula for vibration of an object which makes an effect as to whether or not the task is executed and calculate such a control parameter as to satisfy the conditional formula, as taught by Soe-Knudsen, in order to minimize vibrations of and/or caused by the object connected to the robot.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to TANNER LUKE CULLEN whose telephone number is (303)297-4384. The examiner can normally be reached Monday-Friday 9:00-5:00 MT.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Khoi Tran can be reached at (571) 272-6919. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/TANNER L CULLEN/Examiner, Art Unit 3656 /KHOI H TRAN/Supervisory Patent Examiner, Art Unit 3656