JP2022131424A - Robot control device - Google Patents

Robot control device Download PDF

Info

Publication number
JP2022131424A
JP2022131424A JP2021030367A JP2021030367A JP2022131424A JP 2022131424 A JP2022131424 A JP 2022131424A JP 2021030367 A JP2021030367 A JP 2021030367A JP 2021030367 A JP2021030367 A JP 2021030367A JP 2022131424 A JP2022131424 A JP 2022131424A
Authority
JP
Japan
Prior art keywords
robot
processing unit
predicted
stop position
prediction
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.)
Granted
Application number
JP2021030367A
Other languages
Japanese (ja)
Other versions
JP7488474B2 (en
Inventor
雄資 加藤
Yusuke Kato
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.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
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 Denso Wave Inc filed Critical Denso Wave Inc
Priority to JP2021030367A priority Critical patent/JP7488474B2/en
Publication of JP2022131424A publication Critical patent/JP2022131424A/en
Application granted granted Critical
Publication of JP7488474B2 publication Critical patent/JP7488474B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

To use a robot safely in a limited space without wastefully limiting performance of the robot.SOLUTION: A robot control device comprises: a drive part which performs an emergency stop of a robot when a stop command is received; a first estimation processing part for estimating a first estimated stop position on the basis of current attitude and speed of the robot; a second estimation processing part for estimating a second estimated stop position which is adjusted to be further ahead of the first estimated stop position; and a monitoring processing part which can perform a first monitoring processing of issuing the stop command to the drive part when it is determined that the first estimated stop position enters a previously set designated area and a second monitoring processing of issuing, to a control processing part, a deceleration command for decelerating the speed of the robot from its current speed when it is determined that the second estimated stop position enters the designated area.SELECTED DRAWING: Figure 1

Description

本実施形態は、ロボット制御装置に関する。 This embodiment relates to a robot control device.

例えば多関節型のロボットを限られたスペースで使用するために、ロボットの可動範囲内に人等の侵入を許すことがある。このような場合、従来構成では、ロボットが人等に接触することを防止するために、ロボットの可動範囲内において人等の侵入を禁止する領域と人等が侵入可能な領域とを区画し、その領域の間に柵を設けることが行われる。なお、以下の説明では、人等の侵入を禁止する領域をロボットの動作領域と称し、人等が侵入可能な領域を指定領域と称する。 For example, in order to use an articulated robot in a limited space, there are cases where a person or the like is allowed to enter the movable range of the robot. In such a case, in the conventional configuration, in order to prevent the robot from coming into contact with a person or the like, an area where the intrusion of a person or the like is prohibited and an area where the intrusion of the person or the like is permitted are divided within the movable range of the robot. Fences are provided between the areas. In the following description, an area in which human entry is prohibited is referred to as a robot operation area, and an area in which a person or the like can enter is referred to as a designated area.

このような柵は、ロボットが万一暴走して柵に衝突した場合であっても柵の外側つまり指定領域内に存在する人等にロボットが接触して危害が及ばないように、ロボットの衝突に耐え得るような頑丈なものである必要があることから、大掛かりなものとなり易い。また、柵が頑丈であることから、ロボットが柵に衝突した場合には、ロボット自体が破損する可能性もある。このような事情から、上述したような頑丈で大掛かりな柵を用いずに安全にロボットを使用できる構成が望まれている。 Such a fence is designed so that even in the event that the robot runs out of control and collides with the fence, the robot will not come into contact with and harm a person outside the fence, i.e., within the designated area. Since it is necessary to be strong enough to withstand high pressure, it tends to be large-scale. Moreover, since the fence is sturdy, the robot itself may be damaged if it collides with the fence. Under these circumstances, there is a demand for a configuration in which the robot can be used safely without using a sturdy and large-scale fence as described above.

ここで、ロボットの可動範囲内に人等の侵入を許す場合に上述したような柵を用いない方法としては、ロボットと人等との衝突を柵等によって物理的に防ぐのではなく、例えばいわゆるソフトウェアリミットのように制御によって動作領域をソフトウェア的に制限することが考えられる。この場合、例えばロボット制御装置は、ロボットの可動範囲内に動作領域を設定する。そして、ロボット制御装置は、ロボットが動作領域から出たこと、つまりロボットが指定領域内へ侵入したか否かを監視し、ロボットが指定領域内へ侵入したことを検知した場合に停止指令を発行してロボットを停止させる。 Here, as a method of not using a fence as described above when allowing a person or the like to enter the movable range of the robot, instead of physically preventing a collision between the robot and the person or the like with a fence or the like, for example, a so-called It is conceivable to limit the operating area by software control like software limit. In this case, for example, the robot control device sets the motion area within the movable range of the robot. Then, the robot controller monitors whether the robot has left the operating area, that is, whether the robot has entered the specified area, and issues a stop command when it detects that the robot has entered the specified area. to stop the robot.

しかしながら、このような従来の制御方法では、信号伝達のタイムラグやモータが停止するまでの時間等によって、ロボット制御装置が停止指令を発行してからロボットが実際に停止するまでに時差が生じ、その時差によってロボットに滑走が生じる。そして、ロボットが高速で動作する場合、ロボットが指定領域に侵入したことをロボット制御装置が検知してから停止指令を発行してロボットの停止を開始させたのでは、ロボットの滑走によって指定領域内へ大きく侵入を許すことになってしまい、人等への安全が確保し難い。そのため、ロボットの滑走を考慮し、ロボットが指定領域に侵入することを事前に予測して、ロボットが指定領域に侵入する以前に停止指令を発行してロボットの停止を開始することが望ましい。 However, in such a conventional control method, there is a time lag between when the robot control device issues a stop command and when the robot actually stops due to the time lag in signal transmission, the time it takes for the motor to stop, and the like. The difference causes the robot to slide. When the robot moves at high speed, if the robot control device detects that the robot has entered the specified area and then issues a stop command to start stopping the robot, the robot will not enter the specified area due to the sliding of the robot. It is difficult to ensure the safety of people and the like. Therefore, it is desirable to consider the sliding of the robot, predict in advance that the robot will enter the specified area, and issue a stop command to start stopping the robot before the robot enters the specified area.

一方で、滑走による移動距離は、ロボットのモータの性能や個体差、及び劣化等の影響を受けるため、各ロボットで異なるだけでなく同じロボットでも使用期間によって変化することがある。このため、上述したように、ロボットが指定領域に侵入することを事前に予測し、ロボットが指定領域に侵入する以前に停止指令を発行してロボットの停止を開始する構成とする場合、安全性を担保するためには最悪条件を想定した余裕のある予測を行う必要がある。すると、実際にはまだロボットを停止させる必要がないにも関わらず、ロボットを停止させてしまう事態が頻発することになる。その結果、ロボットの性能が無駄に制限されてしまったり、ティーチングが難しくなってティーチング時間が延びてしまったりといった利便性が低下する事態が生じる。 On the other hand, the distance traveled by sliding is affected by the performance, individual differences, deterioration, etc. of the motors of the robots. For this reason, as described above, in the case of predicting in advance that the robot will enter the specified area and issuing a stop command before the robot enters the specified area to start stopping the robot, safety is improved. In order to guarantee this, it is necessary to make a prediction with a margin assuming the worst conditions. As a result, the robot is frequently stopped even though it is not actually necessary to stop the robot. As a result, the performance of the robot is unnecessarily restricted, and the teaching becomes difficult and the teaching time is extended, resulting in a decrease in convenience.

特許第5365524号公報Japanese Patent No. 5365524

本実施形態は上述した事情に鑑みてなされたものであり、その目的は、ロボットの性能を無駄に制限することなく、かつ、限られたスペースで安全にロボットを使用することができるロボット制御装置を提供することにある。 The present embodiment has been made in view of the circumstances described above, and its object is to provide a robot control apparatus that can safely use a robot in a limited space without unnecessarily limiting the performance of the robot. is to provide

本実施形態のロボット制御装置は、多関節型のロボットを駆動制御するロボット制御装置である。ロボット制御装置は、前記ロボットの動作を指令する動作指令を受け取り前記動作指令に基づいて前記ロボットを動作させるとともに停止指令を受け取った場合に前記ロボットを緊急停止させる駆動部と、前記駆動部に前記動作指令を発行する制御処理を実行可能な制御処理部と、前記ロボットの現在の姿勢及び速度を算出する算出処理を実行可能な算出処理部と、前記ロボットの現在の姿勢及び速度に基づいて、前記ロボットの現在の位置で前記停止指令を発行した場合に前記ロボットが停止する位置である第1停止予測位置を予測する第1予測処理を実行可能な第1予測処理部と、前記第1停止予測位置よりも先の位置となるように調整された第2停止予測位置を予測する第2予測処理を実行可能な第2予測処理部と、予め設定された指定領域内に前記第1停止予測位置が侵入すると判断した場合に前記停止指令を前記駆動部に発行する第1監視処理と、前記指定領域内に前記第2停止予測位置が侵入すると判断した場合に前記ロボットの速度を現在の速度から減速させる減速指令を前記制御処理部に発行する第2監視処理と、を実行可能な監視処理部と、を備える。 The robot control device of this embodiment is a robot control device that drives and controls an articulated robot. The robot control device includes a drive unit that receives an operation command for commanding the operation of the robot, operates the robot based on the operation command, and makes an emergency stop of the robot when a stop command is received; A control processing unit capable of executing control processing for issuing an action command, a calculation processing unit capable of executing calculation processing for calculating the current posture and speed of the robot, and based on the current posture and speed of the robot, a first prediction processing unit capable of executing a first prediction process of predicting a first predicted stop position, which is a position where the robot will stop when the stop command is issued at the current position of the robot; a second prediction processing unit capable of executing a second prediction process of predicting a second predicted stop position adjusted to be ahead of the predicted position; a first monitoring process for issuing the stop command to the driving unit when it is determined that the position will enter; a second monitoring process for issuing a deceleration command for decelerating from the vehicle to the control processing unit;

これによれば、ロボット制御装置は、ロボットが動作している間、緊急停止させるための基準となる第1停止予測位置を監視するとともに、減速させるための基準となる第2停止予測位置を監視する。そして、第2停止予測位置は、第1停止予測位置に対して先の位置にとなるように設定されている。つまり、第2停止予測位置は、第1停止予測位置に対して、ロボットが停止するまでの距離に余裕を持って設定されている。そのため、第2停止予測位置は、第1停止予測位置に比べて、指定領域内への侵入が先に検知される。そして、ロボット制御装置は、第2停止予測位置が指定領域内に侵入すると判断した場合には、ロボットを停止させるのではなく減速させる。 According to this, while the robot is operating, the robot controller monitors the first predicted stop position, which serves as a reference for emergency stopping, and monitors the second predicted stop position, which serves as a reference for deceleration. do. The second predicted stop position is set so as to be ahead of the first predicted stop position. That is, the second predicted stop position is set with a sufficient distance from the first predicted stop position until the robot stops. Therefore, at the second predicted stop position, entry into the specified area is detected earlier than at the first predicted stop position. When the robot controller determines that the second predicted stop position will enter the specified area, the robot controller decelerates the robot instead of stopping it.

このように、ロボットを減速させることで、緊急停止させた際の滑走による移動距離を短くすることができ、その結果、ロボットが指定領域に侵入する危険性を低下させることができる。これにより、第1停止予測位置までもが指定領域内に侵入して停止指令が発行されることを回避できる。その結果、ロボットの動作速度を無駄に制限させたり無駄に停止させたりすることを抑制でき、ロボットを動作させ続けることができる。一方で、ロボットを減速させたにも係わらず、万一、第1停止予測位置が指定領域内に侵入すると判断された場合には、停止信号を発行してロボットを緊急停止させる。これらの結果、ロボットの性能を無駄に制限することなく、かつ、限られた狭いスペースでも安全にロボットを使用することができる。 By decelerating the robot in this way, it is possible to shorten the distance traveled by sliding when the robot is brought to an emergency stop, and as a result, it is possible to reduce the risk of the robot entering the specified area. As a result, even the first predicted stop position can be prevented from entering the specified area and issuing a stop command. As a result, it is possible to prevent the movement speed of the robot from being unnecessarily limited or to stop it unnecessarily, so that the robot can continue to operate. On the other hand, if it is determined that the first predicted stop position will enter the specified area even though the robot is decelerated, a stop signal is issued to bring the robot to an emergency stop. As a result, the robot can be used safely even in a limited and narrow space without unnecessarily restricting the performance of the robot.

第1実施形態によるロボット制御装置の機能ブロックの一例を概念的に示すブロック図FIG. 2 is a block diagram conceptually showing an example of functional blocks of the robot control device according to the first embodiment; 第1実施形態によるロボット制御装置について、ロボットの可動範囲、指定領域、及び動作領域の一例を示す図FIG. 3 is a diagram showing an example of a robot movable range, a designated area, and an operation area in the robot control device according to the first embodiment; 第1実施形態によるロボット制御装置について、第1停止予測位置及び第2停止予測位置の算出方法の一例を概念的に示す図FIG. 2 is a diagram conceptually showing an example of a calculation method of a first predicted stop position and a second predicted stop position for the robot control device according to the first embodiment; 第1実施形態によるロボット制御装置について、通常制御部で実行される制御内容の一例を示すフローチャート3 is a flow chart showing an example of control contents executed by a normal control unit in the robot control device according to the first embodiment; 第1実施形態によるロボット制御装置について、安全監視部で実行される制御内容の一例を示すフローチャート3 is a flow chart showing an example of control contents executed by a safety monitoring unit in the robot control device according to the first embodiment; 第1実施形態によるロボット制御装置について、第1停止予測位置及び第2停止予測位置の両方が指定領域に侵入しない場合を示すもので、(A)は経過時間とロボットの位置との関係を示し、(B)は経過時間とロボットの速度との関係を示す図Regarding the robot control device according to the first embodiment, both the first predicted stop position and the second predicted stop position do not enter the specified area, and (A) shows the relationship between the elapsed time and the position of the robot. , (B) shows the relationship between the elapsed time and the speed of the robot 第1実施形態によるロボット制御装置について、第2停止予測位置が指定領域に侵入しかつ第1停止予測位置が指定領域に侵入しない場合を示すもので、(A)は経過時間とロボットの位置との関係を示し、(B)は経過時間とロボットの速度との関係を示す図Regarding the robot control device according to the first embodiment, it shows a case where the second predicted stop position enters the designated area and the first predicted stop position does not enter the designated area. , and (B) shows the relationship between the elapsed time and the speed of the robot 第1実施形態によるロボット制御装置について、第1停止予測位置及び第2停止予測位置の両方が指定領域に侵入した場合を示すもので、(A)は経過時間とロボットの位置との関係を示し、(B)は経過時間とロボットの速度との関係を示す図Regarding the robot control device according to the first embodiment, both the first predicted stop position and the second predicted stop position enter the designated area, and (A) shows the relationship between the elapsed time and the position of the robot. , (B) shows the relationship between the elapsed time and the speed of the robot 第2実施形態によるロボット制御装置の機能ブロックの一例を概念的に示すブロック図FIG. 4 is a block diagram conceptually showing an example of functional blocks of a robot control device according to a second embodiment;

以下、複数の実施形態について図面を参照しながら説明する。なお、各実施形態において、同一の構成には同一の符号を付して説明を省略する。 A plurality of embodiments will be described below with reference to the drawings. In addition, in each embodiment, the same code|symbol is attached|subjected to the same structure, and description is abbreviate|omitted.

(第1実施形態)
以下では、第1実施形態について図1から図8を参照して説明する。図1に示すロボット制御装置20は、例えば図2に示す多関節型のロボット10の駆動を制御するためのものである。ロボット10は、多関節すなわち多軸のアーム11を有する垂直多関節型のロボットで構成することができ、ロボット制御装置20によって制御される。なお、ロボット10は、例えば水平多関節型のロボットやパラレルリンク側のロボット、直交型のロボット等で構成することもできる。
(First embodiment)
The first embodiment will be described below with reference to FIGS. 1 to 8. FIG. A robot control device 20 shown in FIG. 1 is for controlling the driving of an articulated robot 10 shown in FIG. 2, for example. The robot 10 can be a vertically articulated robot having a multi-joint or multi-axis arm 11 and is controlled by a robot controller 20 . The robot 10 can also be configured by, for example, a horizontal multi-joint type robot, a parallel link side robot, an orthogonal type robot, or the like.

ロボット10は、図2に示す複数の関節を有する多軸のアーム11の他、図1に示すように、複数のモータ12及び位置センサ13を有している。モータ12及び位置センサ13の数は、アーム11の関節数によって異なる。なお、図1では、説明を簡単にするため1つのモータ12及び位置センサ13のみを示している。各モータ12は、アーム11の各関節を動作させるためのものであり、ロボット制御装置20によって駆動制御される。各位置センサ13は、アーム11の各関節の角度位置を検出するためのものであり、各モータ12の図示しないモータ軸に取り付けられた例えばロータリーエンコーダで構成することができる。また、ロボット10は、例えば手先にチャック等のツール90を装着することができる。 The robot 10 has a multi-axis arm 11 having a plurality of joints shown in FIG. 2, as well as a plurality of motors 12 and position sensors 13 as shown in FIG. The number of motors 12 and position sensors 13 varies depending on the number of joints of arm 11 . Note that FIG. 1 shows only one motor 12 and one position sensor 13 for the sake of simplicity. Each motor 12 is for operating each joint of the arm 11 and is driven and controlled by the robot controller 20 . Each position sensor 13 is for detecting the angular position of each joint of the arm 11 , and can be composed of, for example, a rotary encoder attached to a motor shaft (not shown) of each motor 12 . In addition, the robot 10 can have a tool 90 such as a chuck attached to its hand.

ロボット制御装置20は、図1に示すように、例えばCPU201及び記憶領域202を備えている。記憶領域202は、ロボット10の駆動を制御するためのプログラムを記憶している。ロボット制御装置20は、記憶領域202が記憶しているプログラムをCPU201において実行することにより、アーム11が予め定められた所定の動作を自動的に実行するように各モータ12を制御する。なお、ロボット制御装置20は、例えばロボットコントローラと称されるロボット10を制御することに特化した処理装置と、パソコン等の汎用的な処理装置とを組み合わせて構成することもできる。 The robot control device 20 includes, for example, a CPU 201 and a storage area 202, as shown in FIG. A storage area 202 stores a program for controlling the driving of the robot 10 . The robot controller 20 causes the CPU 201 to execute a program stored in the storage area 202 to control each motor 12 so that the arm 11 automatically performs a predetermined operation. The robot control device 20 can also be configured by combining, for example, a processing device specialized for controlling the robot 10 called a robot controller and a general-purpose processing device such as a personal computer.

ロボット制御装置20は、例えば図示しないティーチングペンダントやパソコン、スマートフォン、若しくはタブレット端末等の外部装置を接続可能に構成されている。この場合、ロボット制御装置20は、ロボット制御装置20に接続される外部装置を、ロボット制御装置20に対して各種設定内容等を入力するための入力装置や、ロボット制御装置20から送信された各種情報を出力するための出力装置として機能させることができる。 The robot control device 20 is configured to be connectable to an external device such as a teaching pendant (not shown), a personal computer, a smart phone, or a tablet terminal. In this case, the robot control device 20 uses an external device connected to the robot control device 20 as an input device for inputting various settings and the like to the robot control device 20 and various data transmitted from the robot control device 20 . It can function as an output device for outputting information.

ロボット制御装置20は、図1に示すように、駆動部21、設定処理部22、算出処理部23、安全監視部24、及び通常制御部25を備えている。駆動部21は、例えばインバータ回路等の駆動回路を含んで構成されている。駆動部21は、通常制御部25で発行される動作指令を受け取り、その動作指令に基づいて各モータ12を駆動させてロボット10を動作させる機能を有する。動作指令は、ロボット10の動作に関し、例えばロボット10の特定部位の移動先の位置つまり目標位置や動作速度に関する指令を含んでいる。また、駆動部21は、安全監視部24で発行される停止指令を受け取ると、各モータ12を停止させてロボット10の動作を緊急停止させる機能を有する。 The robot control device 20 includes a driving section 21, a setting processing section 22, a calculation processing section 23, a safety monitoring section 24, and a normal control section 25, as shown in FIG. The driving unit 21 includes a driving circuit such as an inverter circuit, for example. The drive unit 21 has a function of receiving an operation command issued by the normal control unit 25 and operating the robot 10 by driving each motor 12 based on the operation command. The motion command is related to the motion of the robot 10, and includes, for example, a command related to the position of the movement destination of a specific part of the robot 10, that is, the target position and the motion speed. The drive unit 21 also has a function of stopping the motors 12 to stop the operation of the robot 10 in an emergency upon receiving a stop command issued by the safety monitoring unit 24 .

設定処理部22は、設定処理を実行可能である。設定処理は、ロボット10の動作に先立って予め指定領域A1を設定し記憶領域202に記憶させる処理を含む。指定領域A1は、図2に示すように、ロボット10の特定部位の可動範囲A0内であって、かつ、人等の侵入を許す領域すなわちロボット10の侵入を禁止する範囲である。可動範囲A0を決定するためのロボット10の特定部位は、例えば人等に接触した場合に危険な任意の部位を設定することができる。例えばロボットの特定部位Rは、図2に示すように、アーム11を最大まで伸ばした場合の最先端部に設定することができる。この場合、例えばロボット10の手先にツールが装着されている場合、そのツール90を含めて最先端の部位を特定部位Rとして設定することができる。すなわち、ロボット10の可動範囲A0は、ツール90を含めて考慮することができる。 The setting processing unit 22 can execute setting processing. The setting process includes a process of setting the specified area A1 in advance and storing it in the storage area 202 prior to the operation of the robot 10 . As shown in FIG. 2, the designated area A1 is within the movable range A0 of the specific portion of the robot 10 and is an area in which entry of a person or the like is permitted, that is, an area in which the robot 10 is prohibited from entering. The specific part of the robot 10 for determining the movable range A0 can be set to any part that is dangerous, for example, when it comes into contact with a person. For example, the specific part R of the robot can be set at the tip when the arm 11 is extended to the maximum, as shown in FIG. In this case, for example, when a tool is attached to the hand of the robot 10, the tip part including the tool 90 can be set as the specific part R. That is, the movable range A0 of the robot 10 can be considered including the tool 90 .

ここで、可動範囲A0のうち指定領域A1以外の領域、この場合、指定領域A1の内側の領域は、ロボット10の動作領域A2となる。動作領域A2は、ロボット10の動作が許可された領域、すなわち人等の侵入が禁止された領域である。換言すれば、動作領域A2は、人等の侵入を防ぐ必要がある領域である。この場合、設定処理は、例えば作業者が指定領域A1を直接指定する構成でも良いし、例えば作業者が動作領域A2を指定することで間接的に指定領域A1が指定される構成でも良い。また、設定処理は、例えばロボット制御装置20に接続された図示しない外部装置を作業者が操作することで、ロボット制御装置20に対して設定情報を入力するように構成することができる。 Here, the area other than the specified area A1 in the movable range A0, in this case, the area inside the specified area A1 becomes the operation area A2 of the robot . The operation area A2 is an area in which the robot 10 is permitted to operate, that is, an area in which entry of people or the like is prohibited. In other words, the operating area A2 is an area in which it is necessary to prevent intrusion of people or the like. In this case, the setting process may be configured such that, for example, the operator directly specifies the specified area A1, or, for example, the operator indirectly specifies the specified area A1 by specifying the operation area A2. Further, the setting process can be configured such that setting information is input to the robot control device 20 by the operator operating an external device (not shown) connected to the robot control device 20, for example.

なお、図2に示された境界線Plimは、指定領域A1と動作領域A2との境界を示している。この場合、指定領域A1と動作領域A2との境界つまり境界線Plim上には、図2には示していないが、人等が動作領域A2内に侵入することを防ぐための柵等を設けることが好ましい。この場合に設ける柵は、人等の侵入防止を主目的としており、ロボット10が高速で衝突することがないため、衝突から人等を保護するための強度は要しない。 Note that the boundary line Plim shown in FIG. 2 indicates the boundary between the designated area A1 and the operation area A2. In this case, on the boundary between the designated area A1 and the operation area A2, that is, on the boundary line Plim, although not shown in FIG. is preferred. The fence provided in this case is mainly intended to prevent entry of people, etc., and since the robot 10 does not collide at high speed, it does not require strength for protecting people, etc. from collision.

算出処理部23は、ロボット10の位置センサ13からアーム11の各関節の位置情報を受け取るとともに、算出処理を実行可能である。算出処理は、例えば位置センサ13が検出したアーム11の各関節の現在の角度位置から、ロボット10の現在の姿勢や位置、及び現在の動作速度を算出する、つまりアーム11の現在の姿勢や特定部位Rの位置、及び各関節の動作速度を算出する処理を含む。算出処理部23は、算出処理によって算出したロボット10の現在の姿勢や特定部位Rの位置及び動作速度を、安全監視部24及び通常制御部25に受け渡す。なお、算出処理部23は、例えば安全監視部24又は通常制御部25に組み込まれていても良い。 The calculation processing unit 23 can receive position information of each joint of the arm 11 from the position sensor 13 of the robot 10 and execute calculation processing. The calculation process calculates the current posture and position of the robot 10 and the current movement speed from the current angular positions of the joints of the arm 11 detected by the position sensor 13, for example. It includes processing for calculating the position of the part R and the motion speed of each joint. The calculation processing unit 23 transfers the current posture of the robot 10 and the position and movement speed of the specific part R calculated by the calculation processing to the safety monitoring unit 24 and the normal control unit 25 . Note that the calculation processing unit 23 may be incorporated in the safety monitoring unit 24 or the normal control unit 25, for example.

安全監視部24は、例えば記憶領域202に記憶されている動作プログラムを実行することにより、ロボット10の動作を監視し、ロボット10の動作中にロボット10の特定部位Rが指定領域A1内に侵入する可能性が生じた場合に、駆動部21に対して停止指令を発行する機能を有する。駆動部21は、安全監視部24から停止指令を受け取ると、モータ12を停止させてアーム11の動作つまりロボット10の動作を緊急停止させる。この場合、駆動部21は、停止指令を最優先で実行する。すなわち、駆動部21は、停止指令と同時に例えば動作指令を受け取った場合、動作指令よりも停止指令を優先して、ロボット10を緊急停止させる。 The safety monitoring unit 24 monitors the operation of the robot 10 by executing the operation program stored in the storage area 202, for example, and detects that the specific part R of the robot 10 enters the designated area A1 during the operation of the robot 10. It has a function of issuing a stop command to the drive unit 21 when there is a possibility that it will stop. Upon receiving a stop command from the safety monitoring unit 24 , the driving unit 21 stops the motor 12 to emergency stop the operation of the arm 11 , that is, the operation of the robot 10 . In this case, the drive unit 21 gives top priority to the stop command. That is, when receiving, for example, an operation command at the same time as a stop command, the drive unit 21 gives priority to the stop command over the operation command, and causes the robot 10 to stop urgently.

本実施形態の場合、安全監視部24は、第1予測処理部241、及び監視処理部としての第1監視処理部242を有している。この場合、安全監視部24は、CPU201とは異なる図示しないCPUを有していても良い。そして、第1予測処理部241及び第1監視処理部242は、安全監視部24が有する図示しないCPUにおいて所定のプログラムを実行することでソフトウェアによって仮想的に実現しても良いし、集積回路等によってハードウェア的に実現しても良い。 In the case of this embodiment, the safety monitoring unit 24 has a first prediction processing unit 241 and a first monitoring processing unit 242 as a monitoring processing unit. In this case, the safety monitoring unit 24 may have a CPU (not shown) different from the CPU 201 . The first prediction processing unit 241 and the first monitoring processing unit 242 may be virtually realized by software by executing a predetermined program in a CPU (not shown) of the safety monitoring unit 24, or may be implemented by an integrated circuit or the like. may be implemented in hardware by

第1予測処理部241は、算出処理部23からロボット10の現在の姿勢や特定部位Rの位置及び動作速度を受け取る。そして、第1予測処理部241は、第1予測処理を実行可能である。第1予測処理は、算出処理部23で算出されたロボット10の現在の姿勢や特定部位Rの位置及び動作速度に基づいて、図3等に示す第1停止予測位置Ps1を予測する処理を含む。 The first prediction processing unit 241 receives the current posture of the robot 10 and the position and movement speed of the specific part R from the calculation processing unit 23 . And the 1st prediction process part 241 can perform a 1st prediction process. The first prediction process includes a process of predicting the first predicted stop position Ps1 shown in FIG. .

第1停止予測位置Ps1は、現在の位置つまり現時点で停止指令を発行した場合に、ロボット10が完全に停止したときのロボット10の特定部位Rの位置を予測したものである。つまり、第1停止予測位置Ps1は、空走時間と滑走時間とを考慮した位置である。本実施形態において、空走時間とは、停止指令が発行されてからモータ12が停止のための動作を開始するまでの時間を意味する。また、滑走時間は、モータ12が停止のための減速を開始してから完全に停止するまでの間の時間を意味する。 The first predicted stop position Ps1 is the predicted position of the specific part R of the robot 10 when the robot 10 is completely stopped when a stop command is issued at the current position, that is, at the present time. In other words, the first predicted stop position Ps1 is a position that considers the free running time and the sliding time. In this embodiment, the idle running time means the time from when the stop command is issued to when the motor 12 starts the operation for stopping. Also, the sliding time means the time from when the motor 12 starts decelerating for stopping to when it stops completely.

また、本実施形態において、空走とは、空走時間中にロボット10が動作することを意味する。空走距離とは、空走によってロボット10が移動した距離つまり空走時間中にロボット10が移動した距離を意味する。また、滑走とは、滑走時間中にロボット10が動作することを意味する。そして、滑走距離とは、滑走によってロボット10が移動した距離つまり滑走時間中にロボット10が移動した距離を意味する。 Further, in the present embodiment, idle running means that the robot 10 operates during the idle running time. The idling distance means the distance traveled by the robot 10 by idling, that is, the distance traveled by the robot 10 during the idling time. Moreover, sliding means that the robot 10 operates during the sliding time. The sliding distance means the distance that the robot 10 moves by sliding, that is, the distance that the robot 10 moves during the sliding time.

例えばロボット10の特定部位Rをツール90の先端部に設定した場合、第1停止予測位置Ps1は、ロボット10の動作が完全に停止したときにツール90の先端部が存在すると予測される位置となる。第1予測処理部241は、算出した第1停止予測位置Ps1を第1監視処理部242に受け渡す。 For example, when the specific part R of the robot 10 is set to the tip of the tool 90, the first predicted stop position Ps1 is the position where the tip of the tool 90 is predicted to exist when the robot 10 stops completely. Become. The first prediction processing unit 241 transfers the calculated first predicted stop position Ps1 to the first monitoring processing unit 242 .

第1監視処理部242は、監視処理部を構成するものであり、第1監視処理を実行可能である。第1監視処理は、設定処理によって予め設定された指定領域A1内に第1停止予測位置Ps1が侵入すると判断した場合に、停止指令を駆動部21に発行する処理を含む。すなわち、第1監視処理部242は、ロボット10が動作している間、常に第1停止予測位置Ps1を監視する。そして、第1監視処理部242は、指定領域A1内に第1停止予測位置Ps1が侵入することを検知すると、駆動部21に対して停止指令を発行する。 The first monitoring processing unit 242 constitutes a monitoring processing unit, and can execute a first monitoring process. The first monitoring process includes a process of issuing a stop command to the drive unit 21 when it is determined that the first predicted stop position Ps1 will enter the designated area A1 preset by the setting process. That is, the first monitoring processing unit 242 constantly monitors the first predicted stop position Ps1 while the robot 10 is operating. Then, when the first monitoring processing unit 242 detects that the first predicted stop position Ps1 enters the specified area A1, it issues a stop command to the driving unit 21 .

通常制御部25は、ロボット10の通常の動作つまりロボット10の特定部位Rが指定領域A1内に侵入していない場合における動作を制御する機能を有する。また、通常制御部25は、ロボット10の動作を監視し、ロボット10の動作中にロボット10の特定部位Rが指定領域A1内に侵入する可能性が生じた場合に、安全監視部24が停止指令を発行する前に、ロボット10の動作速度つまりモータ12の速度を減速させる機能を有する。 The normal control unit 25 has a function of controlling the normal operation of the robot 10, that is, the operation when the specific portion R of the robot 10 does not enter the designated area A1. In addition, the normal control unit 25 monitors the operation of the robot 10, and if there is a possibility that the specific part R of the robot 10 may enter the designated area A1 during the operation of the robot 10, the safety monitoring unit 24 stops. It has the function of decelerating the operating speed of the robot 10, that is, the speed of the motor 12, before issuing a command.

本実施形態の場合、通常制御部25は、第2予測処理部251、監視処理部としての第2監視処理部252、及び制御処理部253を有している。第2予測処理部251、第2監視処理部252、及び制御処理部253は、CPU201又は通常制御部25が有する図示しないCPUにおいて所定のプログラムを実行することでソフトウェアによって仮想的に実現しても良いし、集積回路等によってハードウェア的に実現しても良い。第2予測処理部251は、算出処理部23からロボット10の現在の姿勢や特定部位Rの位置及び動作速度を受け取る。そして、第2予測処理部251は、第2予測処理を実行可能である。第2予測処理は、算出処理部23で算出されたロボット10の現在の姿勢や特定部位Rの位置及び動作速度に基づいて、図3等に示す第2停止予測位置Ps2を予測する処理を含む。 In the case of this embodiment, the normal control unit 25 has a second prediction processing unit 251 , a second monitoring processing unit 252 as a monitoring processing unit, and a control processing unit 253 . The second prediction processing unit 251, the second monitoring processing unit 252, and the control processing unit 253 may be virtually realized by software by executing a predetermined program in the CPU (not shown) of the CPU 201 or the normal control unit 25. Alternatively, it may be realized by hardware such as an integrated circuit. The second prediction processing unit 251 receives the current posture of the robot 10 and the position and movement speed of the specific part R from the calculation processing unit 23 . Then, the second prediction processing unit 251 can execute the second prediction processing. The second prediction process includes a process of predicting the second predicted stop position Ps2 shown in FIG. .

第2停止予測位置Ps2は、第1停止予測位置Ps1と同様に、空走時間と滑走時間とを考慮した位置である。第2停止予測位置Ps2は、第1停止予測位置Ps1よりも先の位置となるようにパラメータが調整されたものである。第2停止予測位置Ps2は、現在の位置つまり現時点で停止指令を発行した場合に、ロボット10が完全に停止したときのロボット10の特定部位Rの位置を予測したものであって、かつ、第1停止予測位置Ps1よりも空走時間又は滑走時間のいずれか一方又は両方に余裕を持たせたものである。すなわち、第2停止予測位置Ps2は、第1停止予測位置Ps1よりも、より長い空走又は滑走を考慮したものである。第2予測処理部251は、算出した第2停止予測位置Ps2を第2監視処理部252に受け渡す。 As with the first predicted stop position Ps1, the second predicted stop position Ps2 is a position that takes into consideration the free running time and the sliding time. The parameters of the second predicted stop position Ps2 are adjusted so as to be ahead of the first predicted stop position Ps1. The second predicted stop position Ps2 is the predicted position of the specific part R of the robot 10 when the robot 10 is completely stopped when a stop command is issued at the current position, that is, at the present time. Either or both of the idling time and the sliding time are given a margin from the one-stop predicted position Ps1. That is, the second predicted stop position Ps2 takes into account a longer idle or skid than the first predicted stop position Ps1. The second prediction processing unit 251 transfers the calculated second predicted stop position Ps2 to the second monitoring processing unit 252 .

第2監視処理部252は、監視処理部を構成するものであり、第2監視処理を実行可能である。第2監視処理は、設定処理によって予め設定された指定領域A1内に第2停止予測位置Ps2が侵入すると判断した場合に、制御処理部253に対して減速指令を発行する。すなわち、第2監視処理部252は、ロボット10が動作している間、常に第2停止予測位置Ps2を監視する。そして、第2監視処理部252は、指定領域A1内に第2停止予測位置Ps2が侵入することを検知すると、制御処理部253に対して減速指令を発行する。減速指令は、ロボット10の動作速度を現在の動作速度から減速させるための指令である。 The second monitoring processing unit 252 constitutes a monitoring processing unit, and can execute a second monitoring process. The second monitoring process issues a deceleration command to the control processing unit 253 when it is determined that the second predicted stop position Ps2 will enter the specified area A1 set in advance by the setting process. That is, the second monitoring processor 252 constantly monitors the second predicted stop position Ps2 while the robot 10 is operating. Then, when detecting that the second predicted stop position Ps2 enters the designated area A1, the second monitoring processing unit 252 issues a deceleration command to the control processing unit 253 . The deceleration command is a command for decelerating the motion speed of the robot 10 from the current motion speed.

制御処理部253は、制御処理を実行可能である。制御処理は、駆動部21に動作指令を発行する処理を含む。制御処理部253は、減速指令を受け取っていない場合、通常の動作速度つまり予め設定された動作速度でロボット10を動作させるための動作指令を発行する。一方、制御処理部253は、減速指令を受け取った場合、ロボット10を現在の動作速度から減速させるための動作指令を発行する。この場合、駆動部21は、ロボット10を現在の動作速度から減速させるための動作指令を受け取ると、ロボット10の動作速度を現在の動作速度から減速させる。 The control processing unit 253 can execute control processing. The control processing includes processing for issuing an operation command to the drive unit 21 . When the control processing unit 253 has not received a deceleration command, it issues an operation command for operating the robot 10 at a normal operating speed, that is, at a preset operating speed. On the other hand, when the control processing unit 253 receives the deceleration command, it issues a motion command for decelerating the robot 10 from the current motion speed. In this case, when receiving an operation command for decelerating the robot 10 from the current operating speed, the drive unit 21 reduces the operating speed of the robot 10 from the current operating speed.

本実施形態の場合、安全監視部24は機能安全に関する規格を満たしたものであり、一方で、通常制御部25は機能安全に関する規格を満たしていないものである。すなわち、本実施形態の場合、第1予測処理部241及び第1監視処理部242は、機能安全に関する規格を満たしている。一方、第2予測処理部251及び第2監視処理部252は、機能安全に関する規格を満たさないものとすることができる。この場合、機能安全を満たしている安全監視部24は、安全系と称することができ、機能安全を満たしていない通常制御部25は、非安全系と称することができる。 In the case of this embodiment, the safety monitoring unit 24 satisfies the standard regarding functional safety, while the normal control unit 25 does not satisfy the standard regarding functional safety. That is, in the case of this embodiment, the first prediction processing unit 241 and the first monitoring processing unit 242 satisfy the standard regarding functional safety. On the other hand, the second prediction processing unit 251 and the second monitoring processing unit 252 may not satisfy the standard regarding functional safety. In this case, the safety monitoring unit 24 satisfying functional safety can be called a safety system, and the normal control unit 25 not satisfying functional safety can be called a non-safety system.

安全監視部24に求められる機能安全に関する規格とは、例えばISO10218等に規定されており、多重化若しくは多重安全の考えに基づくものである。安全監視部24は、例えば複数系統の第1予測処理部241及び第1監視処理部242を有することで機能安全に関する規格を満たすことができる。これより、安全監視部24は、1つの系統の第1予測処理部241及び第1監視処理部242が故障等で十分機能しなかった場合でも、他の系統が機能することにより、ロボット10の監視及び停止指令を発行できるように構成されている。 Standards relating to functional safety required for the safety monitoring unit 24 are stipulated in ISO 10218, for example, and are based on the concept of multiplexing or multiple safety. The safety monitoring unit 24 can satisfy the standard regarding functional safety by having, for example, a plurality of systems of the first prediction processing unit 241 and the first monitoring processing unit 242 . As a result, even if the first prediction processing unit 241 and the first monitoring processing unit 242 of one system do not sufficiently function due to a failure or the like, the safety monitoring unit 24 can prevent the robot 10 from It is configured to be able to issue monitoring and stop commands.

次に、第1予測処理及び第2予測処理の一例つまり第1停止予測位置Ps1及び第2停止予測位置Ps2の算出方法の一例について説明する。図3に示すグラフは、横軸が時間t、縦軸がロボット10の特定部位Rの位置Pとし、時間tの経過に対するロボット10の特定部位Rの位置Pの変化を概念的に示したものである。この場合、現時点t0は現在の時点を示している。そして、現時点t0の左側は過去つまり実測値を示しており、現時点t0の右側は未来つまり予測値を示している。この場合、現在位置P0は、現時点t0におけるロボット10の特定部位Rの位置つまり算出処理部23で算出された値となる。また、第1停止予測位置Ps1及び第2停止予測位置Ps2は、それぞれ第1予測処理部241及び第2予測処理部251で算出された予測値となる。 Next, an example of the first prediction process and the second prediction process, that is, an example of a method of calculating the first predicted stop position Ps1 and the second predicted stop position Ps2 will be described. The graph shown in FIG. 3 conceptually shows the change in the position P of the specific part R of the robot 10 with respect to the passage of time t, with the horizontal axis representing time t and the vertical axis representing the position P of the specific part R of the robot 10 . is. In this case, the current time t0 indicates the current time. The left side of the current time t0 indicates the past, that is, the measured value, and the right side of the current time t0 indicates the future, that is, the predicted value. In this case, the current position P0 is the position of the specific part R of the robot 10 at the current time t0, that is, the value calculated by the calculation processing unit 23. FIG. Also, the first predicted stop position Ps1 and the second predicted stop position Ps2 are predicted values calculated by the first prediction processing section 241 and the second prediction processing section 251, respectively.

まず、第1予測処理について説明する。本実施形態において、第1予測処理は、現時点t0から第1予測空走時間tr1の経過後にロボット10の停止のための減速が開始するものとして第1停止予測位置Ps1を予測する処理を含んでいる。第1予測処理部241は、ロボット10の現在位置P0、ロボット10の現在速度V0、第1予測空走時間tr1、及び減速予測関数Sを用いて第1予測処理を実行することで、第1停止予測位置Ps1を算出することができる。ロボット10の現在位置P0及び現在速度V0は、算出処理部23で算出されたもの、つまり位置センサ13の実測値に基づくものである。第1予測空走時間tr1は、第1停止予測位置Ps1を予測する際に用いる空走時間である。第1予測空走時間tr1は、停止指令を発行してからモータ12が停止のための減速を開始するまでの時間差を想定したものであり、例えば反応時間やリアクションタイムと称することがある。 First, the first prediction process will be described. In this embodiment, the first prediction process includes a process of predicting the first predicted stop position Ps1 assuming that deceleration for stopping the robot 10 will start after the first predicted idle running time tr1 has elapsed from the current time t0. there is The first prediction processing unit 241 uses the current position P0 of the robot 10, the current speed V0 of the robot 10, the first predicted free running time tr1, and the deceleration prediction function S to perform the first prediction processing, thereby obtaining the first A predicted stop position Ps1 can be calculated. The current position P<b>0 and current velocity V<b>0 of the robot 10 are calculated by the calculation processing unit 23 , that is, based on actual measurement values of the position sensor 13 . The first predicted idle running time tr1 is the idle running time used when predicting the first predicted stop position Ps1. The first predicted idling time tr1 assumes the time difference from when the stop command is issued to when the motor 12 starts decelerating for stopping, and is sometimes referred to as reaction time or reaction time.

第1予測空走時間tr1は、例えばユーザ等によって予め設定され、また、ロボット10の特性に合わせて適宜設定される。この場合、第1予測空走時間tr1は、ロボット10を瞬時停止させた場合のモータ12のリアクションタイム、つまりロボット10の性能上の限界となる最短のリアクションタイムよりも長くなるように設定される。 The first predicted idle running time tr1 is set in advance by, for example, a user or the like, and is appropriately set according to the characteristics of the robot 10 . In this case, the first predicted idling time tr1 is set to be longer than the reaction time of the motor 12 when the robot 10 is momentarily stopped, that is, the shortest reaction time that is the performance limit of the robot 10. .

減速予測関数Sは、モータ12が停止のための減速を開始してから完全に停止するまでの期間のロボット10の移動距離を算出するための関数であり、ロボット10の位置と速度が入力値となる。減速予測関数Sは、ロボット10の姿勢と速度を入力としたロボット10の運動方程式を解いて緊急停止する期間中の加速度を求め、その加速度を積分することによって実現することができる。減速予測関数Sは、例えばロボット10の関節数やアーム11の長さ等によって適宜設定される。 The deceleration prediction function S is a function for calculating the moving distance of the robot 10 in the period from when the motor 12 starts decelerating for stopping until it completely stops, and the position and speed of the robot 10 are input values. becomes. The deceleration prediction function S can be realized by solving the equation of motion of the robot 10 with the attitude and speed of the robot 10 as inputs, finding the acceleration during the emergency stop period, and integrating the acceleration. The deceleration prediction function S is appropriately set according to, for example, the number of joints of the robot 10, the length of the arm 11, and the like.

第1予測処理部241は、まず、現在位置P0、第1予測空走時間tr1、及び現在速度V0を用いて、下記の式1に従って第1減速開始予測位置Pr1を求める。第1減速開始予測位置Pr1は、現時点t0から第1予測空走時間tr1が経過した時点のロボット10の位置を予測したものである。
Pr1=P0+tr1×V0…(式1)
First, the first prediction processing unit 241 uses the current position P0, the first predicted free running time tr1, and the current speed V0 to obtain the first predicted deceleration start position Pr1 according to Equation 1 below. The first predicted deceleration start position Pr1 is a predicted position of the robot 10 when the first predicted idle running time tr1 has elapsed from the current time t0.
Pr1=P0+tr1×V0 (Formula 1)

次に、第1予測処理部241は、減速予測関数S、現在速度V0、及び上記式1で算出した第1減速開始予測位置Pr1を用いて、下記の式2に従って第1停止予測位置Ps1を算出する。なお、この場合、現時点t0から第1予測空走時間tr1が経過するまではロボット10は減速及び加速しないため、現時点t0から第1予測空走時間tr1が経過した時点のロボット10の速度は、現在速度V0に等しいものとして扱うことができる。
Ps1=Pr1+S(Pr1,V0)…(式2)
Next, the first prediction processing unit 241 uses the deceleration prediction function S, the current speed V0, and the first predicted deceleration start position Pr1 calculated by the above formula 1 to calculate the first predicted stop position Ps1 according to the following formula 2. calculate. In this case, since the robot 10 does not decelerate or accelerate until the first predicted idle running time tr1 elapses from the current time t0, the speed of the robot 10 when the first predicted idle running time tr1 elapses from the current time t0 is It can be treated as equal to the current velocity V0.
Ps1=Pr1+S(Pr1, V0) (Formula 2)

次に第2予測処理について説明する。本実施形態において、第2予測処理は、現時点t0から、第1予測空走時間tr1よりも長い時間に設定された第2予測空走時間tr2の経過後にロボット10の停止のための減速が開始するものとして第2停止予測位置Ps2を予測する処理を含んでいる。すなわち、第2予測処理部251は、ロボット10の現在位置P0、ロボット10の現在速度V0、第2予測空走時間tr2、及び減速予測関数Sを用いて第2予測処理を実行することで、第2停止予測位置Ps2を算出することができる。本実施形態の場合、第2予測処理は、第1予測処理で用いる減速予測関数Sと同一の減速予測関数Sを用いることができる。この場合、第1予測処理と第2予測処理とでは、減速予測関数Sに入力する減速開始予測位置Pr1、Pr2が異なるのみである。 Next, the second prediction process will be explained. In the present embodiment, the second prediction process starts deceleration for stopping the robot 10 after a second predicted idle running time tr2 set longer than the first predicted idle running time tr1 elapses from the current time t0. This includes the process of predicting the second predicted stop position Ps2. That is, the second prediction processing unit 251 executes the second prediction processing using the current position P0 of the robot 10, the current speed V0 of the robot 10, the second predicted free running time tr2, and the deceleration prediction function S, A second predicted stop position Ps2 can be calculated. In the case of this embodiment, the second prediction process can use the same deceleration prediction function S as the deceleration prediction function S used in the first prediction process. In this case, only the predicted deceleration start positions Pr1 and Pr2 to be input to the deceleration prediction function S are different between the first prediction process and the second prediction process.

第2予測空走時間tr2は、第2停止予測位置Ps2を予測する際に用いる空走時間である。第2予測空走時間tr2は、第1予測空走時間tr1と同様に、停止指令を発行してからモータ12が停止のための減速を開始するまでの時間差を想定した時間であり、例えば反応時間やリアクションタイムと称することがある。第2予測空走時間tr2も、予め設定される。例えば設定処理部22は、第1予測空走時間tr1の値に応じて自動で第2予測空走時間tr2を設定する。この場合、設定処理部22は、第2予測空走時間tr2を第1予測空走時間tr1よりも長く設定する。例えば第2予測空走時間tr2は、第1予測空走時間tr1の2倍以上に設定される。これにより、第2停止予測位置Ps2が、第1停止予測位置Ps1よりも先の位置となるように調整される。 The second predicted idle running time tr2 is the idle running time used when predicting the second predicted stop position Ps2. Like the first predicted idle running time tr1, the second predicted idle running time tr2 is a time that assumes a time difference from when the stop command is issued until the motor 12 starts decelerating for stopping. Sometimes called time or reaction time. The second predicted idle running time tr2 is also preset. For example, the setting processing unit 22 automatically sets the second predicted idle running time tr2 according to the value of the first predicted idle running time tr1. In this case, the setting processing unit 22 sets the second predicted idle running time tr2 longer than the first predicted idle running time tr1. For example, the second predicted idle running time tr2 is set to be at least twice as long as the first predicted idle running time tr1. As a result, the second predicted stop position Ps2 is adjusted to be ahead of the first predicted stop position Ps1.

第2予測処理部251は、まず、現在位置P0、第2予測空走時間tr2、及び現在速度V0を用いて、下記の式3に従って第2減速開始予測位置Pr2を求める。第2減速開始予測位置Pr2は、現時点t0から第2予測空走時間tr2が経過した時点のロボット10の位置を示している。
Pr2=P0+tr2×V0…(式3)
The second prediction processing unit 251 first uses the current position P0, the second predicted free running time tr2, and the current speed V0 to obtain the second predicted deceleration start position Pr2 according to Equation 3 below. The second predicted deceleration start position Pr2 indicates the position of the robot 10 when the second predicted free running time tr2 has elapsed from the current time t0.
Pr2=P0+tr2×V0 (Formula 3)

次に、第2予測処理部251は、減速予測関数S、現在速度V0、及び上記式3で算出した第2減速開始予測位置Pr2を用いて、下記の式4に従って第2停止予測位置Ps2を算出する。なお、この場合、第1予測処理と同様に、現時点t0から第2予測空走時間tr2が経過するまではロボット10は減速及び加速しないため、現時点t0から第2予測空走時間tr2が経過した時点のロボット10の速度は、現在速度V0に等しいもとして扱うことができる。
Ps2=Pr2+S(Pr2,V0)…(式4)
Next, the second prediction processing unit 251 uses the deceleration prediction function S, the current speed V0, and the second predicted deceleration start position Pr2 calculated by the above formula 3 to calculate the second predicted stop position Ps2 according to the following formula 4. calculate. In this case, as in the first prediction process, since the robot 10 does not decelerate or accelerate until the second predicted idle running time tr2 has elapsed from the current time t0, the second predicted idle running time tr2 has elapsed from the current time t0. The velocity of the robot 10 at the moment can be treated as being equal to the current velocity V0.
Ps2=Pr2+S(Pr2, V0) (Formula 4)

次に、図4から図8も参照して、安全監視部24及び通常制御部25で実行される制御フローについて説明する。なお、図6から図8の(A)に示すグラフは、図3に示すグラフと同様に、横軸が時間t、縦軸がロボット10の特定部位Rの位置Pとしており、時間tの経過に対するロボット10の特定部位Rの位置Pの変化を概念的に示したものである。この場合、図6から図8の(A)に示された境界線Plimは、図2で示した指定領域A1と動作領域A2との境界線を示している。図6から図8の(A)において、境界線Plimの上側は指定領域A1となり、境界線Plimの下側は動作領域A2となる。 Next, the control flow executed by the safety monitoring unit 24 and the normal control unit 25 will be described with reference to FIGS. 4 to 8 as well. In the graphs shown in FIGS. 6 to 8A, similarly to the graph shown in FIG. 3, the horizontal axis is the time t and the vertical axis is the position P of the specific part R of the robot 10. 1 conceptually shows a change in the position P of the specific part R of the robot 10 with respect to the . In this case, the boundary line Plim shown in (A) of FIGS. 6 to 8 indicates the boundary line between the specified area A1 and the operation area A2 shown in FIG. 6 to 8A, the specified area A1 is above the boundary line Plim, and the operation area A2 is below the boundary line Plim.

また、図6から図8の(B)に示すグラフは、横軸が時間t、縦軸がロボット10の特定部位Rの動作速度Vとしており、時間tの経過に対するロボット10の特定部位Rの動作速度Vの変化を概念的に示したものである。また、図7の(B)に破線で示す動作速度Vxは、減速指令及び停止指令のいずれもが発行されなかった場合におけるロボット10の特定部位Rの実際の速度を概念的に示したものである。 In the graphs shown in FIGS. 6 to 8B, the horizontal axis is time t and the vertical axis is the movement speed V of the specific part R of the robot 10. This diagram conceptually shows changes in the operating speed V. FIG. 7B conceptually shows the actual speed of the specific part R of the robot 10 when neither the deceleration command nor the stop command is issued. be.

また、図7の(A)に破線で示す位置Pxは、減速指令の発行によってロボット10の特定部位Rの実際の位置が変化する様子を概念的に示したものであり、図7の(B)に破線で示す動作速度Vxは、減速指令の発行によってロボット10の特定部位Rの実際の速度が変化する様子を概念的に示したものである。そして、図8の(A)に破線で示す位置Pxは、停止指令の発行によってロボット10の特定部位Rの実際の位置が変化する様子を概念的に示したものであり、図8の(B)に破線で示す動作速度Vxは、停止指令の発行によってロボット10の特定部位Rの実際の速度が変化する様子を概念的に示したものである。 A position Px indicated by a dashed line in FIG. 7A conceptually shows how the actual position of the specific portion R of the robot 10 changes due to issuance of a deceleration command. ) conceptually shows how the actual speed of the specific portion R of the robot 10 changes due to the issuance of the deceleration command. A position Px indicated by a dashed line in FIG. 8A conceptually shows how the actual position of the specific portion R of the robot 10 changes due to issuance of a stop command, and FIG. ) conceptually shows how the actual speed of the specific portion R of the robot 10 changes due to the issuance of the stop command.

ロボット10が動作している間、通常制御部25は図4に示す処理を実行するとともに、安全監視部24は図5に示す処理を実行する。この場合、図4に示す処理において、ステップS12は第2停止位置予測処理に相当し、ステップS13は第2監視処理に相当する。また、図5に示す処理において、ステップS22は第1停止位置予測処理に相当し、ステップS23は第1監視処理に相当する。 While the robot 10 is operating, the normal control unit 25 executes the processing shown in FIG. 4, and the safety monitoring unit 24 executes the processing shown in FIG. In this case, in the processing shown in FIG. 4, step S12 corresponds to second stop position prediction processing, and step S13 corresponds to second monitoring processing. Further, in the processing shown in FIG. 5, step S22 corresponds to the first stop position prediction processing, and step S23 corresponds to the first monitoring processing.

通常制御部25は、ロボット10の動作が開始すると、図4に示す処理を開始する(スタート)。そして、ステップS11において、第2予測処理部251は、算出処理部23で算出されたロボット10の現在の姿勢や特定部位Rの位置P0及び現在速度V0を取得する。次に、ステップS12において、第2予測処理部251は、第2予測処理を実行して、第2停止予測位置Ps2を算出する。その後、ステップS13において、第2監視処理部252は、第2監視処理を実行して、第2停止予測位置Ps2が指定領域A1内に侵入するか否かを判断する。 When the robot 10 starts to operate, the normal control unit 25 starts the processing shown in FIG. 4 (start). Then, in step S<b>11 , the second prediction processing unit 251 acquires the current posture of the robot 10 calculated by the calculation processing unit 23 , the position P<b>0 of the specific part R, and the current velocity V<b>0 . Next, in step S12, the second prediction processing section 251 executes the second prediction processing to calculate the second predicted stop position Ps2. After that, in step S13, the second monitoring processing unit 252 executes the second monitoring processing to determine whether or not the second predicted stop position Ps2 will enter the specified area A1.

第2監視処理部252は、例えば図6に示すように第2停止予測位置Ps2が指定領域A1内に侵入しないつまり境界線Plimを超えないと判断した場合(図4のステップS13でNO)、ステップS11へ処理を戻す。そして、通常制御部25は、ステップS11以降を再度実行する。この場合、ロボット10の動作速度Vxは、図6の(B)に示すように、減速されずに所定の速度が維持される。 For example, when the second monitoring processing unit 252 determines that the second predicted stop position Ps2 does not enter the designated area A1, that is, does not exceed the boundary line Plim as shown in FIG. 6 (NO in step S13 of FIG. 4), The processing is returned to step S11. Then, the normal control unit 25 re-executes step S11 and subsequent steps. In this case, the operating speed Vx of the robot 10 is maintained at a predetermined speed without being decelerated, as shown in FIG. 6B.

一方、第2監視処理部252は、例えば図6に示すように第2停止予測位置Ps2が指定領域A1内に侵入するつまり境界線Plimを超えると判断した場合(ステップS13でYES)、ステップS14へ処理を移行させる。そして、第2監視処理部252は、ステップS14において、制御処理部253に対して減速指令を発行する。そして、減速指令を受けた制御処理部253は、駆動部21に対して減速させるための動作指令を発行し、これにより、図7の(B)に示すようにロボット10の動作速度Vxが減速される。そして、通常制御部25は、ステップS11へ処理を戻し、ステップS11以降を繰り返す。 On the other hand, when the second monitoring processing unit 252 determines that the second predicted stop position Ps2 enters the designated area A1, that is, exceeds the boundary line Plim as shown in FIG. 6 (YES in step S13), step S14 transfer the processing to Then, the second monitoring processing unit 252 issues a deceleration command to the control processing unit 253 in step S14. Upon receiving the deceleration command, the control processing unit 253 issues an operation command for deceleration to the drive unit 21, thereby decelerating the operating speed Vx of the robot 10 as shown in FIG. 7B. be done. Then, the normal control unit 25 returns the process to step S11, and repeats the steps after step S11.

第2監視処理部252は、第2停止予測位置Ps2が指定領域A1内に侵入すると判断している間、減速指令を発行し続ける。これより、ロボット10の特定部位Rが指定領域A1内に侵入する危険性がある間、ロボット10の動作速度Vxが減速し続ける(ステップS13でYES)。そして、ロボット10の動作速度Vxが十分に減速されて第2停止予測位置Ps2が指定領域A1内に侵入しなくなる、つまり図6の(A)に示すようなグラフになると(図4のステップS13でNO)、第2監視処理部252は、減速指令の発行を停止し、その結果、図7(B)の減速終了時点te以降に示すようにロボット10の減速が終了する。 The second monitoring processing unit 252 continues to issue the deceleration command while determining that the second predicted stop position Ps2 will enter the designated area A1. As a result, while there is a danger that the specific portion R of the robot 10 will enter the specified area A1, the operating speed Vx of the robot 10 continues to decelerate (YES in step S13). Then, when the operating speed Vx of the robot 10 is sufficiently decelerated so that the second predicted stop position Ps2 does not enter the designated area A1, that is, when the graph shown in FIG. NO), the second monitoring processing unit 252 stops issuing the deceleration command, and as a result, deceleration of the robot 10 is completed as shown after deceleration end time te in FIG. 7B.

次に安全監視部24における制御内容を説明する。安全監視部24は、ロボット10の動作が開始すると、図5に示す処理を開始する(スタート)。第1予測処理部241は、まずステップS21において、算出処理部23から、算出処理部23で算出されたロボット10の現在の姿勢や特定部位Rの現在位置P0及び現在速度V0を取得する。次に、第1予測処理部241は、ステップS22において、第1予測処理を実行して、第1停止予測位置Ps1を算出する。その後、ステップS23において、第1監視処理部242は、第1監視処理を実行して、第1停止予測位置Ps1が指定領域A1内に侵入するか否かを判断する。 Next, the contents of control in the safety monitoring unit 24 will be described. When the robot 10 starts to operate, the safety monitoring unit 24 starts the processing shown in FIG. 5 (start). First, in step S21, the first prediction processing unit 241 acquires the current posture of the robot 10 calculated by the calculation processing unit 23 and the current position P0 and current velocity V0 of the specific part R from the calculation processing unit 23 . Next, in step S22, the first prediction processing section 241 executes the first prediction processing to calculate the first predicted stop position Ps1. Thereafter, in step S23, the first monitoring processing unit 242 executes the first monitoring processing to determine whether or not the first predicted stop position Ps1 will enter the specified area A1.

安全監視部24は、例えば図6及び図7の(A)に示すように、第1停止予測位置Ps1が指定領域A1内に侵入しないつまり境界線Plimを超えないと判断した場合(ステップS23でNO)、ステップS21へ処理を戻し、ステップS21以降を実行する。この場合、ロボット10の動作速度Vxは、制御処理部253から発行される動作指令の内容に従う。 For example, as shown in FIGS. 6 and 7A, the safety monitoring unit 24 determines that the first predicted stop position Ps1 does not enter the designated area A1, that is, does not exceed the boundary line Plim (step S23 NO), the process returns to step S21, and the steps after step S21 are executed. In this case, the motion speed Vx of the robot 10 follows the content of the motion command issued from the control processing unit 253 .

一方、第1監視処理部242は、例えば図8に示すように第1停止予測位置Ps1が指定領域A1内に侵入するつまり境界線Plimを超えると判断した場合(図5のステップS23でYES)、ステップS24へ処理を移行させる。そして、第1監視処理部242は、ステップS24において、駆動部21に対して停止指令を発行する。停止指令を受けた駆動部21は、制御処理部253から受けた動作指令の内容に係わらず、モータ12を停止させてロボット10を緊急停止させる。そして、安全監視部24は、詳細は図示しないが例えばユーザに対してエラーを報知する等し、その後、一連の制御を終了する(エンド)。 On the other hand, when the first monitoring processing unit 242 determines that the first predicted stop position Ps1 enters the designated area A1, that is, exceeds the boundary line Plim as shown in FIG. 8 (YES in step S23 of FIG. 5). , the process proceeds to step S24. Then, the first monitoring processing unit 242 issues a stop command to the driving unit 21 in step S24. Upon receiving the stop command, the drive unit 21 stops the motor 12 to bring the robot 10 to an emergency stop regardless of the content of the operation command received from the control processing unit 253 . Then, the safety monitoring unit 24 notifies the user of an error, for example, although the details are not shown, and then terminates the series of controls (end).

以上説明した実施形態によれば、ロボット制御装置20は、多関節型のロボット10を駆動制御するロボット制御装置である。ロボット制御装置20は、駆動部21と、制御処理部253と、算出処理部23と、第1予測処理部241と、第1監視処理部242と、第2予測処理部251と、第2監視処理部252と、を備える。 According to the embodiment described above, the robot control device 20 is a robot control device that drives and controls the articulated robot 10 . The robot control device 20 includes a drive unit 21, a control processing unit 253, a calculation processing unit 23, a first prediction processing unit 241, a first monitoring processing unit 242, a second prediction processing unit 251, and a second monitoring unit 241. and a processing unit 252 .

駆動部21は、ロボット10の動作を指令する動作指令を受け取り動作指令に基づいてロボット10を動作させるとともに停止指令を受け取った場合にロボット10を緊急停止させる機能を有する。制御処理部253は、駆動部21に動作指令を発行する制御処理を実行可能である。算出処理部23は、算出処理を実行可能である。算出処理は、ロボット10の現在の姿勢、位置P0、及び速度V0を算出する処理を含む。 The driving unit 21 has a function of receiving an operation command for instructing the operation of the robot 10, operating the robot 10 based on the operation command, and emergency stopping the robot 10 when a stop command is received. The control processing unit 253 can execute control processing for issuing an operation command to the drive unit 21 . The calculation processing unit 23 can execute calculation processing. The calculation processing includes processing for calculating the current posture, position P0, and velocity V0 of the robot 10. FIG.

第1予測処理部241は、第1予測処理を実行可能である。第1予測処理は、ロボット10の現在の姿勢、位置P0、及び速度V0に基づいて、ロボット10の現在の位置P0で停止指令を発行した場合にロボット10が停止する位置である第1停止予測位置Ps1を予測する処理を含む。第1監視処理部242は、第1監視処理を実行可能である。第1監視処理は、予め設定された指定領域A1内に第1停止予測位置Ps1が侵入すると判断した場合に停止指令を駆動部21に発行する処理を含む。 The first prediction processing unit 241 can execute a first prediction process. In the first prediction process, based on the current posture, position P0, and velocity V0 of the robot 10, the first stop prediction is the position at which the robot 10 will stop if a stop command is issued at the current position P0 of the robot 10. It includes the process of predicting the position Ps1. The first monitoring processing unit 242 can execute a first monitoring process. The first monitoring process includes a process of issuing a stop command to the drive unit 21 when it is determined that the first predicted stop position Ps1 will enter the preset designated area A1.

第2予測処理部251は、第2予測処理を実行可能である。第2予測処理は、第1停止予測位置Ps1よりも先の位置となるように調整された第2停止予測位置Ps2を予測する処理を含む。そして、第2監視処理部252は、第2監視処理を実行可能である。第2監視処理は、指定領域A1内に第2停止予測位置Ps2が侵入すると判断した場合にロボット10の速度を現在の速度V0から減速させる減速指令を制御処理部253に発行する処理を含む。 The second prediction processing unit 251 can execute the second prediction processing. The second prediction process includes a process of predicting a second predicted stop position Ps2 adjusted to be ahead of the first predicted stop position Ps1. Then, the second monitoring processing unit 252 can execute the second monitoring processing. The second monitoring process includes a process of issuing a deceleration command to the control processing unit 253 to decelerate the speed of the robot 10 from the current speed V0 when it is determined that the second predicted stop position Ps2 will enter the designated area A1.

これによれば、ロボット制御装置20は、ロボット10が動作している間、緊急停止させるための基準となる第1停止予測位置Ps1を監視するとともに、減速させるための基準となる第2停止予測位置Ps2を監視する。そして、第2停止予測位置Ps2は、第1停止予測位置Ps1に対して先の位置にとなるように設定されている。つまり、第2停止予測位置Ps2は、第1停止予測位置Ps1に対して、ロボット10が停止するまでの距離この場合空走距離に余裕を持って設定されている。そのため、第2停止予測位置Ps2は、第1停止予測位置Ps1に比べて、指定領域A1内への侵入が先に検知される。そして、ロボット制御装置20は、第2停止予測位置Ps2が指定領域A1内に侵入すると判断した場合には、ロボット10を停止させるのではなく減速させる。 According to this, while the robot 10 is operating, the robot control device 20 monitors the first predicted stop position Ps1 that serves as a reference for an emergency stop, and also monitors the second predicted stop position Ps1 that serves as a reference for deceleration. Monitor position Ps2. The second predicted stop position Ps2 is set to be ahead of the first predicted stop position Ps1. That is, the second predicted stop position Ps2 is set with a margin in the distance until the robot 10 stops, in this case, the idle running distance, with respect to the first predicted stop position Ps1. Therefore, the second predicted stop position Ps2 is detected to enter the designated area A1 earlier than the first predicted stop position Ps1. When the robot controller 20 determines that the second predicted stop position Ps2 will enter the specified area A1, the robot controller 20 decelerates the robot 10 instead of stopping it.

このように、ロボット10を減速させることで、緊急停止させた際の滑走による移動距離を短くすることができ、その結果、ロボット10が指定領域A1に侵入する危険性を低下させることができる。これにより、第1停止予測位置Ps1までもが指定領域A1内に侵入して停止指令が発行されることを回避でき、その結果、ロボット10の動作速度を無駄に制限させたり無駄に停止させたりすることを抑制できる。一方で、ロボット10を減速させたにも係わらず、万一、第1停止予測位置Ps1が指定領域A1内に侵入すると判断された場合には、停止信号を発行してロボット10を緊急停止させる。これらの結果、ロボット10の性能を無駄に制限することなく、かつ、限られた狭いスペースでも安全にロボット10を使用することができる。 By decelerating the robot 10 in this way, it is possible to shorten the moving distance due to sliding when the robot 10 is brought to an emergency stop, and as a result, it is possible to reduce the risk of the robot 10 entering the specified area A1. As a result, it is possible to prevent even the first predicted stop position Ps1 from entering the specified area A1 and issue a stop command. can be suppressed. On the other hand, if it is determined that the first predicted stop position Ps1 will enter the designated area A1 despite the deceleration of the robot 10, a stop signal is issued to bring the robot 10 to an emergency stop. . As a result, the robot 10 can be safely used even in a limited and narrow space without unnecessarily restricting the performance of the robot 10 .

ここで、ロボット10が緊急停止した場合、例えば作業者等がロボット10の周囲の安全を確認したうえでロボット10の動作を復帰させる必要がある。このため、一旦ロボット10が緊急停止してしまうと、ロボット10の復帰に手間と時間がかかる。これに対し、本実施形態によれば、ロボット10を減速させてしまうものの、緊急停止を回避して動作させ続けることができるため、緊急停止の復帰に伴う手間や時間を削減することができる。 Here, when the robot 10 is stopped in an emergency, for example, it is necessary for the operator or the like to confirm the safety around the robot 10 and then restore the operation of the robot 10 . Therefore, once the robot 10 is stopped in an emergency, it takes time and effort to restore the robot 10 . On the other hand, according to the present embodiment, although the robot 10 is decelerated, the robot 10 can continue to operate while avoiding an emergency stop.

また、本実施形態の場合、第1予測処理は、現時点t0から第1予測空走時間tr1の経過後にロボット10の停止のための減速が開始するものとして第1停止予測位置Ps1を予測する処理を含む。また、第2予測処理は、現時点t0から、第1予測空走時間tr1よりも長い時間に設定された第2予測空走時間tr2の経過後にロボット10の停止のための減速が開始するものとして第2停止予測位置Ps2を予測する処理を含む。 Further, in the case of the present embodiment, the first prediction process is a process of predicting the first predicted stop position Ps1 assuming that deceleration for stopping the robot 10 will start after the first predicted free running time tr1 has elapsed from the current time t0. including. In the second prediction process, it is assumed that deceleration for stopping the robot 10 starts after a second predicted idle running time tr2 set longer than the first predicted idle running time tr1 elapses from the current time t0. A process of predicting the second predicted stop position Ps2 is included.

これによれば、例えば第1停止予測位置Ps1と第2停止予測位置Ps2との算出に、同一の減速予測関数Sを用いることができる。その結果、例えば第1停止予測位置Ps1と第2停止予測位置Ps2との算出するためのパラメータの大部分を共通化できるため、第1停止予測位置Ps1と第2停止予測位置Ps2との算出するための設定を簡単なものとすることができる。 According to this, for example, the same deceleration prediction function S can be used to calculate the first predicted stop position Ps1 and the second predicted stop position Ps2. As a result, for example, most of the parameters for calculating the first predicted stop position Ps1 and the second predicted stop position Ps2 can be shared. configuration can be simplified.

ここで、安全監視部24つまり第1予測処理部241及び第1監視処理部242は、ロボット10の緊急停止を担うものであるため、機能安全に関する規格を満たす必要がある。この場合、第2予測処理部251及び第2監視処理部252つまり通常制御部25の機能も、安全監視部24に組み込んで機能安全に関する規格を満たすように構成することも考えられる。すなわち、安全監視部24と通常制御部25とを同一のハードウェアで構成することも考えられる。しかしながら、通常制御部25の機能を安全監視部24に組み込もうとすると、制御処理部253や駆動部21も機能安全に関する規格を満たすようにしなければならず、構成が複雑となって実装コストも増大する。 Here, since the safety monitoring unit 24, that is, the first prediction processing unit 241 and the first monitoring processing unit 242 are responsible for the emergency stop of the robot 10, it is necessary to satisfy the standard regarding functional safety. In this case, the functions of the second prediction processing unit 251 and the second monitoring processing unit 252, that is, the functions of the normal control unit 25, may also be incorporated into the safety monitoring unit 24 so as to satisfy the standard regarding functional safety. That is, it is conceivable that the safety monitoring unit 24 and the normal control unit 25 are configured with the same hardware. However, if the functions of the normal control unit 25 are to be incorporated into the safety monitoring unit 24, the control processing unit 253 and the driving unit 21 must also meet the standards regarding functional safety, which complicates the configuration and increases the implementation cost. also increases.

これに対し、本実施形態では、第2予測処理部251及び第2監視処理部252は、ロボット10の緊急停止を担うものではない。また、通常制御部25は、第1停止予測位置Ps1が指定領域A1への侵入することを安全監視部24が検知するよりも先に、第2停止予測位置Ps2の指定領域A1への侵入を検知することができる。そのため、第2予測処理部251及び第2監視処理部252は、機能安全に関する規格を満たす必要がなく非安全系となる通常制御部25に第2予測処理部251及び第2監視処理部252を組み込むことができる。 In contrast, in this embodiment, the second prediction processing unit 251 and the second monitoring processing unit 252 are not responsible for emergency stop of the robot 10 . Further, the normal control unit 25 prevents the second predicted stop position Ps2 from entering the designated area A1 before the safety monitoring unit 24 detects that the first predicted stop position Ps1 enters the designated area A1. can be detected. Therefore, the second prediction processing unit 251 and the second monitoring processing unit 252 do not need to satisfy the standard regarding functional safety, and the second prediction processing unit 251 and the second monitoring processing unit 252 are added to the normal control unit 25 which is a non-safety system. can be incorporated.

このように、本実施形態によれば、ロボット制御装置20は、監視処理部として、第1監視処理を実行可能な第1監視処理部242と、第2監視処理を実行可能な第2監視処理部252と、を有している。この場合、第1監視処理部242第2監視処理部252とは異なるハードウェアで構成されている。そして、第1予測処理部241及び第1監視処理部242は、機能安全に関する規格を満たすように構成されている。これに対し、第2予測処理部251及び第2監視処理部252は、機能安全に関する規格を満たさなくても良い。これによれば、第2予測処理部251及び第2監視処理部252を安全監視部24に組み込む場合に比べて、構成を簡単にでき実装コストの増大を抑制することができる。 As described above, according to the present embodiment, the robot control device 20 includes, as monitoring processing units, the first monitoring processing unit 242 capable of executing the first monitoring process and the second monitoring processing unit capable of executing the second monitoring process. and a portion 252 . In this case, the first monitoring processing unit 242 and the second monitoring processing unit 252 are configured with different hardware. The first prediction processing unit 241 and the first monitoring processing unit 242 are configured so as to satisfy the standard regarding functional safety. On the other hand, the second prediction processing unit 251 and the second monitoring processing unit 252 do not have to satisfy the standard regarding functional safety. According to this, compared with the case where the second prediction processing unit 251 and the second monitoring processing unit 252 are incorporated in the safety monitoring unit 24, the configuration can be simplified and an increase in mounting cost can be suppressed.

(第2実施形態)
第2実施形態について、図9を参照して説明する。本実施形態において、ロボット制御装置20は、第2予測処理部251に換えて、補正処理部254を有している。補正処理部254は、第2予測処理を実行可能である。本実施形態の第2予測処理は、第1予測処理で予測された第1停止予測位置Ps1を補正することによって第2停止予測位置Ps2を予測する処理を含んでいる。補正処理部254は、第1予測処理で予測された第1停止予測位置Ps1を読み取り、その第1停止予測位置Ps1を補正することで第2停止予測位置Ps2を算出する。
(Second embodiment)
A second embodiment will be described with reference to FIG. In this embodiment, the robot control device 20 has a correction processing section 254 instead of the second prediction processing section 251 . The correction processing unit 254 can execute a second prediction process. The second prediction process of the present embodiment includes a process of predicting the second predicted stop position Ps2 by correcting the first predicted stop position Ps1 predicted by the first prediction process. The correction processing unit 254 reads the first predicted stop position Ps1 predicted by the first prediction process, and corrects the first predicted stop position Ps1 to calculate the second predicted stop position Ps2.

すなわち、本実施形態では、減速予測関数Sの計算を安全監視部24でのみ行い、補正処理部254つまり通常制御部25では減速予測関数Sの計算を行わない。この場合、第2停止予測位置Ps2は、下記の式5により表すことができる。そして、式5に上述した式1~式3を代入すると、第2停止予測位置Ps2を下記の式6で表すことができる。この場合、第1予測空走時間tr1と第2予測空走時間tr2との差が十分に小さい、つまり第1減速開始予測位置Pr1と第2減速開始予測位置Pr2との差が大きくなければ、第2停止予測位置Ps2に大きな誤差は生じない。
Ps2=Pr2+S(Pr1,V0)…(式5)
Ps2=Ps1+Pr2-Pr1…(式6)
That is, in this embodiment, the deceleration prediction function S is calculated only by the safety monitoring unit 24, and the correction processing unit 254, that is, the normal control unit 25 does not calculate the deceleration prediction function S. In this case, the second predicted stop position Ps2 can be expressed by Equation 5 below. By substituting Equations 1 to 3 into Equation 5, the second predicted stop position Ps2 can be expressed by Equation 6 below. In this case, if the difference between the first predicted idle running time tr1 and the second predicted idle running time tr2 is sufficiently small, that is, if the difference between the first predicted deceleration start position Pr1 and the second predicted deceleration start position Pr2 is not large, A large error does not occur in the second predicted stop position Ps2.
Ps2=Pr2+S(Pr1, V0) (Formula 5)
Ps2=Ps1+Pr2-Pr1 (Formula 6)

このように、本実施形態によれば、補正処理部254が、第1予測処理で予測された第1停止予測位置Ps1を読み取り、その第1停止予測位置Ps1を補正することで第2停止予測位置Ps2を算出することで、補正処理部254の計算量を低減することができる。すなわち、本実施形態によれば、第2停止予測位置Ps2の算出に伴う通常制御部25の負荷の増大を抑制することができる。 As described above, according to the present embodiment, the correction processing unit 254 reads the first predicted stop position Ps1 predicted in the first prediction process, and corrects the first predicted stop position Ps1 to obtain the second predicted stop position. By calculating the position Ps2, the calculation amount of the correction processing unit 254 can be reduced. That is, according to the present embodiment, it is possible to suppress an increase in the load on the normal control section 25 due to the calculation of the second predicted stop position Ps2.

(その他の実施形態)
なお、本発明は上記し且つ図面に記載した各実施形態に限定されるものではなく、その要旨を逸脱しない範囲で任意に変形、組み合わせ、あるいは拡張することができる。
上記各実施形態で示した数値などは例示であり、それに限定されるものではない。
また、上記各実施形態は、適宜組み合わせることができる。
(Other embodiments)
The present invention is not limited to the embodiments described above and illustrated in the drawings, and can be arbitrarily modified, combined, or expanded without departing from the scope of the invention.
The numerical values and the like shown in each of the above embodiments are examples, and are not limited to them.
Further, the above embodiments can be combined as appropriate.

例えば、安全監視部24と通常制御部25とは、異なるハードウェアで構成することが好ましいが、同一のハードウェアで構成することもできる。また、例えば上述した実施形態では、減速予測関数Sを用いて第1予測処理及び第2予測処理を行ったが、減速予測関数Sを用いずに第1予測処理及び第2予測処理を行うこともできる。減速予測関数Sを用いずに第1予測処理及び第2予測処理を行う方法としては、例えば最悪条件における加速度を線形予測する方法を採用することもできる。これによれば、減速予測関数Sを用いた場合に比べて、予測精度は下がるものの計算量を少なくすることができるため、処理の負荷を低減することができる。 For example, the safety monitoring unit 24 and the normal control unit 25 are preferably configured with different hardware, but they can also be configured with the same hardware. Further, for example, in the above-described embodiment, the first prediction process and the second prediction process are performed using the deceleration prediction function S, but the first prediction process and the second prediction process may be performed without using the deceleration prediction function S. can also As a method of performing the first prediction process and the second prediction process without using the deceleration prediction function S, for example, a method of linearly predicting the acceleration under the worst conditions can be adopted. According to this, compared with the case where the deceleration prediction function S is used, although the prediction accuracy is lowered, the amount of calculation can be reduced, so the processing load can be reduced.

本開示は、実施例に準拠して記述されたが、本開示は当該実施例や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、さらには、それらに一要素のみ、それ以上、あるいはそれ以下、を含む他の組み合わせや形態をも、本開示の範疇や思想範囲に入るものである。 Although the present disclosure has been described with reference to examples, it is understood that the present disclosure is not limited to such examples or structures. The present disclosure also includes various modifications and modifications within the equivalent range. In addition, various combinations and configurations, as well as other combinations and configurations, including single elements, more, or less, are within the scope and spirit of this disclosure.

10…ロボット、20…ロボット制御装置、21…駆動部、23…算出処理部、241…第1予測処理部、242…第1監視処理部、251…第2予測処理部、252…第2監視処理部、253…制御処理部、A1…指定領域、Ps1…第1停止予測位置、Ps2…第2停止予測位置、V0…現在速度、t0…現時点、tr1…第1予測空走時間、tr2…第2予測空走時間 DESCRIPTION OF SYMBOLS 10... Robot 20... Robot control apparatus 21... Driving part 23... Calculation processing part 241... First prediction processing part 242... First monitoring processing part 251... Second prediction processing part 252... Second monitoring Processing unit 253 Control processing unit A1 Specified area Ps1 First predicted stop position Ps2 Second predicted stop position V0 Current speed t0 Present time tr1 First predicted free running time tr2 2nd predicted free running time

Claims (4)

多関節型のロボットを駆動制御するロボット制御装置であって、
前記ロボットの動作を指令する動作指令を受け取り前記動作指令に基づいて前記ロボットを動作させるとともに停止指令を受け取った場合に前記ロボットを緊急停止させる駆動部と、
前記駆動部に前記動作指令を発行する制御処理を実行可能な制御処理部と、
前記ロボットの現在の姿勢、位置、及び速度を算出する算出処理を実行可能な算出処理部と、
前記ロボットの現在の姿勢、位置、及び速度に基づいて、前記ロボットの現在の位置で前記停止指令を発行した場合に前記ロボットが停止する位置である第1停止予測位置を予測する第1予測処理を実行可能な第1予測処理部と、
前記第1停止予測位置よりも先の位置となるように調整された第2停止予測位置を予測する第2予測処理を実行可能な第2予測処理部と、
予め設定された指定領域内に前記第1停止予測位置が侵入すると判断した場合に前記停止指令を前記駆動部に発行する第1監視処理と、前記指定領域内に前記第2停止予測位置が侵入すると判断した場合に前記ロボットの速度を現在の速度から減速させる減速指令を前記制御処理部に発行する第2監視処理と、を実行可能な監視処理部と、
を備えるロボット制御装置。
A robot control device for driving and controlling an articulated robot,
a driving unit that receives an operation command for commanding the operation of the robot, operates the robot based on the operation command, and makes an emergency stop of the robot when a stop command is received;
a control processing unit capable of executing control processing for issuing the operation command to the driving unit;
a calculation processing unit capable of executing calculation processing for calculating the current posture, position, and speed of the robot;
First prediction processing for predicting a first predicted stop position, which is a position at which the robot will stop if the stop command is issued at the current position of the robot, based on the current posture, position, and speed of the robot. a first prediction processing unit capable of executing
a second prediction processing unit capable of executing a second prediction process of predicting a second predicted stop position adjusted to be ahead of the first predicted stop position;
a first monitoring process for issuing the stop command to the driving unit when it is determined that the first predicted stop position will enter a preset specified area; and a second predicted stop position enters the specified area. a monitoring processing unit capable of executing a second monitoring process of issuing a deceleration command to reduce the speed of the robot from the current speed to the control processing unit when it is determined that
A robot controller comprising:
前記第1予測処理は、現時点から第1予測空走時間の経過後に前記ロボットの停止のための減速が開始するものとして前記第1停止予測位置を予測する処理を含み、
前記第2予測処理は、現時点から、前記第1予測空走時間よりも長い時間に設定された第2予測空走時間の経過後に前記ロボットの停止のための減速が開始するものとして前記第2停止予測位置を予測する処理を含む、
請求項1に記載のロボット制御装置。
The first prediction process includes a process of predicting the first predicted stop position assuming that deceleration for stopping the robot will start after a first predicted idling time has elapsed from the current time point,
The second prediction process assumes that deceleration for stopping the robot will start after a second predicted idle running time set to be longer than the first predicted idle running time elapses from the present time. Including processing to predict the predicted stop position,
The robot controller according to claim 1.
前記監視処理部として、前記第1監視処理を実行可能な第1監視処理部と、前記第2監視処理を実行可能な第2監視処理部と、を有し、
前記第1予測処理部及び前記第1監視処理部は、機能安全に関する規格を満たすように構成され、
前記第2予測処理部及び前記第2監視処理部は、前記機能安全に関する規格を満たさないように構成されている、
請求項1又は2に記載のロボット制御装置。
a first monitoring processing unit capable of executing the first monitoring process and a second monitoring processing unit capable of executing the second monitoring process as the monitoring processing unit;
The first prediction processing unit and the first monitoring processing unit are configured to satisfy standards related to functional safety,
The second prediction processing unit and the second monitoring processing unit are configured not to satisfy the functional safety standard,
The robot controller according to claim 1 or 2.
前記第2予測処理は、前記第1予測処理で算出された前記第1停止予測位置を補正することによって前記第2停止予測位置を予測する処理を含む、
請求項1から3のいずれか一項に記載のロボット制御装置。
The second prediction process includes a process of predicting the second predicted stop position by correcting the first predicted stop position calculated in the first prediction process.
The robot control device according to any one of claims 1 to 3.
JP2021030367A 2021-02-26 2021-02-26 Robot Control Device Active JP7488474B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021030367A JP7488474B2 (en) 2021-02-26 2021-02-26 Robot Control Device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021030367A JP7488474B2 (en) 2021-02-26 2021-02-26 Robot Control Device

Publications (2)

Publication Number Publication Date
JP2022131424A true JP2022131424A (en) 2022-09-07
JP7488474B2 JP7488474B2 (en) 2024-05-22

Family

ID=83153068

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021030367A Active JP7488474B2 (en) 2021-02-26 2021-02-26 Robot Control Device

Country Status (1)

Country Link
JP (1) JP7488474B2 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6309990B2 (en) 2016-03-24 2018-04-11 ファナック株式会社 Robot system for controlling a robot composed of a plurality of mechanism units, the mechanism unit, and a robot control apparatus
JP6603255B2 (en) 2017-03-13 2019-11-06 ファナック株式会社 Robot system and robot control method

Also Published As

Publication number Publication date
JP7488474B2 (en) 2024-05-22

Similar Documents

Publication Publication Date Title
US10011017B2 (en) Industrial robot system and control method thereof
JP4817084B2 (en) Motor drive system and motor control device
JP5218524B2 (en) Robot system and robot operation restriction method
US10442085B2 (en) Production system for performing cooperative work by operator and robot
EP2783798B1 (en) Robot system and method for controlling robot system
EP2042278B1 (en) Robot controller for halting a robot based on the speed of a robot hand portion
US7102311B2 (en) Drive control method and drive controller
KR102418451B1 (en) Robot control system
US20190001504A1 (en) Method For Detecting A Collision Of A Robot Arm With An Object, And A Robot With A Robot Arm
US20200171661A1 (en) Method for transmitting information in controller and method for detecting abnormality in encoder
EP2783800A2 (en) Robot system and method for controlling robot system
US20160089787A1 (en) Robot controller
JP6729773B2 (en) Robot controller and robot system using the same
JP2018103345A (en) Robot system
CN110919627A (en) Robot control method and control device
JP6447141B2 (en) Robot emergency stop method, robot control device
JP7420015B2 (en) Control device and control method
JP2022131424A (en) Robot control device
JP4258718B2 (en) Robot controller
JP3327205B2 (en) Robot control method and device
US11345035B2 (en) Control system of industrial robot
US20240123619A1 (en) Control device, control system, control method, and program
CN111958583B (en) Robot control device, robot system, and robot control method
US20240272606A1 (en) Control device and control system
CN118682743A (en) Control method, robot system, and computer program product

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230821

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240327

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: 20240409

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240422

R150 Certificate of patent or registration of utility model

Ref document number: 7488474

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150