JPH07191723A - 無人車用走行プログラム入力装置 - Google Patents

無人車用走行プログラム入力装置

Info

Publication number
JPH07191723A
JPH07191723A JP5333263A JP33326393A JPH07191723A JP H07191723 A JPH07191723 A JP H07191723A JP 5333263 A JP5333263 A JP 5333263A JP 33326393 A JP33326393 A JP 33326393A JP H07191723 A JPH07191723 A JP H07191723A
Authority
JP
Japan
Prior art keywords
traveling
program
unmanned vehicle
route
tile
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.)
Pending
Application number
JP5333263A
Other languages
English (en)
Inventor
Toshiharu Miyahara
俊治 宮原
Akira Imamura
亮 今村
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
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 Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP5333263A priority Critical patent/JPH07191723A/ja
Publication of JPH07191723A publication Critical patent/JPH07191723A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

(57)【要約】 【目的】 無人車用走行プログラム入力装置に関し、入
力ミスを大幅に無くすとともに、無人車の走行経路を視
覚的に確認しながら、容易に無人車を教示できるように
する。 【構成】 領域表示手段10によって複数の単位区画に
区切った状態で表示されている走行領域の中から、区画
選択手段40を用いて任意の一つの単位区画を選択す
る。また、パターン図示手段30によって表示されてい
る経路パターン群の中から、パターン選択手段50を用
いて任意の一つの経路パターンを選択する。そして、配
置表示手段20が、選択された経路パターンを選択され
た単位区画に表示する。そして、どの単位区画にどの経
路パターンが配置されたかを示すデータが、変換手段6
0によって走行プログラムに変換され、変換された走行
プログラムは入力手段70によって無人車80に入力さ
れる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、走行プログラムで指示
された経路を走行する無人車に、走行プログラムを入力
する無人車用走行プログラム入力装置に関する。
【0002】
【従来の技術】作業用ロボット等のような無人で走行す
る無人車には、その走行経路を教示する必要がある。こ
の教示方法の一つが、特開平3−34003号公報に開
示されている。当該公報によれば、予め入力された地図
データを基にして、作業用ロボットが通過するポイント
ごとに分岐情報や位置情報を、教示装置を用いて入力す
る。ここで、分岐情報や位置情報は、主として文字や数
値データである。こうした情報の入力によって、作業用
ロボット等の無人車に所望の走行経路を教示することが
できる。
【0003】
【発明が解決しようとする課題】しかし、従来の作業用
ロボット等の無人車の教示装置では、この無人車が通過
するポイントごとに、分岐情報や位置情報を入力しなけ
ればならなく、また入力すべき項目も多かった。このた
め、分岐情報の一つである分岐の有無(例えば、文字で
「Y」と「N」)を勘違いして入力する等のように、入
力ミスが起きやすいという問題点があった。また、分岐
情報や位置情報を入力しても、実際の走行経路は無人車
を動かしてみないと分からない。このため、目的の走行
経路を無人車が走行するようになるには、相当数の入力
作業と走行経路の確認作業が必要になり、教示作業が煩
雑になるという問題点があった。
【0004】本発明はこのような点に鑑みてなされたも
のであり、入力ミスを大幅に無くすとともに、無人車の
走行経路を視覚的に確認しながら、容易に無人車を教示
できる無人車用走行プログラム入力装置を提供すること
を目的とする。
【0005】
【課題を解決するための手段】本発明は、走行経路を指
示する走行プログラムを記憶し、その走行プログラムに
よって定められる経路に沿って無人で走行する無人車8
0に、走行プログラムを入力する無人車用走行プログラ
ム入力装置に関するものであり、図1に示されるよう
に、走行領域を複数の単位区画に区切った状態で表示す
る領域表示手段10と、走行可能な経路パターン群を図
式的に表しておくパターン図示手段30と、前記複数の
単位区画の中から任意の一つの単位区画を選択する区画
選択手段40と、前記経路パターン群の中から任意の一
つの経路パターンを選択するパターン選択手段50と、
選択された前記単位区画に、選択された前記経路パター
ンを表示する配置表示手段20と、どの単位区画にどの
経路パターンが配置されたかを示すデータを走行プログ
ラムに変換する変換手段60と、変換された走行プログ
ラムを無人車80に入力する入力手段70とを備えてい
る。
【0006】
【作用】上記構成の発明によると、領域表示手段10に
よって複数の単位区画に区切った状態で表示されている
走行領域の中から、区画選択手段40を用いて任意の一
つの単位区画を選択する。また、パターン図示手段30
によって表示されている経路パターン群の中から、パタ
ーン選択手段50を用いて任意の一つの経路パターンを
選択する。そして、配置表示手段20が、選択された経
路パターンを選択された単位区画に表示する。こうして
作成される走行経路は図式的に表された経路パターンで
表示されるため、その経路を確認しながら教示を進める
ことが可能になる。
【0007】そして、どの単位区画にどの経路パターン
が配置されたかを示すデータが、変換手段60によって
走行プログラムに変換され、変換された走行プログラム
は入力手段70によって無人車80に入力される。こう
して無人車80に入力される走行プログラムは、図式的
に表された走行経路に基づいて変換されるので、実際に
無人車80を動かして確認する作業が不要になる。
【0008】
【実施例】以下、本発明の一実施例を図面に基づいて説
明する。図2は、走行プログラム入力装置の構成を示す
ブロック図であって、本発明を実施するために必要な最
小限の構成を示す。図において、走行プログラム入力装
置100は、CPU102、ROM104、RAM10
6、入力処理回路108、表示駆動回路110、表示装
置112および出力処理回路114によって構成されて
いる。
【0009】CPU102は、ROM104に格納され
た制御プログラムに従って走行プログラム入力装置10
0の全体を制御する。ROM104にはEPROMある
いはEEPROMが使用され、上記制御プログラムの他
に、入力処理プログラム、エラーチェックプログラム等
の各種プログラムが格納されている。RAM106には
SRAM等が使用され、後述する走行プログラムやデー
タ構造体等の各種のデータあるいは入出力信号が格納さ
れる。
【0010】入力処理回路108は、キーボード120
やマウス112から送られたそれぞれのデータ信号を受
けて、走行プログラム入力装置100内で処理可能なデ
ータ形式に変換し、バス116を介してCPU102又
はRAM106へ転送する。表示駆動回路110は、C
PU102からバス116を介して送られた表示データ
に従って、表示信号に変換して表示装置112へ送る。
表示装置112には、CRTや液晶表示装置等が用いら
れる。なお、マウス112は区画選択手段の一つである
とともに、パターン選択手段の一つでもある。
【0011】出力処理回路114は走行プログラムの入
力手段の一つであって、RAM106からバス116を
介して送られた走行プログラムを、ケーブルを用いた有
線通信ないし無線通信で無人車80へ送る。なお、上記
各構成要素は、いずれもバス116に互いに結合されて
いる。
【0012】次に、教示者が無人車80に対して教示す
る走行経路の入力手順について、図3乃至図5を参照し
つつ説明する。図3は、走行経路の一例を示す図であ
る。走行経路150は工場内等で走行する無人車80の
経路であって、図面右下のスタート位置152を起点と
し、図面左上のストップ位置154を終点とする。な
お、「マーカ」は無人車80が走行する走行路としての
誘導線を基準に、前進方向に対して右側に所定間隔だけ
離れた位置に設置される磁石プレートであって、無人車
80に設けられたセンサがこれを検出する。したがっ
て、無人車80に設けられるセンサも車両の前進方向の
右側下部に設けられている。図3の場合、具体的には次
のような経路をたどる。すなわち、スタート位置152
を発進して直進した後、マーカ200を検出して左折
し、マーカ202を検出して右折し、マーカ204を検
出して直進し、マーカ206を検出して左カーブし、マ
ーカ208を検出して直進し、マーカ210を検出して
停止する。
【0013】上記走行経路150を基にして、教示者は
走行プログラム入力装置100を用いて、次のように入
力する。図4は、走行プログラム入力装置100の表示
装置112に表示される表示画面300の一例を示す図
である。表示画面300は、走行レイアウト302、走
行パターン304、走行モード306および走行速度3
10のウィンドウに区分されており、それぞれに対応す
る種々のデータが表示されている。なお、これらの各ウ
ィンドウの大きさや書式等は所定の操作によって、自在
に変更することができる。以下の説明では、表示画面3
00上の位置を「{行位置−桁位置}」と表記する。ま
た、走行プログラムへの変換を指令する新規作成指令3
20と、プログラム名を登録するプログラム名登録指令
318および変換された走行プログラムを無人車80へ
送信する送信指令316が走行パターン304のウィン
ドウの下部に表示されている。
【0014】走行レイアウト302は領域表示手段を具
体化した表示部であって、走行領域を複数の単位区画
(以下、単に「タイル」と呼ぶ。)に区切った状態で表
示するウィンドウである。なお、図には走行領域の一部
が7行×5列で構成されるタイルで表示されているが、
所定の操作を行う(例えば、画面上下方向へスクロール
させる)ことによって、他の走行領域を表示させること
もできる。
【0015】走行パターン304はパターン図示手段を
具体化した表示部であって、無人車80を走行させるた
めの経路パターン群を図式的に表示するウィンドウであ
る。この走行パターン304もまた、図に示す6行×3
列で構成される各経路パターン以外に、所定の操作を行
うことによって他の経路パターンを表示させることがで
きる。
【0016】走行モード306は、無人車80の動作を
指令するウィンドウである。具体的には、その動作指令
として直進(GO)、後退(BACK)、左折(LEF
T)、右折(RIGH)、停止(STOP)および待機
(WAIT)等がある。なお、所定の操作を行うことに
よって、左右のカーブやクランク等の他の動作指令を表
示させることもできる。このような左右のカーブやクラ
ンク等の他の動作指令を適宜選択することによって、よ
り実際の走行経路に近い形で表示画面300に表示させ
ることができる。また、速度310は、無人車80の走
行速度を指令するウィンドウである。具体的には、その
速度指令として速度レベル「1」、速度レベル「2」、
速度レベル「3」、速度レベル「4」、速度レベル
「5」、速度レベル「8」、速度レベル「10」等があ
る。なお、所定の操作を行うことによって、他のレベル
の速度指令を表示させることもできる。
【0017】上記の構成による表示画面300におい
て、走行レイアウト302に走行経路を作成する手順、
すなわち目的のタイルに目的の経路パターンを指定する
手順を以下に示す。ここでは、図4に示す走行レイアウ
ト302内の{d−4}のタイルに、マーカを検出した
ときに無人車80を速度レベル「5」で右折させる指令
を選択する手順について説明する。なお、この説明にお
いて、「選択する」という操作は、マウス122に設け
られたボタンをクリックすることである。この操作によ
り、選択されたタイルや走行パターン等の表示データが
画面上で認識しやすい形で表示される(例えば、白黒反
転や高輝度にする)。また、走行レイアウト302内の
網掛けが施されているタイルは、未だ選択され確定して
いないことを示す。
【0018】まず、図2に示すマウス122を操作し
て、マウスカーソル322を走行レイアウト302内の
{d−4}のタイルに移動させた後、このタイルを選択
する。(タイル位置の選択) 次に、マウスカーソル322を走行パターン304のウ
ィンドウ内の{d−8}に移動させた後、経路パターン
(マーカ付き右折312)を選択する。(経路パターン
の選択) そして、マウスカーソル322を走行モード306のウ
ィンドウ内の上から4つ目の項目に移動させた後、右折
(RIGH)308を選択する。(走行モードの選択) 最後に、マウスカーソル322を走行速度310のウィ
ンドウ内の上から5つ目の項目に移動させた後、速度レ
ベル「5」314を選択する。(走行速度の選択)
【0019】こうして、走行レイアウト302内の{d
−4}のタイルに、走行パターン324(マーカ付き右
折312と同じ経路パターン)が表示されるとともに、
走行モード308と走行速度314が簡略化された形
(すなわち、速度レベル「5」で右折する場合は「R
5」)で表示される。なお、走行パターン304に表さ
れる経路パターン群は矢印を伴って方向性を持っている
ので、明確にその方向が識別でき、誤って選択すること
が防止される。
【0020】次に、本発明を実施するための入力処理手
順について、図5を参照しつつ説明する。図5は、入力
処理手順を示すフローチャートである。この処理手順
は、図2に示すROM104に格納されている入力処理
プログラムをCPU102が実行することによって実現
される。なお、ステップS16,S18,S20,S2
2では、必要に応じて、所定の操作を行なって対応する
ウィンドウを上下左右の任意の方向にスクロールさせた
後、目的の指令を選択することもできる。また、ステッ
プS16は区画選択手段を具現化したステップであり、
ステップS18はパターン選択手段を具現化したステッ
プである。
【0021】〔S10〕初期化処理を行う。具体的に
は、図2に示すRAM106をクリアしたり、表示装置
112に図4に示すような表示画面300を表示したり
するように、システムを動作させるために必要な処理を
行う。 〔S12〕プログラム名の入力を行う。すなわち、図4
に示すプログラム名登録指令318を選択した後、図2
に示すキーボード120を用いて名称(例えば、文字列
「SAMPLE」)を入力する。 〔S14〕入力終了か否かを判別する。すなわち、教示
者が新規作成指令320を指令したか否かを判別する。
もし、入力終了(YES)ならばステップS30に進
み、入力終了でない(NO)ならばステップS16に進
む。
【0022】〔S16〕タイル位置を選択する。すなわ
ち、図2に示すマウス122を操作して、マウスカーソ
ル322を走行レイアウト302内の目的のタイルに移
動させた後、このタイルを選択する。 〔S18〕経路パターンを選択する。すなわち、マウス
カーソル322を走行パターン304内の目的の経路パ
ターンに移動させた後、この経路パターンを選択する。 〔S20〕走行モードを選択する。すなわち、マウスカ
ーソル322を走行モード306内の目的の走行モード
に移動させた後、この走行モードを選択する。 〔S22〕走行速度を選択する。すなわち、マウスカー
ソル322を走行速度310内の目的の走行速度に移動
させた後、この走行速度を選択する。その後、ステップ
S14に戻る。
【0023】〔S30〕ステップS14で教示者が新規
作成指令320を指令したときに実行され、エラーチェ
ック処理を行う。具体的には、図4の走行レイアウト3
02上に配置された走行経路、すなわちどのタイルにど
の経路パターンが配置されたかを示すデータについて、
その走行経路の連続性についてチェックを行う。なお、
具体的な処理手順は図9に示し、その説明は後述する。 〔S32〕エラーが無いか否かを判別する。すなわち、
ステップS30のエラーチェック処理を行なった結果、
エラーが発生しなかったか否かを判別する。もし、エラ
ーが無い(YES)ならばステップS40に進み、エラ
ーがある(NO)ならばステップS14に戻り以後のス
テップでエラーの訂正を行う。 〔S40〕プログラム変換処理を行う。具体的には、ス
テップS30のエラーチェック処理と同様に、図4の走
行レイアウト302上に配置された走行経路、すなわち
どのタイルにどの経路パターンがあるかを示すデータ
を、図6に示すような走行プログラム330に変換す
る。なお、具体的な処理手順は図13に示し、その説明
は後述する。 〔S42〕無人車80への入力を行う。すなわち、ステ
ップS40で行われたプログラム変換処理により生成さ
れた走行プログラムを、図2に示す出力処理回路114
を介して無人車80へ送信する。
【0024】上記の処理手順の場合、ステップS10の
初期化処理を行なった後、ステップS16,S18,S
20,S22を繰り返して、走行経路を走行レイアウト
302に配置する。目的の全ての走行経路を入力終了し
た後、まずステップS30によりエラーチェックが行わ
れ、エラーがなければステップS40に進んで走行プロ
グラムに変換され、ステップS42により無人車80へ
入力される。また、ステップS30によるエラーチェッ
クの結果、エラーがあればステップS16,S18,S
20,S22を再度行なってエラーの原因を除去する。
【0025】こうして、変換された走行プログラム33
0の一例を図6に示す。ここで、プログラム文332は
プログラム名を示す文であり、プログラム文334は図
4に示す走行レイアウト302内のタイル{c−4}に
指定された画面上方向への直進走行を示す指令であり、
同様にプログラム文336はタイル{b−4}に指定さ
れた左カーブ走行を示す指令である。この直進走行と左
カーブ走行を示すプログラム文は、同じ「GO」指令で
ある。この理由は、無人車80が進む走行路が左右折を
除く直線や左右のカーブの場合、無人車80はその走行
路に敷設された誘導線に沿って進むだけであるので、無
人車80自身は道なりに真っ直ぐ進めばよいためであ
る。
【0026】次に、上記ステップS30に示すエラーチ
ェック処理の具体的な内容について、図7乃至図9を参
照しつつ説明する。図7は不連続な走行経路の一例を示
す図であって、図4に示す表示画面300の走行レイア
ウト302に表示されるタイルの一部を示したものであ
る。なお、網掛けが施されているタイルは、未だ指定さ
れていないことを示す。図において、走行経路の一部と
して、タイル350,352,354,356が指定さ
れている。すなわち、タイル350は{l3−c2}に、タ
イル352は{l2−c2}に、タイル354は{l1−c2}
に、タイル356は{l1−c1}にそれぞれ指定されてい
る。また、各タイルの経路パターンは、タイル350が
直進(図面上方向)であり、タイル352が右カーブで
あり、タイル354が左カーブであり、タイル356が
直進(図面左方向)である。上記のようなタイルの指定
では、タイル352とタイル354との間で不連続であ
ることが明らかである。
【0027】以下、タイル間の連続性をチェックするた
めの方法について説明する。まず、各タイルに関する情
報が必要になり、これを図8に示す。図8は、リスト構
造の一例を示す図である。このリスト構造は、図4に示
す表示画面300における指定操作ごとに、システム内
部(具体的には、図2に示すRAM106の所定の領
域)に作成されるデータである。
【0028】図において、リスト500には、タイル3
50,352,354,356のそれぞれについて、前
位置〔FROM(x) 〕、現位置〔x〕および次位置〔TO(x)
〕のタイル位置が示されている。なお、タイル番号は
図7に示すタイルの符号と同一である。502列ではタ
イル350について、現位置が{l3−c2}であり、次位
置が{l2−c2}である。同様に、504列ではタイル3
52について、前位置が{l3−c2}であり、現位置が
{l2−c2}であり、次位置が{l2−c3}である。また、
506列ではタイル354について、前位置{l2−c2}
がであり、現位置が{l1−c2}であり、次位置が{l1−
c1}である。508列ではタイル352について、前位
置が{l1−c2}であり、現位置が{l1−c1}である。
【0029】上記リスト構造を用いて、タイル間の連続
性をチェックする処理手順を次に示す。図9は、図5に
示すエラーチェック処理(ステップS30)を具体的に
示すエラーチェック処理手順のフローチャートである。
この処理手順は、図2に示すROM104に格納されて
いるエラーチェックプログラムをCPU102が実行す
ることによって実現される。なお、図7の例(タイル3
52とタイル354)を基に、図8を参照しながら説明
する。
【0030】〔S50〕スタート位置の確定を行う。す
なわち、指定された走行経路におけるスタート位置(タ
イル位置)をサーチする。 〔S52〕ステップS50でサーチされたスタート位置
を、現位置を示す変数xに代入する。図7の例では、変
数xにタイル位置{l3−c2}が代入される。
【0031】〔S54〕現在のタイル位置における次位
置〔TO(x) 〕を変数yに代入する。図7の例では、第1
回目のループでは現位置が{l3−c2}である。後述する
ステップS56,S58,S60,S62を実行した後
の第2回目のループでは、現位置は{l2−c2}になるの
で、次位置は{l2−c3}である。このとき、変数yには
{l2−c3}が代入される。以下、ステップS62までは
上記第2回目のループについて説明する。 〔S56〕変数yのタイル位置を現位置とするタイルの
前位置〔FROM(y) 〕を変数zに代入する。図7の例で
は、変数yが{l2−c3}であるので、この位置を現在の
タイル位置とするものがない。したがって、変数zには
{null−null}が代入される。なお、「null」は未指定
であることを示す符号である。 〔S58〕タイル間が連続しているか否かを判別する。
すなわち、現在のタイルの現位置(変数x)と次のタイ
ルの前位置(変数z)が一致するか否かを判別する。現
在のタイルの現位置と次のタイルの前位置が一致する
(YES)ならば経路パターンが連続しているのでステ
ップS60に進み、現在のタイルの現位置と次のタイル
の前位置が一致しない(NO)ならば経路パターンが不
連続であるのでステップS64に進む。図7の例では、
現在のタイルの現位置(変数x)が{l2−c2}であり、
次のタイルの前位置(変数z)が{null−null}である
ので一致せず、エラーとしてステップS64に進む。
【0032】〔S60〕次のタイル間の連続性をチェッ
クするための準備として、変数yのタイル位置を変数x
に代入する。 〔S62〕次のタイルがストップ位置か否かを判別す
る。もし、次のタイルがストップ位置である(YES)
ならば本処理手順を正常終了し、次のタイルがストップ
位置でない(NO)ならば処理を続行するためステップ
S54に戻る。 〔S64〕ステップS58で現在のタイルの現位置と次
のタイルの前位置が一致しないときに実行され、エラー
表示を行う。具体的には、指定された走行経路における
どのタイルとどのタイル間で不連続になっているかを分
かりやすく表示する。例えば、エラーに該当するタイル
を白黒反転したり、高輝度にしたりする。その後、本処
理手順をエラー終了する。
【0033】上記の処理手順の場合、ステップS54で
現在のタイル位置について次位置を求め、ステップS5
6でこの次位置を現位置とするタイルの前位置を求め
る。そして、これらをステップS58で比較して一致す
れば経路パターンの連続性が認められ、一致しなければ
経路パターンの連続性が認められない。こうして、簡単
なチェックで走行経路の連続性を確実に調査することが
できる。また、タイル間の経路パターンの連続性が認め
られない場合に、これらのタイルを表示するエラー表示
を行なって教示者に注意を促すので、エラー箇所を探す
ことなく修正が容易になる。このため、走行経路を作成
するために必要な時間を大幅に減らすことができる。
【0034】次に、図4に示す表示画面300の走行レ
イアウト302に指定された走行経路における走行速度
が急変する場合について説明する。図10は、走行速度
が急変する走行経路の一例を示す図である。なお、網掛
けが施されているタイルは、未だ指定されていないこと
を示す。また、前方に向かって経路の右側にある円形状
のものはマーカである。図において、走行経路の一部と
して、タイル360,362,364が指定されてい
る。すなわち、タイル360は{l2−c2}に、タイル3
62は{l1−c2}に、タイル364は{l1−c1}にそれ
ぞれ指定されている。また、各タイルの経路パターンと
走行速度は、タイル360がマーカを検出して速度レベ
ル「10」の直進(図面上方向)であり、タイル362
がマーカを検出して速度レベル「1」の左折であり、タ
イル364がマーカを検出して速度レベル「10」の直
進(図面左方向)である。
【0035】上記の指定のままで走行プログラムへ変換
すると、図11に示すような走行プログラムになる。図
11は通常の変換処理による結果を示す図であって、図
11(A)には変換された走行プログラムを、図11
(B)にはその走行速度のグラフをそれぞれ示す。
【0036】図11(A)において、最初の「SEC
T」(マーカの検出)と「GO 10」(速度レベル
「10」の直進)がタイル360を変換したプログラム
文370であり、二番目の「SECT」(マーカの検
出)と「LEFT 1」(速度レベル「1」の左折)が
タイル362を変換したプログラム文372であり、最
後の「SECT」(マーカの検出)と「GO 10」
(速度レベル「10」の直進)がタイル364を変換し
たプログラム文374である。
【0037】図11(B)において、時刻t12までは
速度レベル「10」で直進走行した後、急激に速度を低
下させ、時刻t14まで速度レベル「1」で左折走行す
る。その後、急激に速度を上昇させ、速度レベル「1
0」で直進走行する。
【0038】上記のようなタイルの指定では、タイル3
60とタイル362の間、およびタイル362とタイル
364の間で走行速度が急変していことが明らかであ
る。こうした走行速度の急変は無人車80の走行上好ま
しくないので、これを防止するための方法について以下
に説明する。
【0039】まず、走行速度の急変をチェックするため
に必要なデータについて説明する。図12は内部のデー
タ構造体を示す図であって、図12(A)にはタイルの
データ構造体を、図12(B)には許容速度差表をそれ
ぞれ示す。図12(A)に示すデータ構造体400は、
現位置402、前位置(FROM)404、次位置(T
O)406、マーカの有無408、マーカの位置41
0、走行モード412および走行速度414によって構
成されている。こうしたデータ構造体400は、図4に
示す表示画面300の走行レイアウト302に表示され
る各タイルについて作成される。
【0040】なお、この走行レイアウト302内の{d
−4}のタイルに指定された経路パターン324の場合
のデータ構造体は、現位置402が{d−4}、前位置
404が{d−5}、次位置406が{c−4}、マー
カの有無408が「有」、マーカの位置410が
「右」、走行モード412が「RIGHT」(右折)、
走行速度414が「5」のそれぞれのデータが格納され
ている。
【0041】図12(B)に示す許容速度差表450に
おいて、縦列には前位置(FROM)の走行モードを示
し、横列には次位置(TO)の走行モードを示す。この
許容速度差表450は、走行モードが現位置(FRO
M)から次位置(TO)に変わる際の許容される最大の
速度レベルの差を規定する表である。言い換えれば、許
容速度差を超える場合には、走行速度の最適化処理が必
要なことを示す。例えば、走行モードが直進(GO)か
ら左折(LEFT)に変わる場合には、452欄に示す
ように速度差がレベル「3」を超えるときに最適化処理
が必要になる。同様に、走行モードが右折(RIGH
T)から左折(LEFT)に変わる場合には、454欄
に示すように速度差がレベル「2」を超えるときに最適
化処理が必要になる。
【0042】以下、上記の最適化処理を含めた走行プロ
グラムの変換処理について説明する。図13は、プログ
ラム変換処理を示すフローチャートである。この処理手
順は、図2に示すROM104に格納されている変換処
理プログラムをCPU102が実行することによって実
現される。 〔S70〕初期化処理、すなわち走行プログラムへ変換
するにあたって事前に必要な処理を行う。例えば、図8
に示すステップS50のスタート位置の確定や、図2に
示すRAM106の所定の領域のクリア等を行う。 〔S72〕プログラム名を出力する。具体的には、図5
に示すステップS12で入力したプログラム名を出力す
る。例えば、図6に示すように、走行プログラム330
のプログラム文332にある「PROGRAM SAM
PLE」がプログラム名である。
【0043】〔S74〕走行プログラムに変換するため
のタイルデータ(具体的には、現位置における図12
(A)に示すデータ構造体400)の読み込みを行う。 〔S76〕速度差が規定値以下か否かを判別する。具体
的には、前位置のタイルにおけるデータ構造体400の
走行速度414と、現位置のタイルにおけるデータ構造
体400の走行速度414との速度差が許容速度差表4
50に示す最大許容速度差以下か否かを判別する。も
し、速度差が規定値以下(YES)ならばステップS7
8に進み、速度差が規定値を超える(NO)ならばステ
ップS84に進む。 〔S78〕走行モードがストップか否かを判別する。具
体的には、現位置におけるデータ構造体400の走行モ
ード412がストップ位置(STOP)か否かを判別す
る。もし、走行モードがストップである(YES)なら
ばステップS90に進み、走行モードがストップでない
(NO)ならばステップS80に進む。
【0044】〔S80〕マーカの検出が必要か否かを判
別する。具体的には、現位置におけるデータ構造体40
0のマーカの有無408が「有」(必要)か「無」(不
要)かを調べる。もし、マーカの検出が必要(YES)
ならばステップS88に進み、マーカの検出が必要でな
い(NO)ならばステップS82に進む。 〔S82〕動作指令と速度指令を出力する。例えば、図
12(A)に示すデータ構造体400の場合のタイルで
は、速度レベル「5」の右折を示す「RIGHT5」を
出力する。 〔S83〕次のタイルを処理するための準備として、タ
イルデータのカウントアップする。具体的には、現位置
のタイルデータから次位置のタイルデータへポインタを
シフトさせる。その後、ステップS74に戻る。
【0045】〔S84〕ステップS76で前位置のタイ
ルにおける走行速度と、現位置のタイルにおける走行速
度との速度差が最大許容速度差を超えたときに実行さ
れ、遅延時間を出力する。この遅延時間は予め設定され
た時間であって、例えば1000ミリ秒である。 〔S86〕ステップS82と同様にして、動作指令と速
度指令を出力する。この場合に速度指令は、前位置の走
行速度から図12(B)に示す最大許容速度差を減じた
値で出力する。その後、次のタイルを処理するためにス
テップS74に戻る。 〔S88〕ステップS80で現位置におけるタイルにマ
ーカがあるときに実行され、マーカの検出を指示する検
出指令を出力する。具体的には、「SECT」を出力す
る。その後、ステップS82に進む。 〔S90〕ステップS78で走行モードがストップであ
るときに実行され、無人車の停止を指示するストップ指
令を出力する。具体的には、「STOP」を出力する。
その後、本処理手順を終了する。
【0046】上記の処理手順の場合、ステップS74で
現在のタイル位置についてデータを読み込み、ステップ
S80でマーカの検出が必要か否かを判別して、必要な
らばステップS88で検出指令を出力し、ステップS8
2で動作指令と速度指令を出力する。その後、ステップ
S83で次位置のタイルデータへポインタをシフトさせ
て次位置のタイルデータが読み込みできるようにする。
これらの処理を繰り返して、タイルデータを基に走行プ
ログラムへ変換する。一方、ステップS76で前位置に
おけるタイルの走行速度と現位置におけるタイルの走行
速度の差が規定値を超える場合には、ステップS84,
S86を実行して遅延時間とその動作指令および速度指
令を出力する。また、ステップS78でタイルデータが
ストップ位置に達したときは、ステップS90を実行し
てストップ指令を出力する。こうして、タイル間の速度
差をチェックするとともに、タイルデータから走行プロ
グラムに変換することができる。
【0047】上記の処理手順を図10に示す走行経路に
適用すると、図14に示す走行プログラムが作成され
る。図14は最適化処理の変換処理による結果を示す図
であって、図14(A)には変換された走行プログラム
を、図14(B)にはその走行速度のグラフをそれぞれ
示す。なお、図11と同一の要素には同一符号を付し、
説明を省略する。
【0048】図14(A)において、プログラム文37
0の次には、最初の最適化処理されたプログラム文38
0がある。このプログラム380は「TIME 100
0」(1000ミリ秒の遅延)と「GO 7」(速度レ
ベル「7」の直進)からなる。同様に、プログラム文3
80の次には、二番目の最適化処理されたプログラム文
382がある。このプログラム380は「TIME 1
000」(1000ミリ秒の遅延)と「GO 4」(速
度レベル「4」の直進)からなる。
【0049】図14(B)において、時刻t22までは
速度レベル「10」で直進走行した後、速度を低下させ
て時刻t24までは速度レベル「7」で直進走行し、さ
らに速度を低下させて時刻t26までは速度レベル
「4」で直進走行する。そして、時刻t26まで速度レ
ベル「1」で左折走行する。その後、速度を上昇させる
場合も、上記速度低下させる場合と同様に、順次上昇さ
せながら走行する。このプログラム文380,382等
により、走行速度は速度レベル「10」から順次低下さ
せた後に速度レベル「1」で左折する。その後、速度レ
ベル「10」に至るまでも同様に順次上昇させながら走
行する。したがって、この最適化処理を行うことによ
り、スムーズに無人車80を速度ダウンさせたり、速度
アップさせたりすることができる。
【0050】以上では無人車80用の走行プログラム入
力装置100の一実施例について説明したが、この走行
プログラム入力装置100におけるその他の部分の構
造、形状、大きさ、材質、個数、配置および動作条件等
についても、本実施例に限定されるものでない。
【0051】例えば、領域表示手段10とパターン表示
手段30を図4に示すように同一の表示画面300で表
示するように構成したが、領域表示手段10を表示画面
300へ図式的に表示し、パターン表示手段30を一つ
のキーに一つの経路パターンを表したファンクションボ
ックスで構成したり、あるいはそれぞれの手段を別々の
表示装置で表示する等のように別個の構成としてもよ
い。このように教示作業に適した構成をとることによっ
て、操作が素早く行えるようになり、より教示作業効率
が向上する。
【0052】また、区画選択手段40とパターン選択手
段50を図2に示すマウス122(表示画面300上で
はマウスカーソル322)によって、単位区画(走行レ
イアウト302内のタイル)や経路パターン(走行パタ
ーン304内に表されるパターン)等の選択データを選
択するように構成したが、いずれの選択データもキーボ
ード120で選択するように構成してもよい。または、
単位区画等の特定の選択データをキーボード120で選
択し、他の選択データをマウス122で選択するように
構成してもよい。このように、教示者が操作しやすい選
択手段で構成することによって、より操作性が向上す
る。
【0053】さらに、パターン表示手段30に表される
経路パターン群は、矢印を伴って方向性を持たせた構成
としたが、矢印を伴わずに図式化された直線や曲線等と
その走行方向とで表す構成としてもよい。こうした構成
によって、表示画面やファンクションボックス等に一度
に表わすことができる経路パターンが大幅に増え、また
教示者も選択がしやすくなる。
【0054】そして、無人車80が走行する走行路とし
ての誘導線を基準に、前進方向に対して左側に所定間隔
だけ離れた位置に設置されたマーカについても、無人車
80の車両の前進方向の左側下部に設けられるセンサに
よって直進や左右折等が行えるので、これに対応する動
作指令を図4に示す表示画面300の走行パターン30
4から選択することにより実現される。こうして、様々
の態様で設置されたマーカに対応して無人車80を走行
させることができる。
【0055】それから、出力処理回路114から無人車
80への走行プログラムの伝送は、有線通信(ケーブ
ル)を介して行なったが、走行プログラム入力装置10
0内に無線通信回路118をさらに設けて、この無線通
信回路118によって無線通信を介して走行プログラム
を伝送する構成としてもよい。この構成をとることによ
って、工場内の各ステーションへ走行プログラムを送
り、このステーションから走行プログラムを広範囲に走
行する無人車へ伝送することができる。同様に、走行プ
ログラム入力装置100から直接に遠く離れた無人車へ
走行プログラムを伝送することができる。このため、走
行プログラムが変わるごとに一定の場所へ無人車を移動
させる必要がなくなるので、無駄な移動時間を短縮でき
る。また、故障等で停止した無人車が復旧した場合等の
ように、すぐには無人車を動かせないときに走行プログ
ラムを伝送する場合に、特に有効である。
【0056】
【発明の効果】以上説明したように本発明では、走行領
域の中から単位区画を選択し、経路パターン群の中から
経路パターンを選択すると、選択された単位区画に経路
パターンを表示し、この単位区画に配置された経路パタ
ーンに基づいて走行プログラムに変換されて無人車に入
力されるように構成したので、無人車の走行経路を視覚
的に確認しながら容易に無人車に教示することができ
る。
【0057】また、経路パターン群は図式的に表される
ので、入力ミスを大幅に無くすことができる。さらに、
入力された経路パターンで指示された走行経路に基づい
て、走行プログラムが変換されて無人車に入力されるの
で、実際に無人車を動かして確認する作業が不要にな
り、教示作業が容易になる。
【図面の簡単な説明】
【図1】本発明の無人車用走行プログラム入力装置を模
式的に示す図である。
【図2】走行プログラム入力装置の構成を示すブロック
図である。
【図3】走行経路の一例を示す図である。
【図4】表示装置に表示される表示画面の一例を示す図
である。
【図5】入力処理手順を示すフローチャートである。
【図6】変換された走行プログラムの一例を示す図であ
る。
【図7】不連続な走行経路の一例を示す図である。
【図8】リスト構造の一例を示す図である。
【図9】エラーチェック処理手順を示すフローチャート
である。
【図10】走行速度が急変する走行経路の一例を示す図
である。
【図11】通常の変換処理による結果を示す図であっ
て、(A)には変換された走行プログラムを、(B)に
はその走行速度のグラフをそれぞれ示す。
【図12】内部のデータ構造体を示す図であって、
(A)にはタイルのデータ構造体を、(B)には許容速
度差表をそれぞれ示す。
【図13】プログラム変換処理手順を示すフローチャー
トである。
【図14】最適化処理の変換処理による結果を示す図あ
って、(A)には変換された走行プログラムを、(B)
にはその走行速度のグラフをそれぞれ示す。
【符号の説明】
10 領域表示手段 20 配置表示手段 30 パターン図示手段 40 区画選択手段 50 パターン選択手段 60 変換手段 70 入力手段 80 無人車

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 走行経路を指示する走行プログラムを記
    憶し、その走行プログラムによって定められる経路に沿
    って無人で走行する無人車に、走行プログラムを入力す
    る無人車用走行プログラム入力装置であって、 走行領域を複数の単位区画に区切った状態で表示する領
    域表示手段と、 走行可能な経路パターン群を図式的に表しておくパター
    ン図示手段と、 前記複数の単位区画の中から任意の一つの単位区画を選
    択する区画選択手段と、 前記経路パターン群の中から任意の一つの経路パターン
    を選択するパターン選択手段と、 選択された前記単位区画に、選択された前記経路パター
    ンを表示する配置表示手段と、 どの単位区画にどの経路パターンが配置されたかを示す
    データを走行プログラムに変換する変換手段と、 変換された走行プログラムを無人車に入力する入力手段
    と、 を有することを特徴とする無人車用走行プログラム入力
    装置。
JP5333263A 1993-12-27 1993-12-27 無人車用走行プログラム入力装置 Pending JPH07191723A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5333263A JPH07191723A (ja) 1993-12-27 1993-12-27 無人車用走行プログラム入力装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5333263A JPH07191723A (ja) 1993-12-27 1993-12-27 無人車用走行プログラム入力装置

Publications (1)

Publication Number Publication Date
JPH07191723A true JPH07191723A (ja) 1995-07-28

Family

ID=18264158

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5333263A Pending JPH07191723A (ja) 1993-12-27 1993-12-27 無人車用走行プログラム入力装置

Country Status (1)

Country Link
JP (1) JPH07191723A (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11143534A (ja) * 1997-11-12 1999-05-28 Matsuda Plantec Kk 無人搬送車の走行プログラム作成装置
JP2002091565A (ja) * 2000-09-11 2002-03-29 Kawasaki Heavy Ind Ltd 移動体制御装置および移動体制御方法
JP2002207516A (ja) * 2000-11-09 2002-07-26 Hideo Mori 走行ロボット,そのティーチング方法および制御方法
US6841963B2 (en) 2001-08-07 2005-01-11 Samsung Gwangju Electronics Co., Ltd. Robot cleaner, system thereof and method for controlling same
JP2010134537A (ja) * 2008-12-02 2010-06-17 Murata Machinery Ltd 搬送台車システム及び搬送台車への走行経路の指示方法
US9097549B1 (en) 2014-03-17 2015-08-04 Ford Global Technologies, Llc Learning automated vehicle
KR20160108706A (ko) * 2015-03-05 2016-09-20 고려대학교 산학협력단 자율 주행 기반 무인 운반차 시스템 및 이의 제어 방법
KR101695557B1 (ko) * 2015-07-17 2017-01-24 고려대학교 산학협력단 자율 주행 기반 무인 운반차 시스템 및 이의 제어 방법
JP2019179496A (ja) * 2018-03-30 2019-10-17 日本電産シンポ株式会社 コンピュータシステムおよびコンピュータプログラム
WO2022107299A1 (ja) * 2020-11-20 2022-05-27 株式会社Fuji 実装関連システム
JP7317248B1 (ja) * 2022-03-16 2023-07-28 三菱電機株式会社 プログラム作成支援装置、プログラム作成支援プログラム、プログラム作成支援方法、およびリニア搬送システム

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11143534A (ja) * 1997-11-12 1999-05-28 Matsuda Plantec Kk 無人搬送車の走行プログラム作成装置
JP2002091565A (ja) * 2000-09-11 2002-03-29 Kawasaki Heavy Ind Ltd 移動体制御装置および移動体制御方法
JP2002207516A (ja) * 2000-11-09 2002-07-26 Hideo Mori 走行ロボット,そのティーチング方法および制御方法
US6841963B2 (en) 2001-08-07 2005-01-11 Samsung Gwangju Electronics Co., Ltd. Robot cleaner, system thereof and method for controlling same
JP2010134537A (ja) * 2008-12-02 2010-06-17 Murata Machinery Ltd 搬送台車システム及び搬送台車への走行経路の指示方法
US8027755B2 (en) 2008-12-02 2011-09-27 Murata Machinery, Ltd. Transportation vehicle system and method for assigning travel path to transportation vehicle
US9097549B1 (en) 2014-03-17 2015-08-04 Ford Global Technologies, Llc Learning automated vehicle
KR20160108706A (ko) * 2015-03-05 2016-09-20 고려대학교 산학협력단 자율 주행 기반 무인 운반차 시스템 및 이의 제어 방법
KR101695557B1 (ko) * 2015-07-17 2017-01-24 고려대학교 산학협력단 자율 주행 기반 무인 운반차 시스템 및 이의 제어 방법
US10223916B2 (en) 2015-07-17 2019-03-05 Korea University Research And Business Foundation Automated guided vehicle system based on autonomous mobile technique and a method for controlling the same
JP2019179496A (ja) * 2018-03-30 2019-10-17 日本電産シンポ株式会社 コンピュータシステムおよびコンピュータプログラム
WO2022107299A1 (ja) * 2020-11-20 2022-05-27 株式会社Fuji 実装関連システム
EP4250893A4 (en) * 2020-11-20 2024-01-10 Fuji Corporation ASSEMBLY ASSOCIATED SYSTEM
JP7317248B1 (ja) * 2022-03-16 2023-07-28 三菱電機株式会社 プログラム作成支援装置、プログラム作成支援プログラム、プログラム作成支援方法、およびリニア搬送システム
WO2023175761A1 (ja) * 2022-03-16 2023-09-21 三菱電機株式会社 プログラム作成支援装置、プログラム作成支援プログラム、プログラム作成支援方法、およびリニア搬送システム

Similar Documents

Publication Publication Date Title
EP0852346B1 (en) Robot language processor
EP0314398A2 (en) Navigation apparatus based on present position calculating system
US7392133B2 (en) Car navigation system
US5270937A (en) Vehicle map position determining apparatus
US5587911A (en) Navigation system with selective intersection display
US4528552A (en) Travel locus display device
JPH07191723A (ja) 無人車用走行プログラム入力装置
JPH03292524A (ja) カーソル移動方式
JPH0643899B2 (ja) 車両用経路誘導装置
CN108334258A (zh) 自动驾驶辅助装置、自动驾驶辅助方法以及自动驾驶辅助***
JPH11259130A (ja) 無人搬送車の経路設定方法および無人搬送車の制御方法
JP4758157B2 (ja) ナビゲーション装置
JPH11143534A (ja) 無人搬送車の走行プログラム作成装置
JP2007192881A (ja) 車載地図表示装置
JP2001175390A (ja) 入力ガイド表示方法
JP2004110286A (ja) Agv経路探索方法及びプログラム
JPS60209900A (ja) 車両用経路誘導装置
JPS5940112A (ja) 車両用ナビゲ−シヨンシステムの初期位置修正方法
JP6651391B2 (ja) 交差点案内システムおよび交差点案内プログラム
JP3835295B2 (ja) 経路探索装置、経路表示方法及び経路表示プログラム
JPH09159480A (ja) 車両用走行誘導案内装置
JP2007256031A (ja) ナビゲーション装置
JPH08202856A (ja) 画像処理方法
JP2517210B2 (ja) 車両用ナビゲ―ション装置
KR100521643B1 (ko) 차량항법장치에서 탐색된 경로를 자동 스크롤하는 방법