Office Action Predictor
Application No. 18/251,897

NUMERICAL CONTROL DEVICE AND NUMERICAL CONTROL SYSTEM

Non-Final OA §103
Filed
May 05, 2023
Examiner
ROBARGE, TYLER ROGER
Art Unit
3658
Tech Center
3600 — Transportation & Electronic Commerce
Assignee
Fanuc Corporation
OA Round
3 (Non-Final)
75%
Grant Probability
Favorable
3-4
OA Rounds
2y 8m
To Grant
85%
With Interview

Examiner Intelligence

75%
Career Allow Rate
15 granted / 20 resolved
Without
With
+10.0%
Interview Lift
avg trend
2y 8m
Avg Prosecution
35 pending
55
Total Applications
career history

Statute-Specific Performance

§101
13.7%
-26.3% vs TC avg
§103
56.3%
+16.3% vs TC avg
§102
12.4%
-27.6% vs TC avg
§112
16.3%
-23.7% vs TC avg
Black line = Tech Center average estimate • Based on career data

Office Action

§103
DETAILED ACTION This Office Action is taken in response to Applicant’s Amendment and Remarks filed on 11/24/2025 regarding Application No. 18/251,897 originally filed on 05/05/2023. Claims 1-2,4 and 6-7 as filed are currently pending and have been considered as follows: Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Response to Arguments Applicant’s arguments with respect to claim(s) have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument. Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows: 1. Determining the scope and contents of the prior art. 2. Ascertaining the differences between the prior art and the claims at issue. 3. Resolving the level of ordinary skill in the pertinent art. 4. Considering objective evidence present in the application indicating obviousness or nonobviousness. Claim(s) 1-2, 4 and 7 are rejected under 35 U.S.C. 103 as being unpatentable over Sagasaki (US Pub. No. 20220011754) in view of Kado (US Pub. No. 20150127140) in view of Saitou (US Pub. No. 20190129382) in further view of Brogaardh (WO Pub. No. 2008113807). As per Claim 1, Sagasaki discloses of a numerical control device comprising: a machine tool control module that controls operation of a machine tool based on a numerical control program to machine a workpiece; (as per Fig. 1, as per “A control system 100A is a system for controlling a machine tool 70 and a robot 60 by using numerical control (NC) programs” in ¶38) a robot control module that generates operation command for a robot controller that controls operation of a robot to move a control point of the robot based on a numerical control program; (as per “sends the robot program to the robot controller 50X.” in ¶73, as per “the robot IF 510 performs a process associated with the function and the command coordinates on the robot 60” in ¶197) wherein the robot control module includes: a first movement command generator that calculates a target movement trajectory, which is a target of a movement trajectory of the control point, (as per "The function of G201 is a function of moving the robot 60 by linear interpolation (robot linear interpolation). Thus, G201 is a robot linear interpolation command for moving the robot 60 by linear interpolation." in ¶81) generates a first movement command including the target movement trajectory based on the numerical control program; (as per Fig. 8 / Fig. 9) a second movement command generator that generates a second movement command which does not include the target movement trajectory based on the numerical control program; (as per "or example, when A1=60 in an absolute command, the joint shaft moves to a position at 60°. Here, x represents a shaft name of a joint shaft, and is any of 1 to 6. For example, A1=abc (a, b, and c are numbers) in the shaft movement amount command system AM1 is a command for moving a joint of the robot 60 to an angle abc. The unit of Ax=_, which is a shaft movement amount, is an angle regardless of the settings of the robot 60." in ¶93, "As described above, a command in the shaft movement amount command system AM1 is a command for controlling the position of the robot 60 to be a position specified by a joint shaft of the robot 60 so that the movement time of the shaft to be moved by the longest movement distance is shortest." in ¶94) a transmitter that transmits a movement command generated by the movement command generation subject to the robot controller to move the control point of the robot. (as per "The robot controller 50X controls the robot 60 in accordance with the robot program sent from the numerical control device 1X. " in ¶45) the first movement command generator as a movement command generation subject when the robot is performing machining (as per “The function of G201 is a function of moving the robot 60 by linear interpolation (robot linear interpolation). Thus, G201 is a robot linear interpolation command for moving the robot 60 by linear interpolation” in ¶81, as per “In control system 100A, the robot 60 loads a raw workpiece 82 placed in a raw piece placement area 75 onto the machine tool 70 (ST1). The machine tool 70 machines the workpiece 82 by using a tool 71 (ST2)… Thereafter, the robot 60 grips a deburring tool 84, which is an external tool, with the robot hand 61, and the deburring tool 84 deburrs the machined workpiece 82 (ST4).” in ¶146) the second movement command generator as the movement command generation subject when the robot is performing transporting. (as per “A second command system of robot joint interpolation commands is a shaft movement amount command system. In the description below, the shaft movement amount command system of robot joint interpolation commands will be referred to as a shaft movement amount command system AM1. The shaft movement amount command system AM1 of robot joint interpolation commands is a command system for controlling the position of the robot 60 to be a position specified by a joint shaft of the robot 60.” in ¶92, as per “the robot 60 moves the machined workpiece to the temporary placement area 76 in N730, the robot 60 temporarily places the machined workpiece in the temporary placement area 76” in ¶185) Sagasaki fails to expressly disclose: a storage device that stores at least either tool information on a shape of a tool used by the robot or workpiece information on an installation position of a workpiece to be machined by the machine tool: a selector that selects the first movement command generator or selects the second movement command generator as the movement command generation subject; wherein the first movement command generator generates the first movement command by compensating a movement trajectory of the control point designated by the numerical control program based on at least either of the tool information or the workpiece information. Kado discloses of a numerical control system (as per Abstract), comprising a selector that selects the first movement command generator or selects the second movement command generator as the movement command generation subject. (as per “a switching unit that switches between a first processing mode in which a first position command for an amplifier, which drives a motor, is generated by performing an interpolation process and an acceleration/deceleration process on a program command in a program, and a second processing mode in which a position command for the amplifier is generated as a second position command generated every intra-amplifier control cycle by performing an acceleration/deceleration process on a command that is generated every intra-amplifier control cycle,” in ¶11, as per “When the initial mode parameter is a direct command (Yes at Step S1), the switching unit 13 switches the numerical control device 1 to the direct command mode (Step S2). In contrast, when the initial mode parameter is a normal processing command (No at Step S1), the switching unit 13 switches the numerical control device 1 to the normal processing mode (Step S3)” in ¶53, as per ¶28-¶29) In this way, Kado operates to improve machining performance (as per ¶69). Like Sagasaki, Kado is concerned with numerical control systems. It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the numerical control method unit as taught by Sagasaki with the numerical control system of Kado to enable another standard means of selecting a movement command. Such modification also allows the system to dynamically select between two movement commands (i.e. absolute command, joint interpolation, linear interpolation, etc.) (¶90-¶94, ¶111). Sagasaki and Kado fail to expressly disclose: a storage device that stores at least either tool information on a shape of a tool used by the robot or workpiece information on an installation position of a workpiece to be machined by the machine tool; wherein the first movement command generator generates the first movement command by compensating a movement trajectory of the control point designated by the numerical control program based on at least either of the tool information or the workpiece information. Saitou discloses of a numerical controller, comprising: a storage device that stores tool information on a shape of a tool used by the robot (as per “If a machining program is given the shape of a machining surface, the numerical controller 310 generates a tool path through tool shape compensation. If a machining program is given the shape of a machining surface, the machining program includes information pieces from information Inf1A to Information Inf5A as follows: (Inf1A) information about the shape of a machining surface; (Inf2A) information about a characteristic shape on a machining surface; (Inf3A) information about a tool used for machining; (Inf4A) information about a machining condition; and (Inf5A) information about order of machining” in ¶42, as per “The information Inf3A (=information about a tool used for machining) includes information about the type, dimension, etc. of a tool, for example” in ¶44) wherein the first movement command generator generates the first movement command by compensating a movement trajectory of the control point designated by the numerical control program based on the tool information. (as per “In another case, a machining program to be input into the numerical controller 310 is given a tool path resulting from offsetting of a tool shape to conform to the shape of a machining surface. If a machining program is given the shape of a machining surface, the numerical controller 310 generates a tool path through tool shape compensation” in ¶42, as per “If a machining program is given a tool path resulting from. offsetting of a tool shape to conform to the shape of a machining surface” in ¶43, ¶55) In this way, Saitou operates to generate/alter control-relevant path data using tool geometry (dimensions) and tool offset/compensation (¶42-¶45). Like Sagasaki and Kado, Saitou is concerned with numerical control systems. It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the system(s) of Sagasaki and Kado with the numerical controller of Saitou to yield a controller that adjusts the commanded trajectory using tool shape. Such modification also allows the system to offset a tool shape to conform to the shape of a machining surface (¶43). Saitou fails to expressly disclose: a storage device that stores workpiece information on an installation position of a workpiece to be machined by the machine tool; wherein the first movement command generator generates the first movement command by compensating a movement trajectory of the control point designated by the numerical control program based on the workpiece information. Brogaardh discloses of programming a material removal process carried out on an object by means of a robot, comprising: a storage device that stores workpiece information on an installation position of a workpiece to be machined by the machine tool; (as per “picking a reference object processed with a desired process result, measuring the geometry of the processed parts of the reference object and storing the measurement results,” in P2L30-36, as per “measuring the geometry of the work object after the removal process and storing the measurement results,” in P3L1-6) wherein the first movement command generator generates the first movement command by compensating a movement trajectory of the control point designated by the numerical control program based on the workpiece information. (as per “the deviations between the geometry of the robot processed work object and the processed reference object are calculated based on the stored measurements of the work object and the stored measurements of the reference object. In this way errors in the material removal of the robot are obtained and can be compensated for by adjusting the robot program throughout the programmed paths in such a way that the errors are compensated for” in P5L20-30, as per “The real pattern 35 is then measured by a scanner 36, which could be the same as the scanner 33, and the measured pattern profiles are compared with the CAD model or the processed reference object and the errors are then used to compensate the robot program iteratively. After that the production can start” in P12L15-25) In this way, Brogaardh operates to alter control-relevant path data using workpiece information (P5L20-30). Like Sagasaki, Kado, and Saitou, Brogaardh is concerned with numerical control systems (P3L25-25). It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the system(s) of Sagasaki, Kado, and Saitou with Brogaardh to yield a controller that adjusts the a trajectory using workpiece information. Such modification also allows the system to store workpiece measurement results and adjust/store a corresponding path for later selection (P12L15-25). As per Claim 2, the combination of Sagasaki, Kado, Saitou, and Brogaardh teaches or suggests all limitations of Claim 1. Sagasaki further discloses wherein: the first movement command includes a coordinate value of a designated position for each designated time obtained by time division of the target movement trajectory, (as per “In the coordinate command system CM1, a command of robot joint interpolation is issued in a format of “G200 RX_ RY_ RZ_ RA_ RB_ RC_ RS_ RT_ R_”. All of RX, RY, RZ, RA, RB, RC, RS, and RT are commands for the robot 60… RX_, RY_, and RZ_ in the coordinate command system CM1 are robot cartesian coordinate commands, and RA_, RB_, and RC_ are robot rotating coordinate commands. The robot cartesian coordinate commands are command specifying coordinates (X coordinate, Y coordinate, Z coordinate) in the cartesian coordinate system (X axis, Y axis, Z axis) of the robot 60. The robot rotating coordinate commands are commands specifying coordinates (A coordinate, B coordinate, C coordinate) in a rotating coordinate system (A axis, B axis, C axis) of the robot 60.” in ¶88-¶89, ¶66) when the first movement command generator is selected as the movement command generation subject, the transmitter transmits the first movement command to the robot controller at each of the designated time. (as per “The program converting unit 414 converts the robot joint interpolation into robot program instructions corresponding to the robot joint interpolation by using the robot command list information 101, the association information 102, the joint interpolation information 103, and the address information 104.” in ¶143) As per Claim 4, the combination of Sagasaki, Kado, Saitou, and Brogaardh teaches or suggests all limitations of Claim 1. Sagasaki fails to expressly discloses wherein the selector selects, as the movement command generation subject, one of the first movement command generator and the second movement command generator based on the numerical control program. See Claim 1 for teachings of Kado. Kado further discloses wherein the selector selects, as the movement command generation subject, one of the first movement command generator and the second movement command generator based on the numerical control program. (as per “a switching unit that switches between a first processing mode in which a first position command for an amplifier, which drives a motor, is generated by performing an interpolation process and an acceleration/deceleration process on a program command in a program, and a second processing mode in which a position command for the amplifier is generated as a second position command generated every intra-amplifier control cycle by performing an acceleration/deceleration process on a command that is generated every intra-amplifier control cycle,” in ¶11, as per “When the initial mode parameter is a direct command (Yes at Step S1), the switching unit 13 switches the numerical control device 1 to the direct command mode (Step S2). In contrast, when the initial mode parameter is a normal processing command (No at Step S1), the switching unit 13 switches the numerical control device 1 to the normal processing mode (Step S3)” in ¶53, as per ¶28-¶29) In this way, Kado operates to improve machining performance (as per ¶69). Like Sagasaki, Kado is concerned with numerical control systems. It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the system(s) of Sagasaki, Saitou, and Brogaardh with the numerical control system of Kado to enable another standard means of selecting a movement command. Such modification also allows the system to dynamically select between two movement commands (i.e. absolute command, joint interpolation, linear interpolation, etc.) (¶90-¶94, ¶111). As per Claim 7, Sagasaki discloses of a numerical control device (as per Abstract), comprising: a numerical control device that controls operation of a machine tool to machine a workpiece and generates a movement command for moving a control point of a robot, based on a numerical control program; (as per “A control system 100A is a system for controlling a machine tool 70 and a robot 60 by using numerical control (NC) programs” in ¶38, as per Fig. 1) a robot controller that is communicable with the numerical control device and controls operation of the robot based on a movement command transmitted from the numerical control device, (as per “the machine tool 70, the numerical control device 1X, and the robot controller 50X communicate with each other, and the robot controller 50X and the robot 60 communicate with each other.” in ¶41) wherein the numerical control device includes: a first movement command generator that calculates a target movement trajectory, which is a target of a movement trajectory of the control point, (as per "The function of G201 is a function of moving the robot 60 by linear interpolation (robot linear interpolation). Thus, G201 is a robot linear interpolation command for moving the robot 60 by linear interpolation." in ¶81) generates a first movement command including the target movement trajectory based on the numerical control program; (as per Fig. 8 / Fig. 9) a second movement command generator that generates a second movement command which does not include the target movement trajectory based on the numerical control program; (as per "or example, when A1=60 in an absolute command, the joint shaft moves to a position at 60°. Here, x represents a shaft name of a joint shaft, and is any of 1 to 6. For example, A1=abc (a, b, and c are numbers) in the shaft movement amount command system AM1 is a command for moving a joint of the robot 60 to an angle abc. The unit of Ax=_, which is a shaft movement amount, is an angle regardless of the settings of the robot 60." in ¶93, "As described above, a command in the shaft movement amount command system AM1 is a command for controlling the position of the robot 60 to be a position specified by a joint shaft of the robot 60 so that the movement time of the shaft to be moved by the longest movement distance is shortest." in ¶94) a transmitter that transmits a movement command generated by the movement command generation subject to the robot controller, (as per "The robot controller 50X controls the robot 60 in accordance with the robot program sent from the numerical control device 1X. " in ¶45) wherein the robot controller moves the control point by controlling operation of the robot based on the second movement command when receiving the second movement command, (as per “The function of G200 is a function of causing the robot 60 to operate by joint interpolation (robot joint interpolation). Thus, G200 is a robot joint interpolation command for causing the robot 60 to operate by joint interpolation” in ¶79) moves the control point by controlling operation of the robot to move the control point along the target movement trajectory when receiving the first movement command. (as per “The function of G201 is a function of moving the robot 60 by linear interpolation (robot linear interpolation). Thus, G201 is a robot linear interpolation command for moving the robot 60 by linear interpolation” ion ¶81) the first movement command generator as a movement command generation subject when the robot is performing machining (as per “The function of G201 is a function of moving the robot 60 by linear interpolation (robot linear interpolation). Thus, G201 is a robot linear interpolation command for moving the robot 60 by linear interpolation” in ¶81, as per “In control system 100A, the robot 60 loads a raw workpiece 82 placed in a raw piece placement area 75 onto the machine tool 70 (ST1). The machine tool 70 machines the workpiece 82 by using a tool 71 (ST2)… Thereafter, the robot 60 grips a deburring tool 84, which is an external tool, with the robot hand 61, and the deburring tool 84 deburrs the machined workpiece 82 (ST4).” in ¶146) the second movement command generator as the movement command generation subject when the robot is performing transporting. (as per “A second command system of robot joint interpolation commands is a shaft movement amount command system. In the description below, the shaft movement amount command system of robot joint interpolation commands will be referred to as a shaft movement amount command system AM1. The shaft movement amount command system AM1 of robot joint interpolation commands is a command system for controlling the position of the robot 60 to be a position specified by a joint shaft of the robot 60.” in ¶92, as per “the robot 60 moves the machined workpiece to the temporary placement area 76 in N730, the robot 60 temporarily places the machined workpiece in the temporary placement area 76” in ¶185) Sagasaki fails to expressly disclose: a storage device that stores at least either tool information on a shape of a tool used by the robot or workpiece information on an installation position of a workpiece to be machined by the machine tool; a selector that selects the first movement command generator or selects the second movement command generator as the movement command generation subject; wherein the first movement command generator generates the first movement command by compensating a movement trajectory of the control point designated by the numerical control program based on at least either of the tool information or the workpiece information, Kado discloses of a numerical control system (as per Abstract), comprising a selector that selects the first movement command generator or selects the second movement command generator as the movement command generation subject. (as per “a switching unit that switches between a first processing mode in which a first position command for an amplifier, which drives a motor, is generated by performing an interpolation process and an acceleration/deceleration process on a program command in a program, and a second processing mode in which a position command for the amplifier is generated as a second position command generated every intra-amplifier control cycle by performing an acceleration/deceleration process on a command that is generated every intra-amplifier control cycle,” in ¶11, as per “When the initial mode parameter is a direct command (Yes at Step S1), the switching unit 13 switches the numerical control device 1 to the direct command mode (Step S2). In contrast, when the initial mode parameter is a normal processing command (No at Step S1), the switching unit 13 switches the numerical control device 1 to the normal processing mode (Step S3)” in ¶53, as per ¶28-¶29) In this way, Kado operates to improve machining performance (as per ¶69). Like Sagasaki, Kado is concerned with numerical control systems. It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the numerical control method unit as taught by Sagasaki with the numerical control system of Kado to enable another standard means of selecting a movement command. Such modification also allows the system to dynamically select between two movement commands (i.e. absolute command, joint interpolation, linear interpolation, etc.) (¶90-¶94, ¶111). Sagasaki and Kado fail to expressly disclose: a storage device that stores at least either tool information on a shape of a tool used by the robot or workpiece information on an installation position of a workpiece to be machined by the machine tool; wherein the first movement command generator generates the first movement command by compensating a movement trajectory of the control point designated by the numerical control program based on at least either of the tool information or the workpiece information, Saitou discloses of a numerical controller, comprising: a storage device that stores tool information on a shape of a tool used by the robot (as per “If a machining program is given the shape of a machining surface, the numerical controller 310 generates a tool path through tool shape compensation. If a machining program is given the shape of a machining surface, the machining program includes information pieces from information Inf1A to Information Inf5A as follows: (Inf1A) information about the shape of a machining surface; (Inf2A) information about a characteristic shape on a machining surface; (Inf3A) information about a tool used for machining; (Inf4A) information about a machining condition; and (Inf5A) information about order of machining” in ¶42, as per “The information Inf3A (=information about a tool used for machining) includes information about the type, dimension, etc. of a tool, for example” in ¶44) wherein the first movement command generator generates the first movement command by compensating a movement trajectory of the control point designated by the numerical control program based on the tool information. (as per “In another case, a machining program to be input into the numerical controller 310 is given a tool path resulting from offsetting of a tool shape to conform to the shape of a machining surface. If a machining program is given the shape of a machining surface, the numerical controller 310 generates a tool path through tool shape compensation” in ¶42, as per “If a machining program is given a tool path resulting from. offsetting of a tool shape to conform to the shape of a machining surface” in ¶43, ¶55) In this way, Saitou operates to generate/alter control-relevant path data using tool geometry (dimensions) and tool offset/compensation (¶42-¶45). Like Sagasaki and Kado, Saitou is concerned with numerical control systems. It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the system(s) of Sagasaki and Kado with the numerical controller of Saitou to yield a controller that adjusts the commanded trajectory using tool shape. Such modification also allows the system to offset a tool shape to conform to the shape of a machining surface (¶43). Saitou fails to expressly disclose: a storage device that stores workpiece information on an installation position of a workpiece to be machined by the machine tool; wherein the first movement command generator generates the first movement command by compensating a movement trajectory of the control point designated by the numerical control program based on the workpiece information. Brogaardh discloses of programming a material removal process carried out on an object by means of a robot, comprising: a storage device that stores workpiece information on an installation position of a workpiece to be machined by the machine tool; (as per “picking a reference object processed with a desired process result, measuring the geometry of the processed parts of the reference object and storing the measurement results,” in P2L30-36, as per “measuring the geometry of the work object after the removal process and storing the measurement results,” in P3L1-6) wherein the first movement command generator generates the first movement command by compensating a movement trajectory of the control point designated by the numerical control program based on the workpiece information. (as per “the deviations between the geometry of the robot processed work object and the processed reference object are calculated based on the stored measurements of the work object and the stored measurements of the reference object. In this way errors in the material removal of the robot are obtained and can be compensated for by adjusting the robot program throughout the programmed paths in such a way that the errors are compensated for” in P5L20-30, as per “The real pattern 35 is then measured by a scanner 36, which could be the same as the scanner 33, and the measured pattern profiles are compared with the CAD model or the processed reference object and the errors are then used to compensate the robot program iteratively. After that the production can start” in P12L15-25) In this way, Brogaardh operates to alter control-relevant path data using workpiece information (P5L20-30). Like Sagasaki, Kado, and Saitou, Brogaardh is concerned with numerical control systems (P3L25-25). It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the system(s) of Sagasaki, Kado, and Saitou with Brogaardh to yield a controller that adjusts the a trajectory using workpiece information. Such modification also allows the system to store workpiece measurement results and adjust/store a corresponding path for later selection (P12L15-25). Claim(s) 6 is rejected under 35 U.S.C. 103 as being unpatentable over Sagasaki (US Pub. No. 20220011754) in view of Kado (US Pub. No. 20150127140) in view of Saitou (US Pub. No. 20190129382) in view of Brogaardh (WO Pub. No. 2008113807) in further view of Haraguchi (US Pub. No. 20150112459). As per Claim 6, the combination of Sagasaki, Kado, Saitou, and Brogaardh teaches or suggests all limitations of Claim 1. Sagasaki, Kado, Saitou, and Brogaardh fail to expressly disclose wherein the first movement command generator generates the first movement command by prefetching a command block executed after a predetermined time period from a present time among a plurality of command blocks constituting the numerical control program. Haraguchi discloses of a numerical control provided with program pre-reading function (as per Abstract), wherein the first movement command generator generates the first movement command by prefetching a command block executed after a predetermined time period from a present time among a plurality of command blocks constituting the numerical control program. (as per “in first means for determining the execution times of pre-read blocks, machining is performed in advance by using the machine tool, the execution times of each block when the machining is performed is measured, and the execution times thus measured are stored in a storage device of the controller of the machine tool.” in ¶97, as per “The execution time calculation unit may include: a division unit which divides a tool path into segments which are small sections;… a segment movement time calculation unit which calculates a time required for a tool to move along each segment, on the basis of the speed in the tangential direction as determined by the speed calculation unit; and a tool movement time calculation unit which determines, as a tool movement time, a sum of the times taken to move along each segment calculated by the segment movement time calculation unit, and the numerical controller may be configured so as to calculate a time required for the tool to move along a designated path in accordance with NC commands.” in ¶42) In this way, Haraguchi operates improve the prediction accuracy of the machining time and shorten the calculation time for predicting the machining time (as per ¶6). Like Sagasaki, Kado, Saitou, and Brogaardh, Haraguchi is concerned with numeric controllers. It would have been obvious for one of ordinary skill in the art before the effective filing date to have modified the system(s) of Sagasaki, Kado, Saitou, and Brogaardh with the numerical controller of Haraguchi to enable another standard means of generating a movement command by pre-reading blocks of a plurality of numerical control programs (¶97). Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. O’Hare (US Pub. No. 20210387301) discloses robotic alignment method for workpiece measuring systems. Any inquiry concerning this communication or earlier communications from the examiner should be directed to TYLER R ROBARGE whose telephone number is (703)756-5872. The examiner can normally be reached Monday - Friday, 8:00 am - 5:00 pm EST. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Ramón Mercado can be reached at (571) 270-5744. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /T.R.R./Examiner, Art Unit 3658 /TRUC M DO/Primary Examiner, Art Unit 3658
Read full office action

Prosecution Timeline

May 05, 2023
Application Filed
Feb 07, 2025
Non-Final Rejection — §103
May 20, 2025
Response Filed
Jul 28, 2025
Final Rejection — §103
Nov 24, 2025
Request for Continued Examination
Dec 04, 2025
Response after Non-Final Action
Dec 18, 2025
Non-Final Rejection — §103
Mar 27, 2026
Response Filed

Precedent Cases

Applications granted by this same examiner with similar technology. Study what changed to get past this examiner.

Patent 12583117
WORKPIECE PROCESSING APPARATUS
2y 5m to grant Granted Mar 24, 2026
Patent 12552029
CONTROLLING MOVEMENT TO AVOID RESONANCE
2y 5m to grant Granted Feb 17, 2026
Patent 12485922
SYSTEM AND METHOD FOR MODIFYING THE LONGITUDINAL POSITION OF A VEHICLE WITH RESPECT TO ANOTHER VEHICLE TO INCREASE PRIVACY
2y 5m to grant Granted Dec 02, 2025
Patent 12459129
METHOD FOR MOTION OPTIMIZED DEFECT INSPECTION BY A ROBOTIC ARM USING PRIOR KNOWLEDGE FROM PLM AND MAINTENANCE SYSTEMS
2y 5m to grant Granted Nov 04, 2025
Patent 12456343
SYSTEMS AND METHODS FOR SUPPLYING ENERGY TO AN AUTONOMOUS VEHICLE VIA A VIRTUAL INTERFACE
2y 5m to grant Granted Oct 28, 2025

AI Strategy Recommendation

Click below to generate an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

3-4
Expected OA Rounds
75%
Grant Probability
85%
With Interview (+10.0%)
2y 8m
Median Time to Grant
High
PTA Risk
Based on 20 resolved cases by this examiner