JP2018094696A - 制御装置、ロボット制御装置及びロボットシステム - Google Patents

制御装置、ロボット制御装置及びロボットシステム Download PDF

Info

Publication number
JP2018094696A
JP2018094696A JP2016244087A JP2016244087A JP2018094696A JP 2018094696 A JP2018094696 A JP 2018094696A JP 2016244087 A JP2016244087 A JP 2016244087A JP 2016244087 A JP2016244087 A JP 2016244087A JP 2018094696 A JP2018094696 A JP 2018094696A
Authority
JP
Japan
Prior art keywords
time
robot
control device
task
user
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
JP2016244087A
Other languages
English (en)
Inventor
和弘 増田
Kazuhiro Masuda
和弘 増田
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2016244087A priority Critical patent/JP2018094696A/ja
Publication of JP2018094696A publication Critical patent/JP2018094696A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

【課題】ユーザーにより作成されたタスクの実行時間に基づいて、異常処理を検出する。
【解決手段】制御装置は、ユーザーにより作成されたタスクを受け付ける受付部と、前記受付部が受け付けた前記タスクの実行時間に基づいて、異常処理を検出する検出部と、を備える。
【選択図】図3

Description

この発明は、制御装置、ロボット制御装置及びロボットシステムに関する。
従来、ユーザーがロボットを制御することを目的としたロボット制御言語に関する技術の研究や開発が行われている。
ここで、ロボットを制御するシステムは、ロボット制御言語によって記述されるマルチタスクシステムによって実現される場合がある。
これに関し、マルチタスクシステムのタスク動作異常検知方法であって、実行対象タスクに関して連続して実行される命令の数を計数する計数工程と、当該計数した命令数が予め定めた閾値を超えた場合に、実行対象タスクに動作異常が生じていると判断する工程と、動作異常が生じていると判断したタスクの動作を停止する停止制御工程とを備えるタスク動作異常検知方法が知られている(特許文献1参照)。
特開2008−204013号公報
しかしながら、このようなタスク動作異常検知方法では、タスクの動作に異常が生じているか否かを、各タスクに含まれる命令の実行ステップ数に基づいて検出するため、各命令の実行時間が一定ではない場合、タスク毎に異常を検出する条件が異なる場合があった。この結果、当該タスク動作異常検知方法では、所定の条件に基づいてタスクの動作に異常が生じているか否かを検知することが困難である場合があった。
上記課題の少なくとも一つを解決するために本発明の一態様は、ユーザーにより作成されたタスクを受け付ける受付部と、前記受付部が受け付けた前記タスクの実行時間に基づいて、異常処理を検出する検出部と、を備える制御装置である。
この構成により、制御装置では、ユーザーにより作成されたタスクの実行時間に基づいて、異常処理を検出する。これにより、制御装置は、所定の条件に基づいて異常処理を検出することができる。
また、本発明の他の態様は、制御装置において、前記検出部は、前記制御装置が行う処理の時間を計測する計測時間と、前記計測時間に対する前記実行時間の割合に基づいて、前記異常処理を検出する、構成が用いられてもよい。
この構成により、制御装置では、検出部は、制御装置が行う処理の時間を計測する計測時間と、計測時間に対する実行時間の割合に基づいて、異常処理を検出する。これにより、制御装置は、制御装置が行う処理の時間を計測する計測時間と、計測時間に対する実行時間の割合に関する所定の条件に基づいて異常処理を検出することができる。
また、本発明の他の態様は、制御装置において、前記計測時間とは、前記処理のうち、前記タスクが実行された後の時刻である第1時刻と、前記第1時刻とは異なる時刻であって、前記第1時刻より後の時刻である第2時刻との差である、構成が用いられていてもよい。
この構成により、制御装置では、計測時間とは、制御装置が行う処理のうち、ユーザーにより作成されたタスクが実行された後の時刻である第1時刻と、第1時刻とは異なる時刻であって、第1時刻より後の時刻である第2時刻との差である。これにより、制御装置は、第1時刻と、第2時刻との差に関する所定の条件に基づいて異常処理を検出することができる。
また、本発明の他の態様は、制御装置において、前記検出部は、前記割合が所定割合以上である、又は前記実行時間が所定時間以上である場合、前記タスクを前記異常処理として検出する、構成が用いられていてもよい。
この構成により、制御装置では、検出部は、計測時間に対する実行時間の割合が所定割合以上である、又は実行時間が所定時間以上である場合、ユーザーにより作成されたタスクを異常処理として検出する。これにより、制御装置は、割合が所定割合以上であること、又は実行時間が所定時間以上であることを所定の条件として異常処理を検出することができる。
また、本発明の他の態様は、制御装置において、前記検出部は、前記割合が所定割合以上であって、かつ前記実行時間が所定時間以上である場合、前記タスクを前記異常処理として検出する、構成が用いられていてもよい。
この構成により、制御装置では、検出部は、計測時間に対する実行時間の割合が所定割合以上であって、かつ実行時間が所定時間以上である場合、ユーザーにより作成されたタスクを異常処理として検出する。これにより、制御装置は、割合が所定割合以上であって、かつ実行時間が所定時間以上であることを所定の条件として異常処理を検出することができる。
また、本発明の他の態様は、制御装置において、前記タスクは、前記検出部によって前記異常処理として検出された場合、中断される、構成が用いられていてもよい。
この構成により、制御装置では、ユーザーにより作成されたタスクは、検出部によって異常処理として検出された場合、中断される。これにより、制御装置は、異常処理が検出されたことに応じて、ユーザーにより作成されたタスクを中断することができる。
また、本発明の他の態様は、制御装置において、前記タスクは、前記検出部によって前記異常処理として検出された場合、終了される、構成が用いられていてもよい。
この構成により、制御装置では、ユーザーにより作成されたタスクは、検出部によって異常処理として検出された場合、終了される。これにより、制御装置は、異常処理が検出されたことに応じて、ユーザーにより作成されたタスクを終了することができる。
また、本発明の他の態様は、上述に記載の制御装置を備え、当該制御装置は、ロボットを制御するロボット制御部を備える、ロボット制御装置である。
この構成により、ロボット制御装置では、ユーザーにより作成されたタスクの実行時間に基づいて、異常処理を検出する。これにより、ロボット制御装置は、異常処理によってロボットが停止してしまうことを抑制することができる。
また、本発明の他の態様は、上述に記載のロボット制御装置と、前記ロボットと、を備えるロボットシステムである。
この構成により、ロボットシステムでは、ユーザーにより作成されたタスクの実行時間に基づいて、異常処理を検出する。これにより、ロボットシステムは、所定の条件に基づいて異常処理を検出することができる。
以上により、制御装置及びロボットシステムは、ユーザーにより作成されたタスクの実行時間に基づいて、異常処理を検出する。これにより、制御装置及びロボットシステムは、所定の条件に基づいて異常処理を検出することができる。
また、ロボット制御装置は、ユーザーにより作成されたタスクの実行時間に基づいて、異常処理を検出する。これにより、ロボット制御装置は、異常処理によってロボットが停止してしまうことを抑制することができる。
実施形態に係るロボットの構成の一例を示す図である。 実施形態に係るロボット制御装置のハードウェア構成の一例を示す図である。 実施形態に係るロボット制御装置の機能構成の一例を示す図である。 実施形態に係るロボット制御装置の異常処理の検出処理の流れの一例を示すフローチャートである。 変形例に係るロボット制御装置の異常処理の検出処理の流れの一例を示すフローチャートである。
<実施形態>
以下、本発明の実施形態について、図面を参照して説明する。
<ロボットの構成>
まず、ロボット1の構成について説明する。
図1は、実施形態に係るロボット1の構成の一例を示す図である。ロボット1は、支持台Bと、支持台Bにより支持された可動部Aを備えるスカラロボット(水平多関節ロボット)である。なお、ロボット1は、スカラロボットに代えて、垂直多関節ロボットや直角座標ロボット等の他のロボットであってもよい。なお、当該垂直多関節ロボットは、1つの腕を備える単腕ロボットであってもよく、2つの腕を備える双腕ロボット(2つの腕を備える複腕ロボット)であってもよく、3つ以上の腕を備える複腕ロボットであってもよい。また、当該直角座標ロボットは、例えば、ガントリロボットである。
支持台Bは、2つの部位から構成されている。当該部位のうちの一方が基台B1であり、他方が第1筐体B2である。なお、支持台Bは、基台B1のみによって構成されてもよい。
基台B1は、床面や壁面等の設置面に設置される。基台B1は、外形として、ほぼ直方体(又は、立方体でもよい)の形状を有しており、板状の面から構成されていて、中空となっている。基台B1の上面の一部である第1上面M1には、第1筐体B2が固定されている。そして、基台B1の内側の空間は、第1筐体B2の内側の空間と繋がっている。基台B1の上面は、基台B1が有する面のうち設置面と反対側の面である。また、基台B1の上面のうち第1上面M1以外の部分である第2上面M2と設置面との間の距離は、第1上面M1と設置面との間の距離と比べて短い。このため、第2上面M2と第1筐体B2との間には、間隙が存在する。また、第2上面M2には、可動部Aが設けられている。すなわち、基台B1は、可動部Aを支持している。なお、基台B1の形状は、このような形状に代えて、可動部Aを支持可能であり、且つ、基台B1の上面の一部に第1筐体B2が固定可能な形状であれば他の形状であってもよい。
第1筐体B2は、外形として、直方体(又は、立方体でもよい)を構成する互いに対向する2つの面に対して垂直な方向に、これら2つの面のそれぞれにおける1個の頂点を含む三角形の部分が除かれるように切り落とした形状を有している。ここで、当該部分を切り落とした形状は、必ずしも当該部分を切り落とす加工によって構成されなくてもよく、例えば、初めから同様な形状を形成する加工によって構成されてもよい。第1筐体B2は、外形としてこのような多面体の形状を有しており、板状の面から構成されていて、中空となっている。なお、第1筐体B2の形状は、このような形状に代えて、基台B1の上面の一部に第1筐体B2が固定可能な形状であれば他の形状であってもよい。
可動部Aは、基台B1によって第1軸AX1周りに回動可能に支持された第1アームA1と、第1アームA1によって第2軸AX2周りに回動可能に支持された第2アームA2と、第2アームA2によって第3軸AX3周りに回動可能且つ第3軸AX3の軸方向に並進可能に支持されたシャフトSTを備える。
シャフトSTは、円柱形状の軸体である。シャフトSTの周表面には、図示しないボールねじ溝と、図示しないスプライン溝とがそれぞれ形成されている。シャフトSTは、この一例において、第2アームA2の端部のうちの第1アームA1と反対側の端部を、支持台Bが設置された設置面に対して垂直な方向である第1方向に貫通し、設けられる。また、シャフトSTの端部のうちの当該設置面側の端部は、エンドエフェクターを取り付け可能である。当該エンドエフェクターは、物体を把持可能なエンドエフェクターであってもよく、空気や磁気等によって物体を吸着可能なエンドエフェクターであってもよく、他のエンドエフェクターであってもよい。
第1アームA1は、この一例において、第1軸AX1周りに回動するので、第2方向に移動する。第2方向は、前述の第1方向に直交する方向である。第2方向は、例えば、ワールド座標系やロボット座標系RCにおけるXY平面に沿った方向である。第1アームA1は、支持台Bが備える第1モーター41によって第1軸AX1周りに回動させられる。すなわち、第1軸AX1は、第1モーター41の回動軸と一致する軸である。なお、図1において、第1モーター41は、図を簡略化するため、省略している。
第2アームA2は、この一例において、第2軸AX2周りに回動するので、第2方向に移動する。第2アームA2は、第2アームA2が備える第2モーター42によって第2軸AX2周りに回動させられる。すなわち、第2軸AX2は、第2モーター42の回動軸と一致する軸である。なお、図1において、第2モーター42は、図を簡略化するため、省略している。
また、第2アームA2は、第3モーター43及び第4モーター44を備え、シャフトSTを支持する。第3モーター43は、シャフトSTのボールねじ溝の外周部に設けられたボールねじナットをタイミングベルト等で回動させることにより、シャフトSTを第1方向に移動(昇降)させる。第4モーター44は、シャフトSTのスプライン溝の外周部に設けられたボールスプラインナットをタイミングベルト等で回動させることにより、シャフトSTを第3軸AX3周りに回動させる。なお、図1において、第3モーター43及び第4モーター44は、図を簡略化するため、省略している。
以下では、一例として、第1モーター41〜第4モーター44のそれぞれが、すべて同じ構成を有している場合について説明する。また、以下では、説明の便宜上、第1モーター41〜第4モーター44のそれぞれを区別する必要がない限り、モーター4と称して説明する。なお、モーター4のうちの一部又は全部は、互いに異なる構成を有するモーターであってもよい。
モーター4は、ロボット制御装置30によってその動作が制御される。
ロボット1は、ロボット制御装置30の一部を基台B1の内側の空間に内蔵し、ロボット制御装置30の残りの一部を第1筐体B2の内側の空間に内蔵する。これにより、ロボット1は、ロボット制御装置30が基台B1及び第1筐体B2の外部に設けられている場合と比較して、ロボット1が設置されている範囲の専有面積を小さくすることができる。なお、ロボット1は、ロボット制御装置30の全部を基台B1と第1筐体B2とのうちいずれか一方の内側に内蔵する構成であってもよい。この場合、ロボット1は、ロボット制御装置30が基台B1又は第1筐体B2の外部に設けられている場合と比較して、ロボット1が設置されている範囲の専有面積を小さくすることができる。また、ロボット1は、ロボット制御装置30を内蔵する構成に代えて、ロボット1と別体のロボット制御装置30が外付けされる構成であってもよい。なお、ロボット1と、ロボット制御装置30とが別体に構成される場合、ロボット1と、ロボット制御装置30とは、ロボットシステムを構成する。換言すると、当該ロボットシステムは、ロボット1と、ロボット制御装置30とを備える。
<ロボットの動作の制御>
上述したように、ロボット1は、ロボット制御装置30によってその動作が制御される。具体的には、ロボット1の動作は、ユーザーによって指示される。ユーザーとは、ロボット1やロボット制御装置30の使用者である。より具体的には、ユーザーは、ロボット1の動作の指示を示すプログラムを設計し、ロボット制御装置30が当該プログラムの処理を実行することによって、ロボット1がユーザーの指示通りに動作する。
ここで、ロボット1を制御するプログラムは、マルチタスクシステムによって実現される場合がある。マルチタスクシステムは、ロボット制御言語によって記述される複数のタスクによって構成される。マルチタスクシステム及びマルチタスクシステムに含まれるタスクは、ユーザーが独自に設計することが可能である。以降の説明において、マルチタスクシステムに含まれる複数のタスクのうち、ユーザーが設計したタスクをユーザータスクTKと記載する。
ユーザーは、マルチタスクシステムに含まれる複数のタスクのうち、ユーザータスクTKが優先的に処理されるようにマルチタスクシステムを構成する場合がある。また、マルチタスクシステムは、ロボット1の制御を行う性質上、リアルタイム性が求められる場合がある。ここで、リアルタイム性とは、ロボット制御装置30がロボット1の制御を指示してから、当該指示に応じたロボット1の制御が完了されるまでの時間が、予め定められた時間内において行われる性質を示す。したがって、ユーザータスクTKは、リアルタイム性を損なわないように予め定められた時間間隔において処理を完了するように設計されることが好ましい。換言すると、ユーザータスクTKが、リアルタイム性を損なうような処理を行う場合、当該ユーザータスクTKによって行われる処理は異常処理APrgとして検出されることが好ましい。ここで、異常処理APrgは、ユーザータスクTKが行う処理のうち、予め定められた時間を超えて実行される処理である。
本発明のロボット制御装置30は、ロボット1を制御するマルチタスクシステムにおいて、ユーザータスクTKが異常処理APrgであるか否かを検出する。
<ロボット制御装置のハードウェア構成>
以下、図2を参照し、ロボット制御装置30のハードウェア構成について説明する。図2は、ロボット制御装置30のハードウェア構成の一例を示す図である。
ロボット制御装置30は、例えば、CPU(Central Processing Unit)31と、記憶部32と、入力受付部33と、通信部34と、表示部35を備える。これらの構成要素は、バスBus1を介して相互に通信可能に接続されている。また、ロボット制御装置30は、通信部34を介してロボット1と通信を行う。
CPU31は、記憶部32に格納された各種プログラムを実行する。
記憶部32は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)、EEPROM(Electrically Erasable Programmable Read−Only Memory)、ROM(Read−Only Memory)、RAM(Random Access Memory)等を含む。なお、記憶部32は、ロボット制御装置30に内蔵されるものに代えて、USB等のデジタル入出力ポート等によって接続された外付け型の記憶装置であってもよい。記憶部32は、ロボット制御装置30が処理する各種情報、ロボット1を動作させる動作プログラムを含む各種プログラム、各種の画像等を格納する。
入力受付部33は、例えば、キーボードやマウス、タッチパッド、その他の入力装置である。なお、入力受付部33は、これらに代えて、表示部35と一体に構成されたタッチパネルであってもよい。
通信部34は、例えば、USB等のデジタル入出力ポートやイーサネット(登録商標)ポート等を含んで構成される。
表示部35は、例えば、液晶ディスプレイパネル、あるいは、有機EL(ElectroLuminescence)ディスプレイパネルである。
<ロボット制御装置の機能構成>
以下、図3を参照し、ロボット制御装置30の機能構成について説明する。図3は、実施形態に係るロボット制御装置30の機能構成の一例を示す図である。
ロボット制御装置30は、記憶部32と、通信部34と、制御部36とを備える。
制御部36は、ロボット制御装置30の全体を制御する。制御部36は、受付部361と、第1計時部363と、第2計時部365と、検出部367と、処理部369と、ロボット制御部371を備える。制御部36が備えるこれらの機能部は、例えば、CPU31が、記憶部32に記憶された各種プログラムを実行することにより実現される。また、当該機能部のうちの一部又は全部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)等のハードウェア機能部であってもよい。
受付部361は、異常処理APrgを検出する検出対象のユーザータスクTKの処理の開始を受け付ける。マルチタスクシステムは、例えば、記憶部32に予め記憶されており、CPU31によって実行される。なお、マルチタスクシステムは、記憶部32に予め記憶される構成に代えて、通信部34を介して他の装置から受信する構成であってもよい。この場合、CPU31は、通信部34が受信したマルチタスクシステムを実行する。受付部361は、CPU31によって実行されるマルチタスクシステムのうち、異常処理APrgを検出する検出対象のユーザータスクTKの処理が開始されたことを受け付ける。
第1計時部363は、受付部361が開始を受け付けたユーザータスクTKにおいて行われる処理に要する時間を計時する。上述したように、タスク及びユーザータスクTKは、ロボット制御言語によって記述される。ロボット制御言語には、タスク及びユーザータスクTK内において処理を行うコマンドと、他のタスク及び他のユーザータスクTKに処理を行わせるコマンドとが存在する。第1計時部363は、検出対象のユーザータスクTK内において処理を行うコマンドが、当該処理に要する時間である実行時間tを計時する。
第2計時部365は、受付部361が開始を受付けたユーザータスクTKの計測時間sを計時する。計測時間sとは、ユーザータスクTKの処理が開始されてから終了するまでに要する時間である。
検出部367は、第1計時部363が計時する実行時間tと、第2計時部365が計時する計測時間sとに基づいて、ユーザータスクTKによって行われる異常処理APrgを検出する。
具体的には、検出部367は、実行時間tが所定時間以上である場合であって、かつ実行率が所定割合以上である場合にユーザータスクTKによって行われる処理を異常処理APrgとして検出する。実行率とは、計測時間sに対する実行時間tの割合のことである。所定時間は、例えば、1msecである。また、所定割合とは、30%である。なお、所定時間は、リアルタイム性を損なわないようにタスクが実行可能な時間であれば、他の時間であってもよい。また、所定割合は、リアルタイム性を損なわないようにタスクが実行可能な割合であれば、他の割合であってもよい。
また、所定時間及び所定割合は、異常処理APrgを検出する検出対象のユーザータスクTK毎に異なる値であってもよい。また、所定時間及び所定割合は、ユーザーによって設定される値であってもよい。
処理部369は、検出部367の検出結果DRを示す情報を検出部367から取得する。検出結果DRは、ユーザータスクTKの処理が異常処理APrgとして検出されたか否かを示す。
処理部369は、ユーザータスクTKの処理が異常処理APrgとして検出されたことを検出結果DRが示す場合、当該ユーザータスクTKの処理を一時中断する。具体的には、処理部369は、ユーザータスクTKの処理が異常処理APrgとして検出されたことを検出結果DRが示す場合、異常処理APrgが検出されたユーザータスクTKの処理を一時中断するようにCPU31に指示する。CPU31は、当該処理が一時中断されている間にマルチタスクシステムに含まれる他のタスク又は他のユーザータスクTKの処理を行う。ここで、ユーザータスクTKの処理が一時中断される時間とは、例えば、500μsecである。なお、ユーザータスクTKの処理が一時中断される時間は、マルチタスクシステムがリアルタイム性を損なわないように動作することが可能であれば、500μsecに代えて、他の時間であってもよい。また、処理部369は、実行率に基づいて、マルチタスクシステムがリアルタイム性を損なわないように動作するための一時中断時間を算出してもよい。この場合、処理部369は、当該算出した一時中断時間の間、ユーザータスクTKの処理を中断する。
ロボット制御部371は、実行されたユーザータスクTKの処理に応じてロボット1を動作させる。
<ロボット制御装置の異常処理検出処理>
以下、図4を参照し、ロボット制御装置30の異常処理APrgの検出処理について説明する。図4は、実施形態に係るロボット制御装置30の異常処理APrgの検出処理の流れの一例を示すフローチャートである。
受付部361は、異常処理APrgを検出する検出対象のユーザータスクTKの開始を受け付ける(ステップS10)。次に、第2計時部365は、受付部361がユーザータスクTKの開始を受け付けたことに応じて、当該開始を受け付けた時刻を第1計測時間s1として計時する(ステップS15)。第1計測時間s1は、第2計時部365が計測時間sを算出する際に使用する変数のことである。
次に、第1計時部363は、ユーザータスクTK内において処理を行うコマンドが実行された場合(ステップS20−YES)、当該コマンドが実行された時刻を第1実行時間t1として計時する(ステップS25)。第1実行時間t1は、第1計時部363が実行時間tを算出する際に使用する変数である。なお、第1計時部363は、ユーザータスクTK内において処理を行うコマンドが実行されるまでの間(ステップS20−NO)、待機する。次に、第1計時部363は、ユーザータスクTK内において処理を行うコマンドが実行された後、当該コマンドが中断又は終了された場合(ステップS30−YES)、当該コマンドが中断又は終了された時刻を第2実行時間t2として計時する(ステップS35)。第2実行時間t2は、第1計時部363が実行時間tを算出する際に使用する変数のことであって、第1実行時間t1よりも後の時刻を示す変数である。なお、第1計時部363は、当該コマンドが中断又は終了されるまでの間(ステップS30−NO)、待機する。
次に、第2計時部365は、第1計時部363が第2実行時間t2を計時したことに応じて、第2計測時間s2を計時する(ステップS40)。第2計測時間s2は、第2計時部365が計測時間sを算出する際に使用する変数のことであって、第1計測時間s1よりも後の時刻を示す変数である。ここで、ステップS35と、ステップS40とは、処理が並列又は逆の順序で行われてもよい。
次に、第1計時部363は、計時した第1実行時間t1及び第2実行時間t2に基づいて、実行時間tを算出する(ステップS45)。具体的には、第1計時部363は、第2実行時間t2から第1実行時間t1を差し引いた時間を実行時間tとして算出する。次に、第2計時部365は、計時した第1計測時間s1及び第2計測時間s2に基づいて、計測時間sを算出する(ステップS50)。具体的には、第2計時部365は、第2計測時間s2から第1計測時間s1を差し引いた時間を計測時間sとして算出する。ここで、ステップS45と、ステップS50とは、処理が並列又は逆の順序で行われてもよい。
次に、検出部367は、第1計時部363が算出する実行時間tと、第2計時部365が算出する計測時間sとに基づいて、前述の実行率を算出する(ステップS55)。次に、検出部367は、実行時間tと、実行率とに基づいて、異常処理APrgを検出する(ステップS60)。そして、検出部367は、ユーザータスクTKの処理を異常処理APrgとして検出した否かを示す検出結果DRを処理部369に供給する。
次に、処理部369は、検出部367から取得した検出結果DRがユーザータスクTKの処理を異常処理APrgとして検出したことを示す場合(ステップS60−YES)、ユーザータスクTKの処理を一時中断する(ステップS65)。一方、ロボット制御装置30は、検出結果DRがユーザータスクTKの処理を異常処理APrgとして検出していないことを示す場合(ステップS60−NO)、ステップS20からステップS60までの処理を繰り返す。
なお、上述では、第1計測時間s1がユーザータスクTKの開始を受け付けた時刻である場合について説明したが、これに限られない。第1計測時間s1は、例えば、マルチタスクシステムが開始された時刻を第1計測時間s1として計時してもよい。この場合、所定時間とは、ユーザータスクTK以外のマルチタスクシステムの処理が行われる時間を含む時間であることが好ましい。
また、上述では、検出部367は、実行率が所定割合以上であって、かつ実行時間tが所定時間以上である場合に、ユーザータスクTKの処理を異常処理APrgとして検出する場合について説明したがこれに限られない。検出部367は、実行率が所定割合以上である、又は実行時間tが所定時間以上である場合に、ユーザータスクTKの処理を異常処理APrgとして検出してもよい。
また、上述では、処理部369が、検出結果DRがユーザータスクTKの処理が異常処理APrgであることを示す場合、当該ユーザータスクTKの処理を一時中断する場合について説明したが、これに限られない。処理部369は、検出結果DRがユーザータスクTKの処理が異常処理APrgであることを示す場合、当該ユーザータスクTKの処理を終了してもよく、当該ユーザータスクTKを含むマルチタスクシステムの処理を終了してもよく、他の処理を行ってもよい。また、検出結果DRがユーザータスクTKの処理が異常処理APrgであることを示す場合、処理部369がユーザータスクTKを終了させる処理を行うか一時中断させる処理を行うかは、ユーザーによって選択されてもよい。
<変形例:ロボット制御装置の異常処理検出処理の他の例>
以下、図5を参照し、変形例に係るロボット制御装置30の異常処理APrgの検出処理について説明する。図5は、変形例に係るロボット制御装置30の異常処理APrgの検出処理の流れの一例を示すフローチャートである。
上述の実施形態では、第1実行時間t1と第2実行時間t2との差に基づいて、実行時間tを算出する場合について説明した。変形例では、ユーザータスクTK内において処理を行うコマンドが実行された場合、当該処理に要する時間をカウントし、第3実行時間t3として計時する場合について説明する。
なお、上述した実施形態と同様の構成については、同一の符号を付して説明を省略する。
受付部361は、異常処理APrgを検出する検出対象のユーザータスクTKの開始を受け付ける(ステップS100)。
次に、第1計時部363は、受付部361がユーザータスクTKの開始を受け付けたことに応じて、第3実行時間t3の値を初期値に設定する(ステップS110)。第3実行時間t3とは、第1計時部363が実行時間tを算出する際に使用する変数のことである。次に、第2計時部365は、受付部361がユーザータスクTKの開始を受け付けたことに応じて、当該開始を受け付けた時刻を第1計測時間s1として計時する(ステップS120)。
次に、第1計時部363は、ユーザータスクTK内において処理を行うコマンドが実行された場合、当該処理に要する時間をカウントし、カウントした当該時間を第3実行時間t3に加算する。以降の説明において、第1計時部363が処理に要する時間をカウントし、第3実行時間t3に加算することを、第1計時部363が第3実行時間t3を計時すると記載する。つまり、第1計時部363は、ユーザータスクTK内において処理を行うコマンドが実行された場合(ステップS130−YES)、当該処理に要する時間をカウントし、第3実行時間t3として計時する(ステップS140)。なお、第1計時部363は、ユーザータスクTK内において処理を行うコマンドが実行されるまでの間(ステップS130−NO)、待機する。
次に、第2計時部365は、第1計時部363が第3実行時間t3を計時することに応じて、当該第3実行時間t3を計時した時刻を第2計測時間s2として計時する(ステップS150)。ここで、ステップS140と、ステップS150とは、処理が並列又は逆の順序で行われてもよい。
次に、第1計時部363は、第3実行時間t3の値を実行時間tとして算出する(ステップS155)。次に、第2計時部365は、第1計測時間s1及び第2計測時間s2に基づいて、計測時間sを算出する(ステップS160)。ここで、ステップS155と、ステップS160とは、処理が並列又は逆の順序で行われてもよい。
次に、検出部367は、第1計時部363が算出する実行時間tと、第2計時部365が算出する計測時間sとに基づいて、実行率を算出する(ステップS170)。次に、検出部367は、実行時間tと、実行率とに基づいて、異常処理APrgを検出する(ステップS180)。そして、検出部367は、ユーザータスクTKの処理を異常処理APrgとして検出したか否かを示す検出結果DRを処理部369に供給する。
次に、処理部369は、検出部367から取得した検出結果DRがユーザータスクTKの処理が異常処理APrgであることを示す場合(ステップS180−YES)、ユーザータスクTKの処理を一時中断する(ステップS190)。次に、ロボット制御装置30は、検出結果DRがユーザータスクTKの処理が異常処理APrgではないことを示す場合(ステップS180−NO)、ステップS130からステップS180までの処理を繰り返す。
なお、上述では、ロボット制御装置30がロボット1を制御するマルチタスクシステムにおいて、ユーザータスクTKが異常処理APrgであるか否かを検出する場合について説明したが、これに限られない。例えば、ロボット制御装置30は、ロボット1以外の他の装置を制御するマルチタスクシステムにおいて、ユーザータスクTKが異常処理APrgであるか否かを検出してもよい。以降の説明において、ロボット1以外の他の装置を制御するロボット制御装置30を単に制御装置と記載する。制御装置とは、マルチタスクシステムによって制御され、かつマルチタスクシステムに含まれるタスクのうち、少なくとも一部のタスクがユーザータスクTKである装置である。制御装置は、例えば、ロジスティックアナライザー、券売機、医療機器、工作機械及び画像処理装置等である。なお、制御装置は、ロボット制御部371に代えて、制御装置が制御する制御対象を制御する制御部を備える。
以上のように、制御装置(本実施形態の一例では、ロボット制御装置30)では、ユーザーにより作成されたタスク(本実施形態の一例では、ユーザータスクTK)の実行時間(本実施形態の一例では、実行時間t)に基づいて、異常処理(本実施形態の一例では、異常処理APrg)を検出する。これにより、制御装置は、所定の条件に基づいて異常処理を検出することができる。
また、制御装置では、検出部(本実施形態の一例では、検出部367)は、制御装置が行う処理の時間を計測する計測時間(本実施形態の一例では、計測時間s)と、計測時間に対する実行時間の割合(本実施形態の一例では、実行率)に基づいて、異常処理を検出する。これにより、制御装置は、制御装置が行う処理の時間を計測する計測時間と、計測時間に対する実行時間の割合に関する所定の条件に基づいて異常処理を検出することができる。
また、制御装置では、計測時間とは、制御装置が行う処理のうち、ユーザーにより作成されたタスクが実行された後の時刻である第1時刻(本実施形態の一例では、第1計測時間s1)と、第1時刻とは異なる時刻であって、第1時刻より後の時刻である第2時刻(本実施形態の一例では、第2計測時間s2)との差である。これにより、制御装置は、第1時刻と、第2時刻との差に関する所定の条件に基づいて異常処理を検出することができる。
また、制御装置では、検出部は、計測時間に対する実行時間の割合が所定割合以上である、又は実行時間が所定時間以上である場合、ユーザーにより作成されたタスクを異常処理として検出する。これにより、制御装置は、割合が所定割合以上であること、又は実行時間が所定時間以上であることを所定の条件として異常処理を検出することができる。
また、制御装置では、検出部は、計測時間に対する実行時間の割合が所定割合以上であって、かつ実行時間が所定時間以上である場合、ユーザーにより作成されたタスクを異常処理として検出する。これにより、制御装置は、割合が所定割合以上であって、かつ実行時間が所定時間以上であることを所定の条件として異常処理を検出することができる。
また、制御装置では、ユーザーにより作成されたタスクは、検出部によって異常処理として検出された場合、中断される。これにより、制御装置は、異常処理が検出されたことに応じて、ユーザーにより作成されたタスクを中断することができる。
また、制御装置では、ユーザーにより作成されたタスクは、検出部によって異常処理として検出された場合、終了される。これにより、制御装置は、異常処理が検出されたことに応じて、ユーザーにより作成されたタスクを終了することができる。
また、制御御装置を備え、ロボットを制御するロボット制御部(本実施形態の一例では、ロボット制御部371)を備えるロボット制御装置(本実施形態の一例では、ロボット制御装置30)では、ユーザーにより作成されたタスクの実行時間に基づいて、異常処理を検出する。これにより、ロボット制御装置は、異常処理によってロボットが停止してしまうことを抑制することができる。
また、ロボットと、ロボット制御装置とを備えるロボットシステムでは、ユーザーにより作成されたタスクの実行時間に基づいて、異常処理を検出する。これにより、ロボットシステムは、所定の条件に基づいて異常処理を検出することができる。
以上、この発明の実施形態を、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない限り、変更、置換、削除等されてもよい。
また、以上に説明した装置(例えば、ロボット制御装置30)における任意の構成部の機能を実現するためのプログラムを、コンピューター読み取り可能な記録媒体に記録し、そのプログラムをコンピューターシステムに読み込ませて実行するようにしてもよい。なお、ここでいう「コンピューターシステム」とは、OS(Operating System)や周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD(Compact Disk)−ROM等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリー(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピューターシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピューターシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
1…ロボット、30…ロボット制御装置、TK…ユーザータスク、36…制御部、361…受付部、363…第1計時部、365…第2計時部、367…検出部、369…処理部、APrg…異常処理、DR…検出結果、s…計測時間、s1…第1計測時間、s2…第2計測時間、t…実行時間、t1…第1実行時間、t2…第2実行時間、t3…第3実行時間

Claims (9)

  1. ユーザーにより作成されたタスクを受け付ける受付部と、
    前記受付部が受け付けた前記タスクの実行時間に基づいて、異常処理を検出する検出部と、
    を備える制御装置。
  2. 前記検出部は、
    前記制御装置が行う処理の時間を計測する計測時間と、前記計測時間に対する前記実行時間の割合に基づいて、前記異常処理を検出する
    請求項1に記載の制御装置。
  3. 前記計測時間とは、
    前記処理のうち、前記タスクが実行された後の時刻である第1時刻と、前記第1時刻とは異なる時刻であって、前記第1時刻より後の時刻である第2時刻との差である
    請求項2に記載の制御装置。
  4. 前記検出部は、
    前記割合が所定割合以上である、又は前記実行時間が所定時間以上である場合、前記タスクを前記異常処理として検出する
    請求項2又は請求項3に記載の制御装置。
  5. 前記検出部は、
    前記割合が所定割合以上であって、かつ前記実行時間が所定時間以上である場合、前記タスクを前記異常処理として検出する
    請求項2から請求項4のいずれか一項に記載の制御装置。
  6. 前記タスクは、
    前記検出部によって前記異常処理として検出された場合、中断される
    請求項1から請求項5のいずれか一項に記載の制御装置。
  7. 前記タスクは、
    前記検出部によって前記異常処理として検出された場合、終了される
    請求項1から請求項6のいずれか一項に記載の制御装置。
  8. 請求項1から7のうちいずれか一項に記載の制御装置を備え、
    当該制御装置は、ロボットを制御するロボット制御部を備える、
    ロボット制御装置。
  9. 請求項8に記載のロボット制御装置と、
    前記ロボットと、
    を備えるロボットシステム。
JP2016244087A 2016-12-16 2016-12-16 制御装置、ロボット制御装置及びロボットシステム Pending JP2018094696A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016244087A JP2018094696A (ja) 2016-12-16 2016-12-16 制御装置、ロボット制御装置及びロボットシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016244087A JP2018094696A (ja) 2016-12-16 2016-12-16 制御装置、ロボット制御装置及びロボットシステム

Publications (1)

Publication Number Publication Date
JP2018094696A true JP2018094696A (ja) 2018-06-21

Family

ID=62631471

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016244087A Pending JP2018094696A (ja) 2016-12-16 2016-12-16 制御装置、ロボット制御装置及びロボットシステム

Country Status (1)

Country Link
JP (1) JP2018094696A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022102704A1 (en) * 2020-11-11 2022-05-19 Omron Corporation Reconfigurable controller base for robotic arm

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022102704A1 (en) * 2020-11-11 2022-05-19 Omron Corporation Reconfigurable controller base for robotic arm

Similar Documents

Publication Publication Date Title
CN109968377B (zh) 机器人控制系统和控制机器人的方法
EP3476550B1 (en) Robot system, robot controller, and method for withdrawing robot
US20160114483A1 (en) Robot control method, robot apparatus, program, recording medium, and manufacturing method of assembly part
US10800032B2 (en) Industrial robot, controller, and method thereof
JP6288104B2 (ja) トレースデータ収集システム、操作端末、及びトレースデータ収集方法
JP2013144325A (ja) ロボット装置、故障検出方法
US11389958B2 (en) Robot system, robot, and control method
JP6547260B2 (ja) 画像処理装置、及びロボットシステム
JP2018094696A (ja) 制御装置、ロボット制御装置及びロボットシステム
JP6341022B2 (ja) コントローラー、情報処理装置、及びロボットシステム
JP2015186834A (ja) ロボット制御装置、把持部制御装置、ロボット、把持部、ロボット制御方法、及びプログラム
CN108724180A (zh) 机器人系统
JP2017196714A (ja) ロボット用装置、ロボット制御装置、及びロボットシステム
US10792808B2 (en) Robot and robot system
WO2024142342A1 (ja) データ収集装置、データ収集方法、データ収集プログラム、切削工具、およびデータ収集システム
JP2017159428A (ja) 制御装置、ロボット、及びロボットシステム
JP6958091B2 (ja) ロボットシステム、及びロボット制御方法
JP2015226967A (ja) ロボット、ロボットシステム、制御装置、及び制御方法
JP2020001125A (ja) スカラロボット
JP2019141966A (ja) ロボット制御装置、ロボット、及びロボットシステム
JP2007011646A (ja) サーボモータ制御システムにおけるドライバ動作確認装置
JP2009264839A (ja) 形状測定装置
JP2016162265A (ja) 補正値入力装置
JP7460744B1 (ja) ロボット制御装置、ロボット、かき混ぜ方法及びプログラム
JP7001439B2 (ja) 監視方法

Legal Events

Date Code Title Description
RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20180910