[go: up one dir, main page]

JP2013232847A - Communication system, communication device, relay device, communication device control method, relay device control method and program - Google Patents

Communication system, communication device, relay device, communication device control method, relay device control method and program Download PDF

Info

Publication number
JP2013232847A
JP2013232847A JP2012104882A JP2012104882A JP2013232847A JP 2013232847 A JP2013232847 A JP 2013232847A JP 2012104882 A JP2012104882 A JP 2012104882A JP 2012104882 A JP2012104882 A JP 2012104882A JP 2013232847 A JP2013232847 A JP 2013232847A
Authority
JP
Japan
Prior art keywords
dummy data
data
control unit
terminal
relay device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012104882A
Other languages
Japanese (ja)
Inventor
Ko Tachiwa
航 立和
Kazushi Asai
一志 浅井
智行 ▲高▼田
Satoyuki Takada
直人 ▲高▼橋
Naoto Takahashi
Makoto Umehara
誠 梅原
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2012104882A priority Critical patent/JP2013232847A/en
Publication of JP2013232847A publication Critical patent/JP2013232847A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Communication Control (AREA)

Abstract

【課題】リトライの発生を低減し、既存のノードに対する変更コストを抑えつつ、所定時間で応答を返すようなバス型ネットワークの伝送路の一部を無線で中継する。
【解決手段】バス型ネットワークに接続された第1の端末と、他のバス型ネットワークのに接続された第2の端末と、第1の端末と第2の端末との通信を中継する中継装置とを備える通信システムであって、第1の端末は、送信すべきデータにダミーデータを付加するダミーデータ付加部と、中継装置を介して送信するデータにダミーデータを付加するようにダミーデータ付加部を制御するダミーデータ付加制御部と、を備え、第2の端末は、第1の端末からデータを受信してから所定時間で応答する応答部を備え、中継装置は、第1の端末から第2の端末へ送信されるデータに含まれるダミーデータを除去して中継を行うダミーデータ除去部を備える。
【選択図】 図10
A part of a transmission line of a bus network that returns a response in a predetermined time while wirelessly relaying a retry while reducing the cost of changing an existing node.
A relay device that relays communication between a first terminal connected to a bus network, a second terminal connected to another bus network, and the first terminal and the second terminal. The first terminal includes a dummy data adding unit for adding dummy data to data to be transmitted, and dummy data addition so as to add dummy data to data to be transmitted via the relay device A dummy data addition control unit that controls the unit, the second terminal includes a response unit that responds in a predetermined time after receiving data from the first terminal, and the relay device receives the response from the first terminal. A dummy data removing unit is provided that removes dummy data included in data transmitted to the second terminal and relays the dummy data.
[Selection] Figure 10

Description

本発明は、バス型ネットワークの伝送路の一部を中継するための通信システム、通信装置、中継装置、通信装置の制御方法、中継装置の制御方法、およびプログラムに関する。   The present invention relates to a communication system, a communication apparatus, a relay apparatus, a communication apparatus control method, a relay apparatus control method, and a program for relaying a part of a transmission path of a bus network.

近年、産業用機器や情報機器の分野において、機器の配線を減らすため有線通信から無線通信に置き換えることが行われている。一方、無線通信に必要な部品コストは有線の場合よりも高くなる傾向があるため、全てを無線で置き換えずに、必要な個所だけを無線で中継する技術が求められている。例えば、有線の伝送路のうち可動部には耐久性の低下やねじれ等の問題があるので、可動部だけは多少コストがかかっても無線中継したいといったニーズがある。   In recent years, in the fields of industrial equipment and information equipment, replacement from wired communication to wireless communication has been performed in order to reduce wiring of equipment. On the other hand, the cost of components required for wireless communication tends to be higher than that for wired communication, and there is a need for a technique for wirelessly relaying only necessary portions without replacing everything wirelessly. For example, a movable part of a wired transmission path has problems such as a decrease in durability and a twist, and therefore, there is a need for wireless relaying even if the movable part alone costs a little.

ところで、多くの標準的な通信プロトコルでは、送達確認のため、データを受信したノードは正しくデータを受信したことを示すACK応答を所定時間で伝送路に出力することが規定されている。このような通信プロトコルが適用される有線の通信を無線で中継する場合、中継のための遅延時間が加算されるため、そのまま中継すると応答を所定時間で出力することができない場合がある。   By the way, many standard communication protocols stipulate that, for delivery confirmation, a node that has received data outputs an ACK response indicating that the data has been correctly received to the transmission line in a predetermined time. When a wired communication to which such a communication protocol is applied is wirelessly relayed, a delay time for the relay is added, so that if a relay is performed as it is, a response may not be output within a predetermined time.

そこで、特許文献1では、初回のデータ送信に対しては応答を出力せずに、リトライに対して正しいタイミングで応答を出力する技術が提案されている。   Therefore, Patent Document 1 proposes a technique for outputting a response at a correct timing for a retry without outputting a response to the first data transmission.

また、特許文献2では、本来送信すべきデータの末尾にダミーデータを付加して応答のための時間を確保する技術が提案されている。   Patent Document 2 proposes a technique for securing time for response by adding dummy data to the end of data to be transmitted.

一方、産業用機器の分野ではバス型ネットワークが広く用いられている。バス型ネットワークは、一つの有線の伝送路を複数のノードで共有して通信する方式のネットワークである。このようなネットワークの例として、非特許文献1では、CAN(Controller Area Network)が開示されている。CANにおいても受信ノードは所定時間でACK応答を出力することが規定されている。   On the other hand, bus-type networks are widely used in the field of industrial equipment. The bus type network is a network in which one wired transmission path is shared by a plurality of nodes for communication. As an example of such a network, Non-Patent Document 1 discloses a CAN (Controller Area Network). Even in CAN, it is specified that a receiving node outputs an ACK response in a predetermined time.

特開2008−109711号公報JP 2008-109711 A 特開2006−197045号公報JP 2006-197045 A

CAN Specification 2.0(Robert Bosch GmbH)CAN Specification 2.0 (Robert Bosch GmbH)

しかしながら、従来の技術を用いて、所定時間で応答を返すようなバス型ネットワークの伝送路の一部を無線通信で中継する場合、次のような問題がある。まず、リトライに対して応答を出力する方式では、毎回リトライが発生してしまうためにバスの占有時間が増大し、同じバスに接続された他のノードがこの間にデータを送信することができない。また、ダミーデータを付加する方式では、同じバス上の全てのノードにダミーデータを除去する機能を追加する必要があり、大きな変更コストを要する。   However, when relaying a part of a transmission path of a bus type network that returns a response in a predetermined time using wireless communication, there are the following problems. First, in the method of outputting a response to a retry, a retry occurs every time, so that the bus occupation time increases, and other nodes connected to the same bus cannot transmit data during this time. Further, in the method of adding dummy data, it is necessary to add a function of removing dummy data to all nodes on the same bus, which requires a large change cost.

上記の課題に鑑み、本発明は、リトライの発生を低減し、既存のノードに対する変更コストを抑えつつ、所定時間で応答を返すようなバス型ネットワークの伝送路の一部を中継する技術を提供することを目的とする。   In view of the above problems, the present invention provides a technique for relaying a part of a transmission path of a bus network that returns a response in a predetermined time while reducing the occurrence of retries and suppressing the cost of changing an existing node. The purpose is to do.

上記の目的を達成する本発明に係る通信システムは、
バス型ネットワークに接続された第1の端末と、他のバス型ネットワークに接続された第2の端末と、前記第1の端末と前記第2の端末との通信を中継する中継装置とを備える通信システムであって、
前記第1の端末は、
送信すべきデータにダミーデータを付加するダミーデータ付加手段と、
前記中継装置を介して送信するデータに前記ダミーデータを付加するように前記ダミーデータ付加手段を制御するダミーデータ付加制御手段と、を備え、
前記第2の端末は、
前記第1の端末からデータを受信してから所定時間で応答する応答手段を備え、
前記中継装置は、
前記第1の端末から前記第2の端末へ送信されるデータに付加されている前記ダミーデータを除去して中継を行うダミーデータ除去手段を備えることを特徴とする。
A communication system according to the present invention that achieves the above object is as follows.
A first terminal connected to the bus network; a second terminal connected to another bus network; and a relay device that relays communication between the first terminal and the second terminal. A communication system,
The first terminal is
Dummy data adding means for adding dummy data to data to be transmitted;
Dummy data addition control means for controlling the dummy data addition means so as to add the dummy data to the data transmitted through the relay device,
The second terminal is
Response means for responding in a predetermined time after receiving data from the first terminal;
The relay device is
It is characterized by comprising dummy data removing means for removing the dummy data added to data transmitted from the first terminal to the second terminal and performing relay.

本発明によれば、リトライの発生を低減し、既存のノードに対する変更コストを抑えつつ、所定時間で応答を返すようなバス型ネットワークの伝送路の一部を中継することができる。   According to the present invention, it is possible to relay a part of a transmission line of a bus network that returns a response in a predetermined time while reducing the occurrence of retries and suppressing the cost of changing an existing node.

ロボット制御システムの全体構成を表す図。The figure showing the whole structure of a robot control system. ロボット制御システムの内部構成を表す図。The figure showing the internal structure of a robot control system. ノード間でやり取りされるデータの構造を表す図。The figure showing the structure of the data exchanged between nodes. メッセージと応答の関係を表す図。The figure showing the relationship between a message and a response. 全体制御部101の内部構成を表す図。The figure showing the internal structure of the whole control part 101. FIG. 無線中継したときのロボット制御システムの内部構成を表す図。The figure showing the internal structure of the robot control system when carrying out wireless relay. 無線中継したときの全体制御部601の内部構成を表す図。The figure showing the internal structure of the whole control part 601 when carrying out a radio relay. ダミーデータ付加部701の動作を説明する図。The figure explaining operation | movement of the dummy data addition part 701. FIG. 無線中継装置600の内部構成を表す図。The figure showing the internal structure of the radio relay apparatus 600. メッセージが無線中継装置によって中継される様子を表す図。The figure showing a mode that a message is relayed by the wireless relay apparatus. 各ノード間で発生する通信の内容をまとめた図。The figure which summarized the content of the communication which generate | occur | produces between each node. ダミーデータ付加制御部702が保持する情報を表す図。The figure showing the information which dummy data addition control part 702 holds. ダミーデータ除去部902の動作の詳細を表す図。The figure showing the detail of operation | movement of the dummy data removal part 902. FIG. 第二の実施形態における無線中継装置600の内部構成を表す図。The figure showing the internal structure of the radio relay apparatus 600 in 2nd embodiment. 接続情報保持部1401が保持する接続情報を表す図。The figure showing the connection information which the connection information holding part 1401 hold | maintains.

(第1実施形態)
まず図1を参照して、本発明を適用可能な通信システムとしてのロボット制御システムの全体構成を説明する。全体制御部101は、アーム100と、その末端に取り付けられたハンド110とを制御して、加工対象物120に対して所定の加工を行う。アーム100は、関節102、関節103のような関節を複数有する。アーム100の根元にある関節102は、アーム100全体の傾きを調節するための関節であり、関節103は、ハンド110を回転させるための関節である。ハンド110は、ハンド制御部111と、指関節112のような複数の指関節を持つ指とを有する。ハンド制御部111については後述する。指関節112は、指の曲げ角度を調節するための関節である。
(First embodiment)
First, an overall configuration of a robot control system as a communication system to which the present invention can be applied will be described with reference to FIG. The overall control unit 101 controls the arm 100 and the hand 110 attached to the end thereof to perform predetermined processing on the processing target 120. The arm 100 has a plurality of joints such as a joint 102 and a joint 103. The joint 102 at the base of the arm 100 is a joint for adjusting the inclination of the entire arm 100, and the joint 103 is a joint for rotating the hand 110. The hand 110 includes a hand control unit 111 and fingers having a plurality of finger joints such as the finger joint 112. The hand control unit 111 will be described later. The finger joint 112 is a joint for adjusting the bending angle of the finger.

次に図2を参照して、本発明を適用可能なロボット制御システムの内部構成を説明する。関節102は、関節制御部202と、モータ221と、エンコーダ222とを備える。モータ221は、関節102を曲げる力を発生させる。エンコーダ222は、関節102の現在の曲げ角度を検出する。   Next, an internal configuration of a robot control system to which the present invention can be applied will be described with reference to FIG. The joint 102 includes a joint control unit 202, a motor 221, and an encoder 222. The motor 221 generates a force that bends the joint 102. The encoder 222 detects the current bending angle of the joint 102.

関節制御部202は、エンコーダ222から関節102の現在の曲げ角度を繰り返し取得しながら、モータ221を制御して指示された角度まで関節102を曲げるための力を発生させる。関節制御部202は、エンコーダ222から取得した角度が所定の角度に一致したらモータ221を停止して、関節102をその角度で固定する。関節103と指関節112もそれぞれモータおよびエンコーダを有しており、関節制御部202と同様の制御を行う。   The joint control unit 202 generates a force for bending the joint 102 to the instructed angle by controlling the motor 221 while repeatedly acquiring the current bending angle of the joint 102 from the encoder 222. When the angle acquired from the encoder 222 matches the predetermined angle, the joint control unit 202 stops the motor 221 and fixes the joint 102 at that angle. The joint 103 and the finger joint 112 each have a motor and an encoder, and perform the same control as the joint control unit 202.

ここで、加工対象物120を把持して別の位置に移動させることを例として、ロボット制御システムの動作を説明する。   Here, the operation of the robot control system will be described using an example in which the workpiece 120 is gripped and moved to another position.

全体制御部101は、関節制御部202に対して関節102の目標角度を通知することにより、その角度まで関節102を曲げるよう指示する。関節制御部202は、関節102が目標角度に達したら全体制御部101に動作完了を通知する。全体制御部101は、関節制御部202から動作完了を通知されたら、関節制御部202に対して次の目標角度を通知する。全体制御部101は、このような通信を関節102や関節103との間で繰り返すことによりアーム100を動作させて、ハンド110が加工対象物120を把持できる位置と角度になるように制御する。目標角度の情報は予め全体制御部101内部のROM等に設定されている。   The overall control unit 101 notifies the joint control unit 202 of the target angle of the joint 102, thereby instructing the joint 102 to bend to that angle. The joint control unit 202 notifies the overall control unit 101 of the completion of the operation when the joint 102 reaches the target angle. When notified of the completion of the operation from the joint control unit 202, the overall control unit 101 notifies the joint control unit 202 of the next target angle. The overall control unit 101 operates such that the arm 100 is operated by repeating such communication with the joint 102 and the joint 103 so as to control the hand 110 so as to have a position and an angle at which the hand 110 can be gripped. Information on the target angle is set in advance in a ROM or the like in the overall control unit 101.

ハンド制御部111は、指関節制御部212との間で、全体制御部101と関節制御部202との間と同様の通信を行う。これによりハンド110の指を制御して加工対象物120を把持する制御を行う。   The hand control unit 111 performs the same communication with the finger joint control unit 212 as between the overall control unit 101 and the joint control unit 202. As a result, the finger of the hand 110 is controlled to control the workpiece 120 to be gripped.

全体制御部101は、ハンド110が加工対象物120に近接したら、ハンド制御部111に対して「把持せよ」という指示を出す。これを受けてハンド制御部111は、指関節112の指関節制御部212や他の指関節を制御して加工対象物120を把持する動作を実行する。把持する動作が完了したら、ハンド制御部111は、全体制御部101に対して動作完了を通知する。この後、全体制御部101は、アーム100の各関節を制御して、ハンド110を所定の位置まで移動させ、ハンド制御部111に対して「解放せよ」という指示を出す。これを受けてハンド制御部111は、指関節制御部212や他の指関節を制御して加工対象物120を解放する動作を実行する。   When the hand 110 comes close to the workpiece 120, the overall control unit 101 gives an instruction “hold” to the hand control unit 111. In response to this, the hand control unit 111 controls the finger joint control unit 212 of the finger joint 112 and other finger joints to perform an operation of gripping the workpiece 120. When the gripping operation is completed, the hand control unit 111 notifies the overall control unit 101 of the operation completion. Thereafter, the overall control unit 101 controls each joint of the arm 100 to move the hand 110 to a predetermined position, and gives an instruction “release” to the hand control unit 111. In response to this, the hand control unit 111 executes an operation of controlling the finger joint control unit 212 and other finger joints to release the workpiece 120.

以上のような制御により、加工対象物120を把持して別の位置に移動させることができる。ここで、制御に必要な指示や応答は有線の伝送路200を介して行われる。全体制御部101、関節制御部202、関節制御部203、ハンド制御部111、指関節制御部212は、伝送路200に接続されるノードである。これらのノードと伝送路200とは、一つのバス型ネットワークを構成している。   Through the control as described above, the workpiece 120 can be gripped and moved to another position. Here, instructions and responses necessary for control are performed via the wired transmission path 200. The overall control unit 101, the joint control unit 202, the joint control unit 203, the hand control unit 111, and the finger joint control unit 212 are nodes connected to the transmission path 200. These nodes and the transmission line 200 constitute one bus network.

図11を参照して、これらのノード間で発生する通信内容を示す表1100について説明する。表1100において、各行は送信ノードを表し、各列は受信ノードを表す。例えば欄1101は、送信ノードである全体制御部101から受信ノードである関節制御部202に対して目標角度の指示が送信されることを示している。また、空欄は該当するノード間で通信が発生しないことを表す。例えば欄1102は、関節制御部202からハンド制御部111へのデータ送信が発生しないことを示している。図11の例では、全体制御部101は、関節制御部202および関節制御部203へ目標角度の指示を送信し、ハンド制御部111へ把持/解放指示を送信する。関節制御部202および関節制御部203は、全体制御部101へ動作完了通知を送信する。ハンド制御部111は、全体制御部101へ動作完了通知を送信し、指関節制御部212へ目標角度指示を送信する。指関節制御部212は、ハンド制御部111へ動作完了通知を送信する。   With reference to FIG. 11, a table 1100 showing communication contents occurring between these nodes will be described. In table 1100, each row represents a transmitting node and each column represents a receiving node. For example, a column 1101 indicates that an instruction for a target angle is transmitted from the overall control unit 101 that is a transmission node to the joint control unit 202 that is a reception node. A blank field indicates that communication does not occur between the corresponding nodes. For example, a column 1102 indicates that data transmission from the joint control unit 202 to the hand control unit 111 does not occur. In the example of FIG. 11, the overall control unit 101 transmits a target angle instruction to the joint control unit 202 and the joint control unit 203, and transmits a grip / release instruction to the hand control unit 111. The joint control unit 202 and the joint control unit 203 transmit an operation completion notification to the overall control unit 101. The hand control unit 111 transmits an operation completion notification to the overall control unit 101 and transmits a target angle instruction to the finger joint control unit 212. The finger joint control unit 212 transmits an operation completion notification to the hand control unit 111.

図3(a)は、伝送路200に接続されるノード間でやり取りされるデータ構造を示す。各ノード間の通信プロトコルは、機器制御の分野で広く用いられているCAN(Controller Area Network)のプロトコルに準ずるものとする。図3(a)において、データフレーム300は、各ノード間で行われる通信の単位となるフレームである。データフレーム300は、送信ノードが出力するメッセージ301と、受信ノードが出力する応答302と、その間のCRCデリミタとを有する。   FIG. 3A shows a data structure exchanged between nodes connected to the transmission path 200. The communication protocol between the nodes conforms to a CAN (Controller Area Network) protocol widely used in the field of device control. In FIG. 3A, a data frame 300 is a frame that is a unit of communication performed between the nodes. The data frame 300 includes a message 301 output from the transmission node, a response 302 output from the reception node, and a CRC delimiter therebetween.

メッセージ301は、ヘッダと、ペイロードと、CRC(Cyclic Redundancy Check)とを有する。ヘッダには、少なくともデータフレームの先頭を表すSOF(Start Of Frame)、データの種別を表すID、ペイロードのバイト数を表すデータ長が含まれる。IDは11ビットの固定長であり、本実施形態では11ビットのうち8ビットを宛先アドレスとして使用するものとする。   The message 301 has a header, a payload, and a CRC (Cyclic Redundancy Check). The header includes at least an SOF (Start Of Frame) representing the beginning of the data frame, an ID representing the type of data, and a data length representing the number of bytes of the payload. The ID has a fixed length of 11 bits. In this embodiment, 8 bits out of 11 bits are used as the destination address.

宛先アドレスは、データフレーム300がどのノード宛てのものであるかを表す情報である。伝送路200に接続された各ノードは、同じバス上で他のノードと重複しない固有の数値で表されるアドレスを持つ。例えば全体制御部101のアドレスは、図2に示されるように「101」であり、関節制御部202のアドレスは「202」である。例えば、関節制御部202は、受信したメッセージフレームの宛先アドレスが「202」である場合に、そのメッセージフレームが自分宛であると判断し受信データの処理を行う。なお、11ビットのIDのうち、8ビットを宛先アドレスとして使用するが、残りの3ビットは未使用である。未使用ビットは0とする。   The destination address is information indicating to which node the data frame 300 is addressed. Each node connected to the transmission line 200 has an address represented by a unique numerical value that does not overlap with other nodes on the same bus. For example, the address of the overall control unit 101 is “101” as shown in FIG. 2, and the address of the joint control unit 202 is “202”. For example, when the destination address of the received message frame is “202”, the joint control unit 202 determines that the message frame is addressed to itself and processes the received data. Of the 11-bit ID, 8 bits are used as the destination address, but the remaining 3 bits are unused. Unused bits are set to 0.

ペイロードには、送信ノードから受信ノードに通知する内容を示すデータが格納される。例えば全体制御部101から関節制御部202へ関節102の目標角度が通知されるが、このときペイロードには、このペイロードの内容は角度情報であることを表す識別子と、角度の数値とが格納される。ペイロードの長さは可変である。   The payload stores data indicating the content notified from the transmission node to the reception node. For example, the target angle of the joint 102 is notified from the overall control unit 101 to the joint control unit 202. At this time, an identifier indicating that the content of the payload is angle information and a numerical value of the angle are stored in the payload. The The length of the payload is variable.

CRCは、誤り検出のための情報である。CRCにはヘッダとペイロードの各ビットから計算される15ビットの値が格納される。受信ノードは、受信したメッセージのヘッダとペイロードからCRCの値を計算し、その値が受信したメッセージに含まれるCRCと一致すれば正しく受信できたと判断する。   CRC is information for error detection. The CRC stores a 15-bit value calculated from each bit of the header and payload. The receiving node calculates a CRC value from the header and payload of the received message, and determines that it has been received correctly if the value matches the CRC included in the received message.

応答302は、受信ノードが出力する応答であり、1ビットのACKスロットと、1ビットのACKデリミタと、7ビットのEOF(End Of Frame)との計9ビットの情報を有する。受信ノードは、受信したデータフレームのCRCが正しい場合すなわちACKの場合には、ACKスロットを0、EOFを全て1として送信する。受信ノードは、受信したデータフレームのCRCが異なる場合すなわちNACKの場合には、ACKスロットを1、EOFの上位6ビットを0として送信する。ACKデリミタは常に1で固定である。図3(b)は、これらをまとめた表310を示す。表310は、受信ノードが出力する9ビットの応答の値を2進数で表した表である。すなわち、応答302は送信元への送達確認情報として使用可能である。   The response 302 is a response output by the receiving node, and has 9-bit information including a 1-bit ACK slot, a 1-bit ACK delimiter, and a 7-bit EOF (End Of Frame). When the CRC of the received data frame is correct, that is, in the case of ACK, the receiving node transmits the ACK slot as 0 and EOF as all 1. When the CRC of the received data frame is different, that is, in the case of NACK, the receiving node transmits the ACK slot as 1, and the higher 6 bits of EOF as 0. The ACK delimiter is always 1 and fixed. FIG. 3B shows a table 310 that summarizes these. Table 310 is a table in which the value of the 9-bit response output by the receiving node is expressed in binary. That is, the response 302 can be used as delivery confirmation information to the transmission source.

送信ノードが出力するメッセージ301と、受信ノードが出力する応答302との間には、1ビットの空き時間がある。この区間はCRCデリミタと呼ばれる。図4は、データフレームにおけるメッセージと応答との関係を表す。受信ノードは、送信ノードからメッセージ301を受信したら、その末尾から時間T1後に応答302の送信を開始しなければならない。T1はCRCデリミタの分、すなわち1ビットに相当する時間である。例えばビットレートが1メガビット毎秒である場合、T1は1マイクロ秒である。   There is a one-bit free time between the message 301 output from the transmission node and the response 302 output from the reception node. This section is called a CRC delimiter. FIG. 4 shows the relationship between messages and responses in the data frame. When receiving the message 301 from the transmitting node, the receiving node must start transmitting the response 302 after time T1 from the end of the message 301. T1 is a time corresponding to the CRC delimiter, that is, one bit. For example, if the bit rate is 1 megabit per second, T1 is 1 microsecond.

図5は、全体制御部101の内部構成を表す。全体制御部101は、受信部501と、誤り検出部502と、受信データ処理部503と、送信データ生成部504と、送信部505とを備える。   FIG. 5 shows the internal configuration of the overall control unit 101. The overall control unit 101 includes a reception unit 501, an error detection unit 502, a reception data processing unit 503, a transmission data generation unit 504, and a transmission unit 505.

受信部501は、伝送路200上のデータフレームを検出する。誤り検出部502は、受信部501が検出したメッセージのCRCの値を確認してACKまたはNACKの判定を行い、図4に示されるタイミングで応答を出力するように送信部505に指示する。ただし自局がメッセージを出力したデータフレームに対しては応答を出力しない。受信データ処理部503は、受信部501が受信したメッセージのヘッダの宛先アドレスが自局アドレスと一致する場合に、ペイロードの内容を解析して処理を行う。例えば、関節制御部202から目標角度に到達したというペイロードを持つメッセージを受信部501が受信したら、受信データ処理部503は、関節制御部202に対して次の目標位置を送信するように送信データ生成部504を制御する。送信データ生成部504は、受信データ処理部503の指示に基づいて図3の形式でメッセージ301を生成して送信部505へ出力する。送信部505は、誤り検出部502から指示された応答や、送信データ生成部504から出力されたメッセージを、伝送路200へ出力する。   The receiving unit 501 detects a data frame on the transmission path 200. The error detection unit 502 confirms the CRC value of the message detected by the reception unit 501 to determine ACK or NACK, and instructs the transmission unit 505 to output a response at the timing shown in FIG. However, no response is output for the data frame from which the station outputs a message. When the destination address of the header of the message received by the receiving unit 501 matches the local address, the received data processing unit 503 analyzes the contents of the payload and performs processing. For example, when the reception unit 501 receives a message having a payload indicating that the target angle has been reached from the joint control unit 202, the reception data processing unit 503 transmits the transmission data so as to transmit the next target position to the joint control unit 202. The generation unit 504 is controlled. The transmission data generation unit 504 generates a message 301 in the format of FIG. 3 based on an instruction from the reception data processing unit 503 and outputs the message 301 to the transmission unit 505. The transmission unit 505 outputs the response instructed from the error detection unit 502 and the message output from the transmission data generation unit 504 to the transmission line 200.

なお、関節制御部202、関節制御部203、ハンド制御部111、指関節制御部212の内部構成は、受信データ処理部503および送信データ生成部504の処理内容が異なる他は、全体制御部101と同一の構成である。例えば、関節制御部202の受信データ処理部503は、目標角度情報を抽出して図2のモータ221を制御する。送信データ生成部504は、図2のエンコーダ222から現在の角度情報を取得し、最後に受信した目標角度情報と一致したら、目標に到達したという情報をペイロードに格納したメッセージを生成する。   The internal control unit 101 is different from the internal control unit 202, the joint control unit 203, the hand control unit 111, and the finger joint control unit 212 except for the processing contents of the reception data processing unit 503 and the transmission data generation unit 504. It is the same composition as. For example, the reception data processing unit 503 of the joint control unit 202 extracts target angle information and controls the motor 221 in FIG. The transmission data generation unit 504 acquires the current angle information from the encoder 222 of FIG. 2, and generates a message in which information indicating that the target has been reached is stored in the payload when it matches the last received target angle information.

次に、以上説明したロボット制御システムにおいて、図1のアーム100とハンド110との間を無線中継する場合の構成を説明する。   Next, in the robot control system described above, a configuration when wirelessly relaying between the arm 100 and the hand 110 in FIG. 1 will be described.

図6は、アーム100とハンド110との間を無線中継したときのロボット制御システムの内部構成を表す。無線中継しない場合の図2との違いは、有線の伝送路200の途中に無線中継装置600と無線中継装置610とを設けた点と、全体制御部101とハンド制御部111とを、それぞれ全体制御部601とハンド制御部611とに置き換えた点である。無線中継装置600と無線中継装置610とは、アーム100およびハンド110の間において、伝送路200を流れるデータを無線通信により中継伝送する。   FIG. 6 shows the internal configuration of the robot control system when wirelessly relaying between the arm 100 and the hand 110. The difference from FIG. 2 in the case where wireless relay is not performed is that the wireless relay device 600 and the wireless relay device 610 are provided in the middle of the wired transmission path 200, and the overall control unit 101 and the hand control unit 111 are all The point is that the control unit 601 and the hand control unit 611 are replaced. The wireless relay device 600 and the wireless relay device 610 relay and transmit data flowing through the transmission path 200 between the arm 100 and the hand 110 by wireless communication.

また、無線中継装置600および無線中継装置610によって分断されたバス型ネットワークについて、無線中継装置600が所属する側をクラスタC0、無線中継装置610が所属する側をクラスタC1と定義する。   Further, in the bus network divided by the wireless relay device 600 and the wireless relay device 610, the side to which the wireless relay device 600 belongs is defined as cluster C0, and the side to which the wireless relay device 610 belongs is defined as cluster C1.

なお、以下の説明において全体制御部601およびハンド制御部611のアドレスについて言及する箇所がある。全体制御部601は全体制御部101と同じアドレス「101」を持ち、ハンド制御部611はハンド制御部111と同じアドレス「111」を持つものとする。   In the following description, there are places where the addresses of the overall control unit 601 and the hand control unit 611 are referred to. The overall control unit 601 has the same address “101” as the overall control unit 101, and the hand control unit 611 has the same address “111” as the hand control unit 111.

図7は、全体制御部601の内部構成を示す。図5において説明した全体制御部101との違いは、全体制御部601は、ダミーデータ付加部701と、ダミーデータ付加制御部702とをさらに備える点である。図8を参照して、ダミーデータ付加部701の動作を説明する。ダミーデータ付加部701は、送信データ生成部504が生成するメッセージ301に、ヘッダ802とダミーデータ803とCRC804とを付加してメッセージ801を生成する。ヘッダ802では、メッセージ301のヘッダ810においては未使用で常に0であった3ビットがダミーデータ付加の有無を示すダミーデータ識別子となっている。ダミーデータ識別子の値は全て1である。またヘッダ802に格納されるデータ長には、メッセージ801におけるペイロード、すなわちメッセージ301全体のバイト数が設定される。ヘッダ802のその他の構成はメッセージ301のヘッダ810と同一である。   FIG. 7 shows the internal configuration of the overall control unit 601. A difference from the overall control unit 101 described in FIG. 5 is that the overall control unit 601 further includes a dummy data addition unit 701 and a dummy data addition control unit 702. The operation of the dummy data adding unit 701 will be described with reference to FIG. The dummy data adding unit 701 generates a message 801 by adding a header 802, dummy data 803, and CRC 804 to the message 301 generated by the transmission data generating unit 504. In the header 802, 3 bits that are unused and always 0 in the header 810 of the message 301 are dummy data identifiers indicating whether or not dummy data is added. The values of the dummy data identifiers are all 1. The data length stored in the header 802 is set to the payload in the message 801, that is, the number of bytes of the entire message 301. Other configurations of the header 802 are the same as the header 810 of the message 301.

ダミーデータ803は、ダミーデータ付加制御部702によって指定される長さのビット列である。ダミーデータ803の各ビットの値は任意であり、例えば全て0とする。CRC804は、ヘッダ802とメッセージ301とダミーデータ803とから計算される15ビットのCRCである。   The dummy data 803 is a bit string having a length specified by the dummy data addition control unit 702. The value of each bit of the dummy data 803 is arbitrary, for example, all 0. The CRC 804 is a 15-bit CRC calculated from the header 802, the message 301, and the dummy data 803.

ダミーデータ付加制御部702は、送信データ生成部504が生成するメッセージを監視し、後述の条件を満たす時にのみダミーデータを付加するようにダミーデータ付加部701を制御する。ここで、ダミーデータ803の長さは、無線中継装置600と無線中継装置610との間で生じる中継遅延時間に基づいて決定する。その方法については後に図10を参照して説明する。   The dummy data addition control unit 702 monitors the message generated by the transmission data generation unit 504, and controls the dummy data addition unit 701 so that dummy data is added only when a condition described later is satisfied. Here, the length of the dummy data 803 is determined based on the relay delay time generated between the radio relay apparatus 600 and the radio relay apparatus 610. The method will be described later with reference to FIG.

次に、ダミーデータを付加する条件について説明する。全体制御部601のダミーデータ付加制御部702は、自ノードと異なるクラスタに属するノードにメッセージを送信する場合にのみダミーデータを付加するようにダミーデータ付加部701を制御する。この制御を実行するために、ダミーデータ付加制御部702は、図12の表1200のような情報を内部に予め保持している。表1200は、各ノードがどのクラスタに属するかを表す。例えば、全体制御部601はアドレス「101」を有するので、欄1201に示されるようにクラスタC0に所属している。ダミーデータ付加制御部702は、送信データ生成部504が生成するメッセージの宛先アドレスを監視し、表1200においてその宛先アドレスに対応するクラスタが自ノードと同一か否か確認する。もし異なる場合には、ダミーデータ付加部701に対して、そのメッセージにダミーデータを付加するように制御する。反対に、同一の場合はダミーデータを付加させないように制御する。   Next, conditions for adding dummy data will be described. The dummy data addition control unit 702 of the overall control unit 601 controls the dummy data addition unit 701 so that dummy data is added only when a message is transmitted to a node belonging to a cluster different from the own node. In order to execute this control, the dummy data addition control unit 702 holds information as shown in the table 1200 of FIG. Table 1200 shows to which cluster each node belongs. For example, since the overall control unit 601 has the address “101”, it belongs to the cluster C 0 as shown in the column 1201. The dummy data addition control unit 702 monitors the destination address of the message generated by the transmission data generation unit 504, and checks whether or not the cluster corresponding to the destination address in the table 1200 is the same as the own node. If they are different, the dummy data adding unit 701 is controlled to add dummy data to the message. On the contrary, control is performed so that dummy data is not added if they are the same.

図9は、無線中継装置600の内部構成を表す。無線中継装置600は、有線受信部901と、ダミーデータ除去部902と、無線送信部903と、無線受信部904と、有線送信部905と、応答中継制御部906と、応答遅延制御部907とを備える。   FIG. 9 shows the internal configuration of the wireless relay device 600. The wireless relay device 600 includes a wired reception unit 901, a dummy data removal unit 902, a wireless transmission unit 903, a wireless reception unit 904, a wired transmission unit 905, a response relay control unit 906, and a response delay control unit 907. Is provided.

有線受信部901は、伝送路200上のデータを1ビットずつサンプリングしてダミーデータ除去部902および応答中継制御部906へ出力する。   The wired receiving unit 901 samples the data on the transmission line 200 bit by bit and outputs the sampled data to the dummy data removing unit 902 and the response relay control unit 906.

ダミーデータ除去部902は、有線受信部901から取得したデータから図8のメッセージ801を検出し、さらにそのメッセージからダミーデータを削除したデータを、所定のサイズに区切って無線送信部903へ出力する。また、ダミーデータ除去部902は、ダミーデータを含まないメッセージについては破棄する。   The dummy data removal unit 902 detects the message 801 in FIG. 8 from the data acquired from the wired reception unit 901, and further outputs the data obtained by deleting the dummy data from the message to the wireless transmission unit 903 in a predetermined size. . Further, the dummy data removing unit 902 discards a message that does not include dummy data.

ここで図13のフローチャートを参照して、ダミーデータ除去部902の動作の詳細を説明する。   Here, the details of the operation of the dummy data removing unit 902 will be described with reference to the flowchart of FIG.

S1301において、ダミーデータ除去部902は、伝送路200を流れるメッセージのヘッダのSOFを検出したか否かを判定する。SOFを検出したと判定された場合(S1301;YES)、S1302へ進む。一方、SOFを検出していないと判定された場合(S1301;NO)、検出するまで待機する。   In step S <b> 1301, the dummy data removing unit 902 determines whether or not the SOF of the header of the message flowing through the transmission path 200 has been detected. If it is determined that the SOF has been detected (S1301; YES), the process proceeds to S1302. On the other hand, if it is determined that the SOF is not detected (S1301; NO), the process waits until it is detected.

S1302において、ダミーデータ除去部902は、ヘッダの末尾まで受信するまで待機する。   In step S1302, the dummy data removing unit 902 waits until the end of the header is received.

S1303において、ダミーデータ除去部902は、ヘッダのダミーデータ識別子を参照して、現在のメッセージがダミーデータを含むか否かを判定する。ダミーデータ有りと判定された場合(S1303;YES)、S1304へ進む。一方、ダミーデータ無しと判定された場合(S1303;NO)、処理を終了する。なおダミーデータを含む場合、メッセージは図8のメッセージ801の構造を持つ。   In step S1303, the dummy data removal unit 902 refers to the dummy data identifier in the header and determines whether or not the current message includes dummy data. If it is determined that there is dummy data (S1303; YES), the process proceeds to S1304. On the other hand, if it is determined that there is no dummy data (S1303; NO), the process is terminated. If dummy data is included, the message has the structure of message 801 in FIG.

S1304において、ダミーデータ除去部902は、図8のヘッダ802のデータ長の値を参照してメッセージ801におけるペイロード、すなわちメッセージ301の末尾まで受信したか否かを判定する。メッセージ301の末尾まで受信したと判定された場合(S1304;YES)、S1308へ進む。一方、まだメッセージ301の末尾まで受信していないと判定された場合(S1304;NO)、S1305へ進む。   In step S1304, the dummy data removing unit 902 refers to the data length value of the header 802 in FIG. 8 and determines whether the payload in the message 801, that is, the end of the message 301 has been received. If it is determined that the end of the message 301 has been received (S1304; YES), the process proceeds to S1308. On the other hand, if it is determined that the end of the message 301 has not been received yet (S1304; NO), the process proceeds to S1305.

S1305において、ダミーデータ除去部902は、有線受信部901から受信したビットの値をバッファに保持する。このバッファは、ダミーデータ除去部902の内部に存在し、所定のサイズを持つ。   In step S1305, the dummy data removal unit 902 holds the bit value received from the wired reception unit 901 in the buffer. This buffer exists in the dummy data removal unit 902 and has a predetermined size.

S1306において、ダミーデータ除去部902は、バッファが満杯になったか否かを判定する。バッファが満杯になったと判定された場合(S1306;YES)、S1307へ進む。一方、バッファが満杯になっていないと判定された場合(S1306;NO)、S1304に戻る。   In step S1306, the dummy data removal unit 902 determines whether the buffer is full. If it is determined that the buffer is full (S1306; YES), the process proceeds to S1307. On the other hand, if it is determined that the buffer is not full (S1306; NO), the process returns to S1304.

S1307において、ダミーデータ除去部902は、バッファの内容を無線送信部903へ出力した上でバッファをクリアする。その後、S1304に戻る。   In step S1307, the dummy data removal unit 902 clears the buffer after outputting the buffer contents to the wireless transmission unit 903. Thereafter, the process returns to S1304.

S1308において、ダミーデータ除去部902は、バッファの内容を無線送信部903へ出力するとともにバッファの内容をクリアして終了する。   In step S1308, the dummy data removing unit 902 outputs the buffer contents to the wireless transmission unit 903, clears the buffer contents, and ends the process.

無線送信部903は、ダミーデータ除去部902および応答中継制御部906から入力されたデータを無線で送信する。送信する相手は、無線中継装置600の相手側、すなわち無線中継装置610である。この際、他の無線通信と混信しないように必要に応じて無線通信用のヘッダを付加し、変調処理などを行う。   The wireless transmission unit 903 wirelessly transmits data input from the dummy data removal unit 902 and the response relay control unit 906. The other party of transmission is the other party of the radio relay apparatus 600, that is, the radio relay apparatus 610. At this time, a header for wireless communication is added as necessary so as not to interfere with other wireless communication, and modulation processing or the like is performed.

無線受信部904は、無線中継装置610から無線通信で受信した信号を復調し、有線送信部905に出力する。有線送信部905は、無線受信部904から受信したデータを伝送路200に出力する。   The wireless reception unit 904 demodulates a signal received by wireless communication from the wireless relay device 610 and outputs the demodulated signal to the wired transmission unit 905. The wired transmission unit 905 outputs the data received from the wireless reception unit 904 to the transmission path 200.

応答中継制御部906は、有線送信部905がメッセージを出力した直後に1ビットのCRCデリミタを挟んで出現する9ビットを有線受信部901から取得し、無線送信部903に出力する。この9ビットは、有線送信部905が出力したメッセージに対する応答である。   The response relay control unit 906 acquires 9 bits appearing across the 1-bit CRC delimiter immediately after the wired transmission unit 905 outputs the message from the wired reception unit 901, and outputs the 9 bits to the wireless transmission unit 903. These 9 bits are a response to the message output from the wired transmission unit 905.

応答遅延制御部907は、有線受信部901が受信するメッセージの次のCRCデリミタを検出する。ここで、有線送信部905が、CRCデリミタよりも早いタイミングで無線受信部904から応答を受信している場合は、CRCデリミタの直後に応答を出力するように有線送信部905を制御する。このようなケースは、ダミーデータ付加制御部702によって決定されるダミーデータ長が、無線中継装置600と610における中継遅延時間よりも長い場合に発生する。   The response delay control unit 907 detects the CRC delimiter next to the message received by the wired reception unit 901. Here, when the wired transmission unit 905 receives a response from the wireless reception unit 904 at a timing earlier than the CRC delimiter, the wired transmission unit 905 is controlled to output a response immediately after the CRC delimiter. Such a case occurs when the dummy data length determined by the dummy data addition control unit 702 is longer than the relay delay time in the radio relay apparatuses 600 and 610.

図10を参照して、ダミーデータを含むメッセージが無線中継装置によって中継される様子を説明する。送信ノード(第1の端末)が生成したメッセージ801は、送信側の無線中継装置600のダミーデータ除去部902によって一部除去され、メッセージ301が受信ノード(第2の端末)に届く。また、受信ノードが出力した応答は、送信側および受信側の各無線中継装置によって中継されて送信ノードに届く。図10において、ヘッダ1001は、無線中継装置600の無線送信部903が付加する無線通信用のヘッダである。ペイロード1002は、無線通信のペイロードであり、その中身は、ダミーデータ除去部902によってバッファされた送信データ一回分の内容が変調されたものである。   With reference to FIG. 10, a state in which a message including dummy data is relayed by the wireless relay device will be described. The message 801 generated by the transmission node (first terminal) is partially removed by the dummy data removal unit 902 of the wireless relay device 600 on the transmission side, and the message 301 reaches the reception node (second terminal). The response output by the receiving node is relayed by the transmitting and receiving radio relay apparatuses and reaches the transmitting node. In FIG. 10, a header 1001 is a wireless communication header added by the wireless transmission unit 903 of the wireless relay device 600. The payload 1002 is a payload for wireless communication, and the contents are obtained by modulating the contents of one transmission data buffered by the dummy data removing unit 902.

ここでT2は、メッセージ301が無線中継されることによって生じる遅延時間である。T3は、応答が無線中継されることによって生じる遅延時間である。T4は、ダミーデータとCRCを送信ノードが出力するのに要する時間である。ここで、T4=T2+T3が成り立つ場合には、メッセージ801の末尾と、応答の先頭との間の時間T1はCRCデリミタ1ビットの長さと一致する。このため、送信ノードのダミーデータ付加制御部702は、T4=T2+T3が成り立つようにダミーデータの長さを決定する。例えば、T2が30マイクロ秒、T3が10マイクロ秒で、通信のビットレートが1メガビット毎秒であるとする。CRCは15ビット固定であるため、T4=30+10=40マイクロ秒とするためには、ダミーデータ長を25ビットとする。   Here, T2 is a delay time caused by the message 301 being relayed wirelessly. T3 is a delay time caused by the response being relayed wirelessly. T4 is the time required for the transmission node to output dummy data and CRC. Here, when T4 = T2 + T3 holds, the time T1 between the tail of the message 801 and the head of the response matches the length of the CRC delimiter 1 bit. For this reason, the dummy data addition control unit 702 of the transmission node determines the length of the dummy data so that T4 = T2 + T3 holds. For example, suppose T2 is 30 microseconds, T3 is 10 microseconds, and the communication bit rate is 1 megabit per second. Since the CRC is fixed at 15 bits, the dummy data length is 25 bits in order to set T4 = 30 + 10 = 40 microseconds.

ここで、T2とT3は物理的な伝送遅延に基づく時間であるのに対し、T4はビット長の整数倍でしか設定できない。したがって、端数が出てT4=T2+T3とすることができない場合には、ダミーデータ付加制御部702はT4>T2+T3となるようなT4を選択する。T4>T2+T3の場合であっても、送信側の無線中継装置600の応答遅延制御部907が応答出力のタイミングを遅延させることでT1を1ビット分の長さに調節することができる。   Here, T2 and T3 are times based on physical transmission delay, whereas T4 can be set only by an integer multiple of the bit length. Therefore, when the fraction is not obtained and T4 = T2 + T3 cannot be obtained, the dummy data addition control unit 702 selects T4 such that T4> T2 + T3. Even in the case of T4> T2 + T3, the response delay control unit 907 of the radio relay apparatus 600 on the transmission side can delay the response output timing to adjust T1 to the length of 1 bit.

無線中継装置610は、無線中継装置600と同一の構成である。ただし無線中継装置610の無線通信の相手は無線中継装置600である。   The wireless relay device 610 has the same configuration as the wireless relay device 600. However, the wireless relay device 610 is the counterpart of the wireless communication with the wireless relay device 610.

ハンド制御部611とハンド制御部111との差異は、全体制御部601と全体制御部101との差異と同一である。すなわち、ハンド制御部611は、ハンド制御部111にダミーデータ付加部701とダミーデータ付加制御部702を追加したものである。   The difference between the hand control unit 611 and the hand control unit 111 is the same as the difference between the overall control unit 601 and the overall control unit 101. That is, the hand control unit 611 is obtained by adding a dummy data addition unit 701 and a dummy data addition control unit 702 to the hand control unit 111.

以上のような構成により、全体制御部601から無線中継装置600および無線中継装置610を超えてハンド制御部611にメッセージを送信する場合にも、ハンド制御部611の応答をプロトコルで規定された時間T1後に返すことができる。ハンド制御部611から無線中継装置600および無線中継装置610を超えて全体制御部601にメッセージを送信する場合も同様である。   With the configuration as described above, even when a message is transmitted from the overall control unit 601 to the hand control unit 611 beyond the radio relay device 600 and the radio relay device 610, the response of the hand control unit 611 is determined according to the protocol. Can be returned after T1. The same applies when a message is transmitted from the hand control unit 611 to the overall control unit 601 beyond the radio relay device 600 and the radio relay device 610.

ところで、関節制御部202は、ハンド制御部111と指関節制御部212にメッセージを送信する場合には無線中継装置600、無線中継装置610を経由する必要がある。しかしながら、図11の表1100にあるように、関節制御部202は、ハンド制御部111と指関節制御部212にはメッセージを送信する機会がない。このようなノードにはダミーデータ付加部701とダミーデータ付加制御部702を備える必要がなく、図5の構成のままで良い。関節制御部203と指関節制御部212についても同様に、図5の構成のままで良い。   By the way, when the joint control unit 202 transmits a message to the hand control unit 111 and the finger joint control unit 212, the joint control unit 202 needs to pass through the wireless relay device 600 and the wireless relay device 610. However, as shown in Table 1100 of FIG. 11, the joint control unit 202 has no opportunity to transmit a message to the hand control unit 111 and the finger joint control unit 212. Such a node does not need to include the dummy data addition unit 701 and the dummy data addition control unit 702, and the configuration of FIG. Similarly, the configuration of the joint control unit 203 and the finger joint control unit 212 may be the configuration shown in FIG.

ここで、全体制御部601からハンド制御部611に宛てたメッセージ801は、同じ伝送路200に接続されている関節制御部202、関節制御部203でも受信される。メッセージ801も図3のメッセージ301と同様にプロトコルとして正しい形式であるため、関節制御部202の動作に通信ができなくなる等の影響を与えることはない。すなわち、無線中継装置600、無線中継装置610を超えてメッセージを送信する必要のない関節制御部202は、無線中継装置600、610を追加した場合に一切の変更を加えなくても、従来通り動作する。関節制御部203と指関節制御部212についても同様である。   Here, the message 801 addressed from the overall control unit 601 to the hand control unit 611 is also received by the joint control unit 202 and the joint control unit 203 connected to the same transmission path 200. Since the message 801 is also in the correct format as the protocol like the message 301 in FIG. 3, it does not affect the operation of the joint control unit 202 such that communication cannot be performed. In other words, the joint control unit 202 that does not need to transmit a message beyond the wireless relay device 600 and the wireless relay device 610 operates as usual without adding any changes when the wireless relay devices 600 and 610 are added. To do. The same applies to the joint control unit 203 and the finger joint control unit 212.

したがって、本実施形態によれば、図2の構成で動作していたロボット制御システムは、全体制御部とハンド制御部にダミーデータ付加機能を追加するのみで、図6の構成でも動作させることができる。このような小さな変更のみでアームとハンドの間の通信を無線通信で中継できるため、以下のような無線中継による効果を低コストで得ることができる。まず配線のたわみや重量による制御の誤差が軽減されるため、動作精度を向上させることができる。さらに、可動部に配線を通さないことで配線の寿命を向上させ、メンテナンスのためのコストを低減することができる。また、可動部の配線のねじれに起因する動作制限がなくなり、作業のスループットを向上させることも可能となる。   Therefore, according to the present embodiment, the robot control system operating with the configuration of FIG. 2 can be operated with the configuration of FIG. 6 only by adding the dummy data addition function to the overall control unit and the hand control unit. it can. Since the communication between the arm and the hand can be relayed by wireless communication with only such a small change, the following effects by the wireless relay can be obtained at low cost. First, since control errors due to wiring deflection and weight are reduced, the operation accuracy can be improved. Furthermore, by not passing the wiring through the movable part, the life of the wiring can be improved and the cost for maintenance can be reduced. In addition, there is no operational limitation due to the twisting of the wiring of the movable part, and the work throughput can be improved.

なお、本実施形態では、伝送路200に接続された各ノードがCANの通信プロトコルに準じて通信を行う構成について説明したが、CAN以外の通信プロトコルである場合にも本発明が適用可能である。例えば、応答遅延制御部907においてCRCデリミタを検出する代わりに、メッセージの末尾を検出する。このようにすると、伝送路200に接続された各ノードが、受信メッセージに対して所定時間以内に応答を返すような通信プロトコルで通信する場合にも本発明を適用可能である。さらに、受信ノードが返す応答は、送達確認以外の情報であってもよい。例えば、関節制御部202は、目標角度指示のメッセージを受信したら、その応答として現在の関節の曲げ角度情報を所定時間で返すような構成であっても本発明を適用可能である。   In the present embodiment, the configuration has been described in which each node connected to the transmission path 200 performs communication according to the CAN communication protocol. However, the present invention can also be applied to communication protocols other than CAN. . For example, the response delay control unit 907 detects the end of the message instead of detecting the CRC delimiter. In this way, the present invention can also be applied when each node connected to the transmission line 200 communicates with a communication protocol that returns a response to the received message within a predetermined time. Further, the response returned by the receiving node may be information other than the delivery confirmation. For example, when the joint control unit 202 receives a target angle instruction message, the present invention can be applied even if it is configured to return the current bending angle information of the joint as a response.

(第2実施形態)
第2実施形態は、無線中継装置600および無線中継装置610の内部構成が第1実施形態と異なる点と、全体制御部601およびハンド制御部611のダミーデータ付加制御部702の動作が異なる点を除いて、第1実施形態と同一である。以下、相違点のみ説明する。
(Second Embodiment)
The second embodiment is different from the first embodiment in the internal configuration of the wireless relay device 600 and the wireless relay device 610, and the operation of the dummy data addition control unit 702 of the overall control unit 601 and the hand control unit 611 is different. Except for this, it is the same as the first embodiment. Only the differences will be described below.

図14は、無線中継装置600の内部構成を表す。なお無線中継装置610の内部構成は無線中継装置600と同一である。接続情報保持部1401は、自局と同一のクラスタに所属するノードのアドレスを接続情報として保持する。無線中継装置600の接続情報保持部1401が保持する接続情報を、図15の表1501に示す。図6において、無線中継装置600と同一クラスタに所属するノードは、アドレス「101」と「202」と「203」のノードである。また、無線中継装置600のクラスタをクラスタC0として定義している。表1501は、このような接続情報を表すものである。同様に、無線中継装置610の接続情報保持部1401は、表1502のような接続情報を持つ。   FIG. 14 shows the internal configuration of the wireless relay device 600. Note that the internal configuration of the wireless relay device 610 is the same as that of the wireless relay device 600. The connection information holding unit 1401 holds the address of a node belonging to the same cluster as the own station as connection information. The connection information held by the connection information holding unit 1401 of the wireless relay device 600 is shown in a table 1501 in FIG. In FIG. 6, nodes belonging to the same cluster as the wireless relay device 600 are nodes with addresses “101”, “202”, and “203”. Further, the cluster of the wireless relay device 600 is defined as the cluster C0. A table 1501 represents such connection information. Similarly, the connection information holding unit 1401 of the wireless relay device 610 has connection information as shown in Table 1502.

これら接続情報は、伝送路200において、無線中継装置600と無線中継装置610をどこに接続するか決定した後にユーザが接続情報保持部1401に設定しても良いし、初期通信時に通信で自動的に生成しても良い。例えば、接続情報保持部1401は、初期通信時に宛先アドレス「0」「1」「2」と順番にペイロードが空の接続確認メッセージを送信するよう有線送信部905を制御し、その応答の有無を確認する。応答があったときの宛先アドレスを持つノードが自ノードと同一のクラスタに存在することとなる。このようにして接続情報保持部1401は、表1501または表1502のような接続情報を得ることも可能である。   These connection information may be set in the connection information holding unit 1401 by the user after determining where to connect the wireless relay device 600 and the wireless relay device 610 in the transmission line 200, or automatically by communication during initial communication. It may be generated. For example, the connection information holding unit 1401 controls the wired transmission unit 905 to transmit a connection confirmation message with an empty payload in order of destination addresses “0”, “1”, and “2” during initial communication, and determines whether there is a response. Check. The node having the destination address when there is a response exists in the same cluster as the own node. In this way, the connection information holding unit 1401 can also obtain connection information as shown in Table 1501 or Table 1502.

無線中継装置600と無線中継装置610は、それぞれの接続情報保持部1401が持つ情報を無線通信にて交換し、表1503のような情報を得る。表1503は、表1501と表1502をマージしたものである。   The wireless relay device 600 and the wireless relay device 610 exchange information held by each connection information holding unit 1401 by wireless communication to obtain information as shown in Table 1503. A table 1503 is obtained by merging the table 1501 and the table 1502.

中継時間記憶部1402は、無線中継装置600と無線中継装置610の間でデータを中継する際の中継遅延時間の情報を保持する。具体的には、この時間は図10のT2とT3の和であり、既知の値であるとする。ダミーデータ付加条件生成部1403は、接続情報保持部1401が持つ表1503の情報と、中継時間記憶部1402が保持する中継遅延時間とを合わせて、ダミーデータ付加条件とする。さらにダミーデータ付加条件生成部1403は、生成したダミーデータ付加条件を含んだメッセージを生成し、自局と同一のクラスタに所属するノードアドレスを宛先として送信するように有線送信部905を制御する。送信先を決定するにあたって、無線中継装置600のダミーデータ付加条件生成部1403は表1501の情報を使用する。同様に無線中継装置610のダミーデータ付加条件生成部1403は表1502の情報を用いてダミーデータ付加条件を含むメッセージの送信先を決定する。   The relay time storage unit 1402 holds information on the relay delay time when data is relayed between the wireless relay device 600 and the wireless relay device 610. Specifically, this time is the sum of T2 and T3 in FIG. 10, and is a known value. The dummy data addition condition generation unit 1403 uses the information in the table 1503 held by the connection information holding unit 1401 and the relay delay time held by the relay time storage unit 1402 as the dummy data addition condition. Furthermore, the dummy data addition condition generation unit 1403 generates a message including the generated dummy data addition condition, and controls the wired transmission unit 905 so as to transmit the node address belonging to the same cluster as the own station as a destination. In determining the transmission destination, the dummy data addition condition generation unit 1403 of the wireless relay device 600 uses the information in the table 1501. Similarly, the dummy data addition condition generation unit 1403 of the wireless relay device 610 uses the information in the table 1502 to determine the transmission destination of the message including the dummy data addition condition.

ここで、全体制御部601およびハンド制御部611のダミーデータ付加制御部702は、第2実施形態においては表1200の情報に代えて表1510の情報を初期値として保持している。ダミーデータ付加制御部702は、ダミーデータ付加条件を含んだメッセージを受信した場合は、内部に持つ表1510の情報を、メッセージに含まれる条件に書き換える。図6の構成では表1503の情報が送信されるので、表1510は表1503の内容で書き換えられる。ダミーデータ付加制御部702は、ダミーデータ付加条件を含んだメッセージに含まれる中継遅延時間T2+T3から、第1実施形態と同様の手順でダミーデータの長さを決定する。   Here, the dummy data addition control unit 702 of the overall control unit 601 and the hand control unit 611 holds information in Table 1510 as an initial value in place of the information in Table 1200 in the second embodiment. When the dummy data addition control unit 702 receives a message including the dummy data addition condition, the dummy data addition control unit 702 rewrites the information in the table 1510 held therein to the condition included in the message. In the configuration of FIG. 6, the information in the table 1503 is transmitted, so the table 1510 is rewritten with the contents of the table 1503. The dummy data addition control unit 702 determines the length of the dummy data from the relay delay time T2 + T3 included in the message including the dummy data addition condition in the same procedure as in the first embodiment.

なお、関節制御部202、関節制御部203、指関節制御部212はダミーデータ付加制御部702を持たない。したがってダミーデータ付加条件を含んだメッセージを受信しても特に処理は行わない。   The joint control unit 202, the joint control unit 203, and the finger joint control unit 212 do not have the dummy data addition control unit 702. Therefore, no special processing is performed even if a message including dummy data addition conditions is received.

ここで、無線中継装置600、無線中継装置610を取り去って、一本の伝送路200に全てのノードを接続する構成に戻す場合を考える。このとき、ダミーデータ付加制御部702は、表1510の情報に基づいてダミーデータを付加するか否かを決定することになる。表1510では全てのノードが同一クラスタに所属するため、ダミーデータが付加されることはない。一方、無線中継装置600、無線中継装置610で中継する場合には、ダミーデータ付加制御部702は、表1503の情報に基づいてダミーデータを付加するか否かを決定することになる。この場合、例えば全体制御部601からハンド制御部611にメッセージ送信するときにはダミーデータが付加される。   Here, a case will be considered in which the wireless relay device 600 and the wireless relay device 610 are removed and the configuration is such that all nodes are connected to one transmission line 200. At this time, the dummy data addition control unit 702 determines whether or not to add dummy data based on the information in Table 1510. In Table 1510, since all nodes belong to the same cluster, dummy data is not added. On the other hand, when relaying is performed by the wireless relay device 600 and the wireless relay device 610, the dummy data addition control unit 702 determines whether or not to add dummy data based on the information in the table 1503. In this case, for example, when a message is transmitted from the overall control unit 601 to the hand control unit 611, dummy data is added.

すなわち、第2実施形態によれば、無線中継装置600、無線中継装置610を使用する場合と使用しない場合とで、同一の全体制御部601が使用可能となる。さらに、無線中継装置600、無線中継装置610が挿入される位置が変更されたり、ノードが増減する等してクラスタ構成が変化した場合にも、そのクラスタ構成に合わせて表1503が設定される。このため、無線中継の有無やクラスタ構成によらずに、同一の全体制御部601が使用可能である。ハンド制御部611についても同じことが言える。したがって、無線中継の有無やクラスタ構成が変化するたびに、伝送路200に接続されているノードの処理を変更する必要がなく、無線中継対応のための作業コストを低減することができる。   That is, according to the second embodiment, the same overall control unit 601 can be used when the wireless relay device 600 and the wireless relay device 610 are used and when not used. Further, even when the position where the wireless relay device 600 and the wireless relay device 610 are inserted is changed, or when the cluster configuration changes due to increase or decrease of the nodes, the table 1503 is set according to the cluster configuration. For this reason, the same overall control unit 601 can be used regardless of the presence / absence of wireless relay and the cluster configuration. The same can be said for the hand control unit 611. Therefore, it is not necessary to change the processing of the node connected to the transmission path 200 every time the presence / absence of the wireless relay or the cluster configuration is changed, and the work cost for the wireless relay can be reduced.

(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
(Other embodiments)
The present invention can also be realized by executing the following processing. That is, software (program) that realizes the functions of the above-described embodiments is supplied to a system or apparatus via a network or various storage media, and a computer (or CPU, MPU, or the like) of the system or apparatus reads the program. It is a process to be executed.

Claims (11)

バス型ネットワークに接続された第1の端末と、他のバス型ネットワークに接続された第2の端末と、前記第1の端末と前記第2の端末との通信を中継する中継装置とを備える通信システムであって、
前記第1の端末は、
送信すべきデータにダミーデータを付加するダミーデータ付加手段と、
前記中継装置を介して送信するデータに前記ダミーデータを付加するように前記ダミーデータ付加手段を制御するダミーデータ付加制御手段と、を備え、
前記第2の端末は、
前記第1の端末からデータを受信してから所定時間で応答する応答手段を備え、
前記中継装置は、
前記第1の端末から前記第2の端末へ送信されるデータに付加されている前記ダミーデータを除去して中継を行うダミーデータ除去手段を備えることを特徴とする通信システム。
A first terminal connected to the bus network; a second terminal connected to another bus network; and a relay device that relays communication between the first terminal and the second terminal. A communication system,
The first terminal is
Dummy data adding means for adding dummy data to data to be transmitted;
Dummy data addition control means for controlling the dummy data addition means so as to add the dummy data to the data transmitted through the relay device,
The second terminal is
Response means for responding in a predetermined time after receiving data from the first terminal;
The relay device is
A communication system comprising dummy data removing means for removing the dummy data added to data transmitted from the first terminal to the second terminal and performing relaying.
前記ダミーデータ付加手段は、前記中継装置がデータを中継するために要する中継遅延時間に基づいて前記ダミーデータの長さを決定して、当該ダミーデータを付加することを特徴とする請求項1に記載の通信システム。   The dummy data adding means determines the length of the dummy data based on a relay delay time required for the relay device to relay data, and adds the dummy data. The communication system described. 前記応答手段は、正しくデータを受信したか否かを送信元に通知するための送達確認情報を応答することを特徴とする請求項1または2に記載の通信システム。   The communication system according to claim 1, wherein the response unit responds with delivery confirmation information for notifying a transmission source whether or not data has been correctly received. 前記ダミーデータ付加手段は、前記送信すべきデータに、ダミーデータ付加の有無を示す情報を付加することを特徴とする請求項1乃至3の何れか1項に記載の通信システム。   The communication system according to any one of claims 1 to 3, wherein the dummy data adding means adds information indicating presence / absence of dummy data addition to the data to be transmitted. 前記中継装置は、前記ダミーデータが付加されていないデータを中継しないことを特徴とする請求項4に記載の通信システム。   The communication system according to claim 4, wherein the relay device does not relay data to which the dummy data is not added. バス型ネットワークに接続された通信装置であって、
送信すべきデータにダミーデータを付加するダミーデータ付加手段と、
他のバス型ネットワークに接続された他の通信装置へ、中継装置を介して送信するデータに前記ダミーデータを付加するように前記ダミーデータ付加手段を制御するダミーデータ付加制御手段と、
を備えることを特徴とする通信装置。
A communication device connected to a bus network,
Dummy data adding means for adding dummy data to data to be transmitted;
Dummy data addition control means for controlling the dummy data adding means so as to add the dummy data to data transmitted via a relay device to another communication device connected to another bus type network;
A communication apparatus comprising:
バス型ネットワークに接続された第1の端末から、他のバス型ネットワークに接続された第2の端末へ送信されるデータを中継する中継装置であって、
前記第1の端末により前記データに付加されたダミーデータを除去して中継を行うダミーデータ除去手段を備えることを特徴とする中継装置。
A relay device that relays data transmitted from a first terminal connected to a bus network to a second terminal connected to another bus network,
A relay apparatus comprising dummy data removing means for removing dummy data added to the data by the first terminal and relaying the dummy data.
バス型ネットワークに接続された通信装置の制御方法であって、
送信すべきデータにダミーデータを付加するダミーデータ付加工程と、
他のバス型ネットワークに接続された他の通信装置へ、中継装置を介して送信するデータに前記ダミーデータを付加するように制御するダミーデータ付加制御工程と、
を有することを特徴とする通信装置の制御方法。
A method for controlling a communication device connected to a bus network,
A dummy data adding step for adding dummy data to the data to be transmitted;
A dummy data addition control step for controlling to add the dummy data to the data transmitted via the relay device to another communication device connected to another bus type network;
A method for controlling a communication apparatus, comprising:
バス型ネットワークに接続された第1の端末から、他のバス型ネットワークに接続された第2の端末へ送信されるデータを中継する中継装置の制御方法であって、
前記第1の端末により前記データに付加されたダミーデータを除去して中継を行うダミーデータ除去工程を有することを特徴とする中継装置の制御方法。
A control method for a relay device that relays data transmitted from a first terminal connected to a bus network to a second terminal connected to another bus network,
A method for controlling a relay apparatus, comprising: a dummy data removing step of performing relay by removing dummy data added to the data by the first terminal.
請求項8に記載の通信装置の制御方法の各工程をコンピュータに実行させるためのプログラム。   The program for making a computer perform each process of the control method of the communication apparatus of Claim 8. 請求項9に記載の中継装置の制御方法の工程をコンピュータに実行させるためのプログラム。   The program for making a computer perform the process of the control method of the relay apparatus of Claim 9.
JP2012104882A 2012-05-01 2012-05-01 Communication system, communication device, relay device, communication device control method, relay device control method and program Pending JP2013232847A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012104882A JP2013232847A (en) 2012-05-01 2012-05-01 Communication system, communication device, relay device, communication device control method, relay device control method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012104882A JP2013232847A (en) 2012-05-01 2012-05-01 Communication system, communication device, relay device, communication device control method, relay device control method and program

Publications (1)

Publication Number Publication Date
JP2013232847A true JP2013232847A (en) 2013-11-14

Family

ID=49678916

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012104882A Pending JP2013232847A (en) 2012-05-01 2012-05-01 Communication system, communication device, relay device, communication device control method, relay device control method and program

Country Status (1)

Country Link
JP (1) JP2013232847A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9692731B2 (en) * 2015-10-07 2017-06-27 International Business Machines Corporation Anonymization of traffic patterns over communication networks

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9692731B2 (en) * 2015-10-07 2017-06-27 International Business Machines Corporation Anonymization of traffic patterns over communication networks
US9866532B2 (en) 2015-10-07 2018-01-09 International Business Machines Corporation Anonymization of traffic patterns over communication networks
US10057146B2 (en) 2015-10-07 2018-08-21 International Business Machines Corporation Anonymization of traffic patterns over communication networks
US10178004B2 (en) * 2015-10-07 2019-01-08 International Business Machines Corporation Anonymization of traffic patterns over communication networks
US10193776B2 (en) * 2015-10-07 2019-01-29 International Business Machines Corporation Anonymization of traffic patterns over communication networks
US10250472B2 (en) 2015-10-07 2019-04-02 International Business Machines Corporation Anonymization of traffic patterns over communication networks
US10277486B2 (en) 2015-10-07 2019-04-30 International Business Machines Corporation Anonymization of traffic patterns over communication networks
US10298473B2 (en) 2015-10-07 2019-05-21 International Business Machines Corporation Anonymization of traffic patterns over communication networks

Similar Documents

Publication Publication Date Title
EP2157823B1 (en) Wireless communication device, method, and program
JP6500123B2 (en) In-vehicle gateway device and in-vehicle network system
JP2009147786A (en) Communication device, data frame transmission control method, and program
CN104683130B (en) A kind of method and apparatus of configuring stacking port
JP5063655B2 (en) Communication gateway device
CN112887277B (en) Conversion method and device of field bus and Ethernet and computer storage medium
JP2013232847A (en) Communication system, communication device, relay device, communication device control method, relay device control method and program
CN114868347B (en) Redundancy control for data traffic over a wireless link
JP2014158241A (en) Data communication device and data communication method
JP4923780B2 (en) COMMUNICATION DEVICE, COMMUNICATION SYSTEM, AND COMMUNICATION METHOD
WO2024024280A1 (en) Communication processing device and communication method
JP5699985B2 (en) TCP communication acceleration device
CN107046493A (en) Communication means and device
JP4581925B2 (en) Data transfer apparatus and data transfer method
CN114788248B (en) Method and system for cyclically transmitting data between communication participants on a data transmission channel
JP2019165317A (en) Communication device, communication method and communication program
WO2015040833A1 (en) Communication device and control method of communication device
JP5403035B2 (en) COMMUNICATION DEVICE, COMMUNICATION SYSTEM, AND COMMUNICATION METHOD
CN103338124B (en) The processing method of abnormal chain scission, device and system
JP5223582B2 (en) Message transmission apparatus and message transmission method
JP5320571B2 (en) Internode data response system
JP2015103926A (en) Communication device, communication method, and program
JP4655868B2 (en) First data receiving / transmitting device, receiving device, second data receiving / transmitting device, data receiving / transmitting system, and data receiving / transmitting method
JP2010041498A (en) Packet creating apparatus, and packet creating method
CN113162866A (en) Message transmission method, communication equipment and medium