JP2017011573A - Control device, equipment control system, equipment control method and program - Google Patents
Control device, equipment control system, equipment control method and program Download PDFInfo
- Publication number
- JP2017011573A JP2017011573A JP2015126725A JP2015126725A JP2017011573A JP 2017011573 A JP2017011573 A JP 2017011573A JP 2015126725 A JP2015126725 A JP 2015126725A JP 2015126725 A JP2015126725 A JP 2015126725A JP 2017011573 A JP2017011573 A JP 2017011573A
- Authority
- JP
- Japan
- Prior art keywords
- time
- control
- imaging
- data
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- 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
- Y02B—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
- Y02B20/00—Energy efficient lighting technologies, e.g. halogen lamps or gas discharge lamps
- Y02B20/40—Control techniques providing energy savings, e.g. smart controller or presence detection
Abstract
Description
本発明は、制御装置、機器制御システム、機器制御方法およびプログラムに関する。 The present invention relates to a control device, a device control system, a device control method, and a program.
パターン光により照明された物体を撮像し、得られた画像を処理して物体の3次元形状を計測する方法が知られている。例えば位相シフト法と呼ばれる方法では、互いに位相をずらした正弦波縞パターン光により物体を照明し、その照明状態のもとで撮像した複数の縞パターン画像(輝度分布データ)を用いて、物体の3次元形状を求める。また、特許文献1には、以上のような方法によりワーク(物体)の位置情報(3次元形状)を求め、得られた位置情報を用いてロボットを駆動制御してワークのピッキング作業を行うピッキングシステムの技術が開示されている。
A method is known in which an object illuminated with pattern light is imaged, and the obtained image is processed to measure the three-dimensional shape of the object. For example, in a method called a phase shift method, an object is illuminated with sinusoidal fringe pattern lights whose phases are shifted from each other, and a plurality of fringe pattern images (luminance distribution data) imaged under the illumination state are used. A three-dimensional shape is obtained. Further, in
ところで、特許文献1に開示されるようなピッキングシステムが稼働する製造現場では、製造工程で使用する各機器をオフィスなどで普及しているEthernet(登録商標)等のデータ通信用ネットワークに接続して統合したいというニーズが高まっている。これにより、遠隔で製造現場の状況をリアルタイムにきめ細かく把握することができ、不具合が生じても直ぐに対応が可能になるなど、企業全体の業務効率を高めることができる。また、Ethernet等のデータ通信用ネットワークは既に世界中に普及していてコストが十分に下がっているので、製造現場での経費節減の効果もある。
By the way, in a manufacturing site where a picking system as disclosed in
しかし、データ通信用ネットワークは、送信エラーがある程度発生することを想定したシステムになっている。例えばEthernetでは、複数の端末からの送信が同時に発生するとケーブル上で衝突(コリジョン)が発生する。その場合、ランダムな待ち時間の後に再送するという制御方式がとられている。このようなネットワークに上述のワークを撮像する撮像装置やワークを照明する照明装置を接続して同期制御する場合、例えば、ネットワークを通じてまず照明装置に対して点灯を指示し、次に撮像装置に対してワークの撮像を指示しようとして信号を送信する。このとき、コリジョン等の送信エラーが発生すると、照明装置は点灯しても撮像装置はワークの撮像を行うことができない、すなわち照明装置と撮像装置を同期して制御できないという問題が発生する。 However, the data communication network is a system that assumes that transmission errors will occur to some extent. For example, in Ethernet, when transmission from a plurality of terminals occurs at the same time, a collision occurs on the cable. In that case, a control method is adopted in which retransmission is performed after a random waiting time. When an imaging device that captures the above-described workpiece or an illumination device that illuminates the workpiece is connected to such a network and controlled synchronously, for example, the lighting device is first instructed to turn on through the network, and then the imaging device Then, a signal is transmitted in order to instruct imaging of the workpiece. At this time, if a transmission error such as a collision occurs, there arises a problem that even if the illumination device is turned on, the imaging device cannot take an image of the workpiece, that is, the illumination device and the imaging device cannot be controlled in synchronization.
このような問題の解決策の一つとして、例えば非特許文献1に記載の技術が提案されている。この技術は、複数の産業用ロボットを、既存のデータ通信用ネットワークの一つである無線LANに接続し、同期して制御したい複数のロボットに対するデータを一つのパケットに統合してマルチキャスト(同報)送信しようとするものである。これによって、複数のロボットに対して同時に制御データを送信することが可能となる。また、仮にあるパケット送信でエラーが発生してもネットワークを通じて制御対象のロボット全てにそれを知らせることができるので、パケット送信エラーに起因して同期が失われる不都合を防止できる。
As one of solutions for such a problem, for example, a technique described in Non-Patent
しかし、一般的にネットワークに接続されている機器は、パケットを受信してから所定の動作を開始するまでに各機器に固有の処理能力等による遅延時間が発生する。このため、非特許文献1に記載の技術のように、単にマルチキャストによって制御データを同時送信するだけでは、適切な同期制御はできないという問題が発生する。このような問題に対し、非特許文献1に記載の技術は具体的な解決手段を示しておらず、改善が求められる。
However, in general, a device connected to a network generates a delay time due to a processing capability unique to each device after the packet is received until a predetermined operation is started. For this reason, as in the technique described in
上述した課題を解決するために、本発明は、第1の機器および第2の機器とネットワークを介して通信可能に接続された制御装置であって、前記第1の機器に対応する第1の時間情報と前記第2の機器に対応する第2の時間情報とを記憶装置から読み出す読み出し部と、前記第1の時間情報と前記第2の時間情報とに基づいて、前記第1の機器と前記第2の機器の少なくとも一方を、動作開始コマンドを受けてから動作を開始するまでの間に待機させる時間である待機時間を算出する算出部と、前記第1の機器に対する動作開始コマンドと、前記第2の機器に対する動作開始コマンドと、前記待機時間と、を含む同報パケットを生成する生成部と、前記同報パケットを前記ネットワークに送出する送出部と、を備える。 In order to solve the above-described problem, the present invention provides a control device that is communicably connected to a first device and a second device via a network, the first device corresponding to the first device. Based on the reading unit that reads time information and second time information corresponding to the second device from the storage device, the first time information and the second time information, A calculation unit that calculates a standby time, which is a time for waiting at least one of the second devices from receiving an operation start command until starting the operation, an operation start command for the first device, A generation unit configured to generate a broadcast packet including an operation start command for the second device and the waiting time; and a transmission unit configured to transmit the broadcast packet to the network.
本発明によれば、ネットワークに接続された複数の機器を同期制御する場合に、各機器に固有の遅延時間を考慮した適切な同期制御を実現することができるという効果を奏する。 Advantageous Effects of Invention According to the present invention, when a plurality of devices connected to a network are synchronously controlled, it is possible to realize an appropriate synchronous control that takes into account a delay time specific to each device.
以下に添付図面を参照しながら、本発明に係る制御装置、機器制御システム、機器制御方法およびプログラムの実施形態について詳しく説明する。以下で示す実施形態では、本発明を適用した機器制御システムの一例として、ロボットを用いてワークのピッキング作業を行うピッキングシステムを例示する。ピッキングシステムは、パターン光により照明されたワークを撮像し、得られた画像を処理してワークの位置や形状、傾きなどを認識し、その認識結果に基づいてロボットを駆動制御する。このようなピッキングシステムに対して本発明を適用することで、ワークを照明する照明装置とワークを撮像する撮像装置との適切な同期制御が実現される。なお、本発明を適用可能なシステムは、ピッキングシステムに限定されるものではない。本発明は、ネットワークに接続された複数の機器の同期制御が求められる様々なシステムに対して有効に適用できる。 Hereinafter, embodiments of a control device, a device control system, a device control method, and a program according to the present invention will be described in detail with reference to the accompanying drawings. In the embodiment described below, a picking system that performs a work picking operation using a robot is illustrated as an example of a device control system to which the present invention is applied. The picking system images a workpiece illuminated with pattern light, processes the obtained image to recognize the position, shape, inclination, etc. of the workpiece, and drives and controls the robot based on the recognition result. By applying the present invention to such a picking system, appropriate synchronization control between the illumination device that illuminates the workpiece and the imaging device that images the workpiece is realized. The system to which the present invention can be applied is not limited to the picking system. The present invention can be effectively applied to various systems that require synchronous control of a plurality of devices connected to a network.
<第1の実施形態>
図1は、本実施形態のピッキングシステム1の概要を説明するシステム構成図である。このピッキングシステム1は、図1に示すように、ワークWを照明する照明装置20と、ワークWを撮像する撮像装置30と、ワークWのピッキングを行うロボット40と、ピッキングシステム1全体を制御する制御装置10とを備える。これらの各機器は、例えばEthernet等のデータ通信ネットワーク(以下、単に「ネットワーク」という。)50に接続され、このネットワーク50を介して相互にデータ通信が可能な構成となっている。
<First Embodiment>
FIG. 1 is a system configuration diagram illustrating an outline of a
ロボット40は、ロボットアーム41およびロボットハンド42と、これらを駆動する駆動部43を備え、この駆動部43がネットワーク50に接続されている。ロボット40によりワークWのピッキングを行う場合、制御装置10からロボット40の駆動部43に対して、ロボットアーム41やロボットハンド42の動作を制御するための制御データを含むパケットが送信される。駆動部43は、制御装置10から送信されたパケットを受信すると、受信したパケットに含まれる制御データに基づいて、ロボットアーム41やロボットハンド42を駆動する。これにより、ロボット40によるワークWのピッキングが行われる。
The
また、制御装置10から照明装置20および撮像装置30に対しては、照明装置20の点灯開始を指示するコマンドと、撮像装置30の撮像開始を指示するコマンドと、後述の待機時間とを含む同報パケットが送信される。照明装置20および撮像装置30は、制御装置10から送信された同報パケットを受信すると、受信した同報パケットに含まれるコマンドに従って点灯や撮像の動作を開始するが、その際、同報パケットに含まれる待機時間を待ってから、それぞれの動作を開始する。これにより、照明装置20によるワークWの照明と、撮像装置30によるワークWの撮像とが、適切な同期制御のもとで実施される。
Further, the
照明装置20による照明と同期して撮像装置30により撮像されたワークWの画像は、パケット化されて制御装置10に送られる。制御装置10は、撮像装置30により撮像されたワークWの画像を処理して、ワークWの位置や形状、傾きなどを認識する。そして、制御装置10は、その認識結果に基づいて、上述のロボットアーム41やロボットハンド42の動作を制御するための制御データを生成し、この制御データを含むパケットをロボット40の駆動部43に送信する。
The image of the workpiece W captured by the
制御装置10は、ロボット40がピッキングしたワークWを移動させる動作をしている間に、次のワークWのピッキングのために、照明装置20および撮像装置30に対して上述の同報パケットを送信する。これにより、照明装置20による照明下で撮像装置30による撮像が適切に行われ、撮像された画像が制御装置10に送られる。そして、制御装置10により次のワークWの認識処理、ロボット30の動作を制御するための制御データの生成、この制御データを含むパケットの送信が行われ、ロボット40による次のワークWのピッキングが行われる。本実施形態のピッキングシステム1では、すべてのワークWのピッキングが完了するまで、以上の動作が繰り返される。
While the
本実施形態のピッキングシステム1において、ネットワーク50に接続された各機器間で送受信されるパケットの伝送は、ネットワーク50の物理的な規格に従って行われる。例えばネットワーク50の物理的な規格がEthernetの場合、各機器間で送受信されるパケットは、Ethernetフレームのデータフィールドで伝送される。以下では、ネットワーク50の物理的な規格がEthernetであるものとして説明する。ただし、これに限定されるものではなく、別の規格を採用する場合はその規格に従った形式でパケットの伝送を行えばよい。
In the
図2は、Ethernetのフレーム構造の一例を示す図であり、EthernetIIフレームと呼ばれるフレームの形式を示している。このフレームは、図2に示すように、「プリアンブル」、「宛先MACアドレス」、「送信元MACアドレス」、「タイプ」、「データ」、および「FCS」の各フィールドを有する。 FIG. 2 is a diagram illustrating an example of an Ethernet frame structure, and illustrates a frame format called an Ethernet II frame. As shown in FIG. 2, this frame has fields of “preamble”, “destination MAC address”, “source MAC address”, “type”, “data”, and “FCS”.
「プリアンブル」は、Ethernet通信で送受信の同期をとり、フレームの始まりを合図するために用いる特別なビット列が格納されるフィールドである。「プリアンブル」は、ハードウェアにより生成され、受信後に破棄されるため、Ethernetフレームのサイズには含まれない。 The “preamble” is a field in which a special bit string used for synchronizing transmission and reception in Ethernet communication and signaling the start of a frame is stored. Since the “preamble” is generated by hardware and discarded after reception, it is not included in the size of the Ethernet frame.
「宛先MACアドレス」は、パケットの宛先となる機器のアドレスが格納されるフィールドである。「宛先MACアドレス」は、ハードウェアで認識される。宛先が単一の機器の場合(ユニキャストの場合)、その機器に固有のMACアドレス(ユニキャストアドレス)が「宛先MACアドレス」に格納される。宛先が同報グループに属する複数の機器の場合(マルチキャストの場合)、同報グループに割り当てられた同報アドレス(マルチキャストアドレス)が「宛先MACアドレス」に格納される。また、宛先がネットワーク50に接続されたすべての機器の場合(ブロードキャストの場合)、特定のブロードキャストアドレスが「宛先MACアドレス」に格納される。 The “destination MAC address” is a field in which the address of a device that is a packet destination is stored. The “destination MAC address” is recognized by hardware. When the destination is a single device (in the case of unicast), a MAC address (unicast address) unique to the device is stored in the “destination MAC address”. When the destination is a plurality of devices belonging to the broadcast group (in the case of multicast), the broadcast address (multicast address) assigned to the broadcast group is stored in the “destination MAC address”. In addition, when the destination is all devices connected to the network 50 (in the case of broadcast), a specific broadcast address is stored in the “destination MAC address”.
図3は、MACアドレスの構成を説明する図である。MACアドレスは、図3に示すように、先頭バイトのうちの1ビットで、当該MACアドレスが同報アドレス(マルチキャストアドレス)またはブロードキャストアドレスであるか、あるいは機器固有のMACアドレス(ユニキャストアドレス)であるかを識別できる構成となっている。同報グループに属する複数の機器は、機器に固有のMACアドレスのほかに、同報グループに割り当てられた共通の同報アドレスを記憶している。そして、上述の「宛先MACアドレス」に格納されたアドレスが同報アドレスである場合、その同報アドレスと自身が記憶している同報アドレスとが一致すると、「データ」のフィールドに格納されたパケットを受信する。 FIG. 3 is a diagram illustrating the configuration of the MAC address. As shown in FIG. 3, the MAC address is one bit of the first byte, and the MAC address is a broadcast address (multicast address) or a broadcast address, or a device-specific MAC address (unicast address). It is the structure which can identify whether there exists. A plurality of devices belonging to the broadcast group store a common broadcast address assigned to the broadcast group in addition to the MAC address unique to the device. If the address stored in the above-mentioned “destination MAC address” is a broadcast address, if the broadcast address matches the broadcast address stored in itself, it is stored in the “data” field. Receive the packet.
図2に戻り、「送信元MACアドレス」は、パケットを送信する装置に固有のMACアドレスが格納されるフィールドである。 Returning to FIG. 2, the “source MAC address” is a field in which a MAC address unique to a device that transmits a packet is stored.
「タイプ」は、次に続く「データ」のフィールドに格納するデータの上位層プロトコルの識別情報が格納されるフィールドである。 The “type” is a field in which the identification information of the upper layer protocol of the data stored in the “data” field that follows is stored.
「データ」は、最小で46バイト、最大で1500バイトのデータが格納されるフィールドである。有意のデータが46バイト未満である場合は、ダミーのデータ「0」を追加して46バイトのデータとする。これをパディングという。本実施形態では、上位層プロトコルがTCP/IPである場合を想定する。この場合、「データ」にはIPパケットの形式のデータが格納される。 “Data” is a field in which data of a minimum of 46 bytes and a maximum of 1500 bytes is stored. If the significant data is less than 46 bytes, dummy data “0” is added to obtain 46 bytes of data. This is called padding. In the present embodiment, it is assumed that the upper layer protocol is TCP / IP. In this case, “data” stores data in the form of IP packets.
「FCS」は、受信したフレームに誤りがないかどうかを調べるためのCRC(Cyclic Redundancy Check)の値が格納されるフィールドである。 “FCS” is a field in which a CRC (Cyclic Redundancy Check) value for checking whether or not there is an error in the received frame is stored.
本実施形態のピッキングシステム1では、同期制御の対象となる照明装置20と撮像装置30とにより同報グループが構成され、これら照明装置20と撮像装置30に対して共通の同報アドレスが割り当てられている。制御装置10は、照明装置20と撮像装置30に対して上述の同報パケットを送信する場合、「宛先MACアドレス」のフィールドにその同報アドレスを格納し、「データ」のフィールドに同報パケットを格納してネットワーク50に送出する。これにより、照明装置20と撮像装置30は、制御装置10により生成されてネットワーク50に送出された上述の同報パケットを、ネットワーク50を介して受信することができる。
In the
以下では、本実施形態のピッキングシステム1における上述の同期制御に関わる制御装置10、照明装置20および撮像装置30の具体的な構成例について、さらに詳しく説明する。
Below, the specific structural example of the
まず、制御装置10の具体例について説明する。制御装置10は、例えば一般的に広く使用されているPC(Personal Computer)等をハードウェアとして用いることができる。図4は、制御装置10のハードウェア構成例を示すブロック図である。制御装置10は、例えば図4に示すように、コンピュータシステムを構成するCPU11、RAM12およびROM13と、各種のデータやプログラムなどを格納するHDD14と、画像処理エンジン15と、通信I/F16とを備え、これらがバス17によって相互に接続された構成とすることができる。
First, a specific example of the
画像処理エンジン15は、撮像装置30により撮像された画像を処理するものであり、例えばGPU(Graphics Processing Unit)等が用いられる。本実施形態では、撮像装置30により撮像されたワークWの画像をこの画像処理エンジン15で処理することにより、ワークWの位置、形状、傾きの少なくとも一つを含む3次元形状を認識する構成としている。
The
通信I/F16は、制御装置10がネットワーク50を通じて他の機器と通信するためのインタフェースである。本実施形態では、上述したようにネットワーク50の物理的な規格がEthernetであることを想定するため、Ethernetに対応した通信I/F16を用いる。
The communication I / F 16 is an interface for the
図5は、制御装置10の機能的な構成例を示すブロック図である。制御装置10は、機能的な構成として、図5に示すように、制御対象決定部101と、データ保持部102(記憶装置)と、データ読み出し部103(読み出し部)と、待機時間算出部104(算出部)と、同報パケット生成部105(生成部)と、送信制御部106(送出部)とを備える。このうち、データ保持部102は、例えば図4に示すHDD14等を用いて実現することができる。また、制御対象決定部101、データ読み出し部103、待機時間算出部104、同報パケット生成部105、および送信制御部106は、例えば、図4に示すCPU11が、RAM12を作業領域として利用して、ROM13やHDD14等に格納された所定のプログラムを実行することにより実現される。なお、制御対象決定部101、データ読み出し部103、待機時間算出部104、同報パケット生成部105、および送信制御部106は、その一部または全部を、例えばASIC(Application Specific Integrated Circuit)やFPGA(Field−Programmable Gate Array)等の専用のハードウェアを用いて実現することもできる。
FIG. 5 is a block diagram illustrating a functional configuration example of the
なお、図5では、照明装置20と撮像装置30との同期制御に関わる制御装置10の機能的な構成のみを図示しているが、制御装置10は、このほかにも、画像処理エンジン15での処理により認識されたワークWの3次元形状の認識結果に基づいて上述の制御データを生成する機能や、生成した制御データを含むパケットをロボット40の駆動部43に送信する機能などを有する。ただし、これらの機能は公知技術であるため、ここでは詳細な説明は省略する。
In FIG. 5, only the functional configuration of the
制御対象決定部101は、同期制御の対象となる機器を決定する。本実施形態では、照明装置20と撮像装置30を同期制御の対象とするため、制御対象決定部101は、これら照明装置20と撮像装置30のそれぞれの識別情報を、同期制御の対象となる機器の識別情報としてデータ読み出し部103に渡す。また、制御対象決定部101は、照明装置20と撮像装置30とが属する同報グループに割り当てられた同報アドレスを送信制御部106に渡す。
The control
データ保持部102は、適切な同期制御を実現するための後述の待機時間の算出に必要な時間情報を、各機器の識別情報と対応付けて保持する。本実施形態では、この時間情報として、機器が動作を開始してから所定の動作状態になるまでの遅延時間が、データ保持部102に保持されているものとする。この遅延時間は、それぞれの機器に固有の時間情報であり、例えば、予めシミュレーション等を行うことで計測され、それぞれの機器の識別情報と対応付けてデータ保持部102に格納される。
The
データ読み出し部103は、制御対象決定部101から渡される識別情報に対応付けてデータ保持部102に格納されている時間情報を、データ保持部102から読み出す。本実施形態では、同期制御の対象となる機器の識別情報として、照明装置20と撮像装置30のそれぞれの識別情報が制御対象決定部101からデータ読み出し部103に渡されるため、データ読み出し部103は、データ保持部102が保持する時間情報(遅延時間)のうち、照明装置20に対応する遅延時間と、撮像装置30に対応する遅延時間とを読み出して、待機時間算出部104に渡す。照明装置20に対応する遅延時間は、照明装置20が光源(LD)の点灯動作を開始してから実際に光源が点灯状態になるまでの時間である。撮像装置30に対応する遅延時間は、撮像装置30が撮像動作を開始してから実際に撮像が行われるまでの時間である。
The
待機時間算出部104は、データ読み出し部103によりデータ保持部102から読み出された時間情報に基づいて、同期制御の対象となる機器の少なくともいずれかを、動作開始コマンドを受けてから動作を開始するまでの間に待機させる時間である待機時間を算出する。本実施形態では、照明装置20と撮像装置30を同期制御の対象とするため、待機時間算出部104は、照明装置20に対応する遅延時間と、撮像装置30に対応する遅延時間とに基づいて、照明装置20と撮像装置30の少なくとも一方を待機させるための待機時間を算出する。
Based on the time information read from the
照明装置20の待機時間は、照明装置20が点灯開始コマンドを受けてから光源の点灯動作を開始するまでの待機時間である。また、撮像装置30の待機時間は、撮像装置30が撮像開始コマンドを受けてから、撮像動作を開始するまでの待機時間である。照明装置20と撮像装置30の適切な同期制御を上述の同報パケットにより実現するためには、ネットワーク50の遅延時間を無視できるとすると、照明装置20と撮像装置30のうち、遅延時間が長い方に合わせて、遅延時間が短い方を待機させればよい。したがって、最も単純な例では、照明装置20の遅延時間と撮像装置30の遅延時間との差分を求め、その差分の値を、遅延時間が短い方の待機時間とすればよい。また、遅延時間が長い方の待機時間は0とすればよい。つまり、照明装置20の遅延時間をTd1、撮像装置30の遅延時間をTd2とすると、照明装置20と撮像装置30のうち、遅延時間が短い方の待機時間Tw_Aおよび遅延時間が長い方の待機時間Tw_Bは、下記の式(1)および式(2)で表すことができる。
Tw_A=|Td1−Td2| ・・・(1)
Tw_B=0 ・・・(2)
The waiting time of the
Tw_A = | Td1-Td2 | (1)
Tw_B = 0 (2)
なお、遅延時間が長い方の待機時間Tw_Bを0とすることで、例えば何らかの障害発生が懸念されるシステム構成の場合は、遅延時間が長い方の待機時間Tw_Bとして十分に短い時間Tnを割り当ててもよい。この場合、照明装置20と撮像装置30のうち、遅延時間が短い方の待機時間Tw_Aおよび遅延時間が長い方の待機時間Tw_Bは、下記の式(3)および式(4)で表すことができる。
Tw_A=|Td1−Td2|+Tn ・・・(3)
Tw_B=Tn ・・・(4)
Note that by setting the standby time Tw_B having the longer delay time to 0, for example, in the case of a system configuration in which some kind of failure is concerned, a sufficiently short time Tn is assigned as the standby time Tw_B having the longer delay time. Also good. In this case, the waiting time Tw_A having the shorter delay time and the waiting time Tw_B having the longer delay time among the
Tw_A = | Td1-Td2 | + Tn (3)
Tw_B = Tn (4)
待機時間算出部104により算出された待機時間は、同報パケット生成部105に渡される。同報パケット生成部105は、同期制御の対象となる機器に対する動作開始コマンドと、待機時間算出部104により算出された待機時間とを含む同報パケットを生成する。本実施形態では、照明装置20と撮像装置30を同期制御の対象とするため、同報パケット生成部105は、図6に示すように、照明装置20に対する点灯開始コマンドCM1と、照明装置20の待機時間Tw1と、撮像装置30に対する撮像開始コマンドCM2と、撮像装置30の待機時間Tw2とを含む同報パケットを生成する。なお、照明装置20が撮像装置30よりも上述の遅延時間が短い場合は、照明装置20の待機時間Tw1として上記式(1)または式(3)で表される値が入り、撮像装置30の待機時間Tw2として上記式(2)または式(4)で表される値が入る。逆に、撮像装置30が照明装置20よりも上述の遅延時間が短い場合は、照明装置20の待機時間Tw1として上記式(2)または式(4)で表される値が入り、撮像装置30の待機時間Tw2として上記式(1)または式(3)で表される値が入る。
The standby time calculated by the standby
同報パケット生成部105により生成された同報パケットは、送信制御部106に渡される。送信制御部106は、同報パケット生成部105により生成された同報パケットを図2に示したフレームの「データ」フィールドに格納するデータとして、通信I/F16に出力する。また、送信制御部106は、制御対象決定部101から渡された同報アドレスを「宛先MACアドレス」のフィールドに格納するアドレス、制御装置10に割り当てられた固有のMACアドレスを「送信元MACアドレス」のフィールドに格納するアドレスとして、それぞれ通信I/F16に出力する。これにより、「データ」フィールドに上述の同報パケットが格納されたフレームがネットワーク50に送出され、上述の同報パケットが照明装置20と撮像装置30のそれぞれで受信されることになる。
The broadcast packet generated by the broadcast
次に、照明装置20の具体例について説明する。図7は、照明装置20の構成例を示す図である。照明装置20は、例えば図7に示すように、通信I/F21と、照明制御部22と、タイマ23と、LD駆動部24と、LDモジュール25と、照明光学系26とを備える。
Next, a specific example of the
通信I/F21は、照明装置20がネットワーク50を通じて他の機器と通信するためのインタフェースであり、制御装置10の通信I/F16と同様に、例えばEthernetに対応したものが用いられる。通信I/F21は、ネットワーク50を通じて伝送されるフレームの「宛先MACアドレス」を元に、「データ」フィールドに格納されているパケットが自装置宛てかどうかをチェックし、自装置宛てであればそのパケットを受信して、受信データRD1として照明制御部22に出力する。また、通信I/F21は、照明制御部22から送信データTD1が渡されると、この送信データTD1を「データ」フィールドに格納したフレームをネットワーク50に送出する。
The communication I /
照明制御部22は、通信I/F21から受信データRD1を入力すると、まず信号TC1を“1”にしてタイマ23を起動する。そして、受信データRD1が上述した点灯開始コマンドCM1と待機時間Tw1を含む同報パケットであることを検知すると、タイマ23の計時データTMD1をモニタし、タイマ23の計時データTMD1が待機時間Tw1と一致したタイミングで、LD駆動部24への制御信号LDGを“1”にするとともに、電圧信号Vcを生成して出力する。ここで制御信号LDGは、光源として用いるLDモジュール25の各LD25aの点灯をON/OFFするデジタル信号であり、例えばLDG=1のときLD25aの点灯をONし、LDG=0のときLD25aの点灯をOFFするように、LD駆動部24を制御する。また、電圧信号Vcは、LD25aの発光量を制御するアナログの電圧信号であり、LD駆動部24は、この電圧信号Vcの値に基づいてLD25aの発光量を制御する。なお、電圧信号Vcの値は予め照明装置20内部に設定されていてもよいし、ネットワーク50を通じて外部から設定できるようにしてもよい。さらに、上述の同報パケットに、この電圧信号Vcの値を設定するためのデータが含まれていてもよい。
When receiving the reception data RD1 from the communication I /
LD駆動部24は、制御信号LDGが“1”のとき、電圧信号Vcの値に基づいてLD駆動電流IL1を生成し、このLD駆動電流IL1をLDモジュール25に対して出力する。LDモジュール25の各LD25aは、LD駆動電流IL1の通電により例えば青色の波長帯域のレーザ光を発光する。本実施形態では、照明装置20の光源として複数のLD25aが用いられ、これらがLDモジュール25としてモジュール化されている。LDモジュール25は、これら複数のLD25aのほか、各LD25aから出射されるレーザ光を平行光にコリメートする複数のコリメータレンズ25bを備える。また、LDモジュール25は、LD25aが発生する熱を放熱してLD25aの温度上昇を所定範囲内に抑えるヒートシンクの機能も兼ね備える。
When the control signal LDG is “1”, the
照明光学系26は、LDモジュール25から出射されるレーザ光をパターン光として、撮像装置30の被写体となるワークWに照射する。すなわち、LDモジュール25から出射されるレーザ光は、集光レンズ26aによって集光され、反射ミラー26bで光路を折り曲げられて拡散板26cに導かれる。そして、拡散板26cと導光光学素子26dを通過することによって2次元的に均一で且つインコヒーレントな照明光とされ、パターンマスク26eに入射される。パターンマスク26eは、例えば透明ガラス板の表面に所定の2次元パターンが形成されたものであり、パターンマスク26eを透過した照明光は所定のパターン光に変換される。そして、このパターン光が反射ミラー26fによって光路を折り曲げられ、投射レンズ26gを通してワークWに照射される。
The illumination
図8は、以上のように構成される照明装置20の動作例を説明するフローチャートであり、受信データRD1として上述した同報パケットを受信したときの照明制御部22の処理手順の一例を示している。
FIG. 8 is a flowchart for explaining an operation example of the
通信I/F21によって受信データRD1が受信されると(ステップS101)、照明制御部22は、まず、信号TC1を“1” にしてタイマ23を起動する(ステップS102)。そして、照明制御部22は、タイマ23の計時データTMD1をモニタして、タイマ23の計時データTMD1が受信データRD1の同報パケットに含まれる待機時間Tw1に達するまでの間(ステップS103:No)、待機する。そして、タイマ23の計時データTMD1が待機時間Tw1に達すると(ステップS103:Yes)、照明制御部22は、制御信号LDGを“1”にしてLDモジュール25の各LD25aを点灯させるとともに(ステップS104)、信号TC1を“0”にしてタイマ23をリセットする(ステップS105)。これにより、撮像装置30の被写体となるワークWが、照明装置20からのパターン光により照明される。
When the reception data RD1 is received by the communication I / F 21 (step S101), the
次に、撮像装置30の具体例について説明する。図9は、撮像装置30の構成例を示す図である。撮像装置30は、例えば図9に示すように、通信I/F31と、撮像制御部32と、タイマ33と、記憶部34と、対物光学系35と、撮像素子36と、画像データ処理部37とを備える。
Next, a specific example of the
通信I/F31は、撮像装置30がネットワーク50を通じて他の機器と通信するためのインタフェースであり、制御装置10の通信I/F16や照明装置20の通信I/F21と同様に、例えばEthernetに対応したものが用いられる。通信I/F31は、ネットワーク50を通じて伝送されるフレームの「宛先MACアドレス」を元に、「データ」フィールドに格納されているパケットが自装置宛てかどうかをチェックし、自装置宛てであればそのパケットを受信して、受信データRD2として撮像制御部32に出力する。また、通信I/F31は、撮像制御部32から送信データTD2が渡されると、この送信データTD2を「データ」フィールドに格納したフレームをネットワーク50に送出する。
The communication I /
撮像制御部32は、通信I/F31から受信データRD2を入力すると、まず信号TC2を“1”にしてタイマ33を起動する。そして、受信データRD2が上述した撮像開始コマンドCM2と待機時間Tw2を含む同報パケットであることを検知すると、タイマ33の計時データTMD2をモニタし、タイマ33の計時データTMD2が待機時間Tw2と一致したタイミングで、撮像素子36へのトリガ信号TRGを“1”にして、撮像素子36による撮像を開始させる。トリガ信号TRGは撮像素子36による撮像(露光)を制御するための信号であり、例えばトリガ信号TRGが“0”から“1”になると撮像を開始し、TRGが“1”から“0”になると撮像を終了するように、撮像素子36を制御する。
When the reception data RD2 is input from the communication I /
撮像素子36としては、例えばCCDセンサやCMOSセンサが用いられる。撮像素子36は、撮像制御部32からのトリガ信号TRGが“1”のとき、対物光学系35を通過した光学像を所定のフレームレートでデジタル画像データIMG1に変換し、画像データ処理部37に出力する。
As the image sensor 36, for example, a CCD sensor or a CMOS sensor is used. When the trigger signal TRG from the
画像データ処理部37は、撮像素子36から入力される画像データIMG1に対して例えば歪み補正やガンマ補正などの処理を行って、所定のデジタル画像データIMG2として、撮像制御部32に出力する。
The image data processing unit 37 performs processing such as distortion correction and gamma correction on the image data IMG1 input from the image sensor 36, and outputs the processed data to the
撮像制御部32は、画像データ処理部37から入力される画像データIMG2をさらに処理して、例えばIMG.jpgというファイル名のJPEG形式の画像ファイルを生成し、記憶部34に保存する。そして、予め定めた所定数(1以上)の画像ファイルIMG.jpgが記憶部34に格納されると、撮像制御部32は、撮像素子36へのトリガ信号TRGを“0”にして、撮像素子36による撮像を終了させる。その後、撮像制御部32は、記憶部34から画像ファイルIMG.jpgを読み出してパケット化し、送信データTD2として通信I/F31に出力する。このとき撮像制御部32は、送信データTD2の宛先として制御装置10を指定する。これにより、「宛先MACアドレス」に制御装置10のMACアドレス、「データ」フィールドに画像ファイルIMG.jpgを格納したフレームが、通信I/F31からネットワーク50上に送出され、制御装置10によって画像ファイルIMG.jpgが受信される。
The
図10は、以上のように構成される撮像装置30の動作例を説明するフローチャートであり、受信データRD2として上述した同報パケットを受信したときの撮像制御部32の処理手順の一例を示している。
FIG. 10 is a flowchart for explaining an operation example of the
通信I/F31によって受信データRD2が受信されると(ステップS201)、撮像制御部32は、まず、信号TC2を“1” にしてタイマ33を起動する(ステップS202)。そして、撮像制御部32は、タイマ33の計時データTMD2をモニタして、タイマ33の計時データTMD2が受信データRD2の同報パケットに含まれる待機時間Tw2に達するまでの間(ステップS203:No)、待機する。そして、タイマ33の計時データTMD2が待機時間Tw2に達すると(ステップS203:Yes)、撮像制御部32は、トリガ信号TRGを“1”にして撮像素子36による撮像を開始させる(ステップS204)。
When the reception data RD2 is received by the communication I / F 31 (step S201), the
そして、撮像制御部32は、画像データ処理部37から入力される画像データIMG2をもとに画像ファイルIMG.jpgを生成し、記憶部34に保存する(ステップS205)。その後、所定数の画像ファイルIMG.jpgが記憶部34に格納されると、撮像制御部32は、トリガ信号TRGを“0”にして撮像素子36による撮像を終了させる(ステップS206)。そして、撮像制御部32は、記憶部34から画像ファイルIMG.jpgを読み出して送信データTD2として出力するとともに(ステップS207)、信号TC2を“0”にしてタイマ33をリセットする(ステップS208)。これにより、照明装置20からのパターン光により照明され、撮像装置30により撮像されたワークWの画像が、制御装置10に送信される。
The
以上、具体的な例を挙げながら説明したように、本実施形態のピッキングシステム1では、制御装置10が、同期制御の対象となる照明装置20と撮像装置30に対して、照明装置20に対する点灯開始コマンドCM1と、照明装置20の待機時間Tw1と、撮像装置30に対する撮像開始コマンドCM2と、撮像装置30の待機時間Tw2とを含む同報パケットを送信する。そして、照明装置20は、この同報パケットを受信すると、待機時間Tw1を待ってからLD25aの点灯を開始する。また、撮像装置30は、この同報パケットを受信すると、待機時間Tw2を待ってから撮像素子36による撮像を開始する。したがって、本実施形態のピッキングシステム1によれば、同期制御の対象となる照明装置20と撮像装置30のそれぞれに固有の遅延時間を考慮した適切な同期制御を実現することができる。
As described above, as described with specific examples, in the
<第2の実施形態>
次に、第2の実施形態について説明する。本実施形態は、照明装置20に対応する時間情報である遅延時間、および、撮像装置30に対応する時間情報である遅延時間を、照明装置20と撮像装置30からそれぞれ取得してデータ保持部102に格納する機能を制御装置10に持たせた例である。なお、ピッキングシステム1の基本的な枠組みは第1の実施形態と同様であるため、以下では、第1の実施形態と共通部分には共通の符号を用いて重複した説明を適宜省略し、第1の実施形態との差異を説明する。
<Second Embodiment>
Next, a second embodiment will be described. In the present embodiment, a delay time that is time information corresponding to the
図11は、本実施形態の制御装置10の機能的な構成例を示すブロック図である。本実施形態の制御装置10は、第1の実施形態の構成(図5参照)に加えて、遅延時間取得部107を備える。
FIG. 11 is a block diagram illustrating a functional configuration example of the
遅延時間取得部107は、照明装置20に遅延時間の送信を指示する遅延時間送信コマンドをパケット化し、宛先として照明装置20を指定して、通信I/F16に出力する。これにより、「宛先MACアドレス」に照明装置20の固有のMACアドレスが格納され、「データ」フィールドに遅延時間送信コマンドが格納されたフレームが通信I/F16からネットワーク50に送出され、照明装置20により遅延時間送信コマンドが受信されることになる。その後、遅延時間送信コマンドに対する応答として照明装置20から遅延時間が送信されると、遅延時間取得部107はこれを受信して、照明装置20の識別情報と対応付けてデータ保持部102に格納する。
The delay time acquisition unit 107 packetizes a delay time transmission command that instructs the
同様に、遅延時間取得部107は、撮像装置30に遅延時間の送信を指示する遅延時間送信コマンドをパケット化し、宛先として撮像装置30を指定して、通信I/F16に出力する。これにより、「宛先MACアドレス」に撮像装置30の固有のMACアドレスが格納され、「データ」フィールドに遅延時間送信コマンドが格納されたフレームが通信I/F16からネットワーク50に送出され、撮像装置30により遅延時間送信コマンドが受信されることになる。その後、遅延時間送信コマンドに対する応答として撮像装置30から遅延時間が送信されると、遅延時間取得部107はこれを受信して、撮像装置30の識別情報と対応付けてデータ保持部102に格納する。
Similarly, the delay time acquisition unit 107 packetizes a delay time transmission command that instructs the
なお、遅延時間取得部107の上述した処理は任意のタイミングで行えばよい。例えば、制御装置10がネットワーク50の負荷を監視する機能を備える場合、遅延時間取得部107は、ネットワーク50の負荷が基準値よりも低いタイミングで上述した処理を行うことで、ネットワーク50に過大な負荷をかけることなく、照明装置20と撮像装置30から遅延時間を適切に取得してデータ保持部102に格納することができる。また、遅延時間取得部107は、任意の時間間隔で上述した処理を繰り返し行うことにより、照明装置20の遅延時間や撮像装置30の遅延時間が経時変化した場合であっても、最新の遅延時間を取得してデータ保持部102に格納することができる。
Note that the above-described processing of the delay time acquisition unit 107 may be performed at an arbitrary timing. For example, when the
なお、本実施形態では、照明装置20や撮像装置30に対する遅延時間送信コマンドの送信をユニキャストで行う場合を想定したが、動作開始コマンド(点灯開始コマンドCM1および撮像開始コマンドCM2)を送信する場合と同様に、マルチキャスト(同報送信)で行うようにしてもよい。
In this embodiment, it is assumed that the delay time transmission command is transmitted to the
次に、本実施形態の照明装置20の具体例について説明する。本実施形態の照明装置20は、制御装置10からの遅延時間送信コマンドに応じて遅延時間を送信する機能を有する。照明装置20の遅延時間は、上述したように、照明装置20が光源であるLD25aの点灯動作を開始してから実際にLD25aが点灯状態になるまでの時間である。
Next, a specific example of the
図12は、本実施形態の照明装置20の構成例を示す図であり、図13は、本実施形態の照明装置20におけるLD25aの点灯を検知する手段の構成例を説明する図である。また、図14は、LD25aの点灯を検知する動作を説明するタイミングチャートである。
FIG. 12 is a diagram illustrating a configuration example of the
本実施形態の照明装置20は、図12に示すように、第1の実施形態の構成(図7参照)に加えて、LD駆動電流IL1の経路に電流検出用の抵抗Rs1が設けられている。また、LD駆動部24から照明制御部22に対して、LD25aの点灯状態を示す信号LD_ONが入力される構成となっている。
As shown in FIG. 12, the
本実施形態の照明装置20において、照明制御部22は、通信I/F21が受信データRD1を受信すると、信号TC1を“1”にしてタイマ23を起動する。そして、通信I/F21が受信した受信データRD1が制御装置10からの遅延時間送信コマンドである場合、照明制御部22は、LD25aを点灯させるためにLD駆動部24への制御信号LDGを“1”にするとともに、電圧信号Vcを生成して出力する。
In the
LD駆動部24は、制御信号LDGが“1”になると、電圧信号Vcの値に基づいてLD駆動電流IL1を生成し、このLD駆動電流IL1をLDモジュール25に対して出力する。すると、抵抗Rs1の両端に電圧Vaおよび電圧Vbが発生する。
When the control signal LDG becomes “1”, the
LD駆動電流IL1の通電により抵抗Rs1の両端に発生した電圧Vaおよび電圧Vbの端子は、例えば図13に示すように、電圧Vbの端子が接地され、電圧Vaの端子がLD駆動部24内のアンプ24aの入力端子に接続されている。アンプ24aに入力された電圧Vaは(1+R2/R1)倍に増幅され、電圧Vgとして出力される。そして、増幅された電圧Vgはコンパレータ24bに入力され、上述の電圧信号Vcと比較される。そして、Vg>Vcになると、コンパレータ24bの出力が“0”から“1”に変化する。このコンパレータ24bの出力が、LD駆動部24から照明制御部22に入力される信号LD_ONであり、この信号LD_ONが“0”から“1”に変化すると、LD25aが正常に点灯したことを示す。なお、図13に示すコンデンサC1は、アンプ24aに入力される電圧Vaに高周波のノイズやリップル等があっても、これらを除去して高い検出精度を確保するためのものである。
As shown in FIG. 13, for example, the terminals of the voltage Va and the voltage Vb generated at both ends of the resistor Rs1 due to the energization of the LD driving current IL1 are grounded, and the terminal of the voltage Va is grounded in the
照明制御部22は、信号LD_ONが“1”になったことを検知すると、LD25aの点灯動作が上述した点灯開始コマンドに基づくものでなく、遅延時間送信コマンドに基づくものである場合は、その時点でのタイマ23の計時データTMD1を取得する。ここで取得される計時データTMD1が、照明装置20の遅延時間に相当する。
When the
すなわち、図14に示すように、制御信号LDGが“0”から“1”に切り替わってからLD駆動電流IL1が立ち上がるまでの時間をT1、LD駆動電流IL1の立ち上がりから電圧Vgが立ち上がるまでの時間をT2、電圧Vgの立ち上がりから電圧Vgが電圧信号Vcを超えるまでの時間をT3、電圧Vgが電圧信号Vcを超えてから信号LD_ONが“1”になるまでの時間をT4とする。タイマ23は、信号LD_ONを“1”にしたときに起動しているため、信号LD_ONが“1”になった時点でのタイマ23の計時データTMD1は、T1+T2+T3+T4であり、LD25aの点灯動作を開始してから実際にLD25aが点灯状態になるまでの遅延時間に相当する。
That is, as shown in FIG. 14, the time from when the control signal LDG switches from “0” to “1” until the LD drive current IL1 rises is T1, and the time from the rise of the LD drive current IL1 to the rise of the voltage Vg T2, the time from the rise of the voltage Vg until the voltage Vg exceeds the voltage signal Vc is T3, and the time from the voltage Vg exceeding the voltage signal Vc until the signal LD_ON becomes “1” is T4. Since the
照明制御部22は、制御装置10からの遅延時間送信コマンドを受信した場合、このように取得したタイマ23の計時データTMD1を、送信データTD1として通信I/F21に出力する。このとき照明制御部22は、送信データTD1の宛先として制御装置10を指定する。これにより、「宛先MACアドレス」に制御装置10のMACアドレス、「データ」フィールドに照明装置20の遅延時間を格納したフレームが、通信I/F21からネットワーク50上に送出される。そして、制御装置10によって照明装置20の遅延時間が受信される。
When the
図15は、本実施形態の照明装置20の動作例を説明するフローチャートであり、照明制御部22の処理手順の一例を示している。
FIG. 15 is a flowchart for explaining an operation example of the
通信I/F21によって受信データRD1が受信されると(ステップS301)、照明制御部22は、まず、信号TC1を“1” にしてタイマ23を起動する(ステップS302)。そして、照明制御部22は、受信データRD1が点灯開始コマンドを含む同報パケットであるか否かを判定し(ステップS303)、点灯開始コマンドを含む同報パケットであれば(ステップS303:Yes)、第1の実施形態と同様に、タイマ23の計時データTMD1が同報パケットに含まれる待機時間Tw1に達するまで待機し(ステップS304:No)、タイマ23の計時データTMD1が待機時間Tw1に達すると(ステップS304:Yes)、制御信号LDGを“1”にする(ステップS305)。一方、受信データRD1が点灯開始コマンドを含む同報パケットではなく、上述の遅延時間送信コマンドである場合(ステップS303:No)、照明制御部22は、ステップS302でタイマ23を起動した後、すぐに制御信号LDGを“1”にする(ステップS305)。
When the reception data RD1 is received by the communication I / F 21 (step S301), the
その後、受信データRD1が遅延時間送信コマンドである場合は(ステップS306:No)、照明制御部22は、信号LD_ONが“1”になるまで待機する(ステップS307:No)。そして、信号LD_ONが“1”になると(ステップS307:Yes)、照明制御部22は、その時点のタイマ23の計時データTMD1を送信データTD1として出力するとともに(ステップS308)、制御信号LDGを“0”にしてLD25aの点灯を終了させ(ステップS309)、信号TC1を“0”にしてタイマ23をリセットする(ステップS310)。一方、受信データRD1が点灯開始コマンドを含む同報パケットである場合は(ステップS306:Yes)、照明制御部22は、ステップS305で制御信号LDGを“1”にした後、すぐに信号TC1を“0”にしてタイマ23をリセットする(ステップS310)。
Thereafter, when the received data RD1 is a delay time transmission command (step S306: No), the
次に、本実施形態の撮像装置30の具体例について説明する。本実施形態の撮像装置30は、制御装置10からの遅延時間送信コマンドに応じて遅延時間を送信する機能を有する。撮像装置30の遅延時間は、上述したように、撮像装置30が撮像動作を開始してから実際に撮像が行われるまでの時間である。
Next, a specific example of the
本実施形態の撮像装置30の構成は、第1の実施形態の構成(図9参照)と同様である。ただし、撮像制御部32は、遅延時間を計測するためにタイマ33を用いる。すなわち、撮像制御部32は、通信I/F31が受信データRD2を受信すると、信号TC2を“1”にしてタイマ33を起動するとともに、撮像素子36へのトリガ信号TRGを“1”にして、撮像素子36による撮像を開始させる。そして、通信I/F31が受信した受信データRD2が制御装置10からの遅延時間送信コマンドである場合、撮像制御部32は、撮像素子36が光学像の露光を行える状態、つまり撮像準備が完了した時点でのタイマ33の計時データTMD2を取得する。ここで取得される計時データTMD2が、撮像装置30の遅延時間に相当する。
The configuration of the
すなわち、撮像装置30では、撮像素子36による撮像を開始させる際に、撮像開始コマンドを受信してから撮像制御装置32がトリガ信号TRGを“1”にして撮像素子36に撮像を指示するまでに遅延が生じ、さらに、トリガ信号TRGが“1”になってから撮像素子36が光学像の露光を行える状態になるまでに遅延が生じる。これらの遅延時間は、撮像装置30が撮像動作を開始してから実際に撮像が行われるまでの遅延時間に相当する。撮像制御部32は、遅延時間送信コマンドに応じてタイマ33を起動するとともにトリガ信号TRGを“1”にし、その後、撮像素子36が光学像の露光を行える状態、つまり撮像準備が完了した時点でのタイマ33の計時データTMD2を取得することで、撮像装置30の遅延時間を取得できる。なお、撮像素子36が光学像の露光を行える状態になったこと、つまり撮像準備が完了したことを直接的に検知できない場合は、画像データ処理部37から画像データIMG2の入力が開始されたときに、撮像準備が完了したとみなして、その時点でのタイマ33の計時データTMD2を取得するようにしてもよい。
That is, in the
撮像制御部32は、制御装置10からの遅延時間送信コマンドを受信した場合、このように取得したタイマ33の計時データTMD2を、送信データTD2として通信I/F31に出力する。このとき撮像制御部32は、送信データTD2の宛先として制御装置10を指定する。これにより、「宛先MACアドレス」に制御装置10のMACアドレス、「データ」フィールドに撮像装置30の遅延時間を格納したフレームが、通信I/F31からネットワーク50上に送出される。そして、制御装置10によって撮像装置30の遅延時間が受信される。
When receiving the delay time transmission command from the
図16は、本実施形態の撮像装置30の動作例を説明するフローチャートであり、撮像制御部32の処理手順の一例を示している。
FIG. 16 is a flowchart for explaining an operation example of the
通信I/F31によって受信データRD2が受信されると(ステップS401)、撮像制御部32は、まず、信号TC2を“1” にしてタイマ33を起動する(ステップS402)。そして、撮像制御部32は、受信データRD2が撮像開始コマンドを含む同報パケットであるか否かを判定し(ステップS403)、撮像開始コマンドを含む同報パケットであれば(ステップS403:Yes)、第1の実施形態と同様に、タイマ33の計時データTMD2が同報パケットに含まれる待機時間Tw2に達するまで待機し(ステップS404:No)、タイマ33の計時データTMD2が待機時間Tw2に達すると(ステップS404:Yes)、トリガ信号TRGを“1”にする(ステップS405)。一方、受信データRD2が撮像開始コマンドを含む同報パケットではなく、上述の遅延時間送信コマンドである場合(ステップS403:No)、撮像制御部32は、ステップS402でタイマ33を起動した後、すぐにトリガ信号TRGを“1”にする(ステップS405)。
When the reception data RD2 is received by the communication I / F 31 (step S401), the
その後、受信データRD2が撮像開始コマンドを含む同報パケットである場合は(ステップS406:Yes)、撮像制御部32は、第1の実施形態と同様に画像ファイルIMG.jpgの生成および記憶部34への保存を行った後(ステップS407)、トリガ信号TRGを“0”にして撮像素子36による撮像を終了させる(ステップS408)。そして、撮像制御部32は、記憶部34から画像ファイルIMG.jpgを読み出して送信データTD2として出力し(ステップS409)、信号TC2を“0”にしてタイマ33をリセットする(ステップS410)。
After that, when the received data RD2 is a broadcast packet including an imaging start command (step S406: Yes), the
一方、受信データRD2が遅延時間送信コマンドである場合は(ステップS406:No)、撮像制御部32は、撮像準備が完了するまで待機する(ステップS411:No)。そして、撮像準備が完了したことが検知されると(ステップS411:Yes)、撮像制御部32は、トリガ信号TRGを“0”にして撮像素子36による撮像を終了させ(ステップS412)、その時点のタイマ33の計時データTMD2を送信データTD2として出力するとともに(ステップS413)、信号TC2を“0”にしてタイマ33をリセットする(ステップS410)。
On the other hand, when the received data RD2 is a delay time transmission command (step S406: No), the
以上、具体的な例を挙げながら説明したように、本実施形態では、制御装置10の遅延時間取得部107が、照明装置20の遅延時間を照明装置20から取得してデータ保持部102に格納するとともに、撮像装置30の遅延時間を撮像装置30から取得してデータ保持部102に格納する。したがって、本実施形態によれば、照明装置20や撮像装置30をネットワーク50に接続するだけで、事前にシミュレーション等を行うことなくそれぞれの機器に固有の遅延時間をデータ保持部102に格納することができ、これら照明装置20と撮像装置30の適切な同期制御を実現することができる。また、照明装置20や撮像装置30の遅延時間を任意の時間間隔で繰り返し取得してデータ保持部102に格納することにより、照明装置20や撮像装置30の遅延時間が経時変化する場合であっても、最新の遅延時間をデータ保持部102に保持させて、照明装置20と撮像装置30の適切な同期制御を継続的に実現することができる。
As described above, as described with specific examples, in this embodiment, the delay time acquisition unit 107 of the
<第3の実施形態>
次に、第3の実施形態について説明する。本実施形態は、照明装置20や撮像装置30に対して応答要求を送信してから応答を受信するまでの時間である応答時間を計測し、計測した応答時間を、上述した待機時間を算出するための時間情報の一つとしてデータ保持部102に格納する機能を制御装置10に持たせた例である。なお、ピッキングシステム1の基本的な枠組みは第1の実施形態や第2の実施形態と同様であるため、以下では、第1の実施形態や第2の実施形態と共通部分には共通の符号を用いて重複した説明を適宜省略し、本実施形態に特徴的な部分を説明する。
<Third Embodiment>
Next, a third embodiment will be described. In the present embodiment, a response time that is a time from when a response request is transmitted to the
図17は、本実施形態の制御装置10の機能的な構成例を示すブロック図である。本実施形態の制御装置10は、第2の実施形態の構成(図11参照)に加えて、応答時間計測部108を備える。
FIG. 17 is a block diagram illustrating a functional configuration example of the
応答時間計測部108は、照明装置20に対する応答要求をパケット化し、宛先として照明装置20を指定して、通信I/F16に出力する。これにより、「宛先MACアドレス」に照明装置20の固有のMACアドレスが格納され、「データ」フィールドに応答要求が格納されたフレームが通信I/F16からネットワーク50に送出され、照明装置20により応答要求が受信されることになる。また、応答時間計測部108は、照明装置20に対する応答要求の送信時に内部のタイマを起動する。その後、応答要求に対する応答を照明装置20から受信すると、応答時間計測部108は、その時点でのタイマの計時データを取得し、これを照明装置20の応答時間として、照明装置20の識別情報と対応付けてデータ保持部102に格納する。この際、照明装置20からの応答には、後述するように照明装置20が応答要求を受けてから応答を返すまでの処理時間が格納されているため、応答時間計測部108は、計測した応答時間をこの処理時間とともに、照明装置20の識別情報と対応付けてデータ保持部102に格納する。
The response
同様に、応答時間計測部108は、撮像装置30に対する応答要求をパケット化し、宛先として撮像装置30を指定して、通信I/F16に出力する。これにより、「宛先MACアドレス」に撮像装置30の固有のMACアドレスが格納され、「データ」フィールドに応答要求が格納されたフレームが通信I/F16からネットワーク50に送出され、撮像装置30により応答要求が受信されることになる。また、応答時間計測部108は、撮像装置30に対する応答要求の送信時に内部のタイマを起動する。その後、応答要求に対する応答を撮像装置30から受信すると、応答時間計測部108は、その時点でのタイマの計時データを取得し、これを撮像装置30の応答時間として、撮像装置30の識別情報と対応付けてデータ保持部102に格納する。この際、撮像装置30からの応答には、後述するように撮像装置30が応答要求を受けてから応答を返すまでの処理時間が格納されているため、応答時間計測部108は、計測した応答時間をこの処理時間とともに、撮像装置30の識別情報と対応付けてデータ保持部102に格納する。
Similarly, the response
本実施形態の制御装置10は、上述の同報パケットに含まれる待機時間Tw1,Tw2を算出するために、照明装置20の遅延時間および撮像装置30の遅延時間に加えて、照明装置20の応答時間および撮像装置30の応答時間を用いる。このため、データ読み出し部103は、照明装置20の遅延時間と応答時間、撮像装置30の遅延時間と応答時間を、それぞれデータ保持部102から読み出して待機時間算出部104に渡す。
In order to calculate the waiting times Tw1 and Tw2 included in the broadcast packet, the
待機時間算出部104は、照明装置20の待機時間Tw1と撮像装置30の待機時間Tw2を算出するにあたり、まず、照明装置20の応答時間に基づいて、制御装置10と照明装置20との間の片道のネットワーク遅延時間を算出するとともに、撮像装置30の応答時間に基づいて、制御装置10と撮像装置30との間の片道のネットワーク遅延時間を算出する。
In calculating the standby time Tw1 of the
例えば、照明装置20の応答時間をTa1とし、照明装置20からの応答に格納された上述の処理時間をTb1とすると、制御装置10と照明装置20との間の片道のネットワーク遅延時間Tnd1は、下記の式(5)で表すことができる。
Tnd1=(Ta1−Tb1)/2 ・・・(5)
また、撮像装置30の応答時間をTa2とし、撮像装置30からの応答に格納された上述の処理時間をTb2とすると、制御装置10と撮像装置30との間の片道のネットワーク遅延時間Tnd2は、下記の式(6)で表すことができる。
Tnd2=(Ta2−Tb2)/2 ・・・(6)
For example, when the response time of the
Tnd1 = (Ta1-Tb1) / 2 (5)
Further, assuming that the response time of the
Tnd2 = (Ta2-Tb2) / 2 (6)
待機時間算出部104は、以上のように算出したネットワーク遅延時間Tnd1,Tnd2と、照明装置20の遅延時間Td1と、撮像装置30の遅延時間Td2とを用いて、照明装置20の待機時間Tw1と撮像装置30の待機時間Tw2を算出する。照明装置20と撮像装置30の適切な同期制御を上述の同報パケットにより実現するためには、照明装置20と撮像装置30のうち、遅延時間に対してネットワーク遅延時間を加算したトータルの遅延時間が長い方に合わせて、トータルの遅延時間が短い方を待機させればよい。したがって、トータルの遅延時間が短い方の待機時間Tw_Cおよびトータルの遅延時間が長い方の待機時間Tw_Dは、下記の式(7)および式(8)で表すことができる。
Tw_C=|(Td1+Tnd1)−(Td2+Tnd2)| ・・・(7)
Tw_D=0 ・・・(8)
The standby
Tw_C = | (Td1 + Tnd1) − (Td2 + Tnd2) | (7)
Tw_D = 0 (8)
なお、トータルの遅延時間が長い方の待機時間Tw_Dを0とすることで、例えば何らかの障害発生が懸念されるシステム構成の場合は、トータルの遅延時間が長い方の待機時間Tw_Dとして十分に短い時間Tnを割り当ててもよい。この場合、照明装置20と撮像装置30のうち、トータルの遅延時間が短い方の待機時間Tw_Cおよびトータルの遅延時間が長い方の待機時間Tw_Dは、下記の式(9)および式(10)で表すことができる。
Tw_C=|(Td1+Tnd1)−(Td2+Tnd2)|+Tn ・・・(9)
Tw_D=Tn ・・・(10)
Note that, by setting the standby time Tw_D having the longer total delay time to 0, for example, in the case of a system configuration in which some failure may occur, a sufficiently short time as the standby time Tw_D having the longer total delay time Tn may be assigned. In this case, the standby time Tw_C having the shorter total delay time and the standby time Tw_D having the longer total delay time in the
Tw_C = | (Td1 + Tnd1) − (Td2 + Tnd2) | + Tn (9)
Tw_D = Tn (10)
同報パケット生成部105は、第1の実施形態と同様に、照明装置20に対する点灯開始コマンドCM1と、照明装置20の待機時間Tw1と、撮像装置30に対する撮像開始コマンドCM2と、撮像装置30の待機時間Tw2とを含む同報パケットを生成する。この際、照明装置20が撮像装置30よりもトータルの遅延時間が短い場合は、照明装置20の待機時間Tw1として上記式(7)または式(9)で表される値が入り、撮像装置30の待機時間Tw2として上記式(8)または式(10)で表される値が入る。逆に、撮像装置30が照明装置20よりもトータルの遅延時間が短い場合は、照明装置20の待機時間Tw1として上記式(8)または式(10)で表される値が入り、撮像装置30の待機時間Tw2として上記式(7)または式(9)で表される値が入る。
As in the first embodiment, the broadcast
以上のように生成された同報パケットは、第1の実施形態と同様に、送信制御部106の制御に応じて通信I/F16からネットワーク50に送出され、照明装置20と撮像装置30のそれぞれで受信される。
The broadcast packet generated as described above is sent from the communication I / F 16 to the
本実施形態の照明装置20の構成は、第2の実施形態の構成(図12参照)と同様である。ただし、照明制御部22は、制御装置10から上述の応答要求を受信した場合に、この応答要求に対する応答を制御装置10に返す機能を有する。すなわち、照明制御部22は、通信I/F21が受信データRD1を受信すると、信号TC1を“1”にしてタイマ23を起動する。そして、通信I/F21が受信した受信データRD1が制御装置10からの応答要求である場合、照明制御部22は、LD25aを点灯させる制御は行わず、その時点のタイマ23の計時データTMD1を取得し、送信データTD1として通信I/F21に出力する。この時点でのタイマ23の計時データTMD1は、照明装置20が応答要求を受けてから応答を返すまでの処理時間に相当する。
The configuration of the
照明装置20の処理時間を送信データTD1とする応答は、制御装置10を宛先として通信I/F21からネットワーク50上に送出され、制御装置10により受信される。制御装置10は、上述したように、照明装置20に対して応答要求を送信してからこの応答を受信するまでの時間を応答時間として計測し、応答に含まれる処理時間とともに、照明装置20の識別情報と対応付けてデータ保持部102に格納する。
A response in which the processing time of the
図18は、本実施形態の照明装置20の動作例を説明するフローチャートであり、照明制御部22の処理手順の一例を示している。
FIG. 18 is a flowchart for explaining an operation example of the
通信I/F21によって受信データRD1が受信されると(ステップS501)、照明制御部22は、まず、信号TC1を“1” にしてタイマ23を起動する(ステップS502)。そして、照明制御部22は、受信データRD1が制御装置10からの応答要求であるか否かを判定し(ステップS503)、受信データRD1が制御装置10からの応答要求であれば(ステップS503:Yes)、その時点のタイマ23の計時データTMD1を送信データTD1として出力し(ステップS512)、信号TC1を“0”にしてタイマ23をリセットする(ステップS511)。一方、受信データRD1が制御装置10からの応答要求でない場合は(ステップS503:No)、ステップS504からステップS511までの処理が行われるが、この処理は第2の実施形態での処理(図15のステップS303からステップS310までの処理)と同様であるため、説明を省略する。
When the reception data RD1 is received by the communication I / F 21 (step S501), the
本実施形態の撮像装置30の構成は、第1の実施形態の構成(図9参照)と同様である。ただし、撮像制御部32は、制御装置10から上述の応答要求を受信した場合に、この応答要求に対する応答を制御装置10に返す機能を有する。すなわち、撮像制御部32は、通信I/F31が受信データRD2を受信すると、信号TC2を“1”にしてタイマ33を起動する。そして、通信I/F31が受信した受信データRD2が制御装置10からの応答要求である場合、撮像制御部32は、撮像素子36に対する撮像開始の指示は行わず、その時点のタイマ33の計時データTMD2を取得し、送信データTD2として通信I/F31に出力する。この時点でのタイマ33の計時データTMD2は、撮像装置30が応答要求を受けてから応答を返すまでの処理時間に相当する。
The configuration of the
撮像装置30の処理時間を送信データTD2とする応答は、制御装置10を宛先として通信I/F31からネットワーク50上に送出され、制御装置10により受信される。制御装置10は、上述したように、撮像装置30に対して応答要求を送信してからこの応答を受信するまでの時間を応答時間として計測し、応答に含まれる処理時間とともに、撮像装置30の識別情報と対応付けてデータ保持部102に格納する。
A response in which the processing time of the
図19は、本実施形態の撮像装置30の動作例を説明するフローチャートであり、撮像制御部32の処理手順の一例を示している。
FIG. 19 is a flowchart for explaining an operation example of the
通信I/F31によって受信データRD2が受信されると(ステップS601)、撮像制御部32は、まず、信号TC2を“1” にしてタイマ33を起動する(ステップS602)。そして、撮像制御部32は、受信データRD2が制御装置10からの応答要求であるか否かを判定し(ステップS603)、受信データRD2が制御装置10からの応答要求であれば(ステップS603:Yes)、その時点のタイマ33の計時データTMD2を送信データTD2として出力し(ステップS615)、信号TC2を“0”にしてタイマ33をリセットする(ステップS611)。一方、受信データRD2が制御装置10からの応答要求でない場合は(ステップS603:No)、ステップS604からステップS614までの処理が行われるが、この処理は第2の実施形態での処理(図16のステップS403からステップS413までの処理)と同様であるため、説明を省略する。
When the reception data RD2 is received by the communication I / F 31 (step S601), the
以上、具体的な例を挙げながら説明したように、本実施形態では、制御装置10の応答時間計測部108が、照明装置20や撮像装置30に対して応答要求を送信してから応答を受信するまでの時間である応答時間を計測し、計測した応答時間を、上述した待機時間を算出するための時間情報の一つとしてデータ保持部102に格納するようにしている。そして、制御装置10の待機時間算出部104が、これら応答時間に基づいて照明装置20や撮像装置30との間の片道のネットワーク遅延時間を算出し、照明装置20や撮像装置30の固有の遅延時間に対してこのネットワーク遅延時間を加算したトータルの遅延時間に基づいて、照明装置20や撮像装置30の待機時間を算出するようにしている。したがって、本実施形態によれば、制御装置10と照明装置20や撮像装置30との間の通信に無視できないネットワーク遅延があったとしても、それを補償して、照明装置20と撮像装置30との同期制御を高精度に行うことができる。
As described above, as described with specific examples, in the present embodiment, the response
<第4の実施形態>
次に、第4の実施形態について説明する。本実施形態は、光源として用いるLD25aの点灯不良が発生した場合にこれを検知してエラー情報を送信する機能を照明装置20に持たせた例である。なお、ピッキングシステム1の基本的な枠組みは第1乃至第3の実施形態と同様であるため、以下では、第1乃至第3の実施形態と共通部分には共通の符号を用いて重複した説明を適宜省略し、本実施形態に特徴的な部分を説明する。
<Fourth Embodiment>
Next, a fourth embodiment will be described. The present embodiment is an example in which the
図20は、本実施形態の照明装置20の構成例を示す図である。本実施形態の照明装置20は、図20に示すように、第2の実施形態の構成(図12参照)に加えて、タイマ27が設けられている。また、LD駆動部24から照明制御部22に対して、LD25aの点灯エラー状態を示す信号LD_ERRが入力される構成となっている。
FIG. 20 is a diagram illustrating a configuration example of the
本実施形態の照明装置20において、LD駆動部24は、制御信号LDGが“1”になると、電圧信号Vcの値に基づいてLD駆動電流IL1を生成し、このLD駆動電流IL1をLDモジュール25に対して出力する。また、このときLD駆動部24は、信号TC11を“1” にしてタイマ27を起動する。その後、LD駆動部24は、タイマ27の計時データTMD11をモニタするとともに、信号LD_ONが“0”から“1”に変化するかどうかを観測する。そして、信号LD_ONが“1”になることなくタイマ27の計時データTMD11が所定時間Td11に達した場合、LD駆動部24は、信号LD_ERRを“1”にして、LD25aの点灯不良が発生したことを照明制御部22に伝える。
In the illuminating
照明制御部22は、信号LD_ERRが“0”から“1”に変化すると、LD25aが点灯不良の状態にあることを示すエラー情報を生成し、送信データTD1として通信I/F21に出力する。この送信データTD1は、制御装置10を宛先として通信I/F21からネットワーク50上に送出され、制御装置10により受信される。
When the signal LD_ERR changes from “0” to “1”, the
制御装置10は、照明装置20から送信データTD1として送出されたエラー情報を受信すると、例えば、ロボット40の動作を停止させる制御データを生成し、この制御データを第1の実施形態と同様の方法により、ネットワーク50に接続されたロボット40の駆動部43に送信する。これにより、ロボット40によるワークWのピッキング動作が停止される。
When the
その後、例えばユーザによって照明装置20のLD25aが点灯不良となっていた原因が取り除かれると、制御装置10から照明装置20と撮像装置30に対する同報パケットの送信が再開されて、上述した動作が行われる。
Thereafter, for example, when the cause of the lighting failure of the
図21は、本実施形態の照明装置20の動作例を説明するフローチャートであり、照明制御部22およびLD駆動部24の処理手順の一例を示している。
FIG. 21 is a flowchart for explaining an operation example of the
通信I/F21によって受信データRD1が受信されると(ステップS701)、照明制御部22は、まず、信号TC1を“1” にしてタイマ23を起動する(ステップS702)。そして、照明制御部22は、受信データRD1が制御装置10からの応答要求であるか否かを判定し(ステップS703)、受信データRD1が制御装置10からの応答要求であれば(ステップS703:Yes)、その時点のタイマ23の計時データTMD1を送信データTD1として出力し(ステップS717)、信号TC1を“0”にしてタイマ23をリセットする(ステップS714)。
When the reception data RD1 is received by the communication I / F 21 (step S701), the
一方、受信データRD1が制御装置10からの応答要求でない場合(ステップS703:No)、照明制御部22は、受信データRD1が点灯開始コマンドを含む同報パケットであるか否かを判定し(ステップS704)、点灯開始コマンドを含む同報パケットであれば(ステップS704:Yes)、第1の実施形態と同様に、タイマ23の計時データTMD1が同報パケットに含まれる待機時間Tw1に達するまで待機し(ステップS705:No)、タイマ23の計時データTMD1が待機時間Tw1に達すると(ステップS705:Yes)、制御信号LDGを“1”にする(ステップS706)。一方、受信データRD1が点灯開始コマンドを含む同報パケットではなく、上述の遅延時間送信コマンドである場合(ステップS704:No)、照明制御部22は、ステップS702でタイマ23を起動した後、すぐに制御信号LDGを“1”にする(ステップS706)。
On the other hand, if the received data RD1 is not a response request from the control device 10 (step S703: No), the
制御信号LDGが“1”になると、LD駆動部24は、信号TC11を“1”にしてタイマ27を起動する(ステップS707)。その後、LD駆動部24は、タイマ27の計時データTMD11をモニタするとともに、信号LD_ONが“0”から“1”に変化するかどうかを観測する(ステップS708、ステップS709)。そして、信号LD_ONが“1”になることなくタイマ27の計時データTMD11が所定時間Td11に達した場合(ステップS709:No、ステップS708:Yes)、LD駆動部24は、信号LD_ERRを“1”にする(ステップS715)。信号LD_ERRが“1”になると、照明制御部22は、LD25aが点灯不良の状態にあることを示すエラー情報を送信データTD1として出力する(ステップS716)とともに、制御信号LDGを“0”にする(ステップS712)。その後、LD駆動部24が信号TC11を“0”にしてタイマ27をリセットする(ステップS713)とともに、照明制御部22が信号TC1を“0”にしてタイマ23をリセットする(ステップS714)。
When the control signal LDG becomes “1”, the
一方、タイマ27の計時データTMD11が所定時間Td11に達する前に信号LD_ONが“1”になった場合は(ステップS708:No、ステップS709:Yes)、受信データRD1が遅延時間送信コマンドであれば(ステップS710:No)、照明制御部22が、その時点のタイマ23の計時データTMD1を送信データTD1として出力する(ステップS711)とともに、制御信号LDGを“0”にする(ステップS712)。その後、LD駆動部24が信号TC11を“0”にしてタイマ27をリセットする(ステップS713)とともに、照明制御部22が信号TC1を“0”にしてタイマ23をリセットする(ステップS714)。また、受信データRD1が点灯開始コマンドを含む同報パケットである場合は(ステップS710:Yes)、照明制御部22から送信データTD1は出力されず、LD駆動部24が信号TC11を“0”にしてタイマ27をリセットする(ステップS713)とともに、照明制御部22が信号TC1を“0”にしてタイマ23をリセットする(ステップS714)。
On the other hand, when the signal LD_ON becomes “1” before the time measurement data TMD11 of the
以上、具体的な例を挙げながら説明したように、本実施形態では、照明装置20が、光源として用いるLD25aの点灯不良が発生した場合にこれを検知してエラー情報を制御装置10に送信する。そして、制御装置10は、照明装置20からエラー情報を受信すると、ロボット40の動作を停止させるようにしている。したがって、本実施形態によれば、照明装置20の異常に起因して撮像装置30により撮像されたワークWの画像が不良画像となった場合であっても、この不良画像に基づくロボット40の誤動作を有効に防止して、その後の迅速且つ適切な対応を可能とすることができ、信頼性の高いピッキングシステム1を実現することができる。
As described above with specific examples, in this embodiment, when the
<補足説明>
以上説明した各実施形態における制御装置10の機能的な構成要素(データ読み出し部103、待機時間算出部104、同報パケット生成部105、送信制御部106など)は、例えば上述したように、図4のCPU11がRAM12を作業領域として利用して、ROM13やHDD14等に格納されたプログラムを実行することにより実現することができる。この場合、上記プログラムは、制御装置10にインストール可能な形式または実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVDなどのコンピュータで読み取り可能な記録媒体に記録して提供される。また、上記プログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由で制御装置10にダウンロードさせることにより提供するように構成してもよい。さらに、上記プログラムを、インターネットなどのネットワーク経由で提供または配布するように構成してもよい。また、上記プログラムを、例えば制御装置10内のROM13等に予め組み込んで提供するようにしてもよい。
<Supplementary explanation>
As described above, for example, as described above, the functional components (the
以上、本発明の具体的な実施形態について説明したが、上述した実施形態は本発明の一適用例を示したものである。本発明は、上述した実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で様々な変形や変更を加えて具体化することができる。 Although specific embodiments of the present invention have been described above, the above-described embodiments show an application example of the present invention. The present invention is not limited to the above-described embodiment as it is, and can be embodied with various modifications and changes without departing from the scope of the invention in the implementation stage.
例えば、上述した実施形態では、本発明を適用したシステムの一例としてピッキングシステム1を例示したが、本発明は、同期制御したい複数の機器をネットワークで接続した様々なシステムに対して有効に適用することができる。
For example, in the above-described embodiment, the
また、上述した実施形態では、同期制御の対象となる機器として照明装置20と撮像装置30を例示したが、照明装置20と撮像装置30以外の機器を同期制御の対象とする場合であっても、上述した実施形態で説明した方法により適切な同期制御を実現できる。また、上述した実施形態では、照明装置20と撮像装置30の2つの機器を同期制御の対象としているが、同期制御の対象となる機器が3つ以上であっても、同様の方法により適切な同期制御を実現することができる。
In the above-described embodiment, the
また、上述した実施形態では、撮像装置30により撮像されたワークWの画像を処理してワークWの3次元形状を認識する機能を、制御装置10内の画像処理エンジン15により実現する構成としたが、この画像処理エンジン15に相当する機能を、制御装置10の外部で実現する構成としてもよい。例えば、画像処理エンジン15に相当する機能を持つ画像処理装置を、制御装置10から独立した装置としてネットワーク50に接続する構成としてもよい。この場合、撮像装置30により撮像されたワークWの画像がネットワーク50を通じて画像処理装置に送信され、画像処理装置での処理によりワークWの位置、形状、傾きの少なくとも一つを含む3次元形状が認識される。そして、画像処理装置での処理により得られたワークWの3次元形状の認識結果が、ネットワーク50を通じて制御装置10に送信される。
In the above-described embodiment, the function of recognizing the three-dimensional shape of the workpiece W by processing the image of the workpiece W captured by the
また、上述した実施形態では、撮像装置30として単眼カメラを用いる例を想定したが、撮像装置30としてステレオカメラを用いるようにしてもよい。この場合、例えば、撮像装置30により撮像された2つの画像が制御装置10に送信され、制御装置10の画像処理エンジン15によって、2つの画像から視差画像(距離画像)が生成され、この視差画像に基づいてワークWの3次元形状の認識が行われる。あるいは、撮像装置30の内部で生成された視差画像が制御装置10に送信され、制御装置10の画像処理エンジン15によって、この視差画像に基づいてワークWの3次元形状の認識が行われる。
In the embodiment described above, an example in which a monocular camera is used as the
1 ピッキングシステム
10 制御装置
20 照明装置
30 撮像装置
40 ロボット
50 ネットワーク
102 データ保持部
103 データ読み出し部
104 待機時間算出部
105 同報パケット生成部
106 送信制御部
107 遅延時間取得部
108 応答時間計測部
DESCRIPTION OF
Claims (12)
前記第1の機器に対応する第1の時間情報と前記第2の機器に対応する第2の時間情報とを記憶装置から読み出す読み出し部と、
前記第1の時間情報と前記第2の時間情報とに基づいて、前記第1の機器と前記第2の機器の少なくとも一方を、動作開始コマンドを受けてから動作を開始するまでの間に待機させる時間である待機時間を算出する算出部と、
前記第1の機器に対する動作開始コマンドと、前記第2の機器に対する動作開始コマンドと、前記待機時間と、を含む同報パケットを生成する生成部と、
前記同報パケットを前記ネットワークに送出する送出部と、を備える制御装置。 A control device communicably connected to the first device and the second device via a network,
A reading unit that reads out from the storage device first time information corresponding to the first device and second time information corresponding to the second device;
Based on the first time information and the second time information, wait for at least one of the first device and the second device to start operating after receiving an operation start command. A calculation unit for calculating a waiting time that is a time to be
A generator for generating a broadcast packet including an operation start command for the first device, an operation start command for the second device, and the waiting time;
And a transmission unit that transmits the broadcast packet to the network.
前記第1の遅延時間を前記第1の機器から取得して前記記憶装置に格納する遅延時間取得部をさらに備える、請求項1に記載の制御装置。 The first time information includes a first delay time from the start of operation of the first device to a predetermined operation state,
The control device according to claim 1, further comprising a delay time acquisition unit that acquires the first delay time from the first device and stores the first delay time in the storage device.
前記第2の遅延時間を前記第2の機器から取得して前記記憶装置に格納する遅延時間取得部をさらに備える、請求項1または2に記載の制御装置。 The second time information includes a second delay time from the start of operation of the second device to a predetermined operation state,
The control device according to claim 1, further comprising a delay time acquisition unit that acquires the second delay time from the second device and stores the second delay time in the storage device.
前記第1の応答時間を計測して前記記憶装置に格納する応答時間計測部をさらに備える、請求項1乃至3のいずれか一項に記載の制御装置。 The first time information includes a first response time from when a response request is transmitted to the first device until a response from the first device is received,
4. The control device according to claim 1, further comprising a response time measurement unit that measures the first response time and stores the first response time in the storage device. 5.
前記第2の応答時間を計測して前記記憶装置に格納する応答時間計測部をさらに備える、請求項1乃至4のいずれか一項に記載の制御装置。 The second time information includes a second response time from when a response request is transmitted to the second device until a response is received from the second device;
The control device according to any one of claims 1 to 4, further comprising a response time measurement unit that measures the second response time and stores the second response time in the storage device.
前記第2の機器は、前記照明装置により照明された前記被写体を撮像する撮像装置である、請求項6に記載の機器制御システム。 The first device is an illumination device that illuminates a subject,
The device control system according to claim 6, wherein the second device is an imaging device that images the subject illuminated by the illumination device.
前記制御装置は、前記画像処理部の認識結果に基づいて前記ロボットの動作を制御する、請求項8に記載の機器制御システム。 A robot that holds the subject;
The device control system according to claim 8, wherein the control device controls the operation of the robot based on a recognition result of the image processing unit.
前記制御装置は、前記エラー情報を受信した場合に前記ロボットの動作を停止させる、請求項9に記載の機器制御システム。 The illumination device sends error information to the network when a light source that illuminates the subject does not turn on even after a predetermined time has elapsed since the operation was started in response to an operation start command.
The device control system according to claim 9, wherein the control device stops the operation of the robot when the error information is received.
前記第1の機器に対応する第1の時間情報と前記第2の機器に対応する第2の時間情報とを記憶装置から読み出すステップと、
前記第1の時間情報と前記第2の時間情報とに基づいて、前記第1の機器と前記第2の機器の少なくとも一方を、動作開始コマンドを受けてから動作を開始するまでの間に待機させる時間である待機時間を算出するステップと、
前記第1の機器に対する動作開始コマンドと、前記第2の機器に対する動作開始コマンドと、前記待機時間と、を含む同報パケットを生成するステップと、
前記同報パケットを前記ネットワークに送出するステップと、を含む機器制御方法。 A device control method executed by a computer communicably connected to a first device and a second device via a network,
Reading from the storage device first time information corresponding to the first device and second time information corresponding to the second device;
Based on the first time information and the second time information, wait for at least one of the first device and the second device to start operating after receiving an operation start command. Calculating a waiting time that is a time to be
Generating a broadcast packet including an operation start command for the first device, an operation start command for the second device, and the waiting time;
Sending the broadcast packet to the network.
前記第1の機器に対応する第1の時間情報と前記第2の機器に対応する第2の時間情報とを記憶装置から読み出す機能と、
前記第1の時間情報と前記第2の時間情報とに基づいて、前記第1の機器と前記第2の機器の少なくとも一方を、動作開始コマンドを受けてから動作を開始するまでの間に待機させる時間である待機時間を算出する機能と、
前記第1の機器に対する動作開始コマンドと、前記第2の機器に対する動作開始コマンドと、前記待機時間と、を含む同報パケットを生成する機能と、
前記同報パケットを前記ネットワークに送出する機能と、を実現させるためのプログラム。 A computer connected to the first device and the second device via a network so as to be communicable;
A function of reading from the storage device first time information corresponding to the first device and second time information corresponding to the second device;
Based on the first time information and the second time information, wait for at least one of the first device and the second device to start operating after receiving an operation start command. A function for calculating the waiting time,
A function of generating a broadcast packet including an operation start command for the first device, an operation start command for the second device, and the waiting time;
A program for realizing the function of transmitting the broadcast packet to the network.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015126725A JP2017011573A (en) | 2015-06-24 | 2015-06-24 | Control device, equipment control system, equipment control method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015126725A JP2017011573A (en) | 2015-06-24 | 2015-06-24 | Control device, equipment control system, equipment control method and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017011573A true JP2017011573A (en) | 2017-01-12 |
Family
ID=57761936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015126725A Pending JP2017011573A (en) | 2015-06-24 | 2015-06-24 | Control device, equipment control system, equipment control method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017011573A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102017201882A1 (en) | 2016-02-09 | 2017-08-24 | Nichia Corporation | Lighting device and the lighting device having backlight |
JP2018151163A (en) * | 2017-03-09 | 2018-09-27 | キヤノン株式会社 | Measurement apparatus, processing apparatus and article manufacturing method |
WO2021166818A1 (en) * | 2020-02-20 | 2021-08-26 | ファナック株式会社 | Robot system |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010240785A (en) * | 2009-04-07 | 2010-10-28 | Kanto Auto Works Ltd | Picking system |
JP2011504324A (en) * | 2007-11-02 | 2011-02-03 | 株式会社エヌ・ティ・ティ・ドコモ | Synchronized multilink transmission in an ARQ-enabled multihop wireless network |
JP2011172123A (en) * | 2010-02-19 | 2011-09-01 | Canon Inc | Imaging system, image device and method for controlling the same |
-
2015
- 2015-06-24 JP JP2015126725A patent/JP2017011573A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011504324A (en) * | 2007-11-02 | 2011-02-03 | 株式会社エヌ・ティ・ティ・ドコモ | Synchronized multilink transmission in an ARQ-enabled multihop wireless network |
JP2010240785A (en) * | 2009-04-07 | 2010-10-28 | Kanto Auto Works Ltd | Picking system |
JP2011172123A (en) * | 2010-02-19 | 2011-09-01 | Canon Inc | Imaging system, image device and method for controlling the same |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102017201882A1 (en) | 2016-02-09 | 2017-08-24 | Nichia Corporation | Lighting device and the lighting device having backlight |
JP2018151163A (en) * | 2017-03-09 | 2018-09-27 | キヤノン株式会社 | Measurement apparatus, processing apparatus and article manufacturing method |
US10638021B2 (en) | 2017-03-09 | 2020-04-28 | Canon Kabushiki Kaisha | Measurement device, processing device, and article manufacturing method |
WO2021166818A1 (en) * | 2020-02-20 | 2021-08-26 | ファナック株式会社 | Robot system |
JP7307262B2 (en) | 2020-02-20 | 2023-07-11 | ファナック株式会社 | robot system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190200005A1 (en) | Embedded system, fast structured light based 3d camera system and method for obtaining 3d images using the same | |
JP5493754B2 (en) | Imaging system, camera, and illumination device for imaging | |
JP6644694B2 (en) | Apparatus and method for extracting depth information | |
JP2017011573A (en) | Control device, equipment control system, equipment control method and program | |
JP2014011529A (en) | Imaging device, imaging system, imaging method, and program | |
CN105635564A (en) | Multiple camera apparatus and method for synchronized autofocus | |
JP5593078B2 (en) | Camera device | |
KR101747740B1 (en) | Projector and control method | |
US20160119888A1 (en) | Wireless communication device, non-transitory computer readable medium, and wireless communication system | |
JP2016167719A (en) | Optical device | |
JP6444024B2 (en) | Drive unit and system having the drive unit | |
JP6044681B1 (en) | Illumination device, image acquisition system, and illumination control method | |
US20170287522A1 (en) | Information processing apparatus, information processing method, and storage medium | |
JP5593828B2 (en) | Imaging system and communication adapter | |
JP6349650B2 (en) | Camera and communication device | |
CN110174418B (en) | Radiation imaging apparatus, radiation imaging system, and method of controlling the system | |
JP6602106B2 (en) | COMMUNICATION DEVICE, ITS CONTROL METHOD, AND PROGRAM | |
JP5999138B2 (en) | Wireless communication adapter | |
CN112867136B (en) | Three-dimensional scanning system and three-dimensional scanning method based on wireless peer-to-peer network | |
JP2020076896A (en) | Imaging apparatus, light-emitting device, control method of imaging apparatus, and control method of light-emitting device | |
JP5588940B2 (en) | Photographic lens unit and operation control method thereof | |
JP2014068321A (en) | Transfer device, communication system, transfer method, and program | |
JP2018007031A (en) | Photographing system, photographing apparatus and photographing method | |
TWI646855B (en) | Control method and driver device of depth camera | |
JP2017062124A (en) | Imaging apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180517 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190404 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190416 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20191217 |