JP6463518B2 - Controller and transfer system - Google Patents
Controller and transfer system Download PDFInfo
- Publication number
- JP6463518B2 JP6463518B2 JP2017566498A JP2017566498A JP6463518B2 JP 6463518 B2 JP6463518 B2 JP 6463518B2 JP 2017566498 A JP2017566498 A JP 2017566498A JP 2017566498 A JP2017566498 A JP 2017566498A JP 6463518 B2 JP6463518 B2 JP 6463518B2
- Authority
- JP
- Japan
- Prior art keywords
- unit
- sensor
- information
- actuator
- workpiece
- 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.)
- Active
Links
- 238000012546 transfer Methods 0.000 title description 6
- 238000004088 simulation Methods 0.000 claims description 201
- 230000008859 change Effects 0.000 claims description 61
- 230000032258 transport Effects 0.000 claims description 61
- 238000000034 method Methods 0.000 claims description 60
- 230000008569 process Effects 0.000 claims description 30
- 238000012545 processing Methods 0.000 claims description 28
- 230000009471 action Effects 0.000 claims description 24
- 238000006073 displacement reaction Methods 0.000 claims description 24
- 238000004364 calculation method Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 17
- 238000004519 manufacturing process Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 13
- 238000001514 detection method Methods 0.000 description 13
- 238000012360 testing method Methods 0.000 description 9
- 238000012986 modification Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000012790 confirmation Methods 0.000 description 4
- 230000010365 information processing Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000001629 suppression Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 230000000452 restraining effect Effects 0.000 description 2
- 238000004148 unit process Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 244000145845 chattering Species 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G43/00—Control devices, e.g. for safety, warning or fault-correcting
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23Q—DETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
- B23Q15/00—Automatic control or regulation of feed movement, cutting velocity or position of tool or work
- B23Q15/20—Automatic control or regulation of feed movement, cutting velocity or position of tool or work before or after the tool acts upon the workpiece
- B23Q15/22—Control or regulation of position of tool or workpiece
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G43/00—Control devices, e.g. for safety, warning or fault-correcting
- B65G43/08—Control devices operated by article or material being fed, conveyed or discharged
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B23—MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
- B23Q—DETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
- B23Q15/00—Automatic control or regulation of feed movement, cutting velocity or position of tool or work
- B23Q15/20—Automatic control or regulation of feed movement, cutting velocity or position of tool or work before or after the tool acts upon the workpiece
- B23Q15/22—Control or regulation of position of tool or workpiece
- B23Q15/24—Control or regulation of position of tool or workpiece of linear position
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G43/00—Control devices, e.g. for safety, warning or fault-correcting
- B65G43/04—Control devices, e.g. for safety, warning or fault-correcting detecting slip between driving element and load-carrier, e.g. for interrupting the drive
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65G—TRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
- B65G47/00—Article or material-handling devices associated with conveyors; Methods employing such devices
- B65G47/22—Devices influencing the relative position or the attitude of articles during transit by conveyors
- B65G47/24—Devices influencing the relative position or the attitude of articles during transit by conveyors orientating the articles
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B17/00—Systems involving the use of models or simulators of said systems
- G05B17/02—Systems involving the use of models or simulators of said systems electric
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/4189—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the transport system
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0224—Process history based detection method, e.g. whereby history implies the availability of large amounts of data
- G05B23/0227—Qualitative history assessment, whereby the type of data acted upon, e.g. waveforms, images or patterns, is not relevant, e.g. rule based assessment; if-then decisions
- G05B23/0235—Qualitative history assessment, whereby the type of data acted upon, e.g. waveforms, images or patterns, is not relevant, e.g. rule based assessment; if-then decisions based on a comparison with predetermined threshold or range, e.g. "classical methods", carried out during normal operation; threshold adaptation or choice; when or how to compare with the threshold
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32357—Simulation of material handling, flexible conveyor system fcs
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Mechanical Engineering (AREA)
- General Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Programmable Controllers (AREA)
- Control Of Conveyors (AREA)
Description
本発明は、コントローラおよび搬送システムに関し、特に、センサからのセンサ信号を参照しながらアクチュエータへ駆動信号を出力するためのコントローラと、それを用いた搬送システムとに関するものである。 The present invention relates to a controller and a transport system, and more particularly to a controller for outputting a drive signal to an actuator while referring to a sensor signal from a sensor, and a transport system using the controller.
搬送システム、すなわち物を搬送するためのシステム、は、たとえば工場における生産装置など、様々な用途に用いられている。以下、搬送システムにおいて搬送される物を「ワーク」と称する。搬送システムは、通常、ワークを移動させるためのアクチュエータと、ワークを検出するためのセンサと、これらを制御するためのコントローラとを有している。コントローラの動作試験として、従来から、シミュレーション技術が利用されている。 2. Description of the Related Art A conveyance system, that is, a system for conveying an object is used for various applications such as a production apparatus in a factory. Hereinafter, an object conveyed in the conveyance system is referred to as “workpiece”. The transfer system usually has an actuator for moving the workpiece, a sensor for detecting the workpiece, and a controller for controlling them. Conventionally, a simulation technique has been used as an operation test of a controller.
特開2014−148389号公報(特許文献1)によれば、搬送機が搬送物を搬送するシミュレーション演算を実行する情報処理装置が開示されている。3次元シミュレーション空間上でワークとリフターとテーブルとが配置される。情報処理装置は、リフターがテーブル上のワークを搬送するシミュレーション演算を実行する。ここで、情報処理装置は、テーブルに配置されたワークをリフターが上方向に移動させる場合、リフターのワークと一体となる度合いを示す優先度をテーブルのワークと一体となる度合いを示す優先度よりも高く設定する。また、情報処理装置は、ワークを搬送中のリフターがテーブルよりも下方向に移動する場合、リフターの優先度をテーブルの優先度よりも低く設定する。 Japanese Patent Laying-Open No. 2014-148389 (Patent Document 1) discloses an information processing apparatus that executes a simulation operation in which a transporter transports a transported object. A work, a lifter, and a table are arranged on the three-dimensional simulation space. The information processing apparatus executes a simulation operation in which the lifter transports the workpiece on the table. Here, when the lifter moves the work placed on the table in the upward direction, the information processing apparatus uses a priority indicating the degree of integration with the work of the lifter as a priority indicating the degree of integration with the work of the table. Set too high. Further, the information processing apparatus sets the priority of the lifter to be lower than the priority of the table when the lifter that is transporting the workpiece moves below the table.
特開2014−063327号公報(特許文献2)によれば、シミュレーション装置が開示されている。シミュレーション装置は、対象物を扱う機械の動きを制御するコントローラにおいて実行される制御プログラムのシミュレーションを実行するプロセッサを含む。プロセッサは、制御プログラムに従って、仮想空間において機械に対応する仮想機械を動かすための動作指令に基づいて仮想機械の動きを制御する動作制御手段と、仮想機械によって扱われ対象物に対応する仮想対象物のモデルデータと、仮想機械のモデルデータとに基づいて、仮想機械が作用可能な作用空間と仮想対象物とが重なる領域の体積が予め定められた基準値以上であるか否かを判断する判断手段と、体積が基準値以上である場合に、仮想対象物を動作指令に基づく仮想機械の動きに追従させる追従手段とを含む。 According to Japanese Patent Laying-Open No. 2014-063327 (Patent Document 2), a simulation apparatus is disclosed. The simulation apparatus includes a processor that executes a simulation of a control program executed in a controller that controls movement of a machine that handles an object. The processor includes an operation control means for controlling the movement of the virtual machine based on an operation command for moving the virtual machine corresponding to the machine in the virtual space according to the control program, and the virtual object corresponding to the object handled by the virtual machine. And determining whether the volume of the region where the action space in which the virtual machine can operate and the virtual object overlap is equal to or greater than a predetermined reference value based on the model data of the virtual machine and the model data of the virtual machine Means and tracking means for causing the virtual object to follow the movement of the virtual machine based on the motion command when the volume is equal to or greater than the reference value.
特開2002−358114号公報(特許文献3)によれば、シーケンサのプログラムによる設備動作のシミュレーションを行なうシミュレーション装置が開示されている。シミュレーション装置は、上記シーケンサからの出力に基づいて上記設備の状態の変化をシミュレートし該設備の変化状態を所定時間毎に算出する状態算出手段と、上記状態算出手段により算出される上記設備の変化状態に応じて上記シーケンサに出力すべき当該状態に関連する擬似信号を生成する擬似信号生成手段とを有している。すなわち、このシミュレーション装置は、2段階でシミュレーションを行なっている。まず、シミュレーション装置は、シーケンサからの出力、つまり動作指令によって設備の状態がどのように変化するかをシミュレートしている。そしてシミュレーション装置は、その設備が擬似信号を生成すべき状態になったか、端的に言えば、設備が動いた結果として、該設備の状態変化を検出する検出器に出力変化があるか否かをシミュレートしている。設備の状態とは、たとえば、アクチュエータおよびワークの状態である。検出器は、たとえば、ワークが所定位置に存在するか否かを検出するものである。 According to Japanese Patent Laid-Open No. 2002-358114 (Patent Document 3), a simulation device is disclosed that performs a simulation of facility operation by a sequencer program. The simulation apparatus simulates a change in the state of the equipment based on an output from the sequencer, calculates a change state of the equipment every predetermined time, and calculates the state of the equipment calculated by the state calculation means. Pseudo signal generation means for generating a pseudo signal related to the state to be output to the sequencer according to the change state. That is, this simulation apparatus performs a simulation in two stages. First, the simulation apparatus simulates how the state of the facility changes according to the output from the sequencer, that is, the operation command. Then, the simulation apparatus determines whether the equipment is in a state to generate a pseudo signal or, in short, as a result of the equipment movement, whether or not there is an output change in the detector that detects the equipment state change. Simulating. The equipment state is, for example, the state of an actuator and a workpiece. The detector detects, for example, whether or not the work exists at a predetermined position.
特開2002−351511号公報(特許文献4)によれば、コントローラにおける入力生成装置が開示されている。コントローラは、ソフトウェア的に機能が定義されて制御アプリケーションを実行するPLC手段と、実プロセスからの信号をPLC手段にインターフェースする入力インターフェース手段と、PLC手段より実プロセスへの信号をインターフェースする出力インターフェース手段とを有する。コントローラに適用される入力生成装置は、ソフトウェア的に機能が定義された疑似入力生成手段と、実入力/疑似入力切り換え手段と、を有している。疑似入力生成手段は、出力インターフェース手段よりの信号に基づいて模擬的な入力信号を生成する。実入力/疑似入力切り換え手段は、模擬入力信号使用時には、出力インターフェース手段よりの信号を疑似入力生成手段に供給すると共に、疑似入力生成手段の出力信号を上記入力インターフェース手段に供給する。 According to Japanese Patent Laying-Open No. 2002-351511 (Patent Document 4), an input generation device in a controller is disclosed. The controller includes a PLC means for defining a function in software and executing a control application, an input interface means for interfacing a signal from an actual process to the PLC means, and an output interface means for interfacing a signal from the PLC means to the actual process. And have. The input generation device applied to the controller has pseudo input generation means whose function is defined by software and real input / pseudo input switching means. The pseudo input generation means generates a simulated input signal based on the signal from the output interface means. The actual input / pseudo input switching means supplies a signal from the output interface means to the pseudo input generation means and uses the output signal of the pseudo input generation means to the input interface means when the simulated input signal is used.
上記特許文献1に記載の技術は、リフターがテーブル上のワークを搬送するという特定の構成にしか適用することができない。つまり、この技術は汎用性に乏しいものである。また、ワークに作用する全てのものに対して優先度の設定が必要であり、その設定は、シミュレーション対象に依存して個別に設計が必要である。このような設計作業は容易なものではない。 The technique described in
上記特許文献1の技術と比して上記特許文献2の技術は、より汎用的な技術であるため、より様々な搬送システムに適用できると考えられる。しかしながらこの方法は、作用空間または仮想対象物を複数の単位領域に分割しての計算処理を要することから、計算負荷が大きい。さらに、これら特許文献1および2の技術は、純粋なシミュレーション技術であり、現実の搬送システムの試験に利用することが想定されたものではない。 Compared with the technique of the above-mentioned
上記特許文献1および2の技術と異なり上記特許文献3に記載の技術は、現実の搬送システムに用いられるシーケンサ(コントローラ)からの出力に基づいて、シーケンサのプログラムの検証を行うことができる。しかしながらこの方法では、搬送システムのコントローラに接続されたシミュレーション装置によってシミュレーションが行われる。このため、コントローラに加えてシミュレーション装置を必要とする。さらに、両者間での通信も必要とする。コントローラとコンピュータとの間の通信は、通信遅れ時間を発生させる。このため、実際のシステムの運転状態と、それをシミュレーションした状態とで、事象が発生するタイミングが異なってしまう。搬送システムのプログラムにおいては、その性能を上げるために、通信および計算処理のリアルタイム性に依存した制御が記述されることも多く、通信遅れによってタイミングがずれてしまっては、正確な試験を実施しにくい。 Unlike the techniques of
上記特許文献1から3の技術と異なり上記特許文献4の技術は、実際のシステムのコントローラ内でシミュレーションが行われる。しかしながらこの特許文献4において説明されている具体的な応用例はプラント訓練システムのみであり、搬送システムに適用するための具体的方法は開示されていない。仮に、この技術に対して、上記特許文献2の技術のように搬送システムを対象とした汎用性の高いシミュレーション技術を組み合わせようとすると、システムのコントローラは、このシミュレーションを処理するために、大きな計算リソースを必要とする。しかしながら、搬送システムに用いられるコントローラは、典型的には、シミュレーション用途に適したコンピュータとは異なり、大きな計算リソースを有していない。よって、仮に上記のような組み合わせが可能であったとしても、搬送システムの正確な試験を実施することは困難である。 Unlike the techniques of
本発明は以上のような課題を解決するためになされたものであり、その目的は、センサ情報のシミュレーションを、搬送システムの種類に大きく依存せずに容易に、かつ、搬送システムのコントローラを利用して行うことができる、コントローラおよび搬送システムを提供することである。 SUMMARY OF THE INVENTION The present invention has been made to solve the above-described problems. The object of the present invention is to easily perform sensor information simulation without greatly depending on the type of the transport system and to use the controller of the transport system. It is to provide a controller and a transport system that can be performed.
本発明のコントローラは、ワークを検出する少なくとも1つのセンサからのセンサ信号を参照しながら、ワークを搬送する少なくとも1つのアクチュエータへ駆動信号を出力する搬送システムのためのものである。コントローラは、外部インターフェースと、設定入力部と、制御プログラム実行部と、拘束条件変更部と、ワークシミュレーション部と、センサシミュレーション部と、入出力切換部とを有する。外部インターフェースは、アクチュエータ出力部と、センサ入力部とを有する。アクチュエータ出力部は、アクチュエータを制御するための駆動情報を受け付けて、駆動情報に基づいてアクチュエータへ駆動信号を送る。センサ入力部は、センサからセンサ信号を受け付けて、センサ信号に基づいてセンサ情報を生成する。設定入力部は、制御プログラムと、拘束条件設定情報とをユーザから受け付ける。制御プログラムは、センサ情報を参照しながら駆動情報を生成するためのものである。拘束条件設定情報は、ワークとアクチュエータとの間で想定される拘束条件を変更するために制御プログラムに関連付けられる命令情報である。制御プログラム実行部は、制御プログラムを処理するものであって、かつ、拘束条件変更命令処理部を有するものである。拘束条件変更命令処理部は、拘束条件設定情報に基づいて拘束条件変更命令を発行する。拘束条件変更部は、拘束条件変更命令処理部によって発行された拘束条件変更命令に基づいて拘束条件を管理する。ワークシミュレーション部は、少なくとも1つのアクチュエータのうち、拘束条件変更部によって管理されている拘束条件においてワークに拘束されるとされているものに関して制御プログラム実行部によって生成された駆動情報により、ワークの移動量を推定し、移動量をワークの前回位置に加算することによりワークの現在位置を推定する。センサシミュレーション部は、ワークシミュレーション部によって推定されたワークの現在位置の情報を用いることで、センサ情報を模擬したセンサシミュレーション情報を生成する。入出力切換部は、動作モードとして少なくともセンサシミュレーションモードを有する。入出力切換部はセンサシミュレーションモードにおいて、制御プログラム実行部によって生成された駆動情報を少なくともワークシミュレーション部へ送り、かつ、センサ情報の代替情報として、センサシミュレーション部によって生成されたセンサシミュレーション情報を制御プログラム実行部へ送る。 The controller of the present invention is for a transport system that outputs a drive signal to at least one actuator that transports a work while referring to a sensor signal from at least one sensor that detects the work. The controller includes an external interface, a setting input unit, a control program execution unit, a constraint condition changing unit, a work simulation unit, a sensor simulation unit, and an input / output switching unit. The external interface has an actuator output unit and a sensor input unit. The actuator output unit receives drive information for controlling the actuator and sends a drive signal to the actuator based on the drive information. The sensor input unit receives a sensor signal from the sensor and generates sensor information based on the sensor signal. The setting input unit receives a control program and constraint condition setting information from the user. The control program is for generating drive information while referring to sensor information. The constraint condition setting information is command information associated with the control program in order to change the constraint condition assumed between the workpiece and the actuator. The control program execution unit processes the control program and includes a constraint condition change command processing unit. The constraint condition change command processing unit issues a constraint condition change command based on the constraint condition setting information. The constraint condition change unit manages the constraint condition based on the constraint condition change command issued by the constraint condition change command processing unit. The workpiece simulation unit moves the workpiece based on the drive information generated by the control program execution unit with respect to what is supposed to be restrained by the workpiece under the constraint condition managed by the constraint condition changing unit among at least one actuator. The current position of the workpiece is estimated by estimating the amount and adding the movement amount to the previous position of the workpiece. The sensor simulation unit generates sensor simulation information that simulates the sensor information by using information on the current position of the workpiece estimated by the workpiece simulation unit. The input / output switching unit has at least a sensor simulation mode as an operation mode. In the sensor simulation mode, the input / output switching unit sends at least the drive information generated by the control program execution unit to the work simulation unit, and uses the sensor simulation information generated by the sensor simulation unit as a substitute information for the sensor information as a control program. Send to execution part.
本発明の搬送システムは、少なくとも1つのアクチュエータと、センサと、コントローラとを有する。アクチュエータはワークを搬送する。センサはワークを検出する。コントローラは、センサからのセンサ信号を参照しながら、アクチュエータへ駆動信号を出力するためのものである。コントローラは、外部インターフェースと、設定入力部と、制御プログラム実行部と、拘束条件変更部と、ワークシミュレーション部と、センサシミュレーション部と、入出力切換部とを有する。外部インターフェースは、アクチュエータ出力部と、センサ入力部とを有する。アクチュエータ出力部は、アクチュエータを制御するための駆動情報を受け付けて、駆動情報に基づいてアクチュエータへ駆動信号を送る。センサ入力部は、センサからセンサ信号を受け付けて、センサ信号に基づいてセンサ情報を生成する。設定入力部は、制御プログラムと、拘束条件設定情報とをユーザから受け付ける。制御プログラムは、センサ情報を参照しながら駆動情報を生成するためのものである。拘束条件設定情報は、ワークとアクチュエータとの間で想定される拘束条件を変更するために制御プログラムに関連付けられる命令情報である。制御プログラム実行部は、制御プログラムを処理するものであって、かつ、拘束条件変更命令処理部を有するものである。拘束条件変更命令処理部は、拘束条件設定情報に基づいて拘束条件変更命令を発行する。拘束条件変更部は、拘束条件変更命令処理部によって発行された拘束条件変更命令に基づいて拘束条件を管理する。ワークシミュレーション部は、少なくとも1つのアクチュエータのうち、拘束条件変更部によって管理されている拘束条件においてワークに拘束されるとされているものに関して制御プログラム実行部によって生成された駆動情報により、ワークの移動量を推定し、移動量をワークの前回位置に加算することによりワークの現在位置を推定する。センサシミュレーション部は、ワークシミュレーション部によって推定されたワークの現在位置の情報を用いることで、センサ情報を模擬したセンサシミュレーション情報を生成する。入出力切換部は、動作モードとして少なくともセンサシミュレーションモードを有する。入出力切換部はセンサシミュレーションモードにおいて、制御プログラム実行部によって生成された駆動情報を少なくともワークシミュレーション部へ送り、かつ、センサ情報の代替情報として、センサシミュレーション部によって生成されたセンサシミュレーション情報を制御プログラム実行部へ送る。
The transport system of the present invention includes at least one actuator, a sensor, and a controller. The actuator conveys the workpiece. The sensor detects a workpiece. The controller is for outputting a drive signal to the actuator while referring to the sensor signal from the sensor. The controller includes an external interface, a setting input unit, a control program execution unit, a constraint condition changing unit, a work simulation unit, a sensor simulation unit, and an input / output switching unit. The external interface has an actuator output unit and a sensor input unit. The actuator output unit receives drive information for controlling the actuator and sends a drive signal to the actuator based on the drive information. The sensor input unit receives a sensor signal from the sensor and generates sensor information based on the sensor signal. The setting input unit receives a control program and constraint condition setting information from the user. The control program is for generating drive information while referring to sensor information. The constraint condition setting information is command information associated with the control program in order to change the constraint condition assumed between the workpiece and the actuator. The control program execution unit processes the control program and includes a constraint condition change command processing unit. The constraint condition change command processing unit issues a constraint condition change command based on the constraint condition setting information. The constraint condition change unit manages the constraint condition based on the constraint condition change command issued by the constraint condition change command processing unit. The workpiece simulation unit moves the workpiece based on the drive information generated by the control program execution unit with respect to what is supposed to be restrained by the workpiece under the constraint condition managed by the constraint condition changing unit among at least one actuator. The current position of the workpiece is estimated by estimating the amount and adding the movement amount to the previous position of the workpiece. The sensor simulation unit generates sensor simulation information that simulates the sensor information by using information on the current position of the workpiece estimated by the workpiece simulation unit. The input / output switching unit has at least a sensor simulation mode as an operation mode. In the sensor simulation mode, the input / output switching unit sends at least the drive information generated by the control program execution unit to the work simulation unit, and uses the sensor simulation information generated by the sensor simulation unit as a substitute information for the sensor information as a control program. Send to execution part.
本発明によれば、センサ情報を模擬したセンサシミュレーション情報が、ワークの推定された現在位置の情報を用いて生成される。ワークの現在位置は、ワークの推定された移動量をワークの前回位置に加算することにより推定される。ワークの移動量は、少なくとも1つのアクチュエータのうち、拘束条件においてワークに拘束されるとされているものに関して制御プログラム実行部によって生成された前記駆動情報により推測される。拘束条件は拘束条件設定情報に基づいて管理される。拘束条件設定情報は、搬送システムの制御プログラムを参照することにより、搬送システムの種類に大きく依存することなくユーザが容易に作成し得る。これにより、センサ情報のシミュレーションを、搬送システムの種類に大きく依存せずに容易に行うことができる。得られたセンサシミュレーション情報は、センサ情報が欠如した状態での搬送システムの試験における代替情報として、または、搬送システムの実働における参考情報として利用することができる。 According to the present invention, sensor simulation information simulating sensor information is generated using information on the estimated current position of the workpiece. The current position of the workpiece is estimated by adding the estimated movement amount of the workpiece to the previous position of the workpiece. The amount of movement of the workpiece is estimated from the drive information generated by the control program execution unit regarding at least one actuator that is constrained by the workpiece under the constraint condition. The constraint conditions are managed based on the constraint condition setting information. The constraint condition setting information can be easily created by the user by referring to the control program of the transport system without largely depending on the type of the transport system. Thereby, the simulation of sensor information can be easily performed without largely depending on the type of the transport system. The obtained sensor simulation information can be used as alternative information in the transport system test in a state where the sensor information is lacking, or as reference information in actual operation of the transport system.
さらに、ワークの推定移動量は、少なくとも1つのアクチュエータのうち、拘束条件変更部によって管理されている拘束条件においてワークに拘束されるとされているものに関して制御プログラム実行部によって生成された駆動情報に基づいて、容易に得ることができる。この推定移動量をワークの前回位置に加算することでワークの現在位置が推測される。以上のように、ワークの推定移動量は駆動情報から容易に得られ、それを用いた単純な演算により、ワークの現在位置が推測される。これにより、ワークの現在位置を、少ない計算量で推測することができる。よって、シミュレーション用途に適したコンピュータに比して計算リソースが少ないことが通常である搬送システムのコントローラであっても、リアルタイムでのシミュレーションを行うことができる。 Furthermore, the estimated movement amount of the workpiece is the drive information generated by the control program execution unit regarding at least one actuator that is constrained by the workpiece under the constraint condition managed by the constraint condition changing unit. Can be easily obtained. The current position of the workpiece is estimated by adding this estimated movement amount to the previous position of the workpiece. As described above, the estimated movement amount of the workpiece can be easily obtained from the drive information, and the current position of the workpiece is estimated by a simple calculation using it. Thereby, the current position of the workpiece can be estimated with a small amount of calculation. Therefore, even a transport system controller that normally has fewer computational resources than a computer suitable for a simulation application can perform simulation in real time.
以上のように本発明によれば、センサ情報のシミュレーションを、搬送システムの種類に大きく依存せずに容易に、かつ、搬送システムのコントローラを利用して行うことができる。 As described above, according to the present invention, it is possible to easily perform sensor information simulation without greatly depending on the type of the transport system and using the controller of the transport system.
この発明の目的、特徴、局面、および利点は、以下の詳細な説明と添付図面とによって、より明白となる。 The objects, features, aspects and advantages of the present invention will become more apparent from the following detailed description and the accompanying drawings.
以下、図面に基づいて本発明の実施の形態について説明する。なお、以下の図面において同一または相当する部分には同一の参照番号を付しその説明は繰返さない。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the following drawings, the same or corresponding parts are denoted by the same reference numerals, and description thereof will not be repeated.
<予備的説明>
後述する実施の形態1〜7におけるコントローラは、たとえば、工場の生産装置の制御に用いられるFA(Factory Automation)用途のものである。この用途の場合、コントローラは、生産装置を流れるワークの動きを模擬する。そしてコントローラは、模擬されたワークの動きに基づいて、ワークの位置を検出するセンサからの入力信号を模擬する。このような動作を行うための設定を、生産装置の作業者(ユーザ)が容易に行うことができる。具体的には、生産装置の構成に合わせたワークの動きのシミュレーション方法を、作業者が、手探りで設計するのではなく、一定の手順に従った汎用的手法により設定することができる。<Preliminary explanation>
The controllers in
本実施の形態についての具体的な説明の前に、それに関連する内容として、FA用途のコントローラと、それを用いた生産装置の立上げ・調整作業とについて、以下に説明する。 Prior to a specific description of the present embodiment, as a related content, a controller for FA application and a start-up / adjustment operation of a production apparatus using the same will be described below.
主に工場の生産装置に利用されるFA用途のコントローラは、それに接続された複数の外部機器を制御する。これらの外部機器のうち、コントローラと電力線で接続され、ON/OFFのデジタル信号でコントローラと通信する機器は、総称してI/O(Input/Output)と呼ばれる。I/Oは、たとえば、センサもしくはスイッチなどの、コントローラへの入力機器、または、表示灯もしくはモータなどの、コントローラからの出力信号に従って何らかの動作をする出力機器である。外部機器の中には、サーボモータを制御するサーボアンプ、または、他のコントローラも含まれる。これら外部機器との通信は、ON/OFF以外の情報も扱うため、通信専用のケーブルおよび専用回路を通して行うことが多く、狭義のI/Oとは区別されることも多い。外部機器との接続の態様は、典型的なハードウェア構成を有するコントローラ単体で実現されるもの、コントローラに専用機器を接続することで実現されるもの、などがある。以降の説明では、これらを総称してコントローラと呼ぶ。 A controller for FA application mainly used for production equipment in a factory controls a plurality of external devices connected thereto. Among these external devices, devices that are connected to the controller via a power line and communicate with the controller using ON / OFF digital signals are collectively referred to as I / O (Input / Output). The I / O is, for example, an input device to the controller such as a sensor or a switch, or an output device that performs some operation according to an output signal from the controller such as an indicator light or a motor. The external device includes a servo amplifier that controls the servo motor or another controller. Since communication with these external devices handles information other than ON / OFF, it is often performed through a dedicated cable and a dedicated circuit for communication, and is often distinguished from I / O in a narrow sense. Examples of connection with external devices include those realized by a single controller having a typical hardware configuration and those realized by connecting a dedicated device to the controller. In the following description, these are collectively referred to as a controller.
工場の生産装置は、在荷センサと呼ばれるセンサでワークの位置を検出して、そのセンサからの入力信号をトリガとして装置を動作させるものが多い。また、在荷センサからの入力信号は、トリガ信号として以外にも、部品としてのワークの有無を動作実行前に再確認するための確認信号として使われることも多い。在荷センサは、たとえば、投光器と受光器とが一体化された、反射式の光学式センサである。このセンサによれば、ワークがセンサの前に移動すると、投光器からの光がワークから反射することで受光器に入射される。これによりワークの存在が検知される。生産装置は、人間と異なり、通常、目視確認ができないため、ワークを移動させる度にワークを在荷センサで検出する構成を取ることが多い。 Many production apparatuses in factories detect the position of a workpiece with a sensor called a stock sensor and operate the apparatus using an input signal from the sensor as a trigger. In addition to the trigger signal, the input signal from the in-stock sensor is often used as a confirmation signal for reconfirming the presence / absence of a workpiece as a part before the operation is performed. The in-stock sensor is, for example, a reflective optical sensor in which a projector and a light receiver are integrated. According to this sensor, when the work moves in front of the sensor, the light from the projector is reflected from the work and is incident on the light receiver. Thereby, the presence of the workpiece is detected. Unlike humans, a production apparatus usually cannot be visually confirmed, and thus often employs a configuration in which a workpiece is detected by a stock sensor each time the workpiece is moved.
生産装置の立上げ・調整作業時には、多くの場合、いわゆる空運転が行われる。空運転とは、ワークを流さない運転のことである。ワークを流しての運転では、生産装置の機械とワークとの接触が発生するため、搬送システムの運転プログラムなどに不備があった場合には、機械またはワークの破損が発生し得る。よって、空運転での正常な動作が確認された後に、ワークを流しての本格的な試験が行われることが通常である。ワークが高価である場合、または、調整用のワークの準備数が少ない場合など、空運転が必須の場合もある。 In many cases, a so-called idling operation is performed at the time of starting up and adjusting the production apparatus. The idling operation is an operation that does not allow a work to flow. In the operation with the workpiece flowing, contact between the machine of the production apparatus and the workpiece occurs. Therefore, if the operation program of the transfer system is incomplete, the machinery or the workpiece may be damaged. Therefore, after a normal operation in the idling operation is confirmed, a full-scale test with a work flowing is usually performed. In some cases, the idle operation is essential, for example, when the workpiece is expensive or when the number of prepared workpieces for adjustment is small.
空運転は、ワークを流す本来の運転とは異なるため、その実施のためには何らかの工夫を要することが多い。上述したように、生産装置は在荷センサをトリガ信号または確認信号として利用していることが多い。この場合に何らの工夫なしに空運転が行われると、ワークを欠くためにこれらの信号が異常値を取ってしまうことで、試験としての空運転を進めることが困難となる。このため、空運転を目的としたプログラムの変更が行われることがある。具体的には、在荷センサによる確認箇所がコメントアウトされたり、在荷センサからの入力信号を扱う内容が他の信号を扱う内容に書き換えられたりする。このようなプログラムの変更の際には、不注意によるミス、および、意図しない論理変更は、避けられなければならない。そのためには、搬送システムにおける機械の動作と制御プログラムの内容とを十分に理解した上で、装置毎、または、確認したい作業毎に、プログラムの修正・作成の作業を行う必要がある。従来、このような作業には、多くの時間を要していた。 Since the idling operation is different from the original operation in which the work is flown, some device is often required for the implementation. As described above, production apparatuses often use a stock sensor as a trigger signal or a confirmation signal. In this case, if the idling operation is performed without any contrivance, these signals take abnormal values due to lack of workpieces, and it is difficult to proceed with the idling operation as a test. For this reason, the program may be changed for the purpose of idling. Specifically, the confirmation location by the stock sensor is commented out, or the content handling the input signal from the stock sensor is rewritten to the content handling another signal. When changing such a program, careless mistakes and unintended logic changes must be avoided. For this purpose, it is necessary to fully understand the operation of the machine and the contents of the control program in the transport system, and to perform a program correction / creation work for each apparatus or each work to be confirmed. Conventionally, such work has taken a lot of time.
さらに、定常的な運転における挙動だけでなく、コンベア上もしくは部品供給部でワークが詰まってしまうようなエラー、または、センサの検出が安定しないエラーなど、プログラムによる要因ではなく物理的な要因で発生する様々なエラーが発生した場合の挙動を、実働の前に簡単に確認しておくことができれば有益である。なぜならば、実働中にこれらエラーが生じその対処として制御プログラムを修正する必要が生じると、生産装置をしばらくの間停止させなければならず、その結果、大きな損害が生じ得るためである。しかしながら、これらの物理的なエラーの検証は、多くの場合、生産装置の運転時に偶発的に発生するものであるため、立上げ・調整時に全てを確認することは、現状では困難であった。 Furthermore, not only the behavior in steady operation, but also a physical factor, not a program factor, such as an error that causes the workpiece to be jammed on the conveyor or the parts supply unit, or an error that the sensor detection is not stable. It is beneficial if the behavior when various errors occur can be easily confirmed before actual operation. This is because if these errors occur during actual operation and it is necessary to correct the control program as a countermeasure, the production apparatus must be stopped for a while, resulting in significant damage. However, in many cases, verification of these physical errors occurs accidentally during operation of the production apparatus. Therefore, it has been difficult to check all of them at the time of start-up and adjustment.
そこで本発明者は、空運転の実施、および、様々なエラーの検証を可能とすることを主に意図して、ワークの移動と、それに伴う在荷センサのセンサ信号の変化などを、シミュレーションする方法を検討した。在荷センサのセンサ信号を模擬することができれば、それを用いることで、実働に近い状態で空運転を実施することができる。また、検証されるエラーが物理的な要因によるものであるためにその発生が偶発的なものであっても、シミュレーション上であれば、エラーが偶発的に発生するのを待つことなく、すぐに確認することができる。 Therefore, the present inventor simulates the movement of the workpiece and the change in the sensor signal of the load sensor accompanying the main purpose, with the primary intention of enabling the idling and verifying various errors. The method was examined. If the sensor signal of the in-stock sensor can be simulated, by using it, it is possible to perform idling in a state close to actual operation. In addition, even if the occurrence of the error to be verified is accidental because it is due to a physical factor, it is immediately possible to wait for the error to occur accidentally on the simulation. Can be confirmed.
シミュレーションを実働に近い状態で行うためには、シミュレーションは、搬送システムに追加的に接続されたコンピュータによってではなく、搬送システム自体のコントローラ上で行なわれる必要がある。なぜならば前者においては、コントローラとコンピュータとの連携のための通信に要する時間に遅れが生じ得るため、センサ信号の発生などのタイミングが、実働におけるものと相違し得るためである。特に生産装置においては、搬送システムの性能を上げるために、通信および計算処理のリアルタイム性に依存した制御がプログラム中に記述されることが多く、よって、通信遅れによってタイミングがずれてしまっては、正確な確認作業を実施することが困難である。 In order to perform the simulation in a state close to actual operation, the simulation needs to be performed on the controller of the transport system itself, not by a computer additionally connected to the transport system. This is because, in the former case, there may be a delay in the time required for communication between the controller and the computer, so that the timing such as the generation of sensor signals may differ from that in actual operation. Especially in production equipment, in order to improve the performance of the transport system, control depending on the real-time nature of communication and calculation processing is often described in the program. Therefore, if the timing is shifted due to communication delay, It is difficult to carry out accurate confirmation work.
以下に述べる各実施の形態は、上述した問題または要望を鑑みて検討されたものである。 Each embodiment described below has been studied in view of the above-described problems or demands.
<実施の形態1>
(構成)
図1は、本実施の形態における搬送システムの構成を概略的に示すブロック図である。本実施の形態における搬送システム700Aは、アクチュエータ610と、センサ620と、コントローラ500Aとを有する。アクチュエータ610はワークを搬送する。センサ620は、ワークを検出するものを含む。コントローラ500Aは、センサ620からのセンサ信号を参照しながら、アクチュエータ610へ駆動信号を出力するためのものである。駆動信号は、コントローラ500A内において生成される駆動情報に従って、コントローラ500Aから出力される。本実施の形態においては、説明を簡単にするために、主に、この駆動情報が、アクチュエータのサーボモータの絶対位置の指令信号を表すものである場合について説明する。駆動情報に従ってコントローラ500Aから出力される駆動信号も、アクチュエータのサーボモータの絶対位置の指令信号を表すものであってよい。駆動信号は、アクチュエータのサーボモータへ電力を供給するサーボアンプに入力される動作指定値を表す指令信号であってもよい。<
(Constitution)
FIG. 1 is a block diagram schematically showing the configuration of the transport system in the present embodiment. The
コントローラ500Aは、外部インターフェース510と、設定入力部520と、制御プログラム実行部530と、拘束条件変更部540と、ワークシミュレーション部550と、センサシミュレーション部561と、入出力切換部570とを有する。上記各構成について、以下に詳しく説明する。 The
外部インターフェース510は、外部機器600との通信を行うものである。外部インターフェース510は、アクチュエータ610出力部と、センサ入力部512とを有する。アクチュエータ出力部511は、アクチュエータ610を制御するための動作指令値である駆動情報を受け付けて、駆動情報に基づいてアクチュエータ610へ駆動信号を送る。センサ入力部512は、センサ620からセンサ信号を受け付けて、センサ信号に基づいてセンサ情報を生成する。外部インターフェース510はさらに、アクチュエータ610およびセンサ620以外の外部機器である他機器630が接続される他機器入出力部513を有してもよい。これにより外部インターフェース510は、センサ620およびアクチュエータ610に加えて他機器630に接続可能である。外部インターフェース510の各入出力部の具体的な構成は、それに接続される外部機器600の種類に依存する。たとえば、外部機器600が、I/O機器なのか、サーボアンプなのか、または他のコントローラなのかによって、入出力部の具体的な構成は異なる。サーボアンプが用いられる場合、その機能がアクチュエータ610に含まれていてもよい。あるいはサーボアンプの機能が外部インターフェース510に含まれていてもよく、この場合、駆動信号によってサーボモータへの電力供給が行われる。 The
設定入力部520は、通常のコントローラにおけるものと同様に、制御プログラムをユーザから受け付ける。制御プログラムは、センサ情報を参照しながら駆動情報を生成するためのものである。この駆動情報に従ってアクチュエータ610は駆動される。本実施の形態における特徴的な点として、設定入力部520は、拘束条件設定情報をユーザから受け付ける。拘束条件設定情報は、ワークとアクチュエータ610との間で想定される拘束条件を変更するために制御プログラムに関連付けられる命令情報である。 The setting
制御プログラム実行部530は制御プログラムを処理する。制御プログラム実行部530は拘束条件変更命令処理部531を有する。拘束条件変更命令処理部531は、拘束条件設定情報に基づいて拘束条件変更部540へ拘束条件変更命令を発行する。言い換えれば、拘束条件変更命令処理部531は、拘束条件を変更するために制御プログラムに関連付けられている命令情報を処理することにより、拘束条件変更部540へ指令を行う。 The control
拘束条件変更部540は、拘束条件変更命令処理部531によって発行された拘束条件変更命令に基づいて拘束条件を管理する。この目的で、拘束条件変更部540は、現時点での拘束条件の情報を保持するための拘束条件保持部(図示せず)を有する。 The constraint
ワークシミュレーション部550は、ワークの移動についてのシミュレーションを行うものである。具体的には、ワークシミュレーション部550は、少なくとも1つのアクチュエータ610のうち、拘束条件変更部540によって管理されている拘束条件においてワークに拘束されるとされているものに関して制御プログラム実行部530によって生成された駆動情報により、ワークの移動量を推定し、移動量をワークの前回位置に加算することによりワークの現在位置を推定する。 The
センサシミュレーション部561は、センサ620の動作についてのシミュレーションを行うものである。具体的には、センサシミュレーション部561は、ワークシミュレーション部550によって推定されたワークの現在位置の情報を用いることで、センサ情報を模擬したセンサシミュレーション情報を生成する。 The
入出力切換部570は、コントローラ500Aの動作モードを選択するために、信号の流れを切り換えるものである。入出力切換部570は、動作モードとして少なくともセンサシミュレーションモードを有する。さらに本実施の形態においては、入出力切換部570は、動作モードとしてセンサ稼働モードを有する。 The input /
第1に、センサシミュレーションモードについて説明する。本モードにおいては、入出力切換部570は、制御プログラム実行部530によって生成された駆動情報を少なくともワークシミュレーション部550へ送る。さらに、入出力切換部570は、センサ情報の代替情報として、センサシミュレーション部561によって生成されたセンサシミュレーション情報を制御プログラム実行部530へ送る。これにより、制御プログラム実行部530は、実際のセンサ情報ではなく、それを模擬した情報を利用して動作する。好ましくは、入出力切換部570は、制御プログラム実行部530によって生成された駆動情報を、ワークシミュレーション部550だけでなく、アクチュエータ出力部511へも送る。より好ましくは、入出力切換部570は本モードにおいて、駆動情報をアクチュエータ出力部511へも送るか否か選択可能に構成されている。 First, the sensor simulation mode will be described. In this mode, the input /
第2に、センサ稼働モードについて説明する。本モードにおいて、入出力切換部570は、センサ入力部512によって生成されたセンサ情報を制御プログラム実行部530へ送る。これにより、制御プログラム実行部530は、シミュレーションによる情報ではなく、センサ620によるセンサ情報を利用して動作する。よって、搬送システム700Aが実働する。 Second, the sensor operation mode will be described. In this mode, the input /
(動作)
まずワークシミュレーション部550によるシミュレーション動作について説明する。まず、ユーザは設定入力部520を介して、制御プログラムと、ワーク、アクチュエータ610およびセンサ620の各々の設定情報と、外部入力信号切換情報とを入力する。制御プログラムは、制御プログラム実行部530へ送られ、そこで保持される。ワーク、アクチュエータ610およびセンサ620の各々の設定情報は、ワークシミュレーション部550へ送られ、そこで保持される。外部入力信号切換情報は、入出力切換部570へ送られ、そこで保持される。センサ620の設定情報は、外部入力シミュレーション部560のセンサシミュレーション部561へ送られ、そこで保持される。なおワークの設定情報として設定された情報の一部は、拘束条件変更部540へ送られ、そこで保持される。(Operation)
First, a simulation operation by the
制御プログラム実行部530には、上述したように設定入力部520から制御プログラムが送られる。制御プログラムは制御プログラム実行部530に格納される。制御プログラムには、実働において外部機器600を制御するための通常の制御命令に加えて、シミュレーションを可能とするための専用命令が含められている。専用命令は次の2種類のものを有する。第1の命令は、指定されたワークと指定されたアクチュエータ610とが互いに拘束されているものと想定する拘束命令である。第2の命令は、指定されたワークと指定されたアクチュエータ610との互いの拘束が解除されたものと想定する拘束解除命令である。 As described above, the control program is sent from the setting
専用命令は、ワークとアクチュエータ610との間で想定される拘束条件を変更するために制御プログラムに関連付けられる命令情報である。拘束命令は、特定のアクチュエータ動作がワークに対して作用する状況になる制御シーケンスの箇所に追加される。これらの箇所は、たとえば、ロボットがワークを把持する箇所、コンベア上にワークが置かれる箇所、ワークを押すアクチュエータが押す動作を開始する箇所などである。これらの箇所は、プログラム上で、アクチュエータの動作命令が記述されている箇所である。よって拘束命令を追加すべき箇所を判別することは、ユーザにとって容易である。拘束解除命令は、拘束命令とは逆に、特定のアクチュエータ動作が、ワークに対して作用する状況から解放される制御シーケンスの箇所に追加される。これらの箇所は、たとえば、ロボットがワークを設置する箇所、コンベア上からワークが除かれる箇所、ワークを押すアクチュエータの押す動作が完了する箇所などである。これらの箇所は、プログラム上で、通常、アクチュエータ動作命令が記述されている箇所、またはアクチュエータの動作の完了を確認する命令が記述されている箇所である。よって拘束解除命令を追加すべき箇所を判別することは、ユーザにとって容易である。以上のように、ユーザは、通常の制御プログラムに対して、拘束条件設定情報としての専用命令を、容易に付加することができる。 The dedicated command is command information associated with the control program in order to change a constrained condition assumed between the workpiece and the
拘束命令および拘束解除命令は、1つのワークと複数のアクチュエータ610の各々との関係を表現し得る。このため、1つのワークに関して拘束命令または拘束解除命令が重複して発行される場合がある。たとえば、ワークがコンベアによって移動された後に直動アクチュエータでコンベアから外される場合には、ワークがコンベアに載せられる時点で拘束命令が発令され、直動アクチュエータが押す動作を開始する時点でも、さらに拘束命令が発令される。直動アクチュエータの押す動作が完了した時点で、コンベアおよび直動アクチュエータの両方に関して拘束解除命令が発令される。なお、拘束命令は、直動アクチュエータが押す動作を開始する時点で発令される代わりに、直動アクチュエータがどのワークを押すかが判断された時点で発令されてもよい。 The constraint command and the constraint release command can express the relationship between one workpiece and each of the plurality of
制御プログラム実行部530による制御プログラムの実行において、前記拘束命令または拘束解除命令が記述されている箇所が実行されるときには、制御プログラム実行部530内の拘束条件変更命令処理部531が呼び出される。拘束条件変更命令処理部531は、命令の内容を解釈し、ワークの拘束条件を変更する指令を拘束条件変更部540へ発行する。 In the execution of the control program by the control
拘束条件変更部540には、上述したように設定入力部520から設定情報が送られる。この設定情報は拘束条件変更部540に格納される。この設定情報には、拘束条件変更部540が拘束状態を管理するワークを決めるための設定情報が含まれる。たとえば、ワークの名前などの情報が含まれる。拘束条件変更部540は、拘束条件変更命令処理部531からの指令に従って、各ワークの拘束条件を管理する。言い換えれば、どのワークがどのアクチュエータ610に拘束されていると想定されているかが管理される。そして拘束条件変更部540は各ワークの拘束条件をワークシミュレーション部550に出力する。 Setting information is sent from the setting
ワークシミュレーション部550には、上述したように設定入力部520から設定情報が送られる。この設定情報はワークシミュレーション部550に格納される。この設定情報には、ワーク、アクチュエータ610、およびセンサ620の設定情報が含まれる。またワークシミュレーション部550には、上述したように、拘束条件変更部540から、各ワークの拘束条件が入力される。また、ワークシミュレーション部550には、入出力切換部570から、アクチュエータ610の駆動情報が送られる。この、入出力切換部570からの情報信号は、入出力切換部570が外部インターフェース510へ送るものが入出力切換部570内で複製されたものであってもよい。 As described above, the setting information is sent from the setting
図2は、ワークシミュレーション部550に格納される、ワークの設定情報の例を示す。「番号」および「名前」は、異なるワークを区別するためのものである。「サイズ(X,Y,Z)」は、ワークの、センサ620によって検出される部分のサイズをXYZ直交座標系で表している。「初期位置姿勢(X,Y,Z,Rx,Ry,Rz)は、初期状態でのワークの位置および姿勢を表している。X,YおよびZは、位置をXYZ直交座標系で表している。Rx、RyおよびRzのそれぞれは、姿勢をX軸、Y軸およびZ軸周りの回転角で表している。 FIG. 2 shows an example of workpiece setting information stored in the
図3は、ワークシミュレーション部550に格納される、アクチュエータ610の設定情報の例を示す。「番号」および「名前」は、異なるアクチュエータ610を区別するためのものである。「動作方向」は、アクチュエータの変位が生じる方向を表している。「サイズ」は、アクチュエータ610の、センサ620によって検出される部分の動作方向におけるサイズを表している。「初期位置」は、初期状態での動作方向におけるアクチュエータの位置を表している。 FIG. 3 shows an example of setting information of the
図4は、アクチュエータ610およびセンサ620(図1)の例としてのアクチュエータ611および在荷センサ621,622を示す斜視図である。アクチュエータ611は、固定部611bと、ロッド部611rとを有する。固定部611bはロッド部611rを駆動する部分である。ロッド部611rは、ワークに直接作用する部分である。アクチュエータ611は、ロッド部611rが飛び出ている時は、反射式の光学式の在荷センサ621によって検出され、ロッドが引っ込んでいる時は、反射式の光学式の在荷センサ622によって検出される。この構成において、アクチュエータ611のサイズは、ロッド部611rのうち、在荷センサ621および622によって検出され得る部分の厚み(図中、横方向の寸法)に相当する。 4 is a perspective view showing an
図5は、ワークシミュレーション部550の動作を概略的に示すフローチャートである。以下、図5を参照して、ワークシミュレーション部550によるワークの位置のシミュレーション方法について説明する。 FIG. 5 is a flowchart schematically showing the operation of the
まずステップS101にて、シミュレーション処理が、初回の処理として呼び出されたものであるかが判断される。YESと判断された場合には処理がステップS102に進められる。ステップS102にて、全てのアクチュエータ610に関して、アクチュエータ610の前回位置の変数にアクチュエータ610の現在位置の数値が代入される。さらに、全てのワークに関して、ワークの前回位置の変数に、ワークの設定情報として入力されたワークの初期位置が代入される。なお図中、「∀」は「全ての」を表す記号である。また「Axis_PrePos」、「Axis_CurPos」、「Work_PrePos」、および「Work_IniPos」のそれぞれは、アクチュエータ610の前回位置、アクチュエータ610の現在位置、ワークの前回位置、およびワークの初期位置を表している。そして処理が終了される。 First, in step S101, it is determined whether the simulation process is called as the first process. If YES is determined, the process proceeds to step S102. In step S102, for all the
その後、シミュレーション処理が再度呼び出される。この場合、ステップS101にてNOとの判断がなされることになる。これにより処理がステップS103に進められる。ステップS103にて、全てのアクチュエータ610に関して、アクチュエータ610の変位量の変数に、アクチュエータ610の現在位置からアクチュエータ610の前回位置を引いた値が代入される。図中、「Axis_DelPos」はアクチュエータ610の変位量を表している。その後、ステップS104にて、カウンタ変数iに「1」の値が代入される。 Thereafter, the simulation process is called again. In this case, NO is determined in step S101. Accordingly, the process proceeds to step S103. In step S103, for all the
ステップS105にて、番号iのワークの位置が次のように算出される。アクチュエータ610のうち、拘束条件において番号iのワークに拘束されるとされている全てのアクチュエータに関して、ステップS103で計算された変位量に当該アクチュエータの動作方向を乗じた値が算出される。これらの値の合計値が、ワークの前回位置に加算される。図中、「Work_CurPos_i」および「Work_PrePos_i」のそれぞれは、番号iのワークの現在位置および前回位置を表している。また「Chain_Cond_i_j」は、番号iのワークと番号jのアクチュエータとの間の拘束条件を表している。ここで、拘束条件は、拘束されている場合には「1」を、拘束されていない場合には「0」を、値として取るものとする。また「Dir_Axis_j」は番号jのアクチュエータ610の動作方向を表している。また「AXIS_NUM」はアクチュエータ610の総数を表している。 In step S105, the position of the workpiece with the number i is calculated as follows. Of all the
ステップS106にて、カウンタ変数iに1が加算された上で、それがワークの総数より大きいかが判断される。NOと判断された場合には、処理がステップS105に戻される。なお図中、「++i」は変数iに1を加算することを表している。また「WORK_NUM」はワークの総数を表している。 In step S106, 1 is added to the counter variable i, and it is determined whether it is larger than the total number of workpieces. If NO is determined, the process returns to step S105. In the figure, “++ i” indicates that 1 is added to the variable i. “WORK_NUM” represents the total number of works.
ステップS105がワークの総数と同じだけ繰り返されれば、ステップS106にて、NOとの判断がなされることになる。その場合、処理が終了される。ワークシミュレーション部550は、上記で説明した処理が終了したら、算出されたワークの位置情報を外部入力シミュレーション部560に出力する。 If step S105 is repeated as many times as the total number of workpieces, a determination of NO is made in step S106. In that case, the process ends. The
図6は、外部入力シミュレーション部560のセンサシミュレーション部561に格納される、センサ620の設定情報の例を示す。「番号」および「名前」は、異なるセンサ620を区別するためのものである。「通常出力」は、「検出対象」を「検出位置」で検出していない状態での出力値を表している。 FIG. 6 shows an example of setting information of the
図7は、センサシミュレーション部561の動作を概略的に示すフローチャートである。センサシミュレーション部561には、上述したように、設定入力部520からセンサ620の設定情報が入力され、ワークシミュレーション部550からワークの位置情報が入力される。センサシミュレーション部561は、この情報を用いて、センサ620の状態のシミュレーションを行う。以下、図7を参照して、このシミュレーション方法について説明する。 FIG. 7 is a flowchart schematically showing the operation of the
まずステップS201にて、カウンタ変数iに「1」の値が代入される。ステップS202にて、番号iのセンサ620の検出対象がワークであるかが判断される。YESと判断された場合には、処理がステップS203に進められる。 First, in step S201, the value “1” is substituted into the counter variable i. In step S202, it is determined whether the detection target of the
ステップS203にて、X、YおよびZの全方向に関して、検出対象のワークの位置にワークのサイズの半分の値を加えた値が番号iのセンサの検出位置より大きく、かつ、検出対象のワークの位置からワークのサイズの半分の値を引いた値が番号iのセンサの検出位置より小さい、という条件を満たすワークが存在するかが判断される。ここで、ワークのサイズの半分の値を用いるのは、ワークの位置がワークの中点に対応しているためである。図中、「∃」は「存在する」を表す記号であり、「∧」は条件の合接を表している。また「Sensor_ChkPos_i」は番号iのセンサの検出位置を表している。また「Work_CurPos」および「Work_Size」のそれぞれは、ワークの位置およびサイズを表している。 In step S203, the value obtained by adding half the size of the workpiece to the position of the workpiece to be detected in all the X, Y, and Z directions is larger than the detection position of the sensor of number i, and the workpiece to be detected It is determined whether there is a workpiece that satisfies the condition that a value obtained by subtracting half the size of the workpiece from the position is smaller than the detection position of the sensor of number i. Here, the half value of the workpiece size is used because the workpiece position corresponds to the midpoint of the workpiece. In the figure, “∃” is a symbol representing “exists”, and “∧” represents a concatenation of conditions. “Sensor_ChkPos_i” represents the detection position of the sensor of number i. Each of “Work_CurPos” and “Work_Size” represents the position and size of the work.
ステップS203においてYESと判断された場合には、処理がステップS204に進められる。ステップS204にて、センサシミュレーション情報として、番号iのセンサの出力信号は、通常出力が反転されたものとされる。図中「¬」は論理の否定を表す記号である。また「sig_i」および「sig_nor_i」のそれぞれは、番号iのセンサについて、シミュレーション情報としての出力と、通常出力とを表している。ステップS203においてNOと判断された場合には、処理がステップS205に進められる。ステップS205にて、センサシミュレーション情報として、番号iのセンサの出力信号は、通常出力であるものとされる。いずれの場合においても、その後、処理がステップS210に進められる。 If it is determined as YES in step S203, the process proceeds to step S204. In step S204, as the sensor simulation information, the output signal of the sensor of number i is assumed to have the normal output inverted. In the figure, “¬” is a symbol representing negation of logic. Each of “sig_i” and “sig_nor_i” represents an output as simulation information and a normal output for the sensor of number i. If NO is determined in step S203, the process proceeds to step S205. In step S205, as the sensor simulation information, the output signal of the sensor with the number i is assumed to be a normal output. In any case, thereafter, the process proceeds to step S210.
一方、ステップS202にてNOと判断された場合には、処理がステップS206に進められる。ステップS206では、番号iのセンサの検出対象がアクチュエータ610であるかが判断される。 On the other hand, if NO is determined in step S202, the process proceeds to step S206. In step S206, it is determined whether the detection target of the sensor with the number i is the
ステップS206においてYESと判断される場合には、処理がステップS207に進められる。ステップS207では、検出対象である番号jのアクチュエータの位置にアクチュエータのサイズの半分の値を加えた値が番号iのセンサ620の検出位置より大きく、かつ、検出対象である番号jのアクチュエータの位置からアクチュエータのサイズの半分の値を引いた値が番号iのセンサ620の検出位置より小さい、という条件が満たされるか判断される。図中、「Axis_CurPos_j」および「Axis_Size_j」のそれぞれは、検出対象である番号jのアクチュエータの位置およびサイズを表している。 If it is determined as YES in step S206, the process proceeds to step S207. In step S207, the value obtained by adding half the size of the actuator to the position of the actuator of the number j that is the detection target is larger than the detection position of the
ステップS207においてYESと判断された場合には、処理がステップS208に進められる。ステップS208にて、センサシミュレーション情報として、番号iのセンサの出力信号は、通常出力が反転されたものとされる。ステップS207においてNOと判断された場合には、処理がステップS209に進められる。ステップS209にて、センサシミュレーション情報として、番号iのセンサの出力信号は、通常出力であるものとされる。いずれの場合においても、その後、処理がステップS210に進められる。一方、ステップS206においてNOと判断された場合には、処理がステップS210に進められる。 If it is determined as YES in step S207, the process proceeds to step S208. In step S208, as the sensor simulation information, the output signal of the sensor of number i is assumed to have the normal output inverted. If NO is determined in step S207, the process proceeds to step S209. In step S209, as sensor simulation information, the output signal of the sensor of number i is assumed to be a normal output. In any case, thereafter, the process proceeds to step S210. On the other hand, if NO is determined in step S206, the process proceeds to step S210.
ステップS210にて、カウンタ変数iに1が加算された上で、それがセンサ620の総数より大きいかが判断される。図中、「Sensor_NUM」はセンサ620の総数を表している。NOと判断された場合には、処理がステップS202に戻される。 In step S210, 1 is added to the counter variable i, and it is determined whether it is larger than the total number of
ステップS202からの処理がセンサの総数と同じだけ繰り返されれば、ステップS210にて、YESとの判断がなされることになる。その場合、処理が終了される。センサシミュレーション部561は、上記で説明した処理が終了したら、上記処理により算出されたセンサの出力信号を表す情報、すなわちセンサ情報を模擬したセンサシミュレーション情報、を入出力切換部570に出力する。 If the process from step S202 is repeated as many times as the total number of sensors, a determination of YES is made in step S210. In that case, the process ends. When the processing described above ends, the
入出力切換部570は、設定入力部520から入力されていた外部入力信号切換情報に従った動作モードに応じて、情報信号の授受を行う。動作モードがシミュレーションモードの場合、入出力切換部570は、外部インターフェース510のセンサ入力部512から入力されたセンサ情報を、上述したセンサシミュレーション情報によって代替し、当該情報を制御プログラム実行部530へ出力する。動作モードがセンサ稼働モードの場合、入出力切換部570は、上述した代替は行わずに、センサ情報を制御プログラム実行部530へ出力する。 Input /
なお外部入力信号切換情報は、センサ620のすべてに関して、シミュレーションモードかセンサ稼働モードかを一括して指定するものであってよい。あるいは、外部入力信号切換情報は、センサ620の各々に関して、シミュレーションモードかセンサ稼働モードかを個別に指定するものであってもよい。個別の指定は、たとえば、設定入力部520における一覧表への入力によって行われてもよい。 It should be noted that the external input signal switching information may collectively specify the simulation mode or the sensor operation mode for all of the
(効果)
本実施の形態によれば、センサ情報を模擬したセンサシミュレーション情報が、ワークの推定された現在位置の情報を用いて生成される。ワークの現在位置は、ワークの推定された移動量をワークの前回位置に加算することにより推定される。ワークの移動量は、少なくとも1つのアクチュエータ610のうち、拘束条件においてワークに拘束されるとされているものに関して制御プログラム実行部530によって生成された駆動情報により推測される。拘束条件は拘束条件設定情報に基づいて管理される。拘束条件設定情報は、搬送システムの制御プログラムを参照することにより、搬送システムの種類に大きく依存することなくユーザが容易に作成し得る。これにより、センサ情報のシミュレーションを、搬送システムの種類に大きく依存せずに容易に行うことができる。得られたセンサシミュレーション情報は、センサ情報が欠如した状態での搬送システムの試験における代替情報として、または、搬送システムの実働における参考情報として利用することができる。(effect)
According to the present embodiment, sensor simulation information simulating sensor information is generated using information on the current position of the workpiece estimated. The current position of the workpiece is estimated by adding the estimated movement amount of the workpiece to the previous position of the workpiece. The movement amount of the workpiece is estimated from the drive information generated by the control
ワークの推定移動量は、少なくとも1つのアクチュエータ610のうち、拘束条件変更部540によって管理されている拘束条件においてワークに拘束されるとされているものに関して制御プログラム実行部530によって生成された駆動情報に基づいて、容易に得ることができる。この推定移動量をワークの前回位置に加算することでワークの現在位置が推測される。以上のように、ワークの推定移動量は駆動情報から容易に得られ、それを用いた単純な演算により、ワークの現在位置が推測される。これにより、ワークの現在位置を、少ない計算量で推測することができる。よって、シミュレーション用途に適したコンピュータに比して計算リソースが少ないことが通常である搬送システムのコントローラ500Aであっても、リアルタイムでのシミュレーションを行うことができる。 The estimated movement amount of the work is the drive information generated by the control
以上のように本実施の形態によれば、センサ情報のシミュレーションを、搬送システム700Aの種類に大きく依存せずに容易に、かつ、搬送システム700Aのコントローラ500Aを利用して行うことができる。 As described above, according to the present embodiment, the simulation of sensor information can be easily performed using the
より具体的には、本実施の形態によれば、コントローラを動作させるための通常の情報に加えて、以下の2つの情報を追加するだけで、シミュレーションが可能である。第1の情報として、ワークおよびアクチュエータ610のサイズおよび位置関係といった情報が追加される。これらの情報は、搬送システム700Aの装置構成から明らかな情報であるため、ユーザは容易に追加することができる。第2の情報として、拘束条件設定情報が追加される。拘束条件設定情報は、通常の制御プログラムに関連付けられる命令情報である。この命令情報は、ワークとアクチュエータ610との間で想定される拘束条件を変更する専用命令である。専用命令の追加箇所は、ワークに作用するアクチュエータ610の動作に関連した命令の前後であり、そのような箇所を見分けることはユーザにとって容易である。よって、従来は搬送システムの構成に合わせてユーザが手探りで設計する必要があったシミュレーション方法を、本実施の形態によれば、一定の手順に従った汎用的手法により設定することができる。 More specifically, according to the present embodiment, the simulation can be performed only by adding the following two pieces of information in addition to the normal information for operating the controller. Information such as the size and positional relationship of the workpiece and the
また、上記で説明したシミュレーションは、拘束条件を基にワークの移動を計算するため、3次元空間内での干渉を利用した方法と異なり、少ない計算負荷で実現することができる。具体的には、ワークの移動量が、拘束条件に応じてアクチュエータ610の変位量を加算するだけで算出される。このような単純な算出は、コントローラ500A内の他の制御処理と比較して、非常に少ない計算負荷で処理可能である。 In addition, since the simulation described above calculates the movement of the workpiece based on the constraint condition, it can be realized with a small calculation load unlike the method using interference in the three-dimensional space. Specifically, the movement amount of the workpiece is calculated simply by adding the displacement amount of the
さらに本実施の形態によれば、入出力切換部570はセンサシミュレーションモードにおいて、制御プログラム実行部530によって生成された駆動情報をアクチュエータ出力部511へ送る。これにより、センサ情報を模擬しつつ、アクチュエータ出力部511からの駆動信号の発生をともなう動作が可能となる。これにより、特に、ワークを搬送しないために適切なセンサ情報が得られない場合においても、アクチュエータ610へ駆動信号を発生することができる。これにより、ワークを搬送することなく、アクチュエータ610への駆動信号の発生を試験することができる。 Furthermore, according to the present embodiment, input /
さらに本実施の形態によれば、入出力切換部570はセンサ稼働モードにおいて、センサ入力部512によって生成されたセンサ情報を制御プログラム実行部530へ送る。これにより、実際のセンサ620のセンサ信号を用いてコントローラ500Aを実働させることができる。 Furthermore, according to the present embodiment, input /
なお、上記において詳述したセンサおよびアクチュエータの構成は例示であり、他の様々な構成が用いられ得る。 Note that the configurations of the sensors and actuators detailed above are exemplary, and various other configurations can be used.
(第1の変形例)
上記では、アクチュエータ610として、サーボモータで駆動する直動軸を有するアクチュエータ611について詳しく説明した。しかしながら、アクチュエータ610の構成は、このようなものに限定されるわけではない。たとえば、アクチュエータ610が、コンベアおよびストッパを含んでいてもよい。ここでのストッパは、コンベア上を流れるワークの移動を制限するものである。たとえば、コンベアの末端に設置される固定のストッパ、および、I/Oによって開閉する、スライド方式のストッパが知られている。(First modification)
In the above, the
図8は、アクチュエータとしてのコンベアの設定情報の例を示す。「スピード」はコンベアのスピードを表している。その他、上述した設定情報(図3)と同様の内容も含まれている。ワークおよびコンベアの間の拘束条件が設定されている場合には、コンベアの変位量をワークの位置に加算することで、ワークの移動が模擬される。コンベアの変位量は、コンベアが駆動中は、設定情報の動作方向にスピードを乗じた値で計算され、コンベアが停止中は0で計算される。逆転動作可能なコンベアであれば、逆転中は、移動方向を反転させての計算がなされればよい。 FIG. 8 shows an example of setting information of a conveyor as an actuator. “Speed” represents the speed of the conveyor. In addition, contents similar to the setting information (FIG. 3) described above are also included. When the constraint condition between the workpiece and the conveyor is set, the movement of the workpiece is simulated by adding the displacement amount of the conveyor to the position of the workpiece. The displacement amount of the conveyor is calculated as a value obtained by multiplying the operation direction of the setting information by the speed while the conveyor is driven, and is calculated as 0 when the conveyor is stopped. If the conveyor is capable of reverse operation, the calculation may be performed by reversing the moving direction during reverse operation.
図9は、アクチュエータとしてのストッパの設定情報の例を示す。ワークおよびストッパの間の拘束条件が設定されている場合には、ワークの位置が次のように計算される。まず、コンベアの変位によるワークの移動が計算される。ストッパの「停止方向」が「1」の値に設定されている方向において、ワークの位置がストッパの「停止位置」を超えている場合には、当該方向におけるワークの位置は、ストッパの「停止位置」によって規定される。ストッパの停止方向が「−1」の値に設定されている方向においては、ワークの位置がストッパの「停止位置」より小さい場合には、当該方向におけるワークの位置は、ストッパの「停止位置」によって規定される。このように、ストッパの「停止方向」の符号は、正負どの方向へのワークの移動が制限されるかの設定に対応している。 FIG. 9 shows an example of setting information of a stopper as an actuator. When the constraint condition between the workpiece and the stopper is set, the position of the workpiece is calculated as follows. First, the movement of the workpiece due to the displacement of the conveyor is calculated. If the position of the workpiece exceeds the “stop position” of the stopper in the direction in which the “stop direction” of the stopper is set to a value of “1”, the position of the workpiece in that direction is the “stop” of the stopper. Defined by "position". In the direction in which the stop direction of the stopper is set to a value of “−1”, when the position of the workpiece is smaller than the “stop position” of the stopper, the position of the workpiece in that direction is the “stop position” of the stopper. It is prescribed by. Thus, the sign of the “stop direction” of the stopper corresponds to the setting in which direction the work movement of the work is restricted.
他にもアクチュエータ610として、ロボットのようなものが用いられてもよい。ロボットのように、互いにつなぎ合わされた複数の駆動部によって手先などの先端部分が制御されるような機械の場合には、各駆動部の位置情報から、先端部分の位置を算出するキネマティクスをコントローラ500Aは解いている。この場合、ワークシミュレーション部550に、キネマティクスの解かれた手先位置情報が入出力切換部570から入力される。ワークシミュレーション部550は、手先位置情報から求められる手先位置の変位量に基づいてワークの移動量を算出する。コントローラ500A内でキネマティクスが解かれる場合には、重力保証などの、種々の複雑な補正が行われ得る。上記のように、手先位置情報がワークシミュレーション部550へ与えられることで、そのような複雑な補正計算をワークシミュレーション部550で行う必要がなくなる。 In addition, a robot or the like may be used as the
(第2の変形例)
ワークの位置変更だけでなく、姿勢変更がワークシミュレーション部550で扱われてもよい。3次元空間内で、物体の姿勢変更が扱われる場合には、その回転中心をどのように定めるかといった問題が発生する。ワークシミュレーション部550の計算負荷を抑えるため、および、設定情報を減らすためには、回転中心はワークの中心とすることが望ましい。これにより、ワークの姿勢が変化しても、ワークの位置情報が変化しない。(Second modification)
Not only the workpiece position change but also the posture change may be handled by the
図10に示すように、ワークシミュレーション部550では、ワーク100の形状が、座標軸X、YおよびZのそれぞれと平行な辺を有する直方体として扱われてもよい。言い換えれば、ワークの形状が、ワークを内包する最小の直方体100Aで模擬される。この場合、ワークのサイズがその姿勢によって変化する。図中では、XY平面内での角度α(αは0°以上、90°以下)の姿勢変更の様子を示している。実線の四角がワークの姿勢を表現しており、点線の四角がワークを内包する最小の直方体を表現している。XY平面内でのワークのサイズを(2x,2y)とすると、ワークを内包する最小の直方体のXY平面内でのサイズは、
(2(x・cosα+y・sinα),2(x・sinα+y・cosα))
によって算出される。このように、ワークの姿勢変更を、ワークを内包する最小の直方体のサイズの変更として扱うことができる。なおこの方法は一例に過ぎず、ワークの姿勢変更は、他の様々な方法によって扱われ得る。As shown in FIG. 10, the
(2 (x · cos α + y · sin α), 2 (x · sin α + y · cos α))
Is calculated by As described above, the change in the posture of the workpiece can be treated as a change in the size of the smallest rectangular parallelepiped containing the workpiece. This method is merely an example, and the posture change of the workpiece can be handled by various other methods.
<実施の形態2>
(構成)
上記実施の形態1においては、アクチュエータ610の、ワークへ作用する部分(作用部)の位置が、制御プログラム実行部530によって生成される駆動情報を比較的単純に用いることで、正確にまたは近似的に把握できることが想定されている。しかしながら、駆動情報と作用部の位置との関係がより複雑となるようなアクチュエータも存在する。この場合、作用部の位置の算出がワークシミュレーション部において行われてもよい。言い換えれば、アクチュエータのキネマティクスを解く算術処理がワークシミュレーション部において行われてもよい。本実施の形態においては、このようなワークシミュレーション部が用いられる場合について説明する。<
(Constitution)
In the first embodiment, the position of the part (acting part) acting on the workpiece of the
図11は、本実施の形態において用いられるアクチュエータ612を示す斜視図である。アクチュエータ612は、把持部612h(作用部)と、駆動部612dとを有する。把持部612hは、アクチュエータ612の先端部であり、ワークを直接保持する部分である。よって把持部612hは、アクチュエータ612の、ワークへ直接作用する部分である。駆動部612dは、アクチュエータ612の、把持部612hを駆動する部分である。具体的には、駆動部612dは、自身を軸中心として回転駆動されるものである。把持部612hは、軸中心から離れて駆動部612dに固定されている。よって把持部612hは、駆動部612dの回転駆動に伴って、円周上の軌道に沿って変位する。ここで、アクチュエータ612へ与えられる駆動情報は、駆動部612dの回転駆動の角度量の情報である。この角度量から把持部612hの位置を把握するためには、当該角度量と当該位置との関係の情報を用いて前者から後者を算出する必要がある。 FIG. 11 is a perspective view showing an
図12は、本実施の形態における搬送システム700Bの構成を概略的に示すブロック図である。搬送システム700Bはコントローラ500Bを有する。本実施の形態においては、少なくとも1つのアクチュエータ610に、アクチュエータ612(図11)が含まれている。コントローラ500Bはワークシミュレーション部550Bを有する。ワークシミュレーション部550Bはアクチュエータ軌跡生成部551を有する。 FIG. 12 is a block diagram schematically showing the configuration of the
本実施の形態においては、設定入力部520は、アクチュエータ610に含まれるアクチュエータ612の機械構成情報をユーザから受け付ける。機械構成情報は、アクチュエータ612の把持部612hの位置を算出するために、制御プログラム実行部530によって生成される駆動情報と組み合わされて用いられる情報である。言い換えれば、機械構成情報は、把持部612hの動作軌跡を算出するために、駆動情報と組み合わされて用いられる情報である。アクチュエータ612の機械構成情報は、たとえば、駆動部612dの軸中心から把持部612hまでの距離と、角度量ゼロのときの駆動部612dから把持部612hへの方向とを表す情報である。機械構成情報はアクチュエータ軌跡生成部551へ送られる。 In the present embodiment, setting
アクチュエータ軌跡生成部551は、アクチュエータ612の機械構成情報を保持する機械構成情報保持部(図示せず)を有する。アクチュエータ軌跡生成部551は、上記機械構成情報と、制御プログラム実行部530によって生成された駆動情報とから、アクチュエータ610の把持部612hが動作する軌跡を算出する。 The actuator trajectory generation unit 551 has a machine configuration information holding unit (not shown) that holds the machine configuration information of the
なお、上記以外の構成については、上述した実施の形態1の構成とほぼ同じであるため、同一または対応する要素について同一の符号を付し、その説明を繰り返さない。 Since the configuration other than the above is substantially the same as the configuration of the first embodiment described above, the same or corresponding elements are denoted by the same reference numerals, and description thereof is not repeated.
(効果)
本実施の形態によれば、アクチュエータ軌跡生成部551は、アクチュエータ612の把持部612hが動作する軌跡を算出する。これにより、制御プログラム実行部530によって生成される駆動情報としての角度量だけではアクチュエータ612の把持部612h(作用部)の位置が算出できない場合においても、上述した軌跡の算出により、把持部612hの位置を算出することができる。より一般的にいえば、制御プログラム実行部530によって生成される駆動情報だけではワークに対するアクチュエータ610の作用が判別できない場合においても、ワークに対するアクチュエータ610の作用を判別することができる。よってこのような場合においても、実施の形態1と同様の効果を得ることができる。(effect)
According to the present embodiment, actuator trajectory generation unit 551 calculates a trajectory in which gripping
(変形例)
アクチュエータ軌跡生成部551によってその作用部の位置が算出されるアクチュエータは、アクチュエータ612のように回動するものに限定されるものではない。たとえば、エアシリンダを制御する駆動情報は、その電磁弁の動作のON/OFF情報のみであり得る。この場合、たとえば、シリンダの動作方向、スピード、およびストロークのような情報が、アクチュエータの機械構成情報である。ON/OFF情報に加えて、この機械構成情報を用いることで、アクチュエータ軌跡生成部551は、エアシリンダの先端部(作用部)の位置を算出し得る。(Modification)
The actuator whose position of the action part is calculated by the actuator trajectory generation unit 551 is not limited to the one that rotates like the
<実施の形態3>
上記実施の形態1または2においては、拘束条件においてワークに拘束されるとされているアクチュエータの変位量(実施の形態2においては、その作用部の変位量)のすべてまたはほぼすべてがワークの移動量に反映されることが想定されている。しかしながら、搬送システムの構成によっては、アクチュエータの変位量の一部がワークの移動量に反映されない場合もあり得る。このように反映されない量が無視できない程度に大きい場合、シミュレーションの精度が低下し得る。本実施の形態は、このような場合においてもシミュレーションの精度を確保することが意図されたものである。<
In the first or second embodiment, all or almost all of the displacement amount of the actuator (in the second embodiment, the displacement amount of the action portion) that is supposed to be restrained by the workpiece under the restraint condition is the movement of the workpiece. It is assumed to be reflected in the quantity. However, depending on the configuration of the conveyance system, a part of the displacement amount of the actuator may not be reflected in the movement amount of the workpiece. If the amount that is not reflected in this way is so large that it cannot be ignored, the accuracy of the simulation can be reduced. The present embodiment is intended to ensure the accuracy of simulation even in such a case.
図13は、本実施の形態における搬送システムが有するアクチュエータ611(図4のものと同様)と、それが作用するワーク100との配置の例を示す斜視図である。本実施の形態においては、ロッド部611rが移動し始めるときに、ロッド部611rとワーク100との間に隙間RIが存在する。このため、ロッド部611rの全変位量のうち、ロッド部611rがワーク100に達するまでの変位量は、ワークの移動量には直接反映されない無効な変位量である。ここで、制御プログラム実行部530によって生成されるアクチュエータ611の駆動情報は、ON/OFF情報である。よって、ワークとアクチュエータ611との間で想定される拘束条件を変更するために制御プログラムに関連付けられる命令情報は、プログラムリストにおいて、アクチュエータ611へのON/OFF命令の前後に記述されることが想定される。このため、アクチュエータ611が上述した無効な移動を行っている間も、アクチュエータ611とワーク100との間の拘束条件は、両者が互いに拘束されていることを意味するものとなっている。よって、アクチュエータ611にとって、隙間RIを通過する変位は、ワーク100と拘束されているものとされつつの変位ではあるものの、実際にはワーク100の移動へは直接は寄与しない変位である。言い換えれば、アクチュエータ611が変位する区間において、隙間RIは、ワークの移動量への寄与が無効となる部分、すなわち作用無効区間、である。よって、ワーク100の移動量をより正確に把握するためには、アクチュエータ611の変位量のうち無効となる部分を把握する必要がある。 FIG. 13 is a perspective view showing an example of the arrangement of the actuator 611 (similar to that shown in FIG. 4) included in the transfer system according to the present embodiment and the
図14は、本実施の形態における搬送システム700Cの構成を概略的に示すブロック図である。本実施の形態においては、少なくとも1つのアクチュエータ610に、作用無効区間を伴うアクチュエータ611(図13)が含まれている。搬送システム700Cはコントローラ500Cを有する。コントローラ500Cはワークシミュレーション部550Cを有する。ワークシミュレーション部550Cは作用無効区間判定部552を有する。作用無効区間判定部552は、制御プログラム実行部530によって生成される駆動情報によって表されたアクチュエータ611の変位量のうち、ワークの移動量への寄与が無効となる部分(作用無効区間)を設定する。 FIG. 14 is a block diagram schematically showing a configuration of a transport system 700C in the present embodiment. In the present embodiment, at least one
アクチュエータ610の各々の作用無効区間は、設定入力部520から、アクチュエータ610の設定情報としてワークシミュレーション部550Cに入力される。作用無効区間は、たとえば「0〜100」といったような、アクチュエータ610の変位範囲で設定され得る。作用無効区間判定部552は、ワークの移動量が計算される際に、アクチュエータ610の動作が作用無効区間内での変位であるかを判定し、もしそうであれば、その変位量はワークの移動量に反映させない。より具体的にいえば、その変位量はワークの位置に加算されない。 Each action invalid section of the
なお、上記以外の構成については、上述した実施の形態1または2の構成とほぼ同じであるため、同一または対応する要素について同一の符号を付し、その説明を繰り返さない。 Since the configuration other than the above is substantially the same as the configuration of the first or second embodiment described above, the same or corresponding elements are denoted by the same reference numerals, and description thereof will not be repeated.
本実施の形態によれば、作用無効区間判定部552は、移動量のうち無効となる部分を設定する。これにより、ワークとアクチュエータ611との間に隙間RIがある状態からアクチュエータ611がワークに作用する場合でも、ワークの現在位置を、高精度かつ低計算負荷で推定することができる。より一般的にいえば、隙間またはその他の要因に起因してアクチュエータが動作命令の途中からワークに作用する場合でも、ワークの現在位置を、高精度かつ低計算負荷で推定することができる。 According to the present embodiment, the action invalid section determination unit 552 sets an invalid part of the movement amount. Thereby, even when the actuator 611 acts on the workpiece from a state where there is a gap RI between the workpiece and the
<実施の形態4>
上記実施の形態1〜3においては、外部機器600からコントローラへの入力信号情報のシミュレーションとして、ワークまたはアクチュエータ610の位置を検出する在荷センサであるセンサ620からの入力信号情報のシミュレーションが行われる。一方で、コントローラへの入力信号を発生する機器は、在荷センサだけに限られるわけではない。在荷センサ以外の何らかのセンサ、または、このコントローラと互いに通信する他のコントローラ、管理コンピュータ、サーバもしくはユーザインターフェースなどからも、コントローラへの入力信号が発生され得る。このため、本実施の形態においては、入力信号情報のシミュレーションが、在荷センサであるセンサ620に関してだけでなく、上述したような他機器630の少なくとも1つに関しても行われる場合について説明する。他機器630からコントローラへの入力信号としては、たとえば、何らかのトリガ信号を受けてすぐにまたは一定時間経過後に発生するものなどがある。トリガ信号としては、たとえば、コントローラの外部インターフェースからの出力信号、または時刻情報信号などがある。また、コントローラによる制御の開始も、一種のトリガ信号として作用し得る。<Embodiment 4>
In the first to third embodiments, simulation of input signal information from the
図15は、本実施の形態における搬送システム700Dの構成を概略的に示すブロック図である。搬送システム700Dはコントローラ500Dを有する。コントローラ500Dは外部入力シミュレーション部560Dを有する。外部入力シミュレーション部560Dは他機器シミュレーション部562を有する。他機器シミュレーション部562は、在荷センサとしてのセンサ620以外かつアクチュエータ610以外の外部機器である他機器630の少なくとも1つに関してシミュレーションを行うものである。具体的には、他機器シミュレーション部562は、他機器630の少なくとも1つからの入力信号情報を模擬するものである。他機器シミュレーション部562は、他機器630に関して設定入力部520から入力された設定情報と、入出力切換部570からの出力信号情報とに基づいて、他機器630からの入力信号情報の模擬信号情報を生成する。ここで用いられる出力信号情報は、搬送システム700Dの実働において入出力切換部570から外部インターフェース510の他機器入出力部513へ送られる信号情報に相当する。他機器シミュレーション部562によって生成された模擬信号情報は、他機器630からの入力信号情報の少なくとも一部の代替情報として、制御プログラム実行部530に送られる。 FIG. 15 is a block diagram schematically showing a configuration of a transport system 700D in the present embodiment. The transport system 700D has a
図16は、他機器630に関しての設定情報の例を示す。「番号」および「名前」は、模擬される入力信号情報を区別するためのものである。「トリガ」は、入力信号情報のトリガとなる信号情報の名前である。「遅れ時間」は、トリガとなる信号情報の発生から、模擬される入力信号情報の出力が変化するまでの時間である。「出力」は、模擬される入力信号情報の出力値である。この例では、「signal_1」に対応する入力信号が、「trigger_1」に対応する出力信号がONしてから500ms後にONすることが模擬されている。入力信号は、このようなON/OFFのデジタル信号に限られるわけではない。たとえば、図中の「signal_2」に対応する入力信号が、「trigger_2」に対応する出力信号がONしてから3s後に出力値「100」をとることが模擬されてもよい。このように入力信号は、数値、文字列、ファイルなど、任意の形式のデータを表していてよい。 FIG. 16 shows an example of setting information regarding the
なお、上記以外の構成については、上述した実施の形態1〜3の構成とほぼ同じであるため、同一または対応する要素について同一の符号を付し、その説明を繰り返さない。 In addition, since it is substantially the same as the structure of Embodiment 1-3 mentioned above about the structure except the above, the same code | symbol is attached | subjected about the same or corresponding element, and the description is not repeated.
本実施の形態によれば、他機器シミュレーション部562が他機器630のシミュレーションを行う。これにより、コントローラ500Dに接続される様々な外部機器600の振る舞いのシミュレーションが可能とされる。 According to the present embodiment, other
<実施の形態5>
コントローラの動作目的によっては、その外部インターフェース510からアクチュエータ610の少なくとも1つへの出力信号が無効化されることが望まれる場合がある。たとえば、アクチュエータ610の一部もしくは全部が準備されていない場合、または、アクチュエータ610の一部もしくは全部を動作させずにコントローラの制御プログラムを確認することが望まれる場合があり得る。本実施の形態においては、このような場合に対応することができる搬送システムについて説明する。<
Depending on the operational purpose of the controller, it may be desirable to disable the output signal from its
図17は、本実施の形態における搬送システム700Eの構成を概略的に示すブロック図である。搬送システム700Eはコントローラ500Eを有する。コントローラ500Eは入出力切換部570Eを有する。入出力切換部570Eは出力抑制部571を有する。出力抑制部571は、アクチュエータ出力部511への駆動情報の出力を一時的に無効化することができるように構成されている。アクチュエータ出力部511への出力が無効化されつつも、必要に応じてワークシミュレーション部550および外部入力シミュレーション部560の少なくともいずれかへの出力は維持されてよい。 FIG. 17 is a block diagram schematically showing the configuration of the
なお、上記以外の構成については、上述した実施の形態1〜4の構成とほぼ同じであるため、同一または対応する要素について同一の符号を付し、その説明を繰り返さない。 In addition, since it is substantially the same as the structure of Embodiment 1-4 mentioned above about the structure except the above, the same code | symbol is attached | subjected about the same or corresponding element, and the description is not repeated.
本実施の形態によれば、入出力切換部570Eは、アクチュエータ出力部511への駆動情報の出力を一時的に無効化することができる出力抑制部571を有する。これにより、アクチュエータ610を準備することなく、または、アクチュエータ610を実際に動作させることなく、コントローラ500Eを試験することができる。 According to the present embodiment, the input /
なお本実施の形態においてはアクチュエータ610への駆動情報の出力が無効化される場合について説明したが、変形例として、他機器630への出力が無効化されてもよい。 In the present embodiment, the case where the output of the drive information to the
<実施の形態6>
図18は、本実施の形態における搬送システム700Fの構成を概略的に示すブロック図である。搬送システム700Fはコントローラ500Fを有する。コントローラ500Fは外部シナリオ実行部580を有する。外部シナリオ実行部580は、コントローラ500F内の各種機能ブロックと接続しており、外部シナリオに記述された内容に従って、各機能ブロックに対して各種データの強制変更指令を発令する。具体的には、外部シナリオ実行部580は、制御プログラム実行部530、拘束条件変更部540、ワークシミュレーション部550、センサシミュレーション部561、および入出力切換部570の少なくともいずれかの内部データを強制的に変更する命令を発行する。たとえば、制御プログラム実行部530に格納された制御プログラム内の内部変数が変更される。あるいは、拘束条件変更部540に保持された拘束条件が変更される。あるいは、ワークシミュレーション部550によるシミュレーションにおいてワークが強制的に移動される。あるいは、センサシミュレーション部561へワークシミュレーション部550から入力される情報が変更される。あるいは、入出力切換部570における入出力信号が強制的に変更される。<Embodiment 6>
FIG. 18 is a block diagram schematically showing the configuration of the
外部シナリオ実行部580で処理されるシナリオの形式は、コントローラ500Fが解釈可能なものであればよい。よってこのシナリオは、たとえば、制御プログラム実行部530で用いられる命令セットによるものであってもよく、あるいは、CPU(Central Processing Unit)の命令セットに変換されたものであってもよい。 The scenario format processed by the external
なお、上記以外の構成については、上述した実施の形態1〜5の構成とほぼ同じであるため、同一または対応する要素について同一の符号を付し、その説明を繰り返さない。 In addition, since it is substantially the same as the structure of Embodiment 1-5 mentioned above about the structure other than the above, the same code | symbol is attached | subjected about the same or corresponding element, and the description is not repeated.
本実施の形態によれば、外部シナリオ実行部580により、シミュレーショ上で外部シナリオが実行される。これにより、様々な運転エラー要因の発生状況を再現することができる。特に、再現が困難な物理的な運転エラー要因の発生状況を、簡単に再現することができる。よって、制御プログラムのデバック作業が効率化される。ここで運転エラー要因とは、たとえば、アクチュエータ610としてのコンベア上でのワークの詰まり、チャタリングまたはノイズによるセンサ620の入力信号の乱れ、または、他機器630としての他コントローラからの信号に重畳するノイズなどである。 According to the present embodiment, the external scenario is executed on the simulation by the external
<実施の形態7>
図19は、本実施の形態における搬送システム700Gの構成を概略的に示すブロック図である。搬送システム700Gはコントローラ500Gを有する。コントローラ500Gにおいて、入出力切換部570は、動作モードとして併用モードを有する。入出力切換部570は併用モードにおいて、センサ入力部512によって生成されたセンサ情報を制御プログラム実行部530および信号比較部590の各々へ送り、かつ、センサシミュレーション部561によって生成されたセンサシミュレーション情報を信号比較部590に送る。<
FIG. 19 is a block diagram schematically showing the configuration of the
コントローラ500Gは、上述した信号比較部590を有する。信号比較部590は、センサ情報とセンサシミュレーション情報とを比較する。好ましくは、両者の差が顕著である場合に、警告信号が出力される。ここで「両者の差が顕著である」との判断がなされる条件は、たとえば、両情報が表す信号の値の差が予め設定された一定値を超えているとの条件でもよいし、両情報の不一致が一定時間以上継続するとの条件でもよいし、運転状況から学習した何らかの条件でもよい。その他、任意の判断条件が用いられてよい。判断条件は、信号比較部590へ設定入力部520から予め与えられてもよい。この場合、信号比較部590は、判断条件を保持する判断条件保持部(図示せず)を有する。 The
なお、上記以外の構成については、上述した実施の形態1〜6の構成とほぼ同じであるため、同一または対応する要素について同一の符号を付し、その説明を繰り返さない。 In addition, since it is substantially the same as the structure of Embodiment 1-6 mentioned above about the structure other than the above, the same code | symbol is attached | subjected about the same or corresponding element, and the description is not repeated.
本実施の形態によれば、信号比較部590は、センサ情報とセンサシミュレーション情報とを比較する。これにより、実働している搬送システム700Gを、シミュレーションを利用して監視することができる。具体的には、実働運転、すなわち、ワークを流しながらの運転において、ワークが理想的な動きを行った場合のシミュレーション結果であるセンサシミュレーション情報と、実際のワークの動きに従って出力されるセンサ情報とを比較することによって、実際の運転状態の監視が可能になる。 According to the present embodiment, signal
<コントローラのハードウェア構成例>
図20は、上述したコントローラ500A〜500Gのいずれかとして用い得るコントローラ800のハードウェア構成を概略的に示すブロック図である。コントローラ800は、プロセッサ(処理回路)801と、メモリ802と、ストレージ803と、入出力装置804と、可搬式記憶媒体駆動装置805と、通信インターフェース806と、内部バス807とを有している。たとえばコントローラ500A(図1)との対応について説明すると、外部インターフェース510は通信インターフェース806に対応し得る。設定入力部520は、入出力装置804における入力部、可搬式記憶媒体駆動装置805、または通信インターフェース806に対応し得る。制御プログラム実行部530、拘束条件変更部540、ワークシミュレーション部550、外部入力シミュレーション部560、および入出力切換部570の機能は、プロセッサ801がストレージ803に記憶されたプログラムを読み出して実行することにより実現され得る。コントローラ500A以外のコントローラ500B〜500Gにおいても同様である。<Example of controller hardware configuration>
FIG. 20 is a block diagram schematically showing a hardware configuration of a
プロセッサ801は、プログラムの命令に従い、算術・論理演算を実行する。プロセッサ801は、CPUコアが複数設けられている構成を有していてもよい。メモリ802は、たとえばRAM(Random Access Memory)などによって構成されるメインメモリである。メインメモリには、プロセッサ801で実行されるプログラムがロードされるとともに、プロセッサ801の処理に用いるデータが格納される。ストレージ803は、たとえばハードディスクドライブまたはフラッシュメモリなどの記憶装置であり、プログラムや各種データが格納される。可搬記憶媒体駆動装置805は、可搬記憶媒体900に記憶されたプログラムまたはデータを読み出す装置である。可搬記憶媒体900は、たとえば磁気ディスク、光ディスク、光磁気ディスクまたはフラッシュメモリなどである。プロセッサ801は、メモリ802およびストレージ803と協働しつつ、ストレージ803または可搬記憶媒体900に格納されたプログラムを実行する。入出力装置804は、たとえば、キーボード、タッチパネル、およびディスプレイなどである。入出力装置804は、ユーザ操作などによる動作命令を受け付ける一方、コントローラ800による処理結果を出力する。 The
なお、本発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略したりすることが可能である。この発明は詳細に説明されたが、上記した説明は、すべての局面において、例示であって、この発明がそれに限定されるものではない。例示されていない無数の変形例が、この発明の範囲から外れることなく想定され得るものと解される。 It should be noted that the present invention can be freely combined with each other within the scope of the invention, and each embodiment can be appropriately modified or omitted. Although the present invention has been described in detail, the above description is illustrative in all aspects, and the present invention is not limited thereto. It is understood that countless variations that are not illustrated can be envisaged without departing from the scope of the present invention.
100 ワーク、500A〜500G,800 コントローラ、510 外部インターフェース、511 アクチュエータ出力部、512 センサ入力部、513 他機器入出力部、520 設定入力部、530 制御プログラム実行部、531 拘束条件変更命令処理部、540 拘束条件変更部、550,550B,550C ワークシミュレーション部、551 アクチュエータ軌跡生成部、552 作用無効区間判定部、560 外部入力シミュレーション部、561 センサシミュレーション部、562 他機器シミュレーション部、570,570E 入出力切換部、571 出力抑制部、580 外部シナリオ実行部、590 信号比較部、600 外部機器、610〜612 アクチュエータ、611b 固定部、611r ロッド部、612d 駆動部、612h 把持部、620 センサ、621,622 在荷センサ、630 他機器、700A〜700G 搬送システム。 100 work, 500A to 500G, 800 controller, 510 external interface, 511 actuator output unit, 512 sensor input unit, 513 other device input / output unit, 520 setting input unit, 530 control program execution unit, 531 constraint condition change command processing unit, 540 Restriction condition change unit, 550, 550B, 550C Work simulation unit, 551 Actuator locus generation unit, 552 Action invalid section determination unit, 560 External input simulation unit, 561 Sensor simulation unit, 562 Other device simulation unit, 570, 570E Input / output Switching unit, 571 output suppression unit, 580 external scenario execution unit, 590 signal comparison unit, 600 external device, 610-612 actuator, 611b fixing unit, 611r rod unit, 61 d driver, 612h gripper, 620 sensor, 621 and 622 load presence sensor, 630 other devices, 700A~700G transport system.
Claims (10)
前記アクチュエータを制御するための駆動情報を受け付けて前記駆動情報に基づいて前記アクチュエータへ前記駆動信号を送るアクチュエータ出力部と、前記センサから前記センサ信号を受け付けて前記センサ信号に基づいてセンサ情報を生成するセンサ入力部と、を有する外部インターフェースと、
前記センサ情報を参照しながら前記駆動情報を生成するための制御プログラムと、前記ワークと前記アクチュエータとの間で想定される拘束条件を変更するために前記制御プログラムに関連付けられる命令情報である拘束条件設定情報と、をユーザから受け付ける設定入力部と、
前記制御プログラムを処理するものであって、かつ、前記拘束条件設定情報に基づいて拘束条件変更命令を発行する拘束条件変更命令処理部を有するものである、制御プログラム実行部と、
前記拘束条件変更命令処理部によって発行された前記拘束条件変更命令に基づいて前記拘束条件を管理する拘束条件変更部と、
前記少なくとも1つのアクチュエータのうち、前記拘束条件変更部によって管理されている前記拘束条件において前記ワークに拘束されるとされているものに関して前記制御プログラム実行部によって生成された前記駆動情報により、前記ワークの移動量を推定し、前記移動量を前記ワークの前回位置に加算することにより前記ワークの現在位置を推定するワークシミュレーション部と、
前記ワークシミュレーション部によって推定された前記ワークの前記現在位置の情報を用いることで、前記センサ情報を模擬したセンサシミュレーション情報を生成するセンサシミュレーション部と、
動作モードとして少なくともセンサシミュレーションモードを有する入出力切換部と、
を備え、
前記入出力切換部は前記センサシミュレーションモードにおいて、前記制御プログラム実行部によって生成された前記駆動情報を少なくとも前記ワークシミュレーション部へ送り、かつ、前記センサ情報の代替情報として、前記センサシミュレーション部によって生成された前記センサシミュレーション情報を前記制御プログラム実行部へ送る、
コントローラ。 In a controller for a transport system that outputs a drive signal to at least one actuator that transports a workpiece while referring to a sensor signal from at least one sensor that detects the workpiece.
An actuator output unit that receives drive information for controlling the actuator and sends the drive signal to the actuator based on the drive information, and receives the sensor signal from the sensor and generates sensor information based on the sensor signal An external interface having a sensor input unit,
A control program for generating the drive information while referring to the sensor information, and a constraint condition that is command information associated with the control program in order to change a constraint condition assumed between the workpiece and the actuator A setting input unit for receiving setting information from a user;
A control program executing unit that processes the control program and has a constraint condition change command processing unit that issues a constraint condition change command based on the constraint condition setting information;
A constraint condition changing unit that manages the constraint condition based on the constraint condition change command issued by the constraint condition change command processing unit;
Of the at least one actuator, the work information generated by the control program execution unit with respect to what is supposed to be restrained by the work under the restraint condition managed by the restraint condition changing unit, A workpiece simulation unit that estimates the current position of the workpiece by adding the amount of movement to the previous position of the workpiece;
A sensor simulation unit that generates sensor simulation information simulating the sensor information by using information on the current position of the workpiece estimated by the workpiece simulation unit;
An input / output switching unit having at least a sensor simulation mode as an operation mode;
With
The input / output switching unit sends at least the drive information generated by the control program execution unit to the work simulation unit in the sensor simulation mode, and is generated by the sensor simulation unit as substitute information for the sensor information. Sending the sensor simulation information to the control program execution unit,
controller.
前記入出力切換部はさらに併用モードを有し、前記入出力切換部は前記併用モードにおいて、前記センサ入力部によって生成された前記センサ情報を前記制御プログラム実行部および前記信号比較部の各々へ送り、かつ、前記センサシミュレーション部によって生成された前記センサシミュレーション情報を前記信号比較部に送り、
前記信号比較部は、前記センサ情報と前記センサシミュレーション情報とを比較する、
請求項1から4のいずれか1項に記載のコントローラ。 A signal comparison unit;
The input / output switching unit further includes a combination mode, and the input / output switching unit sends the sensor information generated by the sensor input unit to each of the control program execution unit and the signal comparison unit in the combination mode. And sending the sensor simulation information generated by the sensor simulation unit to the signal comparison unit,
The signal comparison unit compares the sensor information with the sensor simulation information.
The controller according to any one of claims 1 to 4.
前記設定入力部は、前記アクチュエータの機械構成情報を受け付け、
前記ワークシミュレーション部は、前記アクチュエータの前記機械構成情報と、制御プログラム実行部によって生成された駆動情報とから、前記アクチュエータの前記作用部が動作する軌跡を算出するアクチュエータ軌跡生成部を有する、請求項1から5のいずれか1項に記載のコントローラ。 The actuator has an action part acting on the workpiece,
The setting input unit receives machine configuration information of the actuator,
The work simulation unit includes an actuator trajectory generation unit that calculates a trajectory in which the action unit of the actuator operates from the machine configuration information of the actuator and drive information generated by a control program execution unit. The controller according to any one of 1 to 5.
前記他機器のシミュレーションを行う他機器シミュレーション部をさらに備える、請求項1から7のいずれか1項に記載のコントローラ。 The external interface can be connected to other devices in addition to the sensor and the actuator,
The controller according to claim 1, further comprising an other device simulation unit that performs a simulation of the other device.
前記ワークを検出するセンサと、
前記センサからのセンサ信号を参照しながら、前記アクチュエータへ駆動信号を出力するためのコントローラと、
を備え、前記コントローラは、
前記アクチュエータを制御するための駆動情報を受け付けて前記駆動情報に基づいて前記アクチュエータへ前記駆動信号を送るアクチュエータ出力部と、前記センサから前記センサ信号を受け付けて前記センサ信号に基づいてセンサ情報を生成するセンサ入力部と、を有する外部インターフェースと、
前記センサ情報を参照しながら前記駆動情報を生成するための制御プログラムと、前記ワークと前記アクチュエータとの間で想定される拘束条件を変更するために前記制御プログラムに関連付けられる命令情報である拘束条件設定情報と、をユーザから受け付ける設定入力部と、
前記制御プログラムを処理するものであって、かつ、前記拘束条件設定情報に基づいて拘束条件変更命令を発行する拘束条件変更命令処理部を有するものである、制御プログラム実行部と、
前記拘束条件変更命令処理部によって発行された前記拘束条件変更命令に基づいて前記拘束条件を管理する拘束条件変更部と、
前記少なくとも1つのアクチュエータのうち、前記拘束条件変更部によって管理されている前記拘束条件において前記ワークに拘束されるとされているものに関して前記制御プログラム実行部によって生成された前記駆動情報により、前記ワークの移動量を推定し、前記移動量を前記ワークの前回位置に加算することにより前記ワークの現在位置を推定するワークシミュレーション部と、
前記ワークシミュレーション部によって推定された前記ワークの前記現在位置の情報を用いることで、前記センサ情報を模擬したセンサシミュレーション情報を生成するセンサシミュレーション部と、
動作モードとして少なくともセンサシミュレーションモードを有する入出力切換部と、
を含み、
前記入出力切換部は前記センサシミュレーションモードにおいて、前記制御プログラム実行部によって生成された前記駆動情報を少なくとも前記ワークシミュレーション部へ送り、かつ、前記センサ情報の代替情報として、前記センサシミュレーション部によって生成された前記センサシミュレーション情報を前記制御プログラム実行部へ送る、
搬送システム。 At least one actuator for conveying a workpiece;
A sensor for detecting the workpiece;
A controller for outputting a drive signal to the actuator while referring to a sensor signal from the sensor;
The controller comprises:
An actuator output unit that receives drive information for controlling the actuator and sends the drive signal to the actuator based on the drive information, and receives the sensor signal from the sensor and generates sensor information based on the sensor signal An external interface having a sensor input unit,
A control program for generating the drive information while referring to the sensor information, and a constraint condition that is command information associated with the control program in order to change a constraint condition assumed between the workpiece and the actuator A setting input unit for receiving setting information from a user;
A control program executing unit that processes the control program and has a constraint condition change command processing unit that issues a constraint condition change command based on the constraint condition setting information;
A constraint condition changing unit that manages the constraint condition based on the constraint condition change command issued by the constraint condition change command processing unit;
Of the at least one actuator, the work information generated by the control program execution unit with respect to what is supposed to be restrained by the work under the restraint condition managed by the restraint condition changing unit, A workpiece simulation unit that estimates the current position of the workpiece by adding the amount of movement to the previous position of the workpiece;
A sensor simulation unit that generates sensor simulation information simulating the sensor information by using information on the current position of the workpiece estimated by the workpiece simulation unit;
An input / output switching unit having at least a sensor simulation mode as an operation mode;
Including
The input / output switching unit sends at least the drive information generated by the control program execution unit to the work simulation unit in the sensor simulation mode, and is generated by the sensor simulation unit as substitute information for the sensor information. Sending the sensor simulation information to the control program execution unit,
Conveying system.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016021694 | 2016-02-08 | ||
JP2016021694 | 2016-02-08 | ||
PCT/JP2016/071008 WO2017138164A1 (en) | 2016-02-08 | 2016-07-15 | Controller and conveyance system |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2017138164A1 JPWO2017138164A1 (en) | 2018-04-12 |
JP6463518B2 true JP6463518B2 (en) | 2019-02-06 |
Family
ID=59562983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017566498A Active JP6463518B2 (en) | 2016-02-08 | 2016-07-15 | Controller and transfer system |
Country Status (7)
Country | Link |
---|---|
US (1) | US10363645B2 (en) |
JP (1) | JP6463518B2 (en) |
KR (1) | KR102124312B1 (en) |
CN (1) | CN108604088B (en) |
DE (1) | DE112016006372T5 (en) |
TW (1) | TWI610869B (en) |
WO (1) | WO2017138164A1 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7012667B2 (en) * | 2017-01-13 | 2022-01-28 | 株式会社Fuji | Production control equipment |
US11054803B2 (en) | 2018-07-13 | 2021-07-06 | Delta Electronics, Inc. | Motor drive, production system and method thereof with quality measuring and mechanism diagnosing functions using real and virtual system modules |
CN110716509B (en) * | 2018-07-13 | 2021-06-04 | 台达电子工业股份有限公司 | Production system with quality measurement and mechanism diagnosis functions, driver and method thereof |
JP7371848B2 (en) * | 2019-03-07 | 2023-10-31 | 学校法人沖縄科学技術大学院大学学園 | Interactive simulation system, simulator, interactive simulation method, and interactive simulation program |
JP7149607B2 (en) * | 2019-10-25 | 2022-10-07 | 伊東電機株式会社 | conveyor system |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CH589321A5 (en) * | 1973-01-17 | 1977-06-30 | Zumbach Electronic Automatic | |
US4644958A (en) * | 1984-03-26 | 1987-02-24 | Trutek Research, Inc. | Inhalation therapy apparatus adapter |
CN87215571U (en) * | 1987-11-12 | 1988-10-05 | 西北工业大学 | Accurate locating and microfeeding apparatus for machine tool |
DE3833723A1 (en) * | 1988-10-04 | 1990-04-12 | Berg Extrakorp Syst Medtech | METHOD FOR ZERO COMPARISON OF A PRESSURE MEASURING CATHETER AND PRESSURE MEASURING CATHETER FOR ITS IMPLEMENTATION |
EP0383329A3 (en) * | 1989-02-17 | 1992-02-26 | Micron Instrument Inc. | Positioning system |
JPH05224978A (en) * | 1992-02-12 | 1993-09-03 | Hitachi Ltd | Production line controller |
JP3184044B2 (en) * | 1994-05-24 | 2001-07-09 | キヤノン株式会社 | Fine movement positioning control device |
CN1144924A (en) * | 1995-06-07 | 1997-03-12 | 梁志勇 | Switch type edge displacement control device |
US5768122A (en) * | 1995-11-14 | 1998-06-16 | Coard Technology | Virtual motion programming and control |
EP1189707A4 (en) * | 1999-04-30 | 2008-03-05 | Siemens Ag | Item singulation system |
US6973355B2 (en) * | 2001-04-25 | 2005-12-06 | Tisue J Gilbert | Accurate positioner suitable for sequential agile tuning of pulse burst and CW lasers |
JP2002351511A (en) | 2001-05-30 | 2002-12-06 | Yokogawa Electric Corp | Input generating device |
US7054694B2 (en) | 2001-05-30 | 2006-05-30 | Yokogawa Electric Corporation | Process control system |
JP4465920B2 (en) | 2001-06-04 | 2010-05-26 | マツダ株式会社 | Simulation apparatus and simulation method |
JP2005309744A (en) | 2004-04-21 | 2005-11-04 | Yokohama Tlo Co Ltd | Sensor control system and general input/output controller |
NO322007B1 (en) * | 2004-11-19 | 2006-08-07 | Marine Cybernetics As | Method and system for testing a dynamic positioning system |
US7249671B2 (en) * | 2005-05-06 | 2007-07-31 | Laitram, L.L.C. | Roller-belt conveyor for accumulating and moving articles laterally across the conveyor |
JP4306723B2 (en) * | 2006-12-15 | 2009-08-05 | 村田機械株式会社 | Conveyor cart system |
US8306767B2 (en) * | 2007-09-03 | 2012-11-06 | Mitsubishi Electric Corporation | Sensor output correcting device |
CN201427438Y (en) * | 2008-12-12 | 2010-03-24 | 珠海艾派克微电子有限公司 | Cartridge with substitutional piezo-electric sensor |
CA2754560C (en) * | 2009-03-03 | 2019-04-09 | Ats Automation Tooling Systems Inc. | Multi-mode and multi-pitch conveyor system |
CN101603853B (en) * | 2009-07-03 | 2011-05-18 | 凯丰集团有限公司 | Special integrated circuit for electronic scale |
JP2012198636A (en) * | 2011-03-18 | 2012-10-18 | Mitsubishi Electric Corp | Controller |
JP2012232370A (en) * | 2011-04-28 | 2012-11-29 | Seiko Epson Corp | Robot controller, simplified installation type robot, and method of controlling simplified installation type robot |
CN102735911B (en) * | 2012-05-23 | 2015-01-28 | 鲍正浩 | Multifunctional electronic pen |
JP6015282B2 (en) | 2012-09-21 | 2016-10-26 | オムロン株式会社 | Simulation device, simulation method, and simulation program |
JP5983442B2 (en) | 2013-01-31 | 2016-08-31 | 富士通株式会社 | Program, arithmetic device and arithmetic method |
JP2018024044A (en) * | 2016-08-09 | 2018-02-15 | オムロン株式会社 | Information processing system, information processor, workpiece position specification method, and workpiece position specification program |
-
2016
- 2016-07-15 JP JP2017566498A patent/JP6463518B2/en active Active
- 2016-07-15 WO PCT/JP2016/071008 patent/WO2017138164A1/en active Application Filing
- 2016-07-15 KR KR1020187022327A patent/KR102124312B1/en active IP Right Grant
- 2016-07-15 US US15/774,716 patent/US10363645B2/en active Active
- 2016-07-15 CN CN201680081023.7A patent/CN108604088B/en active Active
- 2016-07-15 DE DE112016006372.5T patent/DE112016006372T5/en active Pending
- 2016-10-04 TW TW105132048A patent/TWI610869B/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
CN108604088A (en) | 2018-09-28 |
JPWO2017138164A1 (en) | 2018-04-12 |
TW201728518A (en) | 2017-08-16 |
KR102124312B1 (en) | 2020-06-18 |
US10363645B2 (en) | 2019-07-30 |
CN108604088B (en) | 2020-11-10 |
US20180327191A1 (en) | 2018-11-15 |
DE112016006372T5 (en) | 2018-10-18 |
KR20180101446A (en) | 2018-09-12 |
TWI610869B (en) | 2018-01-11 |
WO2017138164A1 (en) | 2017-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6463518B2 (en) | Controller and transfer system | |
US9108316B2 (en) | Method and system for in-production optimization of the parameters of a robot used for assembly | |
US7996113B2 (en) | Methods of integrating real and virtual world using virtual sensor/actuator | |
JP5872894B2 (en) | Robot motion teaching support apparatus and method | |
KR102037565B1 (en) | Method and system for operating a multiaxial machine, especially a robot | |
Shen et al. | Digital twin based virtual commissioning for computerized numerical control machine tools | |
Huckaby et al. | Modeling robot assembly tasks in manufacturing using sysml | |
JP2014199635A (en) | Calculation device and simulation system | |
US20150205698A1 (en) | Method for verifying the processing of software | |
Neher et al. | Using game physics engines for hardware-in-the-loop material flow simulations: benefits, requirements and experiences | |
Shylla et al. | Model in loop (mil), software in loop (sil) and hardware in loop (hil) testing in mbd | |
Khan et al. | Testing and validation of safety logic in the virtual environment | |
Sekala et al. | Modelling and simulation of robotic production systems | |
Belhadj et al. | Kuka robot control based kinect image analysis | |
US20150205271A1 (en) | Automated reconfiguration of a discrete event control loop | |
US20240103483A1 (en) | Method and systems for validating industrial machine systems | |
Budnik et al. | Testbed for Model-based Verification of Cyber-physical Production Systems. | |
WO2024089884A1 (en) | Robot controller and method for comparing control software before and after update | |
WO2023068351A1 (en) | Robot data processing server, and path data calculating method | |
Oplenskedal et al. | Model-based development of a controller and simulator for a mobile robot | |
Žemla et al. | The Programmable Virtual Model of the Mechatronic System Using NX 12 Environment | |
Silva et al. | AdaptPack studio translator: translating offline programming to real palletizing robots | |
Kim et al. | An automatic robot software design tool: An open platform for robotics services | |
Cheng | The simulation approach for designing robotic workcells | |
Noureddine et al. | Fault tolerance in robotics |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171226 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180703 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180725 |
|
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: 20181204 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181228 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6463518 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |