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 .
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.
Status of Claims
The amendment filed 06/17/2026 has been entered. Claims 1, 2, 5, 6, and 9 have been amended. Claims 3 and 7 have been canceled. Claims 1, 2, 4-6, and 8-13 are now pending.
Joint Inventors
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Response to Arguments
Applicant’s arguments with respect to the 35 USC 103 rejections set forth in the Final Office Action mailed 03/25/2026 have been fully considered but are moot because amendments to the claim language have necessitated new grounds of rejection set forth below.
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.
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.
Claims 1, 2, 4-6, and 8-13 are rejected under 35 U.S.C. 103 as being unpatentable over Gatland et al. (US 20200064471 A1), hereinafter Gatland in view of Noda (US 6642922 B1), hereinafter Noda.
Regarding claim 1, Gatland discloses:
A controller device comprising:
a processor configured to:
obtain first information corresponding to a detection result of detecting a relative positional relationship between a robot and a target object by a visual sensor (See at least [0105]: “ More generally, such techniques may be used to provide easier selection of an object or position within any type of volume data provided by volume data source, for example, including selecting particular aircraft within a 3D plot of aircraft in an airspace generated by an air traffic control system (e.g., using AIS, radar, beacons, and/or other ranging sensor system data), selecting particular charted objects within a 3D world chart or 3D astronomical chart (e.g., generated by ranging systems and/or astronomical observation systems), selecting particular plotted objects or positions within a 3D depiction or scatterplot of volume data (e.g., including complex data), and selecting particular objects and/or positions within a 3D medical scan (e.g., detected organs, tumors, and/or other structure within a CT scan, MRI volume, and/or other 3D medical scan data).”)
output, based on the first information, first coordinate system data representing a coordinate system for performing motion of the robot (See at least [0063]: “ In various embodiments, a logic device of system 100 (e.g., of orientation sensor 140 and/or other elements of system 100) may be adapted to determine parameters (e.g., using signals from various devices of system 100) for transforming a coordinate frame of sonar system 110 and/or other sensors of system 100 to/from a coordinate frame of mobile structure 101, at-rest and/or in-motion, and/or other coordinate frames, as described herein. One or more logic devices of system 100 may be adapted to use such parameters to transform a coordinate frame of sonar system 110 and/or other sensors of system 100 to/from a coordinate frame of orientation sensor 140 and/or mobile structure 101, for example.”)
generate an instruction to the robot based on the first coordinate system data (see at least [0054]: “Propulsion system 170 may be implemented as a propeller, turbine, or other thrust-based propulsion system, a mechanical wheeled and/or tracked propulsion system, a sail-based propulsion system, and/or other types of propulsion systems that can be used to provide motive force to mobile structure 101. In some embodiments, propulsion system 170 may be non-articulated, for example, such that the direction of motive force and/or thrust generated by propulsion system 170 is fixed relative to a coordinate frame of mobile structure 101. Non-limiting examples of non-articulated propulsion systems include, for example, an inboard motor for a watercraft with a fixed thrust vector, for example, or a fixed aircraft propeller or turbine.”)
Wherein the processor is further configured to provide, as a function implemented on an icon representing a function constituting a control program of the robot, a function of obtaining the first information and outputting, based on the first information, the first coordinate system data (see at least [0086]: “Portion 330 may include imagery representing bottom feature 207, fish 208, and submerged object 209, similar to objects illustrated in FIG. 2. For example, as shown in FIG. 3, portion 330 may include a number of contour lines 332 rendered by a controller (e.g., controller 221 of FIG. 2) to distinguish depths, relative distances, various characteristics of bathymetric data, and/or other characteristics of underwater features. Alternatively, or in addition, portion 330 may include icons and/or other types of graphical indicators configured to illustrate a position and/or distance to fish 208 or submerged object 209, and/or to distinguish between the two (e.g., based on fish detection processing performed on acoustic returns from fish 208 and/or submerged object 209).”)
Gatland does not explicitly disclose, but Noda in an analogous field of endeavor teaches wherein:
the icon is configured to set at least one of a source from which the first information is obtained, or a target coordinate system to which the first coordinate system data is set (see at least col. 8, lines 4-21: “At this time, for example, the two-dimensional coordinates on the display screen are designated as a target position using the left button of the mouse, and the target orientation is designated using the right button of the mouse. Otherwise, the information processing device can automatically determine the target orientation without the operator designating it. In this case, for example, the orientation of the hand 18 is determined such that the hand 18 faces the direction (vertical to the screen) of the normal vector on the displayed two-dimensional plane. Then, the information processing device transforms the coordinates from the absolute coordinate system to the base coordinate system (step S8) for the designated target position and orientation, and then performs an inverse kinematics operation to transform the target position and orientation from the base coordinate system to the joint angle coordinate system (step S9).”)
It would have been prima facie obvious for one of ordinary skill in the art before the effective filing date of the claimed invention, with a reasonable expectation for success, to combine the invention of Gatland with the method of coordinate system configuration as taught by Noda. This is because Noda’s invention solves the following problem as described in the background section of Noda’s disclosure: “Therefore, in this method, it is difficult to predict the position based on the data other than the predetermined coordinate system, and a plurality of applicable coordinate systems should be preliminarily set. However, to perform an arbitrary positioning process in a three-dimensional space, it is necessary but impossible to set a number of coordinate systems with rotations of the coordinate system taken into account. Since the display window is represented in a two-dimensional plane although a simulation result is represented in the three-dimensional CG on the screen, there is the problem that it is not suitable for displaying a positioning result in the three-dimensional space.”
Regarding claim 2, the combination of Gatland and Noda teaches:
The controller according to claim 1.
Gatland further discloses wherein the processor is further configured to obtain the first information indicating a detection result selected by a user input among one or more of detection results stored in a predetermined storage destination (see at least Fig. 6A which shows a user interface, and a user selecting a detection result from among a plurality of detection results.)
Regarding claim 4, the combination of Gatland and Noda teaches:
The controller according to claim 1.
Gatland further discloses wherein the first information indicates a detected position of the target object on a second coordinate system having a specific relationship with a world coordinate system, and the processor is further configured to output the first coordinate system data, based on second coordinate system data representing the second coordinate system, and the detected position of the target object on the second coordinate system (see at least [0031]: “In some embodiments, directional measurements may initially be referenced to a coordinate frame of a particular sensor (e.g., a sonar transducer assembly or other module of sonar system 110, and/or user interface 120) and be transformed (e.g., using parameters for one or more coordinate frame transformations) to be referenced to an absolute coordinate frame and/or a coordinate frame of mobile structure 101. In various embodiments, an absolute coordinate frame may be defined and/or correspond to a coordinate frame with one or more undefined axes, such as a horizontal plane local to mobile structure 101 and referenced to a local gravitational vector but with an unreferenced and/or undefined yaw reference (e.g., no reference to Magnetic North).”)
Regarding claim 5, Gatland discloses:
A controller comprising:
a processor configured to generate an instruction to a robot by using a first coordinate system as a coordinate system for performing motion of the robot (see at least [0054]: “Propulsion system 170 may be implemented as a propeller, turbine, or other thrust-based propulsion system, a mechanical wheeled and/or tracked propulsion system, a sail-based propulsion system, and/or other types of propulsion systems that can be used to provide motive force to mobile structure 101. In some embodiments, propulsion system 170 may be non-articulated, for example, such that the direction of motive force and/or thrust generated by propulsion system 170 is fixed relative to a coordinate frame of mobile structure 101. Non-limiting examples of non-articulated propulsion systems include, for example, an inboard motor for a watercraft with a fixed thrust vector, for example, or a fixed aircraft propeller or turbine.”)
obtain first information corresponding to a detection result of detecting a relative positional relationship between the robot and a target object by a visual sensor (See at least [0105]: “ More generally, such techniques may be used to provide easier selection of an object or position within any type of volume data provided by volume data source, for example, including selecting particular aircraft within a 3D plot of aircraft in an airspace generated by an air traffic control system (e.g., using AIS, radar, beacons, and/or other ranging sensor system data), selecting particular charted objects within a 3D world chart or 3D astronomical chart (e.g., generated by ranging systems and/or astronomical observation systems), selecting particular plotted objects or positions within a 3D depiction or scatterplot of volume data (e.g., including complex data), and selecting particular objects and/or positions within a 3D medical scan (e.g., detected organs, tumors, and/or other structure within a CT scan, MRI volume, and/or other 3D medical scan data).”)
Wherein the processor is further configured to provide, as a function implemented on an icon representing a function constituting a control program of the robot, a function of obtaining the first information and outputting, based on the first information, the first coordinate system data (see at least [0086]: “Portion 330 may include imagery representing bottom feature 207, fish 208, and submerged object 209, similar to objects illustrated in FIG. 2. For example, as shown in FIG. 3, portion 330 may include a number of contour lines 332 rendered by a controller (e.g., controller 221 of FIG. 2) to distinguish depths, relative distances, various characteristics of bathymetric data, and/or other characteristics of underwater features. Alternatively, or in addition, portion 330 may include icons and/or other types of graphical indicators configured to illustrate a position and/or distance to fish 208 or submerged object 209, and/or to distinguish between the two (e.g., based on fish detection processing performed on acoustic returns from fish 208 and/or submerged object 209).”)
Gatland does not explicitly disclose, but Noda in an analogous field of endeavor teaches:
shift the first coordinate system, based on the first information (see at least col. 8, lines 4-21: “At this time, for example, the two-dimensional coordinates on the display screen are designated as a target position using the left button of the mouse, and the target orientation is designated using the right button of the mouse. Otherwise, the information processing device can automatically determine the target orientation without the operator designating it. In this case, for example, the orientation of the hand 18 is determined such that the hand 18 faces the direction (vertical to the screen) of the normal vector on the displayed two-dimensional plane. Then, the information processing device transforms the coordinates from the absolute coordinate system to the base coordinate system (step S8) for the designated target position and orientation, and then performs an inverse kinematics operation to transform the target position and orientation from the base coordinate system to the joint angle coordinate system (step S9).”)
the icon is configured to set at least one of a source from which the first information is obtained, or a target coordinate system to which the first coordinate system data is set (see at least col. 8, lines 4-21: “At this time, for example, the two-dimensional coordinates on the display screen are designated as a target position using the left button of the mouse, and the target orientation is designated using the right button of the mouse. Otherwise, the information processing device can automatically determine the target orientation without the operator designating it. In this case, for example, the orientation of the hand 18 is determined such that the hand 18 faces the direction (vertical to the screen) of the normal vector on the displayed two-dimensional plane. Then, the information processing device transforms the coordinates from the absolute coordinate system to the base coordinate system (step S8) for the designated target position and orientation, and then performs an inverse kinematics operation to transform the target position and orientation from the base coordinate system to the joint angle coordinate system (step S9).”)
It would have been prima facie obvious for one of ordinary skill in the art before the effective filing date of the claimed invention, with a reasonable expectation for success, to combine the invention of Gatland with the method of coordinate system configuration as taught by Noda. This is because Noda’s invention solves the following problem as described in the background section of Noda’s disclosure: “Therefore, in this method, it is difficult to predict the position based on the data other than the predetermined coordinate system, and a plurality of applicable coordinate systems should be preliminarily set. However, to perform an arbitrary positioning process in a three-dimensional space, it is necessary but impossible to set a number of coordinate systems with rotations of the coordinate system taken into account. Since the display window is represented in a two-dimensional plane although a simulation result is represented in the three-dimensional CG on the screen, there is the problem that it is not suitable for displaying a positioning result in the three-dimensional space.”
Regarding claim 6, the combination of Gatland and Noda teaches:
The controller according to claim 5.
Gatland discloses:
wherein the processor is further configured to obtain the first information indicating a detection result selected by a user input among one or more of detection results stored in a predetermined storage destination (see at least Fig. 6A which shows a user interface, and a user selecting a detection result from among a plurality of detection results.)
Regarding claim 8, the combination of Gatland and Noda teaches:
The controller according to claim 5.
Gatland further discloses wherein the first information indicates a correction amount of a position of the target object on a second coordinate system having a specific relationship with a world coordinate system, and the processor is further configured to obtain shifted first coordinate system data as a result of shifting the first coordinate system, based on second coordinate system data representing the second coordinate system, the correction amount, and first coordinate system data representing the first coordinate system (see at least [0031]: “In some embodiments, directional measurements may initially be referenced to a coordinate frame of a particular sensor (e.g., a sonar transducer assembly or other module of sonar system 110, and/or user interface 120) and be transformed (e.g., using parameters for one or more coordinate frame transformations) to be referenced to an absolute coordinate frame and/or a coordinate frame of mobile structure 101. In various embodiments, an absolute coordinate frame may be defined and/or correspond to a coordinate frame with one or more undefined axes, such as a horizontal plane local to mobile structure 101 and referenced to a local gravitational vector but with an unreferenced and/or undefined yaw reference (e.g., no reference to Magnetic North).”)
Regarding claim 9, the combination of Gatland and Noda teaches:
The controller according to claim 5, further comprising:
a storage in which positional information about a predetermined position of the target object is stored (see at least [0040]: “ In embodiments where sonar system 110 is implemented with an orientation and/or position sensor, sonar system 110 may be configured to store such location/position information along with other sensor information (acoustic returns, temperature measurements, text descriptions, water depth, altitude, mobile structure speed, and/or other sensor and/or control information) available to system 100. In some embodiments, controller 130 may be configured to generate a look up table so that a user can select desired configurations of sonar.”)
wherein the processor is further configured to:
obtain second information indicating the predetermined position of the target object by touching up the predetermined position of the target object by the robot, and generate the instruction, based on the positional information stored in the storage and the second information (see at least [0038]: “In various embodiments, sonar system 110 may be implemented with optional orientation and/or position sensors (e.g., similar to orientation sensor 140, gyroscope/accelerometer 144, and/or GPS 146) that may be incorporated within the transducer assembly housing to provide three dimensional orientations and/or positions of the transducer assembly and/or transducer(s) for use when processing or post processing sonar data for display. The sensor information can be used to correct for movement of the transducer assembly between ensonifications to provide improved alignment of corresponding acoustic returns/samples, for example, and/or to generate imagery based on the measured orientations and/or positions of the transducer assembly. In other embodiments, an external orientation and/or position sensor can be used alone or in combination with an integrated sensor or sensors.”)
Regarding claim 10, the combination of Gatland and Noda teaches:
The controller according to claim 9.
Gatland further discloses wherein the processor is further configured to generate the instruction by obtaining a movement amount to a specific position of the robot on a coordinate system defined by the positional information stored in the storage, and applying the obtained movement amount as a movement amount in the first coordinate system (see at least [0046]: “ In some embodiments, user interface 120 may be adapted to accept user input including a user-defined target heading, route, and/or orientation for a transducer module, for example, and to generate control signals for steering sensor/actuator 150 and/or propulsion system 170 to cause mobile structure 101 to move according to the target heading, route, and/or orientation. In further embodiments, user interface 120 may be adapted to accept user input including a user-defined target attitude for an actuated device (e.g., sonar system 110) coupled to mobile structure 101, for example, and to generate control signals for adjusting an orientation of the actuated device according to the target attitude.”)
Regarding claim 11, the combination of Gatland and Noda teaches:
The controller according to claim 9.
Gatland further discloses wherein the processor is further configured to cause a tool center point (TCP) of the robot to touch up the predetermined position of the target object (see at least [0038]: “In various embodiments, sonar system 110 may be implemented with optional orientation and/or position sensors (e.g., similar to orientation sensor 140, gyroscope/accelerometer 144, and/or GPS 146) that may be incorporated within the transducer assembly housing to provide three dimensional orientations and/or positions of the transducer assembly and/or transducer(s) for use when processing or post processing sonar data for display. The sensor information can be used to correct for movement of the transducer assembly between ensonifications to provide improved alignment of corresponding acoustic returns/samples, for example, and/or to generate imagery based on the measured orientations and/or positions of the transducer assembly. In other embodiments, an external orientation and/or position sensor can be used alone or in combination with an integrated sensor or sensors.”)
Regarding claim 12, the combination of Gatland and Noda teaches:
The control device according to claim 9.
Gatland further discloses wherein the processor is further configured to obtain the first information as a relative movement amount between the target object and the robot by measuring the predetermined position of the target object by the visual sensor mounted on the robot before and after a relative positional relationship between the target object and the robot changes (see at least [0038]: “In various embodiments, sonar system 110 may be implemented with optional orientation and/or position sensors (e.g., similar to orientation sensor 140, gyroscope/accelerometer 144, and/or GPS 146) that may be incorporated within the transducer assembly housing to provide three dimensional orientations and/or positions of the transducer assembly and/or transducer(s) for use when processing or post processing sonar data for display. The sensor information can be used to correct for movement of the transducer assembly between ensonifications to provide improved alignment of corresponding acoustic returns/samples, for example, and/or to generate imagery based on the measured orientations and/or positions of the transducer assembly. In other embodiments, an external orientation and/or position sensor can be used alone or in combination with an integrated sensor or sensors.”)
Regarding claim 13, the combination of Gatland and Noda teaches:
The controller according to claim 12.
Gatland further discloses wherein the processor is further configured to shift the first coordinate system, based on the relative movement amount (see at least [0038]: “In various embodiments, sonar system 110 may be implemented with optional orientation and/or position sensors (e.g., similar to orientation sensor 140, gyroscope/accelerometer 144, and/or GPS 146) that may be incorporated within the transducer assembly housing to provide three dimensional orientations and/or positions of the transducer assembly and/or transducer(s) for use when processing or post processing sonar data for display. The sensor information can be used to correct for movement of the transducer assembly between ensonifications to provide improved alignment of corresponding acoustic returns/samples, for example, and/or to generate imagery based on the measured orientations and/or positions of the transducer assembly. In other embodiments, an external orientation and/or position sensor can be used alone or in combination with an integrated sensor or sensors.”)
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ELIZABETH NELESKI whose telephone number is (571)272-6064. The examiner can normally be reached 10 - 6.
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, THOMAS WORDEN can be reached at (571) 272-4876. 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.
/E.R.N./ Examiner, Art Unit 3658 /JASON HOLLOWAY/ Primary Examiner, Art Unit 3658