JPH0379723B2 - - Google Patents

Info

Publication number
JPH0379723B2
JPH0379723B2 JP58201652A JP20165283A JPH0379723B2 JP H0379723 B2 JPH0379723 B2 JP H0379723B2 JP 58201652 A JP58201652 A JP 58201652A JP 20165283 A JP20165283 A JP 20165283A JP H0379723 B2 JPH0379723 B2 JP H0379723B2
Authority
JP
Japan
Prior art keywords
robot
positive
travel
orbit
sensor
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
Application number
JP58201652A
Other languages
Japanese (ja)
Other versions
JPS6093524A (en
Inventor
Katsuji Okumura
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Automax Co Ltd
Original Assignee
Automax Co Ltd
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 Automax Co Ltd filed Critical Automax Co Ltd
Priority to JP58201652A priority Critical patent/JPS6093524A/en
Priority to AT84100065T priority patent/ATE44322T1/en
Priority to US06/567,978 priority patent/US4674048A/en
Priority to EP84100065A priority patent/EP0142594B1/en
Priority to DE8484100065T priority patent/DE3478824D1/en
Priority to CA000445143A priority patent/CA1217836A/en
Publication of JPS6093524A publication Critical patent/JPS6093524A/en
Publication of JPH0379723B2 publication Critical patent/JPH0379723B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0255Control of position or course in two dimensions specially adapted to land vehicles using acoustic signals, e.g. ultra-sonic singals
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0272Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising means for registering the travel distance, e.g. revolutions of wheels
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45083Manipulators, robot
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49157Limitation, collision, interference, forbidden zones, avoid obstacles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector

Description

【発明の詳細な説明】 (技術分野) 本発明は例えば床面清掃を行なう移動ロボツト
の制御装置に関する。
DETAILED DESCRIPTION OF THE INVENTION (Technical Field) The present invention relates to a control device for a mobile robot that cleans, for example, a floor surface.

(技術的背景) 無人走行により床面を移動しつつ清掃作業を行
なう移動ロボツトについて、本出願人により、例
えば特願昭57−232269号などとして提案されてい
る。
(Technical Background) The present applicant has proposed, for example, Japanese Patent Application No. 57-232269, regarding a mobile robot that performs cleaning work while moving on the floor by unmanned running.

これは清掃エリヤの学習機能をもち、その清掃
エリヤ内で自己の現在位置を認識しながら、所定
の走行路に従つて移動し、くまなくエリア内床面
の清掃を行なうものであり、従来のように、予定
の走行路に沿つて配設された位置観測手段や誘導
手段を一切必要とせず、全ゆる場所の清掃に適用
できるという特徴をもつている。
This robot has a cleaning area learning function, and while recognizing its current position within the cleaning area, it moves along a predetermined path and thoroughly cleans the floor within the area. As such, it is characterized in that it does not require any position observation means or guidance means arranged along the planned travel route, and can be applied to cleaning any place.

(発明の目的) 本発明は、このような移動ロボツトにおいて、
走行時のロボツトの目標軌道からのずれを迅速か
つ安定して補正することを可能とした、移動ロボ
ツトの制御装置を提供することを目的とする。
(Object of the invention) The present invention provides a mobile robot as described above.
It is an object of the present invention to provide a control device for a mobile robot that can quickly and stably correct deviations from a target trajectory of the robot during travel.

(発明の開示) 本発明は、左右の駆動輪を介して自走する移動
ロボツトにおいて、ロボツトの走行距離を検出す
るセンサと、その走行方向の変化を検出するセン
サと、これら両センサの出力にもとづいてロボツ
トの二次元座標上の位置を演算して求める位置識
別手段と、ロボツトの移動領域を二次元座標の単
位ブロツクごとに分割されたマツプに記憶させる
学習手段と、マツプの各ブロツクの縦列または横
列に沿つて設定した軌道上でロボツトを直線走行
させる手段と、直線走行して上記領域の境界に到
達したときはその場で反転させて次列へ移行させ
る手段と、前記軌道に対するロボツトの偏位量d
を検出する手段と、同じく軌道に対するロボツト
の走行方向の角度差θを検出する手段と、ロボツ
トの右側駆動輪の速度をVR、左側駆動輪の速度
をVL、さらにα、βを定数としたとき、 VR−VL=αd+βtanθ (ただし、偏位量dを軌道に対して右側に偏位し
たとき正、左側に偏位したときを負に定義した場
合にはαは正の定数とし、その逆に定義した場合
にはαは負の定数とし、また、角度差θを軌道の
進行方向に対して時計回り方向を正と定義したと
きはβは正の定数とし、角度差θを反時計回り方
向を正と定義したときはβは負の定数とする)と
なるように補正制御する手段とを備える。
(Disclosure of the Invention) The present invention provides a mobile robot that is self-propelled via left and right drive wheels. A position identification means that calculates the robot's position on two-dimensional coordinates based on the robot, a learning means that stores the movement area of the robot in a map divided into unit blocks of two-dimensional coordinates, and a column of each block of the map. Alternatively, means for causing the robot to travel in a straight line on a track set along a horizontal row, means for moving the robot to the next row by reversing the robot on the spot when the robot travels in a straight line and reaches the boundary of the area, and a means for moving the robot along the trajectory. deviation amount d
, means for detecting the angular difference θ of the robot's running direction with respect to the track, the speed of the right drive wheel of the robot as V R , the speed of the left drive wheel as V L , and α and β as constants. When, V R −V L = αd + βtanθ (However, if the deviation amount d is defined as positive when it deviates to the right with respect to the orbit, and negative when it deviates to the left, α is a positive constant. , in the opposite case, α is a negative constant, and when the angular difference θ is defined as positive in the clockwise direction with respect to the traveling direction of the orbit, β is a positive constant, and the angular difference θ is When the counterclockwise direction is defined as positive, β is a negative constant).

したがつて本発明によれば、移動ロボツトに清
掃スイーパやバキユームクリーナを取付けて床面
を移動しながら清掃させる場合、清掃領域を予め
指定して学習させると、後は全自動的に走行パタ
ーンを決定し、その走行パターンからずれること
なく最も効率よく清掃を行なうことができる。
Therefore, according to the present invention, when a cleaning sweeper or a vacuum cleaner is attached to a mobile robot to clean the floor surface while moving, the cleaning area can be designated in advance and learned, and the traveling pattern can then be fully automatically determined. By determining the travel pattern, cleaning can be performed most efficiently without deviating from the travel pattern.

(実施例) 以下本発明の実施例を説明する。(Example) Examples of the present invention will be described below.

第1図において、1は移動ロボツトの走行距
離、例えば駆動輪の回転量に比例したパルス信号
を出力する距離センサ、2はロボツト走行方向の
変化を検出するガスレートジヤイロなどからなる
方向センサ、3は距離センサ1からのパルス信号
を計数してロボツトの走行距離を測定するととも
に、方向センサ2の出力からロボツトの移動方向
を判定して、ロボツトの単位走行距離ごとの二次
元座標上における現在位置を時々刻々と演算によ
つて求める位置識別手段である。
In FIG. 1, numeral 1 is a distance sensor that outputs a pulse signal proportional to the travel distance of the mobile robot, for example, the amount of rotation of the drive wheels; 2 is a direction sensor consisting of a gas rate dial or the like that detects changes in the robot's travel direction; 3 measures the distance traveled by the robot by counting pulse signals from the distance sensor 1, determines the moving direction of the robot from the output of the direction sensor 2, and calculates the current position on the two-dimensional coordinates for each unit distance traveled by the robot. This is a position identification means that calculates the position from time to time by calculation.

4はロボツトの移動前面、両側面及び後面に設
けられ、超音波を発信しながら壁面や柱などの障
害物の有無や障害物までの距離を検知する障害物
センサ、5は同じくこれら障害物センサ4とは別
に機械的な接触によつて障害物を判断するタツチ
センサで、これらセンサ4,5の出力はマイクロ
プロセツサで構成される制御回路6に、アンプ7
及び入力ポート8Dを介して入力される。同時に
前記識別手段3の位置信号も、入出力ポート8A
を介して制御回路6に入力される。
Obstacle sensors 4 are installed on the front, both sides, and rear of the robot and detect the presence or absence of obstacles such as walls and pillars, as well as the distance to the obstacles, while emitting ultrasonic waves. 5 is also an obstacle sensor. In addition to 4, there is a touch sensor that determines obstacles through mechanical contact, and the outputs of these sensors 4 and 5 are sent to a control circuit 6 consisting of a microprocessor and an amplifier 7.
and is input via input port 8D. At the same time, the position signal of the identification means 3 is also transmitted to the input/output port 8A.
The signal is input to the control circuit 6 via.

制御回路6は中央演算回路(CPU)9と読出
専用メモリ(ROM)及び読出書込メモリ
(RAM)からなる記憶部10とで構成される。
11Aはクロツクパルスを出力するクロツクパル
ス発生器、11Bは割込みコントローラである。
The control circuit 6 is composed of a central processing circuit (CPU) 9 and a storage section 10 consisting of a read-only memory (ROM) and a read/write memory (RAM).
11A is a clock pulse generator that outputs clock pulses, and 11B is an interrupt controller.

CPU9は後述するようにして駆動回路12に
対して入出力ポート8Cを介して駆動信号を出力
し、走行用の左右の駆動輪に設けた駆動モータ
(サーボモータまたはステツプモータ)13,1
4の回転を可逆的に制御し、同時にロボツトに取
付けた清掃用スイーパの駆動モータ15の回転を
制御する。
The CPU 9 outputs a drive signal to the drive circuit 12 via the input/output port 8C as described later, and drives the drive motors (servo motors or step motors) 13, 1 provided on the left and right drive wheels for running.
4, and at the same time controls the rotation of a drive motor 15 of a cleaning sweeper attached to the robot.

16はシステム電源のオン・オフ、走行モード
の切換え、スタート位置の設定、方向センサ2の
感度調整などを適宜行なうことのできる操作部、
17,18はロボツトに移動領域の領界を学習さ
せるために、ラジオコントロールによつて駆動回
路12に走行指令を優先的に割込ませ、その操縦
を任意に行なわせる、リモートコントロール送
信、受信ユニツトで、それぞれ出力は入出力ポー
ト8Bを介して制御回路6にも入力する。
Reference numeral 16 denotes an operation unit that can appropriately turn on and off the system power, change the driving mode, set the start position, adjust the sensitivity of the direction sensor 2, etc.;
Reference numerals 17 and 18 refer to remote control transmitting/receiving units that allow the robot to learn the boundaries of the moving area by preferentially interrupting the drive circuit 12 with a traveling command by radio control, and to perform the operation as desired. The respective outputs are also input to the control circuit 6 via the input/output port 8B.

第2図は移動ロボツトの具体的な構造を平面的
に示す概略図であるが、ロボツト本体30は、そ
の外周に全域的に、前部バンパー31、左右側部
バンパー32,33及び後部バンパー34が設け
られ、各バンパー31〜34には前述した障害物
のタツチセンサ5が取付けてあり、バンパーが障
害物に接触したときにこれを感知するようになつ
ている。
FIG. 2 is a schematic diagram showing the specific structure of the mobile robot in plan view. The above-described obstacle touch sensor 5 is attached to each of the bumpers 31 to 34 to sense when the bumper comes into contact with an obstacle.

また、ロボツト本体30の前面には、その中央
部及び両隅部にそれぞれ超音波センサ4A…が、
また両側面にもそれぞれ1個づつの超音波センサ
4B…が、さらに後面の両隅部にもそれぞれ超音
波センサ4C…が設けてあり、前述したように障
害物を検知する。
Further, on the front surface of the robot main body 30, ultrasonic sensors 4A are installed at the center and both corners, respectively.
Further, one ultrasonic sensor 4B is provided on each side of the vehicle, and ultrasonic sensors 4C are provided at both corners of the rear surface to detect obstacles as described above.

超音波センサ4A,4Cは、通常は上記したタ
ツチセンサ5が障害物と接触する前に、障害物を
検知するのであるが、ロボツトの向きにより死角
に障害物が入つたは場合でもロボツトのバンパー
31〜34が軽く接触すればこれを感知できるよ
うにしてある。
The ultrasonic sensors 4A and 4C normally detect obstacles before the touch sensor 5 comes into contact with the obstacle, but depending on the orientation of the robot, even if an obstacle enters the blind spot, the bumper 31 of the robot ~ 34 is designed so that it can be sensed if it touches lightly.

ロボツト本体30は、この例では前方の走行輪
40と、後方の左右の駆動輪41,42によつて
自由に走行しうるのであり、同時にロボツト本体
30の前方下面に設けた2つの回転スイーパ4
3,44により走行床面の清掃を行なう。
In this example, the robot main body 30 can move freely by a front running wheel 40 and rear left and right drive wheels 41 and 42, and at the same time two rotary sweepers 4 provided on the lower front surface of the robot main body 30.
The running floor surface is cleaned by steps 3 and 44.

このようなロボツトにおいて第3図〜第6図を
参照しながらさらに本発明の特徴部分を説明す
る。
Characteristic parts of the present invention will be further explained with reference to FIGS. 3 to 6 regarding such a robot.

第4図に示す領域を清掃する場合、その移動境
界を学習により憶え込むため、操作部16により
学習走行モードに設定したうえで、リモートコン
トロール送受信ユニツト17,18を用いてロボ
ツトを図に示すスタート位置(S)に誘導し、そ
の位置で操作部16のセツトボタンを押して二次
元座標上におけるスタート点(x0、y0)及び進
行方向の基準θ0をそれぞれ設定する。
When cleaning the area shown in FIG. 4, in order to memorize the movement boundaries by learning, the operating section 16 is set to learning travel mode, and the remote control transmitting/receiving units 17 and 18 are used to start the robot as shown in the diagram. The robot is guided to position (S), and at that position, the set button on the operation unit 16 is pressed to set the starting point (x0, y0) on the two-dimensional coordinates and the reference θ 0 for the direction of movement.

次いで、リモートコントロール送受信ユニツト
17,18を用いて、点線で示す予定コースにし
たがうロボツトの学習走行を開始させると、制御
回路6のCPU9は位置識別手段3から送られて
くるロボツトの現在位置(x、y)及び進行方向
θを記憶部10に順次記憶させ、これによりロボ
ツトの移動すべき領域境界を学習させる。
Next, when the remote control transmitting/receiving units 17 and 18 are used to start the robot's learning run according to the planned course shown by the dotted line, the CPU 9 of the control circuit 6 receives the robot's current position (x) sent from the position identifying means 3. , y) and the traveling direction θ are sequentially stored in the storage unit 10, thereby learning the area boundaries to which the robot should move.

学習コースの走行が完了すると、移動境界が二
次元座標上において、x軸とy軸に対応して単位
距離ごとに分割されたブロツクとしてマツプ上に
記憶される。
When the learning course is completed, the moving boundary is stored on the map as blocks divided into unit distances corresponding to the x-axis and y-axis on the two-dimensional coordinate system.

次いで、ロボツトをスタート点または、スター
ト点に隣接するA点につかせ、操作部16により
無人走行モードに切換えると、制御回路6は駆動
回路12に駆動信号を送つてロボツトの走行を開
始する。
Next, the robot is brought to the start point or a point A adjacent to the start point and switched to the unmanned running mode using the operating section 16, and the control circuit 6 sends a drive signal to the drive circuit 12 to start the robot running.

このロボツトの走行はCPU9によつて次のよ
うに行なわれる。
The robot moves as follows by the CPU 9.

まず、マツプ上のx軸に沿つて縦方向に各ブロ
ツクの上を一直線に進ませる。
First, move in a straight line over each block in the vertical direction along the x-axis on the map.

このとき同時にロボツトが通過したブロツクが
順次記憶部10に記憶保持される。
At this time, the blocks that the robot has passed through at the same time are sequentially stored and held in the storage section 10.

一直線にすすんで境界に達したことを位置識別
手段3で判断すると、その位置から左方向に(未
走行列の方向)に反転させて次の走行列(x軸に
沿う)に移行させ、再び直線走行させる。同時に
走行ブロツクの左右に障害物があるか否かを、両
側面の超音波センサ4Bで検出し、障害物があつ
たときはこれを記憶部10に記憶し、ないときは
走行可能ブロツクとして記憶する。
When the position identification means 3 determines that the boundary has been reached after traveling in a straight line, it is reversed from that position to the left (in the direction of the untraveled column) and transferred to the next traveling column (along the x-axis), and then again. Drive in a straight line. At the same time, the ultrasonic sensors 4B on both sides detect whether or not there are obstacles on the left and right sides of the running block, and if an obstacle is encountered, it is stored in the storage unit 10, and if there is no obstacle, it is stored as a runnable block. do.

直線走行は順次繰り返されることになり、一列
づつ通過ブロツクが増え、同時に記憶された走行
可能域を消去していく。
Straight travel is repeated sequentially, and the number of passing blocks increases one row at a time, and at the same time, the memorized possible travel range is erased.

一方、前面の超音波センサ4Aが前に障害物を
F点で感知すると、上記境界を識別したときと同
様に、ロボツトを未走行列の方向へ反転させ、同
時に障害物を検知したブロツクを、記憶部10に
記憶させる。
On the other hand, when the front ultrasonic sensor 4A detects an obstacle in front at point F, the robot is reversed in the direction of the untraveled row, and at the same time the block that detected the obstacle is The information is stored in the storage unit 10.

このようにして、障害物を検知しながらこれと
衝突することなく、障害物と境界との間を往復走
行し、次いで進行前方に障害物を検知しなくなる
と、そのまま縦列方向に境界を識別するまで進
む。
In this way, the vehicle travels back and forth between the obstacle and the boundary without colliding with the obstacle while detecting it, and then, when no obstacle is detected in front of the vehicle, the boundary is identified in the column direction. Proceed until.

このとき、障害物の側面を通り過ぎると、ロボ
ツトの左右に同時に走行可能なブロツクが存在す
ることになる。
At this time, if the robot passes the side of the obstacle, there will be blocks on both sides of the robot that can run at the same time.

この場合、境界に到達してからの反転はいまま
でとは逆方向に行ない、障害物によつて走行不能
となつていた、背面の未走行域を走行させる。こ
のときの反転を行なつたB点は、次に元位置へ復
帰させるときのために記憶部10に記憶させてお
く。
In this case, after reaching the boundary, the vehicle reverses direction and travels in the untraversed area on the back, which has been made impossible due to obstacles. The point B at which the inversion was performed at this time is stored in the storage unit 10 for the next time it is returned to its original position.

この取り残した未走行域を、前述したのと同様
に縦列方向に順次反転をしながら移動し、C点に
おいて次の反転方向に既に走行済みのブロツクが
あることを識別したら、未走行域の走行終了と判
断して、前記B点までの横列方向に直線走行して
戻り、B点の隣りのブロツクであるD点より再び
縦列方向への走行を開始する。
This remaining untraveled area is moved while sequentially reversing in the column direction in the same manner as described above, and when it is identified at point C that there is a block that has already been traveled in the next reversal direction, the vehicle moves in the untraversed area. When it is determined that this is the end, the vehicle travels in a straight line in the row direction to point B and returns, and starts traveling in the column direction again from point D, which is the block next to point B.

このようにして、G点に到達すると、学習した
移動領域において、未走行域がなくなつたことを
判断して、全ての移動を完了する。
In this way, when the vehicle reaches point G, it is determined that there is no untraveled area in the learned movement area, and the entire movement is completed.

未走行領域が残つているか否かの判別は、記憶
部10に記憶された既走行域と障害物領域とを比
較して行なう。
Determination as to whether or not an untraveled area remains is performed by comparing the traveled area stored in the storage unit 10 with the obstacle area.

この実施例では、既走行の走行列の中に未走行
域があときは、障害物がなくなつた時点で直ちに
この方向へと移動するようにしたが、いつたん全
ての境界内の走行を終了してから、残りの未走行
域へと移るようにしてもよい。
In this example, if there is an untraversed area in the already-traveled train, the train immediately moves in that direction as soon as there are no obstacles, but once all the trains within the boundaries are stopped. After finishing, you may move to the remaining untraveled area.

このロボツトの移動中、スイーパ43,44を
回転させておくことにより、移動領域の床面清掃
がくまなく効率的に行なわれることになる。
By keeping the sweepers 43 and 44 rotating while the robot is moving, the floor surface of the moving area can be thoroughly and efficiently cleaned.

このように移動ロボツトを自走させるのである
が、このとき、駆動輪41,42のスリツプや駆
動モータ13,14の回転誤差などから、第5図
に示すようにロボツトが目標の走行軌道からずれ
てくることがある。
In this way, the mobile robot is made to run on its own, but at this time, due to slippage of the drive wheels 41, 42, rotation error of the drive motors 13, 14, etc., the robot deviates from the target running trajectory as shown in Fig. 5. Sometimes it comes.

本発明では、この目標軌道に対する偏位を修正
するために次のように構成される。
The present invention is configured as follows in order to correct this deviation from the target trajectory.

軌道に対してロボツトの偏位量を検出する手段
と、同じく軌道に対するロボツトの角度差を検出
する手段と、ロボツトが軌道からいずれかに偏位
しているときに、軌道からのロボツトの偏位量:
d、軌道に対するロボツトの走行方向の角度差:
θとしたとき、軌道に対してロボツトが右側に偏
位しているときのdを正、角度差θは時計回り方
向に正として、(右側駆動輪41の回転速度)−
(左側駆動輪42の回転速度)=αd+βtanθ(ただ
しαとβを正の定数として)となるように、左右
の駆動輪の回転速度を制御する手段を備える。
A means for detecting the amount of deviation of the robot from the orbit, a means for detecting the angular difference of the robot from the orbit, and a means for detecting the deviation of the robot from the orbit when the robot is deviating from the orbit in either direction. amount:
d, angular difference in the robot's running direction with respect to the trajectory:
When θ is assumed, d is positive when the robot is deviated to the right with respect to the orbit, and angular difference θ is positive in the clockwise direction, (rotational speed of the right drive wheel 41) -
Means is provided for controlling the rotational speed of the left and right driving wheels so that (rotational speed of the left driving wheel 42)=αd+βtanθ (where α and β are positive constants).

なお、この場合、軌道に対してロボツトが左側
に偏位したときのdを正としたときは、αの極性
を前記と逆にとれば、この式の意味するところは
全く一致し、同様にθを反時計回り方向に正とす
るならば、βの極性を逆にとればよい。
In this case, if d is positive when the robot deviates to the left with respect to the orbit, then if the polarity of α is reversed to the above, the meaning of this equation is exactly the same, and similarly, If θ is made positive in the counterclockwise direction, the polarity of β may be reversed.

具体的には、dを右側偏位時を正としたときは
αは正、dを左側偏位時を正としたときはαは
負、またθは時計回り方向を正としたときはβを
正、θを反時計回り方向を正としたときはβを負
とするのである。
Specifically, when d is positive when the deviation is to the right, α is positive, when d is positive when the deviation is to the left, α is negative, and when θ is positive when the clockwise direction is positive, β is When θ is positive and θ is positive in the counterclockwise direction, β is negative.

換言するならば、前式において、dとθのいか
なる極性においても、αd+βtanθ=0を与えるθ
の向きが、目標軌道に近づく方向であるように、
α、βの極性を選択する。
In other words, in the previous equation, θ gives αd+βtanθ=0 for any polarity of d and θ.
so that the direction of is the direction approaching the target orbit,
Select the polarity of α and β.

CPU9は位置識別手段3からの情報(位置及
び方向)をもとに、これら各手段の動作を所定の
周期で繰り返し行なわれるように制御し、ロボツ
トの位置が軌道から偏位しているときに、これを
修正して直進走行させるのである。
Based on the information (position and direction) from the position identification means 3, the CPU 9 controls the operations of these means so that they are repeated at a predetermined cycle, and when the robot's position deviates from the orbit, , this is corrected to make the vehicle run straight.

その動作ルーチンについて、第6図に示し、第
5図を参照しながらこれを説明する。
The operation routine is shown in FIG. 6, and will be explained with reference to FIG.

まず、現在位置の目標からの偏位量dと角度差
θを読み込み、位置が軌道から偏位しているかど
うかを判断する。もし、偏位していないときは左
右の駆動輪の速度として、同一の基準速度Voを
維持して、軌道に沿つて直進走行させる。
First, the amount of deviation d of the current position from the target and the angle difference θ are read, and it is determined whether the position has deviated from the orbit. If there is no deviation, the same reference speed Vo is maintained as the speed of the left and right drive wheels, and the vehicle travels straight along the track.

これに対して、ロボツトが軌道から偏位してい
て、たとえば第5図に示すように、いま軌道に対
してロボツトが進行方向の右側にd(正)だけ偏
位し、しかも進行方向の軌道に対する角度差がθ
(正)であつたとする。
On the other hand, if the robot has deviated from the trajectory, for example, as shown in Fig. 5, the robot has now deviated by d (positive) to the right in the direction of movement with respect to the trajectory, and the trajectory in the direction of movement is The angle difference is θ
(Correct).

このロボツトの偏位を修正するために、右側の
駆動輪と左側の駆動輪との速度差(右側速度−左
側速度)が、αd+βtanθとなるように駆動輪の回
転速度を補正制御する。
In order to correct this deviation of the robot, the rotation speed of the drive wheels is corrected and controlled so that the speed difference between the right drive wheels and the left drive wheels (right side speed - left side speed) becomes αd+βtanθ.

この場合、左右の駆動輪にこのような速度差を
付与するのには、具体的には、たとえば左側駆動
輪の速度を基準速度Voを維持したまま、右側駆
動輪の速度V=Vo+(αd+βtanθ)とするか、あ
るいは右側駆動輪の速度を基準速度Voとして、
左側駆動輪の速度V=Vo−(αd+βtanθ)とすれ
ばよい。
In this case, to give such a speed difference to the left and right drive wheels, for example, while maintaining the speed of the left drive wheel at the reference speed Vo, the speed of the right drive wheel is V = Vo + (αd + β tan θ ), or the speed of the right drive wheel is set as the reference speed Vo,
The speed of the left driving wheel may be V=Vo-(αd+βtanθ).

このような制御を行つた場合のロボツトの具体
的な行動について、(1)d+tanθ>0、(2)d+tanθ
=0、(3)d+tanθ<0の場合に分けて説明する。
なお、ここでは説明の便宜上、α=β=1として
ある。
Regarding the specific behavior of the robot when performing such control, (1) d + tan θ > 0, (2) d + tan θ
=0, (3) d+tanθ<0 will be explained separately.
Note that here, for convenience of explanation, α=β=1.

(1) d+tanθ>0の場合 これはdが大きいか、あるいはθが負方向に
比較的小さな値、もしくはロボツトの向きが正
の角度範囲のときである。d+tanθ>0である
ことは、右側駆動輪の回転速度が速い場合で、
ロボツトは左側に向きを変えながら進行する。
(1) When d+tan θ>0 This is the case when d is large, θ is a relatively small value in the negative direction, or the robot is oriented in a positive angle range. d+tanθ>0 means that the rotation speed of the right drive wheel is high,
The robot moves forward while turning to the left.

(2) d+tanθ=0の場合 左右の駆動輪の速度は同一となり、直進す
る。ただし、上記設定では、d>0なのでtanθ
<0、すなわちθ<0となり、ロボツトは左向
きで軌道に向かう。
(2) When d+tanθ=0 The speeds of the left and right drive wheels are the same, and the vehicle moves straight. However, in the above settings, since d>0, tanθ
<0, that is, θ<0, and the robot heads toward the orbit facing left.

(3) d+tanθ<0の場合 これはdが小さいか、θが負方向に大きな値
の角度範囲ときである。d+tanθ<0であるこ
とは、左側の駆動輪の回転速度が速い場合で、
ロボツトは右側に向きを変えながら進行する。
(3) When d+tanθ<0 This is the case when d is small or θ is in the angle range with a large value in the negative direction. d+tanθ<0 means that the rotation speed of the left drive wheel is high,
The robot moves forward while turning to the right.

このようにして、いま軌道に対して右側に偏位
したロボツトは、左右の駆動輪に(d+tanθ)の
速度差を付与することにより、次第に軌道に向け
て位置が修正される。そして、正しく軌道に乗る
までの間、(d+tanθ)の値は、実際には(1)〜(3)
で示すように変化していくため、右側にずれてい
たロボツトは、最初は大きく左向きに回転しなが
ら進行し、次いでそのまま軌道に向けて直進し、
軌道に近づいてからは、こんどは逆方向に向きを
変えつつ軌道に緩やかに接近していくのである。
In this way, the robot, which has now deviated to the right with respect to the orbit, is gradually corrected in position toward the orbit by applying a speed difference of (d+tanθ) to the left and right drive wheels. Then, until the orbit is correct, the value of (d + tanθ) is actually (1) to (3)
As the robot changes as shown in the figure, the robot, which had shifted to the right, first moves forward while rotating largely to the left, then continues straight toward the orbit.
After approaching orbit, it then turns in the opposite direction and slowly approaches orbit.

以上は軌道に対して進行右側にロボツトがずれ
た場合を説明したが、左側にずれた場合は、d+
tanθ=0となる条件が、軌道に対して対称になる
だけで、同様にして位置修正が実行されることに
なる。
The above explained the case where the robot deviates to the right side of the trajectory, but if it deviates to the left side, d+
The position correction can be performed in the same way as long as the condition that tanθ=0 is symmetrical with respect to the orbit.

ところで、角度θの補正項としてtan関数を用
いたため、−MAX<tanθ<MAXの範囲において
MAX値が充分に大きければ、軌道からの偏位量
dが相当大きくても、d+tanθ=0となる位置、
角度が存在し、その点では左右の駆動輪は等速と
なり、その方向はdが大きいほど軌道に対して直
角に近づくし、逆にdが小さければ小さな交角で
近づくことになる。
By the way, since the tan function was used as the correction term for the angle θ, in the range of -MAX<tanθ<MAX
If the MAX value is sufficiently large, even if the deviation d from the orbit is quite large, the position where d + tan θ = 0,
An angle exists, and at that point, the left and right drive wheels are at constant speed, and the larger d is, the closer the direction is perpendicular to the orbit, and conversely, the smaller d is, the smaller the angle of intersection.

したがつて、距離dが大きくずれているときは
急速に軌道修正が行なわれ、正しい軌道に近ずく
に従い緩かな角度で接近してくるため、軌道修正
時にハンチングなど制御の行き過ぎを防止して、
スムーズに軌道修正ができる。
Therefore, when the distance d deviates greatly, the trajectory is corrected rapidly, and as the trajectory approaches the correct trajectory, it approaches at a gentler angle. This prevents excessive control such as hunting during trajectory correction.
You can make smooth course corrections.

なお、上記d、tanθの各項に、正の定数α、β
をかけることで、αd+βtanθ=0となる点、すな
わち左右の駆動輪の速度を同一にして直進する点
に至るまでの軌道修正特性を任意に設定すること
が可能である。このときαの値が大きければ大き
いほど早く軌道に戻る特性を与え、βの値が大き
ければ大きいほど軌道と平行に保とうとする特性
を与える。
In addition, positive constants α and β are added to each term of d and tanθ above.
By multiplying, it is possible to arbitrarily set the trajectory correction characteristics up to the point where αd+βtanθ=0, that is, the point where the speed of the left and right drive wheels is the same and the vehicle moves straight. At this time, the larger the value of α, the faster the return to the orbit is given, and the larger the value of β, the more the property is given to keep the object parallel to the orbit.

(発明の効果) 以上のように本発明によれば、ロボツトが直進
走行中に目標軌道からずれたときには、その偏位
量と方向に応じて迅速かつ安定的に位置姿勢を修
正することができるという効果がある。
(Effects of the Invention) As described above, according to the present invention, when the robot deviates from the target trajectory while traveling straight, the position and orientation can be quickly and stably corrected according to the amount and direction of the deviation. There is an effect.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明のロボツト制御装置のブロツク
回路図、第2図はロボツト本体の概略平面図、第
3図は制御動作を示すフローチヤート、第4図、
第5図はロボツトの走行状態を示す説明図、第6
図は姿勢修正制御動作を示すフローチヤートであ
る。 1……距離センサ、2……方向センサ、3……
位置識別手段、4(4A,4B,4C)……障害
物センサ、5……タツチセンサ、6……制御回
路、8A〜8D……入出力ポート、9……中央演
算回路(CPU)、10……記憶部(ROM、
RAM)、12……駆動回路、13,14……車
輪駆動モータ、16……操作部、30……ロボツ
ト本体、31〜34……バンパー、41,42…
…駆動輪、43,44……スイーパ。
Fig. 1 is a block circuit diagram of the robot control device of the present invention, Fig. 2 is a schematic plan view of the robot main body, Fig. 3 is a flowchart showing the control operation, Fig. 4,
Figure 5 is an explanatory diagram showing the running state of the robot;
The figure is a flowchart showing the posture correction control operation. 1... Distance sensor, 2... Direction sensor, 3...
Position identification means, 4 (4A, 4B, 4C)... Obstacle sensor, 5... Touch sensor, 6... Control circuit, 8A to 8D... Input/output port, 9... Central processing circuit (CPU), 10... …Storage unit (ROM,
RAM), 12... Drive circuit, 13, 14... Wheel drive motor, 16... Operating unit, 30... Robot body, 31-34... Bumper, 41, 42...
...Drive wheel, 43, 44...Sweeper.

Claims (1)

【特許請求の範囲】 1 左右の駆動輪を介して自走する移動ロボツト
において、ロボツトの走行距離を検出するセンサ
と、その走行方向の変化を検出するセンサと、こ
れら両センサの出力にもとづいてロボツトの二次
元座標上の位置を演算して求める位置識別手段
と、ロボツトの移動領域を二次元座標の単位ブロ
ツクごとに分割されたマツプに記憶させる学習手
段と、マツプの各ブロツクの縦列または横列に沿
つて設定した軌道上でロボツトを直線走行させる
手段と、直線走行して上記領域の境界に到達した
ときはその場で反転させて次列へ移行させる手段
と、前記軌道に対するロボツトの偏位量dを検出
する手段と、同じく軌道に対するロボツトの走行
方向の角度差θを検出する手段と、ロボツトの右
側駆動輪の速度をVR、左側駆動輪の速度をVL
さらにα、βを定数としたとき、 VR−VL=αd+βtanθ (ただし、偏位量dを軌道に対して右側に偏位し
たときを正、左側に偏位したときを負に定義した
場合にはαは正の定数とし、その逆に定義した場
合にはαは負の定数とし、また、角度差θを軌道
の進行方向に対して時計回り方向を正と定義した
ときはβは正の定数とし、角度差θを反時計回り
方向を正と定義したときはβは負の定数とする)
となるように補正制御する手段とを備えることを
特徴とする移動ロボツトの制御装置。
[Claims] 1. In a mobile robot that moves by itself via left and right drive wheels, there is a sensor that detects the travel distance of the robot, a sensor that detects a change in the travel direction of the robot, and a sensor that detects a change in the travel direction of the robot, based on the outputs of both sensors. A position identification means that calculates the position of the robot on two-dimensional coordinates, a learning means that stores the movement area of the robot in a map divided into unit blocks of two-dimensional coordinates, and a learning means that stores the movement area of the robot in a map divided into unit blocks of two-dimensional coordinates, and means for causing the robot to travel in a straight line on a trajectory set along the above-mentioned trajectory; means for causing the robot to travel in a straight line and, upon reaching the boundary of the above-mentioned area, turn the robot on the spot and move to the next line; A means for detecting the amount d, a means for detecting the angular difference θ of the robot's running direction with respect to the track, and a means for detecting the speed of the right drive wheel of the robot as V R , the speed of the left drive wheel as V L ,
Further, when α and β are constants, V R −V L = αd + βtanθ (However, if the deviation amount d is defined as positive when it deviates to the right with respect to the orbit, and negative when it deviates to the left) α is a positive constant; vice versa, α is a negative constant; and when the angle difference θ is defined as positive in the clockwise direction with respect to the direction of travel of the orbit, β is positive. When the angle difference θ is defined as positive in the counterclockwise direction, β is a negative constant)
1. A control device for a mobile robot, comprising means for performing correction control so that the following is achieved.
JP58201652A 1983-10-26 1983-10-27 Controller of moving robot Granted JPS6093524A (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP58201652A JPS6093524A (en) 1983-10-27 1983-10-27 Controller of moving robot
AT84100065T ATE44322T1 (en) 1983-10-26 1984-01-04 CONTROL SYSTEM FOR A MOVABLE ROBOT.
US06/567,978 US4674048A (en) 1983-10-26 1984-01-04 Multiple robot control system using grid coordinate system for tracking and completing travel over a mapped region containing obstructions
EP84100065A EP0142594B1 (en) 1983-10-26 1984-01-04 Control system for mobile robot
DE8484100065T DE3478824D1 (en) 1983-10-26 1984-01-04 Control system for mobile robot
CA000445143A CA1217836A (en) 1983-10-26 1984-01-12 Control system for mobile robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58201652A JPS6093524A (en) 1983-10-27 1983-10-27 Controller of moving robot

Publications (2)

Publication Number Publication Date
JPS6093524A JPS6093524A (en) 1985-05-25
JPH0379723B2 true JPH0379723B2 (en) 1991-12-19

Family

ID=16444638

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58201652A Granted JPS6093524A (en) 1983-10-26 1983-10-27 Controller of moving robot

Country Status (1)

Country Link
JP (1) JPS6093524A (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2658366B2 (en) * 1989-03-14 1997-09-30 松下電器産業株式会社 Mobile work robot
KR940004375B1 (en) * 1992-03-25 1994-05-23 삼성전자 주식회사 Drive system for automatic vacuum cleaner
CN105892459B (en) * 2016-04-01 2018-07-06 清华大学 A kind of differential driving robot fixed point tracking and controlling method of non-temporal reference

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100505801C (en) * 2004-08-12 2009-06-24 华为技术有限公司 Method for joining background voice in call and its system
CN100563279C (en) * 2004-12-20 2009-11-25 华为技术有限公司 A kind of method and network system thereof that realizes CRBT
JP2011160220A (en) * 2010-02-01 2011-08-18 Nippon Telegr & Teleph Corp <Ntt> Service providing system and application server
CN102624997B (en) * 2011-02-01 2016-03-30 阿尔卡特朗讯 For providing the method and apparatus of the voice service of gateway to charge for user
US9542074B2 (en) * 2011-10-13 2017-01-10 Nuance Communications, Inc. Method and apparatus for enhancing an interactive voice response (IVR) system

Also Published As

Publication number Publication date
JPS6093524A (en) 1985-05-25

Similar Documents

Publication Publication Date Title
EP0142594B1 (en) Control system for mobile robot
US5548511A (en) Method for controlling self-running cleaning apparatus
JP3217281B2 (en) Robot environment recognition apparatus and control method thereof
US6124694A (en) Wide area navigation for a robot scrubber
JP3395874B2 (en) Mobile vehicle
JPH04333902A (en) Automatic running cleaning system of cleaner
JPS62117012A (en) Self-travelling of self-travelling type cleaner and floor cleaner to implement the same
JPH0954617A (en) Device and method for recognizing position of robot
JPS63501664A (en) Automatic control method and device for work vehicles
JPS62154008A (en) Travel control method for self-travel robot
JPS6093522A (en) Controller of moving robot
JPH10105233A (en) Autonomous traveling vehicle
JPH0379723B2 (en)
JP3076648B2 (en) Self-propelled vacuum cleaner
JP3237500B2 (en) Autonomous mobile work vehicle
JPH06149364A (en) Controller for unmanned traveling car
JP2004318721A (en) Autonomous travel vehicle
JP2711837B2 (en) Travel control device for automatically traveling vehicles
JPH06131044A (en) Controller for unmanned traveling car
JP2005346477A (en) Autonomous travelling body
JP2609890B2 (en) Self-propelled work vehicle
JP2517240B2 (en) Unmanned vehicle
JPS59121406A (en) Controller of mobile robot
JPH06131043A (en) Controller for unmanned traveling car
JPH05150833A (en) Control method for unattended work vehicle