(58)【調査した分野】(Int.Cl.,DB名)
複数のアーム及びハンドが連結部で連結されている水平多関節のアーム機構を備えるロボットと接続されるプロセッサに、前記ロボットの姿勢を変更させる処理を実行させる制御プログラムであって、
前記プロセッサに、
変更前及び変更後の姿勢を示す識別情報を取得し、
予め規定された複数の姿勢夫々の識別情報に対応付けて記憶してある前記複数の姿勢夫々での各連結部におけるアームの回転角度を記憶してある記憶部から、取得した識別情報に対応する回転角度を読み出し、
複数の姿勢間で経由すべき1又は複数の姿勢を示し、前記ロボットの異なる特定の姿勢夫々に対応する符号の列であって、前記符号の内の特定の符号は経由点が無いことに対応し、他の符号で経由すべき特定の姿勢を示す経由点の情報を、変更前及び変更後の姿勢を示す識別情報の組に対応付けて記憶してある経由点テーブルを読み出し、
読み出した経由点テーブルから、取得した変更前及び変更後の姿勢を示す識別情報に基づき、前記変更前の識別情報及び前記変更後の識別情報の組に対応付けられた経由点の情報を抽出し、
抽出した経由点の情報が示す符号の姿勢の識別情報に対応付けられている回転角度を前記複数のアーム及びハンドの間の各連結部に対し、前記経由点の情報が示す姿勢の数だけ出力した後、変更後の姿勢の識別情報に対応付けられている回転角度を前記各連結部に対し出力する
処理を実行させることを特徴とする制御プログラム。
【発明を実施するための形態】
【0021】
本発明をその実施の形態を示す図面に基づいて具体的に説明する。
【0022】
(実施の形態1)
図1は、実施の形態1における搬送システムの概要を示す説明図であり、
図2は搬送システムの模式上面図である。搬送システムは、複数のステーション81〜86と、搬送ロボット1と、制御装置10と、ベース20とを含み、矩形板状のワークWを搬送する。ワークWの形状は勿論例示であり、円板状等であってもよい。
【0023】
複数のステーション81〜86は、矩形箱状のベース20の周囲を取り囲むように配置されている。複数のステーション81〜86の内の第1ステーション81、第3ステーション83、第4ステーション84、第5ステーション85、及び第6ステーション86は夫々、ワークWを夫々収容する棚板を有する収容体である。第2ステーション82は、ワークWの検査装置であり、ワークWが載置される検査台を有している。第1ステーション81、第2ステーション82及び第3ステーション83は、ベース20の一長辺に沿って順に、各々収容棚又は検査台をベース20側に向けるようにして並設されている。第4ステーション84及び第5ステーション85は、ベース20の他長辺に沿って各々収容棚をベース20側に向けるようにして並設されている。第6ステーション86は、ベース20の一短辺の略中央に対応するように、収容棚をベース20に向けるようにして配置されている。ベース20の前記一短辺とは反対側の短辺に沿うようにして壁9が設けられている。壁9は、長さがベース20の短辺よりも長く、両長辺に沿って配置されているステーション81〜85をも覆うようにしてある。なお壁9は透明であっても不透明であってもよいが、
図1では説明を容易にするために透明な壁として示されている。
【0024】
搬送ロボット1は、スカラ型ロボットである。搬送ロボット1はベース20の所定箇所に設置される基部11を備える。基部11には、その中央部に設けられた孔に鉛直方向に貫通するように嵌合されている円筒状の第1軸12が設けられている。第1軸12は、基部11に対して昇降可能に支持されている。第1軸12の一端には、扁平な長細板状の第1アーム13の一端が、その扁平面が水平方向に沿うように、第1連結部(ショルダ)21により連結されている。第1連結部21は、鉛直方向の回転軸を有し、第1アーム13の他端が、第1軸12の中心軸と同軸で第1アーム13の長さを半径とした円の円周状の軌道で動くことができる。第1アーム13の他端には、第1アーム13と同形状の第2アーム14の一端が、同様にその扁平面が水平方向に沿うように、第2連結部(エルボ)22により連結されている。第2連結部22も鉛直方向の回転軸を有し、第2アーム14の他端は、第2連結部22即ち第1アーム13の他端を中心軸にして、第2アーム14の長さを半径とする円の円周状の軌道で動くことができる。第2アーム14の他端には、略U字板状のハンド15の幅方向の中央を支持する基部が、該ハンド15の扁平面が水平面に沿うように第3連結部(リスト)23により連結されている。第3連結部23も鉛直方向の回転軸を有し、ハンド15は該第3連結部23を中心軸に水平面上を回転する。
【0025】
搬送ロボット1の第1連結部21、第2連結部22、及び第3連結部23には、夫々サーボモータ(第1〜第3モータ21M〜23M)が取り付けられている。搬送ロボット1は制御装置10と接続されており、制御装置10からの制御信号に基づくサーボモータの動作により、第1連結部21〜第3連結部23における回転角度が制御される。第1連結部21では第1アーム13の基部11に対する回転角度が制御され、第2連結部22では第1アーム13と第2アーム14との間の回転角度が制御され、第3連結部23では第2アーム14とハンド15との回転角度が制御される。第1連結部21〜第3連結部23夫々における回転角度が制御されることで搬送ロボット1の姿勢が変更される。また搬送ロボット1の第1軸12には昇降モータ(第4モータ24M)が取り付けられており、該昇降モータへの制御により、第1軸12(ハンド15)の基部11に対する高さが制御される。
【0026】
図3は、実施の形態1における制御装置10の構成を示すブロック図である。制御装置10は例えばPLC(Programmable Logic Controller )を用い、CPU(Central Processing Unit )等のプロセッサ101と、フラッシュメモリ等である書き換え可能な不揮発性のメモリ102とを含む制御部100を備える。
【0027】
制御部100は、第1駆動回路111を介して第1連結部21に設けられたサーボモータである第1モータ21Mに接続されている。同様に制御部100は、第2駆動回路112を介して第2連結部22に設けられたサーボモータである第2モータ22Mに接続されており、第3駆動回路113を介して第3連結部23に設けられたサーボモータである第3モータ23Mに接続されている。また制御部100は、第4駆動回路114を介して第1軸12を昇降させる第4モータ24Mに接続されている。
【0028】
第1〜第4駆動回路111〜114は、図示しない電源回路から電源の供給を受けて第1〜第4モータ21M〜24Mへ電力を供給すると共に、制御部100からの制御信号に基づいて第1〜第3モータ21M〜23Mのオン及びオフ、並びに回転角度を制御する。また、第1モータ21M〜第3モータ23Mには夫々、回転角度を検出するエンコーダが設けられており、プロセッサ101は、エンコーダが出力する回転角度を示す各信号を入力して、第1モータ21M〜第3モータ23Mにおける回転角度を検知することが可能である。また第1軸12の昇降モータである第4モータ24Mにもエンコーダが設けられており、プロセッサ101は、該エンコーダが出力する信号を入力して移動距離を換算し、第1軸12の高さを検知することが可能である(いずれも図示せず)。
【0029】
制御部10のメモリ102には、制御プログラム10Pが記憶されている。プロセッサ101は、制御プログラム10Pを実行することにより、第1〜第4モータ21M〜24Mに対する制御信号を出力する。メモリ102には、経由点テーブル10Tが記憶されている。制御部10は、制御プログラム10Pを実行する際に、経由点テーブル10Tを参照してこれに従い制御を行なう。経由点テーブル10Tについては後述する。
【0030】
図4は、実施の形態1における搬送ロボット1のリトラクトポジションの一例を示す説明図である。
図4は
図2の模式上面図に対応し、搬送ロボット1の異なる姿勢を示している。
図4中の符号PAは、第1ステーション81に対するリトラクトポジションを示し、符号PBは、第3ステーション83に対するリトラクトポジションを示している。各リトラクトポジションPA,PBについては夫々、その姿勢となるための第1連結部21〜第3連結部23における回転角度、及びハンド15の高さ方向の位置を規定する教示点がメモリ102に記憶されている。教示点は例えば、第1連結部21〜第3連結部23夫々における回転角度と、ハンド15の任意のデカルト座標系における座標とを示す。ロボット制御装置10では、第1ステーション81及び第3ステーション83のみならず全ステーション81〜86に対応するリトラクトポジションの教示点をメモリ102に記憶しておく。ロボット制御装置10のプロセッサ101は、各リトラクトポジションの教示点に基づいてハンド15の移動、即ち搬送ロボット1の姿勢を変更させる。
【0031】
例えば
図4中の搬送ロボット1をリトラクトポジションPAからリトラクトポジションPBへ変更させるケースでの制御について説明する。ロボット制御装置10は、このケースにおいてリトラクトポジションPAからリトラクトポジションPBへ搬送ロボット1の第1連結部21〜第3連結部23を適切に回転させることが必要になる。まず単純に第1連結部21のみをリトラクトポジションPAに対応する角度から、リトラクトポジションPBに対応する角度となるように搬送ロボット1の姿勢を変更させる場合、ハンド15の先端、及び第2連結部22は
図4中の破線で示すような軌道を描く。この場合、
図4で明らかなようにハンド15の先端が第1ステーション81若しくは壁9と干渉するか、第2連結部22が第4ステーション84と干渉する。したがってこのような干渉を回避するために従来、プロセッサ101がリトラクトポジションPAの教示点からリトラクトポジションPBの教示点へハンド15を直線的に移動させる移動方向に対応するベクトルを演算により求めるか、又は図示しない教示装置から教示するようにしている。プロセッサ101は、演算により又は教示装置から得られたベクトルに対応する第1連結部21〜第3連結部23の回転角度を夫々算出して記憶する。以後、リトラクトポジションPAからリトラクトポジションPBへ搬送ロボット1の姿勢を変更させる場合には、プロセッサ101は記憶した情報を読み出して各第1モータ21M〜第3モータ23Mへ向けて、各々を適切に回転させる制御信号を出力する。
図4の例であれば、第1連結部21を反時計回りに120°(−120°)回転させると共に、同時に第2連結部22を時計回りに180°回転させ、更に第3連結部23を反時計回りに60°回転させるといったように制御される。
【0032】
また高さについては、ワークWを収容する棚板を有する収容体であるステーション81,83〜86について、夫々棚板を収容部として各識別する情報に対応付けて収容部の高さを記憶してある。したがってプロセッサ101は、ワークWの搬入先又は搬出先のステーション81,83〜86及び収容部を識別する情報の指示を受けた場合、まず、搬入先又は搬出先のステーション81,83〜86に応じたリトラクトポジションに搬送ロボット1の姿勢を変更させる。そしてプロセッサ101は、ハンド1の高さが収容部を識別する情報に対応付けて記憶してある高さに対応するように、第1軸12を昇降させるべく第4モータ24Mへ向けて制御信号を出力する。
【0033】
実施の形態1における搬送システムでは基本的に、ロボット制御装置10が上述の教示点及びベクトルに基づいて搬送ロボット1を制御するが、これに加えて、ロボット制御装置10は、経由点を示す経由点テーブル10Tを参照しながら搬送ロボット1を制御する。経由点としては例えば、搬送ロボット1のホームポジションを用いる。ホームポジションは、第1連結部21〜第3連結部23がいずれも退避(所定の初期位置の姿勢へ変動)した姿勢である。
図5は、実施の形態1における搬送ロボット1のホームポジションの一例を示す説明図である。
図5Aは、第1アーム13、第2アーム14及びハンド15が直線状に折り畳まれた姿勢のホームポジションを示し、
図5Bは、第1アーム13、第2アーム14及びハンド15が正三角形の各辺に対応する姿勢となったホームポジションを示している。ホームポジションについても、例えば
図5Aの姿勢では第1連結部21は角度ゼロ、第2連結部22は角度180°、第3連結部23は角度−180°等として設定されており、メモリ102に記憶されている。
【0034】
図6は、経由点テーブル10Tの内容例を示す説明図である。
図6に示す経由点テーブル10Tでは、各行の項目が搬送ロボット1の変動前のリトラクトポジションに対応するステーションを示しており、各列の項目が変動後のリトラクトポジションに対応するステーションを示している。各項目には、ステーションを各々識別する情報が示されている。
図6の例では、第1ステーション81の識別情報は「ST1」、第2ステーション82の識別情報は「ST2」、第3ステーション83の識別情報は「ST3」、第4ステーション84の識別情報は「ST4」である。同様に第5ステーション85の識別情報は「ST5」であり、第6ステーション86の識別情報は「ST6」である。経由点テーブル10T自体は、システム設計によらないので、
図6に示すように第7ステーションに対応する「ST7」等の欄を含んでよい。変動前のリトラクトポジションの行と変動後のリトラクトポジションの列が交差した欄に、姿勢を変更させる場合に経由すべき経由点の情報が示されている。経由点の情報は、搬送ロボット1の特定の姿勢に対応する識別情報であり、例えば以下のような姿勢と対応する。なお「ホームポジション」は、
図5A又は
図5Bのいずれであってもよいし、他の姿勢であってもよい。
「0」:経由点なし
「1」:ホームポジション(任意の高さ)
「2」:ホームポジション(変更後の高さ)
「3」:ホームポジション(変更前の高さ)
「2」と「3」はいずれもホームポジションに対応するが、「2」は、ハンド15の高さを、搬送ロボット1が変更後の姿勢にてワークWを搬入又は搬出するための高さと同一に変更しておくことに対応する。「3」は、ハンド15の高さを、搬送ロボット1が変更前の姿勢でワークWを搬入又は搬出した時点での高さのままとすることに対応する。なお経由点の情報は、上述のように4つに限らず更に他の特定の姿勢に対応する情報を含む5つ以上の数を含んでもよい。
【0035】
図6の説明図において例えば、第1ステーション81に対するリトラクトポジション(
図4の符号PA)から第3ステーション83のリトラクトポジション(
図4の符号PB)へ搬送ロボット1の姿勢を変更させる場合には、対応する欄には「0,0,0,…」が示されている。なお経由点の情報が複数個存在するのは、各欄に対して確保されるメモリ102の容量に対応する。「0,0,0,…」の経由点の情報はつまり、第1ステーション81に対するリトラクトポジション(
図4の符号PA)から第3ステーション83のリトラクトポジション(
図4の符号PB)へは経由点なしで姿勢を変更するように制御されることを示す。この場合は上述したように、ハンド15を直線的に移動させるベクトルに基づいて直接的に姿勢の変更が行なわれる。同様にして
図6の説明図では、第1ステーション81に対するリトラクトポジションから第5ステーション85のリトラクトポジションへ搬送ロボット1の姿勢を変更させる場合、対応する欄には「1,2,0,…」が示されている。つまりこの場合、第1ステーション81に対するリトラクトポジションから第5ステーション85のリトラクトポジションへ姿勢を変更させる場合には一旦、搬送ロボット1の姿勢はハンド15を任意の高さとするホームポジションを経由する。そして搬送ロボット1の姿勢はその後、第5ステーション85にて搬入又は搬出するワークWの高さとハンド15の高さが同一となるホームポジションを経由した後に、第5ステーション85に対するリトラクトポジションへ変更される。
【0036】
図7は、経由点テーブル10Tを用いた搬送ロボット1の姿勢変更処理手順の一例を示すフローチャートである。制御部100のプロセッサ101は、制御プログラム10Pに基づき、1つのステーションに対するリトラクトポジションから他の1つのステーションに対するリトラクトポジションへの姿勢の変更が指示された場合、以下の処理を実行する。
【0037】
プロセッサ101は、変更前のリトラクトポジションに対応するステーションの識別情報を取得する(ステップS1)。プロセッサ101は同時的に、変更後のリトラクトポジションに対応するステーションの識別情報を取得する(ステップS2)。プロセッサ101は、取得した識別情報に基づき、経由点テーブル10Tを参照し(ステップS3)、ステップS1及びS2で取得した識別情報にて夫々特定される行及び列が交差する欄の経由点の情報を1つずつ、先頭から順に読み出す(ステップS4)。プロセッサ101は、読み出した経由点の情報が「0(ゼロ)」を示しているか否か判断する(ステップS5)。「0」を示していないと判断された場合(S5:NO)、プロセッサ101は、読み出した経由点の情報に対応する姿勢とするべく制御信号を第1駆動回路111〜第4駆動回路114へ出力し(ステップS6)、処理をステップS5へ戻す。ステップS6においてプロセッサ101は、記憶してある第1連結部21〜第3連結部23の回転角度、第1軸12の高さを示す制御信号を出力する。
【0038】
ステップS5にて「0」を示していると判断された場合(S5:YES)、プロセッサ101はステップS2で取得した識別情報に対応するリトラクトポジションへ搬送ロボット1の姿勢を変更させるべく制御信号を第1駆動回路111〜第4駆動回路114へ出力し(ステップS7)、処理を終了する。ステップS7では、プロセッサ101は記憶してある第1連結部21〜第3連結部23の回転角度、第1軸12の高さを示す制御信号を出力する。
【0039】
図8は、搬送ロボット1の姿勢の変更例を示す概要図である。
図8Aは変更前の姿勢、
図8Bは経由点における姿勢、
図8Cは変更後の姿勢を示している。なお
図8Aは、
図1における第1ステーション81に対するリトラクトポジションを示し、
図8Bは、ホームポジション(
図5Aに対応)を示し、
図8Cは、
図1における第5ステーション85に対するリトラクトポジションを示している。
【0040】
プロセッサ101は、
図7のフローチャートに示した処理に従ってまず、「ST1」及び「ST5」を夫々、変更前及び変更後のリトラクトポジションに対応するステーションの識別情報として取得する(S1,S2)。このとき搬送ロボット1の姿勢は、
図8Aに示す通りである。次にプロセッサ101は、経由点テーブル10Tを参照し(S3)、「ST1」に対応する行と「ST5」に対応する列とが交差する欄の経由点の情報「1,2,0,…」を読み出す(S4)。プロセッサ101は、経由点の先頭が「1」であって「0」を示していないと判断するから(S5:NO)、ホームポジション「1」に対応する姿勢とするべく制御信号を第1駆動回路111〜第4駆動回路114へ出力する(S6)。これにより搬送ロボット1の姿勢は、
図8Bに示す状態となる。ホームポジション「1」では高さは任意である。したがって高さについては第1軸12を中間位置とするなどしてもよい。プロセッサ101は、次の経由点の情報が「2」であって「0」を示していないと判断するから(S5:NO)、ホームポジション「2」に対応する姿勢とするべく制御信号を第1駆動回路111〜第4駆動回路114へ出力する(S6)。ホームポジション「2」は、高さが変更後の高さ、即ち第5ステーション85における搬入又は搬出するワークWの高さとなるようにすることを示すから、プロセッサ101は第4駆動回路114へ高さを変更すべく制御信号を出力する。プロセッサ101は、次の経由点の情報が「0」を示していると判断するから(S5:YES)、変更後即ち第5ステーション85に対するリトラクトポジションの姿勢とすべく制御信号を第1駆動回路111〜第3駆動回路113へ出力し(S7)、姿勢の変更を終了する。これにより搬送ロボット1の姿勢は
図8Cに示す状態となる。
【0041】
なおステップS4で読み出した経由点の情報が「3,2,0,…」であった場合、プロセッサ101は、ハンド15を姿勢の変更前の高さに維持しながら第1アーム13、第2アーム14及びハンドの姿勢をホームポジションへ変更する。そしてその後プロセッサ101は、ハンド15を姿勢の変更後、即ち第5ステーション85における搬入又は搬出するワークWの高さとなるように制御する。プロセッサ101は、第1アーム13、第2アーム14及びハンド15の姿勢を第5ステーション85に対するリトラクトポジションへと変更させるように制御する。
【0042】
図7のフローチャートに示した処理は、姿勢の変更前及び変更後のリトラクトポジションの組み合わせがどのようなものであっても、同一のプログラムソースに基づき実行が可能である。また、経由点テーブル10Tの内容によらず、同一のプログラムソースを汎用的に適用することが可能である。つまり、システムの設計が変更されたとしても、教示点及び教示情報と、経由点テーブル10Tの内容と、経由点に含まれるホームポジションの教示点とをそのシステムに合わせて変更すれば、プログラムの書き換えは不要になる。これまでロボット制御装置10におけるプログラムは、各システムに適応させた固有のものとするケースがあった。しかしながら本実施の形態1におけるロボット制御装置10では、制御プログラム10Pを具体的なシステム構成に特化させた内容とすることなしに、汎用のプログラムソースを用いて様々なシステムに適応させることが可能である。
【0043】
(実施の形態2)
図9は、実施の形態2における搬送システムの模式上面図である。実施の形態2の搬送システムは、複数のステーション81〜86と、搬送ロボット1bと、制御装置10と、ベース20とスライダー200とを含み、矩形板状のワークWを搬送する。ワークWの形状は勿論例示であり、円板状等であってもよい。なお実施の形態2の搬送システムの内、実施の形態1の搬送システムと共通する構成については、同一の符号を付して詳細な説明を省略する。特に実施の形態2では、搬送ロボット1bの構成が実施の形態1と異なり、更に障害物92が加えられているが、ロボット制御装置10の構成は経由テーブル10Tの内容以外は実施の形態1と共通であり、制御プログラム10Pは同一である。
【0044】
実施の形態2における搬送システムでは、複数のステーション81〜86及び壁9の他に、第2ステーション82、第3ステーション83及びベース20の一部に亘る範囲の障害物92が、搬送ロボット1bの上方に設置されている。
【0045】
なお実施の形態2における搬送システムの搬送ロボット1bは、ベース20の長手方向(
図9におけるX軸方向)に沿って設けられたスライダー200上に設置された基部11bと、該基部11bに設けられた第1軸12(
図11参照)と、第1軸12の一端に設けられた円板上にアーム機構を1対連結して構成されている。基部11bは、スライダー200に沿って動くことが可能である。実施の形態2において第1軸12は、基部11bに対して旋回可能に構成されており、第1軸12を旋回させる第5モータ(図示せず)が設けられている。
【0046】
対をなす一方のアーム機構は、第1アーム13a、第2アーム14a、及びハンド15aを含み、他方のアーム機構も第1アーム13b、第2アーム14b、及びハンド15bを含む。ハンド15a及びハンド15bは、ハンド15aが上方で上下に重なるようにして異なる高さで設けられている。第1アーム13a,13b、第2アーム14a,14bは相互に対称的に設けられている。1対のアーム機構は、その対称軸(第1軸12と第1アーム13a及び第1アーム13b夫々とを連結する第1連結部21a及び第1連結部21b間の中央を通る直線)に沿ってのみハンド15a及びハンド15bを夫々直線的に動かすように制御される。高さ方向(
図9中のZ軸方向)については、第1軸12が昇降することによりハンド15a及びハンド15bの高さを調整することができる。
【0047】
図9に示したような搬送ロボット1bでは、各ステーション81〜86に対するリトラクトポジションは、基部11bのX軸方向における位置(座標X)と、第1軸12の昇降位置即ちハンド15a,15bの高さ(座標Z)と、第1軸12の旋回角度(角度θ)とで教示される。各リトラクトポジションは、ハンド15a及びハンド15b夫々の位置(対称軸上の座標Y)を含んでもよい。ホームポジションは、座標Yをゼロとする姿勢即ち、第1連結部21a,21b〜第3連結部23a,23bを全て退避させた状態を示し、スライダー200上の位置(座標X)は任意とする。
【0048】
図9に示したような搬送システムに対しても、実施の形態1にて説明した制御プログラム10P及び経由点テーブル10Tを用いて同様の制御が可能である。
図10は、実施の形態2における経由点テーブル10Tの一例を示す説明図である。
図10に示す経由点テーブル10Tは、実施の形態1の
図6に示した内容例と対応しているが、実施の形態2における経由点テーブル10Tの経由点の情報には、第1軸12の旋回角度θで分別された各ホームポジションの情報が対応する。例えば以下のような姿勢と対応する。
「0」:経由点なし
「1」:ホームポジション(任意の高さ、変更前の旋回角度)
「2」:ホームポジション(変更後の高さ、変更前の旋回角度)
「3」:ホームポジション(変更前の高さ、変更前の旋回角度)
「4」:ホームポジション(任意の高さ、変更後の旋回角度)
「5」:ホームポジション(変更後の高さ、変更後の旋回角度)
「6」:ホームポジション(変更前の高さ、変更後の旋回角度)
つまり、「1」〜「3」は高さが異なるものの旋回角度が変更前と同一である一方で、「4」〜「6」は旋回角度が変更後と同一であるとする。
【0049】
図10に示す経由テーブル10Tでは、第1ステーション81に対するリトラクトポジションから第6ステーション86のリトラクトポジションへ搬送ロボット1の姿勢を変更させることに対応する欄(太字)には「0,0,0,…」ではなく「2,0,0,…」が示されている。つまり、第1ステーション81に対するリトラクトポジションから第6ステーション86のリトラクトポジションへ姿勢を変更させる場合には一旦、旋回角度はそのままで搬送ロボット1の姿勢を第6ステーション86へのリトラクトポジションに対する高さとする。
【0050】
図11は、搬送ロボット1bの姿勢の変更例を示す概要図である。
図11A〜
図11Cは、第1ステーション81に対するリトラクトポジションから第6ステーション86に対するリトラクトポジションへの搬送ロボット1bの姿勢の変化を示している。姿勢の変化は第4及び第5ステーション84,85から第1〜第3ステーション81〜83を見る視点にて示す。
図11Aは変更前の姿勢、
図11Bは経由点における姿勢、
図11Cは変更後の姿勢を示している。つまり
図11Aは、第1ステーション81に対するリトラクトポジションを示し、
図11Bは、
図10の経由テーブル10Tに対応する経由点を示し、
図11Cは、第6ステーション86に対するリトラクトポジションを示している。
【0051】
プロセッサ101は、
図7のフローチャートに示した処理に従ってまず、「ST1」及び「ST6」を夫々、変更前及び変更後のリトラクトポジションに対応するステーションの識別情報として取得する(S1,S2)。このとき搬送ロボット1bの姿勢は、
図11Aに示す通りである。次にプロセッサ101は、
図10に示した経由点テーブル10Tを参照し(S3)、「ST1」に対応する行と「ST6」に対応する列とが交差する欄の経由点の情報「2,0,0,…」を読み出す(S4)。プロセッサ101は、経由点の先頭が「2」であって「0」を示していないと判断するから(S5:NO)、ホームポジション「2」に対応する姿勢とするべく制御信号を出力する(S6)。これにより搬送ロボット1の姿勢は、
図11Bに示す状態となる。ホームポジション「2」では、旋回角度は変更前のまま、高さを変更後とする。プロセッサ101は、次の経由点の情報が「0」を示していると判断するから(S5:YES)、変更後即ち第6ステーション86に対するリトラクトポジションの姿勢とすべく制御信号を出力し(S7)、姿勢の変更を終了する。これにより搬送ロボット1の姿勢は
図11Cに示す状態となる。
【0052】
図12は、実施の形態2における経由点テーブル10Tの他の一例を示す説明図である。
図12に示す経由点テーブル10Tは、
図10に示した内容例と対応しているが、
図12では、第1ステーション81に対するリトラクトポジションから第6ステーション86のリトラクトポジションへ搬送ロボット1の姿勢を変更させることに対応する欄(太字)には「5,0,0,…」が示されている。つまり、第1ステーション81に対するリトラクトポジションから第6ステーション86のリトラクトポジションへ姿勢を変更させる場合には一旦、旋回角度を変更後の角度として搬送ロボット1の姿勢を第6ステーション86へのリトラクトポジションに対する高さとする。
【0054】
図12に示した経由テーブル10Tを参照する場合、
図10の経由テーブル10Tを参照する場合と比較して、プロセッサ101は、搬送ロボット1bの姿勢をホームポジション「5」に対応する姿勢とするべく制御信号を出力する(S6)。これにより搬送ロボット1の姿勢は、
図13Bに示す状態となる。ホームポジション「5」では、旋回角度も高さも変更後と同一とする。このように経由テーブル10Tの内容を変更するのみで、ロボット制御装置10におけるプロセッサ101が実行する制御プログラム10Pをそのまま利用しつつ、異なる動きを実現できる。したがって各システムに合わせてプログラムを特化させるよりも、汎用的な処理手順を実行させるプログラムとして煩雑さを低減することができるからプログラム管理も容易になり、制御のミスも低減される。
【0055】
実施の形態1及び2で示したように、搬送ロボット1と搬送ロボット1bとで異なる機構を有しているが、ロボット制御装置10における制御プログラム10Pに基づく処理は同一とすることが可能である。教示点、経由点及びそれに応じた経由点テーブル10Tの内容をシステム毎に特化した内容に適応させることで、多様なシステムにおけるスカラ型搬送ロボットのロボット制御に適用させることが可能である。
【0056】
(変形例1)
実施の形態2における
図10〜
図11に示した姿勢の変更例では、第1ステーション81のリトラクトポジションから第6ステーション86のリトラクトポジションへの姿勢の変更時に経由する経由点の情報を「2,0,0,…」(
図10)としたが、「2,5,0,…」としてもよい。つまり、経由点が「2,0,0,…」である場合は、「2」のホームポジションの情報が、「変更前の旋回角度のままで変更後の高さとする」ことに対応するから、
図11Bから
図11Cへの姿勢の変化で示されているように、プロセッサ101は搬送ロボット1bを旋回させると共にスライダー200を動作させて位置を変更する。これに対し、経由点の情報を「2,5,0,…」とした場合は、「5」のホームポジションの情報は「変更後の旋回角度で変更後の高さとする」ことに対応するから、プロセッサ101はまず経由点「2」に基づき高さを変更させ、経由点「5」に基づき旋回角度を旋回させた後に、スライダー200を動作させて位置を変更する。
【0057】
(変形例2)
実施の形態2においては、経由点の情報としてスライダー200上の位置情報(座標X)を含むようにしてもよい。例えばホームポジションの情報として以下のような情報を加える。
「7」:ホームポジション(変更前のスライダー位置)
「8」:ホームポジション(変更後のスライダー位置)
【0058】
このようなホームポジションの情報を用いる場合には、例えば
図11に示す姿勢の変化のために必要な経由点の情報は「2,8,0,…」である。つまり、第1ステーション81に対するリトラクトポジションから第6ステーション86のリトラクトポジションへ姿勢を変更させる場合にはまず第1段階として、旋回角度はそのままで搬送ロボット1の姿勢を第6ステーション86へのリトラクトポジションに対する高さとする(
図11B)。そして第2段階として、プロセッサ101は、旋回角度は
図11Bの姿勢と同じままでスライダー200を動作させ、搬送ロボット1bの位置を第6ステーション86に対するリトラクトポジションの位置へ移動させる。その後プロセッサ101は、第6ステーション86に対するリトラクトポジションの姿勢とすべく制御信号を出力し、搬送ロボット1bが旋回して
図11Cの姿勢(変更後のホームポジション)とする。なおこの場合は、
図11Cの位置で搬送ロボット1bが支障なく旋回できることが条件となる。これにより、スライダー200上の位置を示す位置情報を用いない場合と比較して、制御プログラム10Pの内容を変更することなしに、搬送ロボット1bの姿勢及び位置の変化の過程を細かく設定することができる。
【0059】
ホームポジションの情報を更に、以下に示すような搬送ロボット1bの姿勢(高さ及び旋回角度)の情報と、スライダー200上の位置情報(X軸上位置)とを組み合わせた情報としてもよい。
「0」:経由点なし
「11」:ホームポジション(任意の高さ、変更前の旋回角度、変更前のX軸上位置)
「12」:ホームポジション(任意の高さ、変更前の旋回角度、変更後のX軸上位置)
「21」:ホームポジション(変更後の高さ、変更前の旋回角度、変更前のX軸上位置)
「22」:ホームポジション(変更後の高さ、変更前の旋回角度、変更後のX軸上位置)
「31」:ホームポジション(変更前の高さ、変更前の旋回角度、変更前のX軸上位置)
「32」:ホームポジション(変更前の高さ、変更前の旋回角度、変更後のX軸上位置)
「41」:ホームポジション(任意の高さ、変更後の旋回角度、変更前のX軸上位置)
「42」:ホームポジション(任意の高さ、変更後の旋回角度、変更後のX軸上位置)
「51」:ホームポジション(変更後の高さ、変更後の旋回角度、変更前のX軸上位置)
「52」:ホームポジション(変更後の高さ、変更後の旋回角度、変更後のX軸上位置)
「61」:ホームポジション(変更前の高さ、変更後の旋回角度、変更前のX軸上位置)
「62」:ホームポジション(変更前の高さ、変更後の旋回角度、変更後のX軸上位置)
【0060】
上記のようなホームポジションの情報例では、第1ステーション81に対するリトラクトポジションから第6ステーション86のリトラクトポジションへ姿勢を変更する際に参照する経由点の情報を「21,22,0,…」とした場合には、上述の「7」、「8」を用いて「2,8,0,…」したときの制御とプロセッサ101の制御は同一となる。このように経由点の情報を、高さに加えて第1軸12の旋回角度θで分別するのみならず、スライダー200上の位置で分別したホームポジションの情報に対応させることで、搬送ロボット1bの姿勢及び位置の変化の過程を細かく設定することができる。
【0061】
なおスライダー200の位置情報は、
図12及び13に示した姿勢の変更例についても用いることが可能である。また位置情報は実施の形態2で示したような1軸のスライダー200の位置情報には限定されない。例えば2軸のスライダーを用い、X軸及びY軸夫々での位置を使用して経由点の情報として用いることができる。移動手段はスライダーには限定されない。
【0062】
なお、上述のように開示された本実施の形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。