DETAILED ACTION
Claims 1-12, 14 and 16-18 are presented for examination.
Claims 1, 17, and 18 have been amended.
Claim 13, 15 has been cancelled.
This office action is in response to the amendment submitted on 11-Jun-2026.
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 .
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 29-AUG-2025 has been entered.
Response to Arguments – 35 USC 103
Applicant’s arguments with respect to the 103 rejections have been considered, but are moot in view of the new ground(s) of rejection provided below.
Regarding Claim 9, the applicant argues that Oleynik’s teaching of absolute error correction is for a different purpose than a safety function/expanding a safety zone.
The examiner respectfully disagrees. The language of claim 9 in light of claim 1 does not require the absolute error to be measured solely for the purpose of usage for a safety function. It only requires that the compensation value to incorporate the absolute errors irrespective of what purpose they were measured for, and be adapted by the safety function. Additionally, the combination of Dalibard as per the updated claim 1 mapping below and Oleynik makes obvious the use of the absolute error measurement in the context of adapting the errors to create the safe operation function.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-12, 14, and 16-18 are rejected under 35 U.S.C. 103 as being unpatentable over Oleynik (US20210069910A1) in view of Dalibard et al. (US20170080565A1)
Regarding Claim 1, Oleynik teaches a method for setting up a safe operation of a multi-axis kinematic system, wherein the safe operation comprises a safety function (Fig 2B and Fig 2C show the safety function and its interaction with the operation of the kinematic system. “[0008] FIG. 2B is a flow diagram illustrating robotic task-execution via one or more minimanipulation library data sets to execute recipes … in a collaborative mode with a safety function.” Fig 3C shows a sample kinematic setup with multiple axes).
Configuring the multi-axis kinematic system prior to operation thereof, the configuration comprising: ([0500] “Before any execution of minimanipulation/action primitive, system should check status of environment. In case of no changes, the system will get cartesian trajectory associated with given minimanipulation/action primitive and plan it. In case of changed environment, the calibration procedure should be performed with measuring the actual state of the system (such as positions of placements and objects in the kitchen) using multiple sensors and then providing this data to the system. After this, cartesian trajectory will be re-planned based on updated environment state. The output from planning is joint state trajectory which can be saved as a new version for current or changed environment. After this, joint state trajectory can be executed.”)
Providing, error values of respective axes of the multi-axis kinematic system: ([0272] “FIG. 16B depicts calibration of the robot automatic error tracking procedure, this time there is a planned position and orientation shift. The robot is approaching a certain cartesian point in space 108, (X Y Z; R P Y) and physical reference acquired by the probe 86 is saved” [0328] “FIG. 64A is a flow diagram illustrating the repositioning a robotic apparatus by using actuators for compensating the difference of an environment in accordance with the present disclosure; FIG. 64B is a flow diagram illustrating the recalculation each robotic apparatus joint state for trajectory execution with x-y-z and rotational axes for compensating the difference of an environment in accordance with the present disclosure;” Also see [0500] where the calibration/configuration is described in detail pre-operation).
PNG
media_image1.png
559
722
media_image1.png
Greyscale
Storing the ascertained compensation value in association with one or more trajectories or attitudes of the multi-axis kinematic system ([0272] “FIG. 16B depicts calibration of the robot automatic error tracking procedure, this time there is a planned position and orientation shift. The robot is approaching a certain cartesian point in space 108, (X Y Z; R P Y) and physical reference acquired by the probe 86 is saved,” [0461] “For each misplaced-pose, a JST should be created and saved in cache,” and [0500] “Calibration with cartesian trajectory diagram description: Before any execution of minimanipulation/action primitive, system should check status of environment. In case of no changes, the system will get cartesian trajectory associated with given minimanipulation/action primitive and plan it. In case of changed environment, the calibration procedure should be performed with measuring the actual state of the system (such as positions of placements and objects in the kitchen) using multiple sensors and then providing this data to the system. After this, cartesian trajectory will be re-planned based on updated environment state. The output from planning is joint state trajectory which can be saved as a new version for current or changed environment. After this, joint state trajectory can be executed” EN: Also see a complete scenario in a Kitchen example in [0139] “kitchen world model: stores and updates kitchen environment status such as object locations and states, provides environment status to other modules”).
Operating the multi-axis kinematic system after the configuration phase, the operating comprising: ([0500])
However, Oleynik is not relied on for:
wherein the error values comprise sensor resolutions of respective axis sensors or axial run- on distances
ascertaining a compensation value for at least one variable of the safety function on the basis of the error values, on the basis of geometric parameters of the multi-axis kinematic system and on the basis of axis values of the respective axes that are obtained from trajectories of the multi-axis kinematic system
adapting the safety function on the basis of the stored compensation value corresponding to the current attitude or trajectory of the multi-axis kinematic system
Dalibard teaches wherein the error values comprise sensor resolutions of respective axis sensors or axial run- on distances ([0060-0065] “The invention defines regions around the robot that must be clear of obstacles for the robot to move. The size and shape of these regions depend on the robot instantaneous velocity, in translation and rotation. The shape of the safety region is determined so that:
No point of the robot should come closer to an obstacle than a certain distance called minimum distance, 10 cm in a purely exemplary implementation;
No point should be inside the region swept by the stopping robot, should the robot stop immediately;
The safety region size in the motion direction is increased by a certain distance, called frontal distance, which depends continuously on the robot stopping distance; in an implementation of the invention, taken purely by way of example, the frontal distance is taken to be equal to the minimum distance at low speed (i.e. 10 cm), and 40 cm at full speed, but depending on the actual speeds of the robot, different values may be selected and calculated using the formula below which returns the results in the table.
The extra distance included in the maximum frontal distance is there to account for sensor uncertainty, sensor delay, and the comfort of people around the robot. Frontal security distance F is computed from the following formula: Wherein:
MD=Minimum Distance
SD=Stopping Distance
MS=Maximum Stopping Distance
MFD=Maximum Frontal Distance” Also see [0072] for a table showing an example relationship between distance and time. EN: The frontal distance is the physical distance required for an object to stop based on its inertia. See [0028] for definition of axial run on distance. Additionally, the sensor uncertainty incorporates sensor resolution.)
ascertaining a compensation value for at least one variable of the safety function on the basis of the error values, on the basis of geometric parameters of the multi-axis kinematic system and on the basis of axis values of the respective axes that are obtained from trajectories of the multi-axis kinematic system
ascertaining a compensation value for at least one variable of the safety function on the basis of the error values, on the basis of geometric parameters of the multi-axis kinematic system and on the basis of axis values of the respective axes that are obtained from trajectories of the multi-axis kinematic system ([0064-0065] EN: discloses the extra distance included in the frontal distance is there to account for errors such as: sensor uncertainty, sensor delay. [0085] “This result is achieved for instance by implementing the following steps:
At every control cycle, the motion controller takes 610 as input an joint target position for every articulation; this target may come from a choreographed animation or may be the result of a computation;
From this target position, the method computes 620 the target velocity of every point of the robot;
For all points, the method computes 630 a maximum joint velocity for the chain containing the point; this velocity depends 640 on the position of obstacles near the point; the velocity is low when obstacles are near the point and in the direction of its target velocity, it is unbounded when the obstacle is far or when it is in the opposite direction of the point target velocity, and it depends continuously on the relative obstacle positions in between.”)
adapting the safety function on the basis of the stored compensation value corresponding to the current attitude or trajectory of the multi-axis kinematic system ([0085] and [0089-0091] shows the calculation of the safety value based on the speed, trajectory and the distance as discussed in [0060-0072])
Oleynik and Dalibard are analogous art because they are from the same field of endeavor in robot automation accounting for error calibration and safety zoning. Before the effective filing date of the invention, it would have been obvious to a person of ordinary skill in the art, to combine Oleynik and Dalibard to benefit from Dalibard’s more explicit treatment of some of the compensation aspects of safety zone calculation to safely operating the robot with expected results. “the invention discloses a method for controlling a trajectory of at least one of upper and lower members of a humanoid robot, said method comprising: storing an initial trajectory with a target point in a memory of the robot; acquiring, from at least a sensing procedure controlled from on-board the robot, data representative of a position of one or more obstacles; calculating, by a processor on-board the robot: an envelope of one of a footprint of said robot and said at least one of upper and lower members thereof; a relative position of the envelope and the one or more obstacles; a probability of collision of the envelope with an obstacle; and, a series of commands to change at least one of the trajectory and a speed of the at least one of upper and lower members of the robot; said method being characterized in that the series of commands is conditioned in at least one of space and time to: i) avoid collision of the envelope with an obstacle; and ii) when adequate and possible, rejoin the target point of the initial trajectory stored in memory.” (Dalibar, [0007])
Regarding Claim 2, Oleynik in view of Dalibard teaches the method of claim 1. Dalibard further teaches sensor resolutions are provided as the error values of respective axes ([0064 and 0085-0091] discuss the sensor uncertainty and expanding the safety envelope accordingly as explained by the applicant on Pg. 7 of the remarks: “providing the intrinsic measurement uncertainty of the hardware (the sensor resolution) as an error value input used to expand a safety zone or reduce a safety limit.” ).
Regarding Claim 3, Oleynik in view of Dalibard teaches the method of claim 1. Dalibard further teaches axial run-on distances are provided as the error values of respective axes ([0064 and 0085-0091]).
Regarding Claim 4, Oleynik in view of Dalibard further teaches the geometric parameters of the multi-axis kinematic system are further provided for the setup ([0263] “Then vision system would recognize grasped object and its exact position in relation to the hand 22. System acknowledges geometry of the grasp and cartesian position and orientation of the objects tip, which is crucial for the execution”).
Regarding Claim 5, Oleynik in view of Dalibard further teaches the trajectories are deduced from a set of trajectories that are predefinable for the multi-axis kinematic system ([0416] “The Robotic Kitchen can execute an AP in several different planning modes: … and pre-planned JST, a pre-planned JST, which was previously tested multiple times and saved inside a cache, and then it can be retrieved and executed when required.” JST is Joint State Trajectory).
Regarding Claim 6, Oleynik in view of Dalibard teaches the method of claim 1. Dalibard further teaches the trajectories are deduced from maximum value ranges for the respective axes ([0089-0094] Also see Figs. 9a-9d. [0105-0106] “A safety zone around the robot can therefore comprise obstacles on the progression surface and obstacles at an altitude relative to the progression surface. Change of trajectory determined by detection of obstacles in the 2D safety area will generally also protect the robot from a collision of its members with the second category of obstacles. But this is not always true, notably when the robot is engaged in interaction with a human being who is further than the minimum security distance from the robot, but whose members can of course enter the safety zone. In this case the gestures of the robot must be controlled with care, using the embodiment where the joint speed is saturated based on detection of the distance with obstacles.”).
Regarding Claim 7, Oleynik in view of Dalibard further teaches the trajectories describe a combination of axis values of all axes over a time and are formed on the basis of a trace ([0416] discusses 6 possible planning modes for trajectories. “in some cases the robotic system can work with a pre-planned JST, which was previously tested multiple times and saved inside a cache, and then it can be retrieved and executed when required”).
or a simulation ( [0242] “in the case of the a-priori method 1020, the decision could be based on design constraints 1021…in addition to basing a decision on design constraints 1021, the decision could be reached through a simulation system, which would allow the study of its constraints 1022 off-line and beforehand, in order to decide on the macro-vs-micro boundaries location based on the capabilities of various inverse kinematic (IK) solvers or algorithms and their associated complexity 1022 a”).
or an observation of live data during a movement of the multi-axis kinematic system ([0244] “Real-time operations 1031 could be based on a software module looking ahead one or more time-steps or even at the sub-task or complete-task level, to evaluate which logical macro-/micro boundary configuration is capable to run in real-time and specifically, which boundary configuration or dynamically configured boundary lines minimize real-time computations and guarantee real-time operations”).
Regarding Claim 8, Oleynik in view of Dalibard further teaches the safety function comprises at least one of a safe zone monitoring, a safe orientation, or a safe Cartesian speed ([0255] “FIG. 4C depicts light curtains safety scanning system 52 53 which are enabling the system to zone operations between human user 40 and robots 20 26,” [0191] “ Database 4 is queried whenever the robot needs to update object parameters (e.g. locations, orientations), or needs to navigate within the environment. It is updated frequently, as objects are moved, consumed, or new objects brought in from the outside (e.g. when the human returns form the store or supermarket)” and [0190] “For instance, limit the velocities while the user is in a certain position in the kitchen regarding the robot. Prevent from using certain tools or perform certain hazardous operations while the user is in a certain position in the kitchen (using a knife, moving a pot with hot water along other potential hazardous situations in the kitchen environment”).
Regarding Claim 9, Oleynik in view of Dalibard further teaches at least one of a position error absolute value, an angle error absolute value, or a speed error absolute value are ascertained as the compensation value ([0269] “Probe 86 is represented on the physical model measuring robotic system geometry. The geometry observed on the drawing is the reference geometry from the physical model. It is acquiring data from the sensors to determine what is the offset between physical system position in relation to the point from the virtual model, the result is then compared with the virtual model data. The probe is approaching the certain point in physical model kitchen 87, which is the first comparison point. After that it is moving to point 88, and point 89. Then cartesian position and orientation of probing points is compared with virtual model points 82, 83, 84. Several points are measured on one plane, in such a way, displacement patterns can be observed, torsion, bending, displacement are fed back to the system, assumption about the model 85 can be cross checked with reality 90. Physical model column 90 is flawed, virtual model column 85, has to be adapted to match the reality. Adaptation is done using the offset data from the probe 86.” The position and orientation mark the position and angle errors respectively. They are absolute and not relative as described above).
Regarding Claim 10, Oleynik in view of Dalibard teaches the method of claim 1. Dalibard further teaches a timing error for scanning of respective axis sensors over time is further provided ([0064] the sensor delay, timing error, is accounted for in the compensation distance.).
Regarding Claim 11, Oleynik in view of Dalibard teaches the method of claim 1. Dalibard further teaches maximum dynamic values of the respective axes are further provided ([0089-0093] “The velocity of the joints in the chain is therefore saturated at its maximum safety value. … But other values can be set, depending on the scenario of use of the robot. One can also define a dynamic setting of the parameters, depending on the environment of the robot.” [0090-0092] defines the setting and formulas for the dynamic values for the joint axes.).
Regarding Claim 12, Oleynik in view of Dalibard teaches the method of claim 1. Dalibard further teaches parameters or the maximum dynamic values are ascertained during operation of the multi-axis kinematic system ([0085] Both the measurements and the system decisions are made dynamically at run time.).
Regarding Claim 14, Oleynik in view of Dalibard further teaches the compensation value for the at least one variable is ascertained and stored on the basis of an adoptable attitude or position of the multi-axis kinematic system ( [0263] “System acknowledges geometry of the grasp and cartesian position and orientation of the objects tip, which is crucial for the execution. In this scenario the system could recalculate the motion planning in cartesian library based on this data, and get rid of possible error, cause by slight grasp inaccuracy. It could also add the offset point to execution commands in joint state library execution. Shift on different axis and orientation would be compensated on different actuated axis” and [0416] “in some cases the robotic system can work with a pre-planned JST, which was previously tested multiple times and saved inside a cache, and then it can be retrieved and executed when required”).
Regarding Claim 16, Oleynik in view of Dalibard further teaches during operation the safety function resorts to the ascertained compensation values ([0172] “The first step before each robot execution is analysis of sensory real-time data and risk mitigation 1035. Only when environment is safe for the user, each motion command can be enabled 1036” and [0271] “FIG. 16A depicts calibration of the robot automatic error tracking procedure. Every manufactured system can be flawed. The risk of inaccuracies in execution are eliminated using the following procedure. The robot is approaching a certain cartesian point in space 105 (X Y Z; R P Y), which is the robot configuration reference point, with certain robot joint state configuration 104. The feedback about the physical point positioning inside cartesian space comes from the probe 86. Then it is commanding different joint state values to all joints of the system to reconfigure robot joint state to the first probing robot configuration 101, with the certain probe position 102.” [0271] proceeds to detail the technical details of the re-configuration. Also see Dalibard [0083-0094]).
Regarding Claim 17, Oleynik in view of Dalibard further teaches an HMI-based input configured to input error values of respective axes ([0249] “GUI touchscreen 41 is central part of user interaction with robotic kitchen, he is enabled to control and observe virtual kitchen model, program the recipes and more” and [0200] “ The processing of the sensory data 218 involves its filtering-step 216 and grouping it through an association engine 220, where the data is associated with the physical system elements as well as manipulation-phases, potentially even allowing for user input 222, after which they are processed through two MM software engines”).
an output configured to output a compensation value for at least one variable of the safety function based on the error values, geometric parameters of the multi-axis kinematic system, and axis values of the respective axes that are obtained from trajectories of the multi-axis kinematic system ([0500] “In case of changed environment, the calibration procedure should be performed with measuring the actual positions of placements and objects in the kitchen and then providing this data to the system. After this, cartesian trajectory will be re-planned based on updated environment state and then executed”).
The remaining limitations are similar to claim 1 and are rejected under the same rationale.
Regarding Claim 18, Oleynik in view of Dalibard further teaches a non-transitory computer implemented storage medium that stores machine-readable instructions executable by at least one processor ([0509] “Such a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), erasable programmable ROMs (EPROMs), electrically erasable and programmable ROMs (EEPROMs), magnetic or optical cards, application specific integrated circuits (ASICs), or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus. Furthermore, the computers and/or other electronic devices referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability”).
The remaining limitations are similar to claim 1 and are rejected under the same rationale.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Chen et al (US-6892153-B2): Discloses adaptation and error compensation in the context of robots.
Cole et al (US-11014240-B2): Discloses safety zones in the context of robots.
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to AMIR DARWISH whose telephone number is (571)272-4779. The examiner can normally be reached 7:30-5:30 M-Thurs.
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, Lewis Bullock can be reached on 571-272-3759. 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.
/A.E.D./Examiner, Art Unit 2199
/LEWIS A BULLOCK JR/Supervisory Patent Examiner, Art Unit 2199