DETAILED ACTION
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 .
Remarks
The claims being considered in this application are those submitted on 10/31/2025. Claims 1-32 are pending.
Priority
The applicant’s claim to priority of DKPA202330009 on 05/02/2023 is acknowledged.
Information Disclosure Statement
The information disclosure statement filed on 10/31/2025 has been annotated and considered.
Claim Objections
Claim 8 and 10 are objected to as each appear to be missing words/have typographical errors. For example, Claim 8 recites: “…identify at least one robot task based on said based said at least one…”. Claim 10 recites similar language. Claim 10 also recites “said a parameter evaluation module” which should read “said parameter evaluation module”.
Claim 19 is objected to because of the following informalities: Claim 19 recites “one or ore steps”. This should read “one or more steps”.
Claim 28 is objected to and recites “program coded” which is believed to be a typo for “program code”, in addition to the repeated/redundant language that is believed to be unintentional (See below).
Claim 29 is objected to and recites “…where said sat at least one…”. “sat” is believed to be a typo. Appropriate correction is required.
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.
Claim 8, 10, and 28 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.
Claim 8 recites “…said at least one assisting parameter…” which lacks antecedent basis from parent Claim 6. It appears Claim 8 may be intended to depend from Claim 7 which introduces the “at least one assisting parameter”
Claim 10 recites “…said at least one assisting setting parameter…” which lacks antecedent basis from parent Claim 6. It appears Claim 10 may be intended to depend from Claim 9 which introduces the “at least one assisting setting parameter”
Claim 28 recites “…generating robot program coded and adding said generated robot program coded to robot program coded to robot program code defining said robot program.” Which is unclear as it appears to have unintentional redundant language.
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.
Claims 1-32 are rejected under 35 U.S.C. 103 as being unpatentable over Shmirgel et. al. (US 20120317535 A1, IDS) in view of Ghazaei Ardakani et. al (US 20190358817 A1).
Regarding Claim 1, Shmirgel discloses:
A robot system comprising at least one robotic arm controlled by a robot controller according to a robot program, (See at least ¶0001 via "The present invention relates to a process module library and a graphical programming environment for programming a manipulator process" and abstract via "…manipulator can be controlled by means of a functional module of a graphic programming environment…")
where the robot program specifies a number of robot tasks and an order of execution of robot tasks, (See at least ¶0008 which describes various manipulator processes, and ¶0011 which describes sub-processes)
said robot system comprises a user interface device enabling a user to communicate with said robot system, wherein said robot controller is configured for performing: (See at least ¶0051-¶0052 via "a function module is disposed as a graphic representation in the form of an icon on a display interface…" and "Preferably, a function module can be manipulated by means of touching a display interface, in particular a touchscreen, such that by means of clicking, drag & drop, etc…")
an assisting process which (See at least ¶0045 via "…the user commands actions of the manipulator(s)… a parameterization of a process module to be carried out thereby, which activates a corresponding function module, and to input or modify parameters by means of said function module." **Wherein the user activates the function module, which corresponds to the assisting function. Also see ¶0109 via "…a robot gripper can be opened or closed by means of a function module…" )
wherein the robot controller comprises: a robot task generator configured to generate at least one robot task based on said at least one executed assisting function and at least one of said (See at least ¶0045 via "a graphic function module therefore serves for the programming, in particular the creation of a work program, as well as the, preferably simultaneous or parallel control of one or more manipulators and/or sub-processes…parameters can also be detected, and the process module can be automatically parameterized accordingly…a robot gripper can be closed by means of a function module of a robot gripper, a closing force can be detected…" **Wherein under BRI, Shmirgel's process module is interpreted as corresponding to robot task(s) based on detected parameter(s) and an executed function module).
However, although Shmirgel discloses the parameters being detected, Shmirgel does not explicitly disclose the recording process.
Nevertheless, Ghazaei Ardakani--who is directed towards a system and method for instructing a robot--discloses: a recording process which can be activated by a user via said user interface device and said robot controller is during said recording process configured to record at least one operation parameter of said robot system; (See at least ¶0016 via "The system is further configured to record resulting movement of a frame related to the slave robot arm, and to record resulting/applied force to the workpiece in the same frame." and ¶0043 via "the method comprises recording the determined joint movement command and the slave external force data… determining a robot program or robot instruction based on the recorded resulting movement expressed in the frame related to the slave robot arm, and based on the recorded resulting/applied force to the workpiece in the same frame" as well as ¶0079 via "The system 1 may be provided with a user interface connected to the control unit 5 and arranged to change mode of the control unit 5…in the “recording mode” records the resulting trajectories and forces.").
Therefore, it would have been obvious to one of ordinary skill in the art prior to the effective filing date of the given invention to modify Shmirgel in view of the recording process such as in Ghazaei Ardakani in order to incorporate a process that allows data to be collected to use in the subsequent creation/modification of the program: "While the operator is instructing the slave robot arm…data is preferably collected such that a program subsequently can be determined, the program being such that the slave robot arm can execute it in order to independently perform the task" [Ghazaei Ardakani ¶0128], as well as to enable efficient teaching for the robot: "enable a practical and efficient teaching of robot motions that are to exhibit a well-defined force interaction with workpieces" [Ghazaei Ardakani ¶0014].
Regarding Claim 2, Modified Shmirgel discloses the robot system according to Claim 1.
Furthermore, Shmirgel discloses: wherein said user interface allows said user to define at least a part of said robot program by specifying at least one of said robot tasks and said order of execution of said robot tasks (See at least ¶0050 via "simple manipulator processes created from basic commands, such as with the assembly along a straight path described above, for retaining and assembly poses, is now intuitive and can be programmed by a user without expert knowledge." and ¶0052 via "a user can select a function module from a function module library in which available function modules are displayed by means of touching an icon, drag said function module to a functioning or programming field, anchor said function module there by letting go". Additionally see ¶0053 via "a linking of two function modules can be automatically obtained in that, in the manipulator process, first the upper, or left function module is executed, and after it has been executed, the lower, or right function module is executed" and ¶0048 via "directly during the programming, such that even a user with little instruction can create a program, in that he successively selects the next function module based on a respective initiated pose or a completed action").
Regarding Claim 3, Modified Shmirgel discloses the robot system according to Claim 1.
Furthermore, Shmirgel discloses: wherein said assisting process is configured to execute robot program code causing said robot system to perform said robot system action (See at least ¶0110 via "If, for example, the user wants to open the robot gripper during the programming, in order to check its maximum range, he can simply drag a function module such as "gripper" into the work area 101, open the input window there by tapping, and by activating the control input button "1. Open," open the gripper directly, i.e. control the robot.").
Regarding Claim 4, Modified Shmirgel discloses the robot system according to Claim 1.
Furthermore, Shmirgel discloses: wherein said assisting function is configured to change at least one operational parameter of said robot system (See at least ¶0045 via "it is also possible, advantageously, for a parameterization of a process module to be carried out thereby, which activates a corresponding function module, and to input or modify parameters by means of said function module").
Regarding Claim 5, Modified Shmirgel discloses the robot system according to Claim 1.
Furthermore, Shmirgel discloses: wherein said assisting process is configured to instruct said (See at least ¶0045 via "For example, a robot gripper can be closed by means of a function module of a robot gripper, a closing force can be detected thereby through measuring said force exerted by the robot, and said force can automatically be acquired as a parameter in a process module, as a target or maximal value" **Wherein the force is being acquired/recorded as a parameter from the robot).
However, Shmirgel does not explicitly disclose the recording process.
Nevertheless, Ghazaei Ardakani discloses: said recording process (See at least ¶0016 via "The system is further configured to record resulting movement of a frame related to the slave robot arm, and to record resulting/applied force to the workpiece in the same frame." and ¶0043 via "the method comprises recording the determined joint movement command and the slave external force data… determining a robot program or robot instruction based on the recorded resulting movement expressed in the frame related to the slave robot arm, and based on the recorded resulting/applied force to the workpiece in the same frame").
Therefore, it would have been obvious to one of ordinary skill in the art prior to the effective filing date of the given invention to modify Shmirgel in view of the recording process such as in Ghazaei Ardakani in order to incorporate a process that allows data to be collected to use in the subsequent creation/modification of the program: "While the operator is instructing the slave robot arm…data is preferably collected such that a program subsequently can be determined, the program being such that the slave robot arm can execute it in order to independently perform the task" [Ghazaei Ardakani ¶0128], as well as to enable efficient teaching for the robot: "enable a practical and efficient teaching of robot motions that are to exhibit a well-defined force interaction with workpieces" [Ghazaei Ardakani ¶0014].
Regarding Claim 6, Modified Shmirgel discloses the robot system according to Claim 1.
Furthermore, Shmirgel discloses: wherein said robot task generator comprises a parameter evaluation module configured to identify at least one robot task based on said on at least one executed assisting function and at least one of said (See at least ¶0045 via " a robot gripper can be closed by means of a function module of a robot gripper, a closing force can be detected…" and ¶0041 via "the necessary process modules are then automatically selected and (sub-) parameterized by means of a program" and ¶0016 via "at least one parameter of a process module defines a type of the sub-process carried out via said process module…By specifying a parameter that defines whether a search is made with a projection guided by the manipulator, or a recess guided by the manipulator, and one other parameter, which defines the type of searching path, the types "searching with a projection guided by a manipulator along a straight path," "searching with a projection guided by a manipulator along a zigzag path," "searching with a recess guided by a manipulator along a straight path," etc. can be programed with the same process module "pose search." **Wherein under BRI, the parameter is being evaluated to determine the type of sub process, and wherein the operation parameter is the (force) measured from the robot).
Regarding Claim 7, Modified Shmirgel discloses the robot system according to Claim 1.
Furthermore, Shmirgel discloses: wherein said assisting process is configured to generate at least one assisting parameter relating to said assisting function (See at least ¶0045 via " a robot gripper can be closed by means of a function module of a robot gripper, a closing force can be detected thereby through measuring said force exerted by the robot, and said force can automatically be acquired as a parameter in a process module" **Wherein the assisting parameter corresponds to the parameter (force) detected during the execution of the function and is acquired as a parameter associated with the function..).
Regarding Claim 8, Modified Shmirgel discloses the robot system according to Claim 6.
Furthermore, Shmirgel discloses: wherein said parameter evaluation module is configured to identify at least one robot task based on said based said at least one assisting parameter (See at least ¶0016 via "at least one parameter of a process module defines a type of the sub-process carried out via said process module…By specifying a parameter that defines whether a search is made with a projection guided by the manipulator, or a recess guided by the manipulator, and one other parameter, which defines the type of searching path, the types "searching with a projection guided by a manipulator along a straight path," "searching with a projection guided by a manipulator along a zigzag path," "searching with a recess guided by a manipulator along a straight path," etc. can be programed with the same process module "pose search.". Also see ¶0045 and ¶0068-¶0069).
However, although Shmirgel discloses identifying the process/sub-process (corresponding to robot task under BRI), Shmirgel does not explicitly disclose this being based off both the assisting parameter and the operation parameter. Nevertheless, Shmirgel discloses using multiple parameters to define different aspects of a robotic process (task). Thus, it would have been obvious to one of ordinary skill in the art prior to the effective filing date of the given invention to utilize the parameters to identify/define the robotic process/task.
Regarding Claim 9, Modified Shmirgel discloses the robot system according to Claim 1.
Furthermore, Shmirgel discloses: wherein said assisting function is associated with at least one assisting setting parameter, where said assisting setting parameter indicates at least one parameter influencing the execution of said robot system action (See at least ¶0068 via "…Parameter p2 defines the shape of the search path, e.g. in the form of a straight, zigzag, spiral, sinusoidal, or Lissajous path. Parameter p3 defines a contact force or a tracking error at the end point of the virtual spring, which, when reached, completes the search…" **Wherein the multiple parameters define different aspects of the robot process/task, which influence the execution).
Regarding Claim 10, Modified Shmirgel discloses the robot system according to Claim 6.
Furthermore, Shmirgel discloses: wherein said a parameter evaluation module is configured to identify at least one robot task based on said based said at least one assisting setting parameter (See at least ¶0016 via "at least one parameter of a process module defines a type of the sub-process carried out via said process module…By specifying a parameter that defines whether a search is made with a projection guided by the manipulator, or a recess guided by the manipulator, and one other parameter, which defines the type of searching path, the types "searching with a projection guided by a manipulator along a straight path," "searching with a projection guided by a manipulator along a zigzag path," "searching with a recess guided by a manipulator along a straight path," etc. can be programed with the same process module "pose search.". Also see ¶0045 and ¶0068-¶0069).
However, although Shmirgel discloses identifying the process/sub-process (corresponding to robot task under BRI), Shmirgel does not explicitly disclose this being based off both the assisting setting parameter and the operation parameter. Nevertheless, Shmirgel discloses using multiple parameters to define different aspects of a robotic process (task). Thus, it would have been obvious to one of ordinary skill in the art prior to the effective filing date of the given invention to utilize the parameters to identify/define the robotic process/task.
Regarding Claim 11, Modified Shmirgel discloses the robot system according to Claim 1.
Furthermore, Shmirgel discloses: wherein said robot task generator comprises a robot task parameter setting module configured to set at least one parameter of said generated robot task (See at least ¶0041 via "A parameterization can result preferably from a corresponding input, use of default values, and/or value acquisition from other applications, for example a data set for a manipulator model, of regulation parameters and/or process parameters, in particular tool and/or workpiece parameters. A portion of the parameters can be generated or acquired, in particularly automatically, for example on the basis of the kinematics, the processes, the tool, and/or the workpiece, and from tolerances, material, shape, etc." and ¶0045 via "In particular in connection with the previously explained process module library aspect, it is also possible, advantageously, for a parameterization of a process module to be carried out thereby, which activates a corresponding function module, and to input or modify parameters by means of said function module. In doing so, parameters can also be detected, and the process module can be automatically parameterized accordingly").
Regarding Claim 12, Modified Shmirgel discloses the robot system according to Claim 1.
Furthermore, Shmirgel discloses: wherein said robot system action comprises at least one of the following actions:
movement of at least a part of said robotic arm;
activation of at least one end effector attached to said tool flange;
setting at least one output port of said robot system;
activating of at least one peripheral device forming part of said robot system
(See at least ¶0036 via "…a basic operation comprises an automatic movement of the manipulator…" , ¶0075 via "The peg 1 is then, compliant- or force-regulated, inserted into the recess 2.1 in the assembly direction (from up to down in FIG. 2B)", and ¶0109 via "a robot gripper can be opened or closed by means of a function module "gripper," in that a corresponding icon 112 is selected from the function module library 102, moved to the work area 101").
Regarding Claim 13, Modified Shmirgel discloses the robot system according to Claim 1.
Furthermore, Shmirgel discloses: wherein said assisting function is configured to activate at least one additional assisting function, where said at least one additional assisting function activates at least one additional predefined robot system action (See at least ¶0045 via "…the user commands actions of the manipulator(s)… a parameterization of a process module to be carried out thereby, which activates a corresponding function module" and further ¶0053 via "Function modules can automatically be linked, preferably depending on their positions. As an example, a linking of two function modules can be automatically obtained in that, in the manipulator process, first the upper, or left function module is executed, and after it has been executed, the lower, or right function module is executed").
Regarding Claim 14, Modified Shmirgel discloses the robot system according to Claim 1.
Furthermore, Shmirgel discloses: wherein said assisting function is (See at least ¶0045).
However, Shmirgel does not explicitly disclose the imitation of an action.
Nevertheless, Ghazaei Ardakani discloses: wherein (See at least ¶0009 via "One common approach to robot task definition is to program a virtual robot of the same type as the physical one..." and ¶0069 via " In the case of accurate modelling of the equipment, including the robot and its end-effector, and environment including workpiece and peripherals, the robot performing the task does it virtually…" and ¶0140).
Therefore, it would have been obvious to one of ordinary skill in the art prior to the effective filing date of the given invention to modify Modified Shmirgel in view of Ghazaei Ardakani' virtual/simulation of robotic tasks in order to perform tasks, for example, when the physical set-up cannot be accessed: "The virtual simulator can also be used for programming the robot for tasks requiring force interaction when there is no access to the real setup." [Ghazaei Ardakani ¶0140], and to provide a solution to the programming without requiring " hours of engineering, comprising repeated tests on the physical system" [Ghazaei Ardakani ¶0009].
Regarding Claim 15, Modified Shmirgel discloses the robot system according to Claim 1.
Furthermore, Shmirgel discloses: wherein said robot system action comprises movement of a part of said robotic arm until at least a part of said robotic arm come in contact with an object of said robotic system (See at least ¶0066 via "If the peg 1 passes over the recess 2.1, the force F.sub.z presses it into said recess such that further movement is opposed by resistance. The regulation of the robot detects a corresponding increase in contact force along the v, axis, or respectively, a pause despite commanded further movement of the end point of the virtual spring, and thereby recognizes that the peg 1 is in the recess 2.1 that is being searched for, as a result of which, the pose of the robot that is searched for, e.g. a starting pose for a joining of the peg 1 in the recess 2.1 has been found." and the example of ¶0085 via "…upon making contact, switches to a compliant-regulation…").
Regarding Claim 16, Modified Shmirgel discloses the robot system according to Claim 15.
Furthermore, Shmirgel discloses: wherein said operation parameter indicate the pose of said robotic arm upon contact between a part of said robotic arm and said object and where said robot task generator is configured to generate said at least one robot task based on said pose of said robotic arm (See at least ¶0066 via "If the peg 1 passes over the recess 2.1, the force F.sub.z presses it into said recess such that further movement is opposed by resistance. The regulation of the robot detects a corresponding increase in contact force along the v, axis, or respectively, a pause despite commanded further movement of the end point of the virtual spring, and thereby recognizes that the peg 1 is in the recess 2.1 that is being searched for, as a result of which, the pose of the robot that is searched for, e.g. a starting pose for a joining of the peg 1 in the recess 2.1 has been found.").
Regarding Claim 17, Shmirgel discloses:
A method of programming a robot system, (See at least ¶0011 via "…a method for programming a manipulator process…")
said robot system comprising at least one robotic arm controlled by a robot controller according to a robot program, (See at least ¶0001 via "The present invention relates to a process module library and a graphical programming environment for programming a manipulator process" and abstract via "…manipulator can be controlled by means of a functional module of a graphic programming environment…")
where said robot program specifies a number of robot tasks and an order of execution of said robot tasks, said method comprises the steps of: (See at least ¶0008 which describes various manipulator processes, and ¶0011 which describes sub-processes)
(See at least ¶0045 via "…the user commands actions of the manipulator(s)… a parameterization of a process module to be carried out thereby, which activates a corresponding function module, and to input or modify parameters by means of said function module." **Wherein the user activates the function module, which corresponds to the assisting function. Also see ¶0109 via "…a robot gripper can be opened or closed by means of a function module…" )
generating at least one robot task to said robot program based on said selected at least one assisting function and at least one of said (See at least ¶0045 via "a graphic function module therefore serves for the programming, in particular the creation of a work program, as well as the, preferably simultaneous or parallel control of one or more manipulators and/or sub-processes…parameters can also be detected, and the process module can be automatically parameterized accordingly…a robot gripper can be closed by means of a function module of a robot gripper, a closing force can be detected…" **Wherein under BRI, Shmirgel's process module is interpreted as corresponding to robot task(s) based on detected parameter(s) and an executed function module).
However, although Shmirgel discloses the parameters being detected, Shmirgel does not explicitly disclose the recording process.
Nevertheless, Ghazaei Ardakani--who is directed towards a system and method for instructing a robot--discloses: activating a recording process of said robot system, where said robot controller during said recording process records at least one operation parameter of said robot system; (See at least ¶0016 via "The system is further configured to record resulting movement of a frame related to the slave robot arm, and to record resulting/applied force to the workpiece in the same frame." and ¶0043 via "the method comprises recording the determined joint movement command and the slave external force data… determining a robot program or robot instruction based on the recorded resulting movement expressed in the frame related to the slave robot arm, and based on the recorded resulting/applied force to the workpiece in the same frame" as well as ¶0079 via "The system 1 may be provided with a user interface connected to the control unit 5 and arranged to change mode of the control unit 5…in the “recording mode” records the resulting trajectories and forces.")
Therefore, it would have been obvious to one of ordinary skill in the art prior to the effective filing date of the given invention to modify Shmirgel in view of the recording process such as in Ghazaei Ardakani in order to incorporate a process that allows data to be collected to use in the creation/modification of the program: "While the operator is instructing the slave robot arm…data is preferably collected such that a program subsequently can be determined, the program being such that the slave robot arm can execute it in order to independently perform the task" [Ghazaei Ardakani ¶0128], as well as to enable efficient teaching for the robot: "enable a practical and efficient teaching of robot motions that are to exhibit a well-defined force interaction with workpieces" [Ghazaei Ardakani ¶0014].
Regarding Claim 18, Modified Shmirgel discloses the method according to Claim 17.
Furthermore, Shmirgel discloses: wherein said method comprises a step of adding said robot task to said robot program (See at least ¶0049 via "Preferably, the created (sub-) program is already functional during the programming, i.e. the insertion of further function modules, and enables thus a testing, or improvement, respectively" and ¶0052 via "a user can select a function module from a function module library in which available function modules are displayed by means of touching an icon, drag said function module to a functioning or programming field, anchor said function module there by letting go…").
Regarding Claim 19, Modified Shmirgel discloses the method according to Claim 17.
Furthermore, Shmirgel discloses: wherein said method during said robot system in order to change at least one operation parameter of said robot system (See at least ¶0050 via "for example, it is also possible to provide default values for parameters that can be entered or changed by the user, which are automatically assumed insofar as the user does not actively change them" **Wherein under BRI, the user changing the parameters of the robot system is interacting with the robot system. Also see ¶0045).
However, Shmirgel does not disclose the recording process.
Nevertheless, Ghazaei Ardakani discloses: said recording process (See at least ¶0016 via "The system is further configured to record resulting movement of a frame related to the slave robot arm, and to record resulting/applied force to the workpiece in the same frame." and ¶0043 via "the method comprises recording the determined joint movement command and the slave external force data… determining a robot program or robot instruction based on the recorded resulting movement expressed in the frame related to the slave robot arm, and based on the recorded resulting/applied force to the workpiece in the same frame").
Therefore, it would have been obvious to one of ordinary skill in the art prior to the effective filing date of the given invention to modify Shmirgel in view of the recording process such as in Ghazaei Ardakani in order to incorporate a process that allows data to be collected to use in the subsequent creation/modification of the program: "While the operator is instructing the slave robot arm…data is preferably collected such that a program subsequently can be determined, the program being such that the slave robot arm can execute it in order to independently perform the task" [Ghazaei Ardakani ¶0128], as well as to enable efficient teaching for the robot: "enable a practical and efficient teaching of robot motions that are to exhibit a well-defined force interaction with workpieces" [Ghazaei Ardakani ¶0014].
Regarding Claim 20, Modified Shmirgel discloses the method according to Claim 17.
Furthermore, Shmirgel discloses: wherein said activation of said at least one predefined robot system action comprises a step of executing robot program code causing said robot system to perform said robot system action (See at least ¶0048 via "…manipulator can already be controlled online during the programming by means of the accessed function module "move to a pose," in that, for example, by calling up the function module, an input possibility for the guidance of the manipulator into a pose, and the storing of this learned pose, is implemented as a pose of the function module. In this manner, the manipulator can be moved accordingly, directly during the programming, such that even a user with little instruction can create a program, in that he successively selects the next function module based on a respective initiated pose or a completed action." and ¶0049 via "Preferably, the created (sub-) program is already functional during the programming, i.e. the insertion of further function modules, and enables thus a testing, or improvement, respectively.").
Regarding Claim 21, Modified Shmirgel discloses the method according to Claim 17.
Furthermore, Shmirgel discloses: wherein said method comprises a step of selecting a position of said robot program and where said step of adding at least one robot task is based on said selected position of said robot program (See at least ¶0052 via "Preferably, a function module can be manipulated by means of touching a display interface, in particular a touchscreen, such that by means of clicking, drag & drop, etc., a selection, positioning, in particular moving and locking in place, calling up, and/or (de)activation can be initiated. As an example, a user can select a function module from a function module library in which available function modules are displayed by means of touching an icon, drag said function module to a functioning or programming field, anchor said function module there by letting go…").
Regarding Claim 22, Modified Shmirgel discloses the method according to Claim 17.
Furthermore, Shmirgel discloses: wherein said at least one assisting function causes at least one of said operation parameters of said robot system to change (See at least ¶0045 via "parameterization of a process module to be carried out thereby, which activates a corresponding function module, and to input or modify parameters by means of said function module. In doing so, parameters can also be detected, and the process module can be automatically parameterized accordingly.").
Regarding Claim 23, Modified Shmirgel discloses the method according to Claim 17.
Furthermore, Shmirgel discloses: wherein said at least one assisting function provides instructions to a user of said robot system (See at least ¶0052 via "Preferably, a function module can be manipulated by means of touching a display interface, in particular a touchscreen, such that by means of clicking, drag & drop, etc., a selection, positioning, in particular moving and locking in place, calling up, and/or (de)activation can be initiated. As an example, a user can select a function module from a function module library in which available function modules are displayed by means of touching an icon, drag said function module to a functioning or programming field, anchor said function module there by letting go, and by tapping said function module again, if applicable, to activate input windows or buttons opened by said function module" **Wherein under BRI, the input windows, touching icons, or buttons correspond to instructions provided to the user).
Regarding Claim 24, Modified Shmirgel discloses the method according to Claim 17.
Furthermore, Shmirgel discloses: wherein execution of said assisting function moves at least at part of said robotic arm (See at least ¶0045 via "the user commands actions of the manipulator(s) and/or conveys said information, with respect to its pose(s) status(es) etc., for example…For example, a robot gripper can be closed by means of a function module of a robot gripper, a closing force can be detected thereby through measuring said force exerted by the robot, and said force can automatically be acquired as a parameter in a process module…").
Regarding Claim 25, Modified Shmirgel discloses the method according to Claim 17.
Furthermore, Shmirgel discloses: wherein said operational parameter indicates at least one (See at least ¶0045 via " For example, a robot gripper can be closed by means of a function module of a robot gripper, a closing force can be detected thereby through measuring said force exerted by the robot, and said force can automatically be acquired as a parameter in a process module, as a target or maximal value").
However, Shmirgel does not explicitly disclose the sensor used to detect force.
Nevertheless, Ghazaei Ardakani discloses: sensor (See at least ¶0032 via " According to some embodiments, the external force data is obtained from one or several torque sensors").
Therefore, it would have been obvious to one of ordinary skill in the art prior to the effective filing date of the given invention to modify Modified Shmirgel to explicitly disclose a sensor in order to have a way to measure and capture the force data.
Regarding Claim 26, Modified Shmirgel discloses the method according to Claim 17.
Furthermore, Shmirgel discloses: wherein said operational parameter indicates user interactions performed by the user with said robot system (See at least ¶0045 via "…in particular the creation of a work program, as well as the, preferably simultaneous or parallel control of one or more manipulators and/or sub-processes, in particular a unidirectional or bidirectional interactive control, in that the user commands actions of the manipulator(s) and/or conveys said information, with respect to its pose(s) status(es) etc., for example. In particular in connection with the previously explained process module library aspect, it is also possible, advantageously, for a parameterization of a process module to be carried out thereby, which activates a corresponding function module, and to input or modify parameters by means of said function module…For example, a robot gripper can be closed by means of a function module of a robot gripper, a closing force can be detected thereby through measuring said force exerted by the robot").
Regarding Claim 27, Modified Shmirgel discloses the method according to Claim 17.
Furthermore, Shmirgel discloses wherein said step of adding at least one robot task to said robot program comprises a step of evaluating said (See at least ¶0045 via " a robot gripper can be closed by means of a function module of a robot gripper, a closing force can be detected…" and ¶0041 via "the necessary process modules are then automatically selected and (sub-) parameterized by means of a program" and ¶0016 via "at least one parameter of a process module defines a type of the sub-process carried out via said process module…By specifying a parameter that defines whether a search is made with a projection guided by the manipulator, or a recess guided by the manipulator, and one other parameter, which defines the type of searching path, the types "searching with a projection guided by a manipulator along a straight path," "searching with a projection guided by a manipulator along a zigzag path," "searching with a recess guided by a manipulator along a straight path," etc. can be programed with the same process module "pose search." **Wherein under BRI, the parameter is being evaluated to determine the type of sub process, and wherein the operation parameter is the (force) measured from the robot).
Regarding Claim 28, Modified Shmirgel discloses the method according to Claim 17.
Furthermore, Shmirgel discloses: wherein said step of adding at least one task to said robot program comprises a step of generating robot program (See at least ¶0049 via "the created (sub-) program is already functional during the programming, i.e. the insertion of further function modules, and enables thus a testing, or improvement, respectively" and ¶0040 via "Process modules can, for example, be implemented, in particular, programmed and/or used, as function commands in a conventional programming language for the programming of manipulators, such as the language KRL").
However, Shmirgel does not explicitly disclose the explicit "code".
Nevertheless, Ghazaei Ardakani discloses: program code (See at least ¶0123 via " the computer program comprises a computer program code to cause the control unit 7, or a computer or controller connected to the control unit 7, to perform the method as described herein. The computer program code may be stored on a computer-readable medium to perform the method according to any of the steps described herein, when the computer program code is executed by a control unit 7 or by a computer connected to the control unit 7").
Therefore, it would have been obvious to one of ordinary skill in the art prior to the effective filing date of the given invention to modify Modified Shmirgel's functional modules in view of specifying them as program code, such as disclosed by Ghazaei Ardakani as a way to execute the commands, and because Shmirgel already discloses "conventional programming language" in ¶0040.
Regarding Claim 29, Modified Shmirgel discloses the method according to Claim 17.
Furthermore, Shmirgel discloses: wherein said assisting function is configured to activate at least one additional assisting function, where said sat at least one additional assisting function activates at least one additional predefined robot system action (See at least ¶0045 via "…the user commands actions of the manipulator(s)… a parameterization of a process module to be carried out thereby, which activates a corresponding function module" and further ¶0053 via "Function modules can automatically be linked, preferably depending on their positions. As an example, a linking of two function modules can be automatically obtained in that, in the manipulator process, first the upper, or left function module is executed, and after it has been executed, the lower, or right function module is executed").
Regarding Claim 30, Modified Shmirgel discloses the method according to Claim 17.
Furthermore, Shmirgel discloses: wherein said robot system action comprises at step of moving a part of said robotic arm until at least a part of said robotic arm come in contact with an object of said robotic system (See at least ¶0066 via "If the peg 1 passes over the recess 2.1, the force F.sub.z presses it into said recess such that further movement is opposed by resistance. The regulation of the robot detects a corresponding increase in contact force along the v, axis, or respectively, a pause despite commanded further movement of the end point of the virtual spring, and thereby recognizes that the peg 1 is in the recess 2.1 that is being searched for, as a result of which, the pose of the robot that is searched for, e.g. a starting pose for a joining of the peg 1 in the recess 2.1 has been found." and the example of ¶0085 via "…upon making contact, switches to a compliant-regulation…").
Regarding Claim 31, Modified Shmirgel discloses the method robot system according to Claim 30.
Furthermore, Shmirgel discloses: wherein said operation parameter indicates the pose of said robotic arm upon contact between a part of said robotic arm and said object and wherein step of generating at least one robot task is based on said pose of said robotic arm (See at least ¶0066 via "If the peg 1 passes over the recess 2.1, the force F.sub.z presses it into said recess such that further movement is opposed by resistance. The regulation of the robot detects a corresponding increase in contact force along the v, axis, or respectively, a pause despite commanded further movement of the end point of the virtual spring, and thereby recognizes that the peg 1 is in the recess 2.1 that is being searched for, as a result of which, the pose of the robot that is searched for, e.g. a starting pose for a joining of the peg 1 in the recess 2.1 has been found.").
Regarding Claim 32, Modified Shmirgel discloses: A method of providing assisting functions to a robot system according to Claim 1.
Furthermore, Shmirgel discloses: wherein said method comprises the steps of:
defining at least one robot action to be performed by said robot system upon activation of said assisting function; (See at least ¶0045 via "For example, a robot gripper can be closed by means of a function module of a robot gripper")
defining at least one robot tasks to be added to said robot program based on activation of said assisting function; (See at least ¶0049 via "Preferably, the created (sub-) program is already functional during the programming, i.e. the insertion of further function modules, and enables thus a testing, or improvement, respectively.")
defining an evaluation scheme defining at least one property of said robot task based on said assisting function (See at least ¶0016 via "at least one parameter of a process module defines a type of the sub-process carried out via said process module…" and ¶0045 via "a robot gripper can be closed by means of a function module of a robot gripper, a closing force can be detected thereby through measuring said force exerted by the robot…and said force can automatically be acquired as a parameter in a process module". Additionally see ¶0068. **Wherein the property is interpreted under BRI as the type of subprocess, and the parameters that determine the sub-processes are interpreted under BRI as corresponding to an evaluation scheme)
However, although Shmirgel discloses identifying the process/sub-process (corresponding to robot task under BRI), Shmirgel does not explicitly disclose this being based off both the assisting setting parameter and the operation parameter. Nevertheless, Shmirgel discloses using multiple parameters to define different aspects of a robotic process (task). Thus, it would have been obvious to one of ordinary skill in the art prior to the effective filing date of the given invention to utilize the parameters to identify/define the robotic process/task.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to KAYLA RENEE DOROS whose telephone number is (703)756-1415. The examiner can normally be reached Generally: M-F (8-5) 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, Abby Lin can be reached on (571) 270-3976. 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.
/K.R.D./Examiner, Art Unit 3657
/ABBY LIN/ Supervisory Patent Examiner, Art Unit 3657