DETAILED ACTION
Claims 1-20 are currently pending and have been examined in this application.
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
This action is mad FINAL in response to the “amendment” and “remarks” filed 07/23/2026.
Allowable Subject Matter
Claim 10 objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
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.
Claim(s) 1-9, 11-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Yamamoto (US20190233027) in view of Nakamura (US20110137462).
Claim 1:
Yamamoto explicitly teaches:
A robot comprising: a sensor; a driver; a mass unit; a center of gravity moving device configured to change the center of gravity of the robot by moving the mass unit; memory storing instructions; and at least one processor;
(Yamamoto) – “FIG. 3 illustrates an outline of the traveling control system 100 of the mobile device 1 centered on the electronic arithmetic processor 20. This system is mainly constituted by the electronic arithmetic processor 20, the driving wheels 3a and 3b, the wheel drive mechanisms 4a and 4b, the driven wheel 5, the attitude angle detector 6, and the gravity center position adjustment mechanism 7.” (Para 0035)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“As illustrated in FIG. 12, the management device 120 includes a control device 120a such as a CPU, a storage medium 120b such as an HDD, an interface 120c for an external device, and an antenna 120d configured to perform wireless communication.” (Para 0071)
wherein the instructions, when executed by the at least one processor, cause the robot to: based on data obtained through the sensor and based on the robot traveling along a traveling direction, identify a first traveling parameter at a first time point, [based on data obtained through the sensor at the first time point], identif [that will occur] at a second time point after the first time point,
(Yamamoto) – “FIG. 3 illustrates an outline of the traveling control system 100 of the mobile device 1 centered on the electronic arithmetic processor 20. This system is mainly constituted by the electronic arithmetic processor 20, the driving wheels 3a and 3b, the wheel drive mechanisms 4a and 4b, the driven wheel 5, the attitude angle detector 6, and the gravity center position adjustment mechanism 7.” (Para 0035)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“In Flow 202, it is determined whether the driven wheel 5 has passed over the step or obstacle. Since a distance L between each of the driving wheels 3a and 3b and the driven wheel 5 is known in advance, it is possible to predict a presumable time t1=L/v until the driven wheel 5 comes into contact with the step or obstacle based on the actual traveling speed v when the driving wheels 3a and 3b come into contact with the step. When the driven wheel 5 has passed over the step after the time t1, a deviation speed of the actual traveling speed v with respect to the traveling speed command vref is temporarily generated due to the contact between the driven wheel 5 and the step or obstacle, but the actual traveling speed is not zero. On the other hand, when the driven wheel 5 is caught by the step or obstacle without passing over the step or obstacle, the mobile device is in the state of being incapable of traveling, and thus, the actual traveling speed becomes zero even if the traveling speed command vref is higher than zero. That is, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied after the time t1. Incidentally, the presumable time may be determined within a time range, such as from t1−t_off to t1+t_off, in consideration of an error of the actual traveling speed v. Further, the actual traveling speed v may be determined as zero, for example, when being equal to or lower than 0.5 m/s.” (Para 0045)
Examiner Note: Bracketed text not explicitly taught by primary reference, but is taught by non-primary reference later in the rejection. This notation will be used throughout the rejection except where noted otherwise.
control the center of gravity moving device to move the mass unit based on at least one of the first traveling parameter and the second traveling parameter, and
(Yamamoto) – “The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
control the driver to move the robot along the traveling direction after the mass unit has been moved, and
(Yamamoto) – “The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
Examiner Note: Fig. 4c shows the robot moving in the same direction as the mass.
wherein at least one of the first traveling parameter and the second traveling parameter is determined based on at least one of a posture of the robot, a traveling state of the robot, and a situation of the robot with respect to a traveling path.
(Yamamoto) – “The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
Yamamoto does not explicitly teach:
based on data obtained through the sensor at the first time point…that will occur
Nakamura, in the same field of endeavor of robot control, teaches:
based on data obtained through the sensor at the first time point, [identify a second traveling parameter] that will occur
(Nakamura) – “At S15, the step prediction unit 31 calculates the times T1R and T1L, which are the times the right and left wheels make contact with the step, respectively. More specifically, the step prediction unit 31 compares the obtained route plan with the calculated step location and identifies the nearest step on the route for the respective right and left wheels. Then, the times at which the respective right and left wheels make contact with the step are calculated based on the obtained speed plan, resulting in step contact times T1R and T1L. The heights H1R and H1L of the step to make contact are estimated from the map information.” (Para 0068)
“On the other hand, at S17, the step prediction unit 31 receives an image from the step detecting sensor 9 and subjects the image to image processing to obtain 3D data in order to identify the location of a step.” (Para 0070)
“At S18, the step prediction unit 31 calculates the times TR and TL at which the right and left wheels make contact with the step, respectively. More specifically, the step prediction unit 31 compares the obtained route plan with the calculated step location to identify the step on the route nearest to the right and left wheels.” (Para 0071)
“Then, the times at which the right and left wheels make contact with the step are calculated based on the obtained speed plan to determine times T2R and T2L. In addition, the heights H2R and H2L of the step that the right and left wheels will next make contact with are derived from the image supplied from the step detecting sensor 9 through image processing.” (Para 0072)
“At S19, the step prediction unit 31 makes comparisons between T1R and T2R and between T1L and T2L to select earlier contact times as TR and TL. The step prediction unit 31 also selects the step heights HR and HL corresponding to the selected TR and TL from the step heights H1R, H2R, H1L and H2L. Through the above-described processing, the step prediction unit 31 can predict when the right and left wheels make contact with the step and how high the step is.” (Para 0073)
“At S20, the suspension control unit 33 shown in FIG. 4 obtains, from the step prediction unit 31, the times TR and TL at which the right and left wheels make contact with a step and the heights HR and HL of the step.” (Para 0076)
“At S21, the suspension control unit 33 calculates an amount of CG (center of gravity) shift A.” (Para 0077)
Examiner Note: Bracketed text included for context.
Therefore, it would be obvious to one of ordinary skill in the art, before the effective filing date of the
claimed invention, to have modified the mobile device of Yamamoto with the robot travelling method
of Nakamura. One of ordinary skill in the art would have been motivated to make these
modifications with a reasonable expectation of success in order to “[provide] a mobile robot capable of mitigating impact from steps to prevent the mobile robot from toppling over and from changing the travel direction and deviating from the route due to lateral vibration.” (Nakamura Para 0012)
Claim 2:
Yamamoto in combination with the references relied upon in Claim 1 teach those respective limitations. Yamamoto further teaches:
wherein the instructions, when executed by the at least one processor, cause the robot to:
identify at least one of the posture of the robot at the first time point and the traveling state of the robot at the first time point as the first traveling parameter, based on the data obtained through the sensor at the first time point, and
(Yamamoto) – “The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“In Flow 202, it is determined whether the driven wheel 5 has passed over the step or obstacle. Since a distance L between each of the driving wheels 3a and 3b and the driven wheel 5 is known in advance, it is possible to predict a presumable time t1=L/v until the driven wheel 5 comes into contact with the step or obstacle based on the actual traveling speed v when the driving wheels 3a and 3b come into contact with the step. When the driven wheel 5 has passed over the step after the time t1, a deviation speed of the actual traveling speed v with respect to the traveling speed command vref is temporarily generated due to the contact between the driven wheel 5 and the step or obstacle, but the actual traveling speed is not zero. On the other hand, when the driven wheel 5 is caught by the step or obstacle without passing over the step or obstacle, the mobile device is in the state of being incapable of traveling, and thus, the actual traveling speed becomes zero even if the traveling speed command vref is higher than zero. That is, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied after the time t1. Incidentally, the presumable time may be determined within a time range, such as from t1−t_off to t1+t_off, in consideration of an error of the actual traveling speed v. Further, the actual traveling speed v may be determined as zero, for example, when being equal to or lower than 0.5 m/s.” (Para 0045)
identify at least one of the traveling state of the robot at the second time point and the situation with respect to the traveling path at the second time point as the second traveling parameter, based on the data obtained through the sensor at the first time point.
(Yamamoto) – “The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“In Flow 202, it is determined whether the driven wheel 5 has passed over the step or obstacle. Since a distance L between each of the driving wheels 3a and 3b and the driven wheel 5 is known in advance, it is possible to predict a presumable time t1=L/v until the driven wheel 5 comes into contact with the step or obstacle based on the actual traveling speed v when the driving wheels 3a and 3b come into contact with the step. When the driven wheel 5 has passed over the step after the time t1, a deviation speed of the actual traveling speed v with respect to the traveling speed command vref is temporarily generated due to the contact between the driven wheel 5 and the step or obstacle, but the actual traveling speed is not zero. On the other hand, when the driven wheel 5 is caught by the step or obstacle without passing over the step or obstacle, the mobile device is in the state of being incapable of traveling, and thus, the actual traveling speed becomes zero even if the traveling speed command vref is higher than zero. That is, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied after the time t1. Incidentally, the presumable time may be determined within a time range, such as from t1−t_off to t1+t_off, in consideration of an error of the actual traveling speed v. Further, the actual traveling speed v may be determined as zero, for example, when being equal to or lower than 0.5 m/s.” (Para 0045)
Claim 3:
Yamamoto in combination with the references relied upon in Claim 1 teach those respective limitations. Yamamoto further teaches:
wherein the instructions, when executed by the at least one processor, cause the robot to:
identify, based on at least one of the first traveling parameter and the second traveling parameter, that the robot, which is in a halt state on a plane at the first time point, is to move on the plane at the second time point, and
(Yamamoto) – “The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 205, it is determined whether the driven wheel 5 is in a state floating from the ground in order to pass over the step or obstacle as a result of further inclining the upper body 8 forward as illustrated in FIG. 4(c). Whether the driven wheel 5 floats is determined based on the attitude angle θ in the pitch direction of the lower body 2 detected by the attitude angle detector 6. For example, when the attitude angle θ of the lower body 2 is larger than an attitude angle at the time when it is determined that the driven wheel 5 is caught by the step or obstacle (representing the forward inclination), it is determined that the driven wheel 5 is in the floating state and the process transitions to Flow 206. If there is no change, it is determined that the driven wheel 5 is not in the floating state, the process proceeds to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0049)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
Examiner Note: the process shown in Fig. 4C of determining whether the driven wheel is floated represents a time when the robot is in a halt state. Either surface may correspond with a plane.
based on identifying that the robot is to move on the plane at the second time point, control the center of gravity moving device to move the mass unit toward a front surface of the robot if the robot is to move forward at the second time point or toward a rear surface of the robot if the robot is to move backward at the second time point.
(Yamamoto) – “The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 205, it is determined whether the driven wheel 5 is in a state floating from the ground in order to pass over the step or obstacle as a result of further inclining the upper body 8 forward as illustrated in FIG. 4(c). Whether the driven wheel 5 floats is determined based on the attitude angle θ in the pitch direction of the lower body 2 detected by the attitude angle detector 6. For example, when the attitude angle θ of the lower body 2 is larger than an attitude angle at the time when it is determined that the driven wheel 5 is caught by the step or obstacle (representing the forward inclination), it is determined that the driven wheel 5 is in the floating state and the process transitions to Flow 206. If there is no change, it is determined that the driven wheel 5 is not in the floating state, the process proceeds to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0049)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
Examiner Note: Per BRI, forward and backward are relative directions and may correspond with any direction.
Claim 4:
Yamamoto in combination with the references relied upon in Claim 3 teach those respective limitations. Yamamoto further teaches:
wherein the instructions, when executed by the at least one processor, cause the robot to:
based on identifying that the robot is to move forward on the plane at the second timepoint, control the center of gravity moving device to move the mass unit toward the front surface to a front location which is distanced from a reference position by a first distance, and
(Yamamoto) – “The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 205, it is determined whether the driven wheel 5 is in a state floating from the ground in order to pass over the step or obstacle as a result of further inclining the upper body 8 forward as illustrated in FIG. 4(c). Whether the driven wheel 5 floats is determined based on the attitude angle θ in the pitch direction of the lower body 2 detected by the attitude angle detector 6. For example, when the attitude angle θ of the lower body 2 is larger than an attitude angle at the time when it is determined that the driven wheel 5 is caught by the step or obstacle (representing the forward inclination), it is determined that the driven wheel 5 is in the floating state and the process transitions to Flow 206. If there is no change, it is determined that the driven wheel 5 is not in the floating state, the process proceeds to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0049)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
based on identifying that the robot is to move backward on the plane at the second time point, control the center of gravity moving device to move the mass unit toward the rear surface to a rear location which is distanced from the reference position by the first distance.
(Yamamoto) – “The mobile device 1 is configured such that an upper body 8 and a lower body 2 are connected by a gravity center position adjustment mechanism 7 so as to enable the upper body 8 to be inclined back and forth as illustrated in the side view.” (Para 0031)
“The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 205, it is determined whether the driven wheel 5 is in a state floating from the ground in order to pass over the step or obstacle as a result of further inclining the upper body 8 forward as illustrated in FIG. 4(c). Whether the driven wheel 5 floats is determined based on the attitude angle θ in the pitch direction of the lower body 2 detected by the attitude angle detector 6. For example, when the attitude angle θ of the lower body 2 is larger than an attitude angle at the time when it is determined that the driven wheel 5 is caught by the step or obstacle (representing the forward inclination), it is determined that the driven wheel 5 is in the floating state and the process transitions to Flow 206. If there is no change, it is determined that the driven wheel 5 is not in the floating state, the process proceeds to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0049)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
Examiner Note: As shown in Fig. 2, the upper body may be inclined either forward or backwards as necessary.
Claim 5:
Yamamoto in combination with the references relied upon in Claim 1 teach those respective limitations. Yamamoto further teaches:
wherein the instructions, when executed by the at least one processor, cause the robot to:
identify, based on at least one of the first traveling parameter and the second traveling parameter, that the robot, which is moving on a plane at a first speed at the first time point, is to move on the plane at a second speed at the second time point, and,
(Yamamoto) – “The mobile device 1 is configured such that an upper body 8 and a lower body 2 are connected by a gravity center position adjustment mechanism 7 so as to enable the upper body 8 to be inclined back and forth as illustrated in the side view.” (Para 0031)
“The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 205, it is determined whether the driven wheel 5 is in a state floating from the ground in order to pass over the step or obstacle as a result of further inclining the upper body 8 forward as illustrated in FIG. 4(c). Whether the driven wheel 5 floats is determined based on the attitude angle θ in the pitch direction of the lower body 2 detected by the attitude angle detector 6. For example, when the attitude angle θ of the lower body 2 is larger than an attitude angle at the time when it is determined that the driven wheel 5 is caught by the step or obstacle (representing the forward inclination), it is determined that the driven wheel 5 is in the floating state and the process transitions to Flow 206. If there is no change, it is determined that the driven wheel 5 is not in the floating state, the process proceeds to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0049)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
“In Flow 202, it is determined whether the driven wheel 5 has passed over the step or obstacle. Since a distance L between each of the driving wheels 3a and 3b and the driven wheel 5 is known in advance, it is possible to predict a presumable time t1=L/v until the driven wheel 5 comes into contact with the step or obstacle based on the actual traveling speed v when the driving wheels 3a and 3b come into contact with the step. When the driven wheel 5 has passed over the step after the time t1, a deviation speed of the actual traveling speed v with respect to the traveling speed command vref is temporarily generated due to the contact between the driven wheel 5 and the step or obstacle, but the actual traveling speed is not zero. On the other hand, when the driven wheel 5 is caught by the step or obstacle without passing over the step or obstacle, the mobile device is in the state of being incapable of traveling, and thus, the actual traveling speed becomes zero even if the traveling speed command vref is higher than zero. That is, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied after the time t1. Incidentally, the presumable time may be determined within a time range, such as from t1−t_off to t1+t_off, in consideration of an error of the actual traveling speed v. Further, the actual traveling speed v may be determined as zero, for example, when being equal to or lower than 0.5 m/s.” (Para 0045)
based on identifying that the robot is to move on the plane at the second speed at the second time point, control the center of gravity moving device to move the mass unit toward a front surface if the robot is to move forward at the second time point or toward a rear surface of the robot if the robot is to move backward at the second time point.
(Yamamoto) – “The mobile device 1 is configured such that an upper body 8 and a lower body 2 are connected by a gravity center position adjustment mechanism 7 so as to enable the upper body 8 to be inclined back and forth as illustrated in the side view.” (Para 0031)
“The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 205, it is determined whether the driven wheel 5 is in a state floating from the ground in order to pass over the step or obstacle as a result of further inclining the upper body 8 forward as illustrated in FIG. 4(c). Whether the driven wheel 5 floats is determined based on the attitude angle θ in the pitch direction of the lower body 2 detected by the attitude angle detector 6. For example, when the attitude angle θ of the lower body 2 is larger than an attitude angle at the time when it is determined that the driven wheel 5 is caught by the step or obstacle (representing the forward inclination), it is determined that the driven wheel 5 is in the floating state and the process transitions to Flow 206. If there is no change, it is determined that the driven wheel 5 is not in the floating state, the process proceeds to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0049)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
“In Flow 202, it is determined whether the driven wheel 5 has passed over the step or obstacle. Since a distance L between each of the driving wheels 3a and 3b and the driven wheel 5 is known in advance, it is possible to predict a presumable time t1=L/v until the driven wheel 5 comes into contact with the step or obstacle based on the actual traveling speed v when the driving wheels 3a and 3b come into contact with the step. When the driven wheel 5 has passed over the step after the time t1, a deviation speed of the actual traveling speed v with respect to the traveling speed command vref is temporarily generated due to the contact between the driven wheel 5 and the step or obstacle, but the actual traveling speed is not zero. On the other hand, when the driven wheel 5 is caught by the step or obstacle without passing over the step or obstacle, the mobile device is in the state of being incapable of traveling, and thus, the actual traveling speed becomes zero even if the traveling speed command vref is higher than zero. That is, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied after the time t1. Incidentally, the presumable time may be determined within a time range, such as from t1−t_off to t1+t_off, in consideration of an error of the actual traveling speed v. Further, the actual traveling speed v may be determined as zero, for example, when being equal to or lower than 0.5 m/s.” (Para 0045)
Examiner Note: Per BRI, forward and backward are relative directions and may correspond with any direction.
Claim 6:
Yamamoto in combination with the references relied upon in Claim 5 teach those respective limitations. Yamamoto further teaches:
wherein the instructions, when executed by the at least one processor, cause the robot to:
based on identifying that the robot is to move forward on the plane at the second time point, control the center of gravity moving device to move the mass unit toward the front surface to a front location which is distanced from a reference position by a second distance, and
(Yamamoto) – “The mobile device 1 is configured such that an upper body 8 and a lower body 2 are connected by a gravity center position adjustment mechanism 7 so as to enable the upper body 8 to be inclined back and forth as illustrated in the side view.” (Para 0031)
“The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 205, it is determined whether the driven wheel 5 is in a state floating from the ground in order to pass over the step or obstacle as a result of further inclining the upper body 8 forward as illustrated in FIG. 4(c). Whether the driven wheel 5 floats is determined based on the attitude angle θ in the pitch direction of the lower body 2 detected by the attitude angle detector 6. For example, when the attitude angle θ of the lower body 2 is larger than an attitude angle at the time when it is determined that the driven wheel 5 is caught by the step or obstacle (representing the forward inclination), it is determined that the driven wheel 5 is in the floating state and the process transitions to Flow 206. If there is no change, it is determined that the driven wheel 5 is not in the floating state, the process proceeds to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0049)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
based on identifying that the robot is to move backward on the plane at the second time point, control the center of gravity moving device to move the mass unit toward the rear surface to a rear location which is distanced from the reference position by the second distance, and
wherein the second distance is proportional to the second speed.
(Yamamoto) – “The mobile device 1 is configured such that an upper body 8 and a lower body 2 are connected by a gravity center position adjustment mechanism 7 so as to enable the upper body 8 to be inclined back and forth as illustrated in the side view.” (Para 0031)
“The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 205, it is determined whether the driven wheel 5 is in a state floating from the ground in order to pass over the step or obstacle as a result of further inclining the upper body 8 forward as illustrated in FIG. 4(c). Whether the driven wheel 5 floats is determined based on the attitude angle θ in the pitch direction of the lower body 2 detected by the attitude angle detector 6. For example, when the attitude angle θ of the lower body 2 is larger than an attitude angle at the time when it is determined that the driven wheel 5 is caught by the step or obstacle (representing the forward inclination), it is determined that the driven wheel 5 is in the floating state and the process transitions to Flow 206. If there is no change, it is determined that the driven wheel 5 is not in the floating state, the process proceeds to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0049)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
Examiner Note: Per BRI, forward and backward are relative directions and may correspond with any direction.
Claim 7:
Yamamoto in combination with the references relied upon in Claim 1 teach those respective limitations. Yamamoto further teaches:
wherein the instructions, when executed by the at least one processor, cause the robot to: identify, based on at least one of the first traveling parameter and the second traveling parameter, that a step exists on the traveling path in which the robot moves at the second time point, and
(Yamamoto) – “The process transitions to Flow 202 when the mobile device 1 comes into contact with the step or the like and is in the state of FIG. 4(a), or repeats the determination in Flow 201 in preparation for contact with a step or the like when the mobile device 1 is not in contact with the step.” (Para 0044)
“The mobile device 1 is configured such that an upper body 8 and a lower body 2 are connected by a gravity center position adjustment mechanism 7 so as to enable the upper body 8 to be inclined back and forth as illustrated in the side view.” (Para 0031)
“The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 205, it is determined whether the driven wheel 5 is in a state floating from the ground in order to pass over the step or obstacle as a result of further inclining the upper body 8 forward as illustrated in FIG. 4(c). Whether the driven wheel 5 floats is determined based on the attitude angle θ in the pitch direction of the lower body 2 detected by the attitude angle detector 6. For example, when the attitude angle θ of the lower body 2 is larger than an attitude angle at the time when it is determined that the driven wheel 5 is caught by the step or obstacle (representing the forward inclination), it is determined that the driven wheel 5 is in the floating state and the process transitions to Flow 206. If there is no change, it is determined that the driven wheel 5 is not in the floating state, the process proceeds to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0049)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
based on identifying that the step exists, control the center of gravity moving device to move the mass unit toward a front surface of the robot if the robot is to move forward or toward a rear surface of the robot if the robot is to move backward.
(Yamamoto) – “The process transitions to Flow 202 when the mobile device 1 comes into contact with the step or the like and is in the state of FIG. 4(a), or repeats the determination in Flow 201 in preparation for contact with a step or the like when the mobile device 1 is not in contact with the step.” (Para 0044)
“The mobile device 1 is configured such that an upper body 8 and a lower body 2 are connected by a gravity center position adjustment mechanism 7 so as to enable the upper body 8 to be inclined back and forth as illustrated in the side view.” (Para 0031)
“The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 205, it is determined whether the driven wheel 5 is in a state floating from the ground in order to pass over the step or obstacle as a result of further inclining the upper body 8 forward as illustrated in FIG. 4(c). Whether the driven wheel 5 floats is determined based on the attitude angle θ in the pitch direction of the lower body 2 detected by the attitude angle detector 6. For example, when the attitude angle θ of the lower body 2 is larger than an attitude angle at the time when it is determined that the driven wheel 5 is caught by the step or obstacle (representing the forward inclination), it is determined that the driven wheel 5 is in the floating state and the process transitions to Flow 206. If there is no change, it is determined that the driven wheel 5 is not in the floating state, the process proceeds to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0049)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
Claim 8:
Yamamoto in combination with the references relied upon in Claim 7 teach those respective limitations. Yamamoto further teaches:
wherein the instructions, when executed by the at least one processor, cause the robot to:
based on identifying that the robot is to move forward at the second time point, control the center of gravity moving device to move the mass unit toward the rear surface to a rear location which is distanced from a reference position by a third distance, and
(Yamamoto) – “The process transitions to Flow 202 when the mobile device 1 comes into contact with the step or the like and is in the state of FIG. 4(a), or repeats the determination in Flow 201 in preparation for contact with a step or the like when the mobile device 1 is not in contact with the step.” (Para 0044)
“The mobile device 1 is configured such that an upper body 8 and a lower body 2 are connected by a gravity center position adjustment mechanism 7 so as to enable the upper body 8 to be inclined back and forth as illustrated in the side view.” (Para 0031)
“The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 205, it is determined whether the driven wheel 5 is in a state floating from the ground in order to pass over the step or obstacle as a result of further inclining the upper body 8 forward as illustrated in FIG. 4(c). Whether the driven wheel 5 floats is determined based on the attitude angle θ in the pitch direction of the lower body 2 detected by the attitude angle detector 6. For example, when the attitude angle θ of the lower body 2 is larger than an attitude angle at the time when it is determined that the driven wheel 5 is caught by the step or obstacle (representing the forward inclination), it is determined that the driven wheel 5 is in the floating state and the process transitions to Flow 206. If there is no change, it is determined that the driven wheel 5 is not in the floating state, the process proceeds to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0049)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
“As described above, the traveling control unit 102 detects the contact of the driving wheels 3a and 3b with the step or obstacle, and further detects whether the driven wheel 5 has passed over the step or obstacle. When detecting the catch, the first gravity center position range 31 of the mobile device 1 is changed to the second gravity center position range 32, the inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is changed, and traveling is performed in the state where the driven wheel 5 floats from the ground so that it is possible to pass over the step or obstacle. After the pass-over, the gravity center position range and the inclination angle command ϕref are returned to the state before the detection of contact. Therefore, it is possible to prevent the mobile device from becoming immovable due to the step or obstacle by using a movement control means of the present embodiment.” (Para 0053)
“Incidentally, the gravity center position adjustment is performed by rotating the upper body 8 relative to the lower body 2 to perform forward inclination or backward inclination in the present embodiment, but the same effect can be obtained even when the gravity center position adjustment is performed by movement in the forward or backward direction in the traveling direction.” (Para 0054)
based on identifying that the robot is to move backward at the second time point, control the center of gravity moving device to move the mass unit toward the front surface to a front location which is distanced from the reference position by the third distance.
(Yamamoto) – “The process transitions to Flow 202 when the mobile device 1 comes into contact with the step or the like and is in the state of FIG. 4(a), or repeats the determination in Flow 201 in preparation for contact with a step or the like when the mobile device 1 is not in contact with the step.” (Para 0044)
“The mobile device 1 is configured such that an upper body 8 and a lower body 2 are connected by a gravity center position adjustment mechanism 7 so as to enable the upper body 8 to be inclined back and forth as illustrated in the side view.” (Para 0031)
“The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 205, it is determined whether the driven wheel 5 is in a state floating from the ground in order to pass over the step or obstacle as a result of further inclining the upper body 8 forward as illustrated in FIG. 4(c). Whether the driven wheel 5 floats is determined based on the attitude angle θ in the pitch direction of the lower body 2 detected by the attitude angle detector 6. For example, when the attitude angle θ of the lower body 2 is larger than an attitude angle at the time when it is determined that the driven wheel 5 is caught by the step or obstacle (representing the forward inclination), it is determined that the driven wheel 5 is in the floating state and the process transitions to Flow 206. If there is no change, it is determined that the driven wheel 5 is not in the floating state, the process proceeds to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0049)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
“As described above, the traveling control unit 102 detects the contact of the driving wheels 3a and 3b with the step or obstacle, and further detects whether the driven wheel 5 has passed over the step or obstacle. When detecting the catch, the first gravity center position range 31 of the mobile device 1 is changed to the second gravity center position range 32, the inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is changed, and traveling is performed in the state where the driven wheel 5 floats from the ground so that it is possible to pass over the step or obstacle. After the pass-over, the gravity center position range and the inclination angle command ϕref are returned to the state before the detection of contact. Therefore, it is possible to prevent the mobile device from becoming immovable due to the step or obstacle by using a movement control means of the present embodiment.” (Para 0053)
“Incidentally, the gravity center position adjustment is performed by rotating the upper body 8 relative to the lower body 2 to perform forward inclination or backward inclination in the present embodiment, but the same effect can be obtained even when the gravity center position adjustment is performed by movement in the forward or backward direction in the traveling direction.” (Para 0054)
Claim 9:
Yamamoto in combination with the references relied upon in Claim 7 teach those respective limitations. Yamamoto further teaches:
wherein the instructions, when executed by the at least one processor, cause the robot to:
determine a second speed of the robot at the second time point based on at least one of a height of the step, a first speed of the robot at the first time point, and a degree of congestion on the traveling path, and
(Yamamoto) – “The process transitions to Flow 202 when the mobile device 1 comes into contact with the step or the like and is in the state of FIG. 4(a), or repeats the determination in Flow 201 in preparation for contact with a step or the like when the mobile device 1 is not in contact with the step.” (Para 0044)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“As a method of detecting the contact with the step or obstacle, there is a method of performing determination based on whether a deviation speed which is a difference between the traveling speed command vref and the actual traveling speed v is generated. When the mobile device 1 comes into contact with the step or obstacle, an impact that hinders traveling is applied to the driving wheels 3a and 3b, and the actual traveling speed v instantaneously lags behind the traveling speed command vref. Thus, the step can be detected based on whether the deviation speed between the traveling speed command vref and the actual traveling speed v exceeds a predetermined threshold which is not generated during normal traveling, and it is possible to determine that the driving wheels 3a and 3b have come into contact with the step when the deviation speed exceeds the threshold.” (Para 0042)
“In Flow 202, it is determined whether the driven wheel 5 has passed over the step or obstacle. Since a distance L between each of the driving wheels 3a and 3b and the driven wheel 5 is known in advance, it is possible to predict a presumable time t1=L/v until the driven wheel 5 comes into contact with the step or obstacle based on the actual traveling speed v when the driving wheels 3a and 3b come into contact with the step. When the driven wheel 5 has passed over the step after the time t1, a deviation speed of the actual traveling speed v with respect to the traveling speed command vref is temporarily generated due to the contact between the driven wheel 5 and the step or obstacle, but the actual traveling speed is not zero. On the other hand, when the driven wheel 5 is caught by the step or obstacle without passing over the step or obstacle, the mobile device is in the state of being incapable of traveling, and thus, the actual traveling speed becomes zero even if the traveling speed command vref is higher than zero. That is, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied after the time t1. Incidentally, the presumable time may be determined within a time range, such as from t1−t_off to t1+t_off, in consideration of an error of the actual traveling speed v. Further, the actual traveling speed v may be determined as zero, for example, when being equal to or lower than 0.5 m/s.” (Para 0045)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 205, it is determined whether the driven wheel 5 is in a state floating from the ground in order to pass over the step or obstacle as a result of further inclining the upper body 8 forward as illustrated in FIG. 4(c). Whether the driven wheel 5 floats is determined based on the attitude angle θ in the pitch direction of the lower body 2 detected by the attitude angle detector 6. For example, when the attitude angle θ of the lower body 2 is larger than an attitude angle at the time when it is determined that the driven wheel 5 is caught by the step or obstacle (representing the forward inclination), it is determined that the driven wheel 5 is in the floating state and the process transitions to Flow 206. If there is no change, it is determined that the driven wheel 5 is not in the floating state, the process proceeds to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0049)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
Examiner Note: As written, only one of a height of the step, a first speed of the robot at the first time point, and a degree of congestion on the traveling path must be present to read on the claims. Yamamoto teaches consideration of a first speed of the robot in the determination of a second speed.
control the driver such that the robot moves along the traveling direction at the second speed after the mass unit has been moved to either a front location or a rear location.
(Yamamoto) – “The process transitions to Flow 202 when the mobile device 1 comes into contact with the step or the like and is in the state of FIG. 4(a), or repeats the determination in Flow 201 in preparation for contact with a step or the like when the mobile device 1 is not in contact with the step.” (Para 0044)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“As a method of detecting the contact with the step or obstacle, there is a method of performing determination based on whether a deviation speed which is a difference between the traveling speed command vref and the actual traveling speed v is generated. When the mobile device 1 comes into contact with the step or obstacle, an impact that hinders traveling is applied to the driving wheels 3a and 3b, and the actual traveling speed v instantaneously lags behind the traveling speed command vref. Thus, the step can be detected based on whether the deviation speed between the traveling speed command vref and the actual traveling speed v exceeds a predetermined threshold which is not generated during normal traveling, and it is possible to determine that the driving wheels 3a and 3b have come into contact with the step when the deviation speed exceeds the threshold.” (Para 0042)
“In Flow 202, it is determined whether the driven wheel 5 has passed over the step or obstacle. Since a distance L between each of the driving wheels 3a and 3b and the driven wheel 5 is known in advance, it is possible to predict a presumable time t1=L/v until the driven wheel 5 comes into contact with the step or obstacle based on the actual traveling speed v when the driving wheels 3a and 3b come into contact with the step. When the driven wheel 5 has passed over the step after the time t1, a deviation speed of the actual traveling speed v with respect to the traveling speed command vref is temporarily generated due to the contact between the driven wheel 5 and the step or obstacle, but the actual traveling speed is not zero. On the other hand, when the driven wheel 5 is caught by the step or obstacle without passing over the step or obstacle, the mobile device is in the state of being incapable of traveling, and thus, the actual traveling speed becomes zero even if the traveling speed command vref is higher than zero. That is, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied after the time t1. Incidentally, the presumable time may be determined within a time range, such as from t1−t_off to t1+t_off, in consideration of an error of the actual traveling speed v. Further, the actual traveling speed v may be determined as zero, for example, when being equal to or lower than 0.5 m/s.” (Para 0045)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 205, it is determined whether the driven wheel 5 is in a state floating from the ground in order to pass over the step or obstacle as a result of further inclining the upper body 8 forward as illustrated in FIG. 4(c). Whether the driven wheel 5 floats is determined based on the attitude angle θ in the pitch direction of the lower body 2 detected by the attitude angle detector 6. For example, when the attitude angle θ of the lower body 2 is larger than an attitude angle at the time when it is determined that the driven wheel 5 is caught by the step or obstacle (representing the forward inclination), it is determined that the driven wheel 5 is in the floating state and the process transitions to Flow 206. If there is no change, it is determined that the driven wheel 5 is not in the floating state, the process proceeds to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0049)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
Examiner Note: Figs. 4A-D demonstrate that the robot is controlled to the second speed after the mass is moved.
Claim 11:
Yamamoto explicitly teaches:
A method of moving a robot, the robot comprising a sensor and a mass unit, and the method comprising:
(Yamamoto) – “FIG. 3 illustrates an outline of the traveling control system 100 of the mobile device 1 centered on the electronic arithmetic processor 20. This system is mainly constituted by the electronic arithmetic processor 20, the driving wheels 3a and 3b, the wheel drive mechanisms 4a and 4b, the driven wheel 5, the attitude angle detector 6, and the gravity center position adjustment mechanism 7.” (Para 0035)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“As illustrated in FIG. 12, the management device 120 includes a control device 120a such as a CPU, a storage medium 120b such as an HDD, an interface 120c for an external device, and an antenna 120d configured to perform wireless communication.” (Para 0071)
based on data obtained through the sensor and based on the robot traveling along a traveling direction, identifying a first traveling parameter of the robot at a first time point; based on data obtained through the sensor at the first time point,that will occur at a second time point after the first time point;
(Yamamoto) – “FIG. 3 illustrates an outline of the traveling control system 100 of the mobile device 1 centered on the electronic arithmetic processor 20. This system is mainly constituted by the electronic arithmetic processor 20, the driving wheels 3a and 3b, the wheel drive mechanisms 4a and 4b, the driven wheel 5, the attitude angle detector 6, and the gravity center position adjustment mechanism 7.” (Para 0035)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“In Flow 202, it is determined whether the driven wheel 5 has passed over the step or obstacle. Since a distance L between each of the driving wheels 3a and 3b and the driven wheel 5 is known in advance, it is possible to predict a presumable time t1=L/v until the driven wheel 5 comes into contact with the step or obstacle based on the actual traveling speed v when the driving wheels 3a and 3b come into contact with the step. When the driven wheel 5 has passed over the step after the time t1, a deviation speed of the actual traveling speed v with respect to the traveling speed command vref is temporarily generated due to the contact between the driven wheel 5 and the step or obstacle, but the actual traveling speed is not zero. On the other hand, when the driven wheel 5 is caught by the step or obstacle without passing over the step or obstacle, the mobile device is in the state of being incapable of traveling, and thus, the actual traveling speed becomes zero even if the traveling speed command vref is higher than zero. That is, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied after the time t1. Incidentally, the presumable time may be determined within a time range, such as from t1−t_off to t1+t_off, in consideration of an error of the actual traveling speed v. Further, the actual traveling speed v may be determined as zero, for example, when being equal to or lower than 0.5 m/s.” (Para 0045)
moving the mass unit based on the at least one of the first traveling parameter and the second traveling parameter; and
(Yamamoto) – “The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
moving the robot along the traveling direction after the mass unit has been moved,
(Yamamoto) – “The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
Examiner Note: Fig. 4c shows the robot moving in the same direction as the mass.
wherein at least one of the first traveling parameter and the second traveling parameter is determined based on at least one of a posture of the robot, a traveling state of the robot, or a situation of the robot with respect to a traveling path.
(Yamamoto) – “The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
Yamamoto does not explicitly teach:
based on data obtained through the sensor at the first time point…that will occur
Nakamura, in the same field of endeavor of robot control, teaches:
based on data obtained through the sensor at the first time point, [identifying a second traveling parameter] that will occur
(Nakamura) – “At S15, the step prediction unit 31 calculates the times T1R and T1L, which are the times the right and left wheels make contact with the step, respectively. More specifically, the step prediction unit 31 compares the obtained route plan with the calculated step location and identifies the nearest step on the route for the respective right and left wheels. Then, the times at which the respective right and left wheels make contact with the step are calculated based on the obtained speed plan, resulting in step contact times T1R and T1L. The heights H1R and H1L of the step to make contact are estimated from the map information.” (Para 0068)
“On the other hand, at S17, the step prediction unit 31 receives an image from the step detecting sensor 9 and subjects the image to image processing to obtain 3D data in order to identify the location of a step.” (Para 0070)
“At S18, the step prediction unit 31 calculates the times TR and TL at which the right and left wheels make contact with the step, respectively. More specifically, the step prediction unit 31 compares the obtained route plan with the calculated step location to identify the step on the route nearest to the right and left wheels.” (Para 0071)
“Then, the times at which the right and left wheels make contact with the step are calculated based on the obtained speed plan to determine times T2R and T2L. In addition, the heights H2R and H2L of the step that the right and left wheels will next make contact with are derived from the image supplied from the step detecting sensor 9 through image processing.” (Para 0072)
“At S19, the step prediction unit 31 makes comparisons between T1R and T2R and between T1L and T2L to select earlier contact times as TR and TL. The step prediction unit 31 also selects the step heights HR and HL corresponding to the selected TR and TL from the step heights H1R, H2R, H1L and H2L. Through the above-described processing, the step prediction unit 31 can predict when the right and left wheels make contact with the step and how high the step is.” (Para 0073)
“At S20, the suspension control unit 33 shown in FIG. 4 obtains, from the step prediction unit 31, the times TR and TL at which the right and left wheels make contact with a step and the heights HR and HL of the step.” (Para 0076)
“At S21, the suspension control unit 33 calculates an amount of CG (center of gravity) shift A.” (Para 0077)
Examiner Note: Bracketed text included for context.
Therefore, it would be obvious to one of ordinary skill in the art, before the effective filing date of the
claimed invention, to have modified the mobile device of Yamamoto with the robot travelling method
of Nakamura. One of ordinary skill in the art would have been motivated to make these
modifications with a reasonable expectation of success in order to “[provide] a mobile robot capable of mitigating impact from steps to prevent the mobile robot from toppling over and from changing the travel direction and deviating from the route due to lateral vibration.” (Nakamura Para 0012)
Claim 12:
Rejected for the same reasons as Claim 2
Claim 13:
Rejected for the same reasons as Claim 3
Claim 14:
Rejected for the same reasons as Claim 4
Claim 15:
Rejected for the same reasons as Claim 5
Claim 16:
Rejected for the same reasons as Claim 6
Claim 17:
Rejected for the same reasons as Claim 7
Claim 18:
Rejected for the same reasons as Claim 8
Claim 19:
Rejected for the same reasons as Claim 9
Claim 20:
Yamamoto explicitly teaches:
A non-transitory computer readable recording medium storing computer instructions that cause a robot comprising a sensor and a mass unit to perform an operation when executed by at least one processor of the robot, wherein the operation comprises;
(Yamamoto) – “FIG. 3 illustrates an outline of the traveling control system 100 of the mobile device 1 centered on the electronic arithmetic processor 20. This system is mainly constituted by the electronic arithmetic processor 20, the driving wheels 3a and 3b, the wheel drive mechanisms 4a and 4b, the driven wheel 5, the attitude angle detector 6, and the gravity center position adjustment mechanism 7.” (Para 0035)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“As illustrated in FIG. 12, the management device 120 includes a control device 120a such as a CPU, a storage medium 120b such as an HDD, an interface 120c for an external device, and an antenna 120d configured to perform wireless communication.” (Para 0071)
based on data obtained through the sensor and based on the robot traveling along a traveling direction, identifying a first traveling parameter of the robot at a first time point; based on data obtained through the sensor at the first time point, that will occur at a second time point after the first time point
(Yamamoto) – “FIG. 3 illustrates an outline of the traveling control system 100 of the mobile device 1 centered on the electronic arithmetic processor 20. This system is mainly constituted by the electronic arithmetic processor 20, the driving wheels 3a and 3b, the wheel drive mechanisms 4a and 4b, the driven wheel 5, the attitude angle detector 6, and the gravity center position adjustment mechanism 7.” (Para 0035)
“In the traveling route calculation unit 101, the traveling route is detected based on a position where the mobile device 1 is located and the detection result of the environmental camera, the sensor, or the like, a traveling speed command vref and a traveling direction command ψref are calculated and output to the traveling control unit 102. In the traveling control unit 102, a current command I0_ref to be output to the driving wheel control units 103a and 103b is calculated based on the traveling speed command vref and an actual traveling speed v calculated using detection results of the position sensors 105a and 105b.” (Para 0037)
“In Flow 202, it is determined whether the driven wheel 5 has passed over the step or obstacle. Since a distance L between each of the driving wheels 3a and 3b and the driven wheel 5 is known in advance, it is possible to predict a presumable time t1=L/v until the driven wheel 5 comes into contact with the step or obstacle based on the actual traveling speed v when the driving wheels 3a and 3b come into contact with the step. When the driven wheel 5 has passed over the step after the time t1, a deviation speed of the actual traveling speed v with respect to the traveling speed command vref is temporarily generated due to the contact between the driven wheel 5 and the step or obstacle, but the actual traveling speed is not zero. On the other hand, when the driven wheel 5 is caught by the step or obstacle without passing over the step or obstacle, the mobile device is in the state of being incapable of traveling, and thus, the actual traveling speed becomes zero even if the traveling speed command vref is higher than zero. That is, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied after the time t1. Incidentally, the presumable time may be determined within a time range, such as from t1−t_off to t1+t_off, in consideration of an error of the actual traveling speed v. Further, the actual traveling speed v may be determined as zero, for example, when being equal to or lower than 0.5 m/s.” (Para 0045)
moving the mass unit based on the at least one of the first traveling parameter and the second traveling parameter; and
(Yamamoto) – “The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
moving the robot along the traveling direction after the mass unit has been moved,
(Yamamoto) – “The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
“In Flow 206, it is determined whether the traveling speed command vref>0 and the actual traveling speed v>0 are satisfied, that is, whether the driven wheel 5 has passed over the step, which is similar to Flow 202. If both of the inequalities are satisfied, it is determined that the vehicle has passed over the step and the process transitions to Flow 207. If any inequality is not satisfied, it is determined that the vehicle has not passed over the step, the process transitions to Flow 204, and the inclination angle command ϕref is further increased.” (Para 0050)
Examiner Note: Fig. 4c shows the robot moving in the same direction as the mass.
wherein at least one of the first traveling parameter and the second traveling parameter is determined based on at least one of a posture of the robot, a traveling state of the robot, or a situation of the robot with respect to a traveling path.
(Yamamoto) – “The upper body 8 is connected to the lower body 2 via the gravity center position adjustment mechanism 7 as illustrated in the side view and the top view. The gravity center position adjustment mechanism 7 is provided with a motor, and can incline the upper body 8 in the arrow direction (pitch direction) with respect to the lower body 2 by rotating the motor (for example, as illustrated in FIG. 2, an attitude inclined forward or backward can be taken).” (Para 0033)
“The gravity center position adjustment mechanism 7 is constituted by an upper body attitude control unit 103c, a drive motor 104c, and a position sensor 105c. In the traveling control unit 102, a gravity center position of the mobile device 1 is calculated, and an inclination angle command ϕref of the upper body 8 with respect to the lower body 2 is calculated in accordance with acceleration or deceleration of the mobile device 1 or the like such that the gravity center position of the mobile device 1 always exists within a first gravity center position range 31 where the mobile device 1 can travel stably (for example, within a rectangular range surrounded by contact points of the two driving wheels 3a and 3b and the single driven wheel 5 with the ground).” (Para 0039)
“In Flow 204, the inclination angle command ϕref is changed to a forward inclination direction within the range where the gravity center position of the mobile device 1 falls within the second gravity center position range 32, and the process transitions to Flow 205.” (Para 0048)
Yamamoto does not explicitly teach:
based on data obtained through the sensor at the first time point…that will occur
Nakamura, in the same field of endeavor of robot control, teaches:
based on data obtained through the sensor at the first time point, [identifying a second traveling parameter] that will occur
(Nakamura) – “At S15, the step prediction unit 31 calculates the times T1R and T1L, which are the times the right and left wheels make contact with the step, respectively. More specifically, the step prediction unit 31 compares the obtained route plan with the calculated step location and identifies the nearest step on the route for the respective right and left wheels. Then, the times at which the respective right and left wheels make contact with the step are calculated based on the obtained speed plan, resulting in step contact times T1R and T1L. The heights H1R and H1L of the step to make contact are estimated from the map information.” (Para 0068)
“On the other hand, at S17, the step prediction unit 31 receives an image from the step detecting sensor 9 and subjects the image to image processing to obtain 3D data in order to identify the location of a step.” (Para 0070)
“At S18, the step prediction unit 31 calculates the times TR and TL at which the right and left wheels make contact with the step, respectively. More specifically, the step prediction unit 31 compares the obtained route plan with the calculated step location to identify the step on the route nearest to the right and left wheels.” (Para 0071)
“Then, the times at which the right and left wheels make contact with the step are calculated based on the obtained speed plan to determine times T2R and T2L. In addition, the heights H2R and H2L of the step that the right and left wheels will next make contact with are derived from the image supplied from the step detecting sensor 9 through image processing.” (Para 0072)
“At S19, the step prediction unit 31 makes comparisons between T1R and T2R and between T1L and T2L to select earlier contact times as TR and TL. The step prediction unit 31 also selects the step heights HR and HL corresponding to the selected TR and TL from the step heights H1R, H2R, H1L and H2L. Through the above-described processing, the step prediction unit 31 can predict when the right and left wheels make contact with the step and how high the step is.” (Para 0073)
“At S20, the suspension control unit 33 shown in FIG. 4 obtains, from the step prediction unit 31, the times TR and TL at which the right and left wheels make contact with a step and the heights HR and HL of the step.” (Para 0076)
“At S21, the suspension control unit 33 calculates an amount of CG (center of gravity) shift A.” (Para 0077)
Examiner Note: Bracketed text included for context.
Therefore, it would be obvious to one of ordinary skill in the art, before the effective filing date of the
claimed invention, to have modified the mobile device of Yamamoto with the robot travelling method
of Nakamura. One of ordinary skill in the art would have been motivated to make these
modifications with a reasonable expectation of success in order to “[provide] a mobile robot capable of mitigating impact from steps to prevent the mobile robot from toppling over and from changing the travel direction and deviating from the route due to lateral vibration.” (Nakamura Para 0012)
Response to Arguments
The Claim Objection mailed 04/23/2026 has been withdrawn because the amendment filed 07/23/2026 successfully overcomes this objection.
The Specification Objection mailed 04/23/2026 has been withdrawn because the amendment filed 07/23/2026 successfully overcomes this objection.
Applicant’s arguments with respect to the 35 U.S.C. 102 rejection mailed 04/23/2026 have been considered but are not convincing.
Specifically, all claims are now rejected under 35 U.S.C. 103 over Yamamoto in view of Nakamura as necessitated by amendment. As such, no claims are now rejected under 35 U.S.C. 102. Examiner believes the combination of Yamamoto and Nakamura teaches all claimed limitations as evidenced in the rejection rationale above.
As such, all remaining claims remain rejected over the prior art.
Conclusion
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 DAVID RUBEN PEDERSEN whose telephone number is (571)272-9696. The examiner can normally be reached M-Th: 07:00 -16:00 Eastern.
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, Ramon 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.
/DAVID RUBEN PEDERSEN/Examiner, Art Unit 3658