JPH06301412A - ロボットセル用制御装置 - Google Patents

ロボットセル用制御装置

Info

Publication number
JPH06301412A
JPH06301412A JP5087197A JP8719793A JPH06301412A JP H06301412 A JPH06301412 A JP H06301412A JP 5087197 A JP5087197 A JP 5087197A JP 8719793 A JP8719793 A JP 8719793A JP H06301412 A JPH06301412 A JP H06301412A
Authority
JP
Japan
Prior art keywords
robot
control
user program
see
management
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
JP5087197A
Other languages
English (en)
Inventor
Satoshi Komatsu
聡 小松
Shinichi Ishizuka
新一 石塚
Tomonori Kuratomi
智規 倉富
Yasuhiro Nakagawa
康洋 中川
Shinichi Nishikata
進一 西方
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.)
Citizen Watch Co Ltd
Original Assignee
Citizen Watch 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 Citizen Watch Co Ltd filed Critical Citizen Watch Co Ltd
Priority to JP5087197A priority Critical patent/JPH06301412A/ja
Publication of JPH06301412A publication Critical patent/JPH06301412A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

(57)【要約】 【目的】 ロボットを利用した組立・加工を行うロボッ
トセル用制御装置の改良で、特に、ユーザプログラムの
デバグをし易く、ロボットセルシステムの立上げを早く
することを可能ならしめることを目的とする。 【構成】 主制御装置24とマンマシンインターフェー
ス手段36とロボット本体制御手段26と周辺制御手段
28とで構成される。主制御装置24は第1の通信手段
40と第2の通信手段108とロボット管理手段512
と周辺管理手段514とユーザプログラム510とユー
ザプログラム実行制御手段520とデバグ制御手段52
2とを具備し、デバグ制御手段522はマンマシンイン
ターフェース手段36の入力手段1004より入力され
る命令を解釈し、ロボット管理手段512か周辺管理手
段514かユーザプログラム実行制御手段520のいづ
れかに命令を伝達し、状態を取得し、マンマシンインタ
ーフェース手段36に取得した状態を伝達するように構
成されている。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ロボットを利用した組
立・加工を行うロボットセル用制御装置の改良に関す
る。特に、ロボットセルのシステムの立ち上げを早くす
ることが可能であり、システムの保守性を良くした改良
に関する。
【0002】
【従来の技術】近年、産業界においては、生産の省力化
や生産の柔軟性の向上や製品品質の向上等を目的とし
て、生産ラインのロボット化が進んでいる。産業用ロボ
ットを生産ラインに設置する場合、産業用ロボットとこ
れと密接な関係にある周辺装置群とを一つのまとまり
(セル)として構成することが広く行われている。この
一つのまとまりをロボットセルと云う。
【0003】ごく、自然な発想から、制御もセルを単位
として行われる。従来技術に係るロボットセル用制御装
置を使用した一例として図19に示すロボットセルシス
テムがある。
【0004】図19参照 図において、1214はロボット本体であり、1216
はロボット本体1214に取り付けられるハンドであ
り、ハンド1216は図示していないワークを操作す
る。ロボット本体1214とハンド1216とは共にロ
ボットコントローラ1202によって駆動される。12
10はコンベアであり、ロボット本体1214へのワー
クの移送やロボット本体1214からの完成品の移送等
を行う。1212は供給装置であり、ロボット本体12
14への部品の供給等を行う。コンベア1210や供給
装置1212や図示していないセンサ等はセルコントロ
ーラ1200によって駆動される。1218はビデオカ
メラ等よりなる視覚センサであり、ハンド1216と図
示していないワークとの相対位置の監視とかハンド12
16が操作した結果の確認とかを行う。視覚センサ12
18によって取り込まれた画像はビジョンコントローラ
1204によって画像処理される。
【0005】コンベア1210と供給装置1212と図
示していないセンサ等と視覚センサ1218とは、ロボ
ット本体1214やハンド1216と一体となってロボ
ットセルを形成しており、ロボット本体1214の周辺
装置群としての機能を果たしている。
【0006】ロボットコントローラ1202は、ロボッ
ト言語にて記述されたユーザプログラムに基づいてロボ
ット本体1214の動作を制御するとともに、ハンド1
216の開閉動作等ロボット周辺装置の一部の動作と、
ロボット本体1214の動作との協調を取りながら制御
を行う。
【0007】セルコントローラ1200は、コンベア1
210や供給装置1212等からなる、セルに含まれる
ロボット周辺装置群に動作命令を与えたり、また、これ
らの周辺装置群の状態を取得したりして、セルに含まれ
るロボット周辺装置群の協調制御を行う。さらに、セル
コントローラ1200は、ロボットコントローラ120
2と通信回線1270を使用して通信を行い、ロボット
本体1214やハンド1216の動作と、セルに含まれ
るロボット周辺装置群との協調制御を行う。一般的にセ
ルコントローラ1200は、シーケンサと呼ばれるデジ
タル入出力信号処理を中心機能にもつコントローラであ
り、セルコントローラ1200のユーザプログラムはラ
ダー言語で記述されることが多い。
【0008】ビジョンコントローラ1204は、視覚セ
ンサ1218より得られる視覚情報をビジョン言語によ
って記述されたユーザプログラムに基づいて処理し、ロ
ボットコントローラ1202と通信回線1272を使用
して通信を行って、ワークの位置や大きさ等の情報を伝
える。ロボットコントローラ1202は受け取った情報
によりロボット動作の制御を行う。
【0009】以上のように、セルの動作を制御するに
は、セルコントローラ1200とロボットコントローラ
1202とビジョンコントローラ1204とのそれぞれ
にユーザプログラムを作成しなければならない。セルコ
ントローラ1200に対してはラダー言語にてプログラ
ムするプログラミング装置1250を使用し、ロボット
コントローラ1202に対してはロボット言語にてプロ
グラムするプログラミング装置1252を使用し、ビジ
ョンコントローラ1204に対してはビジョン言語にて
プログラムするプログラミング装置1254を使用す
る。そして、これらのセルコントローラ1200とセル
プログラミング装置1250とロボットコントローラ1
202とロボットプログラミング装置1252とビジョ
ンコントローラ1204とビジョンプログラミング装置
1254とによりロボットセル用制御装置が構成されて
いる。
【0010】プログラムにはバグはつきものである。デ
バグ環境の善し悪しにより、プログラム開発効率は大き
く異なってくる。プログラムをデバグする負荷はプログ
ラムの大きさに比例して大きくなる位では済まされず、
指数関数的に増大するものである。なぜなら人間の記憶
力や認識力には限界があり、プログラムの各部分の挙動
を同時に想起することができなくなるからである。した
がって、プログラムの一部の動作を実行したり停止させ
たりしながら、セルの各部分の動作が詳しく判る(忘れ
てもすぐに見直すことができる)ことが重要である。
【0011】
【発明が解決しようとする課題】このように従来技術に
係るロボットセル用制御装置においては、主要な三つの
機能であるセルコントロール機能とロボットコントロー
ル機能とビジョンコントロール機能とが分離され、さら
に、この三つの機能が結合されている。このため、ユー
ザプログラムをデバグする時、それぞれの機能毎のプロ
グラミング装置を使用してデバグすることになるので、
ある機能のユーザプログラムをデバグする時に他のユー
ザプログラムが関係する時は、一つのプログラミング装
置を操作し監視するだけではデバグすることができず、
それぞれの機能のユーザプログラムの開発者がそれぞれ
のプログラミング装置の操作・監視をすることが不可欠
になる。このため、異常現象の詳細な状態等を把握する
ことが困難となり、解決に多大の時間を要していた。
【0012】本発明の目的は、この欠点を解消すること
にあり、ユーザプログラムをデバグする時、デバグが効
率良く行えて、ロボットセルシステムの立上げを早く
し、システムの保守性を良くしたロボットセル用制御装
置を提供することにある。
【0013】
【課題を解決するための手段】
図1参照 上記の目的を達成するために、本発明は、図1に示すよ
うに、主制御装置(24)とマンマシンインターフェー
ス手段(36)とロボット本体制御手段(26)と周辺
制御手段(28)とにより構成される。
【0014】主制御装置(24)は、第1の通信手段
(40)と、第2の通信手段(108)と、この第2の
通信手段(108)と接続されるロボット管理手段(5
12)と、前記の第2の通信手段(108)と接続され
る周辺管理手段(514)と、前記のロボット管理手段
(512)ならびに前記の周辺管理手段(514)と相
互に情報を伝達するユーザプログラム実行手段(51
0)と、このユーザプログラム実行手段(510)の実
行の制御とこのユーザプログラム実行手段(510)の
状態の入手とを行うユーザプログラム実行制御手段(5
20)と、前記のロボット管理手段(512)ならびに
前記の周辺管理手段(514)よりロボット・周辺機器
の状態を受け必要な状態を前記の第1の通信手段(4
0)に伝達し、前記のユーザプログラム実行制御手段
(520)を経由して前記のユーザプログラム実行手段
(510)の状態を受け必要な状態を前記の第1の通信
手段(40)に伝達し、前記の第1の通信手段(40)
より受けた命令を前記のロボット管理手段(512)ま
たは前記の周辺管理手段(514)または前記のユーザ
プログラム実行制御手段(520)のいづれに伝達する
かを判断して、この選択されたロボット管理手段(51
2)または周辺管理手段(514)または前記のユーザ
プログラム実行制御手段(520)のいづれかに前記の
命令を伝達するデバグ制御手段(522)とを備える。
【0015】マンマシンインターフェース手段(36)
は、前記の第1の通信手段(40)と接続される第3の
通信手段(1012)と、この第3の通信手段(101
2)と接続されるマンマシンインターフェース管理手段
(1010)と、このマンマシンインターフェース管理
手段(1010)と接続される入力管理手段(100
8)と、この入力管理手段(1008)と接続される入
力手段(1004)と、前記のマンマシンインターフェ
ース管理手段(1010)と接続される表示管理手段
(1006)と、この表示管理手段(1006)と接続
される表示手段(1002)とを備える。
【0016】ロボット本体制御手段(26)と周辺制御
手段(28)とは共に、前記の第2の通信手段(10
8)と接続される。
【0017】さらに、前記のマンマシンインターフェー
ス手段(36)は、前記の表示手段(1002)に、前
記のユーザプログラム実行手段(510)の状態とロボ
ットの状態と周辺機器の状態と前記の入力手段(100
4)より入力した内容との中より選択されたものを同時
に表示するようにしている。
【0018】
【作用】本発明に係るロボットセル用制御装置は、上述
したように構成されているので、ロボットセルシステム
の立上げ時や保守時にユーザプログラムをデバグする際
に下記のように機能する。
【0019】イ.デバグ制御手段522はマンマシンイ
ンターフェース手段36からのコマンドを解釈し、ユー
ザプログラム実行制御手段520を介してユーザプログ
ラム実行手段510の制御または状態取得が行ない、マ
ンマシンインターフェース手段36に必要な状態を伝達
できるので、ユーザプログラム実行手段510の要素で
あるユーザタスクの起動・停止やユーザタスクの1行実
行やユーザタスク中のグローバル変数の表示や変更を行
うことができる。
【0020】ロ.デバグ制御手段522はマンマシンイ
ンターフェース手段36からのコマンドを解釈し、ロボ
ット管理手段512を介してロボット本体の操作・位置
の表示を行ない、マンマシンインターフェース手段36
に必要な状態を伝達できる。
【0021】ハ.デバグ制御手段522はマンマシンイ
ンターフェース手段36からのコマンドを解釈し、周辺
管理手段514を介してビジョンの操作・状態の表示や
デジタルIOの表示・変更を行ない、マンマシンインタ
ーフェース手段36に必要な状態を伝達できる。
【0022】ニ.マンマシンインターフェース手段36
は表示手段1002に、ユーザプログラム実行手段51
0の状態とロボットの状態と周辺機器の状態と入力手段
1004より入力した内容との中より選択されたものを
同時に表示するようにしているので、関連のある項目が
連動して変化しているかどうか、または、関連のない項
目が静止しているかどうかが、一目で見えるので、誤り
のない状況判断を素早く行うことができる。
【0023】ホ.上記イ項とニ項とにより、すべての制
御プログラム間のデータの授受の確認と、ロボット本体
や周辺装置の動作を任意のプログラムステップでの一時
停止と起動とが、一つのマンマシンインターフェース手
段36を通してできる。
【0024】ヘ.上記イ項とハ項とニ項とにより、すべ
ての制御プログラム間の同期の確認が一つのマンマシン
インターフェース手段36を通してできる。
【0025】ト.上記ロ項とハ項とニ項とにより、ロボ
ット本体と周辺装置との手動操作を両者の位置関係に注
意しながら行うことができる。
【0026】以上により、異常の発見と異常時の状態把
握と必要改善策の立案と改善策の確認とができるので、
早期にデバグを完了させることができる。
【0027】
【実施例】以下、図面を参照して、本発明の一実施例に
係るロボットセル用制御装置について、 1.ハードウェア全体の構成と機能の概略 2.ハードウェアの詳細 3.コントローラソフトウェアの概要 4.ホストパソコンソフトウェアの概要 5.組立セルの概要 6.デバグの概要 7.ユーザプログラム全体のデバグ と順を追って詳細に説明する。
【0028】1.ハードウェア全体の構成と機能の概略 図2参照 図2は本実施例に係るロボットセル用制御装置のハード
ウェア構成図である。図2に示すように、本ハードウェ
アはVMEバックプレーン22とメインボード24A
(図1の主制御装置24のハードウェアである。)と、
ロボット制御ボード26A(図1のロボット本体制御手
段26のハードウェアである。)と、周辺制御ボード
(ビジョンボード28A、デジタルIOボード28B、
シリアル通信ボード28C、拡張軸制御ボード28D
(あわせて、図1の周辺制御手段28のハードウェアで
ある。))と、パーソナルコンピュータ36A(図1の
マンマシンインターフェース手段36のハードウェアで
ある。)と、ティーチペンダント36B(図1のマンマ
シンインターフェース手段36のハードウェアであ
る。)とから構成される。
【0029】VMEバックプレーン22は、VMEバス
規格(IEEE 1014)に基づいた電気的伝送路を
提供するものである。
【0030】メインボード24Aは、VMEバスマスタ
として動作し、VMEバックプレーン22を介して、ロ
ボット制御ボード26A、周辺制御ボード(28A、2
8B、28C、28D)の制御と状態の取得を行いなが
ら、本ロボットセル用制御装置全体の制御を行う。
【0031】また、メインボード24Aは二つのシリア
ル通信コントローラ(さらに具体的には、RS232C
コントローラであり、図1の第1の通信手段40のハー
ドウェアである。)であり、シリアル通信コントローラ
A40Aとシリアル通信コントローラB40Bとを持っ
ており、シリアル通信コントローラA40Aはパーソナ
ルコンピュータ36Aに、シリアル通信コントローラB
40Bはティーチペンダント36Bに接続されている。
【0032】メインボード24Aは、前記シリアル通信
コントローラA40Aを通じて、パーソナルコンピュー
タ36Aへのデータ出力と、パーソナルコンピュータ3
6Aから送られるコマンドの解釈と実行を行う。
【0033】また同様に、シリアル通信コントローラB
40Bを通じて、ティーチペンダント36Bの画面10
02B(図1の表示手段1002に相当する。)の制御
と、ティーチペンダント36Bから送られて来るコマン
ドの解釈と実行を行う。
【0034】ロボット制御ボード26Aは、メインボー
ド24Aからのコマンドを受けて、ロボット本体44
(以下ロボットアームと呼ぶこともある。)を駆動し、
またロボット本体44の先端の現在位置などの必要な情
報をメインボード24Aに送る。
【0035】ビジョンボード28Aは、メインボード2
4Aからのコマンドを受けて、カメラにより、対象ワー
クを撮像し、得られた画像を処理して、対象ワークの重
心位置などの処理結果をメインボード24Aに送る。
【0036】デジタルIOボード28Bは、メインボー
ド24Aからのコマンドを受けて、デジタル出力ポート
54にデータを出力し、メインボード24Aからのコマ
ンドに従って、デジタル入力ポート52からのデータを
メインボード24Aに送る。
【0037】シリアル通信ボード28Cは、メインボー
ド24Aからのコマンドを受けて、シリアル入出力ポー
ト56にデータを出力し、シリアル入出力ポート56か
らのデータをメインボード24Aに送る。
【0038】拡張軸制御ボード28Dは、メインボード
24Aからのコマンドを受けて、拡張軸(ロボット本体
以外の軸)を駆動し、メインボード24Aからのコマン
ドに従って、拡張軸の現在位置などの必要なデータをメ
インボード24Aに送る。
【0039】パーソナルコンピュータ36Aは、CRT
ディスプレー装置1002A(図1の表示手段1002
に相当する。)と、キーボード1004A(図1の入力
手段1004に相当する。)を備えており、作業者は、
この表示装置1002Aに表示される、ユーザプログラ
ム及びロボット本体44及び周辺機器の状態を見なが
ら、キーボード1004Aにより、コマンドを入力し、
ユーザプログラム、ロボット本体44及び周辺制御ボー
ドの制御を行う。
【0040】ティーチペンダント36Bは、表示装置1
002Bと、キー入力装置1004B(図1の入力手段
1004に相当する。)を備えており、作業者は、この
表示装置1002Bに表示される、ユーザプログラム、
ロボット本体44、周辺機器の状態を見ながら、キー入
力装置1004Bにより、コマンドを入力し、ユーザプ
ログラム、ロボット本体44及び周辺制御装置の制御を
行う。
【0041】2.ハードウェアの詳細 以下に、各ハードウェアを、メインボード24Aとのデ
ータのやりとりと云う観点から、やや詳しく説明する。
【0042】イ.メインボード 図3・4参照 メインボード24Aの構成を図3を用いて説明する。
【0043】メインボード24Aは、MPU68020
(モートローラ社製、以下CPUと記す。)102を中
心として、ROM104とRAM106とシリアル通信
コントローラA40Aとシリアル通信コントローラB4
0BとVMEバスインターフェース108等とからな
る。
【0044】ロボット制御ボードや周辺制御ボードは、
それぞれコントロール/データレジスタを持っており、
それぞれのコントロール/データレジスタは、CPU1
02から見ると、固有のアドレスに割り付けられている
(図4参照)。CPU102はこのレジスタに対してV
MEバックプレーン22(図2参照)を介して、読み書
き動作を行うことができる。
【0045】CPU102がロボット制御ボードや周辺
制御ボードに対してコマンドを発行したい場合は、コマ
ンドに付随するパラメータをデータレジスタに書き込
み、コントロールレジスタにコマンドを表現するデータ
を書き込む。
【0046】コマンドに対するロボット制御ボードや周
辺制御ボードからの応答は、データレジスタに格納さ
れ、CPU102が適宜読みに行くか、または、割り込
み処理によって処理する。
【0047】ロボット制御ボードや周辺制御ボードが、
CPU102に対して通知したい事象が存在する場合、
VMEバックプレーンを通して割り込み信号を発生さ
せ、CPU102がこれを受け付けると、割り込みハン
ドラが起動され、CPU102はデータレジスタを読み
出す。
【0048】ロ.ロボット制御ボード 図5参照 ロボット制御ボード26Aの構成を図5を用いて更に詳
しく説明する。
【0049】ロボット制御ボード26Aは、TMS32
0C25(302、テキサスインスツルメント社製。以
下TMSと記す。)を中心として、ROM306、RA
M308、VMEバスインターフェース304、PWM
信号発生器310、ポジションカウンタ312、電流セ
ンサ等314からなる。
【0050】ロボット本体44(図2参照)の関節を駆
動するモータの軸に固定されたエンコーダ320からの
信号はポジションカウンタ312で関節角データに変換
され、モータコイル318に流れる電流は前記電流セン
サ314によって検出され、TMS302は、これら信
号の経歴と、望ましい現在位置、速度、トルクの情報か
ら、モータコイル318に印加すべき電圧を所定のアル
ゴリズムに基づいて算出し、PWM信号発生器310
が、この電圧に相当するPWM信号を発生させ、パワー
ドライブ部316を介して、モータコイル318に印加
される。
【0051】TMS302はまた、コントロール/デー
タレジスタを定期的に読み出して、CPU102(図3
参照)からのコマンドが到着していないかを検査し、コ
マンドが到着していれば、これを解釈し、実行する。
【0052】ハ.ビジョンボード 図6参照 ビジョンボード28Aの構成を、図6を用いて説明す
る。
【0053】ビジョンボード28Aは、TMS320C
25(330、テキサスインスツルメント社製。以下T
MS2と記す。)を中心として、ROM332、RAM
334、VMEバスインターフェース336、ビデオイ
ンターフェース338、画像メモリ340等からなる。
【0054】TMS2(330)は、定期的にコントロ
ール/データレジスタを読み出して、CPU102(図
3参照)からのコマンドが到着していないかを検査し、
コマンドが到着していれば、これを解釈して実行する。
【0055】TMS2(330)は、コマンドに従っ
て、カメラ342からの画像を、ビデオインターフェー
ス338を介して、画像メモリ340に取り込み、これ
を処理し、処理結果をデータレジスタに書き込み、処理
の終了を知らせる割り込み信号を、VMEバックプレー
ン22(図2参照)を介してCPU102(図3参照)
に送る。
【0056】ニ.デジタルIOボード デジタルIOボードは、極めて一般的な装置であるか
ら、コントロール/データレジスタの読み書きに関する
部分以外の詳しい説明は省略する。
【0057】コントロールレジスタは、出力ポートに接
続されており、CPU102(図3参照)は、VMEバ
ックプレーンを介して、コントロールレジスタにデータ
を書き込むことにより、任意の出力ポートに任意のデー
タを出力することができる。
【0058】また、データレジスタは、入力ポートに接
続されており、CPU102(図3参照)は、VMEバ
ックプレーンを介して、データレジスタを読み出すこと
により、任意の入力ポートのデータを取り込むことがで
きる。
【0059】ホ.シリアル通信ボード シリアル通信ボードは、極めて一般的な装置であるか
ら、コントロール/データレジスタの読み書きに関する
部分以外の詳しい説明は省略する。
【0060】シリアル通信ボードは、VMEバスインタ
ーフェースと、シリアル通信コントローラ(例えばザイ
ログ社製 Z85C30等)等からなる。
【0061】CPU102(図3参照)は、VMEバッ
クプレーン22(図2参照)を介して、シリアル通信コ
ントローラのコントロール/データレジスタにアクセス
することができる。
【0062】CPU102は、データレジスタに、デー
タを書き出すことで、シリアル通信コントローラに出力
データを渡し、シリアル通信コントローラは、RS23
2Cの規格に従って、外部に出力する。
【0063】外部からシリアル通信コントローラにデー
タが入力された場合、シリアル通信コントローラは、V
MEバックプレーンを介して、CPU102に割り込み
信号を発生させ、CPU102が読み込むべきデータの
存在を知らせる。
【0064】ヘ.拡張軸制御ボード ここで云う拡張軸制御ボードとは、コントロール/デー
タレジスタによって指定されたパルス数だけ、モータを
駆動することのできる制御ボードのことであり、一般的
には、パルスモータコントロールモジュール等という名
称で広く市販されているものであり、極めて一般的な装
置であるから、コントロール/データレジスタの読み書
きに関する部分以外の詳しい説明は省略する。
【0065】CPU102(図3参照)は、VMEバッ
クプレーン22(図2参照)を介して、拡張軸制御ボー
ドのコントロール/データレジスタにアクセスすること
ができる。
【0066】CPU102は、コントロール/データレ
ジスタに、データを書き出すことで、モータの回転角、
角速度、角加速度を指定し、モータの回転を開始させる
ことができる。また、CPU102は、データレジスタ
を読み出すことでモータの状態(回転角、励磁状態、エ
ラーの種類等)を知ることができる。
【0067】3.コントローラソフトウェアの概要
【0068】イ.階層構造 図7参照 メインボード上のソフトウェアは階層化されており、こ
れを図7を用いて説明する。
【0069】最下層は物理層504と名付けられてお
り、ハードウェア502(つまりサーボボード及び周辺
制御ボードのコントロール/データレジスタ。)と直接
データのやり取りを行う部分である。物理層504は、
後で述べるカーネル層506と通信しており、カーネル
層506からのコマンドに従って、コントロール/デー
タレジスタにデータを出力する。また、コントロール/
データレジスタから得られたデータはカーネル層506
に通知される。
【0070】次の層はカーネル層506と名付けられて
おり、上位層の要求に従って、タスクのスケジューリン
グを行う層である。つまり、カーネル層506は上位層
に対して、マルチタスク環境を提供する。
【0071】また、カーネル層506は、上位層に対し
て、ハードウェア502とデータのやり取りをする手段
を、システムコールとして提供する。
【0072】次の層はシステムアプリケーション層50
8と名付けられており、さらにこの層は複数のブロック
に分割されている。この実施例では、ロボット制御ボー
ドを管理するロボット制御管理ブロック512Aとビジ
ョンボードを管理するビジョン管理ブロック514Aと
デジタルIOボードを管理するデジタルIO管理ブロッ
ク514Bと、シリアル通信ボードを管理するシリアル
IO管理ブロック514Cと、拡張軸制御ボードを管理
する拡張軸管理ブロック514Dとユーザプログラムの
実行を制御するユーザプログラム実行制御ブロック52
0Aとデバグ操作を制御するデバグ制御ブロック522
Aとがある。
【0073】ロボット制御管理ブロック512Aは図1
のロボット管理手段512に対応するソフトウェアであ
る。ビジョン管理ブロック514AとデジタルIO管理
ブロック514Bと、シリアルIO管理ブロック514
Cと拡張軸管理ブロック514Dとは、図1の周辺管理
手段514に対応するソフトウェアである。ユーザプロ
グラム実行制御ブロック520Aとデバグ制御ブロック
522Aとは、それぞれ、図1のユーザプログラム実行
制御手段520とデバグ制御手段522とに対応するソ
フトウェアである。
【0074】次の層はユーザアプリケーション層510
Aと名付けられており、本実施例によるロボットセル用
制御装置を使用するユーザによって作成されたユーザプ
ログラムからなっている。このユーザプログラムは通常
ロボットセルの殆どすべての動作を記述している。ユー
ザプログラムは、後述するように、ユーザタスク(53
0、532、534、536)と名付けられた部分プロ
グラムの集合体である。
【0075】ユーザタスク(530、532、534、
536)の集合体であるユーザプログラムは、図1のユ
ーザプログラム実行手段514に対応するソフトウェア
である。
【0076】ロ.ロボット制御・周辺管理ブロック ロボット制御管理ブロック512Aは、デバグ制御ブロ
ック522A及び、ユーザプログラムに対して、ロボッ
ト本体の制御と状態の取得を行う関数を提供する。ロボ
ット制御管理ブロック512Aはまた、カーネル層50
6に対してシステムコールを発行するか、または物理層
504に対して直接コマンドを発行するかして、ロボッ
ト制御ボードと通信する。
【0077】ビジョン管理ブロック514Aは、デバグ
制御ブロック522A及び、ユーザプログラムに対し
て、ビジョンボードの制御と状態の取得を行う関数を提
供する。ビジョン管理ブロック514Aはまた、カーネ
ル層506に対してシステムコールを発行するか、また
は物理層504に対して直接コマンドを発行するかし
て、ビジョンボードと通信する。
【0078】デジタルIO管理ブロック514Bは、デ
バグ制御ブロック522A及び、ユーザプログラムに対
して、デジタルIOボードの制御と状態の取得を行う関
数を提供する。デジタルIO管理ブロック514Bはま
た、カーネル層506に対してシステムコールを発行す
るか、または物理層504に対して直接コマンドを発行
するかして、デジタルIOボードと通信する。
【0079】本ブロックはまた、デジタルIOの動作モ
ードを管理しており、動作モードが仮想モードのときに
は、実際の(ハード的な)IOに全く影響を与えず、仮
想的な動作を行い、動作モードがリアルモードの時に
は、実際のIOが動作する様になっている。
【0080】シリアルIO管理ブロック514Cは、デ
バグ制御ブロック522A及び、ユーザプログラムに対
して、シリアルIOボードの制御と状態の取得を行う関
数を提供する。シリアルIO管理ブロック514Cはま
た、カーネル層506に対してシステムコールを発行す
るか、または物理層504に対して直接コマンドを発行
するかして、シリアルIOボードと通信する。
【0081】拡張軸管理ブロック514Dは、デバグ制
御ブロック522A及び、ユーザプログラムに対して、
拡張軸制御ボードの制御と状態の取得を行う関数を提供
する。拡張軸管理ブロック514Dはまた、カーネル層
506に対してシステムコールを発行するか、または物
理層504に対して直接コマンドを発行するかして、拡
張軸制御ボードと通信する。
【0082】ハ.ユーザプログラム ユーザプログラムは、ユーザタスク(530、532、
534、536)の集合体であり、ロボットセル全体の
制御アルゴリズムが記述されている。
【0083】ユーザタスクは、カーネル層506の提供
するマルチタスク環境下で、ユーザプログラム実行制御
ブロックからの制御を受けながら、並列に実行される。
【0084】ユーザタスクの使用する変数領域は、各ユ
ーザタスクに固有のローカル変数(540、542、5
44、546)と、ユーザタスクが共有する、グローバ
ル変数548とに分かれる。
【0085】ユーザタスクは、ロボット制御管理ブロッ
ク512A及び周辺管理ブロック(514A、514
B、514C、514D)の提供する関数をコールする
ことで、ロボット本体44(図2参照)及び周辺装置の
制御及び状態の取得を行う。
【0086】ニ.ユーザプログラム実行制御ブロック ユーザプログラム実行管理ブロック520Aは、ユーザ
プログラムの各ユーザタスクを各タスク毎に制御するブ
ロックであり、デバグ制御ブロック522A及び、ユー
ザプログラムに対して、ユーザタスクの起動、中断、一
時停止、再起動及び、ローカル変数とグローバル変数5
48の読み出しと書き込みを行わせる関数を提供する。
【0087】ホ.デバグ制御ブロック デバグ制御ブロック522Aは、ティーチペンダント3
6B(図2参照)または、パーソナルコンピュータ36
A(図2参照)と通信を行い、ティーチペンダント36
Bまたはパーソナルコンピュータ36Aからのコマンド
を解釈し、そのコマンドがユーザタスクの制御または状
態取得命令であれば、ユーザプログラム実行制御ブロッ
ク520Aの提供する関数を用いて、ユーザタスクの制
御または状態取得を行い、応答をティーチペンダント3
6Bまたは、パーソナルコンピュータ36Aに返す。あ
るいは、そのコマンドがロボットまたは周辺装置の制御
または状態取得命令であれば、ロボット制御管理ブロッ
ク512Aはまたは周辺管理ブロック(514A、51
4B、514C、514D)の提供する関数を用いて、
ロボットまたは周辺装置の制御または状態取得を行っ
て、応答を、ティーチペンダント36Bまたはパーソナ
ルコンピュータ36Aに返す。
【0088】また、デバグ制御ブロック522Aは、必
要に応じて定期的に、ユーザタスクとロボット本体と、
周辺装置との状態を、ユーザプログラム実行制御ブロッ
ク520Aと、ロボット制御管理ブロック512Aと周
辺管理ブロック(514A、514B、514C、51
4D)との提供する関数を用いて調べ、ティーチペンダ
ント36Bまたはパーソナルコンピュータ36Aに通知
する。
【0089】4.ホストパソコンソフトウェアの概要
【0090】イ.画面の分割 パーソナルコンピュータ36A(図2参照)の表示装置
1002A(図2参照)はCRTディスプレイであり、
これに表示される画面は、複数のページを有しており、
キーボード1004A(図2参照)からのキー操作たと
えばファンクションキーを押すことによって切り換え
る。更に各々のページは、一個または複数のウィンドウ
に分割されており、一部のウィンドウは重なっている。
これらのウィンドウを図8、図9を用いて説明する。
【0091】図8・図9参照 システムメッセージウィンドウ602は、ロボットセル
用制御装置のロボット制御管理ブロックから必要に応じ
て送られて来る、ロボットコントーラの状態を表すメッ
セージを表示する。
【0092】ユーザメッセージウィンドウ604は、キ
ーボード1004Aからのキー入力されたコマンドをエ
コーバックし、必要に応じて、そのコマンドに対する応
答を表示する。
【0093】デバグウィンドウ702は、ユーザプログ
ラムのソースコードの表示、現在実行行の表示、ブレー
クポイントの表示を行う。
【0094】変数モニタウィンドウ704は、グローバ
ル変数548(図7参照)やローカル変数(540、5
42、544、546)(図7参照)の表示を行う。
【0095】監視ウィンドウ606は、ユーザタスクの
状態、CPU占有率、実行行番号の表示を行う。
【0096】状態ウィンドウ610は、カレントプログ
ラムファイル名の表示と選択、カレントデータファイル
名の表示と選択、ロボットの現在位置の表示と制御、コ
ンプライアンスユニットの状態の表示と制御、画像処理
装置の状態の表示と制御を行うためのウィンドウであ
る。
【0097】IOウィンドウ608は、デジタルIOの
状態の表示と制御を行うためのウィンドウである。
【0098】ロ.ホストパソコンの機能構成 パーソナルコンピュータ36A(図2参照)のさらに詳
しい機能構成を図10を用いて説明する。
【0099】図10参照 パーソナルコンピュータ36A(図2参照)は、CRT
ディスプレー装置1002Aと、CRTディスプレー装
置上に表示される複数ウィンドウを制御する表示管理ブ
ロック1006Aと、表示管理ブロック1006Aに対
して各ウィンドウに表示すべきデータを送出するマンマ
シンインターフェース管理ブロック1010Aと、キー
ボード1004Aと、キーボード1004Aから送られ
るデータを処理しマンマシンインターフェース管理ブロ
ック1010Aに送る入力管理ブロック1008Aと、
マンマシンインターフェース管理ブロック1010Aと
メインボード24A(図2参照)との間のデータの送受
信を行うシリアル通信コントローラ1012Aとからな
る。
【0100】表示管理ブロック1006Aは図1の表示
管理手段1006に対応するソフトウェアであり、入力
管理ブロック1008Aは図1の入力管理手段1008
に対応するソフトウェアであり、マンマシンインターフ
ェース管理ブロック1010Aは図1のマンマシンイン
ターフェース管理手段1010に対応するソフトウェア
である。シリアル通信コントローラ1012Aは図1の
第3の通信手段1012に対応するハードウェアであ
る。
【0101】CRTディスプレー装置1002A、キー
ボード1004A、シリアル通信コントローラ1012
Aに関しては、極めて一般的な装置であるから、これ以
上の説明を省略する。
【0102】ハ.入力管理ブロック 入力管理ブロック1008Aは、さらに具体的には、キ
ーボード1004Aからの割り込みを処理する割り込み
ハンドラである。
【0103】ニ.表示管理ブロック 表示管理ブロック1006Aは、さらに具体的には、パ
ーソナルコンピュータのオペレーティングシステム(M
S−DOS等)に包含または付随するウィンドウシステ
ム(MS−Windows等)であるかまたは、それと
類似のウィンドウ制御を行うソフトウェアである。
【0104】ホ.マンマシンインターフェース管理ブロ
ック マンマシンインターフェース管理ブロック1010Aを
さらに詳しく、図11を用いて説明する。
【0105】図11参照 コマンド解析部1118は、入力管理ブロック1008
Aから送られて来るデータを受け、それがメインボード
24A(図2参照)へのコマンドであれば、後述するユ
ーザメッセージウィンドウ管理ブロック1104にその
コマンドをエコーバックし、一方でそのコマンドをシリ
アル通信コントローラ1012Aを介して、メインボー
ド24A(図2参照)に送る。
【0106】あるいは、入力管理ブロック1108Aか
らのデータが、ウィンドウの切り替えコマンドであれ
ば、後述するウィンドウ切り替えブロック1116へウ
ィンドウの切り替えコマンドを送る。
【0107】また、コマンド解析部1118は、シリア
ル通信コントローラ1012Aを介してメインボードか
ら送られて来るデータを解析し、そのデータがいずれの
ウィンドウに表示されるべきものであるかを判定し、適
当なウィンドウ管理ブロックにデータを送出する。
【0108】例えば、前述したように、状態ウィンドウ
610(図8参照)には、ロボット本体の現在位置(図
8の610には、ワールド座標という項目の下に、直交
座標系で表した、ロボット本体の先端のX、Y、Z、R
座標が表示されている。)が表示されているが、これを
データの流れと云う観点から説明すると、まず、デバグ
制御ブロック522A(図7参照)は、定期的に(例え
ば1秒毎に)ロボット制御管理ブロック512A(図7
参照)の提供する関数をコールして、ロボット本体の先
端の現在位置を得る。そしてこのデータを、カーネル層
506(図7参照)の提供するシステムコールを用い
て、カーネル層506に渡し、カーネル層506は、こ
のデータを、物理層504(図7参照)を介して、シリ
アル通信コントローラA40A(図2・図3参照)に渡
す。さらに、このデータは、パーソナルコンピュータの
シリアル通信コントローラ1012Aを経て、コマンド
解析部1118へと到達する。コマンド解析部1118
は、送られてきたデータを調べ、それがロボット本体の
先端の現在位置であることを知り、状態ウィンドウ管理
ブロック1110にデータが渡される。状態ウィンドウ
管理ブロック1110は、データを状態ウィンドウ61
0(図8参照)のどの位置に表示すべきかを決定し、表
示管理ブロック1006A(図10参照)に表示命令を
出す。表示管理ブロック1006A(図10参照)は、
この表示命令に従って、CRTディスプレイ1002A
(図10参照)上の状態ウィンドウ610(図8参照)
の指定された位置に、ロボット本体の先端の現在位置を
表示すると云うわけである。他のウィンドウの表示に関
するデータの流れもこれと同様である。
【0109】システムメッセージウィンドウ管理ブロッ
ク1102は、コマンド解析部1118からデータを渡
され、このデータのバッファリングや形式変換(例え
ば、m単位のデータをmm単位に直す等)を必要に応じ
て行い、さらにこのデータをシステムメッセージウィン
ドウ602(図8参照)上のどの位置に表示するかを決
定して、表示管理ブロックにこのデータを適当な位置に
表示するよう表示命令を出す。
【0110】ユーザメッセージウィンドウ管理ブロック
1104は、コマンド解析部1118からデータを渡さ
れ、このデータのバッファリングや形式変換(例えば、
m単位のデータをmm単位に直す等)を必要に応じて行
い、さらにこのデータをユーザメッセージウィンドウ6
04(図8参照)上のどの位置に表示するかを決定し
て、表示管理ブロックにこのデータを適当な位置に表示
するよう表示命令を出す。
【0111】デバグウィンドウ管理ブロック1106
は、コマンド解析部1118からデータを渡され、この
データのバッファリングや形式変換(例えば、m単位の
データをmm単位に直す等)を必要に応じて行い、さら
にこのデータをデバグウィンドウ702(図9参照)上
のどの位置に表示するかを決定して、表示管理ブロック
にこのデータを適当な位置に表示するよう表示命令を出
す。
【0112】監視ウィンドウ管理ブロック1108は、
コマンド解析部1118からデータを渡され、このデー
タのバッファリングや形式変換(例えば、m単位のデー
タをmm単位に直す等)を必要に応じて行い、さらにこ
のデータを監視ウィンドウ606(図9参照)上のどの
位置に表示するかを決定して、表示管理ブロックにこの
データを適当な位置に表示するよう表示命令を出す。
【0113】状態ウィンドウ管理ブロック1110は、
コマンド解析部1118からデータを渡され、このデー
タのバッファリングや形式変換(例えば、m単位のデー
タをmm単位に直す等)を必要に応じて行い、さらにこ
のデータを状態ウィンドウ610(図8参照)上のどの
位置に表示するかを決定して、表示管理ブロックにこの
データを適当な位置に表示するよう表示命令を出す。
【0114】変数モニタウィンドウ管理ブロック111
2は、コマンド解析部1118からデータを渡され、こ
のデータのバッファリングや形式変換(例えば、m単位
のデータをmm単位に直す等)を必要に応じて行い、さ
らにこのデータを変数モニタウィンドウ704(図9参
照)上のどの位置に表示するかを決定して、表示管理ブ
ロックにこのデータを適当な位置に表示するよう表示命
令を出す。
【0115】IOウィンドウ管理ブロック1114は、
コマンド解析部1118からデータを渡され、このデー
タのバッファリングや形式変換(例えば、16進数のデ
ータを2進数に直す等)を必要に応じて行い、さらにこ
のデータをIOウィンドウ608(図9参照)上のどの
位置に表示するかを決定して、表示管理ブロックにこの
データを適当な位置に表示するよう表示命令を出す。
【0116】ウィンドウ切り換えブロック1116は、
重なったウィンドウ部分の管理を行っており、コマンド
解析部からの指令に基づいて、指定されたウィンドウの
表示と消去を、表示管理ブロックに行わせる。
【0117】5.組立セルの概要 以下に、本ロボットセル用制御装置を用いて構成したロ
ボット組立セルの概要とユーザプログラムの概要につい
て説明する。
【0118】先ず、本組立セルの組立の対象となる部品
と組立内容を図12を用いて説明する。
【0119】図12参照 カセットテープのカセット上ハーフよりなる上ワーク8
04とカセット下ハーフよりなる下ワーク806を組合
わせ、ネジ802を用いて、ネジ止めをするものであ
る。下ワーク806は、キャリア808に載せられ、ガ
イドピン810により位置決めされて、本組立セルに供
給される。上ワーク804には上ワークA804Aと上
ワークB804Bとあり、上ワーク804はこの両者の
総称である。
【0120】次に、本組立セルの構成を、図13にもと
づいて説明する。
【0121】図13参照 本組立セルは、前記ロボットセル用制御装置と、前記ロ
ボット本体44(以後ロボットアームと記す。)と、前
記拡張軸制御ボードに接続された一軸ロボットによるト
レイチェンジャーA910、トレイチェンジャーB93
2と、ロボットアーム44の先端に取り付けられたコン
プライアンスユニット(図示せず。)と、ハンドチェン
ジャー916と、デジタルIOによって制御されるゲー
トA914、ゲートB920、ゲートC918と、デジ
タルIOによって制御される供給コンベア924と排出
コンベア922と、デジタルIOによって制御されるネ
ジ供給ユニット930と、ビジョンボードによって制御
されるカメラ934とカメラモニタ(図示せず。)とオ
ペレータが操作する操作ユニット928とから成る。
【0122】なお、ハンドチェンジャー916には3種
類のロボットハンドを設置しており、本実施例において
は、ロボットハンドとしてワークチャックハンド94
0、ネジ締めハンド942およびキャリアチャックハン
ド944を用意している。ロボットアーム44は、これ
らロボットハンドを、必要に応じて、ロボットアーム4
4の先端に取り付けられたコンプライアンスユニットの
先に装着、または、交換する。
【0123】イ.セルの作業工程 第1工程:供給コンベア924で運ばれゲートA914
で止められたキャリア808は、IDリーダ912によ
って、IDナンバ812(図12参照)が読み込まれ、
そのキャリア808に載っている下ワークがAであるか
Bであるかが判定される。 第2工程:ゲートB920で止められたキャリア808
は、ワークセンサ950によりゲートB920に到着し
たことを検出されキャリアチャックハンド944をつけ
たロボットアーム44によって、作業テーブル938へ
と移載され、固定される。 第3工程:ロボットアーム44は、ロボットハンドをワ
ークチャックハンド940に交換する。 第4工程:第1工程で検出されたIDナンバに従って、
トレイA906上の上ワークA804Aか、または、ト
レイB946上の上ワークB804Bかのいづれかをピ
ックアップする。 第5工程:コンプライアンスユニットを力制御状態にし
て、上ワーク804をキャリア808上の下ワーク80
6に組み付け、指定された力で加圧して、組付けが成功
したかどうか調べるため、上ワーク804の高さを計測
する。 第6−A工程:組付けが失敗した場合、ロボットアーム
44は、ロボットハンドをキャリアチャックハンド94
4に交換し、作業テーブル938上のキャリア808
を、排出コンベア922に移載する。 第6−B工程:組付けがOKの場合は、ロボットアーム
44は、ロボットハンドをネジ締めハンド942と交換
する。 第7工程:ネジ供給ユニット930からネジを取り上
げ、上ワーク上の所定の位置へネジを運び、ネジ締めす
る。 第8工程:ロボットアーム44に取り付けられたカメラ
934を用いて、ネジ締めを終えたワークの外観検査を
行い、組付けの状態が正常であるか否か、ネジが所定の
場所に固定されているか否かを調べる。 第9−A工程:第8工程における組み付けがOKの場合
は、ロボットアーム44は、ロボットハンドをキャリア
チャックハンド944に交換し、作業テーブル938に
あるキャリア808をキャリア供給コンベア924に移
載し、次工程に送る。 第9−B工程:第8工程における組み付けが不良の場合
は、ロボットアーム44は、ロボットハンドをキャリア
チャックハンド944に交換し、作業テーブル938に
あるキャリア808を排出コンベア922に移載する。
【0124】ロ.ユーザプログラムの概要 本組立セルのソフトウェアは、前記ロボットセル用制御
装置のユーザプログラムとして記述される。
【0125】ソフトウェアは、セルコントロール部、ロ
ボットコントロール部、IOコントロール部、ビジョン
コントロール部、IDリーダコントロール部からなる。
【0126】セルコントロール部は、ロボットコントロ
ール部とIOコントロール部とビジョンコントロール部
とIDリーダコントロール部とのそれぞれの起動・停止
・再起動を行う。
【0127】さらに、セルコントロール部は操作ユニッ
トの制御とデータ教示作業の制御と非特権ユーザタスク
の制御とエラー処理等を行う。
【0128】ロボットコントロール部は、ロボットの動
作の制御と、ハンドチェンジャーの制御、コンプライア
ンスユニットの制御を行う。
【0129】すなわち、ロボットコントロール部は、ゲ
ートB920に止められているキャリア808を供給コ
ンベア924から作業テーブル938に移し、IDリー
ダコントロール部から送られるIDナンバに従って、ト
レイA906またはトレイB946から上ワーク804
を取り出し、作業テーブル938の下ワーク806に組
付け、ネジ締めをし、ビジョンコントロール部に信号を
送って、組み付けが正常に行われたか否かの検査をし、
コンベアに戻すという仕事を行う。
【0130】さらにこれを図14・図15を用いて説明
する。
【0131】図14・図15参照 ステップ1では、キャリア到着フラグ(グローバル変
数)がオンであるかを調べ、オン(後述する図16のス
テップ6参照)であれば、ステップ2へ行く。オフであ
れば、再びキャリア到着フラグを調べる。
【0132】ステップ2では、ゲートB920にあるキ
ャリア808を把持するために、ロボットハンドをキャ
リアチャックハンド944に取り替える。
【0133】ステップ3では、ゲートB920にあるキ
ャリア808を供給コンベア924から作業テーブル9
38に移し、キャリア到着フラグをオフにする。
【0134】ステップ4では、上ワークを把持するため
に、ワークチャックハンド940に交換する。
【0135】ステップ5では、IDリーダコントロール
部によって設定されるIDナンバデータ(グローバル変
数)がAならば、ステップ6へ行き、Bならばステップ
7へ行く。
【0136】ステップ6では、トレイA906から上ワ
ークA804Aを取り出し、ステップ8へ行く。
【0137】ステップ7では、トレイB946から上ワ
ークB804Bを取り出し、ステップ8へ行く。
【0138】ステップ8では、コンプライアンスユニッ
トを力制御状態にし、垂直方向に1kgfの力で押し付
ける。
【0139】ステップ9では、押し付けた状態で、上ワ
ーク804の高さを計測する。上ワークと下ワーク80
6が正しく組合わさった状態の上ワーク804の高さ
は、予め計測され、記憶されており、ここで得られた上
ワーク804の高さとその既定値とが一定値以上離れて
いれば、組み付けが失敗したと判断し、ステップ16へ
行く。
【0140】ステップ10では、上ワーク804と下ワ
ーク806をネジ止めするため、ロボットハンドをネジ
締めハンド942に交換する。
【0141】ステップ11では、ネジ締めを行う。
【0142】ステップ12では、ロボットアーム44を
動かして、ロボットアーム44に固定されたカメラ93
4が、ネジの頭部を捉えるようにし、ビジョンコントロ
ール部に対して、良否判定の処理を開始させるために、
画像判定開始フラグ(グローバル変数)をオンにする。
【0143】ステップ13では、ビジョンコントロール
部によって設定される良否判定フラグ(後述の図17の
ステップ4またはステップ5参照)を調べて、良であれ
ばステップ14へ行く。不良であれば、ステップ16へ
行く。
【0144】ステップ14では、ロボットハンドをキャ
リアチャックハンド944に交換する。
【0145】ステップ15では、後述のゲートB制御部
に組立が完了したことを知らせるために、排出フラグを
オンにする。そして、作業テーブル938にあるキャリ
ア808を供給コンベア924に移載し、ステップ1に
戻る。
【0146】ステップ16では、ロボットハンドをキャ
リアチャックハンド944に交換する。
【0147】ステップ17では、作業テーブル938に
あるキャリア808を排出コンベア922に移載し、ス
テップ1へ戻る。
【0148】IOコントロール部は、ゲートA914、
ゲートB920、ゲートC918の制御、供給コンベア
924、排出コンベア922の制御、ネジ供給ユニット
930の制御を行う。IOコントロール部は、さらにい
くつかの部分、つまり、ゲートA制御部、ゲートB制御
部、ゲートC制御部、その他の制御部に分かれる。
【0149】ゲートA、ゲートC制御部は、説明を省略
する。
【0150】ゲートB制御部の機能は、ゲートB920
を制御して供給コンベア924の上流から流れてきたキ
ャリア808を停止させ、ロボットアーム44がゲート
B920にあるキャリア808を作業テーブル938に
移載するのを待ち、ロボットアーム44によって作業テ
ーブル938から搬出されたキャリア808について
は、これを供給コンベア924の下流に流すと云うもの
である。
【0151】さらにこれを、図16を用いて説明する。
【0152】図16参照 ステップ1では、ワークセンサ950(図13参照)が
変化したか、つまりオンからオフへ変化したか、また
は、オフからオンに変化したかを調べ、変化していれ
ば、次のステップへ行く。
【0153】ステップ2では、ワークセンサ950がオ
ンであるか、オフであるかを調べ、オンであればステッ
プ3へ、オフであれば、ステップ1へと行く。
【0154】ステップ3では、排出フラグ(グローバル
変数)を調べ、排出フラグがオンであれば(図15のス
テップ15参照)ステップ4へ、排出フラグがオフであ
ればステップ6へ行く。
【0155】ステップ4では、デジタル出力を操作して
ゲートB920を下げ、キャリア808を排出し(コン
ベアの下流に流す)、ステップ5へ行く。
【0156】ステップ5では、キャリア808を排出後
ゲートB920を上げ、排出フラグをオフにしてステッ
プ1へ戻る。
【0157】ステップ6では、ロボットコントロール部
へキャリア808がゲートB920に到着したことを知
らせるために、キャリア到着フラグ(グローバル変数)
をオンにし、ステップ1へ戻る。
【0158】ビジョンコントロール部は、画像処理装置
を制御して、上ワーク804と下ワーク806を固定す
るネジの頭部の存在と位置を確認し、組み付けの良否の
判定を行う。
【0159】さらにこれを、図17を用いて説明する。
【0160】図17参照 ステップ1では、ロボットコントロール部が発する画像
判定開始フラグ(図15のステップ12)を調べ、これ
がオンになるのを待ち、オンになれば、ステップ2へ行
く。
【0161】ステップ2では、画像判定開始フラグをオ
フし、カメラ934から画像を取り込み、ネジの頭部を
認識し、その位置を計測して、正しくネジ締めが行われ
た場合のネジの頭部の位置と比較し、ある値以上離れて
いるか、あるいはネジの頭部が発見出来ない場合、ネジ
締めが失敗したものと判定する。
【0162】ステップ3では、前ステップにおいて、ネ
ジ締めが成功したと判定された場合は、ステップ4へ、
失敗と判定された場合にはステップ5へ行く。
【0163】ステップ4では、ロボットコントロール部
にネジ締めが完了したことを知らせるために、判定フラ
グを良にセットし、ステップ1へ戻る。
【0164】ステップ5では、ロボットコントロール部
にネジ締めが失敗したことを知らせるために、判定フラ
グを不良にセットし、ステップ1へ戻る。
【0165】IDリーダコントロール部は、IDリーダ
912を制御して、ワークの種類を判別する。
【0166】6.デバグの概要 次に、前記のロボット組立セルのソフトウェアの作成
と、デバグする手順を説明する。
【0167】イ.ソフトウェアのコーディング 前記の各ブロックを本ロボットセル用制御装置のロボッ
ト言語で記述する。各周辺制御装置の制御アルゴリズム
を、一種類の言語で記述できるため、従来のように、制
御装置毎に異なる言語を使用する必要が無い。また、ロ
ボット本体や各制御装置の制御プログラムは、一つのユ
ーザタスクとして、他のユーザタスクと独立に記述する
ことができるため、ユーザタスク間の、通信規約を決め
ておけば、別々のプログラマが、別々のユーザタスクを
設計、コーディングすることも容易である。
【0168】ロ.ユーザタスクの単独デバグ このようにして作成されたプログラムを前記ロボットセ
ル用制御装置にダウンロードし、実際にプログラムを動
作させながらデバグするわけであるが、作業を効率的に
行うために、通常、各周辺装置の制御を行うユーザタス
クの単独のデバグを最初に行う。
【0169】このとき、作業者は、本来他のユーザタス
クと同期して動作すべき1個のユーザタスクを、他のユ
ーザタスクの存在なしに、デバグしたいわけであるか
ら、なんらかの方法で、他のユーザタスクや、周辺機器
の動作を、必要な範囲内で模倣する操作が必要となる。
【0170】本実施例では、これらの操作は、パーソナ
ルコンピュータ上の各ウィンドウを作業者が適宜操作す
ることによって、デバグ制御ブロックに対するコマンド
が発行され、これに応じて、デバグ制御ブロックが、サ
ーボ管理ブロック、周辺管理ブロック、ユーザプログラ
ム実行制御ブロックに必要な動作をさせることにより、
達成されるのである。
【0171】以下に、ユーザタスク単独のデバグの様子
を、ゲートB制御部(図16参照)を例にとって、図1
8を基に、説明する。
【0172】図18参照 手順1では、ゲートB制御部の記述されたプログラムを
パーソナルコンピュータ36A(図2参照)から、シリ
アル通信コントローラA40A(図2参照)を介して、
メインボードのRAM106(図3参照)にダウンロー
ドする。
【0173】手順2では、プログラムの実行モードをス
テップ実行モードにする。
【0174】この手順を更に詳しく述べると、まず、パ
ーソナルコンピュータ36A(図2参照)のキーボード
1004A(図2参照)を用いて、プログラムの実行モ
ードをステップ実行モードにするコマンドを入力する。
このキー入力のエコーバックは、ユーザメッセージウィ
ンドウ604(図8参照)に表示される。このコマンド
は、シリアル通信コントローラA40A(図2参照)を
介して、メインボード24A(図2参照)に受信され、
物理層504(図7参照)、カーネル層506(図7参
照)を経て、デバグ制御ブロック522A(図7参照)
に到達し、デバグ制御ブロック522A(図7参照)
は、現在のプログラム実行モードが、ステップ実行モー
ドであることを記憶する。
【0175】手順3では、デジタルIOの動作モードを
仮想モードにする。
【0176】この手順を更に詳しく述べると、デジタル
IOの動作モードを仮想モードにするコマンドは、手順
2と同様の経路を経て、デバグ制御ブロック522A
(図7参照)に到達し、デバグ制御ブロック522A
(図7参照)は、デジタルIO管理ブロック514B
(図7参照)に対して、仮想モードにするよう指示す
る。デジタルIO管理ブロック514B(図7参照)は
この指示を受けて、デジタルIOの動作モードを仮想モ
ードにする。
【0177】手順4では、ゲートB制御部の一行を実行
する。
【0178】この手順を更に詳しく述べると、一行実行
コマンドは、手順2と同様の経路を経て、デバグ制御ブ
ロック522A(図7参照)に到達し、デバグ制御ブロ
ック522A(図7参照)は、ユーザプログラム実行制
御ブロック520A(図7参照)に対して、一行の実行
を指令する。ユーザプログラムはユーザプログラム実行
制御ブロック520Aの指令に従って実行する。
【0179】手順5では、手順4により実行された各行
の処理内容に応じて便利なものを選んで操作する。
【0180】手順6Bを使用する例でいえば、ゲートB
制御部(図16参照)のステップ1では、ワークセンサ
950(図13参照)がオンするまで、プログラムがス
テップ2に進まないため、ワークセンサ950(図13
参照)の接続されているデジタルIOの入力をオンさせ
なければならないが、デバグの途中では、システムの要
素がすべてそろっているとは限らないため、実際にワー
クセンサ950(図13参照)をオンすることが不可能
な場合がある。ところが、この実施例では、手順3にお
いてデジタルIOを仮想モードにしているため、手順6
Bによって、ワークセンサ950(図13参照)の接続
されているデジタルIOの入力を、デジタルIO操作コ
マンドによって仮想的にオンさせることができる。
【0181】このコマンドは、パーソナルコンピュータ
36A(図2参照)のIOウィンドウ608(図8参
照)に表示されるデジタル入力の、ワークセンサに接続
されているビットにカーソルを動かして、1をキー入力
することによって、発行され、手順2と同様の経路を通
って、デバグ制御ブロック522A(図7参照)に到達
し、デバグ制御ブロック522A(図7参照)は、この
コマンドに従って、デジタルIO管理ブロック514B
(図7参照)に、デジタルIOの指定された入力をオン
するように指令する。
【0182】また、デバグ制御ブロック522A(図7
参照)は、定期的に、デジタルIO管理ブロック514
B(図7参照)の提供する関数を用いてデジタルIOの
状態を取得し、カーネル層506(図7参照)、物理層
504(図7参照)、シリアル通信コントローラA40
A(図2参照)を介して、パーソナルコンピュータ36
A(図2参照)に送り、パーソナルコンピュータ36A
(図2参照)は、この情報を、IOウィンドウ608
(図8参照)に表示する。この場合は、仮想IOの状態
が表示される。
【0183】次に、手順7において、一行実行を行え
ば、ゲートB制御部のステップ1が正しく動作している
か否かが確認できるというわけである。
【0184】次に、手順6Aを使用する例でいえば、ゲ
ートB制御部(図16参照)のステップ3では、グロー
バル変数の一つである排出フラグがオンであるかオフで
あるかによってステップ4に進むかステップ6に進むか
に分かれるのであるが、現在はゲートB制御部の単独デ
バグ中のため、排出フラグをオンにするロボットコント
ロール部が存在しないため、ステップ3の動作が確認で
きない。ところがこの実施例では、グローバル変数操作
コマンドによって、排出フラグのオンオフを行うことが
できるため、あたかも、ロボットコントロール部が存在
するかのようにデバグを進めることができる。
【0185】このコマンドは、手順2と同様の経路を通
って、デバグ制御ブロック522A(図7参照)に到達
し、デバグ制御ブロック522A(図7参照)は、この
コマンドに従って、ユーザプログラム実行制御ブロック
520A(図7参照)に、指定されたグローバル変数を
指定された値に書き換えるよう指令する。
【0186】また、デバグ制御ブロック522A(図7
参照)は、必要に応じて、定期的に、ユーザプログラム
実行制御ブロック520A(図7参照)の提供する関数
を用いてグローバル変数の値を取得し、カーネル層50
6、物理層504、シリアル通信コントローラA40A
(図2参照)を介して、パーソナルコンピュータ36A
(図2参照)に送り、パーソナルコンピュータ36A
(図2参照)は、この情報を、変数モニタウィンドウ7
04(図9参照)に表示する。
【0187】次に、手順7において、1行実行を行え
ば、ゲートB制御部のステップ3が正しく動作している
か否かが確認できるというわけである。
【0188】手順6Cを使う例は、省略する。
【0189】本実施例におけるユーザタスクのデバグの
特徴をまとめて云うならば、パーソナルコンピュータの
画面上のデバグウィンドウには、ユーザタスクのソース
プログラムが表示され、同時にIOウィンドウにそのユ
ーザタスクの参照するデジタルIOが表示され、さらに
このデジタルIOを作業者が操作し、さらに変数モニタ
ウィンドウにそのユーザタスクの参照する変数が表示さ
れ、さらにこの変数の値を作業者が書換えながら、ユー
ザタスクを一行一行実行してゆくことにより、ユーザタ
スクの正しい動作を確かめることができ、従って、ユー
ザタスクのデバグが極めて容易に行われるということで
ある。
【0190】7.ユーザプログラム全体のデバグ 次にユーザプログラム全体のデバグに関して説明する。
【0191】ユーザタスク単独のデバグが終了すると、
全体のユーザプログラムのデバグへと進むわけである
が、全体を動作させ始めてから初めて発見される不具合
点は極めて多く、この部分がデバグ作業の大部分を占め
ると云ってもよい。
【0192】一方、全体のユーザプログラムのデバグに
あたって作業者は、次のような点の確認を行わなければ
ならない。 (1)セルを動作開始させるときの手順は正確である
か。 (2)各ユーザタスク間の同期は正確であるか。 (3)各ユーザタスク間のデータの授受は正確である
か。 (4)ロボットや周辺機器の動作は正常であるか。 (5)エラーが生じたときの処理は正確であるか。
【0193】すなわち、これらの点を確認するために作
業者が行わなければならない操作が、如何に効率的で、
簡便なものであるか否かが、デバグの効率を決定するわ
けである。
【0194】本実施例では、パーソナルコンピュータ上
の各ウィンドウ上にリアルタイムで表示されるロボット
本体、各周辺機器及びユーザプログラムの状態を観察し
ながら、作業者が各ウィンドウに対して、適当な操作を
行うことによって、デバグ制御ブロック522Aに対す
るコマンドが発行され、これに応じて、デバグ制御ブロ
ック522Aが、ロボット制御管理ブロック512A、
周辺管理ブロック514A〜514D、ユーザプログラ
ム実行制御ブロック520Aに必要な動作をさせること
により、デバグ作業が実行される。
【0195】つまり、作業者は、パーソナルコンピュー
タのウィンドウ上での操作を行うことのみで全体のユー
ザプログラムのデバグを行うことができ、従来のように
複数の制御装置にまたがった操作をする必要がないた
め、デバグ作業は極めて能率的である。
【0196】以下に、更に詳しくデバグの様子を説明す
る。
【0197】図2・図7再参照 手順1では、ユーザプログラム全体をパーソナルコンピ
ュータ36Aから、シリアル通信コントローラA40A
を介して、メインボードのRAM106(図3参照)に
ダウンロードする。
【0198】次に、このユーザプログラムを実行させる
わけであるが、ここまでのデバグでは、ユーザタスクの
単独デバグが行われているだけであるから、全体を動作
させたときに、いかなる不具合が生じるか予測できず、
ときにはロボット本体等のメカニズムが突然動作し、事
故を引き起こす場合もあるため、ユーザタスクを一斉に
動作させずに、段階的に(ソースプログラムの一行毎、
あるいはひとつの動作単位毎に)動作させることが望ま
しい。手順2以降の手続きは、このような事情を考慮し
たものである。
【0199】手順2では、ロボットコントロール部の実
行を制御する目的で、図14のステップ1に相当するソ
ース行にブレークポイントをかける。
【0200】この手順をさらに詳しく述べると、まず、
パーソナルコンピュータ36Aのキーボード1004A
を用いて、ステップ1に相当するソース行にブレークポ
イントをかけるコマンドを入力する。前述したように、
このキー入力のエコーバックは、ユーザメッセージウィ
ンドウ604(図8参照)に表示される。このコマンド
は、シリアル通信コントローラA40Aを介して、メイ
ンボード24Aに受信され、物理層504、カーネル層
506を経て、デバグ制御ブロック522Aに到達す
る。デバグ制御ブロック522Aは、ユーザプログラム
実行制御ブロック520Aの用意した関数をコールする
ことによって、指定されたユーザタスクの指定された行
にブレークポイントをかけるように指令する。ユーザプ
ログラム実行制御ブロック520Aは、このコマンドを
受けて、指定されたユーザタスクの指定された行にブレ
ークポイントをかける。
【0201】さらに、デバグ制御ブロック522Aは、
適宜、ユーザプログラム実行制御ブロック520Aの用
意した関数をコールすることによって、どのユーザタス
クのどの行にブレークポイントがかけられているか調
べ、この情報を、カーネル層506、物理層504、シ
リアル通信コントローラA40A、パーソナルコンピュ
ータ36Aのシリアル通信コントローラ1012A(図
10参照)を経て、コマンド解析部1118(図11参
照)に通知し、コマンド解析部1118(図11参照)
はこの情報をデバグウィンドウ管理ブロック1106
(図11参照)に送出する。デバグウィンドウ管理ブロ
ック1106は、デバグウィンドウ702(図9参照)
がもし開いており、ブレークポイントのかけられている
部分が、表示されていれば、該当する行にアンダーライ
ンを表示するよう、表示管理ブロック1006(図10
参照)に指令する。
【0202】手順3では、ひとつのユーザタスクとなっ
ているロボットコントロール部を起動する。このコマン
ドは、手順2と同様の経路を通って、ユーザプログラム
実行制御ブロックに到達し、ロボットコントロール部の
実行が開始されるが、手順2においてブレークポイント
が設定されているため、図14のステップ1で、プログ
ラムが停止する。これにより、もしキャリア到達フラグ
の設定が間違ってオンになったいたとしても、プログラ
ムがステップ2に進み、ロボット本体が不意に動き出す
ことは避けられる。
【0203】手順4では、ひとつのユーザタスクとなっ
ているゲートB制御部のステップ2にあたる部分のソー
ス行にブレークポイントをかけ、手順2と同様に起動す
る。するとプログラムは、ワークセンサの変化を図16
のステップ1で待ち続ける。
【0204】手順5では、供給コンベアの上流からキャ
リアを流して(ゲートAは、すでに制御されているもの
とする。)、ゲートBに到達させ、ワークセンサをオン
させる。すると、ゲートB制御部のプログラムは、ステ
ップ1を抜け、ステップ2において、ブレークポイント
によって一時停止する。このとき、ワークセンサの接続
されているデジタル入力の値は、IOウィンドウ608
(図9参照)にリアルタイムで表示されているため、キ
ャリアの有無に応じて、デジタルIOが正常に動作する
様子を確認することができ、一方、IOウィンドウと同
時に表示されているデバグウィンドウ702(図9参
照)において、デジタルIOに応じてプログラムが正し
く進行する様子をも、同時に確認することができる。
【0205】手順6では、ゲートB制御部を一行実行
し、ステップ2、ステップ3、ステップ6(排出フラグ
はオフとする。)まで進ませ、キャリア到達フラグをオ
ンさせる。
【0206】手順7では、ロボットコントロール部のス
テップ1部分(手順3によって一時停止している。)を
デバグウィンドウ702上に表示させ、一行実行させる
と、プログラムキャリア到着フラグを正しく処理し、ス
テップ2へと進むことが確認できる。もしこの部分に疑
いがあれば、変数モニタウィンドウ704にグローバル
変数であるキャリア到着フラグを表示させることによ
り、データが正しく受け渡されているか否かを確認する
ことができる。
【0207】手順8では、一行実行(ユーザタスク単独
デバグの説明で示した一行実行コマンドと同じ)によっ
て、ロボットコントロール部のステップ2を実行させ
る。ステップ2は、複数のソース行によって構成されて
おり、この一行一行を実行させるとロボット本体が次々
と姿勢を変化させ、ロボットハンドをキャリアチャック
ハンドに交換する。この部分の正当性は、デバグウィン
ドウ702(図9参照)において、ソース行の進展を観
察するとともに、状態ウィンドウ610(図8参照)に
おいてロボット本体の先端の座標を観察することにより
確認することができる(ロボット本体の先端の座標の表
示については前述した。)。
【0208】つまり、ここまでで、ロボットコントロー
ル部とゲートB制御部間の同期とデータ授受の確認、及
びワークセンサの動作とロボット本体の動作の確認が、
パーソナルコンピュータ36Aのみを操作することによ
り行われたわけである。
【0209】以下、ロボットコントロール部とビジョン
コントロール部の同期等についても同様に行うことがで
きることは明らかであるから、詳しい説明を省略する。
【0210】以上、マンマシンインターフェース手段3
6として、パーソナルコンピュータ36A(図2参照)
を採用して説明したが、ティーチペンダント36B(図
2参照)を採用しても、若干の機能が縮小されるにし
ろ、基本的に同じであることは言うまでもない。
【0211】このように本発明によれば、ロボットセル
のプログラムの作成、デバグを容易にし、立ち上げ期間
を大幅に短縮することができる。
【0212】
【発明の効果】以上説明したとおり、本発明によれば、
主制御装置とマンマシンインターフェース手段とロボッ
ト本体制御手段と周辺制御手段とが上記のように構成さ
れているので、ユーザプログラムとロボット本体と周辺
装置との種々の状態を表示手段に同時に表示することが
できる。また、入力手段よりロボット本体と周辺装置と
の各部の動作の実行や停止をさせることができ、さら
に、グローバル変数の変更やデジタルIOの変更等の仮
想状態を作成することもできる。そして、この監視と操
作とが一つのマンマシンインターフェース手段により行
なえるので、早期にデバグを完了することができ、素早
いシステムの立上げと良好な保守性を実現することがで
きる。
【図面の簡単な説明】
【図1】本発明に係るロボットセル用制御装置の構成図
である。
【図2】本実施例に係るロボットセル用制御装置のハー
ドウェア構成図である。
【図3】メインボードのハードウェア構成図である。
【図4】レジスタのアドレス表である。
【図5】ロボット制御ボードのハードウェア構成図であ
る。
【図6】ビジョンボードのハードウェア構成図である。
【図7】主制御装置のソフトウェアの階層構造を示す図
である。
【図8】表示画面の画面分割の1例である。
【図9】表示画面の画面分割の別例である。
【図10】パーソナルコンピュータの機能構成図であ
る。
【図11】マンマシン管理ブロックの機能構成図であ
る。
【図12】組立の対象部品を示す図である。
【図13】ロボットセルの構成図である。
【図14】ロボットコントロール部のフローチャートで
ある。
【図15】ロボットコントロール部のフローチャート
(続き)である。
【図16】ゲートB制御部のフローチャートである。
【図17】ビジョンコントロール部のフローチャートで
ある。
【図18】ゲートB制御部の単独デバグの手順である。
【図19】従来技術に係るロボットセルのシステム構成
図である。
【符号の説明】
24 主制御装置 24A メインボード 26 ロボット本体制御手段 26A ロボット制御ボード 28 周辺制御手段 28A ビジョンボード 28B デジタルIOボード 28C シリアル通信ボード 28D 拡張軸制御ボード 36 マンマシンインターフェース手段 36A パーソナルコンピュータ 36B ティーチペンダント 40 第1の通信手段 40A シリアル通信コントローラA 40B シリアル通信コントローラB 44 ロボット本体 108 第2の通信手段 108A VMEバスインターフェース 510 ユーザプログラム実行手段 510A ユーザアプリケーション層 512 ロボット管理手段 512A ロボット制御管理ブロック 514 周辺管理手段 514A ビジョン管理ブロック 514B デジタルIO管理ブロック 514C シリアルIO管理ブロック 514D 拡張軸管理ブロック 520 ユーザプログラム実行制御手段 520A ユーザプログラム実行制御ブロック 522 デバグ制御手段 522A デバグ制御ブロック 1002 表示手段 1002A CRTディスプレー装置 1002B 表示装置 1004 入力手段 1004A キーボード 1004B キー入力装置 1006 表示管理手段 1006A 表示管理ブロック 1008 入力管理手段 1008A 入力管理ブロック 1010 マンマシンインターフェース管理手段 1010A マンマシンインターフェース管理ブロッ
ク 1012 第3の通信手段 1012A シリアル通信コントローラ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 中川 康洋 埼玉県所沢市大字下富字武野840番地 シ チズン時計株式会社研究所内 (72)発明者 西方 進一 埼玉県所沢市大字下富字武野840番地 シ チズン時計株式会社研究所内

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 第1の通信手段(40)と、第2の通信
    手段(108)と、該第2の通信手段(108)と接続
    されるロボット管理手段(512)と、前記第2の通信
    手段(108)と接続される周辺管理手段(514)
    と、前記ロボット管理手段(512)ならびに前記周辺
    管理手段(514)と相互に情報を伝達するユーザプロ
    グラム実行手段(510)と、該ユーザプログラム実行
    手段(510)の実行の制御と該ユーザプログラム実行
    手段(510)の状態の入手とを行うユーザプログラム
    実行制御手段(520)と、前記ロボット管理手段(5
    12)ならびに前記周辺管理手段(514)よりロボッ
    ト・周辺機器の状態を受け必要な状態を前記第1の通信
    手段(40)に伝達し、前記ユーザプログラム実行制御
    手段(520)を経由して前記ユーザプログラム実行手
    段(510)の状態を受け必要な状態を前記第1の通信
    手段(40)に伝達し、前記第1の通信手段(40)よ
    り受けた命令を前記ロボット管理手段(512)または
    前記周辺管理手段(514)または前記ユーザプログラ
    ム実行制御手段(520)のいづれに伝達するかを判断
    して、該選択されたロボット管理手段(512)または
    周辺管理手段(514)または前記ユーザプログラム実
    行制御手段(520)のいづれかに前記命令を伝達する
    デバグ制御手段(522)とを有する主制御装置(2
    4)と、 前記第1の通信手段(40)と接続される第3の通信手
    段(1012)と、該第3の通信手段(1012)と接
    続されるマンマシンインターフェース管理手段(101
    0)と、該マンマシンインターフェース管理手段(10
    10)と接続される入力管理手段(1008)と、該入
    力管理手段(1008)と接続される入力手段(100
    4)と、前記マンマシンインターフェース管理手段(1
    010)と接続される表示管理手段(1006)と、該
    表示管理手段(1006)と接続される表示手段(10
    02)とを有するマンマシンインターフェース手段(3
    6)と、 前記第2の通信手段(108)と接続されるロボット本
    体制御手段(26)と、 前記第2の通信手段(108)と接続される周辺制御手
    段(28)とを有することを特徴とするロボットセル用
    制御装置。
  2. 【請求項2】 前記マンマシンインターフェース手段
    (36)は、前記表示手段(1002)に、前記ユーザ
    プログラム実行手段(510)の状態とロボットの状態
    と周辺機器の状態と前記入力手段(1004)より入力
    した内容との中より選択されたものを同時に表示するよ
    うにしたことを特徴とする請求項1記載のロボットセル
    用制御装置。
JP5087197A 1993-04-14 1993-04-14 ロボットセル用制御装置 Pending JPH06301412A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5087197A JPH06301412A (ja) 1993-04-14 1993-04-14 ロボットセル用制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5087197A JPH06301412A (ja) 1993-04-14 1993-04-14 ロボットセル用制御装置

Publications (1)

Publication Number Publication Date
JPH06301412A true JPH06301412A (ja) 1994-10-28

Family

ID=13908259

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5087197A Pending JPH06301412A (ja) 1993-04-14 1993-04-14 ロボットセル用制御装置

Country Status (1)

Country Link
JP (1) JPH06301412A (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011022133A (ja) * 2009-06-19 2011-02-03 Yaskawa Electric Corp 形状検出装置及びロボットシステム
WO2011074518A1 (ja) * 2009-12-17 2011-06-23 株式会社安川電機 制御システム
CN105128010A (zh) * 2015-08-07 2015-12-09 深圳市微秒控制技术有限公司 一种scara机器人分布式控制系统及其控制方法
JP2016078211A (ja) * 2014-10-22 2016-05-16 セイコーエプソン株式会社 ロボット
CN106514655A (zh) * 2016-11-24 2017-03-22 广州途道信息科技有限公司 一种便于用户实时监控机器人运行状态的机器人控制系统
CN106625659A (zh) * 2016-11-24 2017-05-10 广州途道信息科技有限公司 一种便于用户实时监控机器人运行状态的机器人控制方法
WO2021193905A1 (ja) * 2020-03-27 2021-09-30 川崎重工業株式会社 ロボットシステムの制御方法
WO2021251385A1 (ja) * 2020-06-08 2021-12-16 株式会社安川電機 生産システム、セルコントローラ、ロボットコントローラ及び制御方法
WO2022219735A1 (ja) * 2021-04-14 2022-10-20 株式会社Fuji ロボットコントロール装置
US11826913B2 (en) 2020-07-01 2023-11-28 Kabushiki Kaisha Yaskawa Denki Control system, robot system and control method

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011022133A (ja) * 2009-06-19 2011-02-03 Yaskawa Electric Corp 形状検出装置及びロボットシステム
WO2011074518A1 (ja) * 2009-12-17 2011-06-23 株式会社安川電機 制御システム
JP2016078211A (ja) * 2014-10-22 2016-05-16 セイコーエプソン株式会社 ロボット
CN105128010A (zh) * 2015-08-07 2015-12-09 深圳市微秒控制技术有限公司 一种scara机器人分布式控制系统及其控制方法
CN106514655A (zh) * 2016-11-24 2017-03-22 广州途道信息科技有限公司 一种便于用户实时监控机器人运行状态的机器人控制系统
CN106625659A (zh) * 2016-11-24 2017-05-10 广州途道信息科技有限公司 一种便于用户实时监控机器人运行状态的机器人控制方法
WO2021193905A1 (ja) * 2020-03-27 2021-09-30 川崎重工業株式会社 ロボットシステムの制御方法
WO2021251385A1 (ja) * 2020-06-08 2021-12-16 株式会社安川電機 生産システム、セルコントローラ、ロボットコントローラ及び制御方法
JP2021193543A (ja) * 2020-06-08 2021-12-23 株式会社安川電機 生産システム、セルコントローラ、ロボットコントローラ及び制御方法
US11826913B2 (en) 2020-07-01 2023-11-28 Kabushiki Kaisha Yaskawa Denki Control system, robot system and control method
WO2022219735A1 (ja) * 2021-04-14 2022-10-20 株式会社Fuji ロボットコントロール装置

Similar Documents

Publication Publication Date Title
US5715388A (en) Computer system for controlling an industrial robot subsystem which can monitor and detect abnormalities therein
JPH10309685A (ja) ロボット制御装置
JPH06301412A (ja) ロボットセル用制御装置
JP2005500597A (ja) 統合ロボット・セル
JP4846209B2 (ja) 工作機械シミュレータを有する数値制御装置
JP3269004B2 (ja) ロボット制御装置
EP0707251B1 (en) Control system
KR100335357B1 (ko) 다기능 고속 와이어링 하네스 결선 오류 검사 시스템 및그 검사방법
JPH07200019A (ja) ロボット制御装置
JP2004151976A (ja) シミュレーション装置
JPH0895624A (ja) アクチュエータコントローラ
US6330485B1 (en) High-speed multi-task system
Caccavale et al. RePLiCS: An environment for open real-time control of a dual-arm industrial robotic cell based on RTAI-Linux
JP3591919B2 (ja) 自動機の制御装置
JPH0938876A (ja) シミュレーション装置
US4514673A (en) Stepper motor controller
EP4254098A1 (en) Controlling an automation system comprising a plurality of machines
JPH04130503A (ja) ロボット制御装置
JPH07299792A (ja) 複腕ロボットシステムとその制御方法
JPH0887316A (ja) 制御装置
JPS61208103A (ja) ロボツトシステムの制御装置
JP2000024970A (ja) ロボットシミュレーション装置
JPH05336208A (ja) モニタ機能を有する入出力装置
JP2001150373A (ja) ロボットシミュレーション装置及びロボット制御装置
CN116430781A (zh) 基于可编程逻辑器件的开放式机器人控制系统的操作控制终端装置

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040531

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040706

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040719

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070806

Year of fee payment: 3

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100806

Year of fee payment: 6

FPAY Renewal fee payment (prs date is renewal date of database)

Year of fee payment: 6

Free format text: PAYMENT UNTIL: 20100806

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130806

Year of fee payment: 9