JP4343212B2 - データ送受信方式 - Google Patents

データ送受信方式 Download PDF

Info

Publication number
JP4343212B2
JP4343212B2 JP2006318937A JP2006318937A JP4343212B2 JP 4343212 B2 JP4343212 B2 JP 4343212B2 JP 2006318937 A JP2006318937 A JP 2006318937A JP 2006318937 A JP2006318937 A JP 2006318937A JP 4343212 B2 JP4343212 B2 JP 4343212B2
Authority
JP
Japan
Prior art keywords
data
amplifier
unit
bit position
transmission
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.)
Expired - Fee Related
Application number
JP2006318937A
Other languages
English (en)
Other versions
JP2008135855A (ja
Inventor
一成 青山
邦孝 小槇
安晴 相澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to JP2006318937A priority Critical patent/JP4343212B2/ja
Priority to EP20070119081 priority patent/EP1926025B1/en
Priority to DE200760003426 priority patent/DE602007003426D1/de
Priority to US11/984,533 priority patent/US8055812B2/en
Priority to CN2007101866425A priority patent/CN101192060B/zh
Publication of JP2008135855A publication Critical patent/JP2008135855A/ja
Application granted granted Critical
Publication of JP4343212B2 publication Critical patent/JP4343212B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
    • G06F13/4256Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus using a clocked protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Numerical Control (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Description

本発明は、ディジーチェーン方式によるシリアルバスで接続されたユニット間におけるデータ送受信に関するものである。
複数のユニット間でデータを送受信する装置やシステムにおいて、データ送受信方式、システム、方法として、ユニット間をシリアルバスで接続し、ディジーチェーン方式で行う方法が知られている。
例えば、数値制御装置で制御される工作機械において、数値制御装置と各送り軸を駆動するサーボモータのサーボアンプ間をシリアルバスで接続し、ディジーチェーン方式によって、各サーボアンプで検出した送り軸の位置や速度データを数値制御装置に送信するようにしたシステムが知られている(特許文献1参照)。
図1は、このようなシステム構成例である。
数値制御装置1とサーボアンプ(以下アンプという)A1、A2、A3は、シリアルバスのケーブル2でディジーチェーン方式に接続されている。各アンプA1、A2、A3は、数値制御装置1に対して、自身のデータを送信するために、一斉に数値制御装置1の方向(上流)のシリアルバスのケーブル2に向けて、第2のコネクタC2から、送信開始コードに続いて、モータの電流値やモータに取り付けられたパルスコーダ等の位置・速度検出器からフィードバックされる位置、速度情報の各アンプのデータを上流のユニット(アンプもしくは数値制御装置)に送る。第1のコネクタC1を介して下流のユニット(アンプ)から受信したアンプデータは、自己のアンプデータの後に続けて上流のユニットに送信され、最終的に数値制御装置1はディジーチェーン方式で接続された各アンプA1、A2、A3からのデータを受信するようになっている。
図2は、この従来のアンプA1、A2、A3における本発明に関するデータの送受信に関係する部分の構成例である。数値制御装置1から見て遠い位置(下流)にあるサーボアンプとシリアルバスのケーブル2で接続された第1のコネクタC1からは、送信開始コードに続いて、下流のアンプからのアンプデータが受信される。送信開始コードが送信コード検出回路10で検出されると、受信制御回路11に送信開始コードの受信タイミングが通知され、受信制御回路11は、送信開始コードからのビット位置によってデータの区切を決定し、以後、このデータの区切で、下流のアンプからのデータを区切り、受信バッファ12に保存するよう指令する。
一方、第2のコネクタC2からは、上流側のサーボアンプまたは数値制御装置1に向かって、送信が開始される。送信は、送信制御回路15によって制御されており、どのデータを送るかは、セレクタ14により選択される。セレクタ14は、最初に送信開始コードを選択し、次に、アンプデータ記憶部13に記憶するアンプのデータ、ついで、受信バッファ12に保存されていた他のアンプのデータが選択し、送信回路16はこの選択順次で送信開始コード及びアンプデータを送信する。送信開始のタイミングは、各サーボアンプで同時とされている。
図3は、シリアルバスのケーブル2に送信されるシリアルデータの説明図であり、数値制御装置1から見て近い順(上流)のn番目のアンプAnからシリアルバスのケーブル2に送信されるシリアルデータの1例を示している。送信の開始を伝えるコードである送信開始コードSC(Start Code)及び各アンプデータDATAn、DATAn+1、DATAn+2は、ビット位置によって決められている。図3の例では、送信開始コードSCは60ビットで区切られ、アンプデータは70ビットで区切られ、送信開始コードSCの受信タイミングの次のビット位置から、70ビットずつ区切られて、自己のアンプデータDATAn、続いて、下流のサーボアンプから送られてきたアンプデータDATAn+1、DATAn+2、が送信される。
第1のコネクタC1を介して下流のサーボアンプから送られてきたシリアルデータを受信し、送信コード検出回路10で送信開始コードSCを受信したことが検出されたとき、受信制御回路11は、60ビットの送信開始コードSCに続いて受信される70ビットずつに区切られたアンプデータを受信バッファ12に取り込む。
図4は、図1に示したシステム例で、各アンプA1、A2、A3から上流側に出力するシリアルデータを表しており、自己のアンプデータDATAnを送信した後、自分より下流のアンプから受信したアンプデータDATAn+1、DATAn+2、を送信している。アンプA3は、送信開始コードSCとそれに続いてアンプA3のアンプデータ記憶部13に記憶する自己のアンプデータDATA3を送信し、アンプA2は、送信開始コードSCと、アンプデータ記憶部13に記憶する自己のアンプデータDATA2、それに続けて、受信バッファ12に格納している下流のアンプA3から受信したアンプデータDATA3を送信する。アンプA1は、送信開始コードSCと、自己のアンプA2のアンプデータ記憶部13に記憶するアンプデータDATA1、それに続けて、受信バッファ12に格納している下流のアンプから送られてきた下流のアンプのアンプデータDATA2、DATA3をこの順序で70ビット毎の区切をつけて送信する。各アンプは、送信開始のタイミングを合わせることにより、下流からの受信データをスムーズに上流に対して送信できる。
アンプA1が送出するデータは、数値制御装置1が受信するデータであって、数値制御装置1においても各アンプと同様に、アンプの第1のコネクタに相当するコネクタC1を介して下流のアンプから送信開始コードSC、その後に送信されるアンプデータDATA1〜DATA3を受信する。ただし数値制御装置1では、更に上流のサーボアンプや数値制御装置は存在しないので、アンプの第2のコネクタC2に相当するコネクタはない。
図5は、この従来の数値制御装置1のシリアルデータを受信する受信回路に関する部分の構成例である。第1のコネクタC1からは、送信開始コードSCに続いて、下流のアンプからのアンプデータDATA1〜DATA3が受信される。送信開始コードSCは、送信コード検出回路20で検出されると、受信制御回路21に送信開始コードの受信タイミングが通知され、受信制御回路21は、送信開始コードからのビット位置によってデータの区切が決定し、受信バッファ22に保存するように指令する。この受信アンプデータを区切ることによって、アンプデータとアンプの関係を対応させている。
受信バッファ22に保存されたデータは、各アンプで駆動されるサーボモータを制御する軸制御プロセッサが使用できるように、各軸のプロセッサが参照可能なメモリにデータ伝送回路23により転送される。転送の際には、受信したアンプデータDATA1〜DATA3の順番(サーボアンプ)と各軸のプロセッサ間の関係を表したパラメータを記憶するパラメータ設定記憶部24を参照し、パラメータで設定されたアンプデータDATA1〜DATA3の順番(サーボアンプ)と各軸のプロセッサ間の関係に基づいてプロセッサにデータが転送されるようにする。下記の例では、1は最初に受信したアンプA1からの受信データDATA1がプロセッサP1に転送されることを表している。同様に、2は2番目に受信したアンプA2からの受信データDATA2がプロセッサP2に転送されることを表している。3は、3番目に受信したアンプA3からの受信データDATA3がプロセッサP3に転送されることを表している。
図4で示した例は、各アンプ間のケーブル2による伝播遅延がない理想的な状態を示したものであるが、実際は、ケーブル2による伝播遅延があることから、このケーブル2の遅延時間を考慮すると、各アンプA1、A2、A3間と数値制御装置1間でやりとりされるシリアルデータは、図6に示すようなものとなる。
各アンプA1〜A3からは、同じ送信開始タイミングで、シリアルデータが送信される。アンプA3から出力されたシリアルデータはシリアルバスのケーブル2による伝播遅延で、遅れてアンプA2で受信される。アンプA2では送信開始コードSCを送信し、自己のアンプデータDATA2の送信が完了する前に、アンプA3からのアンプデータDATA3の受信を開始しておれば、図6に示すように、自己のアンプデータDATA2に続いてアンプA3のアンプデータDATA3を送信できる。同様に、アンプA1では、自己のアンプデータDATA1の送信が完了する前に、アンプA2からのアンプデータDATA2及びDATA3の受信を開始しておれば、自己のアンプデータDATA1に続いてアンプA2、A3のアンプデータDATA2、DATA3を送信できる。
そして、数値制御装置1は、図6に示すように、送信開始コードSCに続いて、アンプデータDATA1、DATA2、DATA3を順次受信することになる。
以上のように、従来は、数値制御装置とアンプ間、即ち、データ送受信を行うユニット間のシリアルバスのケーブル長が短く、その伝播遅延が小さくデータの送受信が正常に行われるように、ケーブルの長さを制限していた。
特開平10−13394号公報
上述したように、シリアルバスのケーブル2による伝播遅延が小さい場合には、数値制御装置は、ディジーチェーン方式で接続された各サーボアンプからのアンプデータを受信することができる。
しかし、各アンプ間のケーブルが長い場合、各アンプが送信するデータが上流のアンプあるいは数値制御装置に受信されるまでの遅延時間が大きくなり、データの受信タイミングが後ろにずれていき、最後は、自己のアンプデータを送信した後、下流のアンプのアンプデータを送信するのに間に合わなくなるという問題が発生する。
図7は、アンプA1とアンプA2の間のケーブルが長すぎて、下流のアンプA2、アンプA3のアンプデータDATA2、DATA3をアンプA1の第2のコネクタC2から送信するのに間に合わない状態が生じたときのシリアルデータの送受信タイミングの例である。
アンプA1は、下流のアンプA2からのシリアルデータの受信タイミングが遅すぎ、送信開始コードSC、自己のアンプデータDATA1を送信完了した状態となっているにも拘わらず、下流のアンプA2からアンプデータDATA2、DATA3の受信を開始しておらず、受信バッファにはアンプデータDATA2、DATA3は入力されていない。そのため、下流のアンプA2、A3のアンプデータDATA2、DATA3は送信することができないという問題がある。
そこで、本発明の目的は、上述した問題を解決することにあり、ディジーチェーン方式によるシリアルバスで接続されたユニット間のケーブル長による制約を受けず、ケーブル長が長くなっても、データの送受信ができるデータ送受信方式を提供することにある。
本発明は、ディジーチェーン方式のシリアルバスで結合され、データ送受信する複数のユニット間でのデータ送受信方式であって、送受信されるデータ信号は、送信開始コードと該送信開始コードからの所定基本ビット数のビット位置によって区切られたデータで構成され、他の全てのユニットからデータを受信する第1のユニット以外の第2のユニットは、送信開始コードを送信した後、最初の区切で自己のデータを送信し、他の第2のユニットからの受信データ信号があるときは、次のビット位置より、受信したデータ信号の内、送信開始コードを除いたビット位置で区切られたデータを続けて送信し、前記第1のユニットは、受信したデータの内、ビット位置による区切により、各ユニットのデータを判別するようにしたデータ送受信方式において、請求項1に係る発明は、前記第2のユニット自己のユニットと該自己のユニットにデータを送信する他の第2のユニットとの間のケーブル長による伝播遅延時間に応じて自己のデータを送る区切のビット位置を変更してアイドルタイムを付加する区切位置手段を備え、前記第1のユニットは、各区切のビット位置を設定記憶する手段を備え、該手段で設定された区切のビット位置によって、各ユニットのデータを判別するようにしたものである。
又、請求項2に係る発明は、前記区切位置手段によるビット位置変更単位を送信データのビット長としたものであり、請求項3に係る発明は、前記区切位置手段より、前記基本ビット数単位の区切を増加することによって区切位置を変更するようにし、前記各区切のビット位置を設定記憶する手段では、増加した基本ビット数単位の区切に対応するダミーのユニットを設定し、区切のビット位置によって、各ユニットのデータを判別するようにした。
さらに、請求項4に係る発明は、ユニットのケーブルの線長による伝播遅延時間をエコーバックによって計測する手段を備え、前記区切位置手段は、該測定した伝播遅延時間に基づいて、自己のデータを送る区切のビット位置を自動的に変更し、前記各区切のビット位置を設定記憶する手段は、変更されたビット位置を自動的に設定記憶するようにした。又、請求項5に係る発明は、前記第1のユニットを数値制御装置とし、前記第2のユニットを、該数値制御装置で制御される各軸のサーボモータを駆動するサーボアンプとしたものである。
ケーブル長によるデータの伝播遅延が大きくても、データの送受信を正常に行うことができるので、ユニット間に接続するケーブル長を任意に長くすることができ、ディジーチェーン方式によるシリアルバスで接続されたデータ送受信を行うシステムの構築が容易となる。
以下、本発明の実施形態について図面と共に説明する。
複数のユニットをディジーチェーン方式でシリアルバスのケーブルで結合し、データ送受信するシステムに本発明を適用した実施形態として、図1に示した数値制御装置1と複数(3つ)のサーボアンプA1〜A3で構成した例で以下説明する。即ち、数値制御装置1とサーボアンプA1〜A3間が、ディジーチェーン方式でリアルバスのケーブル2によって接続され、データの送受信を行う例を示す。
下流のアンプがアンプデータを送信し、上流のユニット(アンプ又は数値制御装置)がそのデータを受信し該受信データを送信する動作を問題なくできるか否かは、ケーブル2の線長の他に、図1、2において、第1のコネクタC1で受信したデータを第2のコネクタC2で送信できるまでの、回路的な処理にかかる時間も考慮する必要がある。
送信よりも受信が遅れていることは、ケーブル等によって伝播遅延が発生したことを表しており、高速なデータ転送では、この遅延により、線長に対して制限がかかる。また、各ユニットは下流から受信したデータを一旦受信バッファ12に受け、上流に対して送信するが、受信から送信にかかるまでの時間も線長に対する制限になる。
そこで、
Ln :アンプnと該アンプnに接続される下流のアンプn+1の間のケーブル
(シリアルバス)の線長(m)
Tdata-n:アンプn+1が、アンプn+1のデータをアンプnに送信し始めてから、ア ンプnがアンプn+1のデータを上流側に送信し始めるまでの時間(sec) 。なお、アンプ間の送信タイミングは同期しているので、このTdata-nは、 DATAnの送信時間に等しい。
Trts :下流のアンプからのデータを受信して上流のアンプに送信できるまでの回路 的な処理時間(sec)
Tv :線長1mのケーブルを信号が通過するのに要する時間(sec)
とすると、図8に示すように、問題なくデータの受信、送信が実現できるか否かは、次の(1)式が成立するか否かによって判定できる。
Ln×Tv<(Tdata-n−Trts) …(1)
そこで、上記(1)式が成立せず、線長Lnが長いときには、アイドルタイム(付加時間)TIDを付加し、該アイドルタイムTIDに対応するビット数のアイドルタイムデータTIDDを送信するシリアルデータに付加し、データの区切のビット位置を変更し、データの受信、送信が正常に行われるようにする。即ち、次の(2)式が設立するようにアイドルタイムTIDを付加し、データの区切のビット位置を変更する。
Ln×Tv<(Tdata-n−Trts+TID) …(2)
上述した時間Tdata-n及び時間Trtsは、アンプの構成が決まれば確定するもので回路構成が設計された時点で既知となる値である。又、ケーブル長Lnや線長1mのケーブルを信号が通過するのに要する時間Tvも測定することによって、求めることができるものであり、前もって計算によって、上記(2)式を満たすようなアイドルタイムTIDを求めて設定することができる。又、前述した特許文献1に記載されているエコーバックによる測定方法を用いて、伝播遅延時間(Ln×Tv)を求めることができ、こうして求めた伝播遅延時間(Ln×Tv)により、上記(2)式を満たすようなアイドルタイムTIDを自動的に求め、アイドルタイムデータTIDDを自動設定することもできる。
即ち、特許文献1に記載されているように、遅延測定用の信号を下流のアンプに送信し、下流のアンプがこの遅延測定用の信号を受信して、返信用の信号を送り返し、これを受信し、この遅延測定用の信号を送信してから返信用の信号を受信するまでの時間を測定し、この測定時間に基づいて、伝播遅延時間(Ln×Tv)は測定できる。この測定伝播遅延時間(Ln×Tv)に基づいてアイドルタイムTIDを求め、アイドルタイムデータTIDDを自動設定することができる。
図9は、本実施形態において、アンプA2とアンプA1間の線長が長く、アンプA1におけるデータの到着時間が遅くなり、そのままでは、アンプA1から数値制御装置への送信に間に合わないため、アンプA1で、アンプデータDATA1を送信する基本ビット数の区切の後に、アイドルタイムTID1を挿入し、アンプデータDATA2をアイドルタイムデータTIDD1の後に送信している例を示している。即ち、アンプA1から数値制御装置1に送信する送信開始コード以下のシリアルデータにおいて、アンプデータDATA2以下のデータを送信し始めるデータの区切のビット位置を変更し、アンプデータDATA2を受信バッファ12に格納開始するまでアイドルタイムデータTIDD1を送信し、その後アンプデータDATA2、DATA3を送信するようにしているものである。
このアイドルタイムデータTIDD1は、上記(2)式が成立するようなアイドルタイムTIDを求めて、ビット数に変換して設定すればよいものであり、アナログ量のように細かい値を設定することもできるが、通常データのビット長の整数倍にしておけば、アンプや数値制御装置に細かい値を設定しなくても良いので、回路が簡単になるメリットがある。
図10は、本実施形態におけるアンプA1〜A3における、データの送受信に関係する部分の構成を示す図である。図2に示した従来例と比較し、アイドルタイムバッファ17を設け、及びセレクタ14がアンプデータ記憶部13、アイドルタイムバッファ17、受信バッファ12の順に選択するようにした点で、従来例と相違する。
当該アンプとその1つ下流のアンプまでのケーブル長Lnによる伝播遅延時間(Ln×Tv)が上述した(1)式を満たすような場合には、アイドルタイムバッファ17には、アイドルタイムデータは設定されず(又は0が設定される)、(1)式を満たさない場合には、上記(2)式を満たすようなアイドルタイムTIDを求め、このアイドルタイムTIDをビット数に変換してデータのビット長単位で求めて、アイドルタイムデータTIDDとしてアイドルタイムバッファ17に設定する。
一方、数値制御装置1のシリアルデータを受信する受信回路に関する部分の構成は図5に示した従来例と同じであるが、パラメータ設定記憶部24に設定される受信するアンプデータDATA1〜DATA3の順番(サーボアンプ)と各軸のプロセッサ間の関係を設定する内容が相違する。受信データにおいて、アンプデータの区切のビット位置が、アイドルタイムが設定されることで基本ビット数の区切の位置から異なるものとなることから、区切位置をも設定するようにしている。
図9に示すように、アンプA1とアンプA2間のケーブル長が長く、上記(1)式を満足しなく、アイドルタイムのビット数がアンプA1のアイドルタイムバッファ17に設定されたときの例を取って説明する。
この場合、数値制御装置1のパラメータ設定記憶部24には、図11に示すように、1番目に受信するアンプデータDATA1に対してアイドルタイムデータTIDD1が設定され、1番目に受信するアンプデータDATA1とその次に受信されるアンプデータDATA2の間には、アイドルタイムの付加時間(付加されたむだ時間のデータ)があり、データの区切位置がその分変更され、アンプデータDATA2が格納されているビット位置は、アンプデータDATA1が格納されている基本ビット数の70ビットの位置より、アイドルタイムデータTIDD1分、遅いビット位置になっていることが設定されている。
各アンプA1〜A3は、図9に示すように、同一発信開始タイミングで、送信開始コードSCを送信し、次にセレクタ14は、アンプデータ記憶部13、アイドルタイムバッファ17、受信バッファ12を順に選択し、アンプデータ記憶部13に記憶する自己のアンプデータ(電流値やパルスコーダで検出された位置、速度データ等)DATA、アイドルタイムバッファ17にアイドルタイムデータTIDDが設定されていれば、そのデータ、次に受信バッファ12に保存されていた他のサーボアンプのデータを送信回路16、第2のコネクタC2、シリアルバスのケーブル2を介して上流のアンプ、又は数値制御装置1に送信する。
図9に示した例では、アンプA3は該アンプより下流にアンプが接続されていないことから、送信開始コードSCに続いてアンプデータ記憶部13に記憶する自己のアンプデータDATA3を送信する。アンプA2は送信開始コードSCに続いてアンプデータ記憶部13に記憶する自己のアンプデータDATA2を送信した後、アイドルタイムバッファ17にはアイドルタイムデータTIDDが設定されていないこと、又は設定値が0であることから、受信バッファ12に格納されたアンプA3のアンプデータDATA3を送信する。
又、アンプA1は送信開始コードSCに続いてアンプデータ記憶部13に記憶する自己のアンプデータDATA1を送信した後、アイドルタイムバッファ17に設定されたアイドルタイムデータTIDD1を送信し、次に受信バッファ12に格納されたアンプA2,A3のアンプデータDATA2、DATA3を送信する。
その結果、数値制御装置1は、送信開始コードSC、アンプA1のアンプデータDATA1、アイドルタイムデータTIDD1、アンプA2,A3のアンプデータDATA2、DATA3をこの順序で受信し、数値制御装置1の受信バッファ22にはアンプデータDATA1、アイドルタイムデータTIDD1、アンプデータDATA2、アンプデータDATA3とこの順序で格納されることになる。
数値制御装置1のプロセッサは、パラメータ設定記憶部24に設定される受信するアンプデータDATA1〜DATA3の順番(サーボアンプ)と各軸のプロセッサ間の関係に基づいて、各軸を制御するプロセッサに設定されたアンプデータDATAを転送する。この例では、図11に示すようにパラメータ設定されていることから、受信バッファ22の先頭から70ビット位置までに記憶されているアンプデータDATA1が、プロセッサ番号が「1」として設定されている第1の軸を制御するプロセッサP1に転送されることになる。そして、該アンプデータDATA1の次にアイドルタイムデータTIDD1が記憶されているから、このアイドルタイムデータTIDD1の分ビット位置をずらし、このビット位置から始まるアンプA2のアンプデータDATA2を設定される第2の軸のプロセッサP2に転送する。さらに、70ビット後に記憶されているアンプA3のアンプデータDATA3を設定される第3の軸のプロセッサP3に転送する。
即ち、受信バッファ22に格納されている先頭から70ビット位置までのアンプデータDATA1を第1の軸を制御するプロセッサP1に転送し、アイドルタイムデータTIDD1のデータ分後のビット位置から70ビット位置までのアンプデータDATA2を第2の軸を制御するプロセッサP2に転送し、その後、70ビット位置までのアンプデータDATA3を第3の軸を制御するプロセッサP3に転送することになる。
上述した実施形態において、アイドルタイムデータTIDDの長さを通常のアンプデータDATAの区切の基本ビット数(70ビット)の整数倍にすれば、実際のシリアルサーボバスのシステムにおいては、ダミーのアンプを付加したことになる。上述した例で、アンプA2とA1の間のケーブル長が長く、この間にダミーアンプを1つ挿入したとして、アンプA1のアイドルタイムバッファ17に70ビットのアイドルタイムデータTIDDを設定し、数値制御装置1においては、各アンプとプロセッサ間の関係を表したパラメータ設定記憶部24には、ダミーのアンプが存在するかのように設定すればよい。
この場合における各アンプA1〜A3、及び数値制御装置1でのデータの送受信の関係を図12に示す。
又、図13は、この場合に数値制御装置1のパラメータ設定記憶部24に設定される受信するアンプデータDATAの順番(サーボアンプ)と各軸のプロセッサ間の関係の設定例を示している。受信バッファ22の先頭から70ビット位置までの最初のアンプデータDATA1が第1の軸を制御するプロセッサP1用とし、次の70ビット位置までのデータはダミーアンプのアイドルタイムデータTIDD1であり、これに対しては、プロセッサの指定はなされていない。そして次の70ビットのアンプデータDATA2は第2の軸のプロセッサP2、その次の70ビットのアンプデータDATA3は第3の軸のプロセッサP3に指定され、それぞれ指定されたプロセッサに各アンプデータが転送されるようになされる。
各サーボアンプA1〜A3においてアイドルタイムTIDを挿入するか否かについては、前述した特許文献1に開示されているような、エコーバックによるケーブル長による伝播遅延時間の測定を実施し、測定した伝播遅延時間(Ln×Tv)が前述の(1)式を満たすかどうか判別し、線長Lnが長すぎて(1)式を満さない場合には、自動的にアイドルタイムTIDを算出し、このアイドルタイムTIDに対応するアイドルタイムデータTIDDを自動設定するようにしてもよい。即ち、測定した伝播遅延時間(Ln×Tv)と既知の時間Tdata-n、Trtsより、上述した(2)式より求められる次の(3)式を満たすような最小のアイドルタイムTIDを求める。この場合、アイドルタイムTIDをビット長単位で求めてもよく、さらには、前述したように、アンプデータDATAの区切の基本ビット数(70ビット)の整数倍単位で求めアイドルタイムデータTIDDを設定する。
Ln×Tv−Tdata-n+Trts<TID …(3)
図14は、各サーボアンプのプロセッサが実施するアイドルタイム測定、設定処理のアルゴリズムのフローチャートである。
特許文献1に開示されている遅延時間測定指令と同じように、数値制御装置1から図示していない通信回路を介して、アイドルタイム測定、設定指令が出力されると、各サーボアンプは図14の処理を開始する。即ち、特許文献1に開示されている遅延時間測定処理と同じように、エコーバック方式による、遅延時間測定指令を下流のアンプに送信してから下流のアンプから、この遅延時間測定指令を受信したことを示す返信信号を受信するまでの時間を測定し、この時間よりケーブル長Lnによる伝播遅延時間(Ln×Tv)を求める(ステップa1)。
求めた伝播遅延時間(Ln×Tv)と既知の時間(Tdata-n−Trts)より、上記(1)式の「Ln×Tv<(Tdata-n−Trts)」を満足するか判断し(ステップa2)、この(1)式を満足せず、伝播遅延時間(Ln×Tv)が長い場合には、上記(3)式によって、アイドルタイムTIDを算出し(ステップa3)、アイドルタイムデータTIDDを求め、これをアイドルタイムバッファ17にセットする(ステップa4)。
一方、ステップa2の判断で、上記(1)式を満たし、伝播時間が長くはない場合には、アイドルタイム無しの設定、即ち、アイドルタイムバッファ17には設定しない、又は、「0」を設定する(ステップa5)。
図15は、数値制御装置1において、受信するアンプデータDATAの順番(サーボアンプ)と各軸のプロセッサ間の関係に設定されたパラメータ設定記憶部24に、アイドルタイムデータを挿入設定する処理のアルゴリズムを示すフローチャートである。
数値制御装置1のプロセッサは、各アンプに対して遅延時間測定指令を出力して、各アンプにアイドルタイムデータTIDDを設定させた後、図15に示す処理を開始する。まず、アンプを指定する指標iを「1」にセットし(ステップb1)、アンプAiにアイドルタイムデータ送信指令を出力する(ステップb2)。なお、数値制御装置に近い順にアンプA1、A2…としており、指標iは、数値制御装置に近いアンプの順番を示すものであり、アンプデータDATAの受信順序をも示すものである。
アンプAiは、数値制御装置1からアイドルタイムデータ送信指令を受信すると、アイドルタイムバッファ17に設定されているアイドルタイムデータTIDDiを送信する。
数値制御装置1は、アンプAiから返信があるまで待ち(ステップb3)、返信があると、アイドルタイムデータTIDDiがあるか否か判断し(ステップb4)、アイドルタイムデータTIDDiがある場合には、この送られてきたアイドルタイムデータTIDDiをパラメータ設定記憶部24に記憶されているアンプのアンプデータに対応して設定記憶する(ステップb5)。図11に示す例では、数値制御装置に一番近いアンプA1からアイドルタイムデータTIDD1が送信され、これをアンプA1のアンプデータDATA1に対応して設定記憶されている。
又、図12に示すように、アンプデータDATAの区切の基本ビット数(70ビット)の整数倍として、アイドルタイムバッファ17にアイドルタイムデータTIDDが設定されるものであれば、図13に示すように、このアイドルタイムデータTIDDが送られてきたアンプの後、即ち、そのアンプのアンプデータの後に、アイドルタイムデータTIDDをアンプデータDATAの長さ(70ビット)で区切って、ダミーアンプとして設定する。
次に指標iを1インクリメントし(ステップb6)、該指標iの値が、ディジーチェーン方式で接続されたアンプ数を超えたか判断し(ステップb7)、超えていなければ、ステップb2に戻る。また、ステップb4で、アイドルタイムデータTIDDiが無いと判断されたときは、ステップb5の設定処理は行わず、ステップb4からステップb6に移行する。
以下、指標iが、アンプ数を超えるまで、ステップb2からステップb7を繰り返し実行し、受信するアンプデータDATAの順番(サーボアンプ)と各軸のプロセッサ間の関係の設定されたパラメータ設定記憶部24に、アイドルタイムデータTIDDを挿入設定する。
上述した実施形態は、数値制御装置と複数のサーボアンプをディジーチェーン方式のシリアルバスのケーブルで接続したときのデータ送受信方式の例を示したが、数値制御装置やサーボアンプの代わりに、制御装置等の各種ユニットとし、ディジーチェーン方式のシリアルバスのケーブルで接続されるユニット間のデータ送受信方式に本発明は適用できるものである。
ディジーチェーン方式でシリアルバスで接続された数値制御装置とサーボアンプ間のデータ送受信を行うシステムの構成の一例を示す概要図である。 図1に示すシステム例において従来のサーボアンプにおけるデータの送受信に関係する部分の構成例を示す図である。 シリアルバスに送信されるシリアルデータの説明図である。 図1に示したシステム例での各アンプから上流側に出力するシリアルデータの説明図である。 図1に示したシステム例での数値制御装置におけるシリアルデータを受信する受信回路に関する部分の構成例を示す図である。 図1に示したシステム例で、ケーブルによる伝播遅延を考慮した各アンプから上流側に出力するシリアルデータの説明図である。 図1に示したシステム例で、従来のデータ送受信方式では、ケーブルによる伝播遅延が大きく、シリアルデータの送受信が正常に行われないことを説明する説明図である。 アンプからのシリアルデータが正常に送受信されるか否かの判定を説明するための説明図である。 本発明の一実施形態におけるデータ送受信方式の説明図である。 図1のシステムに本発明のデータ送受信方式を適用したときのサーボアンプにおけるデータの送受信に関係する部分の構成例を示す図である。 図1のシステムに本発明の実施形態におけるデータ送受信方式を適用したときの数値制御装置に設定される受信するアンプデータの順番と各軸のプロセッサ間の関係の設定値及びアイドルタイムデータの設定を説明する説明図である。 本発明の別の実施形態におけるデータ送受信方式の説明図である。 図1のシステムに本発明の別の実施形態におけるデータ送受信方式を適用したときの数値制御装置に設定される受信するアンプデータの順番と各軸のプロセッサ間の関係の設定値及びアイドルタイムデータの設定を説明する説明図である。 アイドルタイム測定、設定処理のアルゴリズムのフローチャートである。 数値制御装置において、受信するアンプデータの順番(サーボアンプ)と各軸のプロセッサ間の関係が設定されたパラメータ記憶部に、アイドルタイムデータを挿入設定する処理のアルゴリズムを示すフローチャートである。
符号の説明
1 数値制御装置
2 シリアルバスのケーブル
A1、A2、A3 サーボアンプ
C1 第1のコネクタ
C2 第2のコネクタ
24 パラメータ設定記憶部

Claims (5)

  1. ディジーチェーン方式のシリアルバスで結合され、データ送受信する複数のユニット間でのデータ送受信方式であって、送受信されるデータ信号は、送信開始コードと該送信開始コードからの所定基本ビット数のビット位置によって区切られたデータで構成され、他の全てのユニットからデータを受信する第1のユニット以外の第2のユニットは、送信開始コードを送信した後、最初の区切で自己のデータを送信し、他の第2のユニットからの受信データ信号があるときは、次のビット位置より、受信したデータ信号の内、送信開始コードを除いたビット位置で区切られたデータを続けて送信し、前記第1のユニットは、受信したデータの内、ビット位置による区切により、各ユニットのデータを判別するようにしたデータ送受信方式において、
    前記第2のユニットは、自己のユニットと該自己のユニットにデータを送信する他の第2のユニットとの間のケーブル長による伝播遅延時間に応じて自己のデータを送る区切のビット位置を変更してアイドルタイムを付加する区切位置手段を備え、前記第1のユニットは、各区切のビット位置を設定記憶する手段を備え、該手段で設定された区切のビット位置によって、各ユニットのデータを判別するようにしたことを特徴とするデータ送受信方式。
  2. 前記区切位置手段は、ビット位置変更単位を送信データのビット長とした請求項1に記載のデータ送受信方式。
  3. 前記区切位置手段は、前記基本ビット数単位の区切を増加することによって区切位置を変更し、前記各区切のビット位置を設定記憶する手段では、増加した基本ビット数単位の区切に対応するダミーのユニットを設定し、区切のビット位置によって、各ユニットのデータを判別するようにした請求項1に記載のデータ送受信方式。
  4. ユニットのケーブルの線長による伝播遅延時間をエコーバックによって計測する手段を備え、前記区切位置手段は、該測定した伝播遅延時間に基づいて、自己のデータを送る区切のビット位置を自動的に変更し、前記各区切のビット位置を設定記憶する手段は、変更されたビット位置を自動的に設定記憶するようにした請求項1乃至3の内いずれか1項に記載のデータ送受信方式。
  5. 前記第1のユニットは数値制御装置であり、前記第2のユニットは、該数値制御装置で制御される各軸のサーボモータを駆動するサーボアンプである請求項1乃至4の内いずれか1項に記載のデータ送受信方式。
JP2006318937A 2006-11-27 2006-11-27 データ送受信方式 Expired - Fee Related JP4343212B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2006318937A JP4343212B2 (ja) 2006-11-27 2006-11-27 データ送受信方式
EP20070119081 EP1926025B1 (en) 2006-11-27 2007-10-23 Data transmission/reception system
DE200760003426 DE602007003426D1 (de) 2006-11-27 2007-10-23 Datenübertragungs- und -empfangssystem
US11/984,533 US8055812B2 (en) 2006-11-27 2007-11-19 Data transmission/reception system
CN2007101866425A CN101192060B (zh) 2006-11-27 2007-11-21 数据收发***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006318937A JP4343212B2 (ja) 2006-11-27 2006-11-27 データ送受信方式

Publications (2)

Publication Number Publication Date
JP2008135855A JP2008135855A (ja) 2008-06-12
JP4343212B2 true JP4343212B2 (ja) 2009-10-14

Family

ID=39148558

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006318937A Expired - Fee Related JP4343212B2 (ja) 2006-11-27 2006-11-27 データ送受信方式

Country Status (5)

Country Link
US (1) US8055812B2 (ja)
EP (1) EP1926025B1 (ja)
JP (1) JP4343212B2 (ja)
CN (1) CN101192060B (ja)
DE (1) DE602007003426D1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9598897B2 (en) * 2007-06-21 2017-03-21 Tait Towers Manufacturing, LLC Portable curtain retraction device and system
JP4996451B2 (ja) 2007-12-28 2012-08-08 株式会社東芝 無線通信装置、無線通信方法、及びプログラム
CN101989940B (zh) * 2009-08-05 2013-04-24 新绿科技股份有限公司 一种单线串行菊链式数字通信网络及其通信方法
JP5393528B2 (ja) * 2010-02-22 2014-01-22 三菱電機株式会社 通信装置及びプログラム
KR101869677B1 (ko) 2015-03-25 2018-06-20 미쓰비시덴키 가부시키가이샤 통신 장치 및 통신 방법
ITUB20153294A1 (it) * 2015-08-31 2017-03-03 Marposs Spa Sistema di misura e/o controllo con almeno due unita', e metodo per collegare le due unita'
JP6708677B2 (ja) 2018-03-01 2020-06-10 ファナック株式会社 数値制御装置
JP6725567B2 (ja) * 2018-03-13 2020-07-22 ファナック株式会社 数値制御装置
CN111083208B (zh) * 2019-12-03 2022-10-28 华为技术有限公司 网络结构、网络中网元之间的报文发送方法及接收方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4422387C2 (de) * 1994-06-27 2001-05-03 Micronas Gmbh Sensorbussystem mit identischen Nebenstufen
JPH1013394A (ja) 1996-06-21 1998-01-16 Fanuc Ltd 通信における同期方法
DE19626287A1 (de) 1996-07-01 1997-02-13 Abb Management Ag Verfahren zum Betrieb eines Antriebssystems und Vorrichtung zur Durchführung des Verfahrens
DE19803686A1 (de) 1998-01-30 1999-08-05 Siemens Ag Verfahren und Vorrichtung zur Kommunikation gleichberechtigter Stationen eines ringförmigen, seriellen Lichtwellenleiter-Busses
US6943521B2 (en) * 2000-10-11 2005-09-13 Matsushita Electric Industrial Co., Ltd. Motor drive, motor drive control method, and component attaching device
JP4159415B2 (ja) * 2002-08-23 2008-10-01 エルピーダメモリ株式会社 メモリモジュール及びメモリシステム
JP2005151043A (ja) * 2003-11-13 2005-06-09 Pioneer Electronic Corp データ収集システム及びデータ転送方法

Also Published As

Publication number Publication date
JP2008135855A (ja) 2008-06-12
CN101192060A (zh) 2008-06-04
EP1926025A1 (en) 2008-05-28
DE602007003426D1 (de) 2010-01-07
CN101192060B (zh) 2011-01-12
EP1926025B1 (en) 2009-11-25
US8055812B2 (en) 2011-11-08
US20080123723A1 (en) 2008-05-29

Similar Documents

Publication Publication Date Title
JP4343212B2 (ja) データ送受信方式
JP4182132B2 (ja) モータ制御システム
JP4935369B2 (ja) サーボシステム
JPH1013394A (ja) 通信における同期方法
JP2019125066A (ja) 車両検査装置及び車両検査方法
WO2006090473A1 (ja) データ送信制御方法、及びデータ送信制御装置
JP2002351813A5 (ja)
CN111033401B (zh) 控制装置、控制***、控制方法以及控制程序的记忆媒体
JP7056395B2 (ja) 制御装置およびその制御方法
CN107861414A (zh) 实现伺服电机同步运动的方法及***、主控制器、伺服驱动器
JP5111020B2 (ja) 画像処理装置及びその制御方法
JP6583549B2 (ja) 通信装置、通信システム、通信方法、および通信用プログラム
EP0185093B1 (en) Data transfer equipment
CN109327284B (zh) 数据传输方法、装置及电子设备
EP3767407B1 (en) Field bus system diagnosis using propagation delay measurements
JP2007259094A (ja) シリアル通信装置
JP5815660B2 (ja) 数値制御システム
JP2011119999A (ja) 通信装置及びマスタ装置
CN112673331B (zh) 同步控制装置、***、方法以及模拟装置
US10635079B2 (en) Motor control device, control system, and motor control method
KR20230162796A (ko) 통신 장치, 통신 시스템, 통신 제어 방법 및 프로그램
CN101401364B (zh) 具有对临界状态的可靠获取的数据传输和处理***
JP7279556B2 (ja) 通信装置、方法およびプログラム
US6570666B1 (en) Printer detecting data precisely in response to change in data transmission speed
JP4762525B2 (ja) 遠方監視制御装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081022

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081028

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081216

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090708

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

Free format text: PAYMENT UNTIL: 20120717

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4343212

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120717

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130717

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees