WO2022075082A1 - 自律移動装置、制御方法、及びプログラム - Google Patents
自律移動装置、制御方法、及びプログラム Download PDFInfo
- Publication number
- WO2022075082A1 WO2022075082A1 PCT/JP2021/034954 JP2021034954W WO2022075082A1 WO 2022075082 A1 WO2022075082 A1 WO 2022075082A1 JP 2021034954 W JP2021034954 W JP 2021034954W WO 2022075082 A1 WO2022075082 A1 WO 2022075082A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- target
- control
- speed
- control unit
- attitude angle
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000013519 translation Methods 0.000 claims abstract description 16
- 230000006870 function Effects 0.000 claims description 9
- 230000001133 acceleration Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 24
- 238000012545 processing Methods 0.000 description 17
- 238000004140 cleaning Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003028 elevating effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
Definitions
- the present disclosure relates to an autonomous mobile device, a control method, and a program, and more particularly to an autonomous mobile device, a control method, and a program capable of operating at a more accurate time.
- Patent Document 1 discloses an autonomous moving device that sets a waypoint when moving based on information on the surrounding environment.
- This disclosure was made in view of such a situation, and is intended to enable operation at a more accurate time.
- the autonomous movement device includes a control unit that controls follow-up travel based on a target trajectory including a plurality of control target points, and the control target points are a target arrival time, designated coordinates, and designated posture angle.
- the indicated translational speed, and the indicated rotation speed, and the control unit, at the control target point travels in the direction of travel based on the target attitude angle determined based on the indicated attitude angle and the attitude angle of the aircraft. It is an autonomous mobile device that controls.
- the autonomous moving device controls the follow-up running based on the target trajectory including a plurality of control target points, and the control target points are the target arrival time, the indicated coordinates, and the indicated posture angle.
- the program of one aspect of the present disclosure includes a control unit for controlling a follow-up running of a computer based on a target trajectory including a plurality of control target points, and the control target points are a target arrival time, indicated coordinates, and indicated posture. Including at least the angle, the indicated translational speed, and the indicated rotation speed, the control unit advances at the control target point based on the target attitude angle determined based on the indicated attitude angle and the attitude angle of the aircraft. It is a program that functions as an autonomous moving device that controls the direction.
- follow-up running is controlled based on a target trajectory including a plurality of control target points.
- the control target point includes at least a target arrival time, a designated coordinate, a designated posture angle, a designated translation speed, and a designated rotation speed, and is determined at the control target point based on the designated posture angle.
- the traveling direction is controlled based on the target attitude angle and the attitude angle of the aircraft.
- the autonomous mobile device on one aspect of the present disclosure may be an independent device or an internal block constituting one device.
- FIG. 1 and 2 show an example of an external configuration of a robotic apparatus to which the present disclosure is applied.
- FIG. 1 shows a top view, a front view, and a side view of the robot device to which the present disclosure is applied.
- FIG. 2 shows a state in which the display in the robot device to which the present disclosure is applied is movable.
- the robot device 10 is an autonomous robot. Further, the robot device 10 is a mobile robot (autonomous mobile robot) having a moving mechanism such as wheels, and can freely move in the space.
- a mobile robot autonomous mobile robot having a moving mechanism such as wheels, and can freely move in the space.
- the robot device 10 has a substantially rectangular parallelepiped shape, and has a display capable of displaying display information such as an image on the upper surface thereof.
- the display (screen) on the upper surface is movable, and its posture can be fixed by adjusting it to a desired angle with respect to a flat surface (moving surface such as a floor surface or the ground).
- FIG. 3 shows an example of a component of a robotic apparatus to which the present disclosure is applied.
- the robot device 10 includes a control unit 101 for controlling the operation of each part, a video display unit 102 including a display for displaying video, and a screen raising / lowering mechanism including a mechanism for raising and lowering the video display unit 102. It has a unit 103.
- the thin plate-shaped image display unit 102 provided on the upper surface of the housing of the robot device 10 is movable by the screen elevating unit 103 and fixed in a desired posture.
- the video display unit 102 can move around the lower end portion thereof, and when the video display unit 102 opens upward, the inside of the housing is exposed to the outside.
- the robot device 10 has a left motor encoder 104-1 and a left motor 105-1 and a right motor encoder 104-2 and a right motor 105-2.
- the robot device 10 uses a drive type that is a differential two-wheel drive type, and by operating the left motor 105-1 and the right motor 105-2, respectively, the robot device 10 can be moved by the left and right wheels.
- the left motor encoder 104-1 and the right motor encoder 104-2 detect the amount of rotational movement of the left motor 105-1 and the right motor 105-2.
- the robot device 10 has various sensors such as sensors 106-1 to 106-3.
- the sensor 106 includes an IMU (Inertial Measurement Unit), LiDAR (Light Detection and Ringing), a position sensor, a camera, and the like.
- the robot device 10 operates as an autonomous mobile robot by using sensor signals detected by various sensors.
- the battery unit 107 supplies electric power to each part of the robot device 10.
- FIG. 4 shows an example of a functional configuration of a robotic apparatus to which the present disclosure is applied.
- the robot device 10 includes a path tracking control unit 151, a calculation unit 152, a translational speed control unit 153, a calculation unit 154, a traveling direction control unit 155, a calculation unit 156, a calculation unit 157, an angular velocity control unit 158, and a left / right wheel distribution unit 159. It has a left-right coordinated torque limiter 160, a left torque control unit 161-1, a right torque control unit 161-2, an aircraft speed estimation unit 162, an attitude calculation unit 163, and a self-position calculation unit 164.
- the path tracking control unit 151 to the self-position calculation unit 164 are realized by a processor such as a CPU included in the control unit 101 executing a program.
- the robot device 10 has an HW (Hardware) unit 171.
- the HW unit 171 includes a motor driver 181-1, a motor driver 181-2, left and right wheel speed sensors 182, IMU183, and a positioning unit 184.
- the left and right wheel speed sensors 182 the above-mentioned left motor encoder 104-1 and right motor encoder 104-2 may be used.
- the IMU 183 and the positioning unit 184 correspond to the sensor 106 described above.
- Target trajectory information according to user settings, posture information from the subsequent stage, and self-position information are input to the route tracking control unit 151, respectively.
- the route tracking control unit 151 performs control for traveling following the target trajectory (the route to which the target time is added) based on the target trajectory information, the posture information, and the self-position information.
- the target trajectory information is information about the target trajectory including a plurality of control target points.
- each control target point includes at least a target arrival time, designated coordinates, designated attitude angle, designated translational speed, and designated rotation speed.
- Attitude information is information about the attitude of the aircraft.
- the posture information is calculated by the posture calculation unit 163.
- the self-position information is information regarding the position of the aircraft.
- the self-position information is calculated by the self-position calculation unit 164.
- the physical structural part of the robot device 10 is also referred to as an airframe.
- the route tracking control unit 151 determines the target speed, the target attitude angle, and the target angular velocity based on the target trajectory information, the attitude information, and the self-position information.
- the path tracking control unit 151 outputs the target speed to the calculation unit 152, the target attitude angle to the calculation unit 154, and the target angular velocity to the calculation unit 156.
- the calculation unit 152 obtains the difference between the target speed from the path tracking control unit 151 and the speed of the machine from the machine speed estimation unit 162, and outputs the calculation result to the translation speed control unit 153.
- the translation speed control unit 153 controls the translation speed based on the calculation result from the calculation unit 152.
- the translation speed is controlled to be accelerated or decelerated so that the vehicle travels at the target speed, and the torque in the traveling direction according to the control is output to the left and right wheel distribution units 159.
- the translational speed is the speed at which the center position (center position of the left and right wheels) of the robot device 10 changes.
- the calculation unit 154 obtains the difference between the target attitude angle from the path tracking control unit 151 and the attitude angle (attitude angle in the yaw direction) of the aircraft from the attitude calculation unit 163, and obtains the calculation result of the calculation result in the traveling direction control unit 155. Output to.
- the traveling direction control unit 155 controls the traveling direction based on the calculation result from the calculation unit 154. In the control of the traveling direction, for example, the control for realizing the super-credit turning is performed, and the control value corresponding to the control is output to the calculation unit 156.
- the calculation unit 156 obtains the sum of the target angular velocity from the path tracking control unit 151 and the control value from the traveling direction control unit 155, and outputs the calculation result to the calculation unit 157.
- the target angular velocity in the yaw direction target yaw angular velocity
- the calculation unit 157 obtains the difference between the target angular velocity (target angular velocity in the yaw direction) from the calculation unit 156 and the angular velocity (angular velocity in the yaw direction) of the aircraft from the HW unit 171 (IMU183), and obtains the calculation result. It is output to the angular velocity control unit 158.
- the angular velocity control unit 158 controls the angular velocity based on the calculation result from the calculation unit 157. In the control of the angular velocity, the control for changing the angular velocity is performed, and the torque in the rotational direction corresponding to the control is output to the left and right wheel distribution units 159.
- the left / right wheel distribution unit 159 applies the torque in the traveling direction from the translational speed control unit 153 and the torque in the rotational direction from the angular velocity control unit 158 to the left and right wheels of the machine (the left motor 105-1 and the right motor 105-2). And output to the left-right coordinated torque limiter 160.
- the left-right coordinated torque limiter 160 performs torque limit processing in left-right coordination with respect to the torque target value distributed for the left and right wheels from the left-right wheel distribution unit 159.
- the torque target value of the left motor 105-1 subjected to the left-right coordinated torque limit processing is output to the left torque control unit 161-1.
- the torque target value of the right motor 105-2 subjected to the left-right coordinated torque limit processing is output to the right torque control unit 161-2.
- the left torque control unit 161-1 controls the motor driver 181-1 based on the torque target value of the left motor 105-1 from the left / right coordinated torque limiter 160.
- the motor driver 181-1 drives the left motor 105-1 according to the control from the left torque control unit 161-1.
- the right torque control unit 161-2 controls the motor driver 181-2 based on the torque target value of the right motor 105-2 from the left / right coordinated torque limiter 160.
- the motor driver 181-2 drives the right motor 105-2 according to the control from the right torque control unit 161-2.
- the left and right wheel speed sensors 182 are left and right wheel encoders such as rotary encoders provided on the left motor 105-1 and the right motor 105-2, and estimate the speed of the machine such as an output signal according to the amount of mechanical displacement of the rotation of the motor. Output to unit 162.
- the left / right wheel speed sensor 182 is not limited to the left / right wheel encoder, and may be, for example, a resolver or a hall sensor.
- the aircraft speed estimation unit 162 estimates the speed of the aircraft based on the output signals from the left and right wheel speed sensors 182, and outputs the speed to the calculation unit 152.
- the IMU183 detects the angular velocity and acceleration with a 3-axis gyro and a 3-axis accelerometer, and outputs the detection signals to the calculation unit 157 and the attitude calculation unit 163.
- the attitude calculation unit 163 calculates (estimates) the attitude angle of the aircraft based on the detection signal from the IMU 183, and outputs the attitude information to the path tracking control unit 151, the calculation unit 154, and the self-position calculation unit 164.
- the positioning unit 184 has position information (for example, XY coordinate values and latitudes in the world coordinate system) measured using a global positioning satellite system (GNSS: Global Navigation Satellite System), ultra-wideband radio (UWB: Ultra Wide Band), or the like. (Longitude value) is acquired, and a signal corresponding to the measurement result is output.
- GNSS Global Navigation Satellite System
- UWB Ultra Wide Band
- Attitude information (attitude angle of the aircraft) from the attitude calculation unit 163 and various sensor signals from sensors such as the IMU 183 and the positioning unit 184 are input to the self-position calculation unit 164.
- the self-position calculation unit 164 calculates (estimates) the position of the aircraft based on the attitude information and various sensor signals, and outputs the self-position information to the path tracking control unit 151.
- the path tracking control and the traveling direction control are performed according to the configuration shown in FIG. 4, and next, the detailed control method will be described.
- FIG. 5 is a diagram illustrating details of path tracking control and traveling direction control performed by the control unit 101 of the robot device 10.
- the angles such as head and dtheta are defined with reference to the global coordinate system shown in the lower left of the figure.
- the robot device 10 is controlled to follow the route R11 based on the target trajectory information.
- the position, attitude, and speed of the aircraft at the current time are as shown below based on the outputs from sensors such as the left and right wheel speed sensors 182 and IMU183.
- Coordinates, attitude angle (Heading), and translational velocity (Velocity) can be calculated.
- the route R11 is a route based on the target trajectory information (a route to which a target time is added), and for example, for each control target point corresponding to each arrow of the route represented by connecting a plurality of arrows. Including at least the target arrival time, the indicated coordinates, the indicated attitude angle (Heading), the indicated translational speed (Velocity), and the indicated rotation speed (AngularVelocity) as shown below. That is, at the current time, the point where the robot device 10 should be is designated by the control target point.
- Target arrival time t Indicated coordinates (X, Y): xt, yt Directed posture angle: headt Directed translation speed: vt Indicated rotation speed: ⁇ t
- the lateral deviation (lat_error) and the vertical deviation are obtained from the relationship between the coordinates and attitude angle of the aircraft and the indicated coordinates and indicated attitude angle of the control target point P11.
- (Lon_error) and the attitude angle deviation (head_error) can be calculated by the following equations (1) to (3).
- lat_error -dist * sin (head --dtheta) ⁇ ⁇ ⁇ (1)
- lon_error dist * cos (head --dtheta) ⁇ ⁇ ⁇ (2)
- head_error headt --head ⁇ ⁇ ⁇ (3)
- dtheta means the angle from the aircraft to the control target point P11
- dist means the distance from the aircraft to the control target point P11.
- dtheta and dist are calculated by the following equations (4) and (5).
- atan2 () represents an arctangent function
- sqrt () represents a square root function.
- the target speed and the target angular velocity can be calculated by the following equations (6) and (7).
- Target speed vt + PID (lon_error) ⁇ ⁇ ⁇ (6)
- Target angular velocity ⁇ t + PID (lat_error) * v_limit + PID (head_error) ⁇ ⁇ ⁇ (7)
- PID () represents PID control.
- this PID control regarding deviations such as lon_error, lat_error, and head_error, an element proportional to the integral of the deviation and an element proportional to the derivative of the deviation are added, and control is performed to reduce each deviation.
- the horizontal axis is the translation speed (v) and the vertical axis is v_limit
- the value of v_limit changes according to the value of v
- the maximum value is 1.0
- v 0. It becomes 0 at the time of. Therefore, it is possible to suppress the rotation of the airframe when the airframe is stopped.
- the target speed is obtained by the path tracking control unit 151 performing the calculation using the equation (6) based on the target trajectory information, the attitude information, and the self-position information.
- the path tracking control unit 151 calculates the front part ( ⁇ t + PID (lat_error) * v_limit) of the equation (7) based on the target trajectory information, the attitude information, and the self-position information.
- the traveling direction control unit 155 calculates the rear part (PID (head_error)) of the equation (7) based on the calculation result (posture angle deviation) from the calculation unit 154.
- the target angular velocity (target yaw angular velocity) is obtained by adding these calculation results by the calculation unit 156.
- step S101 the left-right coordinated torque limiter 160 compares the left motor torque target value with the threshold value and determines whether or not the left motor torque target value exceeds the upper limit.
- step S101 If it is determined in the determination process of step S101 that the left motor torque target value exceeds the upper limit, the process proceeds to step S102, and the processes of steps S102 and S103 are executed.
- step S102 the left-right cooperative torque limiter 160 newly sets the right torque target value using the following equation (8).
- New right torque target value Right torque target value- (Torque limiter value-Left torque target value) ... (8)
- step S103 the left-right cooperative torque limiter 160 newly sets the left torque target value using the following equation (9).
- New left torque target value torque limiter value ... (9)
- step S104 If the process of step S103 is completed, or if it is determined in the determination process of step S101 that the left motor torque target value is equal to or less than the upper limit, the process proceeds to step S104.
- step S104 the left-right coordinated torque limiter 160 compares the right motor torque target value with the threshold value and determines whether or not the right motor torque target value exceeds the upper limit.
- step S104 If it is determined in the determination process of step S104 that the right motor torque target value exceeds the upper limit, the process proceeds to step S105, and the processes of steps S105 and S106 are executed.
- step S105 the left-right cooperative torque limiter 160 newly sets the left torque target value using the following equation (10).
- New left torque target value Left torque target value- (Torque limiter value-Right torque target value) ... (10)
- step S106 the left-right cooperative torque limiter 160 newly sets the right torque target value using the following equation (11).
- New right torque target value torque limiter value ... (11)
- step S106 When the process of step S106 is completed, or when it is determined in the process of step S104 that the right motor torque target value is equal to or less than the upper limit, the left-right coordinated torque limit process is terminated.
- left-right coordinated torque limit processing has been explained above.
- this left-right coordinated torque limit process it is determined whether or not the left motor torque target value or the right motor torque target value exceeds the upper limit, and the torque limit in the left-right coordinated according to the determination result is performed.
- the robot device 10 has a function of controlling the direction of the machine body in the traveling direction, but when using the function, the upper limit of the torque that can be output by the motor is set, especially when a high load is applied to the motor. May reach. At this time, when the torque limiter is applied to only one of the left and right motors, it is assumed that the traveling direction cannot be controlled and the aircraft is significantly deviated from the path.
- the robot device 10 by performing the left-right coordinated torque limit processing, it is possible to reduce the deterioration of the controllability in the traveling direction even when the torque limiter is applied to only one of the motors. For example, if one of the left and right motor torques reaches the limiter, the machine cannot turn. Therefore, in the robot device 10, the left and right coordinated torque limit processing is performed so that the left and right motor torques can be coordinated and turned. ing.
- FIG. 8 shows an example in which the robot device 10 follows a right-angled path including a super-credit turn.
- straight lines are drawn in the vertical and horizontal directions at regular intervals.
- the route R21 is a route based on the target trajectory information and is a right-angled route including a super-credit turn.
- the robot device 10 is controlled to follow the path R21.
- the robot device 10 is moving on the moving path R22 and gradually approaches the path R21 from the initial position in the figure.
- the path R21 includes a right-angled path as shown in the area A1 in the figure, and the robot device 10 makes a super-credit turn at this point.
- the robot device 10 should make a super-credit turn while maintaining the error even when the error is more than a certain level (for example, when there is a deviation of about several tens of centimeters) as well as when traveling on the route R21. Can be done. Further, in the robot device 10, it is possible to continuously reduce the error from the path R21 before the super-credit turn in the route follow-up travel after the super-credit turn.
- the super-credit turning is realized by performing the traveling direction control (the rear part (PID (head_error)) of the equation (7)) together with the route tracking control.
- the traveling direction control the rear part (PID (head_error)
- the arrival judgment threshold it is not possible to shift to the super-credit turning unless the arrival judgment threshold is reached, so that the running can be continued when the error is accumulated for some reason and the arrival judgment is not made. It disappears.
- the robot device that determines the arrival point it takes time to reduce the error from the arrival point, so that it is difficult to strictly adhere to the arrival time for the original purpose.
- the robot device 10 to which the present disclosure is applied is based on a target trajectory including a plurality of control target points (including at least a target arrival time, a designated coordinate, a designated posture angle, a designated translational speed, and a designated rotation speed). Therefore, the control unit 101 (the route following control unit 151) that controls the following running is provided, and the control unit 101 (the traveling direction control unit 155) determines the target determined based on the indicated attitude angle at the control target point. The traveling direction can be controlled based on the attitude angle and the attitude angle of the aircraft.
- the robot device 10 can realize path tracking and super-credit turning for strict adherence to the arrival time with one path tracking function, and can operate at a more accurate time.
- the robot device 10 when the robot device 10 is used as an entertainment robot, it is possible to achieve both punctual movement and path tracking.
- the traveling direction control and the path tracking control are performed using the sensor signal from the sensor such as the IMU183, stable attitude control and highly accurate path tracking during high-speed traveling can be realized. can.
- the control to which the present disclosure is applied when performing the control to which the present disclosure is applied, the calculation load is not required because the control (control) such as the path tracking control and the traveling direction control is not switched and the complicated arrival determination process is not required. Is very small. Therefore, the control to which the present disclosure is applied is particularly suitable for a small and lightweight robot device that moves at high speed. In addition, when it is necessary to reduce the computational load and memory usage, the control to which the present disclosure is applied is very easy as compared with the path tracking control used in the control of the current autonomous mobile robot device. It is possible to change the control cycle and reduce the memory usage associated therewith.
- each of the route information (target trajectory information including the control target point) is set based on a fixed time interval (control cycle), which is complicated when thinning out the route information.
- the translational speed and rotation speed required only to follow the route are calculated regardless of the position and attitude that the aircraft should be at that time, so the aircraft deviates from the route due to some factor. In that case, the elapsed time could not be kept.
- Pure pursuit and PID control are used as the current path tracking control, but in the case of Pure pursuit, the forward control target point is set and the rotation speed required to reach the target is calculated. It is not possible to make a fixed point turn such as a ground turn.
- PID control that does not use the target time, especially when applied to a high-speed moving robot device, correction will be applied if it deviates to some extent from the route, so stable straight running at high speed should be realized. Is difficult.
- the time, coordinates, attitude, translation speed, and rotation speed to be executed at that point are instructed in the route information (target trajectory information including the control target point). Is embedded, and based on the route information, it is possible to realize the route follow-up control based on the PID control and the super-credit turning control without switching the controller. This enables, for example, the punctual operation required for an entertainment robot device that operates at a relatively high speed.
- FIG. 9 shows another example of the functional configuration of the robotic apparatus to which the present disclosure is applied.
- the robot device 10A has a configuration in which speed control is performed for each of the left and right wheels (left and right wheels) of the machine body when a differential two-wheel drive type is used as the drive type.
- the calculation unit 152, the translation speed control unit 153, the calculation unit 157, the angular velocity control unit 158, the left and right wheel distribution units 159, and the aircraft speed estimation unit 162 are compared with the robot device 10 of FIG. It will be a removed configuration. Further, in the robot device 10A of FIG. 9, the left and right wheel speed deviation calculation unit 201, the calculation unit 202-1, the calculation unit 202-2, the left motor speed control unit 203-1, and the left motor speed control unit 203-1 are compared with the robot device 10 of FIG. The right motor speed control unit 203-2 is newly provided.
- the left and right wheel speed deviation calculation unit 201 calculates the speed deviation of the left and right wheels based on the target speed from the path tracking control unit 151 and the target angular velocity (target angular velocity in the yaw direction) from the calculation unit 156, and the calculation result thereof. Is output to the arithmetic unit 202-1 and the arithmetic unit 202-2.
- the calculation unit 202-1 obtains the difference between the left motor instruction speed from the left / right wheel speed deviation calculation unit 201 and the output signal (left motor speed) from the left / right wheel speed sensor 182, and obtains the calculation result as the left motor speed.
- the calculation unit 202-2 obtains the difference between the right motor speed instruction from the left / right wheel speed deviation calculation unit 201 and the output signal (right motor speed) from the left / right wheel speed sensor 182, and obtains the calculation result as the right motor speed.
- Output to control unit 203-2 obtains the difference between the left motor instruction speed from the left / right wheel speed deviation calculation unit 201 and the output signal (right motor speed) from the left / right wheel speed sensor 182, and obtains the calculation result as the right motor speed.
- the left motor speed control unit 203-1 controls the speed of the left motor 105-1 based on the calculation result from the calculation unit 202-1.
- the right motor speed control unit 203-2 controls the speed of the right motor 105-2 based on the calculation result from the calculation unit 202-2.
- the left-right coordinated torque limiter 160 has a torque target value of the left motor 105-1 corresponding to the speed control of the left motor speed control unit 203-1 and a right motor 105-corresponding to the speed control of the right motor speed control unit 203-2. Torque limit processing is performed in left-right coordination with respect to the torque target value of 2.
- the control unit 101 controls the speed for each wheel based on the target speed determined for each of the left and right wheels of the machine and the speed of each of the left and right wheels of the machine. That is, the robot device 10 of FIG. 4 has a configuration in which speed control is performed by translation and rotation and then distributed to the left and right wheels, but in the robot device 10A of FIG. 9, the target speeds of the left and right wheels are calculated first. , Speed control is performed for each of the left and right wheels.
- FIG. 10 shows yet another example of the functional configuration of the robotic apparatus to which the present disclosure is applied.
- the robot device 10B has a configuration in which the posture of the machine body is estimated and controlled without using the IMU 183.
- the IMU 183 is removed from the HW unit 171 and the aircraft attitude estimation unit 251 is newly provided as compared with the robot device 10 of FIG.
- the same reference numerals are given to the parts common to the robot device 10 of FIG. 4, and the description thereof will be omitted.
- the aircraft attitude estimation unit 251 estimates the attitude (attitude angle) of the aircraft based on the output signal from the left and right wheel speed sensors 182, and outputs it to the calculation unit 154 and the self-position calculation unit 164.
- the aircraft speed estimation unit 162 estimates the angular velocity of the aircraft based on the output signals from the left and right wheel speed sensors 182, and outputs the angular velocity to the calculation unit 157.
- the attitude of the aircraft is estimated and controlled by using the output from the left and right wheel speed sensors 182 instead of the IMU 183.
- the left and right wheel speed sensors 182 other attitude estimation sensors and the like may be used instead of the IMU 183.
- the differential two-wheel drive type is exemplified as the drive type of the robot device 10, but another drive type may be used as long as it is a robot drive type capable of super-credit turning.
- a Mecanum wheel, an omni wheel, or the like capable of super-credit turning may be used as another drive type.
- the robot device 10 when the posture of the image display unit 102 including the display is changed, the case where the robot device 10 is driven by one axis is illustrated, but the robot device 10 is not limited to one axis but is driven by two axes or the like. You may.
- the display information to be displayed on the display is not limited to video, but may be information such as an image or text.
- a plurality of robot devices 10 may be arranged in a matrix, and the displays of the robot devices 10 may be combined to be used as one screen (large screen) having a pseudo-predetermined shape.
- each robot device 10 may adjust the posture of the video display unit 102 (display) according to the situation such as its own position or the position of the target user to obtain a desired posture.
- the robot device 10 to which the present disclosure is applied can be regarded as an autonomous mobile device having a control unit such as a control unit 101.
- This control unit may be provided not only inside the robot device 10 but also in an external device.
- the robot device 10 to which the present disclosure is applied can be regarded as a system (autonomous mobile system) in which a plurality of devices such as a control device, a sensor device, a display device, a communication device, and a mobile mechanism are combined.
- the system means a set of a plurality of components (devices, modules (parts), etc.), and it does not matter whether or not all the components are in the same housing. Therefore, a plurality of devices housed in separate housings and connected via a network, and a device in which a plurality of modules are housed in one housing are both systems.
- the robot device 10 to which the present disclosure is applied can be further provided with an attachment for cleaning.
- This cleaning attachment is a mop-shaped one, and by being attached to the front surface, the rear surface, the side surface, the lower surface, or the like of the robot device 10, the robot device 10 autonomously travels while cleaning the traveling path. Can be done.
- the part to be cleaned may be given in advance as a traveling route, or may be performed by recognizing an instruction such as "clean here" by the instructor by gesture recognition.
- the gesture of the target is recognized by performing recognition processing such as the posture and movement of the target instructor based on the sensor signal from each sensor (camera or the like) of the sensor unit 152. ..
- the cleaning operation and the video display may be performed in coordination.
- an image to that effect may be displayed during cleaning or when cleaning is completed, or an advertisement or other image may be displayed during cleaning.
- the posture of the image display unit 102 may also be controlled.
- the attachment for cleaning is not limited to the illustrated mop-shaped attachment, and includes other attachments such as a dustpan-shaped attachment.
- the above-mentioned series of processes can be executed by hardware or software.
- the programs constituting the software are installed in the computer of each device.
- FIG. 11 is a block diagram showing a configuration example of computer hardware that executes the above-mentioned series of processes programmatically.
- the CPU 1001, the ROM (Read Only Memory) 1002, and the RAM (Random Access Memory) 1003 are connected to each other by the bus 1004.
- An input / output interface 1005 is further connected to the bus 1004.
- An input unit 1006, an output unit 1007, a recording unit 1008, a communication unit 1009, and a drive 1010 are connected to the input / output interface 1005.
- the input unit 1006 includes a microphone, a keyboard, a mouse, and the like.
- the output unit 1007 includes a speaker, a display, and the like.
- the recording unit 1008 includes a hard disk, a non-volatile memory, and the like.
- the communication unit 1009 includes a network interface and the like.
- the drive 1010 drives a removable medium 1011 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
- the CPU 1001 loads the program recorded in the ROM 1002 and the recording unit 1008 into the RAM 1003 via the input / output interface 1005 and the bus 1004 and executes the program. A series of processes are performed.
- the program executed by the computer 1000 can be recorded and provided on the removable media 1011 as a package media or the like, for example.
- the program can also be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
- the program can be installed in the recording unit 1008 via the input / output interface 1005 by mounting the removable media 1011 in the drive 1010. Further, the program can be received by the communication unit 1009 via a wired or wireless transmission medium and installed in the recording unit 1008. In addition, the program can be pre-installed in the ROM 1002 or the recording unit 1008.
- the processes performed by the computer according to the program do not necessarily have to be performed in chronological order in the order described as the flowchart. That is, the processing performed by the computer according to the program includes processing executed in parallel or individually (for example, processing by parallel processing or processing by an object). Further, the program may be processed by one computer (processor) or may be distributed processed by a plurality of computers.
- each step of the above-mentioned processing can be executed by one device or shared by a plurality of devices. Further, when a plurality of processes are included in one step, the plurality of processes included in the one step can be executed by one device or shared by a plurality of devices.
- the control unit is an autonomous moving device that controls the traveling direction at the control target point based on the target posture angle determined based on the indicated posture angle and the posture angle of the airframe.
- the autonomous movement device controls the speed for each wheel based on the target speed determined for each of the left and right wheels of the airframe and the speed for each of the left and right wheels of the airframe.
- the control unit controls the speed for each wheel based on the target speed determined for each of the left and right wheels of the airframe and the speed for each of the left and right wheels of the airframe.
- the attitude angle of the airframe is calculated based on an output from a sensor capable of detecting an angular velocity and an acceleration.
- the posture angle of the airframe is estimated based on the output from the left and right wheel speed sensors provided on the left and right wheels of the airframe.
- the attitude angle of the aircraft is the attitude angle in the yaw direction.
- the autonomous moving device according to (4) or (5) above, wherein the target angular velocity and the angular velocity of the airframe are angular velocities in the yaw direction.
- the autonomous moving device according to any one of (1) to (10) above, which is configured as a differential two-wheel drive type robot device.
- the autonomous mobile device Controls follow-up travel based on a target trajectory that includes multiple control target points, The control target point includes at least a target arrival time, a designated coordinate, a designated attitude angle, a designated translational speed, and a designated rotation speed.
- a control method for controlling the traveling direction at the control target point based on the target attitude angle determined based on the indicated attitude angle and the attitude angle of the airframe.
- the control unit is a program that functions as an autonomous moving device that controls the traveling direction at the control target point based on the target attitude angle determined based on the indicated attitude angle and the attitude angle of the aircraft.
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本開示は、より正確な時刻で動作することができるようにする自律移動装置、制御方法、及びプログラムに関する。 複数の制御目標点を含む目標軌道に基づいて、追従走行を制御する制御部を備え、制御目標点は、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含み、制御部は、制御目標点において、指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向を制御する自律移動装置が提供される。本開示は、例えば、自律移動型ロボット装置に適用することができる。
Description
本開示は、自律移動装置、制御方法、及びプログラムに関し、特に、より正確な時刻で動作することができるようにした自律移動装置、制御方法、及びプログラムに関する。
近年、自律移動機能を有するロボットの研究開発が盛んに行われている。この種の自律移動型ロボットでは、設定された経路に追従する制御を行うものがある。
このような経路追従制御に関する技術としては、例えば、特許文献1に開示された技術がある。特許文献1には、周囲の環境情報を元に移動時の経由点を設定する自律移動装置が開示されている。
自律移動装置における経路追従制御を行うに際しては、何らかの要因により時刻を厳守することができない場合が想定され、より正確な時刻で動作できるような制御を行うことが求められる。
本開示はこのような状況に鑑みてなされたものであり、より正確な時刻で動作することができるようにするものである。
本開示の一側面の自律移動装置は、複数の制御目標点を含む目標軌道に基づいて、追従走行を制御する制御部を備え、前記制御目標点は、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含み、前記制御部は、前記制御目標点において、前記指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向を制御する自律移動装置である。
本開示の一側面の制御方法は、自律移動装置が、複数の制御目標点を含む目標軌道に基づいて、追従走行を制御し、前記制御目標点は、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含み、前記制御目標点において、前記指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向を制御する制御方法である。
本開示の一側面のプログラムは、コンピュータを、複数の制御目標点を含む目標軌道に基づいて、追従走行を制御する制御部を備え、前記制御目標点は、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含み、前記制御部は、前記制御目標点において、前記指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向を制御する自律移動装置として機能させるプログラムである。
本開示の一側面の自律移動装置、制御方法、及びプログラムにおいては、複数の制御目標点を含む目標軌道に基づいて、追従走行が制御される。また、前記制御目標点には、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含まれており、前記制御目標点において、前記指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向が制御される。
なお、本開示の一側面の自律移動装置は、独立した装置であってもよいし、1つの装置を構成している内部ブロックであってもよい。
<1.第1の実施の形態>
(外観の構成)
図1,図2は、本開示を適用したロボット装置の外観の構成の例を示している。図1には、本開示を適用したロボット装置の上面図、正面図、側面図をそれぞれ示している。図2には、本開示を適用したロボット装置におけるディスプレイを可動させた状態の図を示している。
図1,図2は、本開示を適用したロボット装置の外観の構成の例を示している。図1には、本開示を適用したロボット装置の上面図、正面図、側面図をそれぞれ示している。図2には、本開示を適用したロボット装置におけるディスプレイを可動させた状態の図を示している。
ロボット装置10は、自律型ロボットである。また、ロボット装置10は、車輪等の移動機構を有する移動型ロボット(自律移動型ロボット)であり、空間内を自由に移動可能である。
ロボット装置10は、略直方体の形状からなり、その上面に、映像等の表示情報を表示可能なディスプレイを有する。ロボット装置10において、上面のディスプレイ(画面)は可動式であり、平面(床面や地面等の移動面)に対して所望の角度に調整してその姿勢を固定することができる。
(構成要素)
図3は、本開示を適用したロボット装置の構成要素の例を示している。図3において、ロボット装置10は、各部の動作を制御する制御ユニット101と、映像を表示するディスプレイを含む映像表示ユニット102と、映像表示ユニット102を上げたり下げたりするための機構を含む画面昇降ユニット103とを有する。
図3は、本開示を適用したロボット装置の構成要素の例を示している。図3において、ロボット装置10は、各部の動作を制御する制御ユニット101と、映像を表示するディスプレイを含む映像表示ユニット102と、映像表示ユニット102を上げたり下げたりするための機構を含む画面昇降ユニット103とを有する。
図3では、ロボット装置10の筐体の上面に設けられた薄板状の映像表示ユニット102が、画面昇降ユニット103により可動して、所望の姿勢に固定されている。このように、ロボット装置10において、映像表示ユニット102は、その下端部分を中心に可動することができ、映像表示ユニット102が上方に開くと、筐体の内部が外部に露出する。
ロボット装置10は、左モータエンコーダ104-1と左モータ105-1、及び右モータエンコーダ104-2と右モータ105-2を有する。ロボット装置10においては、差動二輪駆動型である駆動形式を用いており、左モータ105-1と右モータ105-2がそれぞれ動作することで、左右の車輪により移動可能となる。左モータエンコーダ104-1と右モータエンコーダ104-2は、左モータ105-1と右モータ105-2の回転の移動量などを検出する。
ロボット装置10は、センサ106-1乃至106-3等の各種のセンサを有する。センサ106としては、IMU(Inertial Measurement Unit),LiDAR(Light Detection and Ranging),位置センサ、カメラなどを含む。ロボット装置10では、各種のセンサにより検出されたセンサ信号を用い、自律移動型ロボットとして動作する。バッテリユニット107は、ロボット装置10の各部に電力を供給する。
(機能的構成)
図4は、本開示を適用したロボット装置の機能的構成の例を示している。
図4は、本開示を適用したロボット装置の機能的構成の例を示している。
ロボット装置10は、経路追従制御部151、演算部152、並進速度制御部153、演算部154、進行方向制御部155、演算部156、演算部157、角速度制御部158、左右輪分配部159、左右協調トルクリミッタ160、左トルク制御部161-1、右トルク制御部161-2、機体速度推定部162、姿勢演算部163、及び自己位置演算部164を有する。経路追従制御部151乃至自己位置演算部164は、制御ユニット101に含まれるCPU等のプロセッサが、プログラムを実行することで実現される。
また、ロボット装置10は、HW(Hardware)部171を有する。HW部171は、上述した左モータ105-1及び右モータ105-2のほかに、モータドライバ181-1、モータドライバ181-2、左右輪速度センサ182、IMU183、及び測位部184を有する。左右輪速度センサ182としては、上述した左モータエンコーダ104-1と右モータエンコーダ104-2を用いてもよい。IMU183、及び測位部184は、上述したセンサ106に対応している。
経路追従制御部151には、ユーザの設定等に応じた目標軌道情報と、後段からの姿勢情報、及び自己位置情報がそれぞれ入力される。経路追従制御部151は、目標軌道情報、姿勢情報、及び自己位置情報に基づいて、目標軌道(目標時刻が付加された経路)に追従した走行を行うための制御を行う。
目標軌道情報は、複数の制御目標点を含む目標軌道に関する情報である。目標軌道において、各制御目標点は、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含んでいる。
姿勢情報は、機体の姿勢に関する情報である。姿勢情報は、姿勢演算部163により算出される。自己位置情報は、機体の位置に関する情報である。自己位置情報は、自己位置演算部164により算出される。なお、以下の説明では、ロボット装置10の物理的構造部分のことを、機体とも称する。
経路追従制御部151は、目標軌道情報、姿勢情報、及び自己位置情報に基づき、目標速度、目標姿勢角、及び目標角速度を決定する。経路追従制御部151は、目標速度を演算部152に、目標姿勢角を演算部154、目標角速度を演算部156にそれぞれ出力する。
演算部152は、経路追従制御部151からの目標速度と、機体速度推定部162からの機体の速度との差を求めて、その演算結果を並進速度制御部153に出力する。
並進速度制御部153は、演算部152からの演算結果に基づいて、並進速度を制御する。この並進速度の制御では、例えば目標速度での走行が行われるように、並進速度を加速又は減速させる制御が行われ、その制御に応じた進行方向トルクが左右輪分配部159に出力される。並進速度とは、ロボット装置10の中心位置(左右輪の中心位置)が変化する速度である。
演算部154は、経路追従制御部151からの目標姿勢角と、姿勢演算部163からの機体の姿勢角(ヨー方向の姿勢角)との差を求めて、その演算結果を進行方向制御部155に出力する。
進行方向制御部155は、演算部154からの演算結果に基づいて、進行方向を制御する。この進行方向の制御では、例えば超信地旋回を実現するための制御が行われ、その制御に応じた制御値が演算部156に出力される。
演算部156は、経路追従制御部151からの目標角速度と、進行方向制御部155からの制御値との和を求めて、その演算結果を演算部157に出力する。ここでの演算結果としては、ヨー方向の目標角速度(目標ヨー角速度)が得られ、これが目標角速度になる。
演算部157は、演算部156からの目標角速度(ヨー方向の目標角速度)と、HW部171(のIMU183)からの機体の角速度(ヨー方向の角速度)との差を求めて、その演算結果を角速度制御部158に出力する。
角速度制御部158は、演算部157からの演算結果に基づいて、角速度を制御する。この角速度の制御では、角速度を変化させる制御が行われ、その制御に応じた回転方向トルクが左右輪分配部159に出力される。
左右輪分配部159は、並進速度制御部153からの進行方向トルクと、角速度制御部158からの回転方向トルクを、機体の左右輪(を駆動する左モータ105-1と右モータ105-2)に分配して、左右協調トルクリミッタ160に出力する。
左右協調トルクリミッタ160は、左右輪分配部159からの左右輪用に分配されたトルク目標値に対し、左右協調でのトルクリミット処理を行う。左右協調トルクリミット処理が施された左モータ105-1のトルク目標値は、左トルク制御部161-1に出力される。左右協調トルクリミット処理が施された右モータ105-2のトルク目標値は、右トルク制御部161-2に出力される。
左トルク制御部161-1は、左右協調トルクリミッタ160からの左モータ105-1のトルク目標値に基づいて、モータドライバ181-1を制御する。モータドライバ181-1は、左トルク制御部161-1からの制御に従い、左モータ105-1を駆動する。
右トルク制御部161-2は、左右協調トルクリミッタ160からの右モータ105-2のトルク目標値に基づいて、モータドライバ181-2を制御する。モータドライバ181-2は、右トルク制御部161-2からの制御に従い、右モータ105-2を駆動する。
左右輪速度センサ182は、左モータ105-1と右モータ105-2に設けられるロータリエンコーダ等の左右輪エンコーダなどであり、モータの回転の機械的変位量に応じた出力信号などを機体速度推定部162に出力する。左右輪速度センサ182としては、左右輪エンコーダに限らず、例えば、レゾルバやホールセンサなどであってもよい。機体速度推定部162は、左右輪速度センサ182からの出力信号に基づいて、機体の速度を推定し、演算部152に出力する。
IMU183は、3軸のジャイロと3軸の加速度計により角速度と加速度を検出し、その検出信号を演算部157及び姿勢演算部163に出力する。姿勢演算部163は、IMU183からの検出信号に基づいて、機体の姿勢角を算出(推定)し、姿勢情報として、経路追従制御部151、演算部154、及び自己位置演算部164に出力する。
測位部184は、全球測位衛星システム(GNSS:Global Navigation Satellite System)や、超広帯域無線(UWB:Ultra Wide Band)等を用いて測定された位置情報(例えば世界座標系のXY座標値や緯度・経度値)を取得し、その測定結果に応じた信号を出力する。自己位置演算部164には、姿勢演算部163からの姿勢情報(機体の姿勢角)と、IMU183や測位部184等のセンサからの各種センサ信号が入力される。自己位置演算部164は、姿勢情報、及び各種センサ信号に基づいて、機体の位置を算出(推定)し、自己位置情報として、経路追従制御部151に出力する。
以上のように構成されるロボット装置10では、図4に示した構成により経路追従制御と進行方向制御が行われるが、次に、その詳細な制御方法を説明する。
(制御の詳細)
図5は、ロボット装置10の制御ユニット101により実施される経路追従制御と進行方向制御の詳細について説明する図である。なお、図5において、headやdtheta等の角度は、図中の左下に示したグローバル座標系を基準に定義される。
図5は、ロボット装置10の制御ユニット101により実施される経路追従制御と進行方向制御の詳細について説明する図である。なお、図5において、headやdtheta等の角度は、図中の左下に示したグローバル座標系を基準に定義される。
図5において、ロボット装置10は、目標軌道情報に基づき、経路R11に追従して走行するように制御される。ロボット装置10では、経路R11に追従して走行する際に、左右輪速度センサ182やIMU183等のセンサからの出力に基づき、現在時刻における機体の位置、姿勢、及び速度として、下記に示すような、座標、姿勢角(Heading)、及び並進速度(Velocity)を算出することができる。
座標(X,Y):x,y
姿勢角:head
並進速度:v
姿勢角:head
並進速度:v
図5において、経路R11は、目標軌道情報に基づいた経路(目標時刻が付加された経路)であって、例えば、複数の矢印を連結して表した経路の各矢印に応じた制御目標点ごとに、下記に示すような、目標到達時刻、指示座標、指示姿勢角(Heading)、指示並進速度(Velocity)、及び指示回転速度(Angular Velocity)を少なくとも含んでいる。つまり、現在時刻において、ロボット装置10がいるべき点が制御目標点により指定される。
目標到達時刻:t
指示座標(X,Y):xt,yt
指示姿勢角:headt
指示並進速度:vt
指示回転速度:ωt
指示座標(X,Y):xt,yt
指示姿勢角:headt
指示並進速度:vt
指示回転速度:ωt
ここで、現在時刻における制御目標点がP11である場合に、機体の座標や姿勢角と、制御目標点P11の指示座標や指示姿勢角との関係から、横方向偏差(lat_error)、縦方向偏差(lon_error)、及び姿勢角偏差(head_error)を、次の式(1)乃至式(3)により算出することができる。
lat_error = -dist * sin(head - dtheta) ・・・(1)
lon_error = dist * cos(head - dtheta) ・・・(2)
head_error = headt - head ・・・(3)
lon_error = dist * cos(head - dtheta) ・・・(2)
head_error = headt - head ・・・(3)
式(1),式(2)において、dthetaは、機体から制御目標点P11への角度を意味し、distは、機体から制御目標点P11への距離を意味している。dtheta,distは、次の式(4),式(5)により算出される。ただし、atan2()は、アークタンジェントの関数を表し、sqrt()は、平方根の関数を表している。
dtheta = atan2(y, x) ・・・(4)
dist = sqrt(((xt - x) * (xt - x) + (yt - y) * (yt - y))) ・・・(5)
dist = sqrt(((xt - x) * (xt - x) + (yt - y) * (yt - y))) ・・・(5)
そして、目標速度、及び目標角速度を、次の式(6),式(7)により算出することができる。
目標速度 = vt + PID(lon_error) ・・・(6)
目標角速度 = ωt + PID(lat_error) * v_limit + PID(head_error) ・・・(7)
目標角速度 = ωt + PID(lat_error) * v_limit + PID(head_error) ・・・(7)
式(6),式(7)において、PID()は、PID制御を表している。このPID制御では、lon_error,lat_error,head_errorである偏差に関し、当該偏差の積分に比例する要素と、当該偏差の微分に比例する要素を加味し、それぞれの偏差を減らす制御が行われる。
また、式(7)において、v_limitは、機体の回転を抑制するために乗じられる。すなわち、機体が停止したとき(v=0)、横方向偏差(lat_error)がある場合に、機体が回転し続けてしまうため、v_limitを乗じている。例えば、図6に示すように、横軸を並進速度(v)とし、縦軸をv_limitとしたとき、v_limitの値はvの値に応じて変化し、その最大値が1.0で、v=0のときに0となる。そのため、機体が停止したときに、機体が回転することを抑制することができる。
このように、制御ユニット101においては、経路追従制御部151が、目標軌道情報、姿勢情報、及び自己位置情報に基づき、式(6)を用いた演算を行うことで、目標速度が求められる。
また、制御ユニット101では、経路追従制御部151が、目標軌道情報、姿勢情報、及び自己位置情報に基づき、式(7)の前部分(ωt + PID(lat_error) * v_limit)の演算を行い、進行方向制御部155が、演算部154からの演算結果(姿勢角偏差)に基づき、式(7)の後部分(PID(head_error))の演算を行う。それらの演算結果が、演算部156により加算されることで、目標角速度(目標ヨー角速度)が求められる。
(左右協調トルクリミット処理)
次に、図7のフローチャートを参照しながら、左右協調トルクリミッタ160により実行される左右協調トルクリミット処理の流れを説明する。
次に、図7のフローチャートを参照しながら、左右協調トルクリミッタ160により実行される左右協調トルクリミット処理の流れを説明する。
ステップS101において、左右協調トルクリミッタ160は、左モータトルク目標値を閾値と比較して、左モータトルク目標値が上限を超えているかどうかを判定する。
ステップS101の判定処理で左モータトルク目標値が上限を超えていると判定された場合、処理は、ステップS102に進められ、ステップS102,S103の処理が実行される。ステップS102では、左右協調トルクリミッタ160が、下記の式(8)を用いて、右トルク目標値を新たに設定する。
新右トルク目標値 = 右トルク目標値 - (トルクリミッタ値 - 左トルク目標値) ・・・(8)
ステップS103では、左右協調トルクリミッタ160が、下記の式(9)を用いて、左トルク目標値を新たに設定する。
新左トルク目標値 = トルクリミッタ値 ・・・(9)
ステップS103の処理が終了するか、あるいはステップS101の判定処理で左モータトルク目標値が上限以下であると判定された場合、処理は、ステップS104に進められる。
ステップS104において、左右協調トルクリミッタ160は、右モータトルク目標値を閾値と比較して、右モータトルク目標値が上限を超えているかどうかを判定する。
ステップS104の判定処理で右モータトルク目標値が上限を超えていると判定された場合、処理は、ステップS105に進められ、ステップS105,S106の処理が実行される。ステップS105では、左右協調トルクリミッタ160が、下記の式(10)を用いて、左トルク目標値を新たに設定する。
新左トルク目標値 = 左トルク目標値 - (トルクリミッタ値 - 右トルク目標値) ・・・(10)
ステップS106では、左右協調トルクリミッタ160が、下記の式(11)を用いて、右トルク目標値を新たに設定する。
新右トルク目標値 = トルクリミッタ値 ・・・(11)
ステップS106の処理が終了するか、あるいはステップS104の処理で右モータトルク目標値が上限以下であると判定された場合、左右協調トルクリミット処理は、終了される。
以上、左右協調トルクリミット処理の流れを説明した。この左右協調トルクリミット処理では、左モータトルク目標値又は右モータトルク目標値が上限を超えているかどうかが判定され、その判定結果に応じた左右協調でのトルクリミットが行われる。
すなわち、ロボット装置10では、進行方向に機体の向きを制御する機能を有しているが、当該機能を使用する際に、特にモータに高負荷がかかる場面において、モータの出力できるトルクの上限に達する可能性がある。このとき、左右のモータのうち、一方のモータにのみトルクリミッタにかかる場合などにおいて、進行方向の制御を行うことができずに、機体が経路から大幅に外れてしまうことが想定される。
それに対し、ロボット装置10では、左右協調トルクリミット処理を行うことで、一方のモータにのみトルクリミッタにかかる場合などでも、進行方向の制御性の低下を軽減することができる。例えば、左右のモータトルクの一方がリミッタに達してしまうと、機体が旋回できなくなるので、ロボット装置10では、左右協調トルクリミット処理を行うことで、左右のモータトルクを協調させて旋回できるようにしている。
(経路追従走行の例)
図8は、ロボット装置10が超信地旋回を含む直角の経路を追従走行した場合の例を示している。なお、図8では、機体と経路との位置関係をわかりやすくするために、一定間隔で縦横方向に直線を記載している。
図8は、ロボット装置10が超信地旋回を含む直角の経路を追従走行した場合の例を示している。なお、図8では、機体と経路との位置関係をわかりやすくするために、一定間隔で縦横方向に直線を記載している。
図8において、経路R21は、目標軌道情報に基づいた経路であって、超信地旋回を含む直角の経路である。ロボット装置10では、経路R21を追従する制御が行われる。この経路追従制御によって、ロボット装置10は、移動経路R22上を移動しており、図中の初期位置から経路R21に徐々に近づいている。
経路R21は、図中の領域A1内に示すように、直角の経路を含んでおり、この箇所でロボット装置10は、超信地旋回を行う。ロボット装置10は、経路R21上を走行している場合は勿論、誤差が一定以上ある場合(例えば数10cm程度のずれがある場合)でも、その誤差を維持した状態で超信地旋回を行うことができる。さらに、ロボット装置10では、超信地旋回後の経路追従走行において、超信地旋回前から継続して経路R21からの誤差を小さくすることが可能となる。
すなわち、本開示を適用したロボット装置10では、経路追従制御とともに、進行方向制御(式(7)の後部分(PID(head_error)))を行うことで、超信地旋回を実現しているため、経路追従制御と進行方向制御を切り替えることなく、誤差を維持した状態で超信地旋回を行うことができる。なお、到達判定を行うロボット装置では、到達判断閾値内に到達していないと超信地旋回に移行することができないため、何らかの要因で誤差が蓄積し到達判定がなされない場合に走行が継続できなくなる。また、到達判定を行うロボット装置では、到達地点との誤差を減らすために時間がかかるため、当初の目的に到達時刻を厳守することが難しくなる。
以上のように、本開示を適用したロボット装置10は、複数の制御目標点(目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含む)を含む目標軌道に基づいて、追従走行を制御する制御ユニット101(の経路追従制御部151)を有し、制御ユニット101(の進行方向制御部155)が、制御目標点において、指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向を制御することができる。
これにより、ロボット装置10では、到達時刻厳守のための経路追従と超信地旋回を1つの経路追従機能で実現することが可能となり、より正確な時刻で動作することができる。例えば、ロボット装置10がエンターテイメントロボットとして利用される場合に、時間厳守の動きの実現と経路追従を両立することができる。また、ロボット装置10では、IMU183等のセンサからのセンサ信号を用いた進行方向制御と経路追従制御が行われるため、高速走行時の安定した姿勢制御と高精度な経路追従性を実現することができる。
また、ロボット装置10では、本開示を適用した制御を行うに際して、経路追従制御と進行方向制御等の制御(制御器)を切り替えることなく、また複雑な到達判定処理も必要としないため、計算負荷が非常に小さい。そのため、本開示を適用した制御は、特に、高速に移動する小型軽量のロボット装置に適している。また、計算負荷やメモリの使用量を小さくする必要がある場合に、本開示を適用した制御では、現状の自律移動型ロボット装置の制御で用いられる経路追従制御と比較して、非常に容易に制御周期の変更、及びそれに伴うメモリ使用量の削減を行うことが可能となる。
つまり、現状の経路追従制御では、制御周期を変更することは比較的容易ではあるものの、経路に時間の概念が存在しないため、それに伴った経路情報の間引きを行うことができなかった。また、現状の経路追従制御では、経路情報の間引きを行った場合、間引きの間隔を指示速度に基づいて変化させる必要があり、経路情報の間引き処理が複雑で、かつ、計算処理が大きくなる。一方で、本開示を適用した制御では、経路情報(制御目標点を含む目標軌道情報)のそれぞれが、一定時間間隔(制御周期)に基づいて設定されるため、経路情報の間引きの際に複雑な処理を用いなくても、制御周期の倍数に限られるものの、経路点(制御目標点)を間引くだけで制御周期を変更することができ、さらにメモリ使用量の削減、及び計算負荷の軽減を実現することができる。
また、現状の経路追従制御においては、機体がその時刻にあるべき位置や姿勢に関係なく、経路に追従するためにのみに必要な並進速度、回転速度を計算するため、何らかの要因により経路から外れた場合に、経過時刻を守ることができなかった。
現状の経路追従制御としては、Pure pursuitやPID制御などが用いられるが、Pure pursuitの場合、前方制御目標点を設定して、その目標に向かうために必要な回転速度を計算するため、超信地旋回のような定点での旋回を行うことはできない。また、目標時刻を用いないPID制御の場合、特に、高速移動型のロボット装置に適用した場合には、経路からある程度ずれると補正をかけることになるため、高速時に安定した直線走行を実現することが難しい。
Pure pursuitやPID制御等の現状の経路追従制御では、目標時刻などの概念が存在しないため、機体がある地点に到着したときに超信地旋回を行うなどのタスクを実行するに際しては、次のような手順を踏むことになり、順次実行すべき時刻を守ることは困難である。すなわち、行動計画モジュールによる順次タスクの実行、及び制御器の切り替えのほか、目標地点に到着したことを判定、経路追従制御を停止して超信地旋回を起動、超信地旋回の実施、及び旋回目標に到着したことを判定するなどの手順を踏むことになる。
それに対して、本開示を適用した制御では、経路情報(制御目標点を含む目標軌道情報)内に、そこにいるべき時刻、座標、姿勢、その地点において実行すべき並進速度、回転速度の指示を埋め込み、その経路情報に基づき、PID制御をベースにした経路追従制御、及び超信地旋回制御を、制御器を切り替えることなく実現することが可能となる。これにより、例えば、比較的高速に動作するエンターテイメント向けロボット装置に求められる時間厳守の動作が可能となる。
<2.第2の実施の形態>
(機能的構成)
図9は、本開示を適用したロボット装置の機能的構成の他の例を示している。
図9は、本開示を適用したロボット装置の機能的構成の他の例を示している。
図9において、ロボット装置10Aは、駆動形式として差動二輪駆動型を用いた場合に、機体の左右の車輪(左右輪)ごとに速度制御を行う構成を有している。
図9のロボット装置10Aでは、図4のロボット装置10と比べて、演算部152、並進速度制御部153、演算部157、角速度制御部158、左右輪分配部159、及び機体速度推定部162が取り除かれた構成となる。また、図9のロボット装置10Aでは、図4のロボット装置10と比べて、左右輪速度偏差演算部201、演算部202-1、演算部202-2、左モータ速度制御部203-1、及び右モータ速度制御部203-2が新たに設けられている。
図9のロボット装置10Aにおいて、図4のロボット装置10と共通する部分については同一の符号が付してあり、その説明は省略する。
左右輪速度偏差演算部201は、経路追従制御部151からの目標速度と、演算部156からの目標角速度(ヨー方向の目標角速度)に基づいて、左右輪の速度偏差を演算し、その演算結果を演算部202-1及び演算部202-2に出力する。
演算部202-1は、左右輪速度偏差演算部201からの左モータ指示速度と、左右輪速度センサ182からの出力信号(左モータ速度)との差を求めて、その演算結果を左モータ速度制御部203-1に出力する。演算部202-2は、左右輪速度偏差演算部201からの右モータ速度指示と、左右輪速度センサ182からの出力信号(右モータ速度)との差を求めて、その演算結果を右モータ速度制御部203-2に出力する。
左モータ速度制御部203-1は、演算部202-1からの演算結果に基づいて、左モータ105-1の速度を制御する。右モータ速度制御部203-2は、演算部202-2からの演算結果に基づいて、右モータ105-2の速度を制御する。左右協調トルクリミッタ160は、左モータ速度制御部203-1の速度制御に応じた左モータ105-1のトルク目標値と、右モータ速度制御部203-2の速度制御に応じた右モータ105-2のトルク目標値に対し、左右協調でのトルクリミット処理を行う。
以上のように、図9のロボット装置10Aでは、制御ユニット101によって、機体の左右輪ごとに決定された目標速度と、機体の左右輪ごとの速度に基づき、車輪ごとに速度が制御される。すなわち、図4のロボット装置10は、速度制御を並進と回転で行った後に左右輪に分配する構成であったが、図9のロボット装置10Aでは、先に左右輪の目標速度を演算した後に、左右輪ごとに速度制御が行われるようにしている。
<3.第3の実施の形態>
図10は、本開示を適用したロボット装置の機能的構成のさらに他の例を示している。
図10において、ロボット装置10Bは、IMU183を用いずに、機体の姿勢を推定して制御を行う構成を有している。
図10のロボット装置10Bでは、図4のロボット装置10と比べて、HW部171からIMU183が取り除かれるとともに、機体姿勢推定部251が新たに設けられた構成となる。図10のロボット装置10Bにおいて、図4のロボット装置10と共通する部分については同一の符号が付してあり、その説明は省略する。
機体姿勢推定部251は、左右輪速度センサ182からの出力信号に基づいて、機体の姿勢(姿勢角)を推定し、演算部154、及び自己位置演算部164に出力する。機体速度推定部162は、左右輪速度センサ182からの出力信号に基づいて、機体の角速度を推定し、演算部157に出力する。
以上のように、図10のロボット装置10Bでは、IMU183の代わりに、左右輪速度センサ182からの出力を用いて、機体の姿勢が推定されて制御が行われる。なお、左右輪速度センサ182に限らず、他の姿勢推定センサなどを、IMU183の代わりに用いてもよい。
<4.変形例>
なお、上述した説明では、ロボット装置10の駆動形式として、差動二輪駆動型を例示したが、超信地旋回が可能であるロボット駆動形式であれば、他の駆動形式を用いてもよい。例えば、他の駆動形式としては、超信地旋回が可能であるメカナムホイールやオムニホイール等を用いたものであってもよい。
また、上述した説明では、ロボット装置10において、ディスプレイを含む映像表示ユニット102の姿勢を変化させる際に、1軸で駆動する場合を例示したが、1軸に限らず、2軸などで駆動してもよい。ディスプレイに表示する表示情報としては、映像に限らず、画像やテキストなどの情報であってもよい。また、複数台のロボット装置10を行列状に配置して、各ロボット装置10のディスプレイを組み合わせて、擬似的に所定の形状からなる1つの画面(大画面)として用いてもよい。その際に、各ロボット装置10は、自己の位置や対象のユーザの位置などの状況に応じて映像表示ユニット102(のディスプレイ)の姿勢を調整して、所望の姿勢としてもよい。
本開示を適用したロボット装置10は、制御ユニット101等の制御部を有する自律移動装置であると捉えることができる。この制御部は、ロボット装置10の内部に設けられることは勿論、外部装置に設けられてもよい。
また、本開示を適用したロボット装置10は、制御装置や、センサ装置、ディスプレイ装置、通信装置、移動機構などの複数の装置を組み合わせたシステム(自律移動システム)として捉えることもできる。ここで、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
また、本開示を適用したロボット装置10は、さらに掃除用のアタッチメントを備えることができる。この掃除用のアタッチメントは、モップ状のものであって、ロボット装置10の前面、後面、側面、下面などに取り付けられることによって、ロボット装置10が自律的に走行しながら、走行経路を掃除することができる。掃除する箇所は、走行経路として事前に与えられてもよく、また、ジェスチャ認識によって、指示者の「ここを掃除しろ」といった指示を認識して掃除を行うようにしてもよい。このジェスチャ認識としては、センサ部152の各センサ(カメラ等)からのセンサ信号に基づき、ターゲットとなる指示者の姿勢や動き等の認識処理が行われることで、当該ターゲットのジェスチャが認識される。
さらに、掃除動作と映像表示とを協調して行うようにしてもよい。この場合、掃除を開始するとき、掃除中、掃除が完了したときにその旨の映像表示を行ってもよく、また掃除中に広告やその他の映像表示を行ってもよい。さらに映像表示ユニット102(のディスプレイ)の姿勢も併せて制御してもよい。また、掃除用のアタッチメントは、例示されたモップ状のものに限られず、塵取り形状のものなどその他のものを含む。
<5.コンピュータの構成>
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、各装置のコンピュータにインストールされる。
図11は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
コンピュータ1000において、CPU1001、ROM(Read Only Memory)1002、RAM(Random Access Memory)1003は、バス1004により相互に接続されている。バス1004には、さらに、入出力インタフェース1005が接続されている。入出力インタフェース1005には、入力部1006、出力部1007、記録部1008、通信部1009、及び、ドライブ1010が接続されている。
入力部1006は、マイクロフォン、キーボード、マウスなどよりなる。出力部1007は、スピーカ、ディスプレイなどよりなる。記録部1008は、ハードディスクや不揮発性のメモリなどよりなる。通信部1009は、ネットワークインターフェースなどよりなる。ドライブ1010は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア1011を駆動する。
以上のように構成されるコンピュータ1000では、CPU1001が、ROM1002や記録部1008に記録されているプログラムを、入出力インタフェース1005及びバス1004を介して、RAM1003にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ1000(CPU1001)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア1011に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線又は無線の伝送媒体を介して提供することができる。
コンピュータ1000では、プログラムは、リムーバブルメディア1011をドライブ1010に装着することにより、入出力インタフェース1005を介して、記録部1008にインストールすることができる。また、プログラムは、有線又は無線の伝送媒体を介して、通信部1009で受信し、記録部1008にインストールすることができる。その他、プログラムは、ROM1002や記録部1008に、あらかじめインストールしておくことができる。
ここで、本明細書において、コンピュータがプログラムに従って行う処理は、必ずしもフローチャートとして記載された順序に沿って時系列に行われる必要はない。すなわち、コンピュータがプログラムに従って行う処理は、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含む。また、プログラムは、1のコンピュータ(プロセッサ)により処理されてもよいし、複数のコンピュータによって分散処理されてもよい。
また、上述した処理の各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。また、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
なお、本技術は、以下のような構成をとることができる。
(1)
複数の制御目標点を含む目標軌道に基づいて、追従走行を制御する制御部を備え、
前記制御目標点は、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含み、
前記制御部は、前記制御目標点において、前記指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向を制御する
自律移動装置。
(2)
前記制御部は、機体の左右輪を駆動する左右のモータのトルクリミッタを協調して制御する
前記(1)に記載の自律移動装置。
(3)
前記制御部は、前記制御目標点において、前記指示並進速度に基づいて決定された目標速度と、機体の速度に基づいて、並進速度を制御する
前記(1)又は(2)に記載の自律移動装置。
(4)
前記制御部は、前記進行方向の制御に基づいて決定された目標角速度と、機体の角速度に基づいて、角速度を制御する
前記(3)に記載の自律移動装置。
(5)
前記制御部は、前記機体の速度に基づいて、前記目標角速度を制御する
前記(4)に記載の自律移動装置。
(6)
前記制御部は、前記並進速度の制御と前記角速度の制御に応じたトルクを、機体の左右輪に分配する
前記(4)又は(5)に記載の自律移動装置。
(7)
前記制御部は、機体の左右輪ごとに決定された目標速度と、前記機体の左右輪ごとの速度に基づいて、車輪ごとに速度を制御する
前記(3)に記載の自律移動装置。
(8)
前記機体の姿勢角は、角速度と加速度を検出可能なセンサからの出力に基づいて算出される
前記(1)乃至(7)のいずれかに記載の自律移動装置。
(9)
前記機体の姿勢角は、機体の左右輪に設けられた左右輪速度センサからの出力に基づいて推定される
前記(1)乃至(7)のいずれかに記載の自律移動装置。
(10)
前記機体の姿勢角は、ヨー方向の姿勢角であり、
前記目標角速度と前記機体の角速度は、ヨー方向の角速度である
前記(4)又は(5)に記載の自律移動装置。
(11)
差動二輪駆動型のロボット装置として構成される
前記(1)乃至(10)のいずれかに記載の自律移動装置。
(12)
自律移動装置が、
複数の制御目標点を含む目標軌道に基づいて、追従走行を制御し、
前記制御目標点は、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含み、
前記制御目標点において、前記指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向を制御する
制御方法。
(13)
コンピュータを、
複数の制御目標点を含む目標軌道に基づいて、追従走行を制御する制御部を備え、
前記制御目標点は、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含み、
前記制御部は、前記制御目標点において、前記指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向を制御する
自律移動装置として機能させるプログラム。
複数の制御目標点を含む目標軌道に基づいて、追従走行を制御する制御部を備え、
前記制御目標点は、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含み、
前記制御部は、前記制御目標点において、前記指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向を制御する
自律移動装置。
(2)
前記制御部は、機体の左右輪を駆動する左右のモータのトルクリミッタを協調して制御する
前記(1)に記載の自律移動装置。
(3)
前記制御部は、前記制御目標点において、前記指示並進速度に基づいて決定された目標速度と、機体の速度に基づいて、並進速度を制御する
前記(1)又は(2)に記載の自律移動装置。
(4)
前記制御部は、前記進行方向の制御に基づいて決定された目標角速度と、機体の角速度に基づいて、角速度を制御する
前記(3)に記載の自律移動装置。
(5)
前記制御部は、前記機体の速度に基づいて、前記目標角速度を制御する
前記(4)に記載の自律移動装置。
(6)
前記制御部は、前記並進速度の制御と前記角速度の制御に応じたトルクを、機体の左右輪に分配する
前記(4)又は(5)に記載の自律移動装置。
(7)
前記制御部は、機体の左右輪ごとに決定された目標速度と、前記機体の左右輪ごとの速度に基づいて、車輪ごとに速度を制御する
前記(3)に記載の自律移動装置。
(8)
前記機体の姿勢角は、角速度と加速度を検出可能なセンサからの出力に基づいて算出される
前記(1)乃至(7)のいずれかに記載の自律移動装置。
(9)
前記機体の姿勢角は、機体の左右輪に設けられた左右輪速度センサからの出力に基づいて推定される
前記(1)乃至(7)のいずれかに記載の自律移動装置。
(10)
前記機体の姿勢角は、ヨー方向の姿勢角であり、
前記目標角速度と前記機体の角速度は、ヨー方向の角速度である
前記(4)又は(5)に記載の自律移動装置。
(11)
差動二輪駆動型のロボット装置として構成される
前記(1)乃至(10)のいずれかに記載の自律移動装置。
(12)
自律移動装置が、
複数の制御目標点を含む目標軌道に基づいて、追従走行を制御し、
前記制御目標点は、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含み、
前記制御目標点において、前記指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向を制御する
制御方法。
(13)
コンピュータを、
複数の制御目標点を含む目標軌道に基づいて、追従走行を制御する制御部を備え、
前記制御目標点は、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含み、
前記制御部は、前記制御目標点において、前記指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向を制御する
自律移動装置として機能させるプログラム。
10,10A,10B ロボット装置, 101 制御ユニット, 102 映像表示ユニット, 103 画面昇降ユニット, 104-1 左モータエンコーダ, 104-2 右モータエンコーダ, 105-1 左モータ, 105-2 右モータ, 106-1乃至106-3,106 センサ, 107 バッテリユニット, 151 経路追従制御部, 152 演算部, 153 並進速度制御部, 154 演算部, 155 進行方向制御部, 156 演算部, 157 演算部, 158 角速度制御部, 159 左右輪分配部, 160 左右協調トルクリミッタ, 161-1 左トルク制御部, 161-2 右トルク制御部, 162 機体速度推定部, 163 姿勢演算部, 164 自己位置演算部, 171 HW部, 181-1,181-2 モータドライバ, 182 左右輪速度センサ, 183 IMU, 184 測位部, 201 左右輪速度偏差演算部, 202-1,202-2 演算部, 203-1 左モータ速度制御部, 203-2 右モータ速度制御部, 251 機体姿勢推定部
Claims (13)
- 複数の制御目標点を含む目標軌道に基づいて、追従走行を制御する制御部を備え、
前記制御目標点は、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含み、
前記制御部は、前記制御目標点において、前記指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向を制御する
自律移動装置。 - 前記制御部は、機体の左右輪を駆動する左右のモータのトルクリミッタを協調して制御する
請求項1に記載の自律移動装置。 - 前記制御部は、前記制御目標点において、前記指示並進速度に基づいて決定された目標速度と、機体の速度に基づいて、並進速度を制御する
請求項1に記載の自律移動装置。 - 前記制御部は、前記進行方向の制御に基づいて決定された目標角速度と、機体の角速度に基づいて、角速度を制御する
請求項3に記載の自律移動装置。 - 前記制御部は、前記機体の速度に基づいて、前記目標角速度を制御する
請求項4に記載の自律移動装置。 - 前記制御部は、前記並進速度の制御と前記角速度の制御に応じたトルクを、機体の左右輪に分配する
請求項4に記載の自律移動装置。 - 前記制御部は、機体の左右輪ごとに決定された目標速度と、前記機体の左右輪ごとの速度に基づいて、車輪ごとに速度を制御する
請求項3に記載の自律移動装置。 - 前記機体の姿勢角は、角速度と加速度を検出可能なセンサからの出力に基づいて算出される
請求項1に記載の自律移動装置。 - 前記機体の姿勢角は、機体の左右輪に設けられた左右輪速度センサからの出力に基づいて推定される
請求項1に記載の自律移動装置。 - 前記機体の姿勢角は、ヨー方向の姿勢角であり、
前記目標角速度と前記機体の角速度は、ヨー方向の角速度である
請求項4に記載の自律移動装置。 - 差動二輪駆動型のロボット装置として構成される
請求項1に記載の自律移動装置。 - 自律移動装置が、
複数の制御目標点を含む目標軌道に基づいて、追従走行を制御し、
前記制御目標点は、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含み、
前記制御目標点において、前記指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向を制御する
制御方法。 - コンピュータを、
複数の制御目標点を含む目標軌道に基づいて、追従走行を制御する制御部を備え、
前記制御目標点は、目標到達時刻、指示座標、指示姿勢角、指示並進速度、及び指示回転速度を少なくとも含み、
前記制御部は、前記制御目標点において、前記指示姿勢角に基づいて決定された目標姿勢角と、機体の姿勢角とに基づいて、進行方向を制御する
自律移動装置として機能させるプログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020-171551 | 2020-10-09 | ||
JP2020171551 | 2020-10-09 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022075082A1 true WO2022075082A1 (ja) | 2022-04-14 |
Family
ID=81126732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2021/034954 WO2022075082A1 (ja) | 2020-10-09 | 2021-09-24 | 自律移動装置、制御方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2022075082A1 (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015158844A (ja) * | 2014-02-25 | 2015-09-03 | 村田機械株式会社 | 自律走行台車 |
CN111399489A (zh) * | 2018-12-14 | 2020-07-10 | 北京京东尚科信息技术有限公司 | 用于生成信息的方法和装置 |
-
2021
- 2021-09-24 WO PCT/JP2021/034954 patent/WO2022075082A1/ja active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015158844A (ja) * | 2014-02-25 | 2015-09-03 | 村田機械株式会社 | 自律走行台車 |
CN111399489A (zh) * | 2018-12-14 | 2020-07-10 | 北京京东尚科信息技术有限公司 | 用于生成信息的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110244772B (zh) | 移动机器人的领航跟随系统和领航跟随控制方法 | |
Wenzel et al. | Automatic take off, tracking and landing of a miniature UAV on a moving carrier vehicle | |
Wenzel et al. | Low-cost visual tracking of a landing place and hovering flight control with a microcontroller | |
US8521339B2 (en) | Method and system for directing unmanned vehicles | |
Lange et al. | Autonomous corridor flight of a UAV using a low-cost and light-weight RGB-D camera | |
CN110262495A (zh) | 可实现移动机器人自主导航与精确定位的控制系统及方法 | |
US20140018994A1 (en) | Drive-Control Systems for Vehicles Such as Personal-Transportation Vehicles | |
JP5760084B2 (ja) | ターゲット・トラッキングのための駆動指令基盤のビジョン装置の制御システム及び方法 | |
Li et al. | Localization and navigation for indoor mobile robot based on ROS | |
CN113190020A (zh) | 一种移动机器人队列系统及路径规划、跟随方法 | |
WO2018077307A1 (zh) | 一种运动控制方法、装置和计算机存储介质 | |
JP2008142841A (ja) | 移動ロボット | |
CN113589685B (zh) | 一种基于深度神经网络的挪车机器人控制系统及其方法 | |
CN110837257A (zh) | 一种基于iGPS与视觉的AGV复合定位导航系统 | |
US9565363B1 (en) | Stabilization of captured images for teleoperated walking biped robots | |
Phunopas et al. | Motion Improvement of Four-Wheeled Omnidirectional Mobile Robots for Indoor Terrain. | |
CN111506054A (zh) | 一种4wid-4wis机器人底盘的自动导引方法 | |
WO2022075082A1 (ja) | 自律移動装置、制御方法、及びプログラム | |
JP6832394B2 (ja) | 自己位置推定装置、自己位置選択装置、及び学習器 | |
Angeletti et al. | Autonomous indoor hovering with a quadrotor | |
CN115993089B (zh) | 基于pl-icp的在线四舵轮agv内外参标定方法 | |
CN116968808A (zh) | 一种十字对称四轮独立驱动转向机器人控制方法和机器人 | |
Xu et al. | Target tracking control of mobile robot in diversified manoeuvre modes with a low cost embedded vision system | |
Stegagno et al. | Vision-based autonomous control of a quadrotor UAV using an onboard RGB-D camera and its application to haptic teleoperation | |
Li et al. | Output feedback image-based visual servoing of rotorcrafts |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21877383 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21877383 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |