説明

シリアル通信装置

【課題】通信データの衝突を回避できるシリアル通信装置を得る。
【解決手段】実施形態のシリアル通信装置42は、他のモータ駆動制御手段に接続された入力ライン33とマスタ制御手段へ制御情報を通知するための出力ライン34を介して制御情報の同期通信を行うモータ駆動制御手段が備えるシリアル通信装置であって、入力ラインからの受信データを受信する受信手段51と、受信手段が受信した受信データを一時的に記憶する退避バッファ52と、モータ駆動制御手段が制御するモータからの送信データを記憶する送信バッファ57と、出力ラインにデータを送信する送信手段53と、通信周期内の所定の送信タイミングであるか否かを判定する送信タイミング判定手段54と、送信タイミング判定手段の判定結果および送信手段がデータ送信中であるか否かに基づいて、送信手段から受信データまたは送信データのいずれを送信するか制御する送信制御手段55を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、産業機械における駆動システムに係り、特にコントローラと駆動制御装置間のシリアル通信に関する。
【背景技術】
【0002】
産業機械における駆動制御システムでは、モーションコントローラ等のマスタ制御装置がサーボモータ等を駆動する駆動制御装置を制御するように構成される。そして、各駆動制御装置は、マスタ制御装置に設けられる通信ポートにシリアル通信ラインでディジーチェーン方式で接続されている。すなわち、マスタ制御装置は、ディジーチェーン接続の通信ラインを介して各駆動制御装置に対し位置、速度、トルクなどの指令を与え、各駆動制御装置は、ディジーチェーン接続の通信ラインを介して、位置フィードバック、速度フィードバック、トルクフィードバックなどの状態量や、制御機能の状態、アラーム情報などをマスタ制御装置に送るようになっている。
【0003】
マスタ制御装置と駆動制御装置を接続する通信ラインは、マスタ制御装置から各駆動制御装置への下り送信線と、各駆動制御装置から数値制御装置への上り送信線とで構成されている。このようにディジーチェーン接続で各制御装置を接続した場合、上り送信線には複数の駆動制御装置からデータが送信されるので、システムとしての通信周期を時分割して各駆動制御装置の送信タイミングを決定し、送信データの衝突が発生しないようにしている。そして、各駆動制御装置は、通信周期カウンタによってその送信タイミングを生成し、通信システム全体の同期を取っている。
【0004】
このように構成された駆動制御システムにおいて、システム全体の性能を向上させるためには、通信速度を高速化し通信周期を短縮することが不可欠となる。しかしながら、通信速度が高速になってくると、伝送路の遅延や通信ポートでの同期パターン抽出の遅延、ディジーチェーン接続のため必要となるデータのバッファリングによる遅延などが無視できなくなってくる。そして、これらの遅延によって通信タイミングにズレが生じ、データの衝突が発生する可能性が高くなるという問題が生じる。
【0005】
このような遅延によるデータの衝突を回避するため、通信の初期段階において各制御装置間の通信遅延時間を測定し、各駆動制御装置の送信タイミングを該通信遅延時間に基づいて補正する技術が開発されている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2004−227261号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、上記従来の技術によれば高速のシリアル通信を行うシステムでは、通信遅延時間によって送信タイミングを補正しても、各制御装置の基準クロックのズレによる同期ジッタなどにより、特に通信データの間隔を狭くした場合には、データの衝突が発生してしまう場合がある。
【0008】
本発明は、上記に鑑みてなされたものであって、ネットワークの同期ジッタなどによるデータの衝突を回避し、データの通信周期を最小にすることが可能なシリアル通信装置を得ることを目的とする。
【課題を解決するための手段】
【0009】
上述した課題を解決し、目的を達成するために、この発明に係るシリアル通信装置は、他のモータ駆動制御手段に接続されたシリアル通信入力ラインと、マスタ制御手段へモータ制御情報を通知するためのシリアル通信出力ラインと、を介して前記モータ制御情報の同期通信を行うモータ駆動制御手段が備えるシリアル通信装置であって、前記シリアル通信入力ラインからの受信データを受信する受信手段と、前記受信手段が受信した前記受信データを一時的に記憶する退避バッファと、前記モータ駆動制御手段が制御するモータからの送信データを記憶する送信バッファと、前記シリアル通信出力ラインにデータを送信する送信手段と、通信周期内の所定の送信タイミングであるか否かを判定する送信タイミング判定手段と、前記送信タイミング判定手段の判定結果および前記送信手段がデータ送信中であるか否かに基づいて、前記送信手段から前記受信データまたは前記送信データのいずれを送信するか制御する送信制御手段とを備えたことを特徴とする。
【発明の効果】
【0010】
本発明によれば、モータ駆動制御装置間をシリアル通信接続した通信ネットワークを有する駆動制御システムにおいて、ネットワークの同期ジッタなどによる通信データの衝突を回避できるという効果を奏する。
【図面の簡単な説明】
【0011】
【図1】図1は、本発明の実施の形態に係る駆動制御システムの構成図である。
【図2】図2は、本発明の実施の形態に係る送受信データのタイミングチャートである。
【図3】図3は、本発明の実施の形態に係る駆動制御装置の構成を示すブロック図である。
【図4】図4は、本発明の実施の形態に係るシリアル通信装置の詳細を示すブロック図である。
【図5】図5は、本発明の実施の形態に係る通信手段における受送信のタイミングチャートである。
【図6】図6は、本発明の実施の形態に係る通信手段における受送信のタイミングチャートである。
【図7】図7は、本発明の実施の形態に係る通信手段における受送信のタイミングチャートである。
【図8】図8は、本発明の実施の形態に係る通信手段における受送信のタイミングチャートである。
【図9】図9は、本発明の実施の形態に係る送信制御手段の動作を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下に、本発明にかかるシリアル通信装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【0013】
実施の形態
図1は、この発明の実施例1に係るシリアル通信装置を用いた駆動制御システム10のシステム構成を示す。図1において、駆動制御システム10は、マスタ制御装置1、駆動制御装置11および12、モータ21および22を備える。駆動制御装置11および12はそれぞれモータ21および22を駆動制御するモータ駆動制御手段である。マスタ制御装置1は、駆動制御装置11および12に駆動指令を与えるマスタ制御手段である。
【0014】
シリアル通信ライン31および32はマスタ制御装置1から駆動制御装置11および12へデータを伝送する通信ラインで、位置、速度、トルクなどの指令を駆動制御装置11および12に与える。シリアル通信ライン33(シリアル通信入力ライン)、シリアル通信ライン34(シリアル通信出力ライン)は駆動制御装置11および12から数値制御装置であるマスタ制御装置1へデータを伝送する通信ラインで、駆動制御装置11および12の位置フィードバック、速度フィードバック、トルクフィードバックなどの状態量や、制御機能の状態、アラーム情報などをマスタ制御装置1に送る。
【0015】
図2は、マスタ制御装置1と駆動制御装置11および12の間で送受信されるデータのタイミングを示すタイミングチャートである。図2の(A)はマスタ制御装置1から駆動制御装置11および12へ送信されるデータを示し、図2の(B)は駆動制御装置11および12からマスタ制御装置1へ送信されるデータを示す。
【0016】
図2においてT0は通信周期を示す。マスタ制御装置1は図2の(A)のように通信周期T0の間隔で全ての駆動制御装置である駆動制御装置11および12にデータ151を送信する。一方、駆動制御装置11および12各々からのマスタ制御装置1へのデータの送信は、図2の(B)に示すように時分割で行われる。すなわち、駆動制御装置11、12は通信周期の始まりからそれぞれT1、T2経過後にそれぞれデータ152、153の送信を開始するように構成されている。このため、各駆動制御装置11、12が送信を開始するタイミングT1、T2は各駆動制御装置11、12からの送信期間が重ならないようにあらかじめ設定されている。
【0017】
図3は駆動制御装置11あるいは12の構成を示すブロック図であり、例として駆動制御装置12の構成を示している。図3において、通信周期カウンタ41は通信のための基準となるクロックを生成し通信周期T0を管理する。シリアル通信装置42はマスタ制御装置1への通信を処理する。シリアル通信装置43はマスタ制御装置1からの通信を処理する。モータ制御手段44はモータ22を駆動制御する。
【0018】
マスタ制御装置1からのデータは、シリアル通信ライン32を介して駆動制御装置12に送られてくる。駆動制御装置12内のシリアル通信装置43はマスタ制御装置1からのデータを受信すると、そのデータをシリアル通信ライン31を介して駆動制御装置11に送信する。それと同時に、データを受信したタイミングで通信周期カウンタ41をリセットし、通信周期カウンタ41をマスタ制御装置1の通信周期と同期させる。さらに、シリアル通信装置43は受信したマスタ制御装置1からのデータを駆動指令としてモータ制御手段44へ出力する。
【0019】
モータ制御手段44は、受け取った駆動指令に基づいてモータ22を駆動制御し、そのステータス情報をシリアル通信装置42に出力する。シリアル通信装置42は、ステータス情報をシリアル通信ライン34に出力することによりマスタ制御装置1に送信する。シリアル通信装置42はモータ制御手段44のステータス情報をマスタ制御装置1に送信するのに加えて、シリアル通信ライン33を介して受信したデータをシリアル通信ライン34に送信することにより駆動制御装置11から送られてくるデータをマスタ制御装置1に中継する。
【0020】
図4はシリアル通信装置42の詳細な構成を示すブロック図である。図4において、受信手段51は、駆動制御装置11が送信するデータをシリアル通信ライン33から受信する受信手段である。退避バッファ52は、受信手段51にて受信したデータを一時的に記憶するバッファ記憶手段である。送信手段53は、シリアル通信ライン34にデータを送信するための送信手段である。送信制御手段55は、送信手段53からのデータ送信を制御する。また、送信タイミング判定手段54は、通信周期カウンタ41のカウント値に基づいてあらかじめ割り当てられた送信タイミングとなったか否かを判定する。先に述べたように、駆動制御装置11、12は通信周期の始まりからそれぞれT1、T2経過後にデータの送信を開始するように設定されている。さらに、送信バッファ57は、送信データを記憶するバッファ記憶手段であり、モータ制御手段44からのステータス情報を送信データとして格納している。
【0021】
次に、図5〜図8に示したタイミングチャートを用いて送信制御手段55の動作を説明する。
【0022】
まず、図5はシリアル通信装置42における受信と送信のタイミングを示すタイミングチャートであり、同期ジッタが無いときのタイミングチャートを示す。図5においてT0は通信周期である。通信周期の始まりからT1経過したタイミングで駆動制御装置11はデータ送信を開始するので、受信手段51はこのタイミングで受信データ101の受信を開始する。送信制御手段55は、受信手段51において受信データ101の受信が開始された時に送信手段53においてデータ送信中でなければ受信手段51から受信した受信データ101をそのまま送信データ102として送信手段53から送信する。次に、送信タイミング判定手段54は通信周期の始まりからT2経過した時点で送信タイミングと判定する。このとき、送信手段53においてデータ送信中でなければ、送信バッファ57に記憶されたデータを送信データ103として送信手段53から送信する。
【0023】
図6は、同期ジッタの影響で通信タイミングが遅れた場合の送信制御手段55の動作を示すタイミングチャートである。本来、駆動制御装置11は通信周期の始まりからT1経過したタイミングでデータ送信を開始するように設定されているが、何らかの要因でそのタイミングが遅れ、通信周期の始まりからT1’(T1’>T1)経過したタイミングでデータ送信を開始したとする。受信手段51は通信周期の始まりからT1’経過したタイミングから受信データ111の受信を開始し、送信手段53はこれをそのまま送信データ112として送信する。しかし、タイミングが遅れているため、通信周期の始まりからT2経過した時点までにデータの受信および送信が終了しない。送信タイミング判定手段54は通信周期の始まりからT2経過した時点で送信タイミングと判定するが、送信手段53は送信データ112を送信中なので、送信制御手段55は送信データ112の送信が終了するまで待ち、送信中の送信データ112の送信終了後に送信バッファ57に記憶されたデータを送信データ113として送信手段53から送信する。
【0024】
図7は、同期ジッタの影響で通信タイミングが大きく遅れた場合の送信制御手段55の動作を説明するタイミングチャートである。駆動制御装置11からのデータ送信のタイミングが何らかの要因で大きく遅れ、通信周期の始まりからT1'’(T1'’>T1)経過したタイミングでデータ送信を開始したとする。受信手段51は通信周期の始まりからT1'’経過したタイミングから受信データ121の受信を開始し、送信手段53はこれをそのまま送信データ122として送信する。しかし、タイミングが遅れているため、通信周期の始まりからT2経過した時点までにデータの受信および送信が終了しない。送信タイミング判定手段54は通信周期の始まりからT2経過した時点で送信タイミングと判定するが、送信手段53は送信データ122を送信中なので、送信制御手段55は送信データ122の送信の終了を待つ。そして、送信制御手段55は、通信周期の始まりからT2経過した時点からさらに経過した時間を計測し、あらかじめ決められた所定の時間ΔTを経過しても送信データ122の送信が終了しない場合は、送信データ122の送信を中止し、送信バッファ57に記憶されたデータを送信データ123として送信手段53から送信を開始する。
【0025】
図8は、同期ジッタの影響で通信タイミングが進んだ場合の送信制御手段55の動作を示すタイミングチャートである。駆動制御装置11からのデータ送信のタイミングが何らかの要因で早くなり、通信周期の始まりからT1'''(T1'''<T1)経過したタイミングからデータ送信を開始したとする。受信手段51は通信周期の始まりからT1'''経過したタイミングから受信データ131の受信を開始するが、タイミングが早いために送信手段53では送信データ132の送信が終了していない。この場合、退避バッファ52は受信手段51にて受信した受信データ131を記憶し、送信制御手段55は送信中の送信データ132の送信が終了するまで待ち、送信データ132の送信終了後に退避バッファ52に記憶された受信データ131を送信データ133として送信手段53から送信する。
【0026】
図9は、図5〜図8のタイミングチャートを用いて上に説明した送信制御手段55の動作をフローチャートで示したものである。
【0027】
まず、ステップS101で送信タイミング判定手段54により送信タイミングであるか否かが判定される。具体的には、通信周期の始まりからT2経過した時点であるか否かが判定される。送信タイミング(以下、通信周期の始まりからT2経過した時点を示す)でない場合(ステップS101:No)はステップS102へ、送信タイミングである場合(ステップS101:Yes)はステップS103へそれぞれ進む。
【0028】
ステップS102では受信手段51においてデータの受信が開始されたかどうかを判断し、開始された場合(ステップS102:Yes)はステップS107へ進み、開始されていない場合(ステップS102:No)はステップS101に戻る。
【0029】
ステップS103では送信手段53においてデータ送信中かどうかを判定し、送信中でなければ(ステップS103:No)ステップS106へ進んで送信バッファ57に記憶されたデータの送信を開始する。これは、図5で送信データ103をオンタイム(通信周期の始まりからT2経過した時点)に送信するケースである。ステップS103で送信中であった場合(ステップS103:Yes)は、ステップS104で送信手段53の送信が終了したかどうかを判断する。
【0030】
送信が終了していない場合(ステップS104:No)はステップS105で送信タイミングから所定時間ΔTが経過したかどうかを判断し、所定時間ΔTが経過していない場合(ステップS105:No)はステップS104に戻る。
【0031】
ステップS104で送信が終了している場合(ステップS104:Yes)は、ステップS106へ進んで送信バッファ57に記憶されたデータの送信を開始する。これは、図6で送信データ113を送信するケースである。また、ステップS105で送信タイミングから所定時間ΔTが経過した場合(ステップS105:Yes)は、送信データの送信が終了するのを待たずにステップS106に進み、送信バッファ57に記憶されたデータの送信を開始する。これは、図7で送信データ123を送信するケースである。
【0032】
ステップS107では送信手段53においてデータ送信中かどうかを判定し、送信中でなければ(ステップS107:No)ステップS108へ進んで受信手段51で受信したデータをそのまま送信手段53に送り、送信を開始する。これには、図5で受信データ101をそのまま送信データ102として送信するケース、図6で受信データ111をそのまま送信データ112として送信するケース、図7で受信データ121をそのまま送信データ122として送信するケース、さらには図8で受信データ131を受信した時点で既に送信データ132の送信が完了しているケースが含まれる。
【0033】
ステップS107で送信中であった場合(ステップS107:Yes)はステップS109に進み、退避バッファ52において受信手段51で受信したデータの記憶を開始する。
【0034】
そして、ステップS109の後は、ステップS110で送信手段53がデータ送信を終了した(ステップS110:Yes)か、否か(ステップS110:No)を待ち、送信終了後(ステップS110:Yes)にステップS111に進んで、退避バッファ52に記憶したデータを読み出して送信手段53よりデータ送信を開始する。これは、図8で退避バッファ52に記憶された受信データ131を送信データ133として送信手段53から送信するケースが該当する。
【0035】
モーションコントローラで複数のサーボモータを駆動するために、各制御装置間をディジーチェーン方式でシリアル通信を接続する駆動制御システムなどにおいては、通信の高速化により、通信遅延や通信同期ジッタなどの影響で通信タイミングがずれた場合に通信データの衝突が発生していた。しかし、上記したように、この実施の形態にかかるシリアル通信装置によれば、送信制御手段55がデータの衝突が発生しないように送信手段53の動作を制御するので、通信周期を短くして通信時間の余裕を切り詰めた場合でも、ネットワークの同期ジッタなどによるデータの衝突を回避して、データの通信周期を最小にすることが可能となる。即ち、通信速度が高速化しても、通信データの衝突を回避して問題なく通信が継続できるシリアル通信を提供可能となり、駆動制御システムの高性能化を実現することができる。
【0036】
更に、本願発明は上記実施の形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、上記実施の形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出されうる。
【0037】
例えば、上記実施の形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出されうる。更に、上記実施の形態における構成要件を適宜組み合わせてもよい。
【産業上の利用可能性】
【0038】
以上のように、本発明にかかるシリアル通信装置は、産業機械におけるコントローラと駆動制御装置間のシリアル通信に用いられるのに適している。
【符号の説明】
【0039】
1 マスタ制御装置
10 駆動制御システム
11、12 駆動制御装置
31〜36 シリアル通信ライン
41 通信周期カウンタ
42、43 シリアル通信装置
44 モータ制御手段
51 受信手段
52 退避バッファ
53 送信手段
54 送信タイミング判定手段
55 送信制御手段
57 送信バッファ
101、111、121、131 受信データ
102、103、112、113、122、123、132、133 送信データ
151、152、153 データ
S101〜S111 ステップ

【特許請求の範囲】
【請求項1】
他のモータ駆動制御手段に接続されたシリアル通信入力ラインと、マスタ制御手段へモータ制御情報を通知するためのシリアル通信出力ラインと、を介して前記モータ制御情報の同期通信を行うモータ駆動制御手段が備えるシリアル通信装置であって、
前記シリアル通信入力ラインからの受信データを受信する受信手段と、
前記受信手段が受信した前記受信データを一時的に記憶する退避バッファと、
前記モータ駆動制御手段が制御するモータからの送信データを記憶する送信バッファと、
前記シリアル通信出力ラインにデータを送信する送信手段と、
通信周期内の所定の送信タイミングであるか否かを判定する送信タイミング判定手段と、
前記送信タイミング判定手段の判定結果および前記送信手段がデータ送信中であるか否かに基づいて、前記送信手段から前記受信データまたは前記送信データのいずれを送信するか制御する送信制御手段と
を備えたことを特徴とするシリアル通信装置。
【請求項2】
前記送信制御手段は、
前記送信タイミング判定手段が前記送信タイミングではないと判定し、前記送信手段がデータ送信中でない場合は、前記受信手段が受信した前記受信データを前記送信手段から送信し、
前記送信タイミング判定手段が前記送信タイミングであると判定し、前記送信手段がデータ送信中でない場合は、前記送信バッファに記憶されている前記送信データを前記送信手段から送信する
ことを特徴とした請求項1に記載のシリアル通信装置。
【請求項3】
前記送信制御手段は、
前記送信タイミング判定手段が前記送信タイミングであると判定し、前記送信手段がデータ送信中である場合は、前記送信手段のデータ送信終了後に、前記送信バッファに記憶されている前記送信データを前記送信手段から送信する
ことを特徴とした請求項2に記載のシリアル通信装置。
【請求項4】
前記送信制御手段は、
前記送信タイミング判定手段が前記送信タイミングではないと判定し、前記送信手段がデータ送信中である場合は、前記受信手段が受信した前記受信データを前記退避バッファに記憶しておき、前記送信手段のデータ送信終了後に、前記退避バッファに記憶された前記受信データを前記送信手段から送信する
ことを特徴とした請求項2または3に記載のシリアル通信装置。
【請求項5】
前記送信制御手段は、
前記送信タイミング判定手段が前記送信タイミングであると判定し、前記送信手段がデータ送信中である場合は、前記送信手段のデータ送信が前記送信タイミングから所定時間継続したときに当該データ送信を中止して、前記送信バッファに記憶されている前記送信データを前記送信手段から送信する
ことを特徴とした請求項2〜4のいずれか1項に記載のシリアル通信装置。
【請求項6】
前記マスタ制御手段から受信したデータに基づいて前記通信周期を決定する
ことを特徴とした請求項1〜5のいずれか1項に記載のシリアル通信装置。
【請求項7】
前記モータ制御情報は、前記モータの位置フィードバック、速度フィードバック、トルクフィードバックなどの状態量、制御機能の状態、あるいはアラーム情報のいずれかを含む
ことを特徴とした請求項1〜6のいずれか1項に記載のシリアル通信装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2012−173883(P2012−173883A)
【公開日】平成24年9月10日(2012.9.10)
【国際特許分類】
【出願番号】特願2011−33824(P2011−33824)
【出願日】平成23年2月18日(2011.2.18)
【出願人】(000006013)三菱電機株式会社 (33,312)
【Fターム(参考)】