JP2017142740A - Cooperation instruction device, cooperation instruction program, and cooperation instruction method - Google Patents
Cooperation instruction device, cooperation instruction program, and cooperation instruction method Download PDFInfo
- Publication number
- JP2017142740A JP2017142740A JP2016025018A JP2016025018A JP2017142740A JP 2017142740 A JP2017142740 A JP 2017142740A JP 2016025018 A JP2016025018 A JP 2016025018A JP 2016025018 A JP2016025018 A JP 2016025018A JP 2017142740 A JP2017142740 A JP 2017142740A
- Authority
- JP
- Japan
- Prior art keywords
- delivery time
- communication delivery
- devices
- time
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Electric Clocks (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
本発明は、複数のデバイスを連携する技術に関する。 The present invention relates to a technique for linking a plurality of devices.
コンピュータの小型化技術の進展によって、IoT(Internet of Things)に代表されるように、コンピュータ機能及びネットワーク接続機能がデバイスに当たり前に組み込まれるようになり、従来組込制御されていたロボットの部品であるアクチュエータの制御、デバイス間の連携制御等について、ネットワークを介して実行する試みがある。ネットワークを介した遠隔制御により複数のロボットの部品等について、動作タイミングを連携させる技術である。 With the advancement of computer miniaturization technology, as represented by IoT (Internet of Things), computer functions and network connection functions have been incorporated into devices as usual. There is an attempt to execute control of a certain actuator, cooperation control between devices, and the like via a network. This is a technology that links the operation timings of parts of a plurality of robots by remote control via a network.
カメラ等のセンサ、及び、モータ等のアクチュエータを組み合わせたロボットのようなシステムでは、これらのセンサ及びアクチュエータは、一般的には、専用の制御信号線を介してマイコン(CPU)と接続されている。
また、ロボット部品の連結の汎用性、遠隔制御性を実現するために、ネットワーク通信の信号線で接続する取り組みは従来から行われており、即応性の求められないケースであれば、動作を随時フィードバックして制御する手法(フィードバック制御)等によって、ネットワーク信号線が適用される実績がある(非特許文献1参照)。
In a system such as a robot that combines a sensor such as a camera and an actuator such as a motor, these sensors and actuators are generally connected to a microcomputer (CPU) via a dedicated control signal line. .
In addition, in order to realize versatility and remote control of connecting robot parts, efforts have been made to connect with signal lines for network communication, and operations can be performed at any time if quick response is not required. There is a track record in which network signal lines are applied by a feedback control method (feedback control) or the like (see Non-Patent Document 1).
一方、ロボットにおける落下物の把持のような、即応性のある機敏な連携操作が要求される動作においては、専用の信号線を用いても、フィードバック制御だけでは対応することができないケースもある。
このような場合において、予め連携動作のタイミングを決めて動作出力を行うフィードフォワード制御手法が用いられることがある。
ただし、信号線をネットワークとして利用した場合では、各デバイスを動かす制御タイミングを合わせる際に、通信遅延、ジッタ、パケット損失の影響が大きい為、適用が難しい。
On the other hand, there is a case where an operation that requires an agile and agile cooperative operation such as gripping a fallen object by a robot cannot be handled only by feedback control even if a dedicated signal line is used.
In such a case, a feed-forward control method that determines operation timing in advance and outputs an operation may be used.
However, when a signal line is used as a network, it is difficult to apply because the influence of communication delay, jitter, and packet loss is great when adjusting the control timing for moving each device.
また、連携動作のタイミングに絶対時刻を用いる手法も考えられる。ネットワークと接続可能なコンピュータは、シンプルなアクチュエータ部品と異なり、時刻情報を保持しているので、統一された絶対時刻を基準としてタイミング制御を行うことが可能である。 A method using absolute time for the timing of the cooperative operation is also conceivable. Unlike a simple actuator component, a computer that can be connected to a network holds time information, so that timing control can be performed based on a unified absolute time.
なお、コンピュータの保持する時刻情報には、ハードウェア時計及びシステム時計の2種類がある。ハードウェア時計は、コンピュータを構成する一つの機能として提供されており、コンピュータの有する高性能なCPU(Central Processing Unit)とは独立した、バッテリで駆動する低消費電力で低性能なICの独立した機能によって実現されているため、時刻誤差が大きく、設定時刻の精度は悪い。 There are two types of time information held by the computer: a hardware clock and a system clock. Hardware clocks are provided as one of the functions that make up a computer, independent of the high-performance CPU (Central Processing Unit) of the computer, independent of low-power consumption and low-performance ICs driven by batteries. Since it is realized by the function, the time error is large and the accuracy of the set time is poor.
システム時計は、OS(Operating System)が管理する機能であり、システム起動時にハードウェア時計から時刻を取得し、システム時計に反映する。システム時計は、CPUの高精細なクロック周波数を基準として時刻の推移を正確に刻むことができるため、ハードウェア時計と比べ誤差が少ない。なお、システム時計の情報は、メモリ上で管理されているため、OSのシャットダウン時には消失する。 The system clock is a function managed by an OS (Operating System), and acquires the time from the hardware clock when the system is started and reflects it in the system clock. Since the system clock can accurately record the time transition based on the high-definition clock frequency of the CPU, it has fewer errors than the hardware clock. Since the system clock information is managed on the memory, it is lost when the OS is shut down.
OS起動時において、システム時計の時刻は、精度の悪いハードウェア時計を基準として設定されるため、世界の絶対時刻である標準時と誤差があると考えられ、かかる時刻を補正する必要がある。一般に、コンピュータでは絶対時刻を設定するため、標準時を有する時刻サーバとのNTP(Network Time Protocol)通信によって時刻を取得し、設定に応じてシステム時計及びハードウェア時計を補正する(非特許文献2〜5参照)。 When the OS is started, the time of the system clock is set with reference to a hardware clock with low accuracy, so it is considered that there is an error from the standard time, which is the absolute time of the world, and it is necessary to correct such time. Generally, in order to set an absolute time in a computer, the time is acquired by NTP (Network Time Protocol) communication with a time server having standard time, and the system clock and the hardware clock are corrected according to the setting (Non-Patent Documents 2 to 2). 5).
以上のように、制御対象となるそれぞれのアクチュエータについて、このような絶対時刻を設定することで、制御マイコンに相当する中央制御が必要なくなるため、ネットワークを信号線とした場合に発生する諸問題を緩和することができる。 As described above, setting such an absolute time for each actuator to be controlled eliminates the need for central control equivalent to a control microcomputer, so there are various problems that occur when a network is used as a signal line. Can be relaxed.
絶対時刻を用いてデバイス間の連携タイミング制御を確保する手法として、現在、IPネットワーク等においてはNTPが使用されている。NTPで時刻補正をすることが一般的な従来のサーバシステム、例えばLinux(登録商標)サーバのNTPクライアントであるntpdデーモンでは、誤差が標準で128[ms]以内に収まるような設定となっている。 Currently, NTP is used in IP networks and the like as a method for ensuring cooperation timing control between devices using absolute time. In a conventional server system that generally performs time correction by NTP, for example, the NTPD daemon that is an NTP client of a Linux (registered trademark) server, the error is set to be within 128 [ms] as a standard. .
しかし、ロボットハンドの関節制御等といった、ネットワークを介してデバイス間の緻密な動作に必要な高精度なタイミング連携を行う場合には、100[ms]の誤差があると精密な動作に支障をきたしてしまう。したがって、コンピュータを有する複数のアクチュエータデバイス間の連携制御において、NTPに依存する基準時間を活用した絶対時刻による連携動作手法を適用することには限界がある。 However, when performing highly accurate timing linkage required for precise operation between devices such as joint control of a robot hand, there is an error of 100 [ms], which hinders precise operation. End up. Therefore, there is a limit in applying a coordinated operation method based on absolute time using a reference time that depends on NTP in coordinated control between a plurality of actuator devices having a computer.
また、監視カメラ等といったセンシングデバイスを複数連携して、高速動作する物体のカメラ撮影による正確な位置情報を把握するためには、正確な時間が必要となってくるため、NTPに依存する基準時間を活用した絶対時刻による連携手法を適用するには限界がある。 In addition, since a precise time is required in order to grasp accurate position information obtained by camera shooting of an object that operates at high speed by linking a plurality of sensing devices such as surveillance cameras, a reference time that depends on NTP There is a limit to applying the absolute time linkage method using
ここで、デバイス間で誤差が生じ得る具体的な理由を下記に挙げる。
[1]システム性能に依存する誤差
[2]ソフトウェア、ハードウェアの異常発生に起因する誤差
[3]システム時刻設定を行うソフトウェア及びハードウェア性能、OS、ミド ルウェア等
の設定といった、デバイス能力の不均一性に起因する誤差
[4]ネットワークの物理的距離や伝送機器の特性などに起因する遅延の誤差
Here, specific reasons why an error may occur between devices are listed below.
[1] Error depending on system performance
[2] Errors caused by software and hardware abnormalities
[3] Errors due to non-uniformity in device capabilities, such as software and hardware performance for setting the system time, OS, middleware settings, etc.
[4] Delay error due to physical distance of network and characteristics of transmission equipment
[1]は、システム運用の経過時間などによって発生する可能性のある固有の誤差であり、NTPクライアント装置で補正を行う前に累積した誤差が制御に影響を及ぼす可能性がある。また、NTPクライアント装置で補正処理が実行される場合でも、標準時と大きな差分がある場合には、NTPクライアント装置は、時刻を参照するアプリケーションの処理に影響を与えないように補正機能を停止する機能、又は、時間をかけて修正していくような機能を有しているため、正確な基準時刻への補正が確実かつ即時に実施されるとは限らない。 [1] is an inherent error that may occur due to the elapsed time of system operation, and the error accumulated before correction by the NTP client device may affect the control. Even when correction processing is executed in the NTP client device, if there is a large difference from the standard time, the NTP client device stops the correction function so as not to affect the processing of the application that refers to the time. Or, since it has a function of correcting over time, correction to an accurate reference time is not always performed reliably and immediately.
[2]は、OSのメモリ消失、カーネルクラッシュやハードウェア障害に伴う再起動によるハードウェア時計情報への切替わりなどが発生した場合に問題となる。この誤差は、異常状態からの復帰後にNTPによる補正を実行することで解消されるが、復帰直後はハードウェア時計を基準としており、補正処理実行のタイミングはコンピュータ設定に依存しているため、このタイミングで連携制御は困難である。また、前記したように、NTPクライアント装置は、大幅な差分を即座に修正しない問題も影響する。 [2] becomes a problem when OS memory loss, switching to hardware clock information due to restart due to a kernel crash or hardware failure, or the like occurs. This error can be eliminated by executing NTP correction after returning from the abnormal state. However, immediately after the return, the hardware clock is used as a reference, and the timing of execution of correction processing depends on the computer settings. Coordinated control is difficult at the timing. In addition, as described above, the NTP client device also has a problem that a large difference is not immediately corrected.
[3]は、複数デバイス制御を目的としたシステム構成では、高性能なサーバからアクチュエータを制御することを目的とした低性能な組込機器等、同一、同質ではないデバイス同士を扱うことを想定した際に考慮が必要である。ハードウェア性能やアーキテクチャ、OSが異なれば、クロック周波数の精度、メモリ性能や時刻補正設定は異なるため、同じ精度を期待できない。 [3] assumes that in a system configuration aimed at controlling multiple devices, the same or different devices, such as low-performance embedded devices intended to control actuators from a high-performance server, are handled. Should be taken into account. If the hardware performance, the architecture, and the OS are different, the accuracy of the clock frequency, the memory performance, and the time correction setting are different, so the same accuracy cannot be expected.
[4]は、制御信号を通信する際に到達するまでに掛かる遅延が原因であり、これはネットワーク接続の装置構成に依存する。 [4] is due to the delay required to reach when communicating the control signal, and this depends on the device configuration of the network connection.
本発明は、前記事情に鑑みて創案されたものであり、複数のデバイスを少ない誤差で連携することが可能な連携指示装置、連携指示プログラム及び連携指示方法を提供することを課題とする。 The present invention has been made in view of the above circumstances, and it is an object of the present invention to provide a cooperation instruction apparatus, a cooperation instruction program, and a cooperation instruction method capable of linking a plurality of devices with a small error.
前記課題を解決するために、本発明は、複数のデバイスの制御を連携する連携指示装置であって、当該連携指示装置と前記複数のデバイスのそれぞれとの通信送達時間、又は、前記複数のデバイスのそれぞれの前記通信送達時間と一の前記通信送達時間との差分である通信送達時間差分が記憶される通信送達時間記憶部と、前記複数のデバイスがどのタイミングで作動するのかを示す実行順序リスト信号を取得し、取得された実行順序リスト信号、及び、前記通信送達時間記憶部に記憶された前記通信送達時間又は前記通信送達時間差分に基づいて、前記複数のデバイスごとに実行指示信号を生成し、生成された前記実行指示信号を対応する前記デバイスへ送信する実行指示信号生成部と、を備え、前記実行指示信号生成部は、前記デバイスによる当該実行指示信号の受信時点を基準とし、前記デバイスがどのタイミングで動作するのかを、前記通信送達時間又は前記通信送達時間差分に基づいて決定し、決定された前記受信時点を基準とした前記タイミングに基づいて、前記複数のデバイスの前記実行指示信号をそれぞれ生成することを特徴とする。 In order to solve the above-described problem, the present invention provides a cooperation instruction apparatus that coordinates control of a plurality of devices, and communication delivery time between the cooperation instruction apparatus and each of the plurality of devices, or the plurality of devices. A communication delivery time storage unit storing a communication delivery time difference that is a difference between each of the communication delivery times and one communication delivery time, and an execution order list indicating when the plurality of devices operate A signal is acquired, and an execution instruction signal is generated for each of the plurality of devices based on the acquired execution order list signal and the communication delivery time or the communication delivery time difference stored in the communication delivery time storage unit And an execution instruction signal generation unit that transmits the generated execution instruction signal to the corresponding device, and the execution instruction signal generation unit includes the device The timing at which the execution instruction signal is received is determined as a reference, the timing at which the device operates is determined based on the communication delivery time or the communication delivery time difference, and the determined reception time is used as the reference The execution instruction signals of the plurality of devices are respectively generated based on timing.
かかる構成によると、連携指示装置から複数のデバイスへの通信送達時間のズレを考慮し、デバイスが受信した時点を基準とした実行指示信号を複数のデバイスごとに生成するので、絶対時刻を使用せずに、複数のデバイスを少ない誤差で連携制御することができる。 According to such a configuration, an execution instruction signal is generated for each of the plurality of devices in consideration of a time difference in communication delivery time from the cooperation instruction apparatus to the plurality of devices, so that the absolute time is used. In addition, a plurality of devices can be cooperatively controlled with a small error.
前記連携指示装置は、前記複数のデバイスのクロックカウンタの精度に関するクロックカウンタ精度情報が記憶されるクロックカウンタ精度情報記憶部を備え、前記実行指示信号生成部は、前記クロックカウンタ精度情報に基づいて、前記実行指示信号における前記デバイスの動作タイミングを、対応する前記デバイスのクロックカウンタ数で記述する構成であってもよい。 The cooperation instruction device includes a clock counter accuracy information storage unit that stores clock counter accuracy information related to the accuracy of the clock counters of the plurality of devices, and the execution instruction signal generation unit is based on the clock counter accuracy information, The configuration may be such that the operation timing of the device in the execution instruction signal is described by the number of clock counters of the corresponding device.
かかる構成によると、実行指示信号を対応するデバイスのクロックカウンタ数で記述するので、デバイス側で動作間の時間間隔をクロックカウンタ数に換算する必要をなくし、デバイス側の処理負荷を低減することができる。 According to this configuration, since the execution instruction signal is described by the number of clock counters of the corresponding device, it is not necessary to convert the time interval between operations to the number of clock counters on the device side, and the processing load on the device side can be reduced. it can.
前記連携指示装置は、前記複数のデバイスのそれぞれに通信送達時間測定信号を送信するとともに、前記通信送達時間測定信号を受信した前記複数のデバイスからの返答信号を受信し、前記通信送達時間測定信号の送信タイミングと前記返答信号の受信タイミングに基づいて、前記複数のデバイスのそれぞれの前記通信送達時間又は前記通信送達時間差分を算出し、算出された前記通信送達時間又は前記通信送達時間差分を前記通信送達時間記憶部に記憶させる通信送達時間管理部を備える構成であってもよい。 The cooperation instructing device transmits a communication delivery time measurement signal to each of the plurality of devices, receives response signals from the plurality of devices that have received the communication delivery time measurement signal, and receives the communication delivery time measurement signal. The communication delivery time or the communication delivery time difference of each of the plurality of devices is calculated based on the transmission timing and the response signal reception timing, and the calculated communication delivery time or the communication delivery time difference is A configuration including a communication delivery time management unit stored in the communication delivery time storage unit may be used.
かかる構成によると、通信送達時間測定信号を用いて通信送達時間を算出するので、連携指示装置と複数のデバイスのそれぞれとの通信送達に要する時間を好適に得ることができ、ひいては複数のデバイスをさらに少ない誤差で連携制御することができる。 According to such a configuration, since the communication delivery time is calculated using the communication delivery time measurement signal, it is possible to suitably obtain the time required for communication delivery between the cooperation instruction apparatus and each of the plurality of devices, and thus the plurality of devices can be obtained. Furthermore, cooperative control can be performed with less error.
また、本発明は、複数のデバイスの制御を連携する連携指示装置による連携指示方法であって、前記連携指示装置は、当該連携指示装置と前記複数のデバイスのそれぞれとの通信送達時間、又は、前記複数のデバイスのそれぞれの前記通信送達時間と一の前記通信送達時間との差分である通信送達時間差分が記憶される通信送達時間記憶部を備えており、前記連携指示装置が、前記複数のデバイスのそれぞれに通信送達時間測定信号を送信するとともに、前記通信送達時間測定信号を受信した前記複数のデバイスからの返答信号を受信し、前記通信送達時間測定信号の送信タイミングと前記返答信号の受信タイミングに基づいて、前記複数のデバイスのそれぞれの前記通信送達時間又は前記通信送達時間差分を算出し、算出された前記通信送達時間又は前記通信送達時間差分を前記通信送達時間記憶部に記憶させる通信送達時間管理ステップと、前記連携指示装置が、前記複数のデバイスがどのタイミングで作動するのかを示す実行順序リスト信号を取得し、取得された実行順序リスト信号、及び、前記通信送達時間記憶部に記憶された前記通信送達時間又は前記通信送達時間差分に基づいて、前記複数のデバイスごとに実行指示信号を生成し、生成された前記実行指示信号を対応する前記デバイスへ送信する実行指示信号生成ステップと、を含み、前記実行指示信号生成ステップにおいて、前記連携指示装置は、前記デバイスによる当該実行指示信号の受信時点を基準として前記デバイスがどのタイミングで動作するのかを、前記通信送達時間又は前記通信送達時間差分に基づいて決定し、決定された前記受信時点を基準とした前記タイミングに基づいて、前記複数のデバイスの前記実行指示信号をそれぞれ生成することを特徴とする。 Further, the present invention is a cooperation instruction method by a cooperation instruction apparatus that coordinates control of a plurality of devices, the cooperation instruction apparatus, communication delivery time between the cooperation instruction apparatus and each of the plurality of devices, or A communication delivery time storage unit that stores a communication delivery time difference that is a difference between the communication delivery time of each of the plurality of devices and the one communication delivery time; and Transmitting a communication delivery time measurement signal to each of the devices, receiving response signals from the plurality of devices that have received the communication delivery time measurement signal, and receiving the transmission timing of the communication delivery time measurement signal and the response signal Based on the timing, the communication delivery time or the communication delivery time difference of each of the plurality of devices is calculated, and the calculated communication transmission time is calculated. A communication delivery time management step of storing time or the communication delivery time difference in the communication delivery time storage unit, and an execution order list signal indicating at which timing the plurality of devices are operated by the cooperation instruction device. And generating an execution instruction signal for each of the plurality of devices based on the acquired execution order list signal and the communication delivery time or the communication delivery time difference stored in the communication delivery time storage unit. An execution instruction signal generation step of transmitting the execution instruction signal to the corresponding device, wherein in the execution instruction signal generation step, the cooperation instruction apparatus uses the reception time point of the execution instruction signal by the device as a reference The timing at which the device operates is based on the communication delivery time or the communication delivery time difference. Determined, the determined the received time based on the timing on the basis, and generating each said execution instruction signal of the plurality of devices.
かかる構成によると、通信送達時間測定信号を用いて通信送達時間を算出するので、連携指示装置と複数のデバイスのそれぞれとの通信送達に要する時間を好適に得ることができ、ひいては複数のデバイスを少ない誤差で連携制御することができる。 According to such a configuration, since the communication delivery time is calculated using the communication delivery time measurement signal, it is possible to suitably obtain the time required for communication delivery between the cooperation instruction apparatus and each of the plurality of devices, and thus the plurality of devices can be obtained. Coordinated control can be performed with little error.
また、本発明は、複数のデバイスの検出結果を連携する連携指示装置であって、当該連携制示装置と前記複数のデバイスのそれぞれとの通信送達時間、又は、前記複数のデバイスのそれぞれの前記通信送達時間と一の前記通信送達時間との差分である通信送達時間差分が記憶される通信送達時間記憶部と、前記通信送達時間記憶部に記憶された前記通信送達時間又は前記通信送達時間差分に基づいて、前記複数のデバイスごとに時刻設定信号を生成し、生成された前記時刻設定信号を対応する前記デバイスへ送信する時刻設定信号生成部と、を備え、前記時刻設定信号生成部は、前記複数のデバイスの前記時刻設定信号の送達時間のズレを考慮して当該時刻設定信号を生成することによって、当該時刻設定信号を受信した前記複数のデバイスを共通の時間系で計時させることを特徴とする。 In addition, the present invention is a cooperation instruction device that cooperates the detection results of a plurality of devices, the communication delivery time between the cooperation indication device and each of the plurality of devices, or each of the plurality of devices A communication delivery time storage unit that stores a communication delivery time difference that is a difference between the communication delivery time and one communication delivery time, and the communication delivery time stored in the communication delivery time storage unit or the communication delivery time difference A time setting signal generation unit that generates a time setting signal for each of the plurality of devices and transmits the generated time setting signal to the corresponding device, and the time setting signal generation unit includes: The plurality of devices that have received the time setting signal by generating the time setting signal in consideration of a difference in delivery time of the time setting signal of the plurality of devices And characterized in that clocked by a common time system.
かかる構成によると、連携指示装置から複数のデバイスへの通信送達時間のズレを考慮し、複数のデバイスに共通の時刻を設定するための時刻設定信号を生成するので、絶対時刻を使用せずに、複数のデバイスの検出結果を少ない誤差で連携することができる。 According to such a configuration, a time setting signal for setting a common time for a plurality of devices is generated in consideration of a shift in communication delivery time from the cooperation instruction apparatus to the plurality of devices, so that an absolute time is not used. The detection results of a plurality of devices can be linked with a small error.
前記連携指示装置は、前記複数のデバイスのそれぞれに通信送達時間測定信号を送信するとともに、前記通信送達時間測定信号を受信した前記複数のデバイスからの返答信号を受信し、前記通信送達時間測定信号の送信タイミングと前記返答信号の受信タイミングに基づいて、前記複数のデバイスのそれぞれの前記通信送達時間又は前記通信送達時間差分を算出し、算出された前記通信送達時間又は前記通信送達時間差分を前記通信送達時間記憶部に記憶させる通信送達時間管理部を備える構成であってもよい。 The cooperation instructing device transmits a communication delivery time measurement signal to each of the plurality of devices, receives response signals from the plurality of devices that have received the communication delivery time measurement signal, and receives the communication delivery time measurement signal. The communication delivery time or the communication delivery time difference of each of the plurality of devices is calculated based on the transmission timing and the response signal reception timing, and the calculated communication delivery time or the communication delivery time difference is A configuration including a communication delivery time management unit stored in the communication delivery time storage unit may be used.
かかる構成によると、通信送達時間測定信号を用いて通信送達時間を算出するので、連携指示装置と複数のデバイスのそれぞれとの通信送達に要する時間を好適に得ることができ、ひいては複数のデバイスの検出結果をさらに少ない誤差で連携することができる。 According to such a configuration, since the communication delivery time is calculated using the communication delivery time measurement signal, it is possible to suitably obtain the time required for communication delivery between the cooperation instruction apparatus and each of the plurality of devices. The detection results can be linked with even smaller errors.
また、本発明は、コンピュータを前記した連携指示装置として機能させる連携指示プログラムとしても具現化可能である。 The present invention can also be embodied as a cooperation instruction program that causes a computer to function as the cooperation instruction device described above.
本発明によると、複数のデバイスを少ない誤差で連携することができる。 According to the present invention, a plurality of devices can be linked with a small error.
<第一の実施形態>
続いて、本発明の実施形態について図面を参照して説明する。図1に示すように、本発明の第一の実施形態に係るデバイス制御システム1は、複数のデバイス40の制御を連携するためのシステムであって、デバイス制御装置10と、連携指示装置20Xと、ネットワーク30と、複数のデバイス40(40A,40B,40C,…)と、を備える。
<First embodiment>
Next, embodiments of the present invention will be described with reference to the drawings. As shown in FIG. 1, a device control system 1 according to the first embodiment of the present invention is a system for linking control of a plurality of devices 40, and includes a
<デバイス制御装置>
デバイス制御装置10は、複数のデバイス40に連携動作を実行させるための実行順序リスト信号を生成し、生成された実行順序リスト信号を連携指示装置20Xへ送信する。デバイス制御装置10は、操作部11と、制御部12と、表示部13と、を備える。
<Device control device>
The
操作部11は、キーボード、マウス等によって構成されており、ユーザの操作に基づく入力内容を制御部12へ出力する。
The operation unit 11 includes a keyboard, a mouse, and the like, and outputs input contents based on user operations to the
制御部12は、CPU(Central Processing Unit)、ROM(Read-Only Memory)、RAM(Random Access Memory)、入出力回路等によって構成されている。本実施形態において、制御部12は、操作部11から出力された入力内容に基づいて実行順序リスト信号を生成し、生成された実行順序リスト信号を連携指示装置20Xへ送信する。
The
表示部13は、ディスプレイ等によって構成されており、制御部12から出力されたデータ等を表示する。
The
≪実行順序リスト信号≫
実行順序リスト信号は、複数のデバイス40(40A,40B,40C,…)がどのタイミングでどのように動作するのかが記述された信号である。すなわち、実行順次リスト信号は、複数のデバイス40(40A,40B,40C,…)の動作内容と、動作間の時間間隔(動作間隔)と、を含むリストである。
実行順序リスト信号の一例を以下に示す。
1:デバイス40Aを作動させる
2:1の1[ms]後にデバイス40Bを作動させる
3:2の1[ms]後(1の2[ms]後)にデバイス40Cを作動させる
4:3の1[ms]後(1の3[ms]後)にデバイス40A,40B,40Cを作動させる。
≪Execution order list signal≫
The execution order list signal is a signal describing how and when the plurality of devices 40 (40A, 40B, 40C,...) Operate. That is, the execution sequential list signal is a list including operation contents of the plurality of devices 40 (40A, 40B, 40C,...) And time intervals (operation intervals) between the operations.
An example of the execution order list signal is shown below.
1: Operate
かかるデバイス制御装置10は、連携指示装置20X及び複数のデバイス40の遠隔地に設置されていてもよく、連携指示装置20Xと一体的に構成されていてもよい。
The
<連携指示装置>
連携指示装置20Xは、CPU、ROM、RAM、入出力回路等によって構成されている。連携指示装置20Xは、複数のデバイス40(40A,40B,40C,…)の制御を連携する装置であり、機能部として、ハードウェア時計21と、システム時計22と、記憶部23と、クロックカウンタ精度情報管理部24と、通信送達時間管理部25と、実行指示信号生成部26と、を備える。
<Cooperation instruction device>
The
≪ハードウェア時計≫
ハードウェア時計21は、コンピュータのハードウェア基盤に実装されており、主演算装置(CPU)とは独立した、図示しないボタン電池、バッテリ等で駆動する低消費電力で低性能な(精度が低い)ICの独立した機能である。ハードウェア時計21は、システム時計22のクロックカウンタ22aよりも低精度のクロックカウンタ(図示せず)を備えており、当該クロックカウンタを用いて計時する。
≪Hardware clock≫
The
≪システム時計≫
システム時計22は、コンピュータの主演算装置(CPU)及び主記憶装置(メモリ)を使用し、OS(Operating System)上で管理される機能である。システム時計22は、ハードウェア時計21と比較して高性能なクロックカウンタ(例えば、CPUのクロック周波数でカウントを刻むCPUクロックカウンタ)22aを備えており、当該クロックカウンタ22aを用いて計時する。クロックカウンタ22aのクロックカウンタ精度情報は、記憶部23に記憶されている。連携指示装置20Xの起動時において、システム時計22は、ハードウェア時計21から取得された精度の低い時刻情報を参照する。また、システム時計22は、NTP(時刻補正プロトコル)サーバ装置を利用することで、当該システム時計22の時刻を世界標準時に合わせることができる。
≪System clock≫
The
≪記憶部≫
記憶部23には、クロックカウンタ22aのクロックカウンタ精度情報が記憶されるとともに、クロックカウンタ精度情報データベース23aと、通信送達時間データベース23bと、が記憶される。
≪Storage section≫
The
≪クロックカウンタ精度情報データベース≫
クロックカウンタ精度情報データベース23aは、複数のデバイス40(40A,40B,40C,…)のデバイスIDとクロックカウンタ精度情報とが関連付けられたデータベース(リスト)である。クロックカウンタ精度情報は、クロックカウンタの1カウント(クロック)あたりの時間を示す情報である。クロックカウンタ精度情報データベース23aの一例を表1に示す。
≪Clock counter accuracy information database≫
The clock counter
≪通信送達時間データベース≫
通信送達時間データベース23bは、複数のデバイス40(40A,40B,40C,…)のデバイスIDと通信送達時間又は通信送達時間差分とが関連付けられたデータベース(リスト)である。通信送達時間は、連携指示装置20Xと複数のデバイス40(40A,40B,40C,…)のそれぞれとの通信(連携指示装置20Xが信号(通信送達時間測定信号、実行指示信号、時刻設定信号等)を送信してからデバイス40が受信するまで)に要する時間である。通信送達時間が記憶される場合の通信送達時間データベース23bの一例を表2に示す。
≪Communication delivery time database≫
The communication
通信送達時間差分は、通信送達時間と一の通信送達時間との差分であり、本実施形態では、通信送達時間と最も遅い通信送達時間との差分である。通信送達時間差分が記憶される場合の通信送達時間データベース23bの一例を表3に示す。通信送達時間差分は、表3の括弧内に示すように、各デバイス40のクロックカウンタ精度情報に基づいて、各デバイス40のクロックカウンタ数に換算されていてもよい。
The communication delivery time difference is a difference between the communication delivery time and one communication delivery time, and in this embodiment, is a difference between the communication delivery time and the latest communication delivery time. Table 3 shows an example of the communication
≪クロックカウンタ精度情報管理部≫
クロックカウンタ精度情報管理部24は、クロックカウンタ精度情報データベース23aに記憶されたクロックカウンタ精度情報を管理(追加、更新、修正、削除等)する。本実施形態において、クロックカウンタ精度情報管理部24は、複数のデバイス40A,40B,40C,…のクロックカウンタ精度情報を複数のデバイス40A,40B,40C,…から取得し、取得されたクロックカウンタ精度情報をデバイスID(デバイス名等)と関連付けてクロックカウンタ精度情報データベース23aに記憶させる。
≪Clock counter accuracy information management department≫
The clock counter accuracy
≪通信送達時間管理部≫
通信送達時間管理部25は、通信送達時間データベース23bに記憶された通信送達時間又は通信送達時間差分を管理(追加、更新、修正、削除等)する。本実施形態において、通信送達時間管理部25は、クロックカウンタ精度情報データベース23aに記憶されたクロックカウンタ精度情報に基づいて、通信送達時間又は通信送達時間差分を対応するデバイス40(40A,40B,40C,…)のクロックカウンタ数に換算して通信送達時間データベース23bに記憶させることができる。
≪Communication Delivery Time Management Department≫
The communication delivery
≪実行指示信号生成部≫
実行指示信号生成部26は、デバイス制御装置10の制御部12によって送信された実行順序リスト信号を受信し、受信された実行順序リスト信号に基づいて、複数のデバイス40(40A,40B,40C,…)に対応する実行指示信号を生成し、生成された実行指示信号を、ネットワーク30を介して対応する複数のデバイス40(40A,40B,40C,…)へ送信する。
<< Execution instruction signal generator >>
The execution instruction
実行指示信号は、複数のデバイス40(40A,40B,40C,…)ごとに生成されており、対応するデバイス40が実行指示信号を受信した時点を基準とし、自デバイス40がどのタイミングでどのように動作するのかが時間又は対応するデバイス40のクロックカウンタ数で記述された信号である。すなわち、実行指示信号は、自デバイス40が実行指示信号を受信した時点を基準とし、自デバイス40の動作内容と、動作間の時間間隔(動作間隔)と、を含むリストである。
図2に示すように、連携指示装置20Xが、時刻t1において実行順序リスト信号を受信し、実行指示信号を生成し、時刻t2において実行指示信号を一斉送信(マルチキャスト)する。デバイス40Aは、時刻t2から自身の通信送達時間(20[ms])だけ経過した時刻t4に実行順序リスト信号を受信する。デバイス40Bは、時刻t2から自身の通信送達時間(10[ms])だけ経過した時刻t3に実行順序リスト信号を受信する。デバイス40Cは、時刻t2から自身の通信送達時間(30[ms])だけ経過した時刻t5に実行順序リスト信号を受信する。
The execution instruction signal is generated for each of the plurality of devices 40 (40A, 40B, 40C,...), And the timing at which the own device 40 is used at what timing is based on the time when the corresponding device 40 receives the execution instruction signal. Is a signal described by time or the number of clock counters of the corresponding device 40. That is, the execution instruction signal is a list including the operation content of the own device 40 and the time interval (operation interval) between the operations with respect to the time when the own device 40 receives the execution instruction signal.
As shown in FIG. 2, the
実行指示信号の一例を以下に示す。
≪デバイス40Aの実行指示信号≫
・実行指示信号を受信する
・cA1クロック(=10[ms]、1,000,000[clock])待つ
・アクチュエータ42を作動させる
・cA2クロック(=3[ms]、300,000[clock])待つ
・アクチュエータ42を作動させる
An example of the execution instruction signal is shown below.
<< Execution instruction signal of
・ Receiving an execution instruction signal ・ Wait for cA1 clock (= 10 [ms], 1,000,000 [clock]) ・ Activate
≪デバイス40Bの実行指示信号≫
・実行指示信号を受信する
・cB1クロック(=21[ms]、210,000[clock])待つ
・アクチュエータ42を作動させる
・cB2クロック(=2[ms]、20,000[clock])待つ
・アクチュエータ42を作動させる
<< Execution instruction signal of
Receive an execution instruction signal Wait for cB1 clock (= 21 [ms], 210,000 [clock])
≪デバイス40Cの実行指示信号≫
・実行指示信号を受信する
・cC1クロック(=2[ms]、100,000[clock])待つ
・アクチュエータ42を作動させる
・cC2クロック(=1[ms]、50,000[clock])待つ
・アクチュエータ42を作動させる
<< Execution instruction signal of
Receive the execution instruction signal Wait for cC1 clock (= 2 [ms], 100,000 [clock])
各デバイス40が実行指示信号を受信してから最初の動作までの時間間隔は、通信送達時間差分と実行順序リストに含まれる時間間隔とに基づいて設定されている。すなわち、デバイス40Aが実行指示信号を受信してから最初の動作1までの時間間隔(t5−t4)は、当該デバイス40Aの通信送達時間差分(10[ms])に設定されている。また、デバイス40Bが実行指示信号を受信してから最初の動作2までの時間間隔(t6−t3)は、当該デバイス40Bの通信送達時間差分(20[ms])と動作1から動作2までの時間間隔(1[ms])との合計時間(21[ms])に設定されている。また、デバイス40Cが実行指示信号を受信してから最初の動作3までの時間間隔(t7−t5)は、当該デバイス40Cの通信送達時間(0[ms])と動作1から動作3までの時間間隔(2[ms])との合計時間(2[ms])に設定されている。
The time interval from when each device 40 receives the execution instruction signal to the first operation is set based on the communication delivery time difference and the time interval included in the execution order list. That is, the time interval (t5-t4) from when the
<ネットワーク>
ネットワーク30は、連携指示装置20Xと複数のデバイス40(40A,40B,40C,…)とを通信可能に接続する有線又は無線のネットワークである。
<Network>
The
<デバイス>
複数のデバイス40(40A,40B,40C,…)は、連携指示装置20Xによって送信された実行指示信号を受信し、受信された実行指示信号に基づいて動作を実行する。デバイス40は、制御部41と、アクチュエータ42と、センサ43と、を備える。
<Device>
The plurality of devices 40 (40A, 40B, 40C,...) Receive the execution instruction signal transmitted by the
制御部41は、ハードウェア時計41aと、クロックカウンタ41cを有するシステム時計41bと、を備える。ハードウェア時計41a、システム時計41b及びクロックカウンタ41cの機能については、連携指示装置20Xのハードウェア時計21、システム時計22及びクロックカウンタ22aと同様であるため、説明を省略する。ただし、複数のデバイス40のクロックカウンタ41c及び連携指示装置20Xのクロックカウンタ22aの精度(クロックカウンタ精度情報)は、それぞれのCPUの性能に依存するため、異なる値となり得る。本実施形態において、制御部41は、当該クロックカウンタ41cのクロックカウンタ数を用いて、受信指示信号に基づくアクチュエータ42の制御等を行う。なお、本実施形態において、ハードウェア時計41aは省略可能である。
The
アクチュエータ42は、制御部41によって動作制御されるモータ等である。センサ43は、検出結果を制御部41へ出力するカメラ等である。
The
<動作例>
続いて、デバイス制御システム1におけるデバイス制御装置10、連携指示装置20X及び複数のデバイス40の動作例について説明する。まず、複数のデバイス40を連携制御するための事前処理について、クロックカウンタ精度情報のデータベース化、通信送達時間のデータベース化の順に説明し、その後、複数のデバイス40の連携制御について説明する。
<Operation example>
Next, an operation example of the
≪クロックカウンタ精度情報のデータベース化≫
図3に示すように、連携指示装置20Xのクロックカウンタ精度情報管理部24は、制御対象である複数のデバイス40A,40B,…に対応するクロックカウンタ精度確認信号を、ネットワーク30を介して複数のデバイス40A,40B,…へそれぞれ送信する(ステップS1)。ここで、クロックカウンタ精度情報管理部24は、複数のクロックカウンタ精度確認信号を同時に一斉送信(マルチキャスト)してもよく、複数のクロックカウンタ精度確認信号をそれぞれ異なる時刻に個別送信してもよい。
<< Clock counter accuracy information database >>
As shown in FIG. 3, the clock counter accuracy
複数のデバイス40A,40B,…の制御部41は、クロックカウンタ精度情報管理部24によって送信されたクロックカウンタ精度確認信号を受信すると(ステップS11A,S11B,…)、それぞれ、当該制御部41内に予め記憶されたクロックカウンタ精度情報を読み出し、読み出されたクロックカウンタ精度情報を、ネットワーク30を介して連携指示装置20Xへ送信する(ステップS12A,12B,…)。
When the
連携指示装置20Xのクロックカウンタ精度情報管理部24は、複数デバイス40A,40B,…の制御部41によって送信されたクロックカウンタ精度情報を個別に受信する(ステップS2)。
続いて、連携指示装置20Xのクロックカウンタ精度情報管理部24は、受信されたクロックカウンタ精度情報を、記憶部23のクロックカウンタ精度情報データベース23aに記憶させる(ステップS3)。
The clock counter accuracy
Subsequently, the clock counter accuracy
≪通信送達時間の差分のリスト化≫
以下の説明において、ステップS4〜S7が、通信送達時間管理ステップに該当する。図3に示すように、クロックカウンタ精度情報のデータベース化の後に、連携指示装置20Xの通信送達時間管理部25は、制御対象である複数のデバイス40A,40B,…に対応する通信送達時間測定信号を、ネットワーク30を介して複数のデバイス40A,40B,…へ送信するとともに、当該連携指示装置20Xのハードウェア時計21及びクロックカウンタ22aによって計時された通信送達時間測定信号の送信時刻を一時的に記憶する(ステップS4)。ここで、通信送達時間管理部25は、複数の通信送達時間測定信号を同時に一斉送信(マルチキャスト)してもよく、複数の通信送達時間測定信号をそれぞれ異なる時刻に個別送信してもよい。
≪List of differences in communication delivery time≫
In the following description, steps S4 to S7 correspond to a communication delivery time management step. As shown in FIG. 3, after the clock counter accuracy information is made into a database, the communication delivery
複数のデバイス40A,40B,…の制御部41は、通信送達時間管理部25によって送信された通信送達時間測定信号を受信すると(ステップS13A,S13B,…)、それぞれ、通信送達時間測定返答信号を、ネットワーク30を介して連携指示装置20Xへ即時に送信する(ステップS14A,S14B,…)。
When receiving the communication delivery time measurement signal transmitted by the communication delivery time management unit 25 (steps S13A, S13B,...), The
連携指示装置20Xの通信送達時間管理部25は、複数のデバイス40A,40B,…の制御部41によって送信された通信送達時間測定返答信号を個別に受信する(ステップS5)。
The communication delivery
続いて、通信送達時間管理部25は、受信された通信送達時間測定返答信号に基づいて、複数のデバイス40A,40B,…ごとに通信送達時間を算出する(ステップS6)。詳細には、通信送達時間管理部25は、連携指示装置20Xのハードウェア時計21及びクロックカウンタ22aによって、複数のデバイス40A,40B,…ごとに、通信送達時間測定返答信号の受信時刻を計時する。続いて、通信送達時間管理部25は、下記式に基づいて通信送達時間を算出する。
[通信送達時間]=([通信送達時間測定返答信号の受信時刻]−[通信送達時間測定信号の送信時刻])÷2
Subsequently, the communication delivery
[Communication delivery time] = ([communication delivery time measurement response signal reception time] − [communication delivery time measurement signal transmission time]) / 2
なお、ステップS5,S6に関して、通信送達時間管理部25は、全ての通信送達時間測定返答信号を受信した後に、全ての通信送達時間を算出する構成であってもよく、通信送達時間測定返答信号を受信した順に、他の通信送達時間測定返答信号の受信を待たずに通信送達時間を算出する構成であってもよい。
Regarding steps S5 and S6, the communication delivery
続いて、通信送達時間管理部25は、複数のデバイス40A,40B,…ごとに、最も遅い通信送達時間からの差分を算出し、算出された差分を複数のデバイス40A,40B,…のそれぞれのクロックカウンタ数に換算し、換算されたクロックカウンタ数を通信送達時間データベース23bに記憶させる(ステップS7)。
Subsequently, the communication delivery
≪複数のデバイスの連携制御≫
以下の説明において、ステップS31,S32が、実行指示信号生成ステップに該当する。図4に示すように、デバイス制御装置10の制御部12は、実行順序リスト信号を生成し、生成された実行順序リスト信号を連携指示装置20Xへ送信する(ステップS21)。連携指示装置20Xの実行指示信号生成部26は、デバイス制御装置10の制御部12によって送信された実行順序リスト信号を受信し(ステップS31)、受信された実行順序リスト信号に基づいて、複数のデバイス40A,40B,…ごとの実行指示信号を生成し、生成された実行指示信号を、ネットワーク30を介して複数のデバイス40A,40B,…へ送信する(ステップS32)。ここで、実行指示信号生成部26は、複数の実行指示信号を同時に一斉送信(マルチキャスト)する。
≪Cooperation control of multiple devices≫
In the following description, steps S31 and S32 correspond to an execution instruction signal generation step. As illustrated in FIG. 4, the
複数のデバイス40A,40B,…の制御部41は、当該デバイスに対応する実行指示信号を受信し、当該デバイスのクロックカウンタ41cによるカウント(計時)を開始する(ステップS41A,S41B,…)。
The
クロックカウンタ41cによるカウンタ値が1ずつ増え(ステップS42A,42B,…)、カウンタ値が実行指示信号に含まれる指示待機カウンタ値と等しくなると(ステップS43A,S43B,…でYes)、制御部41は、指示された動作をアクチュエータ42に実行させる(ステップS44A,S44B,…)。制御部41は、実行指示信号に他に待機指示がある場合(ステップS45A,S45B,…でYes)には、ステップS42A,S42B,…〜S44A,S44B,…を繰り返す。
When the counter value by the clock counter 41c is incremented by 1 (steps S42A, 42B,...) And the counter value becomes equal to the instruction standby counter value included in the execution instruction signal (Yes in steps S43A, S43B,. The instructed operation is executed by the actuator 42 (steps S44A, S44B,...). When there is another standby instruction in the execution instruction signal (Yes in steps S45A, S45B,...), The
<適用対象>
かかるデバイス制御システム1Xは、図5に示すように、複数のデバイス40(40A,40B,40C,…)がロボットアームの関節のアクチュエータであるようなケースに適用可能である。
<Applicable target>
Such a device control system 1X is applicable to a case where a plurality of devices 40 (40A, 40B, 40C,...) Are actuators of joints of a robot arm, as shown in FIG.
本発明の第一の実施形態に係る連携指示装置20Xは、連携指示装置20Xから複数のデバイス40への通信送達時間のズレを考慮し、デバイス40が受信した時点を基準とした実行指示信号を複数のデバイス40ごとに生成するので、絶対時刻を使用せずに、複数のデバイス40を少ない誤差で連携制御することができる。
また、連携指示装置20Xは、実行指示信号を対応するデバイス40のクロックカウンタ数で記述するので、デバイス40側で動作間の時間間隔をクロックカウンタ数に換算する必要をなくし、デバイス40側の処理負荷を低減することができる。
また、連携指示装置20Xは、通信送達時間測定信号を用いて通信送達時間を算出するので、連携指示装置20Xと複数のデバイス40のそれぞれとの通信送達に要する時間を好適に得ることができ、ひいては複数のデバイス40をさらに少ない誤差で連携制御することができる。
The
Further, since the
In addition, since the
<第二の実施形態>
続いて、本発明の第二の実施形態に係るデバイス制御システムについて、第一の実施形態に係るデバイス制御システム1Xとの相違点を中心に説明する。図6に示すように、本発明の第二の実施形態に係る連携指示装置20Yは、複数のデバイス40(40A,40B,40C,…の検出結果、より詳細には、検出結果の検出時刻を連携する装置であり、実行指示信号生成部26に代えて、時刻設定信号生成部27を備える。なお、第二の実施形態において、クロックカウンタ精度情報データベース23a及びクロックカウンタ精度情報管理部24は、省略可能である。
<Second Embodiment>
Subsequently, a device control system according to the second embodiment of the present invention will be described focusing on differences from the device control system 1X according to the first embodiment. As shown in FIG. 6, the
≪時刻設定信号生成部≫
時刻設定信号生成部27は、通信送達時間管理部25に記憶された通信送達時間又は通信送達時間差分に基づいて、複数のデバイス40(40A,40B,40C,…)ごとに時刻設定信号を生成し、生成された時刻設定信号を対応するデバイス40へ送信する。
≪Time setting signal generator≫
The time setting
時刻設定信号は、複数のデバイス40(40A,40B,40C,…)の時刻設定信号の送達時間のズレを考慮して生成される信号であり、当該時刻設定信号を受信した複数のデバイス40(40A,40B,40C,…)を共通の時間系で計時させる。 The time setting signal is a signal generated in consideration of a difference in delivery time of the time setting signals of the plurality of devices 40 (40A, 40B, 40C,...), And the plurality of devices 40 ( 40A, 40B, 40C,...) Are counted in a common time system.
表2及び表3の通信送達時間を図7に示す例に適用すると、時刻設定信号生成部27は、デバイス40B用の時刻設定信号として、ハードウェア時計21の時刻等を参照することによって、デバイス40Bが時刻設定信号を受信する時刻t11を任意の時刻とする時刻設定信号を生成する。また、時刻設定信号生成部27は、デバイス40A用の時刻設定信号として、デバイス40Aが時刻設定信号を受信する時刻t12を前記した任意の時刻よりも10[ms]後の時刻とする時刻設定信号を生成する。また、時刻設定信号生成部27は、デバイス40C用の時刻設定信号として、デバイス40Cが時刻設定信号を受信する時刻t13を前記した任意の時刻よりも20[ms]後の時刻とする時刻設定信号を生成する。
When the communication delivery times of Table 2 and Table 3 are applied to the example shown in FIG. 7, the time setting
時刻設定信号生成部27は、生成された複数の時刻設定信号を、ネットワーク30を介して複数のデバイス40(40A,40B,40C,…)へ一斉送信(マルチキャスト)する。複数のデバイス40(40A,40B,40C,…)の制御部41は、対応する時刻設定信号を受信すると、受信された時刻設定信号に含まれる時刻に基づいてシステム時計41c又はハードウェア時計41aの時刻を補正し、クロックカウンタ41cを用いたシステム時計41bによる計時、又は、ハードウェア時計41aによる計時を行う。すなわち、複数デバイス40(40A,40B,40C,…)の制御部41は、対応する時刻設定信号を受信すると、受信された時刻設定信号に含まれる時刻をスタート時刻として、クロックカウンタ41c又はハードウェア時計41aのクロックカウンタを用いた計時を行う。したがって、複数のデバイス40(40A,40B,40C,…)は、共通の時間系においてセンサ43による検出を行うことができる。なお、本実施形態において、ハードウェア時計41a及びシステム時計41bの一方は、省略可能である。
The time setting
<適用対象>
かかるデバイス制御システム1Yは、図8に示すように、複数のデバイス40(40A,40B,40C,…)が飛行物体100等を検出するカメラであるようなケースに適用可能である。複数のデバイス40(40A,40B,40C,…)の制御部41は、センサ43であるカメラの検出結果(撮影画像、飛行物体100の位置座標等)とクロックカウンタ41cによって計時された検出時刻(共通時刻)とを関連付けて連携指示装置20Y等へ送信することができる。
<Applicable target>
The
例えば、連携指示装置20Yの時刻設定信号生成部27は、複数のデバイス40(40A,40B,40C,…)から送信された検出結果と検出時刻との組み合わせを受信し、受信された検出結果と検出時刻との組み合わせをデバイス制御装置10へ送信することができる。この場合には、デバイス制御装置10の制御部12は、複数のデバイス40による検出結果と検出時刻との組み合わせを受信し、受信された検出結果と検出時刻との組み合わせを表示部13に表示させる。
For example, the time setting
本発明の第二の実施形態に係る連携指示装置20Yは、連携指示装置20Xから複数のデバイス40への通信送達時間のズレを考慮し、複数のデバイス40に共通の時刻を設定するための時刻設定信号を生成するので、絶対時刻を使用せずに、複数のデバイス40の検出結果を少ない誤差で連携することができる。
また、連携指示装置20Yは、通信送達時間測定信号を用いて通信送達時間を算出するので、連携指示装置20Yと複数のデバイス40のそれぞれとの通信送達に要する時間を好適に得ることができ、ひいては複数のデバイス40の検出結果をさらに少ない誤差で連携することができる。
The
Further, since the
以上、本発明の実施形態について説明したが、本発明は前記実施形態に限定されず、本発明の要旨を逸脱しない範囲で適宜変更可能である。例えば、通信送達時間差分は、最も遅い通信送達時間との差分に限定されず、特に第二の実施形態においては、最も早い通信送達時間との差分であってもよい。また、実行指示信号及び時刻設定信号が一斉送信(マルチキャスト)ではなく個別送信される場合には、実行指示信号生成部26及び時刻設定信号生成部27は、送信時間差を考慮して実行指示信号及び時刻設定信号をそれぞれ生成することができる。また、本発明は、コンピュータを前記した連携指示装置20X,20Yとして機能させる連携指示プログラムとしても具現化可能である。
As mentioned above, although embodiment of this invention was described, this invention is not limited to the said embodiment, In the range which does not deviate from the summary of this invention, it can change suitably. For example, the communication delivery time difference is not limited to the difference from the latest communication delivery time, and may be a difference from the earliest communication delivery time in the second embodiment. Further, when the execution instruction signal and the time setting signal are individually transmitted instead of simultaneous transmission (multicast), the execution instruction
1 デバイス制御システム
10 デバイス制御装置
20X,20Y 連携指示装置
23a クロックカウンタ精度情報データベース(クロックカウンタ精度情報記憶部)
23b 通信送達時間データベース(通信送達時間記憶部)
26 実行指示信号生成部
27 時刻設定信号生成部
30 ネットワーク
40,40A,40B,40C デバイス
41 制御部
41c クロックカウンタ
DESCRIPTION OF SYMBOLS 1
23b Communication delivery time database (communication delivery time storage unit)
26 execution instruction
Claims (8)
当該連携指示装置と前記複数のデバイスのそれぞれとの通信送達時間、又は、前記複数のデバイスのそれぞれの前記通信送達時間と一の前記通信送達時間との差分である通信送達時間差分が記憶される通信送達時間記憶部と、
前記複数のデバイスがどのタイミングで作動するのかを示す実行順序リスト信号を取得し、取得された実行順序リスト信号、及び、前記通信送達時間記憶部に記憶された前記通信送達時間又は前記通信送達時間差分に基づいて、前記複数のデバイスごとに実行指示信号を生成し、生成された前記実行指示信号を対応する前記デバイスへ送信する実行指示信号生成部と、
を備え、
前記実行指示信号生成部は、前記デバイスによる当該実行指示信号の受信時点を基準とし、前記デバイスがどのタイミングで動作するのかを、前記通信送達時間又は前記通信送達時間差分に基づいて決定し、決定された前記受信時点を基準とした前記タイミングに基づいて、前記複数のデバイスの前記実行指示信号をそれぞれ生成する
ことを特徴とする連携指示装置。 A coordination instruction apparatus that coordinates control of a plurality of devices,
A communication delivery time difference between the communication instruction time of each of the plurality of devices and the communication delivery time of each of the plurality of devices or a difference between the communication delivery time of each of the plurality of devices and the one communication delivery time is stored. A communication delivery time storage unit;
An execution order list signal indicating at which timing the plurality of devices operate is acquired, the acquired execution order list signal, and the communication delivery time or the communication delivery time stored in the communication delivery time storage unit An execution instruction signal generation unit that generates an execution instruction signal for each of the plurality of devices based on the difference, and transmits the generated execution instruction signal to the corresponding device;
With
The execution instruction signal generation unit determines, based on the communication delivery time or the communication delivery time difference, a timing at which the device operates with reference to a reception time point of the execution instruction signal by the device. The execution instruction signal of each of the plurality of devices is generated based on the timing based on the received reception time.
前記実行指示信号生成部は、前記クロックカウンタ精度情報に基づいて、前記実行指示信号における前記デバイスの動作タイミングを、対応する前記デバイスのクロックカウンタ数で記述する
ことを特徴とする請求項1に記載の連携指示装置。 A clock counter accuracy information storage unit for storing clock counter accuracy information related to the accuracy of the clock counters of the plurality of devices;
The said execution instruction | indication signal production | generation part describes the operation timing of the said device in the said execution instruction | indication signal by the number of clock counters of the said corresponding device based on the said clock counter precision information. Linkage instruction device.
ことを特徴とする請求項1又は請求項2に記載の連携指示装置。 A communication delivery time measurement signal is transmitted to each of the plurality of devices, a response signal is received from the plurality of devices that have received the communication delivery time measurement signal, and the transmission timing of the communication delivery time measurement signal and the response are received. Based on the signal reception timing, the communication delivery time or the communication delivery time difference of each of the plurality of devices is calculated, and the calculated communication delivery time or the communication delivery time difference is stored in the communication delivery time storage unit. The cooperation instruction device according to claim 1, further comprising a communication delivery time management unit that stores the communication delivery time.
前記複数のデバイスがどのタイミングで作動するのかを示す実行順序リスト信号を取得し、取得された実行順序リスト信号、及び、当該連携指示装置と前記複数のデバイスのそれぞれとの通信送達時間、又は、前記複数のデバイスのそれぞれの前記通信送達時間と一の前記通信送達時間との差分である通信送達時間差分が記憶される通信送達時間記憶部に記憶された前記通信送達時間又は前記通信送達時間差分に基づいて、前記複数のデバイスごとに実行指示信号を生成し、生成された前記実行指示信号を対応する前記デバイスへ送信する実行指示信号生成部として機能させ、
前記実行指示信号生成部は、前記デバイスによる当該実行指示信号の受信時点を基準とし、前記デバイスがどのタイミングで動作するのかを、前記通信送達時間又は前記通信送達時間差分に基づいて決定することによって、前記複数のデバイスの前記実行指示信号をそれぞれ生成する
ことを特徴とする連携指示プログラム。 A computer as a cooperation instruction device that coordinates control of a plurality of devices,
An execution order list signal indicating at which timing the plurality of devices operate is acquired, and the acquired execution order list signal and a communication delivery time between the cooperation instruction apparatus and each of the plurality of devices, or The communication delivery time or the communication delivery time difference stored in the communication delivery time storage unit in which a communication delivery time difference that is a difference between each of the plurality of devices and the one communication delivery time is stored. On the basis of the generation instruction signal for each of the plurality of devices, function as an execution instruction signal generation unit that transmits the generated execution instruction signal to the corresponding device,
The execution instruction signal generation unit determines, based on the communication delivery time or the communication delivery time difference, at which timing the device operates with reference to the reception time of the execution instruction signal by the device. Each of the execution instruction signals for the plurality of devices is generated.
前記連携指示装置は、当該連携指示装置と前記複数のデバイスのそれぞれとの通信送達時間、又は、前記複数のデバイスのそれぞれの前記通信送達時間と一の前記通信送達時間との差分である通信送達時間差分が記憶される通信送達時間記憶部を備えており、
前記連携指示装置が、前記複数のデバイスのそれぞれに通信送達時間測定信号を送信するとともに、前記通信送達時間測定信号を受信した前記複数のデバイスからの返答信号を受信し、前記通信送達時間測定信号の送信タイミングと前記返答信号の受信タイミングに基づいて、前記複数のデバイスのそれぞれの前記通信送達時間又は前記通信送達時間差分を算出し、算出された前記通信送達時間又は前記通信送達時間差分を前記通信送達時間記憶部に記憶させる通信送達時間管理ステップと、
前記連携指示装置が、前記複数のデバイスがどのタイミングで作動するのかを示す実行順序リスト信号を取得し、取得された実行順序リスト信号、及び、前記通信送達時間記憶部に記憶された前記通信送達時間又は前記通信送達時間差分に基づいて、前記複数のデバイスごとに実行指示信号を生成し、生成された前記実行指示信号を対応する前記デバイスへ送信する実行指示信号生成ステップと、
を含み、
前記実行指示信号生成ステップにおいて、前記連携指示装置は、前記デバイスによる当該実行指示信号の受信時点を基準として前記デバイスがどのタイミングで動作するのかを、前記通信送達時間又は前記通信送達時間差分に基づいて決定し、決定された前記受信時点を基準とした前記タイミングに基づいて、前記複数のデバイスの前記実行指示信号をそれぞれ生成する
ことを特徴とする連携指示方法。 A cooperation instruction method by a cooperation instruction apparatus that coordinates control of a plurality of devices,
The cooperation instruction device is a communication delivery time between the cooperation instruction device and each of the plurality of devices, or a communication delivery that is a difference between the communication delivery time of each of the plurality of devices and the one communication delivery time. A communication delivery time storage unit for storing a time difference;
The cooperation instruction device transmits a communication delivery time measurement signal to each of the plurality of devices, receives a response signal from the plurality of devices that have received the communication delivery time measurement signal, and receives the communication delivery time measurement signal. The communication delivery time or the communication delivery time difference of each of the plurality of devices is calculated based on the transmission timing and the response signal reception timing, and the calculated communication delivery time or the communication delivery time difference is A communication delivery time management step to be stored in the communication delivery time storage unit;
The cooperation instruction apparatus acquires an execution order list signal indicating at which timing the plurality of devices operate, and the communication delivery stored in the acquired execution order list signal and the communication delivery time storage unit An execution instruction signal generation step of generating an execution instruction signal for each of the plurality of devices based on time or the communication delivery time difference, and transmitting the generated execution instruction signal to the corresponding device;
Including
In the execution instruction signal generation step, the cooperation instruction apparatus determines at what timing the device operates with reference to the reception time point of the execution instruction signal by the device based on the communication delivery time or the communication delivery time difference. The execution instruction signal of each of the plurality of devices is generated based on the timing based on the determined reception time point.
当該連携指示装置と前記複数のデバイスのそれぞれとの通信送達時間、又は、前記複数のデバイスのそれぞれの前記通信送達時間と一の前記通信送達時間との差分である通信送達時間差分が記憶される通信送達時間記憶部と、
前記通信送達時間記憶部に記憶された前記通信送達時間又は前記通信送達時間差分に基づいて、前記複数のデバイスごとに時刻設定信号を生成し、生成された前記時刻設定信号を対応する前記デバイスへ送信する時刻設定信号生成部と、
を備え、
前記時刻設定信号生成部は、前記複数のデバイスの前記時刻設定信号の送達時間のズレを考慮して当該時刻設定信号を生成することによって、当該時刻設定信号を受信した前記複数のデバイスを共通の時間系で計時させる
ことを特徴とする連携指示装置。 A cooperation instruction device for linking detection results of a plurality of devices,
A communication delivery time difference between the communication instruction time of each of the plurality of devices and the communication delivery time of each of the plurality of devices or a difference between the communication delivery time of each of the plurality of devices and the one communication delivery time is stored. A communication delivery time storage unit;
Based on the communication delivery time or the communication delivery time difference stored in the communication delivery time storage unit, a time setting signal is generated for each of the plurality of devices, and the generated time setting signal is transmitted to the corresponding device. A time setting signal generation unit for transmission;
With
The time setting signal generation unit generates the time setting signal in consideration of a difference in delivery time of the time setting signals of the plurality of devices, thereby sharing the plurality of devices that have received the time setting signal in common. A collaborative instruction device characterized by timekeeping in a time system.
ことを特徴とする請求項6に記載の連携指示装置。 A communication delivery time measurement signal is transmitted to each of the plurality of devices, a response signal is received from the plurality of devices that have received the communication delivery time measurement signal, and the transmission timing of the communication delivery time measurement signal and the response are received. Based on the signal reception timing, the communication delivery time or the communication delivery time difference of each of the plurality of devices is calculated, and the calculated communication delivery time or the communication delivery time difference is stored in the communication delivery time storage unit. The cooperation instruction device according to claim 6, further comprising a communication delivery time management unit to be stored.
当該連携指示装置と前記複数のデバイスのそれぞれとの通信送達時間、又は、前記複数のデバイスのそれぞれの前記通信送達時間の最も遅い前記通信送達時間との差分である通信送達時間差分が記憶される通信送達時間記憶部に記憶された前記通信送達時間又は前記通信送達時間差分に基づいて、前記複数のデバイスごとに時刻設定信号を生成し、生成された前記時刻設定信号を対応する前記デバイスへ送信する時刻設定信号生成部として機能させ、
前記時刻設定信号生成部は、前記複数のデバイスの前記時刻設定信号の送達時間のズレを考慮して当該時刻設定信号を生成することによって、当該時刻設定信号を受信した前記複数のデバイスを共通の時間系で計時させる
ことを特徴とする連携指示プログラム。 A computer as a linkage instruction device that links detection results of a plurality of devices,
A communication delivery time difference that is a difference between a communication delivery time between the cooperation instruction apparatus and each of the plurality of devices or a latest communication delivery time of each of the plurality of devices is stored. Based on the communication delivery time or the communication delivery time difference stored in the communication delivery time storage unit, a time setting signal is generated for each of the plurality of devices, and the generated time setting signal is transmitted to the corresponding device. Function as a time setting signal generator
The time setting signal generation unit generates the time setting signal in consideration of a difference in delivery time of the time setting signals of the plurality of devices, thereby sharing the plurality of devices that have received the time setting signal in common. Linkage instruction program characterized by time keeping in time system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016025018A JP6431492B2 (en) | 2016-02-12 | 2016-02-12 | Cooperation instruction device, cooperation instruction program, and cooperation instruction method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016025018A JP6431492B2 (en) | 2016-02-12 | 2016-02-12 | Cooperation instruction device, cooperation instruction program, and cooperation instruction method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017142740A true JP2017142740A (en) | 2017-08-17 |
JP6431492B2 JP6431492B2 (en) | 2018-11-28 |
Family
ID=59627281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016025018A Active JP6431492B2 (en) | 2016-02-12 | 2016-02-12 | Cooperation instruction device, cooperation instruction program, and cooperation instruction method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6431492B2 (en) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08263397A (en) * | 1995-03-22 | 1996-10-11 | Nec Software Ltd | Time synchronizing system for network |
JPH09238127A (en) * | 1996-02-29 | 1997-09-09 | C S K Sogo Kenkyusho:Kk | Method for synchronously operating communication network system and game system using it |
JPH1028119A (en) * | 1996-07-10 | 1998-01-27 | Nec Eng Ltd | Processing system for time setting among a plurality of equipments |
JP2000101645A (en) * | 1998-09-25 | 2000-04-07 | Nec Corp | System and method for time synchronization |
JP2008187235A (en) * | 2007-01-26 | 2008-08-14 | Yaskawa Electric Corp | Network system and slave synchronization method |
JP2009059182A (en) * | 2007-08-31 | 2009-03-19 | Yokogawa Electric Corp | Field control system |
JP2012060207A (en) * | 2010-09-06 | 2012-03-22 | Hitachi Industrial Equipment Systems Co Ltd | Communication control device, and communication and control system |
JP2012141417A (en) * | 2010-12-28 | 2012-07-26 | Yamaha Corp | Timing method, program for implementing timing method, and electronic musical device |
JP2014146877A (en) * | 2013-01-28 | 2014-08-14 | Ricoh Co Ltd | Communication system and time synchronization |
-
2016
- 2016-02-12 JP JP2016025018A patent/JP6431492B2/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08263397A (en) * | 1995-03-22 | 1996-10-11 | Nec Software Ltd | Time synchronizing system for network |
JPH09238127A (en) * | 1996-02-29 | 1997-09-09 | C S K Sogo Kenkyusho:Kk | Method for synchronously operating communication network system and game system using it |
JPH1028119A (en) * | 1996-07-10 | 1998-01-27 | Nec Eng Ltd | Processing system for time setting among a plurality of equipments |
JP2000101645A (en) * | 1998-09-25 | 2000-04-07 | Nec Corp | System and method for time synchronization |
JP2008187235A (en) * | 2007-01-26 | 2008-08-14 | Yaskawa Electric Corp | Network system and slave synchronization method |
JP2009059182A (en) * | 2007-08-31 | 2009-03-19 | Yokogawa Electric Corp | Field control system |
JP2012060207A (en) * | 2010-09-06 | 2012-03-22 | Hitachi Industrial Equipment Systems Co Ltd | Communication control device, and communication and control system |
JP2012141417A (en) * | 2010-12-28 | 2012-07-26 | Yamaha Corp | Timing method, program for implementing timing method, and electronic musical device |
JP2014146877A (en) * | 2013-01-28 | 2014-08-14 | Ricoh Co Ltd | Communication system and time synchronization |
Also Published As
Publication number | Publication date |
---|---|
JP6431492B2 (en) | 2018-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4185926B2 (en) | Robot cooperative control method and system | |
US10432336B2 (en) | System and method of synchronizing a distributed clock in a packet-compatible network | |
JP2008531318A (en) | Synchronous controller linked by communication network | |
JP6487386B2 (en) | Server, method, program, recording medium, and system for maintaining time accuracy | |
JP6400248B1 (en) | Data processing apparatus, data processing method, setting management apparatus, and data processing system | |
WO2021232260A1 (en) | Method for time synchronization of a plurality of auxiliary devices of autonomous vehicle, vehicle, computer device, and storage medium | |
WO2020168924A1 (en) | Sensing data calculation control method and time-transfer apparatus | |
US20200244381A1 (en) | Communication System, Communication Device and Communication Method | |
JP2011193457A (en) | System and method for performing time synchronization | |
JP6737018B2 (en) | Optical measuring device | |
JP6633631B2 (en) | Manufacturing system and manufacturing system control method | |
Gutiérrez et al. | Time synchronization in modular collaborative robots | |
Ojaghi et al. | Real‐time distributed hybrid testing: coupling geographically distributed scientific equipment across the Internet to extend seismic testing capabilities | |
JP6431492B2 (en) | Cooperation instruction device, cooperation instruction program, and cooperation instruction method | |
JP5182293B2 (en) | Call processing time measuring apparatus, call processing time measuring method, and call processing time measuring program | |
WO2021131530A1 (en) | Control system | |
KR101645260B1 (en) | System and Method for synchronizing data including timestamp between plural controllers | |
JP2005014150A (en) | Robot system | |
JP2008187235A (en) | Network system and slave synchronization method | |
JP2006107050A (en) | Cooperative operation controller for a plurality of robots | |
Montgomery et al. | Uncertainty Analysis of the Dual-Lift Use Case for the Industrial Wireless Testbed | |
Baca et al. | Synchronizing a modular robot colony for cooperative tasks based on intra-inter robot communications | |
WO2020183888A1 (en) | Real-time controller, distributed control system using same, and industrial machine | |
US11770235B2 (en) | Time synchronization of controller | |
CN110865961B (en) | Method for loading, collecting and calculating timestamp |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171215 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180629 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180724 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180921 |
|
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: 20181030 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181102 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6431492 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |