DETAILED ACTION
This Office Action is taken in response to Applicant’s Amendment and Remarks filed on 12/26/2025 regarding Application No. 18/032,326 originally filed on 04/17/2023. Claims 1-12, 14, and 16-17 as filed are currently pending and have been considered as follows:
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 .
Response to Arguments
Applicant’s arguments with respect to claim(s) have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Claim Rejections - 35 USC § 103
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 (i.e., changing from AIA to pre-AIA ) 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.
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.
Claim(s) 1-3, 6-9, 12, 14, and 16-17 are rejected under 35 U.S.C. 103 as being unpatentable over Noda (US Pub. No. 20110288667) in view of Chen (CN Pub. No. 111596614) in further view of Hiruma (US Pub. No. 20160361817).
As per Claim 1, Noda discloses of an industrial robot system (as per Abstract), comprising:
an interface connected communicatively to at least one robot controller, the at least one robot controller (as per "the industrial robot system includes, as components relating to the production design data and production facility data 1, the specific task specification 2, and the robot system 3, an action planning section 4 for temporary halts, an error-inducing-task restraining section 5, a section 6 for teaching task, an operation mastering section 7, a hand library 8, a specific task library 9, an error recovery library 10, an optimum-task-operation generating section 11, an error-recovery-task teaching section 12, a controller 30, a manipulator 31, … and a manipulation device group 34." in ¶47)
control the robot to execute the work based on the job information. (as per "The controller 30 provides control for driving the manipulator 31 and the manipulation device group 34 based on the respective robot programs before and after the mastering, and the operation monitoring information from the finger-eye-camera measurement section 32 and the three-dimensional recognition section 33." in ¶59)
Noda fails to expressly disclose:
control at least one robot based on at least one library defining a processing procedure indicating robot movement, the processing procedure comprising an undefined portion; and
a control unit configured to acquire job information generated based on input information related to work, the job information identifying the at least one library selected in accordance with the work to be executed by the at least one robot
identifying compensation information to be transferred as an execution argument when the at least one library is invoked, the compensation information enabling compensation of the undefined portion as needed to complete the processing procedure;
Chen discloses of a motion control error compensation system, comprising:
a control unit configured to acquire job information generated based on input information related to work (as per “The processing task client is the entrance to human-computer interaction on the edge side, used to select the motion control algorithm according to the processing task and initiate the task processing operation;” in ¶17, as per “terminal robotic arm control unit is used to obtain real-time processing data and send it to the edge server; it is also used to send the control instructions with error compensation effect to the robotic arm” in ¶10), the job information identifying the at least one library selected in accordance with the work to be executed by the at least one robot (as per “The motion control algorithm library is used to store motion control algorithms deployed on the edge side and select corresponding motion control algorithms according to different processing tasks” in ¶23, as per “The error compensation algorithm library is used to store error compensation algorithms deployed on the edge side, receive and store error compensation algorithms issued from the central server platform, and provide corresponding error compensation algorithms for processing tasks;” in ¶22)
In this way, Chen operates to improve the processing accuracy of the robotic arm(s) (¶4). Like Noda, Chen is concerned with error compensation.
It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the system of Noda with the teachings of Chen to enable another standard means of using a identifying a library in accordance with the work to be completed by the robot (¶23).
Noda and Chen fail to expressly disclose:
control at least one robot based on at least one library defining a processing procedure indicating robot movement, the processing procedure comprising an undefined portion; and
identifying compensation information to be transferred as an execution argument when the at least one library is invoked, the compensation information enabling compensation of the undefined portion as needed to complete the processing procedure;
Hiruma discloses of a robot capable of substituting a plurality of parameter candidates, comprising:
control at least one robot (as per “A computer that executes a program controls the moving unit and the work tool” in ¶3) based on at least one library (as per “The storage 32 stores programs, such as main programs 6, a subprogram 7, and parameters 8. The main program 6 is a main routine, the sub program 7 is a sub routine, and the parameters 8 are substitution candidates to a variable 75 in the sub program 7” in ¶57) defining a processing procedure indicating robot movement (as per “The point kind information is a so-called function identifier, and identifies an instruction sequence that defines work details to a point, and a moving method thereto” in ¶4, as per “The moving-method instruction sequence 72 is a bundle of statements to control a moving method to the point” in ¶68), the processing procedure comprising an undefined portion; (as per “However, a value to be substituted in a variable 75 of the sub program 7 varies depending on the points P1, P2, and P3” in ¶60, as per “Plural kinds of candidates that are the point-unique parameter 81, the program-unique parameter 82, and the common parameter 83 are stored in the memory 33 in advance, and the memory area of the parameter 8 for the variable 75 is selectively changed” in ¶96)
identifying compensation information (as per “When defined in the point statement 61, the parameter number 65 identifies a substitution value in the variable 75 declared in the sub program 7” in ¶65) to be transferred as an execution argument (as per “the parameter number 65 identifies a move-down amount of the work tool 4 at the time of screw fastening operation” in ¶65, as per “After completion of the substitution in the variable 75, the controller 3 calls out (step S06) the sub program 7 identified by the same point identification information 71 as the point kind information 63 arranged in the N-th point statement 61, and executes (step S07) this sub program 7” in ¶74) when the at least one library is invoked, the compensation information enabling compensation of the undefined portion as needed to complete the processing procedure; (as per “The parameter 8 to be substituted in the single kind of variable 75 is determined for each point statement 61, and one of the memory areas where the parameter 8 is stored is interlinked again with the variable 75 for each point statement 61 in accordance with the determination result” in ¶101, as per “Next, the controller 3 moves down the work tool 4 by an amount indicated by the value of the variable 75 of ScrewL which is 3 mm in response to a downZ instruction while actuating the work tool 4” in ¶84)
In this way, Hiruma enables a robot to execute work at a plurality of points using an instruction sequence by selectively substituting different parameter candidates into a variable within a second program identified by information (¶4-¶6, ¶18, ¶65). Like Noda and Chen, Hiruma is concerned with robot control programs/procedures that are selected and executed to perform work.
It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the system(s) of Noda and Chen with Hiruma’s parameter-substitution to provide another standard means of completing a reusable library procedure that contains an undefined portion using compensation/parameter information supplied for the particular work, thereby reducing the need to create multiple near-identical instruction sequences (¶7-¶10, ¶37, ¶102-¶103).
As per Claim 2, the combination of Noda, Chen, and Hiruma teaches or suggests all limitations of Claim 1. Noda further discloses:
wherein the control unit is configured to acquire task information generated based on the input information, the task information comprising information identifying a first robot that is to execute the work, (as per "The product design data and production facility data 1 are input to the action planning section 4A for temporary halts in a first phase. As a result, a product production task is decomposed into a sequence of smaller tasks, and each of these tasks are assigned to each of the facilities in the cell, and a task order is generated…" in ¶396-¶397, as per “The action planning section 4 for temporary halts produces a work sequence diagram including an error recovery sequence and a work path including approximate coordinates based on the part connection information, the geometric shape data, and the facility layout data out of the product design data and production facility data 1, and the stored information of the respective libraries 8 to 10, and inputs the work sequence diagram including the error recovery sequence and the work path including the approximate coordinates to the section 6 for teaching task” in ¶53)
control the first robot by outputting a command for the work to the at least one robot controller configured to control the first robot based on the job information and the task information. (as per “above-mentioned operation is repeated for all the work paths, and data including “work sequence diagram including error recovery sequences+work paths including approximate coordinates” is obtained as the output information from the action planning section 4A for temporary halts up to this phase." in ¶407)
As per Claim 3, the combination of Noda, Chen, and Hiruma teaches or suggests all limitations of Claim 2. Noda further discloses wherein the task information comprises information identifying at least one of a start condition and an end condition based on which the first robot is to execute a work content identified from the job information. (as per "the respective tasks and the task order are determined, and a “work sequence diagram including an error recovery sequence” including a check point for examining a temporary halt during the task, a recovery point at which the task can be resumed when the check point is not passed, a recovery path for returning to the recovery point… a synchronization point at which other robots and devices are caused to wait is generated in the action planning section 4 for temporary halts." in ¶69, as per "(3) An examination is carried out at a check point, and the sequence returns to (1) if no abnormality is found. (4) If the examination is not successful at the check point, a recovery operation is carried out. (5) The robot returns from an arbitrary position between check points to a recovery point following a recovery path given in advance in the recovery operation, and returns from that point to (1), thereby resuming the operation in a normal mode." in ¶106-¶107)
As per Claim 6, the combination of Noda, Chen, and Hiruma teaches or suggests all limitations of Claim 1. Noda further discloses wherein the job information further comprises information related to subsequent work occurring based on a result of work previously executed by the at least one robot. (as per "namely task operations which have been obtained as knowledge from results of teaching and execution of past robot tasks are used for generating work path candidates in the action planning section 4 for temporary halts." in ¶75, "the most preferable trial to be tried next time is optimized by using data of results of past trials when a search trial is repeated one after another." in ¶146)
As per Claim 7, the combination of Noda, Chen, and Hiruma teaches or suggests all limitations of Claim 1. Noda further discloses wherein the job information comprises compensation information configured to compensate for the undefined portion, the compensation information comprises information related to a target object for the work. (as per "the finger-eye-camera measurement section 32 can measure the gripping position and attitude of a part while the part is gripped, and a correction of errors in position and attitude which are generated when the part is gripped, and a precise positioning by re-gripping can thus be enabled, thereby restraining a temporary halt caused by a displacement." in ¶104, "including a gripping strategy obtained from a structure of a hand optimized based on an attitude for gripping a part (hand library 8), specific tasks such as the peg-in-hole" in ¶75)
As per Claim 8, the combination of Noda, Chen, and Hiruma teaches or suggests all limitations of Claim 1. Noda further discloses wherein the job information comprises compensation information configured to compensate for the undefined portion, and the compensation information comprises information related to a work environment where the work is executed. (as per "if there are a part placement location and a work bench in a production cell, and a work path of a specific trajectory for transporting a part is considered for a task for transporting the part from the part placement location to the work bench, a robot may interfere with surrounding objects, and it is eventually necessary to set precise values to instances of each of the work paths. Each of the work paths is generated at a precision of approximately 5 cm on this occasion, and a reference attitude for gripping an object (relative attitude between the part and the hand) is determined in the section 6 for teaching task on a later stage by an operator using teaching task input means." in ¶78-¶79, as per “Action generation is carried out always based on a relative relationship between an intended object of task and a surrounding environment in the teaching task for a robot.” in ¶129)
As per Claim 9, the combination of Noda, Chen, and Hiruma teaches or suggests all limitations of Claim 1. Noda further discloses wherein the job information comprises compensation information configured to compensate for the undefined portion, and the control unit acquires information in the compensation information, (as per “an error state is recognized from various types of sensor information (robot position, time limit, joint torques, force sensor, and image sensor), and action control is carried out according to a degree of error seriousness” in ¶349) the information being configured to designate an auxiliary library indicating auxiliary movement of the at least one robot. (as per “the operation mastering section 7 generate robot programs for the robot system 3 in relation to the respective pieces of design data 1, the specific task specifications 2, the respective libraries 8 to 10, the optimum-task-operation generating section 11, and the error-recovery-task teaching section 12." in ¶97, “including an error recovery sequence and a work path including approximate coordinates based on the part connection information, the geometric shape data, and the facility layout data out of the product design data and production facility data 1, and the stored information of the respective libraries 8 to 10,” in ¶53, as per Fig. 28)
As per Claim 12, the combination of Noda, Chen, and Hiruma teaches or suggests all limitations of Claim 2. Noda further discloses wherein the interface is configured to acquire, from the robot controller, feedback information related to a result of the work executed by the first robot based on the task information, (as per "and the operation monitoring information from the robot system 3 (finger-eye-camera measurement section 32 and the three-dimensional recognition section 33)" in ¶57, as per "Specifically, the input information includes a camera image, near distance data, reference model data, end point model data, and calibration data (internal, external), and the output information includes target deviation data." in ¶266) the control unit is configured to update the task information based on the feedback information and output the updated task information to the robot controller. (as per “the error occurrence probability is updated at any time by the operation monitoring information while production is being carried out” in ¶397, as per “The operator thus learns each of the operations based on experiencing an effect of a recovery… An added new example (error state to be grouped) is caused to temporarily belong to a candidate typical class… are applied each time a new example is added to the class. Specifically, the category usefulness is calculated for each of the four operations: addition of an existing class; generation of a new class having a single example; unification of a plurality of existing classes; and decomposition of an existing class. An operation which maximizes the category usefulness is then carried out. As a result, successive optimization for grouping and identification of an error state is enabled.” in ¶225-¶234)
As per Claim 14, Noda discloses of an industrial robot system (as per Abstract), comprising:
a user interface configured to receive input information related to work; (as per “A user interface based on the ecological interface theory displayed on a personal computer for the teaching task or a teaching pendant presents important operation points and task states on this occasion, and the operator carries out the refining task for the position/attitude, and adds work paths according to necessity on the teaching task input means while observing the presented states.” in ¶83)
a communication interface connected communicatively to a system control device configured to output information to at least one robot controller, (as per “and also generates a refined work path (robot program before mastering) for input to the operation mastering section 7 and the controller 30.” in ¶57)
the at least one robot controller being configured to control at least one robot based on at least one library (as per "the industrial robot system includes, as components relating to the production design data and production facility data 1, the specific task specification 2, and the robot system 3, an action planning section 4 for temporary halts, an error-inducing-task restraining section 5, a section 6 for teaching task, an operation mastering section 7, a hand library 8, a specific task library 9, an error recovery library 10, an optimum-task-operation generating section 11, an error-recovery-task teaching section 12, a controller 30, a manipulator 31, … and a manipulation device group 34." in ¶47)
wherein the terminal control unit controls the at least one robot to execute the work using the job information. (as per "The controller 30 provides control for driving the manipulator 31 and the manipulation device group 34 based on the respective robot programs before and after the mastering, and the operation monitoring information from the finger-eye-camera measurement section 32 and the three-dimensional recognition section 33." in ¶59)
Noda fails to expressly disclose:
at least one library comprising a program for defining a series of movements of the at least one robot, the program comprising an undefined portion in which movement of the at least one robot is not defined;
a terminal control unit configured to acquire job information generated based on the input information, the job information being configured to identify the at least one library selected in accordance with the work to be executed by the at least one robot and identifying compensation information enabling compensation of the undefined portion as needed to complete the series of movements of the at least one robot,
Chen discloses of a motion control error compensation system, comprising:
a terminal control unit configured to acquire job information generated based on the input information (as per “The processing task client is the entrance to human-computer interaction on the edge side, used to select the motion control algorithm according to the processing task and initiate the task processing operation;” in ¶17, as per “terminal robotic arm control unit is used to obtain real-time processing data and send it to the edge server; it is also used to send the control instructions with error compensation effect to the robotic arm” in ¶10), the job information being configured to identify the at least one library selected in accordance with the work to be executed by the at least one robot (as per “The motion control algorithm library is used to store motion control algorithms deployed on the edge side and select corresponding motion control algorithms according to different processing tasks” in ¶23, as per “The error compensation algorithm library is used to store error compensation algorithms deployed on the edge side, receive and store error compensation algorithms issued from the central server platform, and provide corresponding error compensation algorithms for processing tasks;” in ¶22)
In this way, Chen operates to improve the processing accuracy of the robotic arm(s) (¶4). Like Noda, Chen is concerned with error compensation.
It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the system of Noda with the teachings of Chen to enable another standard means of using a identifying a library in accordance with the work to be completed by the robot (¶23).
at least one library comprising a program for defining a series of movements of the at least one robot, the program comprising an undefined portion in which movement of the at least one robot is not defined;
identifying compensation information enabling compensation of the undefined portion as needed to complete the series of movements of the at least one robot,
Hiruma discloses of a robot capable of substituting a plurality of parameter candidates, comprising:
at least one library comprising a program for defining a series of movements of the at least one robot, (as per “A computer that executes a program controls the moving unit and the work tool” in ¶3, as per “The storage 32 stores programs, such as main programs 6, a subprogram 7, and parameters 8. The main program 6 is a main routine, the sub program 7 is a sub routine, and the parameters 8 are substitution candidates to a variable 75 in the sub program 7” in ¶57) the program comprising an undefined portion in which movement of the at least one robot is not defined; (as per “a variable may be declared every time the point statement is declared, and an appropriate parameter may be substituted in this variable. According to this scheme, however, it is a time-consuming work to initialize the variable every time the point statement is executed” in ¶6, as per “However, a value to be substituted in a variable 75 of the sub program 7 varies depending on the points P1, P2, and P3” in ¶60)
identifying compensation information enabling compensation of the undefined portion as needed to complete the series of movements of the at least one robot, (as per “When defined in the point statement 61, the parameter number 65 identifies a substitution value in the variable 75 declared in the sub program 7. For example, the parameter number 65 identifies a move-down amount of the work tool 4 at the time of screw fastening operation” in ¶65, as per “The parameter 8 to be substituted in the single kind of variable 75 is determined for each point statement 61, and one of the memory areas where the parameter 8 is stored is interlinked again with the variable 75 for each point statement 61 in accordance with the determination result” in ¶101, as per “After the fastening of the first screw completes, the controller 3 moves the work tool 4 by PTP movement to a position (X, Y, Z) =(X2, Y2, Z2+5) so as to match the value that is the height of 5 mm indicated by the variable 75 of ScrewL in response to a Move instruction. Next, the controller 3 moves down the work tool 4 by an amount indicated by the value of the variable 75 of ScrewL which is 5 mm in response to a downZ instruction while actuating the work tool 4” in ¶89)
In this way, Hiruma enables a robot to execute work at a plurality of points using an instruction sequence by selectively substituting different parameter candidates into a variable within a second program identified by information (¶4-¶6, ¶18, ¶65). Like Noda and Chen, Hiruma is concerned with robot control programs/procedures that are selected and executed to perform work.
It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the system(s) of Noda and Chen with Hiruma’s parameter-substitution to provide another standard means of completing a reusable library procedure that contains an undefined portion using compensation/parameter information supplied for the particular work, thereby reducing the need to create multiple near-identical instruction sequences (¶7-¶10, ¶37, ¶102-¶103).
As per Claim 16, Noda discloses of an industrial robot system (as per Abstract), comprising:
acquiring input information related to work; (as per “the input information includes the start point coordinate and the end point coordinate of a work path, and the range and resolution of the coordinates of the plurality of via points, task environment information, and robot information.” in ¶160)
controlling the robot to execute the work based on the job information. (as per “the output information includes the start point coordinate and the end point coordinate of the work path, the coordinates of the plurality of via points, a trajectory through the start point, the endpoint, and the plurality of the via coordinate points, and acceleration/deceleration instructions.” in ¶161)
Noda fails to expressly disclose:
generating job information based on the input information, the job information comprising an identifier for identifying at least one library selected in accordance with the work to be executed by at least one robot,
the at least one library comprising a program for defining a series of movements of the at least one robot, the program comprising an undefined portion in which movement of the at least one robot is not defined, and an execution argument to be transferred to the at least one library when the work is executed, the execution argument including compensation information enabling compensation of the undefined portion as needed to complete the series of movements of the at least one robot;
Chen discloses of a motion control error compensation system, comprising:
generating job information based on the input information (as per “The processing task client is the entrance to human-computer interaction on the edge side, used to select the motion control algorithm according to the processing task and initiate the task processing operation;” in ¶17, as per “terminal robotic arm control unit is used to obtain real-time processing data and send it to the edge server; it is also used to send the control instructions with error compensation effect to the robotic arm” in ¶10)
In this way, Chen operates to improve the processing accuracy of the robotic arm(s) (¶4). Like Noda, Chen is concerned with error compensation.
It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the system of Noda with the teachings of Chen to enable another standard means of using a identifying a library in accordance with the work to be completed by the robot (¶23).
Noda and Chen fail to expressly disclose:
the job information comprising an identifier for identifying at least one library selected in accordance with the work to be executed by at least one robot,
the at least one library comprising a program for defining a series of movements of the at least one robot, the program comprising an undefined portion in which movement of the at least one robot is not defined, and an execution argument to be transferred to the at least one library when the work is executed, the execution argument including compensation information enabling compensation of the undefined portion as needed to complete the series of movements of the at least one robot;
Hiruma discloses of a robot capable of substituting a plurality of parameter candidates, comprising:
the job information (as per “The main program 6 has point statements 61 for respective points P1 to P3 arranged in sequence. The point statement 61 indicates the position of the point, and the control details” in ¶63) comprising an identifier for identifying at least one library selected in accordance with the work to be executed by at least one robot, (as per “The point kind information 63 is a so-called function identifier that indicates the sub program 7 which defines the control details to the point” in ¶65, as per “After completion of the substitution in the variable 75, the controller 3 calls out (step S06) the sub program 7 identified by the same point identification information 71 as the point kind information 63 arranged in the N-th point statement 61, and executes (step S07) this sub program 7” in ¶74)
the at least one library comprising a program for defining a series of movements of the at least one robot (as per “The sub program 7 is identified by the point kind information 71 that is a so-called function identifier. In the sub program 7, a moving-method instruction sequence 72, a pre-movement work instruction sequence 73, and a post-movement work instruction sequence 74” in ¶68),
the program comprising an undefined portion in which movement of the at least one robot is not defined, (as per “a variable may be declared every time the point statement is declared, and an appropriate parameter may be substituted in this variable” in ¶6, as per “An external function of “PTPpoint” contains the variable 75 for “ScrewL” which is “Move X Y Z+ScrewL”. In addition, one of the blocks of instruction sequences is the post-movement work instruction sequence 74, and the post-movement work instruction sequence 74 is described with a set of function identifier “downZ” and the variable 75 that is “ScrewL”” in ¶83)
an execution argument to be transferred to the at least one library when the work is executed, (as per “When the point statement 61 is associated with the parameter number 65 (step S01: YES), the point-unique parameter 81 identified by the parameter number 65 is substituted (step S02) in the variable 75” in ¶71, as per “After completion of the substitution in the variable 75, the controller 3 calls out (step S06) the sub program 7 identified by the same point identification information 71 as the point kind information 63 arranged in the N-th point statement 61, and executes (step S07) this sub program 7” in ¶74)
the execution argument including compensation information enabling compensation of the undefined portion (as per “When the flag 84 has a value that is 1, i.e., is the value indicating that the program-unique parameter 82 is to be applied (step S03: YES), the controller 3 substitutes (step S04) the program-unique parameter 82 in the variable 75” in ¶72) as needed to complete the series of movements of the at least one robot; (as per “the controller 3 executes an initialization of substituting the value identified by “parameter number 2” that is 5 mm in the variable 75 that is “ScrewL” declared as the screw length” in ¶87, as per “The controller 3 positions the work tool 4 apart from the point P2 by a height that is 5 mm, and moves down the work tool 4 by the height that is 5 mm. The controller 3 positions the work tool 4 apart from the point P3 by a height that is 10 or 8 mm, and moves down the work tool 4 by the height that is 10 or 8 mm” in ¶61)
In this way, Hiruma enables a robot to execute work at a plurality of points using an instruction sequence by selectively substituting different parameter candidates into a variable within a second program identified by information (¶4-¶6, ¶18, ¶65). Like Noda and Chen, Hiruma is concerned with robot control programs/procedures that are selected and executed to perform work.
It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the system(s) of Noda and Chen with Hiruma’s parameter-substitution to provide another standard means of completing a reusable library procedure that contains an undefined portion using compensation/parameter information supplied for the particular work, thereby reducing the need to create multiple near-identical instruction sequences (¶7-¶10, ¶37, ¶102-¶103).
As per Claim 17, the combination of Noda, Chen, and Hiruma teaches or suggests all limitations of Claim 1. Noda further discloses wherein the control unit is configured to control the robot by outputting a command for the work to the at least one robot controller configured to control the at least one robot. (as per “, and also generates a refined work path (robot program before mastering) for input to the operation mastering section 7 and the controller 30” in ¶57, as per “The operation mastering section 7 generates an optimized work path (robot program after the mastering) based on the work path from the section 6 for teaching task and the operation monitoring information from the robot system 3, and inputs the optimized work path to the controller 30” in ¶58)
Claim(s) 4, 5, and 10 are rejected under 35 U.S.C. 103 as being unpatentable over Noda (US Pub. No. 20110288667) in view of Chen (CN Pub. No. 111596614) in view of Hiruma (US Pub. No. 20160361817) in further view of Dai (US Pub. No. 20180207802).
As per Claim 4, the combination of Noda, Chen, and Hiruma teaches or suggests all limitations of Claim 3. Noda further discloses wherein the control unit is configured to at least store the job information associated with the task information. (as per "operation is repeated for all the work paths, and data including “work sequence diagram including error recovery sequences+work paths including approximate coordinates” is obtained as the output information from the action planning section 4 for temporary halts up to this phase." in ¶80, as per "the input information includes a work sequence diagram illustrating work sequences, the work sequence diagram including error recovery sequences, information such as basic design specifications of the facilities and the robots, and the teaching data by the operator." in ¶207)
Noda and Chen fail to expressly disclose wherein the control unit is configured to output a command to the at least one robot controller to cause the first robot to execute the work repeatedly.
Dai discloses of a robot control system (as per Abstract), wherein the control unit is configured to output a command to the at least one robot controller to cause the first robot to execute the work repeatedly. (as per "The single-type task execution program 142 proceeds with the single-type task by stages in units of actions by causing the CPU 11 to mainly execute the following processing in a loop." in ¶68, as per "If the executed action is not the last action, the single-type task execution program 142 migrates to Step S14209. In Step S14209, the single-type task execution program 142 refers to the trigger action configuration table 134 and updates the current row of the executing task state table 144 with use of information corresponding to the next action 13404 of the executed action." in ¶160)
In this way, the system operates provide services to people (¶1). Like Noda, Chen, and Hiruma, Dai is concerned with robot control systems.
It would have been obvious for one of ordinary skill in the art before the effective filing date to have
modified the system(s) of Noda, Chen, and Hiruma with the robot control system as taught by Dai to enable another standard means of operating said robot. Such modification also allows the system to repeatedly perform a job without intervention from the operator/user (¶160).
As per Claim 5, the combination of Noda, Chen, and Hiruma teaches or suggests all limitations of Claim 1. Noda and Chen fail to expressly disclose wherein the control unit is configured to output data of a new library to the at least one robot controller, and the at least one robot controller is configured to install the new library.
Dai discloses of a robot control system (as per Abstract), wherein the control unit is configured to output data of a new library to the at least one robot controller, and the at least one robot controller is configured to install the new library. (as per "Then, the manager adds a table file defining the single form ts individually corresponding to the task t to be executed to the trigger action configuration table 134 of the storage apparatus 13 of the single-type task management server STS. When the table file is added to the trigger action configuration table 134, the manager then adds one new row to the task library table 131 in the storage apparatus 13 and writes the universal task number 13101, the task name 13102, the response capability requirement 13103, the other task parallel executability 13104, and the trigger action configuration table location 13105 of the task t in that row." in ¶127, as per "When the system does not include the trigger action configuration table 134 corresponding to the single form ts or the coordination-type trigger action configuration table 234 corresponding to the coordination form tm for the task t to be executed, the trigger action configuration table 134 or the coordination-type trigger action configuration table 234 is added" in ¶125)
In this way, the system operates provide services to people (¶1). Like Noda, Chen, and Hiruma, Dai is concerned with robot control systems.
It would have been obvious for one of ordinary skill in the art before the effective filing date to have
modified the robot system(s) of Noda, Chen, and Hiruma with the robot control system as taught by Dai to enable another standard means of operating said robot. Such modification allows the system to install new tasks when there is not a trigger action configuration table corresponding with a task, resulting in new tasks to be added. (¶125-¶127)
As per Claim 10, the combination of Noda, Chen, and Hiruma teaches or suggests all limitations of Claim 2. Noda and Chen fail to expressly disclose wherein:
the control unit is configured to output an identifier to the at least one robot controller, the identifier being configured to identify the task information,
the control unit is configured to further output the task information and the job information or a library in response to a request from the at least one robot controller,
the library being identified from the task information and the job information.
Dai discloses of a robot control system (as per Abstract), wherein:
the control unit is configured to output an identifier to the at least one robot controller, the identifier being configured to identify the task information, (as per "The universal task number M102 of the requested task is an identification number for uniquely identifying the task requested to be executed (requested task)." in ¶93)
the control unit is configured to further output the task information and the job information or a library in response to a request from the at least one robot controller, (as per "The task initial processing request message M1 stores therein a message identifier M101, the universal task number M102 of the requested task, a robot ID M103 of a desired robot, and a request source ID M104. The requested task is a task requested in the initial processing request message M1 to be executed." in ¶67)
the library being identified from the task information and the job information. (as per "The task library table 131 stores therein a universal task number 13101, a task name 13102, a response capability requirement 13103, information indicating another task parallel executability 13104, and a trigger action configuration table location 13105 in association with each other." in ¶48)
In this way, the system operates provide services to people (¶1). Like Noda, Chen, and Hiruma, Dai is concerned with robot control systems.
It would have been obvious for one of ordinary skill in the art before the effective filing date to have
modified the robot system(s) of Noda, Chen, and Hiruma with the robot control system as taught by Dai to enable another standard means of classifying certain tasks/libraries with an identification number. (¶48, ¶67)
Claim 11 is rejected under 35 U.S.C. 103 as being unpatentable over Noda (US Pub. No. 20110288667) in view of Chen (CN Pub. No. 111596614) in view of Hiruma (US Pub. No. 20160361817) in further view of Kuffner (US Pat. No. 9840007).
As per Claim 11, the combination of Noda, Chen, and Hiruma teaches or suggests all limitations of Claim 2. Noda and Chen fail to expressly disclose:
a robot simulator configured to simulate the movement of the first robot based on the at least one library,
wherein the control unit is configured to output the task information to the robot simulator,
acquire a simulation result of the movement of the first robot based on the task information from the robot simulator,
determine whether to output the task information to the at least one robot controller based on the simulation result.
Kuffner discloses of robotic operation libraries (as per Abstract), comprising:
a robot simulator configured to simulate the movement of the first robot based on the at least one library, (as per "the library computing system may use one or more simulators to simulate possible actions that a robotic device may perform." in C5L20-25, "the library computing system may use a simulator to simulate possible operations based on a received query." in C7L10-20)
wherein the control unit is configured to output the task information to the robot simulator, (as per "The simulator 210 may analyze information provided by the robotic device to configure one or more simulations to fulfill the request for the robotic device." in C11L20-25)
acquire a simulation result of the movement of the first robot based on the task information from the robot simulator, (as per "the library computing system may assess possible operations for the robotic device to use to complete the task without requiring the actual robotic device to perform any simulations or physical operations. The library computing system may store the newly developed instructions for later use by the same or other robotic devices with similar configurations." in C23L30-40)
determine whether to output the task information to the at least one robot controller based on the simulation result. (as per "The library computing system may select the set of instructions with the highest rate of success, for example, or may select the set of instructions that originates from simulations using a virtual robotic device and virtual environment that most closely matches the actual configuration and environment of the robotic device." in C23L15-25, as per "The library computing system may store the newly developed instructions for later use by the same or other robotic devices with similar configurations." in C23L35-40)
In this way, the system operates use simulation to improve the accuracy of the simulations (C6L25-35), as well as use information from the library to improve behavior selection and discovery. (C24L50-60) Like Noda, Chen, and Hiruma, Kuffner is concerned with robot control systems.
It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the robot system(s) of Noda, Chen, and Hiruma with the robotic operation libraries as taught by Kuffner to enable another standard means of simulating virtual robotic devices to test possible operation in adjustable virtual environments. (C23L15-40)
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Wakayama (US Pub. No. 20240165817) discloses a robot management device, control method, and recording medium.
Hasunuma (US Pub. No. 20240051134) discloses a controller, robot system and learning device.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to TYLER R ROBARGE whose telephone number is (703)756-5872. The examiner can normally be reached Monday - Friday, 8:00 am - 5:00 pm EST.
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, Ramón Mercado can be reached at (571) 270-5744. 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.
/T.R.R./Examiner, Art Unit 3658
/Ramon A. Mercado/Supervisory Patent Examiner, Art Unit 3658