JP2006048231A - Controller and computer program - Google Patents

Controller and computer program Download PDF

Info

Publication number
JP2006048231A
JP2006048231A JP2004225774A JP2004225774A JP2006048231A JP 2006048231 A JP2006048231 A JP 2006048231A JP 2004225774 A JP2004225774 A JP 2004225774A JP 2004225774 A JP2004225774 A JP 2004225774A JP 2006048231 A JP2006048231 A JP 2006048231A
Authority
JP
Japan
Prior art keywords
task
execution
executed
robot
control
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
JP2004225774A
Other languages
Japanese (ja)
Other versions
JP4442358B2 (en
Inventor
Noritaka Nishiyama
典孝 西山
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 JP2004225774A priority Critical patent/JP4442358B2/en
Publication of JP2006048231A publication Critical patent/JP2006048231A/en
Application granted granted Critical
Publication of JP4442358B2 publication Critical patent/JP4442358B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • General Factory Administration (AREA)
  • Programmable Controllers (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a controller for constructing a system for integrally controlling a plurality of control object equipment including one or more industrial robots. <P>SOLUTION: A multi-task OS is mounted on a facility controller, and a system task group operating on the OS is preliminarily mounted, and an execution management task configuring the task group executes and manages a robot management task group and PLC processing task being a user program for operation so that it is possible to integrally control a conveyer, robot and working machine or the like. Then, the execution management task manages the cyclic execution of the user program, and detects time when a series of processing in a PLC processing task is continuously executed, and sets the execution time rate of the PLC processing task to the execution time of the robot management task group as a fixed rate or less within the execution cycle. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、1つ以上の工業用ロボットを含む複数の制御対象機器を統括的に制御するための制御装置、及びその制御装置に搭載されるシステムタスク群としてのコンピュータプログラムに関する。   The present invention relates to a control device for comprehensively controlling a plurality of control target devices including one or more industrial robots, and a computer program as a system task group mounted on the control device.

図7は、コンベアによって搬送されるワークを工業用ロボットを用いて加工する生産ライン1の一構成例を示す斜視図である。直線状のコンベア2は、行き用のコンベア2F,戻り用のコンベア2Bの2本からなり、行き用のコンベア2Fの途中部位にロボット3及び加工機4が配置されている。そして、ロボット3の僅かに上流には、パレット検出用のセンサ6が配置されている。また、加工機4の下流側隣には、ワーク供給装置7が配置されている。   FIG. 7 is a perspective view illustrating a configuration example of the production line 1 that processes a workpiece conveyed by a conveyor using an industrial robot. The linear conveyor 2 is composed of two conveyors, an outward conveyor 2F and a return conveyor 2B, and the robot 3 and the processing machine 4 are arranged in the middle of the outgoing conveyor 2F. A pallet detection sensor 6 is disposed slightly upstream of the robot 3. A work supply device 7 is arranged next to the downstream side of the processing machine 4.

上記構成における加工処理の流れを概略的に説明する。
(0)作業者によって生産ライン1の起動ボタンが操作されると、初期化処理として、各部に配置されている図示しないセンサの入力信号が参照され、安全状態がチェックされると共に、各ユニットにおけるアクチュエータなどの原位置が確認される。それらがOKであれば、電源やエアなどの供給が開始されてコンベア2が起動される。すると、コンベア2Fの上流側より、パレット8に載置されたワーク9が前工程より供給される。
(1)パレット8が、コンベア2F上を搬送され所定位置に到達したことがセンサ6により検出される。
(2)すると、ロボット3のハンドがワーク9上に移動して当該ワーク9を把持し、上昇させる。
(3)ロボット3は加工機4に問合せを行い、「投入OK」の応答があれば、把持したワーク9を加工機4の投入位置に移動させ、一旦ハンド切替えを行うと加工機4による加工済みのワーク9を把持し、再びハンド切替えを行って未加工のワーク9を投入位置に投入する。
(4)続いて、ロボット3は、加工済みのワーク9をコンベア2Fの下流側に移動させ、パレット8に載置する。尚、パレット8は、コンベア2Fの上流側と下流側との間を、図示しないリフタを介してコンベア2Fの下方側を移動して移送されるようになっている。
(5)次に、ロボット3は、ワーク供給装置7にハンドを移動させて当該装置7より供給される別のワーク10をチャックすると、(4)のパレット位置まで移動させ、加工済みのワーク9にワーク10を組み付ける。
(6)そして、コンベア2F上のワークストッパを解除して、組付け後のワーク11が載置されたパレット8を下流側に搬出する。
その後、下流側においていつかの工程が実施された後、パレット8は戻り用のコンベア2Bに乗せ替えられて上流側に搬送される。
The flow of processing in the above configuration will be schematically described.
(0) When the start button of the production line 1 is operated by the worker, as an initialization process, input signals of sensors (not shown) arranged in the respective parts are referred to, the safety state is checked, and each unit The original position of the actuator etc. is confirmed. If they are OK, supply of power, air, etc. is started and the conveyor 2 is started. Then, the work 9 placed on the pallet 8 is supplied from the upstream side from the upstream side of the conveyor 2F.
(1) The sensor 6 detects that the pallet 8 has been conveyed on the conveyor 2F and has reached a predetermined position.
(2) Then, the hand of the robot 3 moves onto the work 9 to grip and raise the work 9.
(3) The robot 3 makes an inquiry to the processing machine 4, and if there is a response of “input OK”, the gripped work 9 is moved to the input position of the processing machine 4, and once the hand is switched, the processing by the processing machine 4 is performed. The already-worked workpiece 9 is gripped, the hand is switched again, and the unmachined workpiece 9 is loaded into the loading position.
(4) Subsequently, the robot 3 moves the processed workpiece 9 to the downstream side of the conveyor 2F and places it on the pallet 8. The pallet 8 is moved between the upstream side and the downstream side of the conveyor 2F by moving below the conveyor 2F via a lifter (not shown).
(5) Next, when the robot 3 moves the hand to the workpiece supply device 7 and chucks another workpiece 10 supplied from the device 7, the robot 3 moves the workpiece to the pallet position of (4), and the processed workpiece 9. Assemble work 10 to
(6) Then, the work stopper on the conveyor 2F is released, and the pallet 8 on which the work 11 after assembly is placed is carried downstream.
Thereafter, after some process is performed on the downstream side, the pallet 8 is transferred to the return conveyor 2B and conveyed to the upstream side.

上記のような構成においては、ロボット3の他に、コンベア2や加工機4等も同時に制御する必要がある。また、各設備に配置されているセンサ6などによって出力される信号の状態も監視しながら、必要に応じてロボット3やコンベア2などを停止させるなどの制御も必要となる。   In the above configuration, it is necessary to simultaneously control the conveyor 2 and the processing machine 4 in addition to the robot 3. In addition, it is necessary to control the robot 3 and the conveyor 2 to be stopped as necessary while monitoring the state of signals output from the sensors 6 arranged in each facility.

図8は、従来、上記のような生産ライン1について制御を行う制御系の構成を概略的に示すものである。即ち、ロボット3は専用のロボットコントローラ12によって制御され、コンベア2についてはモーションコントローラ13によって制御される。また、加工機4は加工機用制御装置14によって制御される。
そして、これらのコントローラ12〜14は、プログラマブルロジックコントローラ(PLC)15によって統括的に制御されるようになっている。また、PLC15には、加工状態などを画像で監視するためのカメラ16及びそのカメラ16を制御する視覚コントローラ17や、各種のセンサ6などによって入力される信号及びバルブ等へ出力される信号なども与えられている。また、図8と同様の制御系の構成は、例えば特許文献1に開示されている。
FIG. 8 schematically shows the configuration of a control system that conventionally controls the production line 1 as described above. That is, the robot 3 is controlled by a dedicated robot controller 12, and the conveyor 2 is controlled by a motion controller 13. The processing machine 4 is controlled by a processing machine control device 14.
These controllers 12 to 14 are generally controlled by a programmable logic controller (PLC) 15. Also, the PLC 15 includes a camera 16 for monitoring the processing state and the like with an image, a visual controller 17 for controlling the camera 16, signals input by various sensors 6, signals output to valves, and the like. Is given. A configuration of a control system similar to that of FIG. 8 is disclosed in, for example, Patent Document 1.

近年、製品コスト低減のため、設備コスト低減が強く望まれており、部品費低減や設計・調整工数の低減が必須となっている。コスト低減のためには、ハード的アプローチとして使用部品点数の削減(例えばPLC、視覚装置、操作盤の統合など)が有効である。また、ソフト的アプローチとしては、ソフトの汎用化・標準化(例えば、言語の統一など)が有効である。更に、システム的アプローチとしては、設備内で最も汎用的な装置であるロボットに機能を集約して設備をシンプル化することが有効であろう。   In recent years, in order to reduce product cost, reduction of equipment cost is strongly desired, and reduction of parts cost and design / adjustment man-hours are indispensable. In order to reduce costs, it is effective to reduce the number of parts used (for example, integration of PLC, visual device, operation panel, etc.) as a hardware approach. As a software approach, generalization and standardization of software (for example, language unification) is effective. Furthermore, as a system approach, it would be effective to simplify the facility by consolidating functions into the robot, which is the most general-purpose device in the facility.

その1つのアプローチとして、特許文献1に開示されているように、PLC機能の一部である通信管理機能をロボットコントローラに持たせることで、イニシャルコスト低減を実現する手段がある。しかし、より理想的な構成としては、PLC本来の機能である設備制御機能をロボットコントローラに取り込むことが望ましい。
特開2001−92517号公報,図4参照
As one of the approaches, as disclosed in Patent Document 1, there is a means for realizing a reduction in initial cost by providing a robot controller with a communication management function which is a part of the PLC function. However, as a more ideal configuration, it is desirable to incorporate the facility control function, which is an original function of the PLC, into the robot controller.
See Japanese Patent Laid-Open No. 2001-92517, FIG.

ロボットコントローラにPLCの設備管理・制御機能を搭載することを想定すると、ロボットの動作と設備管理・制御動作とを並列的に実行させる必要がある。そして、近年、ロボットに求められる機能は多様化しており、並列的に実行しなければならない処理が増加している。そのため、ロボットコントローラにはマルチタスクOS(オペレーティングシステム)が搭載されているものが増加しており、複数の処理タスクを並列に実行可能な環境が整ってきている。   Assuming that the PLC equipment management / control function is installed in the robot controller, it is necessary to execute the robot operation and the equipment management / control operation in parallel. In recent years, functions required for robots have been diversified, and processing that must be performed in parallel has increased. For this reason, robot controllers equipped with a multi-task OS (operating system) are increasing, and an environment capable of executing a plurality of processing tasks in parallel has been established.

そして、上述したように制御機能の集約を図るためには、ロボットコントローラに搭載されているマルチタスクOS上において、ロボット動作用のタスクと設備管理・制御用のタスクとを実行させるように構成することが最適であると考える。
ここで、設備管理・制御用タスクの内容を大別すると、一般に、以下の2つに分けることができる。1つは、設備全体が一元管理される自動モードにおいて、シーケンシャルに処理される設備動作タスク、もう1つは、設備のモードが上記自動モード、また、設備の各部を個別的に動作させる各個モードの如何にかかわらず、常時安全監視や異常処理、各動作タスクの起動条件の監視などを行う設備管理タスクである。
In order to consolidate the control functions as described above, a task for robot operation and a task for equipment management / control are configured to be executed on the multitask OS installed in the robot controller. I think that is the best.
Here, the contents of the facility management / control tasks can be roughly divided into the following two types. One is an equipment operation task that is sequentially processed in an automatic mode in which the entire equipment is centrally managed, and the other is an individual mode in which the equipment mode is the automatic mode, and each part of the equipment is individually operated. Regardless of the above, it is a facility management task that constantly performs safety monitoring, abnormality processing, monitoring of activation conditions of each operation task, and the like.

このような2種類のタスクを並存させる場合、必要時にのみ実行させれば良い設備動作タスクと、常時実行させなければならない設備管理タスクとをどのように調和させてシステムを成立させるかが重要となる。尚、前提条件として、設備管理タスクは、設備動作タスクよりも優先的に実行させる必要がある。尚、設備動作タスクをロボットコントローラに組み込むとすれば、ロボットの管理タスクも同じレベルのタスクとしてこれらの一部に含まれることになる。   When coexisting these two types of tasks, it is important to harmonize equipment operation tasks that should be executed only when necessary and equipment management tasks that must be executed at all times to establish a system. Become. As a precondition, the equipment management task needs to be executed with priority over the equipment operation task. If the equipment operation task is incorporated in the robot controller, the robot management task is included as a task at the same level.

通常、マルチタスク環境下では、優先的に実行させたいタスクにはその生成時に高い優先度を設定する。すると、生成された各タスクは、マルチタスクOSによって自動的に優先度順に実行されることになる。ここで問題となるのは、システムタスク以外のタスクを生成させるのは、コントローラを供給するメーカではなく、そのコントローラを使用するユーザが作成したプログラムによることである。即ち、ユーザプログラムがどのような処理になるのか、また、どのくらいの量になるのかはユーザによってまちまちである。   Normally, in a multitask environment, a high priority is set at the time of generation of a task to be executed with priority. Then, the generated tasks are automatically executed in order of priority by the multitask OS. The problem here is that the task other than the system task is generated not by the manufacturer that supplies the controller but by the program created by the user who uses the controller. That is, the type of processing performed by the user program and the amount of the program vary depending on the user.

そのため、単純に設備管理タスクの優先度を高く設定するだけでは、その設備管理タスクの処理時間(プログラム量)が増大すると、設備動作タスクの処理時間が圧迫され、CPUによる処理時間が十分に与えられず、システムとして成立しなくなる危険性が高い。一方、これらのタスクの優先度を同じレベルに設定すると、例えば設備動作タスクの処理時間が増大すれば設備管理タスクの処理時間が圧迫されるため、同様の危険性がある。   Therefore, simply setting a higher priority for the equipment management task will increase the processing time of the equipment management task and increase the processing time of the equipment operation task, giving sufficient processing time by the CPU. There is a high risk that it will not be established as a system. On the other hand, if the priority of these tasks is set to the same level, for example, if the processing time of the equipment operation task increases, the processing time of the equipment management task is compressed, so there is a similar risk.

本発明は上記事情に鑑みてなされたものであり、その目的は、1つ以上の工業用ロボットを含む複数の制御対象機器を統括的に制御するシステムを構築可能とする制御装置、及びその制御装置に搭載され、前記制御を適切に実行可能とするためのコンピュータプログラムを提供することにある。   The present invention has been made in view of the above circumstances, and a purpose thereof is a control device capable of constructing a system for comprehensively controlling a plurality of control target devices including one or more industrial robots, and control thereof. An object of the present invention is to provide a computer program that is mounted on an apparatus and that can appropriately execute the control.

請求項1記載の制御装置によれば、マルチタスクOSを搭載し、そのOS上でユーザによって作成されるユーザプログラム(アプリケーションプログラム)を動作させることで、1つ以上の工業用ロボットを含む複数の制御対象機器を統括的に制御する。そして、マルチタスクOSとユーザプログラムとの間に位置するようなシステムタスク群を用意する。このシステムタスク群は、制御装置をユーザに供給するメーカによって作成され、予め搭載された状態で製品としての制御装置が出荷される。   According to the control device of claim 1, a multitask OS is installed, and a plurality of programs including one or more industrial robots are operated by operating a user program (application program) created by the user on the OS. Centrally control the target device. Then, a system task group that is located between the multitask OS and the user program is prepared. The system task group is created by a maker that supplies the control device to the user, and the control device as a product is shipped in a preinstalled state.

そして、そのシステムタスク群には、少なくとも、ユーザプログラムを周期的に実行させるように管理して、統括制御タスクにおける一連の処理が連続的に実行される時間を検出し、前記ロボット管理タスクの実行時間に対する前記統括制御タスクの実行時間比率が、前記実行周期内において予め定めた一定の割合以下となるように制御する実行管理タスクを用意する。   In the system task group, at least the user program is managed so as to be executed periodically, the time during which a series of processing in the overall control task is continuously executed is detected, and the robot management task is executed. An execution management task is prepared for controlling the execution time ratio of the overall control task with respect to time to be equal to or less than a predetermined ratio within the execution cycle.

即ち、ユーザによって作成される統括制御タスクの実行時間が様々に異なる場合でも、実行管理タスクにより、統括制御タスクとロボット管理タスクとの実行時間比率は周期的に一定の割合以下となるように管理される。従って、各制御対象機器を動作させて本来の処理動作を随時進めながら、その動作状態を監視して安全管理を図ることができる。そして、斯様なソフトウエア構成を採用すれば、ユーザは、ユーザプログラムを作成する際に、ロボット管理タスクと統括制御タスクとの優先順位をどのように設定するかについては意識する必要がなくなり、プログラムの作成をより簡単に行うことができる。また、PLC本来の機能を取り込み、複数の制御対象機器を制御する装置が1つに統合されることで、コストを低下させることができると共に、1つ以上の工業用ロボットを含む複数の制御対象機器によって構成されるシステムの汎用性をより高めることができる。   In other words, even if the execution time of the overall control task created by the user varies, the execution management task manages the execution time ratio between the overall control task and the robot management task so that it is periodically below a certain ratio. Is done. Accordingly, it is possible to perform safety management by monitoring the operation state while operating each control target device and proceeding with the original processing operation as needed. And if such a software configuration is adopted, the user does not need to be aware of how to set the priority order of the robot management task and the overall control task when creating the user program, You can create a program more easily. Further, by integrating the functions inherent in the PLC and controlling a plurality of control target devices into one, the cost can be reduced, and a plurality of control targets including one or more industrial robots. The versatility of the system constituted by the devices can be further enhanced.

請求項2記載の制御装置によれば、実行管理タスクは、実行周期を所定の単位周期に基づいて設定する。そして、単位周期内では、統括制御タスクとロボット管理タスクとの実行時間比率を一定の割合以下に実現できない場合は、実行周期を単位周期の倍数で設定するように延長する。従って、ユーザによってプログラミングされた統括制御タスクの実際の実行時間が長い場合でも、その長さに応じて、実行時間比率が一定の割合以下となるように実行周期を延長することができる。   According to the control device of the second aspect, the execution management task sets the execution cycle based on the predetermined unit cycle. If the execution time ratio between the overall control task and the robot management task cannot be realized below a certain ratio within the unit period, the execution period is extended to be set as a multiple of the unit period. Therefore, even when the actual execution time of the overall control task programmed by the user is long, the execution cycle can be extended so that the execution time ratio becomes a certain ratio or less according to the length.

請求項3記載の制御装置によれば、実行管理タスクは、統括制御タスクの実行時間が上限を超えた場合は当該タスクの起動を停止させる。即ち、統括制御タスクの実行時間が余りにも長い場合は、ユーザのプログラミングにミスがあるか、プログラムの設計仕様自体に誤りがある可能性が高い。従って、そのようなケースでは、ユーザプログラムの動作を停止させることで、ユーザにプログラムの内容を再検討させることが可能となる。   According to the control device of the third aspect, the execution management task stops the activation of the task when the execution time of the overall control task exceeds the upper limit. That is, when the execution time of the overall control task is too long, there is a high possibility that there is a mistake in the user's programming or an error in the program design specification itself. Therefore, in such a case, by stopping the operation of the user program, the user can review the contents of the program.

請求項4記載の制御装置によれば、単位周期の冒頭においては工業用ロボットを動作させるためのサーボ処理が優先的に実行され、実行管理タスクは、そのサーボ処理が実行された後に統括制御タスクを実行させ、統括制御タスクの実行後にロボット管理タスクを実行させる。即ち、実行周期が単位周期の倍数で延長された場合であっても、工業用ロボットのサーボ処理は単位周期毎に確実に実行される。従って、ロボットの動作が途中で滞るようなことはなく、単位周期毎に確実に動作を進めることができる。   According to the control device of the fourth aspect, servo processing for operating the industrial robot is preferentially executed at the beginning of the unit cycle, and the execution management task is executed after the servo processing is executed. And the robot management task is executed after the overall control task is executed. That is, even when the execution cycle is extended by a multiple of the unit cycle, the servo processing of the industrial robot is reliably executed for each unit cycle. Therefore, the operation of the robot does not stagnate in the middle, and the operation can be reliably advanced for each unit cycle.

以下、本発明の一実施例について図1乃至図6を参照して説明する。尚、図7及び図8と同一部分には同一符号を付して説明を省略し、以下異なる部分についてのみ説明する。図5は、図8相当図であり、図7に示す生産ライン1と同様の構成を制御対象機器として、それらを本発明の設備制御装置21によって制御する場合の構成を機能ブロック図で示すものである。即ち、設備制御装置21は、コントローラ12,13,17及びPLC15に代わり、生産ライン1を構成するコンベア2,ロボット3,カメラ16などを制御対象機器として統括的に制御するコントローラである。   An embodiment of the present invention will be described below with reference to FIGS. 7 and 8 are denoted by the same reference numerals, description thereof is omitted, and only different portions will be described below. FIG. 5 is a diagram corresponding to FIG. 8, and shows a configuration in the case where the same configuration as that of the production line 1 shown in FIG. 7 is controlled as equipment to be controlled by the equipment control device 21 of the present invention in a functional block diagram. It is. That is, the equipment control device 21 is a controller that comprehensively controls the conveyor 2, the robot 3, the camera 16 and the like constituting the production line 1 as control target devices instead of the controllers 12, 13, 17 and the PLC 15.

また、図6は、設備制御装置21の概略構成をソフトウエア的な構成を中心として概念的に示すものである。設備制御装置21は、具体的には図示しないが、CPUやメモリ,ハードディスク,I/Oなどからなるハードウエア22を備えて構成されている。また、ソフトウエア的な構成として、マルチタスクOS(オペレーティングシステム)23を備えている。マルチタスクOS23は、ハードウエア22のCPUによって実行され、ユーザによって作成されるユーザプログラムとハードウエア22との間を仲介するように、設備制御装置21の資源管理を行うものである。   FIG. 6 conceptually shows a schematic configuration of the equipment control device 21 with a software configuration as a center. Although not specifically illustrated, the facility control device 21 is configured to include hardware 22 including a CPU, a memory, a hard disk, an I / O, and the like. In addition, a multitask OS (operating system) 23 is provided as a software configuration. The multitask OS 23 is executed by the CPU of the hardware 22 and performs resource management of the equipment control device 21 so as to mediate between the user program created by the user and the hardware 22.

そして、設備制御装置21を製品として出荷するメーカは、マルチタスクOS23上で動作するアプリケーションプログラムの1つとしてシステムタスク群26を作成し、そのシステムタスク群26を予め搭載した状態で設備制御装置21をユーザに供給するようになっている。システムタスク群26は、ユーザが設備制御装置21上でユーザプログラムを動作させ、様々な制御対象機器を制御する場合において、共通する基本的な制御内容(例えば、設備制御装置21のマンマシンインターフェイス部分や、外部機器との通信処理に関するものなど)を実行して処理させるために搭載される。   Then, a manufacturer that ships the equipment control device 21 as a product creates a system task group 26 as one of application programs that operate on the multitask OS 23, and the equipment control device 21 is installed with the system task group 26 mounted in advance. Is supplied to the user. The system task group 26 is a basic basic control content (for example, a man-machine interface portion of the equipment control device 21) when the user operates a user program on the equipment control device 21 to control various devices to be controlled. Or related to communication processing with external devices).

ユーザは、ユーザプログラムとして、ロボット管理タスク群24,PLC処理タスク(統括制御タスク)25を記述作成し、それらを設備制御装置21のハードディスクなどにインストールすることで、マルチタスクOS23並びにシステムタスク群26上において、ユーザプログラムをハードウエア22のCPUに実行させるようになっている。尚、コンピュータプログラムである各タスクに基づく処理を実際に実行する主体は、ハードウエア22のCPUであるが、何れのタスク群又はタスクが動作しているのかを明確にする都合上、以下においては各タスクが処理の主体であるように記述を行なう。   The user creates and describes a robot management task group 24 and a PLC processing task (overall control task) 25 as user programs, and installs them on the hard disk of the equipment control device 21 to thereby create a multitask OS 23 and a system task group 26. In the above, the CPU of the hardware 22 executes the user program. Note that the subject that actually executes the processing based on each task, which is a computer program, is the CPU of the hardware 22, but for the sake of clarifying which task group or task is operating, in the following, A description is made so that each task is the subject of processing.

ロボット管理タスク群24は、ロボット3を制御するための複数のタスクで構成されている。そして、PLC処理タスク25は、従来のPLC15としての機能をソフトウエア的に実現すると共に、ロボット3以外の制御対象機器の動作を管理する機能を有している。即ち、コンベア2を制御するための搬送管理部28,加工機4を制御装置14を介して制御するための加工機管理部29,視覚コントローラ17に代わりカメラ16を制御する視覚管理部30などを備えている。   The robot management task group 24 includes a plurality of tasks for controlling the robot 3. The PLC processing task 25 has a function of managing the operation of the control target device other than the robot 3 while realizing the function as the conventional PLC 15 in software. That is, a conveyance management unit 28 for controlling the conveyor 2, a processing machine management unit 29 for controlling the processing machine 4 via the control device 14, a visual management unit 30 for controlling the camera 16 instead of the visual controller 17, and the like. I have.

また、PLC処理タスク25は、設備監視処理部32,設備全体制御処理部33なども備えている。設備監視処理部32は、カメラ16の画像信号をパターン認識したり、各種センサ6などによって入力されるセンサ信号を参照することで、各制御対象機器の動作状態などを監視している。設備全体制御処理部33は、ロボット管理タスク群24並びにその他の管理部28〜30の実行を制御する。そして、前述したように生産ライン1に人が近付いた場合や、或いは設備の一部が破損する可能性がある状況が発生した場合には、設備監視処理部32がその状態を検知し、設備全体制御処理部33が生産ライン1の動作を安全側に移行させるように制御する。ここで、「安全側に移行させるように制御する」とは、生産ライン1の動作の一部若しくは全てを停止させたり、或いは、動作速度を低減させたりすることをいう。   The PLC processing task 25 also includes an equipment monitoring processing unit 32, an overall equipment control processing unit 33, and the like. The equipment monitoring processing unit 32 monitors the operation state of each control target device by pattern recognition of the image signal of the camera 16 and referring to sensor signals input by various sensors 6 and the like. The facility overall control processing unit 33 controls the execution of the robot management task group 24 and the other management units 28 to 30. As described above, when a person approaches the production line 1 or when a situation occurs in which a part of the equipment may be damaged, the equipment monitoring processor 32 detects the state, and the equipment The overall control processing unit 33 performs control so that the operation of the production line 1 is shifted to the safe side. Here, “control to shift to the safe side” means that part or all of the operation of the production line 1 is stopped or the operation speed is reduced.

そして、PLC処理タスク25は、ラダー言語やSFC(Sequential Function Chart),ST(Structured Text)言語など、従来のPLC15などをプログラミングする際に使用されてきた言語、又はそれらの組み合わせによってシーケンシャルなプログラムとして記述されている。また、PLC処理タスク25を実行させるには、使用言語に対応してマルチタスクOS23上で動作するインタプリタを介して動作するようになっている。   The PLC processing task 25 is a sequential program according to a language used when programming a conventional PLC 15, such as a ladder language, SFC (Sequential Function Chart), ST (Structured Text) language, or a combination thereof. is described. Further, in order to execute the PLC processing task 25, the PLC processing task 25 is operated via an interpreter operating on the multitask OS 23 corresponding to the language used.

次に、本実施例の作用について図1乃至図4も参照して説明する。図2は、設備制御装置21に搭載されたシステムタスク群26の一部をなす、実行管理タスク34によって実行されるタスク実行管理制御の内容を示すフローチャートである。実行管理タスク34はこのフローチャートに基づいて動作することで、ユーザプログラムとして作成されたPLC処理タスク25及びロボット管理タスク群24の実行を管理する。
尚、図2の制御を実行するための前提として、ハードウエア22は、図4に示すように8ms周期でタイマ割り込みを発生させるようになっており、実行管理タスク34は、そのタイマ割込みが発生する毎に実行されるようになっている。
Next, the operation of this embodiment will be described with reference to FIGS. FIG. 2 is a flowchart showing the contents of the task execution management control executed by the execution management task 34 that forms a part of the system task group 26 mounted on the equipment control device 21. The execution management task 34 operates based on this flowchart, thereby managing the execution of the PLC processing task 25 and the robot management task group 24 created as a user program.
As a premise for executing the control of FIG. 2, the hardware 22 generates a timer interrupt at a cycle of 8 ms as shown in FIG. 4, and the execution management task 34 generates the timer interrupt. It will be executed every time.

また、図3は、PLC処理タスク25による処理内容を示すフローチャートである。先ず、この図3について説明する。PLC処理タスク25は、後述するように実行管理タスク34によってセットされるPLC停止フラグがセット(ON)されているか否かを判断し(ステップB1)、セットされていれば(「YES」)そのまま処理を終了し、セットされていなければ(「NO」)、やはり実行管理タスク34によってPLC処理タスク25の起動が許可されるまで待機する(ステップB2)。   FIG. 3 is a flowchart showing the processing contents by the PLC processing task 25. First, FIG. 3 will be described. As will be described later, the PLC processing task 25 determines whether or not the PLC stop flag set by the execution management task 34 is set (ON) (step B1), and if it is set (“YES”), it remains as it is. The process ends, and if not set (“NO”), the process waits until the execution management task 34 permits the activation of the PLC process task 25 (step B2).

起動が許可されると(ステップB2,「YES」)、PLC処理タスク25は、開始処理としてPLC処理の開始時刻を記憶する(ステップB3)。それから、I/O入力処理(ステップB3),命令実行処理(ステップB4),I/O出力処理(ステップB5)を順次実行する。I/O入力処理は、設備監視を行うために必要な入力情報をハードウエア22を介して得るための処理であり、命令実行処理は、前記入力情報に基づいて、各管理部28〜30が夫々の制御対象機器に命令を実行させる処理である。そして、I/O出力処理は、命令実行処理の結果、管理部28〜30に対して必要な指令をハードウエア22を介して出力するなどの処理である。そしてこれらステップB3〜B5における処理は、PLC処理の1スキャン(入力・実行・出力)に対応する。   When the activation is permitted (step B2, “YES”), the PLC processing task 25 stores the start time of the PLC processing as the start processing (step B3). Then, I / O input processing (step B3), instruction execution processing (step B4), and I / O output processing (step B5) are sequentially executed. The I / O input process is a process for obtaining input information necessary for equipment monitoring via the hardware 22, and the instruction execution process is performed by each of the management units 28 to 30 based on the input information. This is a process for causing each control target device to execute a command. The I / O output process is a process of outputting necessary instructions to the management units 28 to 30 via the hardware 22 as a result of the instruction execution process. The processes in steps B3 to B5 correspond to one scan (input / execution / output) of the PLC process.

続いて、PLC処理タスク25は、終了処理として、PLC処理の終了時刻である現在時刻よりステップB3で記憶した開始時刻を減算し、PLC処理の「実行時間」を得る(ステップB7)。そして、その実行時間が、限界時間を超えているか否かを判断する(ステップB8)。限界時間を超えていなければ(「NO」)前記実行時間をソフトPLC処理実行時間としてセットし(ステップB9)、ステップB1に戻る。   Subsequently, the PLC processing task 25 subtracts the start time stored in step B3 from the current time, which is the end time of the PLC processing, as the end processing, and obtains the “execution time” of the PLC processing (step B7). Then, it is determined whether or not the execution time exceeds the limit time (step B8). If the time limit has not been exceeded ("NO"), the execution time is set as the soft PLC process execution time (step B9), and the process returns to step B1.

一方、ステップB8において限界時間を超えている場合は(「YES」)、PLC処理タスク25のプログラム自体が異常か、若しくはハードウエア的に異常が発生していると推定されるので、タイムオーバーとして異常処理を行った後(ステップB10)、ステップB9に移行する。   On the other hand, if the time limit is exceeded in step B8 ("YES"), it is estimated that the PLC processing task 25 program itself is abnormal or a hardware abnormality has occurred. After performing the process (step B10), the process proceeds to step B9.

次に、図2について説明する。実行管理タスク34は、上述したように、8ms周期の割り込みが発生すると図2のフローチャートの実行を開始し(スタート)、先ず、ロボット3の軌道生成処理(サーボ処理)を行なう(ステップA1)。ここで、「軌道生成処理」とは、例えばロボット3のアームをA点からB点まで移動させる場合に、それらA−B点間の移動軌跡を描かせるために決定された座標位置に応じて、アームを移動させる処理である。そして、座標位置の計算は、ロボット管理タスク群24の一部であるロボット管理タスク27によって行なわれる。   Next, FIG. 2 will be described. As described above, the execution management task 34 starts execution of the flowchart of FIG. 2 (start) when an interrupt of a period of 8 ms occurs, and first performs trajectory generation processing (servo processing) of the robot 3 (step A1). Here, “trajectory generation processing” refers to, for example, when the arm of the robot 3 is moved from point A to point B, according to the coordinate position determined to draw the movement trajectory between points A and B. This is a process of moving the arm. The calculation of the coordinate position is performed by a robot management task 27 that is a part of the robot management task group 24.

続いて、実行管理タスク34は、図3に示すフローチャートのPLC処理タスク25が実行中(動作中)であるか否かを判断し(ステップA2)、実行中であれば(「YES」)、その時点におけるPLC処理タスク25の動作時間を取得する(ステップA23)。即ち、現在時刻と、図3のフローのステップB3で記憶された開始時刻との差を動作時間とする。そして、その動作時間が限界時間(後述するように、例えば18msに設定される)を超えていれば(ステップA24,「YES」)、タイムオーバーの異常処理を行なうと共に(ステップA25)PLC停止フラグをセット(ON)して(ステップA26)処理を終了する。一方、ステップA24においてPLC処理タスク25の動作時間が限界時間以下であれば(「NO」)そのまま処理を終了する。   Subsequently, the execution management task 34 determines whether or not the PLC processing task 25 in the flowchart shown in FIG. 3 is being executed (operating) (step A2). If it is being executed (“YES”), The operating time of the PLC processing task 25 at that time is acquired (step A23). That is, the difference between the current time and the start time stored in step B3 of the flow of FIG. If the operation time exceeds a limit time (for example, set to 18 ms, as will be described later) (step A24, "YES"), a time over abnormality process is performed (step A25) and the PLC stop flag is set. It is set (ON) (step A26) and the process is terminated. On the other hand, if the operation time of the PLC processing task 25 is equal to or shorter than the limit time in Step A24 ("NO"), the processing is terminated as it is.

また、ステップA2において、PLC処理タスク25が動作中でなければ(「NO」)、実行管理タスク34は、PLC停止フラグがセットされているか否かを判断する(ステップA3)。セットされていれば(「YES」)そのまま処理を終了し、セットされていなければ(「NO」)8ms割り込みの発生回数をカウントするカウンタ(以下、8msカウンタと称す)をインクリメントとする(ステップA4)。そして、ステップB7で得られたPLC処理タスク25の実行時間Tを取得すると(ステップA5)、その実行時間Tが、3msで区切られる何れの区間に属するかを判断する(ステップA6)。実行時間Tが属する区間に応じて、ステップA6より、以下のように分岐する。
区間 ステップ
0ms<T≦3ms A7
3ms<T≦6ms A10
6ms<T≦9ms A12
9ms<T≦12ms A14
12ms<T≦15ms A16
15ms<T≦18ms A18
18ms<T A20
In step A2, if the PLC processing task 25 is not in operation (“NO”), the execution management task 34 determines whether or not the PLC stop flag is set (step A3). If it is set (“YES”), the process is terminated as it is, and if it is not set (“NO”), a counter that counts the number of occurrences of an 8 ms interrupt (hereinafter referred to as 8 ms counter) is incremented (step A4). ). When the execution time T of the PLC processing task 25 obtained in step B7 is acquired (step A5), it is determined to which section the execution time T belongs in 3 ms (step A6). According to the section to which the execution time T belongs, the following branches are made from step A6.
Section step
0ms <T ≦ 3ms A7
3ms <T ≦ 6ms A10
6ms <T ≦ 9ms A12
9ms <T ≦ 12ms A14
12ms <T ≦ 15ms A16
15ms <T ≦ 18ms A18
18ms <T A20

実行時間Tが3ms以下の場合(ステップA7)、実行管理タスク34は、PLC処理タスク25の起動を許可すると(ステップA8)8msカウンタをクリアして(ステップA9)処理を終了する。実行時間Tが3ms<T≦6msの場合(ステップA10)、実行管理タスク34は、8msカウンタの値が「2」の場合に(ステップA11,「YES」)ステップA8に移行し、8msカウンタの値が「2」でなれければ(「NO」)そのまま処理を終了する。   When the execution time T is 3 ms or less (step A7), the execution management task 34 permits the activation of the PLC processing task 25 (step A8), clears the 8ms counter (step A9), and ends the processing. When the execution time T is 3 ms <T ≦ 6 ms (step A10), the execution management task 34 proceeds to step A8 when the value of the 8 ms counter is “2” (step A11, “YES”), and the 8 ms counter If the value cannot be “2” (“NO”), the process is terminated.

そして、他のステップA12,A14,A16,A18のケースでは、夫々、8msカウンタの値が「3」,「4」,「5」,「6」の場合に(ステップA11,A13,A15,A17,A19,「YES」)ステップA8に移行し、夫々の値でなければ(「NO」)そのまま処理を終了する。
また、ステップA20のケースでは、実行時間Tが18msを超えた場合であり、ステップA25,A26と同様に、タイムオーバーの異常処理を行なうと共に(ステップA21)PLC停止フラグをセット(ON)して(ステップA22)処理を終了する。
In other cases of steps A12, A14, A16, and A18, when the values of the 8 ms counter are “3”, “4”, “5”, and “6”, respectively (steps A11, A13, A15, and A17). , A19, “YES”) The process proceeds to step A8, and if it is not the respective value (“NO”), the process is terminated as it is.
In the case of step A20, the execution time T exceeds 18 ms. Similar to steps A25 and A26, the time over abnormality process is performed (step A21) and the PLC stop flag is set (ON) ( Step A22) The process is terminated.

ここで、図1を参照する。図1(a)〜(d)は、図2においてステップA7,A10,A12,A14に分岐して処理を実行した場合に、各タスクの実行状態を示すタイミングチャートである。即ち、何れの処理ケースも8ms割込みの周期を単位としており、その割り込みが発生した冒頭では、何れもロボット3のサーボ処理(軌道生成処理)が実行される。当該サーボ処理の実行時間は1ms以内に規定されている(本実施例では1ms以内であるが、これに限定されるものではない)。そして、図2のフローに従って処理を行なう結果、サーボ処理:PLC処理タスク:ロボット管理タスク群の実行時間比率は、最大で1:3:4となるように設定される。   Reference is now made to FIG. FIGS. 1A to 1D are timing charts showing the execution state of each task when processing is executed after branching to steps A7, A10, A12, and A14 in FIG. In other words, each processing case has an 8 ms interrupt cycle as a unit, and at the beginning of the interrupt, the servo processing (trajectory generation processing) of the robot 3 is executed. The execution time of the servo processing is defined within 1 ms (in this embodiment, it is within 1 ms, but is not limited to this). As a result of performing the processing according to the flow of FIG. 2, the execution time ratio of the servo processing: PLC processing task: robot management task group is set to 1: 3: 4 at the maximum.

例えば、図1(a)のケースでは、PLC処理タスク25の実行時間Tが0ms<T≦3msであり、その場合、ロボット管理タスク群24の実行時間TRは4ms<TR≦7msの範囲となり、3つの処理を繰り返す制御周期8msに対して、実行時間比率を1:3:4以内に維持することが可能となる。
即ち、サーボ処理の実行時間をTSとすれば、ロボット管理タスク群24の実行時間TRは、TR=8−TS−T(ms)として決定され、例えば、PLC処理タスク25の実行時間Tが3msであれば実行時間TRは4ms、実行時間Tが2msであれば実行時間TRは5msとなる。つまり、制御周期8msに対して実行時間TSは最大で1msであるから、残りの7msにおける実行時間比率T:TRは、最大で(この場合、TRに対してTが最大となる比率)3:4となる。
For example, in the case of FIG. 1A, the execution time T of the PLC processing task 25 is 0 ms <T ≦ 3 ms. In this case, the execution time TR of the robot management task group 24 is in the range of 4 ms <TR ≦ 7 ms. The execution time ratio can be maintained within 1: 3: 4 for a control cycle of 8 ms in which three processes are repeated.
That is, assuming that the execution time of the servo processing is TS, the execution time TR of the robot management task group 24 is determined as TR = 8−TS−T (ms). For example, the execution time T of the PLC processing task 25 is 3 ms. If so, the execution time TR is 4 ms, and if the execution time T is 2 ms, the execution time TR is 5 ms. In other words, since the execution time TS is 1 ms at maximum with respect to the control cycle of 8 ms, the execution time ratio T: TR in the remaining 7 ms is maximum (in this case, the ratio at which T is maximum with respect to TR). 4.

次に、図1(b)のケースでは、PLC処理タスク25の実行時間が3ms<T≦6msであり、実行時間比率を1:3:4以内にする(即ち、実行時間Tの比率を「3」以下にする)には、ロボット管理タスク群24の実行時間は8ms<TR≦11msの範囲として、制御周期を16msに設定する。従って、ステップA11において、8msカウンタの値が「2」の場合に(「YES」)ステップA8に移行するようにしている。即ち、8msの第2周期の冒頭ではサーボ処理の実行後にPLC処理タスク25は実行されず、ロボット管理タスク群24が引き続き実行される。   Next, in the case of FIG. 1B, the execution time of the PLC processing task 25 is 3 ms <T ≦ 6 ms, and the execution time ratio is set within 1: 3: 4 (that is, the ratio of the execution time T is “ 3 ”or less), the execution time of the robot management task group 24 is set to a range of 8 ms <TR ≦ 11 ms, and the control cycle is set to 16 ms. Therefore, in step A11, when the value of the 8 ms counter is “2” (“YES”), the process proceeds to step A8. That is, at the beginning of the second period of 8 ms, the PLC processing task 25 is not executed after the servo processing is executed, and the robot management task group 24 is continuously executed.

次に、図1(c)のケースでは、PLC処理タスク25の実行時間が6ms<T≦9msであり、実行時間比率を1:3:4以内にするには、ロボット管理タスク群24の実行時間は12ms<TR≦15msの範囲として、制御周期を24msに設定する。従って、ステップA13において、8msカウンタの値が「3」の場合に(「YES」)ステップA8に移行するようにしている。即ち、8msの第3周期の冒頭ではサーボ処理の実行後にPLC処理タスク25は実行されず、ロボット管理タスク群24が引き続き実行される。但し、第2周期の冒頭では、図2のフローではステップA2で実行中(「YES」)として処理される。   Next, in the case of FIG. 1C, the execution time of the PLC processing task 25 is 6 ms <T ≦ 9 ms, and in order to keep the execution time ratio within 1: 3: 4, the robot management task group 24 is executed. The time is set in the range of 12 ms <TR ≦ 15 ms, and the control cycle is set to 24 ms. Accordingly, in step A13, when the value of the 8 ms counter is “3” (“YES”), the process proceeds to step A8. That is, at the beginning of the third period of 8 ms, the PLC processing task 25 is not executed after the servo processing is executed, and the robot management task group 24 is continuously executed. However, at the beginning of the second period, in the flow of FIG. 2, processing is performed in step A2 as being executed (“YES”).

そして、図1(d)のケースでは、PLC処理タスク25の実行時間が9ms<T≦12msであるから、ロボット管理タスク群24の実行時間は16ms<TR≦19msの範囲として、制御周期を32msに設定する。従って、ステップA15において、8msカウンタの値が「4」の場合に(「YES」)ステップA8に移行するようにしている。
即ち、PLC処理タスク25は、従来のPLC15に使用されているプログラムと同様の言語形式を採用したシーケンシャルな一纏まりのプログラムとして記述されているため、その実行時間は、各ユーザのアプリケーションの形態に応じて異なる。従って、実行管理タスク34が以上のようにタスク管理を実行すれば、PLC処理タスク25の実行時間が様々に異なる場合でも、サーボ処理:PLC処理タスク:ロボット管理タスク群の実行時間比率が一定の比率1:3:4以下となるように設定される。
In the case of FIG. 1D, since the execution time of the PLC processing task 25 is 9 ms <T ≦ 12 ms, the execution time of the robot management task group 24 is set in the range of 16 ms <TR ≦ 19 ms, and the control cycle is 32 ms. Set to. Therefore, in step A15, when the value of the 8 ms counter is “4” (“YES”), the process proceeds to step A8.
That is, since the PLC processing task 25 is described as a sequential group of programs adopting the same language format as the program used in the conventional PLC 15, the execution time is determined according to the application form of each user. Depending on. Therefore, if the execution management task 34 executes task management as described above, the execution time ratio of the servo processing: PLC processing task: robot management task group is constant even when the execution time of the PLC processing task 25 varies. The ratio is set to be 1: 3: 4 or less.

また、一例として、仮想ターゲットとしての設備サイクル(一連の加工処理の実行周期)が10秒であるとすると、上記実行時間比率が略一定となっているかどうかを判定するための基準時間を、その1/100である100msとする。その場合、本実施例の処理ケースでは、何れの場合も96ms以内の実行時間比率は1:3:4以下となるように設定されるので、基準時間内の比率が適切に維持されている。   As an example, if the equipment cycle (execution cycle of a series of machining processes) as a virtual target is 10 seconds, the reference time for determining whether or not the execution time ratio is substantially constant is It is assumed that 1/100 is 100 ms. In that case, in the processing case of the present embodiment, the execution time ratio within 96 ms is set to be 1: 3: 4 or less in any case, so that the ratio within the reference time is appropriately maintained.

以上のように本実施例によれば、設備制御装置21にマルチタスクOS23を搭載すると共に、そのOS23上で動作するシステムタスク群26を予め搭載しておき、当該タスク群26を構成する実行管理タスク34が、ユーザプログラムであるロボット管理タスク群24,PLC処理タスク25を実行管理して動作させることで、コンベア2,ロボット3,加工機4などを統括的に制御するようにした。   As described above, according to the present embodiment, the multi-task OS 23 is mounted on the equipment control device 21 and the system task group 26 operating on the OS 23 is mounted in advance, and the execution management configuring the task group 26 is performed. The task 34 controls the conveyor 2, the robot 3, the processing machine 4 and the like in an integrated manner by executing and managing the robot management task group 24 and the PLC processing task 25 which are user programs.

そして、実行管理タスク34は、ユーザプログラムを周期的に実行させるように管理して、PLC処理タスク25における一連の処理が連続的に実行される時間を検出し、PLC処理タスク25とロボット管理タスク群24との実行時間比率が、前記実行周期内において、PLC処理タスク25の実行時間比率を最大で「3」とする一定の割合1:3:4以下となるように制御する。   The execution management task 34 manages the user program so as to be executed periodically, detects the time during which a series of processing in the PLC processing task 25 is continuously executed, and the PLC processing task 25 and the robot management task. The execution time ratio with the group 24 is controlled so as to be a constant ratio 1: 3: 4 or less, in which the execution time ratio of the PLC processing task 25 is “3” at the maximum within the execution cycle.

従って、各制御対象機器を動作させて本来の処理動作を随時進めながら、その動作状態を監視して安全管理を図ることができる。そして、斯様なソフトウエア構成を採用すれば、ユーザは、ユーザプログラムを作成する際に、ロボット管理タスク群24とPLC処理タスク25との実行優先順位をどのように設定するかについては意識する必要がなくなり、プログラムの作成をより簡単に行うことができる。また、PLC本来の機能を取り込み、複数の制御対象機器を制御する装置が1つに統合されることで、コストを低下させることができると共に、1つ以上の工業用ロボットを含む複数の制御対象機器によって構成されるシステムの汎用性をより高めることができる。   Accordingly, it is possible to perform safety management by monitoring the operation state while operating each control target device and proceeding with the original processing operation as needed. If such a software configuration is adopted, the user is conscious of how to set the execution priority of the robot management task group 24 and the PLC processing task 25 when creating the user program. This eliminates the need and makes it easier to create a program. Further, by integrating the functions inherent in the PLC and controlling a plurality of control target devices into one, the cost can be reduced, and a plurality of control targets including one or more industrial robots. The versatility of the system constituted by the devices can be further enhanced.

また、実行管理タスク34は、実行周期を所定の単位周期(8ms)に基づいて設定し、PLC処理タスク25の実行時間が長いため、その単位周期内では、ロボット管理タスク群24の実行時間に対するPLC処理タスク25の実行時間比率を一定の割合以下に実現できない場合は、実行周期を単位周期の倍数(16ms,24ms,32ms,40ms,48ms)で設定するように延長することで、前記実行時間比率を一定の割合以下に設定することが可能となる。   The execution management task 34 sets the execution cycle based on a predetermined unit cycle (8 ms), and the execution time of the PLC processing task 25 is long. Therefore, within the unit cycle, the execution management task 34 corresponds to the execution time of the robot management task group 24. If the execution time ratio of the PLC processing task 25 cannot be realized below a certain ratio, the execution time is extended by setting the execution period to be a multiple of the unit period (16 ms, 24 ms, 32 ms, 40 ms, 48 ms). It becomes possible to set the ratio below a certain ratio.

また、実行管理タスク34は、PLC処理タスク25の実行時間が上限を超えた場合は当該タスクの起動を停止させるので、ユーザのプログラミングにミスがあるか、プログラムの設計仕様自体に誤りがあるような場合に、安全を図ると共にユーザにプログラムの内容を再検討させることができる。
更に、8msの単位周期冒頭においては工業用ロボットを動作させるためのサーボ処理が優先的に実行され、実行管理タスク34は、そのサーボ処理が実行された後にPLC処理タスク25を実行させ、PLC処理タスク25の実行後にロボット管理タスク群24を実行させる。従って、実行周期が単位周期の倍数で延長された場合であっても、工業用ロボット3のサーボ処理は単位周期毎に確実に実行されるので、ロボット3の動作が途中で滞るようなことはなく、単位周期毎に確実に動作を進めることができる。
Further, the execution management task 34 stops the activation of the task when the execution time of the PLC processing task 25 exceeds the upper limit, so that there is a mistake in the user's programming or the design specification itself of the program. In such a case, it is possible to ensure safety and allow the user to review the contents of the program.
Further, at the beginning of the unit period of 8 ms, servo processing for operating the industrial robot is preferentially executed, and the execution management task 34 executes the PLC processing task 25 after the servo processing is executed. After the task 25 is executed, the robot management task group 24 is executed. Therefore, even when the execution cycle is extended by a multiple of the unit cycle, the servo processing of the industrial robot 3 is reliably executed for each unit cycle. The operation can be surely advanced for each unit period.

尚、本発明の設備制御装置21に類似する先行技術として、例えば特許第3493813号公報(特開平8−320712号公報)がある。ここで、本発明と上記先行技術との比較を行っておく。
上記公報に開示されている技術では、一見、本発明と同様に、ロボットとその周辺装置とを1つの制御装置30によって統括的に制御している構成のよう見えるが、図1に示すように制御装置30の実態は3つのコントローラ31〜33によって構成されている。そして、上記公報では、マルチタスクOSを用いて制御を行うことを想定すると、そのOSの仕様によって制御形態が限定されてしまうことを問題としており、マルチタスクOSを用いることなく各制御対象機器を制御することを目的としている。しかしながら、マルチタスクOSを用いない場合には、そのOSが行なうべき機能の全てをユーザがユーザプログラムでカバーする必要が生じる。従って、ユーザの負担が極めて重くなることが想定され、本発明の技術課題を解決するのに適切な構成であるとは言えない。
Incidentally, as a prior art similar to the equipment control device 21 of the present invention, there is, for example, Japanese Patent No. 3493813 (Japanese Patent Laid-Open No. 8-320712). Here, the present invention is compared with the above prior art.
In the technology disclosed in the above publication, at first glance, like the present invention, it seems that the robot and its peripheral devices are collectively controlled by one control device 30, but as shown in FIG. The actual state of the control device 30 is composed of three controllers 31 to 33. In the above publication, assuming that control is performed using a multitasking OS, there is a problem that the control form is limited by the specifications of the OS, and each control target device is not used without using the multitasking OS. The purpose is to control. However, when a multitasking OS is not used, the user needs to cover all functions to be performed by the OS with a user program. Therefore, it is assumed that the burden on the user is extremely heavy, and it cannot be said that the configuration is appropriate for solving the technical problem of the present invention.

また、上記公報では、1サイクルの間に、ロボット制御の必須処理、周辺機器制御の処理、ロボット制御の通常処理を行なう構成となっているが(図4参照)、周辺機器制御の処理時間は安定していることが前提である。従って、本発明のように、統括制御タスクの実行時間が変動する場合でも、各タスクの実行時間比率を一定の割合以下に制御することは全く想定されていない。以上のように、本発明が上記先行技術と相違する構成であることは明らかである。   In the above publication, the essential process for robot control, the peripheral device control process, and the normal robot control process are performed during one cycle (see FIG. 4). It is assumed that it is stable. Therefore, even when the execution time of the overall control task fluctuates as in the present invention, it is not assumed at all that the execution time ratio of each task is controlled below a certain ratio. As described above, it is apparent that the present invention has a configuration different from the above prior art.

本発明は上記し且つ図面に記載した実施例にのみ限定されるものではなく、以下のような変形または拡張が可能である。
工業用ロボットを制御するためのタスクが1つで十分であれば、単一のロボット管理タスクを用意すれば良い。
実行時間比率の最大は1:3:4に限ることなく、個別のアプリケーションに応じて適切となる比率を適宜設定すれば良い。
The present invention is not limited to the embodiments described above and shown in the drawings, and the following modifications or expansions are possible.
If one task for controlling an industrial robot is sufficient, a single robot management task may be prepared.
The maximum execution time ratio is not limited to 1: 3: 4, and an appropriate ratio may be set according to the individual application.

制御対象機器は、生産ライン1に限ることなく、少なくとも1つの工業用ロボットを含むものであれば、個別の応用形態に応じて適宜選択を行って実施すれば良い。従って、それに応じて動作タスク群や設備管理タスク群によって実行される処理も異なることは勿論である。
システムタスク群は、少なくとも実行管理タスクを備えていれば良く、その他の機能については、制御装置の個別のアプリケーションにおいて、専用に必要となることが想定される処理機能を適宜選択したタスクを用意すれば良い。
The device to be controlled is not limited to the production line 1 and may be appropriately selected according to the individual application form as long as it includes at least one industrial robot. Accordingly, it goes without saying that the processes executed by the operation task group and the facility management task group are also different according to this.
The system task group only needs to have at least an execution management task, and for other functions, prepare a task that appropriately selects a processing function that is supposed to be required for each individual application of the control device. It ’s fine.

本発明の一実施例であり、(a)〜(d)は、図2のステップA7,A10,A12,A14に分岐して処理を実行した場合について、各タスクの実行状態を示すタイミングチャートFIG. 4A is a timing chart showing the execution state of each task when processing is executed after branching to steps A7, A10, A12, and A14 of FIG. 実行管理タスクによって実行されるタスク管理制御の内容を示すフローチャートFlow chart showing contents of task management control executed by execution management task PLC処理タスクによる処理内容を示すフローチャートFlow chart showing processing contents by PLC processing task タイマ割り込みの発生状態を示すタイミングチャートTiming chart showing timer interrupt occurrence status 図7に示す生産ラインと同様の構成を制御対象機器として、それらを本発明の制御装置により制御する場合の制御系の構成を示す機能ブロック図The functional block diagram which shows the structure of the control system in the case of controlling the same structure as the production line shown in FIG. 7 as control object apparatus with the control apparatus of this invention 制御装置の概略構成をソフトウエア的な構成を中心として概念的に示す図The figure which shows notionally the outline constitution of the control device centering on software constitution コンベアによって搬送されるワークを、工業用ロボットを用いて加工する生産ラインの一構成例を示す斜視図The perspective view which shows one structural example of the production line which processes the workpiece conveyed by the conveyor using an industrial robot 従来技術を示す図5相当図FIG. 5 equivalent diagram showing the prior art

符号の説明Explanation of symbols

図面中、2はコンベア(制御対象機器)、3はロボット(工業用ロボット,制御対象機器)、4は加工機(制御対象機器)、21は設備制御装置、22はハードウエア、23はマルチタスクOS、24はロボット管理タスク群、25はPLC処理タスク(統括制御タスク)、26はシステムタスク群、34は実行管理タスク(コンピュータプログラム)を示す。

In the drawings, 2 is a conveyor (control target device), 3 is a robot (industrial robot, control target device), 4 is a processing machine (control target device), 21 is an equipment control device, 22 is hardware, and 23 is multitasking. OS, 24 is a robot management task group, 25 is a PLC processing task (overall control task), 26 is a system task group, and 34 is an execution management task (computer program).

Claims (8)

マルチタスクOSを搭載し、メーカによって作成されるシステムタスク群が前記マルチタスクOS上で動作し、ユーザによって作成されるユーザプログラムが前記システムタスク群上で動作することで、1つ以上の工業用ロボットを含む複数の制御対象機器を統括的に制御するように構成される制御装置において、
前記ユーザプログラムが、
前記工業用ロボットの動作を制御するためのロボット管理タスクと、
前記工業用ロボット以外の制御対象機器の動作を夫々制御すると共に、各制御対象機器の動作状態を監視することで異常を検知すると、その異常が検知された制御対象機器の動作を安全側に移行させるように制御する統括制御タスクとで構成される場合に、
前記システムタスク群は、前記ユーザプログラムを周期的に実行させるように管理すると共に、前記統括制御タスクにおける一連の処理が連続的に実行される時間を検出し、前記ロボット管理タスクの実行時間に対する前記統括制御タスクの実行時間比率が、前記実行周期内において予め定めた一定の割合以下となるように制御する実行管理タスクを有することを特徴とする制御装置。
One or more industrial applications in which a multitask OS is installed, a system task group created by a manufacturer operates on the multitask OS, and a user program created by a user operates on the system task group In a control device configured to centrally control a plurality of control target devices including a robot,
The user program is
A robot management task for controlling the operation of the industrial robot;
Controls the operation of devices to be controlled other than the industrial robot, and monitors the operation state of each device to be controlled, and detects the abnormality, then moves the operation of the device to be controlled in which the abnormality is detected to the safe side. When configured with a general control task that controls
The system task group manages the user program so as to be periodically executed, detects a time during which a series of processes in the overall control task is continuously executed, and performs the robot management task execution time with respect to the execution time. A control apparatus comprising an execution management task for controlling an execution time ratio of the overall control task to be equal to or less than a predetermined ratio within the execution cycle.
前記実行管理タスクは、前記実行周期を所定の単位周期に基づいて設定し、前記単位周期内では前記実行時間比率を前記一定の割合以下に実現できない場合は、前記実行周期を前記単位周期の倍数で設定するように延長することを特徴とする請求項1記載の制御装置。   The execution management task sets the execution cycle based on a predetermined unit cycle, and if the execution time ratio cannot be achieved below the predetermined rate within the unit cycle, the execution cycle is a multiple of the unit cycle. The control device according to claim 1, wherein the control device is extended so as to be set in step 1. 前記実行管理タスクは、前記統括制御タスクの実行時間が上限を超えた場合は、当該タスクの起動を禁止することを特徴とする請求項2記載の制御装置。   The control device according to claim 2, wherein the execution management task prohibits starting of the task when the execution time of the overall control task exceeds an upper limit. 前記単位周期の冒頭においては、前記工業用ロボットを実際に動作させるためのサーボ処理が優先的に実行され、
前記実行管理タスクは、前記サーボ処理が実行された後に前記統括制御タスクを実行させ、前記統括制御タスクが実行された後に前記ロボット管理タスクを実行させることを特徴とする請求項2又は3記載の制御装置。
At the beginning of the unit cycle, servo processing for actually operating the industrial robot is preferentially executed,
4. The execution management task according to claim 2, wherein the overall control task is executed after the servo processing is executed, and the robot management task is executed after the overall control task is executed. 5. Control device.
1つ以上の工業用ロボットを含む複数の制御対象機器を統括的に制御するように構成される制御装置に搭載されて前記制御装置を構成するコンピュータによりマルチタスクOS上で実行され、前記マルチタスクOSとユーザによって作成されるユーザプログラムとの中間に位置するシステムタスク群としてのコンピュータプログラムであって、
前記ユーザプログラムが、
前記工業用ロボットの動作を制御するためのロボット管理タスクと、
前記工業用ロボット以外の制御対象機器の動作を夫々制御すると共に、各制御対象機器の動作状態を監視することで異常を検知すると、その異常が検知された制御対象機器の動作を安全側に移行させるように制御する統括制御タスクとで構成される場合に、
前記ユーザプログラムを周期的に実行させるように管理すると共に、前記統括制御タスクにおける一連の処理が連続的に実行される時間を検出し、前記ロボット管理タスクの実行時間に対する前記統括制御タスクの実行時間比率が、前記実行周期内において予め定めた一定の割合以下となるように制御する機能を有していることを特徴とするコンピュータプログラム。
A multitasking OS that is mounted on a control device configured to centrally control a plurality of control target devices including one or more industrial robots and that is executed on a multitasking OS by a computer constituting the control device; A computer program as a system task group located between an OS and a user program created by a user,
The user program is
A robot management task for controlling the operation of the industrial robot;
Controls the operation of devices to be controlled other than the industrial robot, and monitors the operation state of each device to be controlled, and detects the abnormality, then moves the operation of the device to be controlled in which the abnormality is detected to the safe side. When configured with a general control task that controls
The user program is managed so as to be executed periodically, and the time during which a series of processing in the overall control task is continuously executed is detected, and the execution time of the overall control task with respect to the execution time of the robot management task A computer program having a function of controlling a ratio to be equal to or less than a predetermined ratio within the execution cycle.
前記実行周期を所定の単位周期に基づいて設定し、前記単位周期内では前記実行時間比率を前記一定の割合以下に実現できない場合は、前記実行周期を前記単位周期の倍数で設定するように延長させることを特徴とする請求項5記載のコンピュータプログラム。   The execution cycle is set based on a predetermined unit cycle, and when the execution time ratio cannot be realized below the predetermined rate within the unit cycle, the execution cycle is extended to be set as a multiple of the unit cycle. The computer program according to claim 5, wherein: 前記統括制御タスクの実行時間が上限を超えた場合は、当該タスクの起動を禁止させることを特徴とする請求項6記載のコンピュータプログラム。   7. The computer program according to claim 6, wherein when the execution time of the overall control task exceeds an upper limit, the activation of the task is prohibited. 前記単位周期の冒頭においては、前記工業用ロボットを動作させるためのサーボ処理を優先的に実行させ、
前記サーボ処理を実行させた後に前記統括制御タスクを実行させ、前記統括制御タスクを実行させた後に前記ロボット管理タスクを実行させることを特徴とする請求項6又は7記載のコンピュータプログラム。

At the beginning of the unit cycle, servo processing for operating the industrial robot is preferentially executed,
8. The computer program according to claim 6, wherein the overall control task is executed after the servo processing is executed, and the robot management task is executed after the overall control task is executed.

JP2004225774A 2004-08-02 2004-08-02 Control device and computer program Expired - Fee Related JP4442358B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004225774A JP4442358B2 (en) 2004-08-02 2004-08-02 Control device and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004225774A JP4442358B2 (en) 2004-08-02 2004-08-02 Control device and computer program

Publications (2)

Publication Number Publication Date
JP2006048231A true JP2006048231A (en) 2006-02-16
JP4442358B2 JP4442358B2 (en) 2010-03-31

Family

ID=36026728

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004225774A Expired - Fee Related JP4442358B2 (en) 2004-08-02 2004-08-02 Control device and computer program

Country Status (1)

Country Link
JP (1) JP4442358B2 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010271759A (en) * 2009-05-19 2010-12-02 Toyota Motor Corp Safety control device and safety control method
JP4752984B1 (en) * 2011-03-15 2011-08-17 オムロン株式会社 PLC CPU unit, PLC system program, and recording medium storing PLC system program
JP2011221751A (en) * 2010-04-08 2011-11-04 Hitachi Ltd Information processor and information processing method
JP4894961B1 (en) * 2011-03-15 2012-03-14 オムロン株式会社 PLC CPU unit, PLC system program, and recording medium storing PLC system program
WO2012124143A1 (en) * 2011-03-15 2012-09-20 オムロン株式会社 Computation unit, assistance device, output control method, display control method, and program
US8504176B2 (en) 2011-03-15 2013-08-06 Omron Corporation CPU unit of PLC, system program for PLC, and recording medium storing system program for PLC
EP2680094A1 (en) * 2011-01-31 2014-01-01 Toyota Jidosha Kabushiki Kaisha Safety control device and safety control method
US20140005835A1 (en) * 2011-03-15 2014-01-02 Omron Corporation Cpu of plc, system program for plc, and recording medium storing system program for plc
JP2019079336A (en) * 2017-10-25 2019-05-23 ファナック株式会社 Numerical control device

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0492902A (en) * 1990-08-06 1992-03-25 Canon Inc Controller for automatic assembly device
JPH0895624A (en) * 1994-09-26 1996-04-12 Smc Corp Actuator controller
JPH08339211A (en) * 1995-06-14 1996-12-24 Canon Inc Automated machine controller
JP2000056989A (en) * 1998-08-03 2000-02-25 Chokosoku Network Computer Gijutsu Kenkyusho:Kk Task designing method
JP2001125797A (en) * 1999-10-25 2001-05-11 Seiko Epson Corp Multitask system, recording medium with recorded program therefor and working device
JP2002099435A (en) * 2000-09-21 2002-04-05 Toshiba Corp Control method of multi-task and information processor
JP2002099434A (en) * 2000-09-25 2002-04-05 Matsushita Electric Ind Co Ltd Control apparatus
JP2003241978A (en) * 2002-02-15 2003-08-29 Oki Electric Ind Co Ltd Load dispersion method and load dispersion system for device driver

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0492902A (en) * 1990-08-06 1992-03-25 Canon Inc Controller for automatic assembly device
JPH0895624A (en) * 1994-09-26 1996-04-12 Smc Corp Actuator controller
JPH08339211A (en) * 1995-06-14 1996-12-24 Canon Inc Automated machine controller
JP2000056989A (en) * 1998-08-03 2000-02-25 Chokosoku Network Computer Gijutsu Kenkyusho:Kk Task designing method
JP2001125797A (en) * 1999-10-25 2001-05-11 Seiko Epson Corp Multitask system, recording medium with recorded program therefor and working device
JP2002099435A (en) * 2000-09-21 2002-04-05 Toshiba Corp Control method of multi-task and information processor
JP2002099434A (en) * 2000-09-25 2002-04-05 Matsushita Electric Ind Co Ltd Control apparatus
JP2003241978A (en) * 2002-02-15 2003-08-29 Oki Electric Ind Co Ltd Load dispersion method and load dispersion system for device driver

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010271759A (en) * 2009-05-19 2010-12-02 Toyota Motor Corp Safety control device and safety control method
JP2011221751A (en) * 2010-04-08 2011-11-04 Hitachi Ltd Information processor and information processing method
EP2680094A4 (en) * 2011-01-31 2014-08-06 Toyota Motor Co Ltd Safety control device and safety control method
EP2680094A1 (en) * 2011-01-31 2014-01-01 Toyota Jidosha Kabushiki Kaisha Safety control device and safety control method
WO2012124143A1 (en) * 2011-03-15 2012-09-20 オムロン株式会社 Computation unit, assistance device, output control method, display control method, and program
US20140005835A1 (en) * 2011-03-15 2014-01-02 Omron Corporation Cpu of plc, system program for plc, and recording medium storing system program for plc
WO2012124133A1 (en) * 2011-03-15 2012-09-20 オムロン株式会社 Cpu of plc, system program for plc, and recording medium storing system program for plc
CN102792237A (en) * 2011-03-15 2012-11-21 欧姆龙株式会社 PLC CPU unit, system program for PLC, and storage medium having system program for PLC stored therein
US8504176B2 (en) 2011-03-15 2013-08-06 Omron Corporation CPU unit of PLC, system program for PLC, and recording medium storing system program for PLC
CN103403632A (en) * 2011-03-15 2013-11-20 欧姆龙株式会社 Computation unit, assistance device, output control method, display control method, and program
JP4894961B1 (en) * 2011-03-15 2012-03-14 オムロン株式会社 PLC CPU unit, PLC system program, and recording medium storing PLC system program
WO2012124141A1 (en) * 2011-03-15 2012-09-20 オムロン株式会社 Plc cpu unit, system program for plc, and storage medium having system program for plc stored therein
JP4752984B1 (en) * 2011-03-15 2011-08-17 オムロン株式会社 PLC CPU unit, PLC system program, and recording medium storing PLC system program
CN102792237B (en) * 2011-03-15 2015-05-13 欧姆龙株式会社 PLC CPU unit
EP2672346A4 (en) * 2011-03-15 2015-09-02 Omron Tateisi Electronics Co Cpu of plc, system program for plc, and recording medium storing system program for plc
US9618922B2 (en) 2011-03-15 2017-04-11 Omron Corporation CPU of PLC, system program for PLC, and recording medium storing system program for PLC
US9891610B2 (en) 2011-03-15 2018-02-13 Omron Corporation Computation unit, assistance device, output control method, display control method, and program
US10274923B2 (en) * 2011-03-15 2019-04-30 Omron Corporation CPU of PLC, system program for PLC, and recording medium storing system program for PLC
JP2019079336A (en) * 2017-10-25 2019-05-23 ファナック株式会社 Numerical control device
US10761512B2 (en) 2017-10-25 2020-09-01 Fanuc Corporation Numerical controller

Also Published As

Publication number Publication date
JP4442358B2 (en) 2010-03-31

Similar Documents

Publication Publication Date Title
US20160082593A1 (en) Robot controller for avoiding problem regarding robot at the time of emergency stop
EP2372478B1 (en) Motor driving system and motor controller
US10338570B2 (en) Numerical controller
US10005185B2 (en) Flexible cycle time-optimized sharing of a working space for robots
JP4442358B2 (en) Control device and computer program
US11312016B2 (en) Method and system for controlling a robot arrangement
Steinmetz et al. Skill parametrization approaches and skill architecture for human-robot interaction
CN113661033A (en) Robot arm safety system with safety limit values that can be adapted during operation
JP4763719B2 (en) Machine control unit, engineering system for the control unit, and driving method of the control unit
Vistein et al. Flexible and continuous execution of real-time critical robotic tasks
US20130085583A1 (en) Method for Setting an Operating Status
JP4270038B2 (en) Control device and computer program
US6912442B2 (en) Universal motion control
JP2016124078A (en) Emergency stop method of robot, and control unit of robot
JP2021192949A5 (en)
EP2159657B1 (en) Method and control system for synchronisation of robot and conveyor
JP5633501B2 (en) Control apparatus and control method
US11065766B2 (en) Method and computer program for correcting errors in a manipulator system
US20110125321A1 (en) Method And Device For Controlling Manipulators
US20020082718A1 (en) Method of operating an industrial controller
US20020082721A1 (en) Programming of cyclical machines
EP3564763A1 (en) Method for controlling motor driving by a plc
Vistein Embedding real-time critical robotics applications in an object-oriented language
US7363527B2 (en) Error tolerant automation system and method for error handling in a real-time automation system
Unnikrishnan et al. A Review of Challenges in Integrating Robot and Motion Control Into a Single System

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061024

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090309

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090915

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20091030

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091113

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20091030

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100104

R150 Certificate of patent or registration of utility model

Ref document number: 4442358

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130122

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20130122

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20130122

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130122

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140122

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees