Prosecution Insights
Last updated: July 17, 2026
Application No. 19/120,973

PROGRAMMING DEVICE, PROGRAMING METHOD, AND PROGRAM

Non-Final OA §102
Filed
Apr 14, 2025
Priority
Dec 27, 2022 — nonprovisional of PCTJP2022048307
Examiner
KATZ, DYLAN MICHAEL
Art Unit
3657
Tech Center
3600 — Transportation & Electronic Commerce
Assignee
FANUC Corporation
OA Round
1 (Non-Final)
87%
Grant Probability
Favorable
1-2
OA Rounds
1y 2m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 87% — above average
87%
Career Allowance Rate
261 granted / 301 resolved
+34.7% vs TC avg
Strong +21% interview lift
Without
With
+20.9%
Interview Lift
resolved cases with interview
Typical timeline
2y 5m
Avg Prosecution
20 currently pending
Career history
338
Total Applications
across all art units

Statute-Specific Performance

§101
2.2%
-37.8% vs TC avg
§103
88.0%
+48.0% vs TC avg
§102
4.6%
-35.4% vs TC avg
§112
3.3%
-36.7% vs TC avg
Black line = Tech Center average estimate • Based on career data from 301 resolved cases

Office Action

§102
CTNF 19/120,973 CTNF 95476 DETAILED ACTION Notice of Pre-AIA or AIA Status 07-03-aia AIA 15-10-aia The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA. 07-30-03-h AIA Claim Interpretation 07-30-03 AIA The following is a quotation of 35 U.S.C. 112(f): (f) Element in Claim for a Combination. – An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof. The following is a quotation of pre-AIA 35 U.S.C. 112, sixth paragraph: An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof. 07-30-05 The claims in this application are given their broadest reasonable interpretation using the plain meaning of the claim language in light of the specification as it would be understood by one of ordinary skill in the art. The broadest reasonable interpretation of a claim element (also commonly referred to as a claim limitation) is limited by the description in the specification when 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is invoked. As explained in MPEP § 2181, subsection I, claim limitations that meet the following three-prong test will be interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph: (A) the claim limitation uses the term “means” or “step” or a term used as a substitute for “means” that is a generic placeholder (also called a nonce term or a non-structural term having no specific structural meaning) for performing the claimed function; (B) the term “means” or “step” or the generic placeholder is modified by functional language, typically, but not always linked by the transition word “for” (e.g., “means for”) or another linking word or phrase, such as “configured to” or “so that”; and (C) the term “means” or “step” or the generic placeholder is not modified by sufficient structure, material, or acts for performing the claimed function. Use of the word “means” (or “step”) in a claim with functional language creates a rebuttable presumption that the claim limitation is to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites sufficient structure, material, or acts to entirely perform the recited function. Absence of the word “means” (or “step”) in a claim creates a rebuttable presumption that the claim limitation is not to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is not interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites function without reciting sufficient structure, material or acts to entirely perform the recited function. Claim limitations in this application that use the word “means” (or “step”) are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action. Conversely, claim limitations in this application that do not use the word “means” (or “step”) are not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action. This application includes one or more claim limitations that do not use the word “means,” but are nonetheless being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, because the claim limitation(s) uses a generic placeholder that is coupled with functional language without reciting sufficient structure to perform the recited function and the generic placeholder is not preceded by a structural modifier. Such claim limitation(s) is/are: first path information generation unit, teaching point generation unit, program generation unit, second path information generation unit, error calculation unit, teaching point addition unit, in claim(s) 1 (first instance). Because this/these claim limitation(s) is/are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, it/they is/are being interpreted to cover the corresponding structure described in the specification as performing the claimed function, and equivalents thereof. Each unit will be interpreted as a functional software module stored in computer memory and executed by a computer processor as described in par. 0017-0018 of applicant’s specification as filed, or equivalents thereof. If applicant does not intend to have this/these limitation(s) interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, applicant may: (1) amend the claim limitation(s) to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph (e.g., by reciting sufficient structure to perform the claimed function); or (2) present a sufficient showing that the claim limitation(s) recite(s) sufficient structure to perform the claimed function so as to avoid it/them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. Claim Rejections - 35 USC § 102 07-07-aia AIA 07-07 The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action: A person shall be entitled to a patent unless – 07-08-aia AIA (a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention. 07-12-aia AIA (a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention. 07-15-aia AIA Claim(s) 1-8 is/are rejected under 35 U.S.C. 102 (a)(1) as being anticipated by Iwasa et al (US 20200122325, hereinafter Iwasa) . Regarding Claim 1, Iwasa teaches: A programming device for generating, as a program, path information that indicates a movement path for a tip point of a robot (see at least " a teaching computer 400. " in par. 0035 and “The teaching computer 400 acquires, from the demonstration device 30, data of the motion to be shown by the demonstration, and generates a motion command for the robot 100 based on the acquired data.” In par. 0037) , the programming device comprising: a first path information generation unit configured to, based on a movement command for the robot, generate first path information that indicates a movement path for the tip point of the robot (see at least “For example, after using the teaching positions at both ends in the time segment of at least part of the teaching position data (or adding the teaching positions of both ends in a time segment of at least part of the teaching position data to a selected group), the position thinning unit 414 repeats one or more operations including deriving a reference line connecting the used teaching positions (or the teaching positions added to the selected group), and determining whether to use another teaching position (or adding the other teaching position of the time segment to the selected group) based on the amount of offset from the reference line until a predetermined condition is satisfied." in par. 0064) ; a teaching point generation unit configured to generate a teaching point on a path that corresponds to the first path information; (see at least "The teaching position acquisition unit 411 acquires teaching position data including a plurality of teaching positions arranged in time series based on the demonstration data of the operator. The teaching position may be other information for determining the target position of the distal end 110. For example, the teaching position may be information that directly determines the target position of the distal end 110 (for example, the target position of the distal end 110), or may be information that indirectly determines the target position of the distal end 110." in par. 0056) a program generation unit configured to generate a program that corresponds to the first path information for which the teaching point is generated (see at least “Returning to FIG. 4, the position command generation unit 415 generates a position command based on the thinned position data. For example, the position command generation unit 415 calculates a plurality of target positions by performing an calculation including the coordinate conversion from the second coordinate system C2 to the first coordinate system C1 with respect to a plurality of teaching positions included in thinned position data to generate a plurality of movement commands corresponding to a plurality of target positions.” In par. 0072 and “The position command is a command for causing the distal end 110 to sequentially follow a plurality of target positions arranged in time series, and includes a plurality of movement commands corresponding to the plurality of respective target positions. The target positions include a target value of the position of the distal end 110 and a target value of the posture of the distal end 110.” In par. 0052 and "The command storage unit 418 stores the position command generated by the position command generation unit 415 and the force command generated by the force command generation unit 417. The command registration unit 419 registers the position command and the force command stored in the command storage unit 418 in the robot controller 200." in par. 0078) ; a second path information generation unit configured to obtain second path information that indicates a movement path for the tip point of the robot that is caused to move in accordance with the program (see at least " In other words, the position thinning unit may generate the thinned position data based on the amount of offset between the teaching position and the reference line . In some examples, the term “amount of offset” may be understood to include a difference, variation or measurement of: distance , force, angle, attitude , time, speed, acceleration, location, vectors, or any combination thereof. Additionally, the amount of offset may be determined with respect to the operating tip of the robot," in par. 0063 and "The repetition management unit 423 causes a control unit 212 (described in further detail later) of the robot controller 200 to repeat the motion of the robot 100, the measurement data acquisition unit 421 to repeat the acquisition of measurement data, and the position correction unit 422 to repeat the correction of the position command until the amount of offset between the measurement data and the teaching force data satisfies the allowable condition. " in par. 0086, note the highlighted portion shows that while Iwasa mainly discusses an example where the offset being minimized is a force, Iwasa also discloses that the force could be a position or orientation error of the operating tip of the robot being minimized) ; an error calculation unit configured to calculate an error between the first path information and the second path information (see at least " In other words, the position thinning unit may generate the thinned position data based on the amount of offset between the teaching position and the reference line . In some examples, the term “amount of offset” may be understood to include a difference, variation or measurement of: distance , force, angle, attitude , time, speed, acceleration, location, vectors, or any combination thereof. Additionally, the amount of offset may be determined with respect to the operating tip of the robot," in par. 0063 ) ; and a teaching point addition unit configured to add a teaching point to the path that corresponds to the first path information until the error becomes equal to or less than a tolerance value. (see at least "For example, after using the teaching positions at both ends in the time segment of at least part of the teaching position data (or adding the teaching positions of both ends in a time segment of at least part of the teaching position data to a selected group), the position thinning unit 414 repeats one or more operations including deriving a reference line connecting the used teaching positions (or the teaching positions added to the selected group), and determining whether to use another teaching position (or adding the other teaching position of the time segment to the selected group) based on the amount of offset from the reference line until a predetermined condition is satisfied. " in par. 0064 and “In other words, the position thinning unit 414 may repeat operations including deriving the reference line and adding another teaching point to the selected group based on the amount of offset from the reference line to the other teaching position until there is no teaching position to which the amount of offset from the reference line exceeds a predetermined threshold value. For example, the position thinning unit 414 may regard a condition in which there is no teaching position at which the amount of offset from the reference line exceeds a predetermined threshold value as the repetition completion condition.” In par. 0068) Regarding Claim 2, Iwasa teaches: the programming device according to claim 1, wherein the program generation unit configured to generate the program that corresponds to the first path information by using a movement command which instructs the tip point of the robot to pass through a position corresponding to the teaching point. (see at least “Returning to FIG. 4, the position command generation unit 415 generates a position command based on the thinned position data. For example, the position command generation unit 415 calculates a plurality of target positions by performing an calculation including the coordinate conversion from the second coordinate system C2 to the first coordinate system C1 with respect to a plurality of teaching positions included in thinned position data to generate a plurality of movement commands corresponding to a plurality of target positions.” In par. 0072 and “The position command is a command for causing the distal end 110 to sequentially follow a plurality of target positions arranged in time series, and includes a plurality of movement commands corresponding to the plurality of respective target positions. The target positions include a target value of the position of the distal end 110 and a target value of the posture of the distal end 110.” In par. 0052 and "The command storage unit 418 stores the position command generated by the position command generation unit 415 and the force command generated by the force command generation unit 417. The command registration unit 419 registers the position command and the force command stored in the command storage unit 418 in the robot controller 200." in par. 0078) ; Regarding Claim 3, Iwasa teaches: the programming device according to claim 1, wherein the first path information is configured to be a sequence of points that indicate positions of the tip point of the robot. (see at least “The position command is a command for causing the distal end 110 to sequentially follow a plurality of target positions arranged in time series, and includes a plurality of movement commands corresponding to the plurality of respective target positions. The target positions include a target value of the position of the distal end 110 and a target value of the posture of the distal end 110.” In par. 0052) Regarding Claim 4, Iwasa teaches: the programming device according to claim 3, wherein the teaching point addition unit configured to add a teaching point to at least one position in the sequence of points. (see at least "For example, after using the teaching positions at both ends in the time segment of at least part of the teaching position data (or adding the teaching positions of both ends in a time segment of at least part of the teaching position data to a selected group), the position thinning unit 414 repeats one or more operations including deriving a reference line connecting the used teaching positions (or the teaching positions added to the selected group), and determining whether to use another teaching position (or adding the other teaching position of the time segment to the selected group) based on the amount of offset from the reference line until a predetermined condition is satisfied. " in par. 0064 and “In other words, the position thinning unit 414 may repeat operations including deriving the reference line and adding another teaching point to the selected group based on the amount of offset from the reference line to the other teaching position until there is no teaching position to which the amount of offset from the reference line exceeds a predetermined threshold value. For example, the position thinning unit 414 may regard a condition in which there is no teaching position at which the amount of offset from the reference line exceeds a predetermined threshold value as the repetition completion condition.” In par. 0068 and “Returning to FIG. 4, the position command generation unit 415 generates a position command based on the thinned position data. For example, the position command generation unit 415 calculates a plurality of target positions by performing an calculation including the coordinate conversion from the second coordinate system C2 to the first coordinate system C1 with respect to a plurality of teaching positions included in thinned position data to generate a plurality of movement commands corresponding to a plurality of target positions.” In par. 0072) Regarding Claim 5, Iwasa teaches: the programming device according to Claim 1, wherein the program generation unit configured to generate the program that corresponds to the first path information, based on a teaching point generated on the path that corresponds to the first path information. (see at least “Returning to FIG. 4, the position command generation unit 415 generates a position command based on the thinned position data. For example, the position command generation unit 415 calculates a plurality of target positions by performing an calculation including the coordinate conversion from the second coordinate system C2 to the first coordinate system C1 with respect to a plurality of teaching positions included in thinned position data to generate a plurality of movement commands corresponding to a plurality of target positions.” In par. 007) Regarding Claim 6, Iwasa teaches: the programming device according to Claim 1, wherein the first path information generation unit configured to obtain the movement command for the robot from a second control device that differs from a first control device that directly controls the robot. (see at least "The command storage unit 211 stores the position command and the force command registered by the command registration unit 419 of the teaching computer 400. The control unit 212 operates the robot 100 based on at least the position command stored in the command storage unit 211." in par. 0092) Regarding Claim 7, Iwasa also teaches: a programming method for generating (see method in par. 0069) , as a program, path information that indicates a movement path for a tip point of a robot, the programming method comprising: performing, step by step, each function of the device of Claim 1 (see Claim 1 for analysis of the device) Regarding Claim 8, Iwasa also teaches: a non-transitory computer-readable storage medium storing a program (see at least "non-volatile storage medium" in par. 0099) for causing a computer to execute a programming method that includes each step set forth in claim 7. (see Claim 7 analysis for rejection of the method) Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to DYLAN M KATZ whose telephone number is (571)272-2776. The examiner can normally be reached Mon-Thurs. 8:00-6:00. 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. /DYLAN M KATZ/Primary Examiner, Art Unit 3657 Application/Control Number: 19/120,973 Page 2 Art Unit: 3657 Application/Control Number: 19/120,973 Page 3 Art Unit: 3657 Application/Control Number: 19/120,973 Page 4 Art Unit: 3657 Application/Control Number: 19/120,973 Page 5 Art Unit: 3657 Application/Control Number: 19/120,973 Page 6 Art Unit: 3657 Application/Control Number: 19/120,973 Page 7 Art Unit: 3657 Application/Control Number: 19/120,973 Page 8 Art Unit: 3657 Application/Control Number: 19/120,973 Page 9 Art Unit: 3657 Application/Control Number: 19/120,973 Page 10 Art Unit: 3657 Application/Control Number: 19/120,973 Page 11 Art Unit: 3657 Application/Control Number: 19/120,973 Page 12 Art Unit: 3657 Application/Control Number: 19/120,973 Page 13 Art Unit: 3657 Application/Control Number: 19/120,973 Page 14 Art Unit: 3657
Read full office action

Prosecution Timeline

Apr 14, 2025
Application Filed
Jun 03, 2026
Non-Final Rejection mailed — §102 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12679353
COLLISION AVOIDANCE WITH TRAJECTORY EVALUATION
3y 3m to grant Granted Jul 14, 2026
Patent 12679354
SAFETY FILTER WITH PREVIEW DATA TO IMPROVE THE SAFETY OF STEER COMMANDS
2y 5m to grant Granted Jul 14, 2026
Patent 12678945
ESTIMATION OF EXTERNAL FORCE FOR ROBOT CONTROL
1y 11m to grant Granted Jul 14, 2026
Patent 12679390
Unknown
1y 9m to grant Granted Jul 14, 2026
Patent 12667966
ROBOT PROGRAMMING ASSISTANCE APPARATUS, ROBOT PROGRAMMING ASSISTANCE PROGRAM, AND ROBOT PROGRAMMING ASSISTANCE METHOD
2y 0m to grant Granted Jun 30, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
87%
Grant Probability
99%
With Interview (+20.9%)
2y 5m (~1y 2m remaining)
Median Time to Grant
Low
PTA Risk
Based on 301 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month