JP2821909B2 - Travel control device for unmanned vehicles - Google Patents

Travel control device for unmanned vehicles

Info

Publication number
JP2821909B2
JP2821909B2 JP16481189A JP16481189A JP2821909B2 JP 2821909 B2 JP2821909 B2 JP 2821909B2 JP 16481189 A JP16481189 A JP 16481189A JP 16481189 A JP16481189 A JP 16481189A JP 2821909 B2 JP2821909 B2 JP 2821909B2
Authority
JP
Japan
Prior art keywords
area
passable
distance
unmanned
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP16481189A
Other languages
Japanese (ja)
Other versions
JPH0329010A (en
Inventor
勝洋 上川
Original Assignee
株式会社小松製作所
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社小松製作所 filed Critical 株式会社小松製作所
Priority to JP16481189A priority Critical patent/JP2821909B2/en
Publication of JPH0329010A publication Critical patent/JPH0329010A/en
Application granted granted Critical
Publication of JP2821909B2 publication Critical patent/JP2821909B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

Description: BACKGROUND OF THE INVENTION [0001] The present invention relates to traveling control of an unmanned mobile such as a mobile robot, and more particularly to grasping the surrounding state of the unmanned mobile by using fuzzy inference and suitably detecting obstacles. The present invention relates to a travel control device for an unmanned moving body that travels to a destination while avoiding it.

[Conventional technology]

Conventional techniques for avoiding obstacles include mathematical programming or heuristic search using a conventional configuration space. In these conventional techniques, an optimal avoidance route or an ideal curve is obtained, and a mobile robot travels along the route or the curve. Was like that.

[Problems to be solved by the invention]

In such a conventional technique, since the steering control is performed every time the mobile robot deviates from the calculated route, there is a problem that the operation of the robot is jerky, and efficient traveling cannot be performed.

Further, in the above-described conventional technology, there is a problem that a robot cannot travel efficiently along a smooth curve because a route cannot be intuitively selected as when a human is driving a car.

The present invention has been made in view of such circumstances,
An unmanned mobile traveling control device that allows the unmanned mobile to travel efficiently along a smooth curve by accurately understanding the surroundings of the unmanned mobile and selecting a route similar to that of human intuition. It is intended to provide.

[Means for solving the problem]

According to the present invention, in a travel control device for an unmanned mobile object that automatically runs the unmanned mobile object to a target point while avoiding obstacles, a position and orientation measurement unit that sequentially measures the current position and attitude of the unmanned mobile object, and a position of the target point Target position setting means for presetting, and by scanning at a predetermined angle interval within a predetermined azimuth angle range including the traveling direction of the unmanned mobile, the distance data to an obstacle present in the azimuth angle range is obtained. Using the distance measurement means acquired at a predetermined angle interval and the distance data from the distance measurement means, if the distance data of the azimuth angle is longer than a predetermined distance set in advance, the measurement point of the azimuth angle may be an obstacle. It is determined that they belong to a spatial region that does not exist, and the distance data of the azimuth and the distance data of the azimuth adjacent to the azimuth are compared. If the measurement point of the azimuth and the adjacent azimuth is smaller than a predetermined set value, the measurement point of the azimuth and the adjacent azimuth are determined to be the same obstacle region. An area dividing unit that divides the periphery of the unmanned mobile object into one or a plurality of space areas and one or a plurality of obstacle areas by determining the obstacle area as another obstacle area; An area is extracted, the width of the extracted space area is obtained, and the passable area is determined based on a comparison between the width data and a preset width of the unmanned mobile object to determine whether the space area is a passable area. When there is only one region determined to be passable by the determination unit and the passability determination unit, the region is selected, and when there are a plurality of regions determined to be passable by the passability determination unit, Based on the outputs of the position and orientation measuring means, the target position setting means and the distance measuring means, the distance from the unmanned mobile to the passing area and the deviation of the direction of the passing area from the direction of the target point for these plural passing areas. Each angle is obtained, the distance data and the deviation angle data to these passable areas and the obtained width data of the passable area are set as fuzzy input variables, and the passable priority of each passable area is set as an output fuzzy variable, and the distance is determined. The passable priority of each passable area is obtained by fuzzy inference using a fuzzy rule in which the passable priority becomes high as the width is short, the deviation angle is small, and the width is wide. Means for selecting a passable area having the highest priority among the Traveling control means for controlling the traveling of the unmanned mobile object so that the unmanned mobile object travels in the direction of the selected passable area.

[Action]

In the present invention, a passage route is selected using Fiji inference.

When driving a car to a target point, considering that there are some obstacles on the way, if you can see the target point beyond a certain passable area, drive the car to that area Good, but otherwise the width of the passable area is "wide" or the distance to the area is "close",
One passable area will be determined by intuitively judging whether it is “close” to the target point. As described above, the expression such as “wide” or “close” is an expression having ambiguity. In the present invention, a fuzzy inference is used as a means for selecting an optimal transmissible area, and selection by human intuition is performed. The same control as described above is performed.

Also, in order to determine the optimal passable area and move to that area, this is also based on the experience and knowledge of human beings when driving a car. Is far, even if the traveling direction deviates considerably to the right with respect to the area, the steering angle may be slowly turned to the left. " Therefore, in the present invention, such ambiguous expressions are logicalized in the form of fuzzy control rules, and several such rules are prepared and controlled so that the mobile robot can be driven in the same manner as a human driving a car. I try to run smoothly.

Specifically, the selection of the passage area and the traveling control are performed as follows.

By scanning at a predetermined angle interval within a predetermined azimuth angle range including the traveling direction of the unmanned moving object, distance data to an obstacle existing in the azimuth angle range is acquired at the predetermined angle interval, and these are acquired. Using the distance data, if the distance data of the azimuth is longer than a predetermined distance, it is determined that the measurement point of the azimuth belongs to a space area where no obstacle exists, and the distance of the azimuth is determined. Compare the data and the distance data of the azimuth adjacent to the azimuth, and if the difference between the two is smaller than a predetermined set value, determine the measurement point of the azimuth and the adjacent azimuth as the same obstacle area, When the difference is larger than a predetermined set value, the measurement point of the azimuth and the adjacent azimuth is determined as another obstacle area, and one or a plurality of space areas around the unmanned mobile object are determined. The rest are divided into a plurality of obstacle region.

A space region is extracted from these divided regions, a width of the extracted space region is obtained, and a region through which the space region can pass based on a comparison between the width data and a predetermined width of the unmanned mobile object. It is determined whether or not.

If there is only one area that is determined to be passable, select that area. If there are multiple areas that are determined to be passable, the unmanned vehicle can pass through these multiple passable areas. The distance to the area,
The deviation angle of the direction of the passable area from the direction of the target point,
A fuzzy rule in which the width data of the passable area is set as a fuzzy input variable and the passable priority of each passable area is set as an output fuzzy variable, and the passable priority becomes higher as the distance is shorter, the deviation angle is smaller, and the width is wider. The feasibility of each passable area is determined by fuzzy inference using, and one of the determined plurality of passable priorities is selected with the highest priority.

Then, the travel control of the unmanned mobile body is performed so that the unmanned mobile body travels in the direction of the selected passable area.

〔Example〕

An embodiment of the present invention will be described below with reference to the accompanying drawings.

In this embodiment, the present invention is applied to a mobile robot, and a mobile robot 1 has a pair of left and right driving theories 2 and four shutters 3 as shown in FIG. By being driven, the vehicle travels. These drive wheels 2 are each driven by a motor 6, as shown in FIG. Pulse encoders 5 are provided on the rotating shafts of the respective motors 6, and output palaces of these pulse encoders 5 are input to a current position measuring unit 10.

The current position measuring unit 10 calculates the output of each pulse encoder 5 or the number of rotations of the left and right driving wheels 2, and sequentially calculates the current position (X, Y) and the attitude angle φ of the robot 1 in the absolute coordinate system based on the number of rotations. Calculation output. In this case, a known dead reckoning is used for this calculation.

A range finder as an obstacle data measurement unit 20 is provided on the upper part of the robot body. The range finder 20 is configured as shown in FIG.

That is, the laser beam from the laser oscillator 21 is
Is reflected and output to the outside. Since the mirror 22 is rotated about the axis 24 by the motor 23, the laser beam is emitted in all directions at 360 °. Pulse encoder 2
5 outputs a pulse corresponding to the rotation of the motor 25, and inputs this pulse to the counter 26. The counter 26 counts the pulses to calculate a rotation angle of the mirror 24, that is, a laser projection angle signal θ indicating the laser projection direction, and inputs the angle signal θ to the calculator 30. The laser projection angle signal θ is a signal indicating the angle between the reference direction and the laser projection direction, with the direction in which the mobile robot is facing at each time as the reference orientation.

On the other hand, the reflected light of the emitted laser light from the obstacle is received by the PSD 28 (semiconductor position detecting device) via the optical system 27. The PSD28 converts the signal a indicating the light transmission position into an A / D converter
It is input to the arithmetic unit 30 via 29.

The arithmetic unit 30 sequentially calculates the distance r between the mobile robot and the obstacle in all directions based on the input light receiving position signal a and the laser projection angle signal θ, and calculates the calculation result as the distance r. The signal is output as a (r, θ) signal in which the laser projection angle signal θ is combined.

The details of the calculation for obtaining the distance r are not directly related to the present invention, and therefore the description thereof will be omitted, but the applicant has filed a Japanese Patent Application No. 63-1988 filed on August 10, 1988.
The technology described in 199315, "Mobile obstacle detection device" is used.

The range finder 20 outputs the distance data r in all directions. In this embodiment, the range finder 20 outputs the distance data in all directions at intervals of 5 °. That is, when the range finder 20 is rotated once, the range finder 20 outputs 72 distance data (r i , θ i ) as shown in FIG.
(I = 0 to 71) is output. The data of the traveling direction of the robot is θ 0 = 0 °, and thereafter, i increases by +1 each time the rotation angle advances 5 ° in the counterclockwise direction. However, in this case, θ is given a positive or negative sign with the traveling direction of the robot as a reference direction, and θ 1 to θ 35 > 0 and θ 36 to θ 71 <0. That is, θ 35 = 175 °, θ 34 = 170 °,... Θ 1
= 5 °, θ 0 = 0 °, θ 71 = -5 °, θ 70 = -10 °, ...
... It is assumed that θ 37 = −175 ° and θ 36 = −180 °.

Further, in the range finder 20, since the measurement distance γ is limited, only the distance of an obstacle within γ = γ a (for example, γ a = 6 m) can be measured, and the distance to the obstacle is larger than γ a . When the distance is large or when there is no obstacle, the range finder 20 outputs r = ∞ (infinity).

In this case, since the range finder 20 is mounted above the vehicle body, only obstacles having a height h> h 'can be detected (see FIG. 2), but the range finder 20 is located at a lower position at the front of the vehicle body. By mounting, obstacle detection at a lower height can be achieved.

Next, in FIG. 1, a target position setting section 40 sets absolute coordinates ( Xc , Yc ) of the target position G, and the target position G is input and set by the operator before traveling.

This apparatus uses the obstacle data (r, θ), the current position / posture data (X, Y, φ) of the robot, and the target position data ( Xc , Yc ) based on the velocity data v and the angular velocity data of the mobile robot. By calculating β and inputting it to the motor driving device 35, the motor driving device 35 controls the driving of each motor 6 so that the mobile robot runs while avoiding obstacles. In, the travel control section 70 outputs the final output data v, β by performing the following processing by the passability determination section 50, the pass area selection section 60, and the travel control section 70, respectively.

-Passability determination unit 50 (r, θ) data and (X, Y, φ) data are input,
Based on these data, the travel area is divided into areas, and it is determined whether each of the divided areas can pass or cannot pass.

• Passing area selection unit 60 (r, θ) data, (X, Y, φ) data, and (X c , Y c )
When data is input and there are a plurality of passable areas, one optimal passable area is selected based on the input data.

・ Travel control unit 70 (r, θ) data, (X, Y, φ) data and (X c , Y c )
Data is input, and traveling steering control for causing the mobile robot to travel to the selected passable area is performed.

However, the fuzzy inference unit 80 is used for the arithmetic processing in the passage area selecting unit 60 and the traveling control unit 70, and these arithmetic processings are executed by fuzzy inference.

Hereinafter, the arithmetic processing by the components 50, 60, and 70 will be described more specifically.

(A) Processing in the passability determination section 50-Area division The passability determination section 50 uses the output data (r i , θ i ) (i = 0 to 71) of the range finder 20 to center on the robot 1. The area division of the 360 ° omnidirectional area is performed as follows.

That is, the following condition determining formulas r i + 1 -Δr <r i <r i + 1 + Δr (i = 0~70) r 0 -Δr <r i <r 0 + Δr (i = 71) ( However, [Delta] r: set (R i , θ i ) and (r i + 1 , θ i + 1 ) are determined to be in the same region, and (r i , θ i ) and (r i + 1 , θ i + 1 ) are determined to be different areas. However, if the following expression holds when i = 71, it is determined that (r 71 , θ 71 ) and (r 0 , θ 0 ) are in the same region.

That is, the determination expression is distance data r i of the adjacent measuring points, as long as there is no significant difference than Δr between r i + 1, these measuring points is determined to be the same region. According to this area division, for example, in the case of FIG. 5, the area is divided into three areas of BK 0 , BK 1 , and BK 2 .

By the way, in the area division by the above equation, for example, the sixth
As shown, Despite the possible likely areas BK 1 passes between the region BK 0 and region BK 2, it is impossible to determine the region BK 1 as a separate region.

Therefore, the following conditional expression is further added to the conditional expression.

That, r i + 1 -Δr ≧ r i or r i + 1 + Δr ≦ r i ( however, r i + 1 ≠ ∞ r i ≠ ∞; i = 0~70) r 0 -Δr ≧ r i or r 0 + Δr ≦ r i (provided that r i + 1 ≠ ∞ r i ≠ ∞; i = 71) if satisfied ...... is 2 and (r i, θ i) and (r i + 1, θ i + 1) The measurement points are separated from the preceding and following regions, and one region formed by only these two measurement points is generated. The addition of determination by the determination formula, even when the sixth diagram enabling the identification of regions BK 1 between regions BK 0 and region BK 2.

As described above, when the region division processing using the conditional expression is completed, a start point indicating the start of the region and an end point indicating the end of the region are extracted for each of the divided regions, and the obstacle data at the start point is represented by ( rs [j] ,
θ s [j] ) and the obstacle data at the end point are represented by (r
e [j] , θ e [j] ). However,
j = 0 to n−1, and n is the number of area divisions.

-Passability determination When the above-described area division processing is completed, the passability determination unit 50
Determines whether each of the divided areas can pass. Hereinafter, the determination algorithm will be described with reference to the flowchart of FIG.

First, a determination process is performed to determine whether or not it is possible to pass from the divided area of j = 0 (step 100).

Here, in this device, it is assumed that the robot 1 proceeds to the front area, and the robot 1 does not travel in the area determined to be the rear area.

Therefore, the passability determination unit 50 determines whether the divided region of j = 0 belongs to the front region or the rear region (Step 110). In the determination of the front and rear areas, the right and left sides of the direction in which the vehicle body faces are 90 °, that is, −
90 ° ≤ θ ≤ 90 ° as `` front '', and among the divided regions, it is determined that a divided region that does not include any part of the region in the angle range of `` front '' belongs to the rear region, All others are determined to belong to the front area.

Therefore, in the case as shown in FIG.
0 out of ~BK 5, determines that the BK 0, BK 1, BK 2 , and BK 5 belong to the front region, BK 3 and BK 4 belong to the rear region.
In the case shown in FIG. 8B, the divided areas BK 0 to BK 3
Are determined to belong to the front area.

Then, it is determined that the divided area determined to be the rear area cannot proceed, and the robot does not travel toward the rear area (step 160).

If it is determined that the divided area belongs to the front area,
The passability determination unit 50 determines the obstacle distance data of the divided area.
It is determined whether an obstacle exists in the divided area based on r i (step 120). That is, in this step 120, if the conditional expression is not a divided area and all r of the divided area are not ∞, it is determined that the divided area is an obstacle area and the divided area is passed. It is impossible (step 160).

When it is determined in step 120 that the divided area is not the obstacle area, the passability determining unit 50 determines whether the divided area is the side wall area (step 130). That is, when there is an obstacle 51 such as a wall on the left and right sides of the robot 1 as shown in FIGS. since it would confuse the gap region BK 1 as shown in figure, so as to extract a side wall area by the determining by the following equation.

r s [j]> r e right next to the r of r s [j] when the [j]> r s [j ] and left next to the r of the re [j] <re [j ] ...... r s [j When <re [j] , r <rs [j] on the right side of rs [j] and r> re [j] on the left side of re [j]. If the condition is satisfied, it is determined that the divided area is the side wall area, and the passage is not allowed (step 160). The equation is for detecting the left side wall, and the equation is for detecting the right side wall.

The divided areas (rs [j] , θs [j] ) not determined to be unpassable in the determination processing of steps 110 to 130 above
As a result, (r e [j] , θ e [j] ) is a region where r is all ∞ as shown in FIG. 10, or a gap region between obstacles according to the conditional expression as shown in FIG. The passability determination unit 50 executes a process called “region expansion” for such a region (step 14).
0).

This area expansion processing is an operation performed to grasp the width interval Z of the area to some extent accurately. Specifically, the start point s of the divided area determined not to be an obstacle area
This is an operation to expand [j] and the end point e [j] to the left and right.

When all the values of r of the divided area are ∞ as shown in FIG. 10 during the area expansion, first, the end point e [j] and the start point s [j] of the divided area are moved to the left and right, respectively. Expand one section (5 ゜). That is, the suffixes of the start point and the end point of the expanded area are s '[j], e'
If [j], then s' [j] = s [j] -1 e '[j] = e [j] +1 However, if s' [j] =-1, s' [j] = 71 e' [ If j] = 72, e '[j] = 0.

When the value of r of the divided area is not ∞ as shown in FIG. 11, the area is not expanded at first, and s ′ [j] = s [j] e ′ [j] = e [j] Set it temporarily.

Then, the area expansion processing is executed according to the area expansion algorithm shown in FIG.

In the passability determination unit 50, first, the first rs ' [j] and r
e ′ [j] (step 200), and rs ′ [j].
If ≤re '[j] , K = e' [j] (step 210), and if rs ' [j] > re '[j] , K = s' [j]. (Step 250). That is, r
Select the larger one of s '[j] and re ' [j] ,
The area is expanded only on the selected side by the following processing. If re ′ [j] ≦ rs ′ [j] , then r kL > r k or r kL < rs ′ [j] <r k r kL ; r value on the left of r k . Is checked (step 220). If this formula does not hold, k is incremented by 1 to make the area 1
It is expanded to the left side of the section (step 240), and thereafter, it is searched again whether or not the above expression holds (step 220).
Thereafter, k is +1 until the above equation is satisfied.
As a result, the area is expanded leftward by one section. Then, k when the equation is satisfied is set as the final extension point e '[j] (step 230), and the process ends.

r s'[j]> r e ' when a [j] is the reverse r kR> r k or r kR <r e' [j ] <r k r kR; right of the r k Until the r value is established, the start point s' [j] is decremented by one, so that the area is expanded leftward by one section.

That is, in such area expansion processing, r
One of s' [j] and re''j] has a shorter r value, and the other region is expanded until the other r value is substantially equal. I am getting it. By the way, in FIG. 10, two partitions are finally expanded to the left and one partition is expanded to the right.
In FIG. 11, three division areas are extended to the left.

After performing the above-described area expansion processing, the passability determination unit 50 checks the angle range of the area (FIG. 7, step 14).
1) If the angle range is greater than 180 °, it is determined that the area can be passed as it is because there is no way to obtain the area width (step 17).
0), if the angle range is less than 180 °, the width Z of the area is calculated (FIG. 7, step 142). The width Z is calculated as follows using the cosine theorem (see FIGS. 10 and 11).

Next, the passability determination unit 50 compares the calculated area width Z with the width L (known) of the mobile robot 1 (step 150). If Z> L, the pass is possible. If Z ≦ L, the pass is impossible. (Steps 160 and 170).

When the passability determination processing for j = 0 is completed in this way, the passability determination unit 50 then increments j by 1 (step 180), and executes the same passability determination processing as described above for the next divided area. I do. In the same manner, it is determined whether or not all the n divided areas can pass.

(B) Processing in the Passage Area Selection Unit 60 • Passage Area Selection Assuming that m passable areas are obtained by the above-described processing by the passability determination unit 50, obstacles at the start point and end point of the area before expansion are obtained. The data and the same obstacle data after the extension are respectively m pieces.

The passing area selection unit 60 selects which of the m passing areas the robot 1 is to travel.
The fuzzy inference unit 80 is used for this selection processing.

Here, as shown in FIG. 13, local coordinates around the robot 1 are considered. The center of the robot 1 is 0, the direction of the robot is F, the direction of the goal position G is G ′, and the direction with respect to the direction F is further described. Let the angle of G be θg. This thirteenth
The figure also shows a case where there is a goal direction G ″ on the right front of the robot 1. The following angle kk is defined as an index indicating how much the goal direction G ′ deviates from the passable area. .

θ gs [k] or θ g> θ e [k] if Θk = min (| θs [k ] -θg | | θ e [k] -θ g |) θs [k] <θ g < If θ e [k] , k k = 0... min (A, B) means that the smaller value of A and B is selected.

According to the above equation, if the goal direction G ′ is within the angle range of the passable area before expansion, Θ k = 0,
In this case, this area is selected with the highest priority. This is because if the goal direction G 'is included in the angle range of the passable area, the goal point G is closer to the area regardless of whether the area is slightly narrow or even if the distance to the area is long. Based on the idea that the distance to is the shortest.

On the other hand, if Θ k ≠ 0, the pass area is determined by fuzzy inference. That is, when a human is driving a car,
The intuitive judgment and guess that the area is wide, or the distance to the area is short, or closer to the goal direction is to select the area that seems to be the best. It quantifies the ambiguity of human thinking and uses fuzzy inference as a means to make such inferences. The fuzzy inference is used to calculate the value of the passable priority α k for each passable area, and the area having the largest α k value is selected.

Here, the width interval of each area obtained in the previous area expansion processing by the passability determination unit 50 is Z k (in FIG. 13, And The middle point of ▲ ▼ is M, and robot 1
Is defined as the distance l k = ▲ ▼ from the area to the passable area.

Then, these Θ k , l k , Z k are set as input fuzzy variables and α
The following eight fuzzy rules are set using k as an output fuzzy variable.

(1) If Θ k is SMALL and l k is NEAR and Z k is WIDE then α k is VH (2) If Θ k is SMALL and l k is NEAR and Z k is NARROW then α k is H (3) If Θ k is SMALL and l k is FAR and Z k is WIDE then α k is H (4) If Θ k is SMALL and l k is FAR and Z k is NARROW then α k is M (5) If Θ k is BIG and l k is NEAR and Z k is WIDE then α k is M (6) If Θ k is BIG and l k is NEAR and Z k is NARROW then α k is L (7) If Θ k is BIG and l k is FAR and Z k is WIDE then α k is L (8) If Θ k is BIG and l k is FAR and Z k is NARROW then α k is VL It should be noted, Θ k, l k, Z k, each fuzzy of α k The evaluation of the variables is as follows.

Θ k : SMALL… small BIG… large l k : NEAR… close FAR… far Z k : NARROW… narrow WIDE… wide α k : VH (very High)… very high H (High) ... High M (Medium)... Medium L (Low)... Low VL (Very Low)... Very low Also, the fuzzy variables Θ k , l k , Z are shown in FIGS. 14 (a) to (d).
The membership function of k and α k is shown.

The fuzzy inference unit 80 executes these fuzzy rules (1) to
(8) and the passability priority α k of each divided region is obtained using the membership function, and the divided region having the largest α k value is selected as the passage region. The fuzzy inference method is EMMamd, an indirect method proposed by Yahachiro Tsukamoto and others.
Although there are various methods such as the direct method proposed by ani et al., any method may be used.

(C) Processing in the Travel Control Unit 70-Travel Control Once the optimal area to be passed is determined by fuzzy inference by the passing area selection unit 60, the travel control unit 70 then runs the robot in the determined area. Is performed. The fuzzy inference unit 80 is also used for this traveling control.

That is, when a person drives a car, for example, when the steering angle of the car is considerably deviated to the left from the passing area, and when the distance to the area is long, the steering angle of the car is slowly turned to the right. The vehicle speed and steering control are performed based on experience and judgment. Therefore, if the traveling control of the mobile robot is also performed by fuzzy inference that quantifies the ambiguity of human thinking, it is possible to travel near human driving.

In this traveling control, the traveling state is divided into the following three cases, and different traveling control is performed for each case.

(I) θ e [k] -θ s [k] <180 ° (ii) θ e [k] -θ s [k] ≧ 180 ° cutlet Θ = 0 (iii) θ e [k] -θ s In the traveling control in which [k] ≧ 180 ° and { 0 (i), the angle MM is used as a fuzzy input variable in addition to the above-described distance l k to the passing area and the width interval Z k of the passing area. Angle [psi M, as shown in FIG. 13, ▲ is the angle orientation of the robot for ▼, is an index indicating the measure of how much the robot from the middle direction of the passage region. Also, as fuzzy output variables,
The velocity v and the angular velocity β of the robot are used.

The fuzzy rules for speed / steering control are as follows.

(1) 'if l k is FAR then v is FAST (2)' if l k is NEAR and Z k is WIDE then v is FAST (3) 'if l k is NEAR and Z k is NARROW then v is SLOW ( 4) 'if l k is FAR and ψ M is LLEFT then β is RIGHT (5)' if l k is FAR and ψ M is LEFT then β is RIGHT (6) 'if l k is FAR and ψ M is M then β is M (7) 'if l k is FAR and ψ M is RIGHT then β is LEFT (8)' if l k is FAR and ψ M is RRIGHT then β is LEFT (9) 'if l k is NEAR and ψ M is LLEFT then β is RRIGHT (10) ′ if l k is NEAR and ψ M is LEFT then β is RIGHT (11) ′ if l k is NEAR and ψ M is M then β is M (12) ′ if l k is NEAR and ψ M is RIGHT then β is LEFT (13) ′ if l k is NEAR and ψ M is RRIGHT then β is LLEFT Note that the evaluation of each fuzzy variable l k , Z k , ψ M , v, and β is It is as follows.

l k : NEAR… close FAR… far Z k : NARROW… narrow WIDE… wide ψ k : LLEFT… quite left shift LEFT… left shift M… medium RIGHT… Right shift RRIGHT… Quite right shift v: FAST… Fast SLOW …… Slow β; LLEFT …… Left to the left LEFT …… Left to the left M …… No steering RIGHT …… Right to the right RRIGHT ...... quickly turn to the right hand, these fuzzy variables ψ M, l k, Z k , v a membership function showing the grade value of and β FIG. 15 (a) ~
(E) shows each.

That is, even in the traveling control, the fuzzy inference unit 80
Using the fuzzy rules (1) 'to (13)' and the membership functions shown in FIG. 15, the speed v and the angular speed β are sequentially obtained by fuzzy inference, and the obtained v and β are obtained from the traveling control unit 70 by the motor drive unit 35. To control the speed and steering of the robot.

The traveling control (i) of the mobile robot according to the fuzzy rules (1) 'to (13)' described above does not mean that the robot is traveling along the straight line OM, but is at the center point M of the passing area. The robot is about to run.

With regard to speed control, when the distance to the point M is long, the robot is driven at high speed. When the passage area is narrow or when the distance to the point M is short, the vehicle speed is reduced and the robot is driven at low speed. Like that.

Regarding the steering control, for example, when the distance to the point M is long and the robot is facing the left considerably, the steering is slowly turned to the right, and the distance to the point M is short and the robot is considerably left. If so, the steering angle is controlled so as to turn right quickly.

Next, in the travel control of (ii), this travel control is performed by θ
e [k] −θs [k] ≧ 180 ° and {k
= 0, that is, the case where the goal direction G ′ exists in the passing area sandwiched between the θ s [k] direction and the θ e [k] direction.

That is, in this case, the travel control to the use of (i), since the region distance Z k is not determined can not travel control (i) (see FIG. 16). Therefore, in this case, as shown in FIG. 16, the goal position G (X c, Y c) and robot position O (X, Y) and the input variables l k fuzzy rules distance ▲ ▼ ahead with, the input variable Z k is a predetermined constant value, for example, substituted by the vehicle width l d of the robot 1 and the input variable [psi M is substituted by - [theta] g.

That and l k = ▲ ▼ Z k = constant value (= the robot width l d) ψ M = -θ g , according to these the fuzzy rules as fuzzy input variable (1) '- (13)', velocity and steering Perform control.

According to the traveling control (ii), the robot 1 travels toward the goal G, not toward the center of the passing area.

Next, in the traveling control of (iii), this traveling control is, for example, as shown in FIG. 17, θ e [k] −θ s [k] ≧ 18
0} and {0, that is, the goal direction G ′ does not exist in the passing area.

In this case, the interval Z k of the area is the same as the travel control of (ii).
Is not obtained, the traveling control of (i) cannot be performed, and there is an obstacle in the direction of the goal, and (ii)
I can not do like the running control of.

Therefore, in such a case, the obstacle is passed on the left or right side.

More specifically, the following equation | θ s [k] -θ g | <| θ e [k] -θ g | If ...... has been established, it is determined that the person who has passed through the Hidarisoba is closer to the goal Pass on the left side.

That is, to the left of the start point a 1 after the area expansion,
The imaginary point C 0 provided, the point C 0 and virtual endpoints of passage area, so as to run the robot 1 toward the center M 1 in the region sandwiched by the point a 1 and the point C 0.

The virtual point C 0 is, for example, Are satisfied.

And the fuzzy input variables l k , Z k , ψ M Using these fuzzy input variables, speed / steering control is performed in accordance with the fuzzy rules (1) 'to (13)'.

On the other hand, if | θ s [k] −θ g |> | θ e [k] −θ g | is established, it is determined that passing the right side is closer to the goal. And pass on the right side.

That is, to the right of the start point a 2 after the area expansion,
The same imaginary point C 1 is provided, the point C 1 and virtual endpoints of passage region, toward the center M 2 in the region sandwiched by the point a 2 and the point C 1 so as to travel the robot 1 I do.

The virtual point C 1 is the same as described above, for example. Are satisfied.

And the fuzzy input variables l k , Z k , ψ M Using these fuzzy input variables, speed / steering control is performed in accordance with the fuzzy rules (1) 'to (13)'.

Although the above-described traveling control (i), (ii), and (iii) basically allows the vehicle to pass through all the passable areas, there are exceptions as shown in FIG. Add control.

In other words, considering the case as shown in FIG. 18, the robot 1 in this case is oriented to the direction deviated by に 対 し てM to the left with respect to the ▲ ▼ direction. 1 will be steered to the right by MM ,
There is a possibility of colliding with the lower left corner of the right obstacle 4.

Therefore, a new fuzzy input variable minR
r, add the minL r, as minR r = min (r i) i = 54~71 minL r = min (R i) i = 1~18 further fuzzy rule, also so as to add the following two rules .

(14) ′ if minR r is SHORT then β is LEFT (15) ′ if minL r is SHORT then β is RIGHT The evaluation of minR r and minL r is only SHORT (short). 19 Define a membership function as shown in FIGS.

minR r is the right front of the mobile robot 1, that is, i = 54 to 71
This means that the minimum value of the distance data r i of (−90 ° ≦ θ <0 °) is selected, and minL r is the left front of the robot 1, that is, i = 1 to 18 (0 ° <θ ≦ 90). This means that the minimum value of the distance data r i in゜) is selected.

According to the above fuzzy inference, if the distance between the mobile robot and the right front obstacle is short, the steering angle is turned to the left, and if the distance between the mobile robot and the left front obstacle is short, the steering angle is set to the right. To avoid contact / collision with obstacles.

As described above, according to this embodiment, the processing of I. area division II. Passability determination of the divided area III. Area selection when there are a plurality of areas that can pass IV. In the processing of III and IV, fuzzy inference is used.
As shown in the figure, the robot can smoothly travel from the start point to the call point by performing a situation determination and traveling control that are close to those of human driving. Also, if fuzzy rules are added as appropriate to deal with exceptional situations, even when an unexpected situation is encountered, it is possible to perform processing similar to human processing based on experience, intuition, etc. And more optimal steering control.

In the above embodiment, a range finder as shown in FIG. 3 is used as a means for measuring the distance from the mobile robot to the obstacle in all directions. However, the present invention is not limited to this. Another configuration, a configuration using ultrasonic waves, or the like may be adopted.

〔The invention's effect〕

As described above, according to the present invention, the area around the unmanned mobile is divided into the obstacle area and the space area by analyzing the distance data for each azimuth obtained by scanning around the unmanned mobile. Then, it is determined whether the unmanned mobile body can pass through each space area.If there are a plurality of space areas determined to be able to pass, the distance from the unmanned mobile body to the passable area and the passable area in the direction of the target point are determined. Similar to the selection by human intuition that the shorter the distance, the smaller the deviation angle, and the wider the width, the higher the priority of passing is higher by fuzzy inference using the direction deviation angle and the width data of the passable area as fuzzy input variables. Since the passage area selection control is performed, the route selection of the moving object can be omitted by the situation judgment close to the human sense, and the efficient independent traveling can be performed.

[Brief description of the drawings]

FIG. 1 is a block diagram showing a configuration example of a control system according to an embodiment of the present invention, FIG. 2 is a side view showing a configuration example of a mobile robot, FIG. 3 is a block diagram showing a configuration example of a range finder, FIG. FIG. 4 is an explanatory diagram for explaining output data of the range finder, FIGS. 5 and 6 are explanatory diagrams showing an example of area division, FIG. 7 is a flowchart showing an example of passability determination processing, and FIG. ) And (b) are diagrams used to explain the concept of discrimination between the front region and the rear region, respectively, and FIG.
(A) and (b) are diagrams used to explain the manner of determining the side wall region, FIGS. 10 and 11 are explanatory diagrams showing an example of region extension, and FIG. 12 is an example of region extension processing. Flowchart, FIG. 13 is an explanatory diagram for explaining variables used in fuzzy inference, FIG. 14 is a graph showing an example of a membership function used in fuzzy inference for passage area selection, and FIG. 15 is fuzzy inference for driving control. FIGS. 16 to 18 are graphs showing an example of the membership function used, and FIGS.
FIG. 19 is a graph showing an example of the membership function used in the traveling control of FIG. 18, and FIG. 20 is a diagram showing an example of traveling of the mobile robot according to the present embodiment. 1 mobile robot, 4 obstacle, 10 current position measurement unit, 20 obstacle data measurement unit (range finder), 40
... Target position setting section, 50... Passable determination section, 60... Passable area selection section, 70... Travel control section, 80.

Claims (11)

    (57) [Claims]
  1. An unmanned mobile traveling control device for automatically traveling an unmanned mobile to a target location while avoiding obstacles, comprising: a position and orientation measuring means for sequentially measuring the current position and orientation of the unmanned mobile entity; Target position setting means for setting the position in advance, by scanning at a predetermined angle interval within a predetermined azimuth angle range including the traveling direction of the unmanned mobile, distance data to an obstacle present in the azimuth angle range A distance measuring means for acquiring at the predetermined angle interval; and using distance data from the distance measuring means, if the distance data of the azimuth is longer than a predetermined distance set in advance, the measurement point of the azimuth is an obstacle. Is determined to belong to a spatial region where the azimuth does not exist, and the azimuth distance data and the azimuth distance data adjacent to the azimuth are compared. If the measurement point of the azimuth and the adjacent azimuth is smaller than the predetermined set value, the measurement point is determined to be the same obstacle region. An area dividing unit that divides the periphery of the unmanned mobile body into one or a plurality of space areas and one or a plurality of obstacle areas by determining the obstacle area as another obstacle area; An area is extracted, the width of the extracted space area is obtained, and the passable area is determined based on a comparison between the width data and a preset width of the unmanned mobile object to determine whether the space area is a passable area. Determining means, if there is only one area determined to be passable by the passability determining means, selecting the area; and determining whether there is a plurality of areas determined to be passable by the passable determination means. Based on the outputs of the position and orientation measuring means, the target position setting means, and the distance measuring means, for these plurality of passable areas, the distance from the unmanned mobile to the passable area and the direction of the passable area relative to the target point direction Each of the shift angles is obtained, the distance data to these passable areas and the shift angle data and the obtained width data of the passable area are set as fuzzy input variables, and the passable priority of each passable area is set as an output fuzzy variable, Are shorter, the deviation angle is smaller, and the wider the width, the higher the passable priority. The passable priority of each of the passable areas is obtained by fuzzy inference using a fuzzy rule. Passing area selecting means for selecting a passable area having the highest priority among the degrees; Travel control apparatus of the unmanned movable body, characterized in that as and a traveling control means for driving controlling the unmanned movable body so as to run the unmanned movable body in the direction of the passable region selected me.
  2. 2. The method according to claim 1, wherein, when the two different obstacle areas are arranged adjacent to each other without intervening a space area as a result of the area division, the other obstacle area of each of the two obstacle areas is provided. The difference between the distance data of the measurement points corresponding to the end points on the side adjacent to the one is obtained, and if this difference is larger than a predetermined set value, one spatial region including these two measurement points is obtained. 2. The travel control device for an unmanned mobile object according to claim 1, further comprising a space area extracting means for generating the motion.
  3. 3. The spatial area extracting means includes: a distance measuring unit that calculates a distance between distance data of a total of four measurement points including the two measurement points and two measurement points adjacent to the two measurement points; When the relationship of monotone increase or monotone decrease is established in response to the change of the azimuth angle, it is determined that these four measurement points are included in the side wall region and are not generated as a space region. The travel control device for an unmanned mobile object according to claim 2.
  4. 4. If the distance data of all the measurement points included in the spatial area divided by the area dividing means is longer than the predetermined distance, the passability determining means may determine the area of the spatial area. 2. The unmanned unmanned vehicle according to claim 1, wherein the width of the expanded space region is obtained by expanding the width of the space region by at least a unit azimuth angle on both sides, and the obtained width is used as the width data of the space region. A traveling control device for a moving object.
  5. 5. The passability determination means, for a spatial area generated by the spatial area extracting means, converts distance data of one of the two measurement points included in the spatial area into shorter distance data. The space area is extended toward the other measurement point where the distance data is longer to the azimuth angle corresponding to the measurement point having substantially the same distance data, and the width of the expanded space area is determined. 3. The method according to claim 2, wherein the width data is a spatial area.
    A travel control device for an unmanned mobile object as described in the above.
  6. 6. The passability determination means uses distance data of measurement points at both ends of the extracted space area and an angle between two straight lines connecting these two measurement points and an unmanned mobile object. The travel control device for an unmanned mobile object according to claim 1, wherein a distance between the two measurement points is obtained by using the distance, and the distance is set as a width of the space area.
  7. 7. When there are a plurality of areas which are determined to be passable by said passability determining means, said passing area selecting means sets said target position setting means among said plurality of possible passing areas. In the case where there is a passable area in which the direction of the target point is included in the area, the passable area including the direction of the target point is selected among a plurality of passable areas without selecting the passable area by the fuzzy inference. The travel control device for an unmanned mobile object according to claim 1, wherein the travel control device is selected from the following.
  8. 8. The travel control means obtains, for the passable area selected by the passable area selection means, a deviation angle of a direction of the unmanned mobile object with respect to a center direction of the passable area, and calculates the deviation angle and the obtained deviation angle. The obtained distance data to the passable area and the width data of the passable area are used as fuzzy input variables, and the speed of the unmanned mobile object and the steering angular velocity are used as output fuzzy variables. The speed and the steering angular velocity of the unmanned moving object are obtained by fuzzy inference using a fuzzy rule in which the steering angle speed increases as the angle increases and the distance increases, and the traveling control of the unmanned moving object is performed according to the speed and the angular speed. Claim 1.
    A travel control device for an unmanned mobile object as described in the above.
  9. 9. The travel control apparatus for an unmanned mobile object according to claim 8, wherein the travel control means controls the travel of the unmanned mobile object toward a center position of the passable area.
  10. 10. The cruise control means according to claim 1, wherein the azimuth angle range of the passable area is 180 ° or more, and the direction of the target position falls within the angle range of the passable area. The distance to the unmanned moving object is the distance data, the predetermined value is the width data, the deviation angle of the direction of the unmanned moving object with respect to the direction of the target position is the deviation angle data, and these are input fuzzy variables. The travel control device for an unmanned mobile object according to claim 8, wherein the fuzzy inference is performed such that the unmanned mobile object travels toward the target position.
  11. 11. The travel control means according to claim 1, wherein the azimuth angle range of the passable area is 180 ° or more and the direction of the target position is not included in the angle range of the passable area.
    It is determined which of the left and right sides of the obstacle area is passed, a predetermined virtual point is assumed on the side determined to pass, and a straight line connecting this virtual point and the end point on the side determined to pass the obstacle area is unmanned. The distance between the virtual object and the end point is defined as the width data, and the distance between the virtual point and the end point is defined as the width data. The shift angle as the shift angle data,
    9. The travel control device for an unmanned mobile object according to claim 8, wherein the fuzzy inference is executed so that the unmanned mobile object travels in the direction of the midpoint using these as input fuzzy variables.
JP16481189A 1989-06-27 1989-06-27 Travel control device for unmanned vehicles Expired - Lifetime JP2821909B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16481189A JP2821909B2 (en) 1989-06-27 1989-06-27 Travel control device for unmanned vehicles

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16481189A JP2821909B2 (en) 1989-06-27 1989-06-27 Travel control device for unmanned vehicles

Publications (2)

Publication Number Publication Date
JPH0329010A JPH0329010A (en) 1991-02-07
JP2821909B2 true JP2821909B2 (en) 1998-11-05

Family

ID=15800368

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16481189A Expired - Lifetime JP2821909B2 (en) 1989-06-27 1989-06-27 Travel control device for unmanned vehicles

Country Status (1)

Country Link
JP (1) JP2821909B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008065808A (en) * 2006-08-10 2008-03-21 Komatsu Ltd Guide traveling control device for unmanned vehicle
US8280573B2 (en) 2006-08-10 2012-10-02 Komatsu Ltd. Guided control device for unmanned vehicle

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2769052B2 (en) * 1991-04-09 1998-06-25 インターナショナル・ビジネス・マシーンズ・コーポレイション Autonomous mobile machine, control apparatus and method for mobile machine
JP4888182B2 (en) * 2007-03-22 2012-02-29 株式会社安川電機 Control device for mobile body and mobile body having the same
JP5405687B1 (en) * 2013-05-30 2014-02-05 株式会社日立パワーソリューションズ Autonomous mobile device, autonomous mobile system, and autonomous mobile method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008065808A (en) * 2006-08-10 2008-03-21 Komatsu Ltd Guide traveling control device for unmanned vehicle
US8280573B2 (en) 2006-08-10 2012-10-02 Komatsu Ltd. Guided control device for unmanned vehicle

Also Published As

Publication number Publication date
JPH0329010A (en) 1991-02-07

Similar Documents

Publication Publication Date Title
DE102016107705A1 (en) Reactive path planning for autonomous driving
US8972095B2 (en) Automatic guided vehicle and method for drive control of the same
DE102016111691A1 (en) Semi-autonomous vehicle and method of controlling a semi-autonomous vehicle
Chu et al. Local path planning for off-road autonomous driving with avoidance of static obstacles
Borenstein et al. Real-time obstacle avoidance for fast mobile robots in cluttered environments
Von Hundelshausen et al. Driving with tentacles: Integral structures for sensing and motion
EP1504277B1 (en) Real-time target tracking of an unpredictable target amid unknown obstacles
US8515612B2 (en) Route planning method, route planning device and autonomous mobile device
DE60200417T2 (en) Active vehicle driving assistance device and vehicle provided therewith
US6975246B1 (en) Collision avoidance using limited range gated video
US8239084B2 (en) Moving device
Maeda et al. Fuzzy drive control of an autonomous mobile robot
Oriolo et al. Real-time map building and navigation for autonomous robots in unknown environments
US5793934A (en) Method for the orientation, route planning and control of an autonomous mobile unit
US5229941A (en) Autonomous vehicle automatically running on route and its method
US5101351A (en) Autonomous vehicle using fuzzy control
EP2506106B1 (en) Autonomous moving object and control method
Gerkey et al. Planning and control in unstructured terrain
US6661449B1 (en) Object recognizing apparatus for vehicle and the method thereof
Peng et al. The obstacle detection and obstacle avoidance algorithm based on 2-d lidar
US5122957A (en) Autonomous vehicle for automatically/autonomously running on route of travel and its method using fuzzy control
KR0161042B1 (en) Moving control device and method of robot
Davison et al. Mobile robot localisation using active vision
DE4415736C2 (en) Collision avoidance method using a steering angle field for an autonomous mobile unit
Konolige A gradient method for realtime robot control