JP6938716B2 - Wireless systems, wireless devices, communication programs, and communication methods - Google Patents
Wireless systems, wireless devices, communication programs, and communication methods Download PDFInfo
- Publication number
- JP6938716B2 JP6938716B2 JP2020082697A JP2020082697A JP6938716B2 JP 6938716 B2 JP6938716 B2 JP 6938716B2 JP 2020082697 A JP2020082697 A JP 2020082697A JP 2020082697 A JP2020082697 A JP 2020082697A JP 6938716 B2 JP6938716 B2 JP 6938716B2
- Authority
- JP
- Japan
- Prior art keywords
- connection
- communication
- ble
- terminal
- ble terminal
- 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.)
- Active
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Description
本発明は、複数の機器と通信を行うことが可能な無線システム、無線機器、通信プログラム、および通信方法に関する。 The present invention relates to a wireless system, a wireless device, a communication program, and a communication method capable of communicating with a plurality of devices.
従来より、近距離での無線通信を行う機器が存在する(例えば、特許文献1)。例えば、Bluetooth(登録商標)規格による通信では、ある機器がマスターとなり別の機器がスレーブとなって1つのネットワークを構成し通信が行われる。 Conventionally, there are devices that perform wireless communication over a short distance (for example, Patent Document 1). For example, in communication according to the Bluetooth (registered trademark) standard, one device becomes a master and another device becomes a slave to form one network and perform communication.
しかしながら、従来の無線通信においては、ある機器と接続された状態の機器が、様々な機器と通信を行うということに関して改善の余地があった。 However, in the conventional wireless communication, there is room for improvement in that a device connected to a certain device communicates with various devices.
それ故、本発明の目的は、様々な機器と通信をすることが可能な技術を提供することである。 Therefore, an object of the present invention is to provide a technique capable of communicating with various devices.
本発明は、上記の課題を解決するために、以下の構成を採用した。 The present invention has adopted the following configuration in order to solve the above problems.
本発明の一例は、無線通信を行うことが可能な複数の機器を含む無線システムであって、前記無線システムは、第1の機器と、第2の機器と、第3の機器と、第4の機器とを含む。前記第1の機器及び前記第2の機器は、前記第1の機器をマスターとし、前記第2の機器をスレーブとして、前記第1の機器と前記第2の機器との間で接続を確立して無線通信を行う。前記第4の機器及び前記第3の機器は、前記第4の機器をマスターとし、前記第3の機器をスレーブとして、前記第4の機器と前記第3の機器との間で接続を確立して無線通信を行う。前記第2の機器は、スレーブとして前記第1の機器と接続された状態で、スレーブとして前記第4の機器と接続された状態の前記第3の機器と無線通信を行う。 An example of the present invention is a wireless system including a plurality of devices capable of performing wireless communication, wherein the wireless system includes a first device, a second device, a third device, and a fourth device. Including equipment. The first device and the second device establish a connection between the first device and the second device by using the first device as a master and the second device as a slave. To perform wireless communication. The fourth device and the third device establish a connection between the fourth device and the third device by using the fourth device as a master and the third device as a slave. To perform wireless communication. The second device wirelessly communicates with the third device in a state of being connected to the first device as a slave and in a state of being connected to the fourth device as a slave.
上記によれば、第1の機器のスレーブとして動作している第2の機器は、第4の機器のスレーブとして動作している第3の機器と通信を行うことができる。 According to the above, the second device operating as a slave of the first device can communicate with the third device operating as a slave of the fourth device.
ここで、「接続を確立する」とは、一方の機器から他方の機器に対して接続のために必要となる情報が送信されて情報がやり取りされた後に接続された状態(接続状態)になることを意味する。接続された状態では、接続が確立される際にやり取りされた情報に基づいて、2つの機器は通信を行う。 Here, "establishing a connection" means that one device transmits information necessary for connection to the other device, and after the information is exchanged, the connected state (connection state) is established. Means that. In the connected state, the two devices communicate based on the information exchanged when the connection is established.
一実施形態では、前記第2の機器は、データをブロードキャスト又はマルチキャストで無線で送信する送信手段と、ブロードキャスト又はマルチキャストで送信されたデータを無線で受信する受信手段と、を有してもよい。第2の機器は、前記送信手段による送信処理と前記受信手段による受信処理とをスレーブとして前記第1の機器と接続された状態で実行することにより、スレーブとして前記第4の機器と接続された状態の前記第3の機器と通信を行う。 In one embodiment, the second device may include transmitting means for wirelessly transmitting data by broadcast or multicast and receiving means for wirelessly receiving data transmitted by broadcast or multicast. The second device is connected to the fourth device as a slave by executing the transmission process by the transmission means and the reception process by the reception means in a state of being connected to the first device as a slave. Communicate with the third device in the state.
上記によれば、第1の機器のスレーブとして動作している第2の機器は、ブロードキャストでデータを送受信することによって、第4の機器のスレーブとして動作している第3の機器と通信することができる。 According to the above, the second device operating as a slave of the first device communicates with the third device operating as a slave of the fourth device by transmitting and receiving data by broadcasting. Can be done.
ここで、「ブロードキャスト」は、不特定の機器(通信可能な範囲にある全ての機器)に対するブロードキャスト、及び、限定された不特定の機器に対するブロードキャストを含む。「限定された不特定の機器」とは、機器を唯一に特定しないものの(機器に割り当てられた固有のアドレスを特定しないものの)、共通の属性を持った機器又は共通の状態にある機器である。 Here, "broadcast" includes a broadcast to an unspecified device (all devices within a communicable range) and a broadcast to a limited unspecified device. A "limited unspecified device" is a device that does not uniquely identify a device (although it does not specify a unique address assigned to the device), but has common attributes or is in a common state. ..
一実施形態では、前記第2の機器は、前記第3の機器と接続していない状態で、スレーブとして前記第4の機器と接続された状態の前記第3の機器との間で無線通信によって所定のデータの送信又は受信を行ってもよい。 In one embodiment, the second device is not connected to the third device, but is connected to the fourth device as a slave by wireless communication with the third device. Predetermined data may be transmitted or received.
上記によれば、第2の機器は、第3の機器と接続せずに、第4の機器のスレーブとして動作している第3の機器と通信を行うことができる。 According to the above, the second device can communicate with the third device operating as a slave of the fourth device without connecting to the third device.
一実施形態では、前記第2の機器は、前記所定のデータとして、アプリケーションにおいて利用されるデータの送信又は受信を行ってもよい。 In one embodiment, the second device may transmit or receive data used in the application as the predetermined data.
一実施形態では、前記第2の機器は、前記所定のデータとして、ゲームにおいて利用されるデータの送信又は受信を行ってもよい。 In one embodiment, the second device may transmit or receive data used in the game as the predetermined data.
一実施形態では、前記第2の機器は、前記所定のデータとして、アプリケーションで再生されるコンテンツに関するデータの送信又は受信を行ってもよい。 In one embodiment, the second device may transmit or receive data related to the content played by the application as the predetermined data.
上記によれば、アプリケーション(ゲームを含む)において利用されるデータ、アプリケーションで再生されるコンテンツ(例えば、画像や音声等)に関するデータを、第2の機器と第3の機器との間でやり取りすることができる。すなわち、スレーブとして第1の機器と接続されている第2の機器は、スレーブとして第4の機器と接続されている第3の機器と、上記データを送信及び/又は受信することができる。 According to the above, the data used in the application (including the game) and the data related to the content (for example, image, sound, etc.) played by the application are exchanged between the second device and the third device. be able to. That is, the second device connected to the first device as a slave can transmit and / or receive the above data with the third device connected to the fourth device as a slave.
一実施形態では、前記第2の機器は、前記第1の機器と接続している状態で、前記送信手段による送信処理と前記受信手段による受信処理とを繰り返し実行することにより、スレーブとして前記第4の機器と接続された状態の前記第3の機器と接続を確立せずに無線通信を行ってもよい。 In one embodiment, the second device acts as a slave by repeatedly executing the transmission process by the transmission means and the reception process by the reception means in a state of being connected to the first device. Wireless communication may be performed without establishing a connection with the third device in a state of being connected to the device of 4.
上記によれば、第2の機器は、第3の機器と接続を確立せずに通信を行うことができる。 According to the above, the second device can communicate with the third device without establishing a connection.
一実施形態では、前記ブロードキャスト又はマルチキャストで送信されるデータは、他の機器と接続を確立するためのデータであってもよい。 In one embodiment, the broadcast or multicast data may be data for establishing a connection with another device.
上記によれば、ブロードキャスト又はマルチキャストデータを送信することにより他の機器と接続を確立することができる。 According to the above, it is possible to establish a connection with other devices by transmitting broadcast or multicast data.
一実施形態では、スレーブとして前記第1の機器と接続された状態の前記第2の機器は、スレーブとして前記第4の機器と接続された状態の前記第3の機器との間で接続を確立し、当該接続を維持した状態で、前記第3の機器と無線通信を行ってもよい。 In one embodiment, the second device, which is connected to the first device as a slave, establishes a connection with the third device, which is connected to the fourth device as a slave. Then, wireless communication may be performed with the third device while maintaining the connection.
上記によれば、スレーブとして前記第1の機器と接続された状態の第2の機器は、スレーブとして前記第4の機器と接続された状態の第3の機器と接続を確立して通信することができる。 According to the above, the second device in the state of being connected to the first device as a slave establishes a connection with the third device in the state of being connected to the fourth device as a slave and communicates. Can be done.
一実施形態では、スレーブとして前記第1の機器と接続された状態の前記第2の機器は、スレーブとして前記第4の機器と接続された状態の前記第3の機器との間で接続を確立し、当該接続を切断することなく、前記第3の機器と無線通信を行ってもよい。 In one embodiment, the second device, which is connected to the first device as a slave, establishes a connection with the third device, which is connected to the fourth device as a slave. However, wireless communication may be performed with the third device without disconnecting the connection.
上記によれば、スレーブとして前記第1の機器と接続された状態の第2の機器は、スレーブとして前記第4の機器と接続された状態の第3の機器と接続を確立して通信することができる。 According to the above, the second device in the state of being connected to the first device as a slave establishes a connection with the third device in the state of being connected to the fourth device as a slave and communicates. Can be done.
一実施形態では、前記第2の機器は、前記第1の機器と接続している状態で、前記送信手段による送信処理と前記受信手段による受信処理とを繰り返し実行することにより、前記第2の機器の周囲にある他の機器と無線通信を行ってもよい。 In one embodiment, the second device is connected to the first device, and the second device is connected to the first device by repeatedly executing the transmission process by the transmission means and the reception process by the reception means. Wireless communication may be performed with other devices around the device.
上記によれば、第2の機器は、第1の機器と接続している状態で、ブロードキャストによる送信処理及び受信処理を繰り返し行うことで自機の周辺にある他の機器と通信をすることができる。 According to the above, the second device can communicate with other devices in the vicinity of the own device by repeatedly performing transmission processing and reception processing by broadcasting while connected to the first device. can.
一実施形態では、前記第2の機器は、前記送信手段による送信処理と前記受信手段による受信処理とを繰り返し実行することにより、前記第2の機器の周囲にある他の機器を探索し、当該探索によって検出した、スレーブとして前記第4の機器と接続された状態の前記第3の機器との間で接続を確立してもよい。 In one embodiment, the second device searches for other devices around the second device by repeatedly executing the transmission process by the transmission means and the reception process by the reception means. A connection may be established between the third device in a state of being connected to the fourth device as a slave detected by the search.
上記によれば、第2の機器は、第1の機器と接続している状態で、ブロードキャストによる送信処理及び受信処理を繰り返し行うことで第3の機器を探索し、スレーブとして前記第4の機器と接続された状態の第3の機器と接続を確立することができる。 According to the above, the second device searches for the third device by repeatedly performing transmission processing and reception processing by broadcasting in a state of being connected to the first device, and the fourth device as a slave. It is possible to establish a connection with a third device in a state of being connected to.
一実施形態では、前記送信処理の実行期間、前記送信処理を実行するタイミング、前記受信処理の実行期間、及び、前記受信処理の実行するタイミングのうち少なくとも何れかは可変であってもよい。 In one embodiment, at least one of the execution period of the transmission process, the timing of executing the transmission process, the execution period of the reception process, and the timing of executing the reception process may be variable.
一実施形態では、前記送信処理の実行期間、前記送信処理を実行するタイミング、前記受信処理の実行期間、及び、前記受信処理の実行するタイミングのうち少なくとも何れかはランダムに設定されてもよい。 In one embodiment, at least one of the execution period of the transmission process, the timing of executing the transmission process, the execution period of the reception process, and the timing of executing the reception process may be randomly set.
上記によれば、送信処理及び受信処理が繰り返し行われることにより、例えば、一方の機器の送信タイミングと、他方の機器の受信タイミングとが合うようにすることができる。 According to the above, by repeating the transmission process and the reception process, for example, the transmission timing of one device and the reception timing of the other device can be matched.
一実施形態では、前記第2の機器は、前記送信処理および前記受信処理を交互に繰り返し実行してもよい。ここでの「送信処理および受信処理を交互に繰り返し実行する」場合には、送信処理と受信処理との間に休止期間を挟んで、送信処理と受信処理とが交互に行われてもよい。 In one embodiment, the second device may alternately and repeatedly execute the transmission process and the reception process. In the case of "performing the transmission process and the reception process alternately and repeatedly" here, the transmission process and the reception process may be alternately performed with a pause period between the transmission process and the reception process.
上記によれば、例えば、一方の機器の送信タイミングと、他方の機器の受信タイミングとが合うまでの時間を短縮することができる。 According to the above, for example, it is possible to shorten the time until the transmission timing of one device and the reception timing of the other device match.
一実施形態では、前記送信処理と前記受信処理との間、前記送信処理と前記送信処理との間、および、前記受信処理と前記受信処理との間の少なくとも何れかには、前記送信処理および前記受信処理の何れも行われないスリープ期間が存在してもよい。 In one embodiment, the transmission process and the transmission process and at least one of the transmission process and the reception process, the transmission process and the transmission process, and the reception process and the reception process are performed. There may be a sleep period in which none of the reception processes is performed.
上記によれば、前記送信処理および前記受信処理の何れも行われないスリープ期間が設けられるため、消費電力を抑えることができる。 According to the above, since a sleep period in which neither the transmission process nor the reception process is performed is provided, power consumption can be suppressed.
一実施形態では、前記スリープ期間は可変であってもよい。 In one embodiment, the sleep period may be variable.
一実施形態では、前記スリープ期間はランダムに設定されてもよい。 In one embodiment, the sleep period may be set randomly.
上記によれば、送信処理及び受信処理が繰り返し行われることにより、例えば、一方の機器の送信タイミングと、他方の機器の受信タイミングとが合うようにすることができる。 According to the above, by repeating the transmission process and the reception process, for example, the transmission timing of one device and the reception timing of the other device can be matched.
一実施形態では、前記第2の機器は、前記第1の機器からの指示なしで、スレーブとして前記第4の機器と接続された状態の前記第3の機器と無線通信を行ってもよい。 In one embodiment, the second device may perform wireless communication with the third device in a state of being connected to the fourth device as a slave without instructions from the first device.
上記によれば、第2の機器は、第1の機器からの指示無しで、第3の機器と通信をすることができる。 According to the above, the second device can communicate with the third device without any instruction from the first device.
一実施形態では、前記第1の機器と前記第2の機器とは、前記第1の機器と前記第2の機器が接続された状態において、同期通信を繰り返し行ってもよい。 In one embodiment, the first device and the second device may repeatedly perform synchronous communication in a state where the first device and the second device are connected.
上記によれば、第1の機器と第2の機器とは、接続された状態において同期して通信を行う。すなわち、送信側と受信側とでタイミングを合わせて通信が行われる。これにより、効率的に通信を行うことができるとともに、両方の機器を受信状態でも送信状態でもない状態にする期間を設けることで消費電力を抑えることができる。 According to the above, the first device and the second device communicate in synchronization in a connected state. That is, communication is performed at the same timing on the transmitting side and the receiving side. As a result, communication can be performed efficiently, and power consumption can be suppressed by providing a period in which both devices are neither in the receiving state nor in the transmitting state.
一実施形態では、前記無線システムは、前記第1の機器と前記第2の機器との接続のための許容期間を設定する許容期間設定手段を含んでもよい。前記第2の機器は、前記第1の機器と接続された状態において、前記許容期間に基づいて、前記第1の機器との前記同期通信を実行すべきか否かを判定する判定手段を有してもよい。 In one embodiment, the wireless system may include a permissible period setting means for setting a permissible period for connection between the first device and the second device. The second device has a determination means for determining whether or not to execute the synchronous communication with the first device based on the permissible period in a state of being connected to the first device. You may.
上記によれば、第1の機器と第2の機器との間の接続には許容期間が設けられる。このため、例えば、第2の機器は、第1の機器との同期通信を行わないようにすることができ、必ず同期通信を行わなければならない場合と比べて、第2の機器の消費電力を抑えることができる。 According to the above, an allowable period is provided for the connection between the first device and the second device. Therefore, for example, the second device can be prevented from performing synchronous communication with the first device, and the power consumption of the second device can be reduced as compared with the case where synchronous communication must always be performed. It can be suppressed.
ここで、「許容期間」とは、時間を意味してもよいし、第2の機器と通信を行わなくてもよい回数を意味してもよい。 Here, the "allowable period" may mean time, or may mean the number of times that communication with the second device does not have to be performed.
一実施形態では、前記第1の機器は、前記許容期間設定手段を有してもよい。 In one embodiment, the first device may have the permissible period setting means.
上記によれば、第1の機器が許容期間を設定することができる。 According to the above, the first device can set the allowable period.
一実施形態では、前記第2の機器は、前記第1の機器と接続された状態で前記許容期間を変更するための変更要求を送信する許容期間変更手段を有してもよい。 In one embodiment, the second device may have a permissible period changing means for transmitting a change request for changing the permissible period while connected to the first device.
上記によれば、第2の機器は許容期間の変更を第1の機器に対して要求することができる。 According to the above, the second device can request the first device to change the permissible period.
一実施形態では、前記第1の機器は、前記第2の機器と接続された状態において、前記同期通信として所定の時間間隔で所定のデータを繰り返し前記第2の機器に送信してもよい。前記第2の機器は、前記第1の機器から所定の時間間隔で送信される前記所定のデータを受信したことに応じて、前記第1の機器に対して応答を返してもよい。前記許容期間設定手段は、前記許容期間として、前記応答の回数を設定し、前記第2の機器は、前記第1の機器に前記応答返さない回数が、前記許容期間設定手段によって設定された回数を超える又は前記許容期間設定手段によって設定された回数に達する場合には、前記第1の機器に対して前記応答を返してもよい。 In one embodiment, the first device may repeatedly transmit predetermined data to the second device at predetermined time intervals as the synchronous communication in a state of being connected to the second device. The second device may return a response to the first device in response to receiving the predetermined data transmitted from the first device at predetermined time intervals. The permissible period setting means sets the number of times of the response as the permissible period, and the second device does not return the response to the first device the number of times set by the permissible period setting means. When the number of times exceeds or reaches the number of times set by the permissible period setting means, the response may be returned to the first device.
上記によれば、第2の機器は、第1の機器に応答を返さないようにすることができるため消費電力を抑えることができるとともに、第1の機器との接続が解除されるリスクを回避することができる。 According to the above, since the second device can prevent the response from returning to the first device, the power consumption can be suppressed and the risk of disconnection from the first device can be avoided. can do.
一実施形態では、前記第2の機器は、前記許容期間においてスレーブとして前記第4の機器と接続された状態の前記第3の機器と無線通信を行ってもよい。 In one embodiment, the second device may perform wireless communication with the third device in a state of being connected to the fourth device as a slave during the permissible period.
上記によれば、第2の機器は、第1の機器との接続を維持しつつ第3の機器と通信することができる。 According to the above, the second device can communicate with the third device while maintaining the connection with the first device.
一実施形態では、前記第2の機器は、データをブロードキャスト又はマルチキャストで無線で送信する送信手段と、ブロードキャスト又はマルチキャストで送信されたデータを無線で受信する受信手段と、を有してもよい。第2の機器は、前記許容期間において、前記送信手段による送信処理と前記受信手段による受信処理とを繰り返し実行することにより、スレーブとして前記第4の機器と接続された状態の前記第3の機器と無線通信を行ってもよい。 In one embodiment, the second device may include transmitting means for wirelessly transmitting data by broadcast or multicast and receiving means for wirelessly receiving data transmitted by broadcast or multicast. The second device is the third device in a state of being connected to the fourth device as a slave by repeatedly executing the transmission process by the transmission means and the reception process by the reception means during the permissible period. You may perform wireless communication with.
上記によれば、第2の機器は、上記許容期間において第3の機器と通信することができ、第1の機器との接続を維持したまま、第3の機器と通信することができる。 According to the above, the second device can communicate with the third device within the allowable period, and can communicate with the third device while maintaining the connection with the first device.
一実施形態では、前記第2の機器は、前記許容期間において、スレーブとして前記第4の機器と接続された状態の前記第3の機器との間で接続を確立し、当該第3の機器と接続した状態で、前記第3の機器と無線通信を行ってもよい。 In one embodiment, the second device establishes a connection with the third device in a state of being connected to the fourth device as a slave during the allowable period, and with the third device. In the connected state, wireless communication may be performed with the third device.
上記によれば、第2の機器は、上記許容期間において第3の機器と通信することができ、第1の機器との接続を維持したまま、第3の機器と接続して通信することができる。 According to the above, the second device can communicate with the third device within the above allowable period, and can communicate with the third device while maintaining the connection with the first device. can.
一実施形態では、前記第2の機器は、前記第1の機器と前記第2の機器との間の同期通信が行われるタイミングとは異なるタイミングで、スレーブとして前記第4の機器と接続された状態の前記第3の機器と無線通信を行ってもよい。 In one embodiment, the second device is connected to the fourth device as a slave at a timing different from the timing at which synchronous communication between the first device and the second device is performed. Wireless communication may be performed with the third device in the state.
上記によれば、第2の機器は、第1の機器と同期通信を行うタイミング以外のタイミングで、第3の機器と通信をすることができ、例えば、第1の機器との接続を維持しつつ、第3の機器と通信することができる。 According to the above, the second device can communicate with the third device at a timing other than the timing of performing synchronous communication with the first device, for example, maintaining the connection with the first device. At the same time, it is possible to communicate with the third device.
一実施形態では、前記第1の機器と前記第2の機器とは、同期通信を繰り返し行い、前記第4の機器と前記第3の機器とは、同期通信を繰り返し行ってもよい。 In one embodiment, the first device and the second device may repeatedly perform synchronous communication, and the fourth device and the third device may repeatedly perform synchronous communication.
上記によれば、第1の機器及び第2の機器は同期通信を行い、第3の機器及び第4の機器は同期通信を行うことができる。これにより、例えば、各機器の通信を効率的に行うとともに消費電力を抑えることができる。 According to the above, the first device and the second device can perform synchronous communication, and the third device and the fourth device can perform synchronous communication. Thereby, for example, communication of each device can be performed efficiently and power consumption can be suppressed.
一実施形態では、無線通信システムは、前記第1の機器と前記第2の機器との間の同期通信と、前記第4の機器と前記第3の機器との間の同期通信と、のうちの少なくとも何れか一方の同期通信のタイミングを調整する調整手段をさらに備えてもよい。 In one embodiment, the wireless communication system comprises synchronous communication between the first device and the second device and synchronous communication between the fourth device and the third device. Further, adjustment means for adjusting the timing of synchronous communication of at least one of the above may be provided.
上記によれば、前記第1の機器と前記第2の機器との間の同期通信のタイミングと、前記第4の機器と前記第3の機器との間の同期通信のタイミングとを調整することができる。 According to the above, the timing of the synchronous communication between the first device and the second device and the timing of the synchronous communication between the fourth device and the third device are adjusted. Can be done.
一実施形態では、前記第2の機器が前記調整手段を備えてもよい。 In one embodiment, the second device may include the adjusting means.
上記によれば、第2の機器が上記同期通信のタイミングを調整することができる。 According to the above, the second device can adjust the timing of the synchronous communication.
一実施形態では、前記調整手段は、前記第1の機器と前記第2の機器との間の同期通信のタイミングと、前記第4の機器と前記第3の機器との間の同期通信のタイミングと、が近くなるように調整してもよい。 In one embodiment, the adjusting means includes the timing of synchronous communication between the first device and the second device, and the timing of synchronous communication between the fourth device and the third device. And may be adjusted so that they are close to each other.
上記によれば、前記第1の機器と前記第2の機器との間の同期通信のタイミングと、前記第4の機器と前記第3の機器との間の同期通信のタイミングとが近くなるように調整することができる。これにより、第2の機器と第3の機器との間の通信を効率的に行うことができる。すなわち、2つの同期通信のタイミングを合わせることにより、第2の機器が第1の機器と同期通信を行っていない期間と、第3の機器が第4の機器と同期通信を行っていない期間とを重複させることができる。この重複した期間において、第2の機器と第3の機器とは通信を行うことができる。 According to the above, the timing of the synchronous communication between the first device and the second device and the timing of the synchronous communication between the fourth device and the third device are close to each other. Can be adjusted to. As a result, communication between the second device and the third device can be efficiently performed. That is, by matching the timings of the two synchronous communications, a period during which the second device does not perform synchronous communication with the first device and a period during which the third device does not perform synchronous communication with the fourth device. Can be duplicated. During this overlapping period, the second device and the third device can communicate with each other.
一実施形態では、前記無線システムは、前記第1の機器と前記第2の機器との接続のための許容期間を設定する許容期間設定手段を含んでもよい。前記第2の機器は、前記第1の機器と接続された状態において、前記許容期間に基づいて、前記第1の機器との同期通信を実行すべきか否かを判定する判定手段を有してもよい。前記調整手段は、前記許容期間において前記第1の機器と前記第2の機器との間の同期通信が行われるように、前記第1の機器と前記第2の機器との間の同期通信、および、前記第3の機器と前記第4の機器との間の同期通信のうちの少なくとも何れか一方のタイミングを調整してもよい。 In one embodiment, the wireless system may include a permissible period setting means for setting a permissible period for connection between the first device and the second device. The second device has a determination means for determining whether or not synchronous communication with the first device should be executed based on the permissible period in a state of being connected to the first device. May be good. The adjusting means performs synchronous communication between the first device and the second device so that synchronous communication between the first device and the second device is performed during the permissible period. And, the timing of at least one of the synchronous communication between the third device and the fourth device may be adjusted.
上記によれば、例えば、第1の機器と第2の機器との間の接続が解除されるリスクを回避しつつ、上記同期通信のタイミングを調整することができる。 According to the above, for example, the timing of the synchronous communication can be adjusted while avoiding the risk of disconnection between the first device and the second device.
一実施形態では、前記第2の機器は、前記調整手段を有してもよい。前記第3の機器は、前記第4の機器との間で行わる前記同期通信のタイミングを示す情報を送信してもよい。前記第2の機器は、前記第3の機器から送信された情報に基づいて、前記第1の機器との間で行われる前記同期通信のタイミングを調整してもよい。 In one embodiment, the second device may have the adjusting means. The third device may transmit information indicating the timing of the synchronous communication performed with the fourth device. The second device may adjust the timing of the synchronous communication performed with the first device based on the information transmitted from the third device.
上記によれば、第2の機器は、第3の機器と第4の機器とが同期通信するタイミングの情報を第3の機器から受信することができ、当該情報に基づいて、同期通信のタイミングを調整することができる。 According to the above, the second device can receive information on the timing of synchronous communication between the third device and the fourth device from the third device, and based on the information, the timing of synchronous communication. Can be adjusted.
一実施形態では、前記第1の機器と前記第2の機器が接続された状態において、前記第1の機器と前記第2の機器は、同期通信を繰り返し行ってもよい。前記第2の機器は、前記第1の機器と前記第2の機器との間の同期通信が行われるタイミングにおいて、前記第2の機器と前記第3の機器との間の無線通信よりも前記第1の機器との間の無線通信を優先して行ってもよい。 In one embodiment, in a state where the first device and the second device are connected, the first device and the second device may repeatedly perform synchronous communication. The second device is more said than the wireless communication between the second device and the third device at the timing when the synchronous communication between the first device and the second device is performed. Wireless communication with the first device may be prioritized.
上記によれば、第2の機器は、第1の機器との通信を優先して行うことができ、例えば、第1の機器との接続が解除されないように第1の機器と通信しつつ、第3の機器と通信することができる。 According to the above, the second device can preferentially perform communication with the first device, for example, while communicating with the first device so as not to disconnect from the first device. It can communicate with a third device.
一実施形態では、前記無線システムは、前記第1の機器と前記第2の機器との接続のための許容期間を設定する許容期間設定手段を含んでもよい。前記第2の機器は、前記第1の機器と接続された状態において、前記許容期間に基づいて、前記第1の機器との同期通信を実行すべきか否かを判定する判定手段と、前記許容期間において前記第1の機器と前記第2の機器との間の同期通信が行われるように、前記第3の機器との通信又は前記第1の機器との通信の少なくともいずれか一方を制御する通信制御手段とを有してもよい。 In one embodiment, the wireless system may include a permissible period setting means for setting a permissible period for connection between the first device and the second device. The second device includes a determination means for determining whether or not synchronous communication with the first device should be executed based on the allowable period in a state of being connected to the first device, and the allowable period. Control at least one of communication with the third device and communication with the first device so that synchronous communication between the first device and the second device is performed during the period. It may have a communication control means.
上記によれば、第2の機器は、第1の機器との接続が解除されるリスクを回避しつつ、第3の機器と通信することができる。 According to the above, the second device can communicate with the third device while avoiding the risk of disconnection from the first device.
一実施形態では、前記第2の機器は、データをブロードキャスト又はマルチキャストで無線で送信する送信手段と、ブロードキャスト又はマルチキャストで送信されたデータを無線で受信する受信手段と、を有してもよい。また、第2の機器は、前記送信手段による送信処理と前記受信手段による受信処理とをスレーブとして前記第1の機器と接続された状態で繰り返し実行することにより、スレーブとして前記第4の機器と接続された状態の前記第3の機器と接続を確立せずに無線通信を行ってもよい。また、前記第2の機器は、前記第1の機器との同期通信のタイミングと、前記第3の機器との無線通信のタイミングとが重なる場合、前記第1の機器との同期通信を優先して行ってもよい。 In one embodiment, the second device may include transmitting means for wirelessly transmitting data by broadcast or multicast and receiving means for wirelessly receiving data transmitted by broadcast or multicast. Further, the second device repeatedly executes the transmission process by the transmission means and the reception process by the reception means in a state of being connected to the first device as a slave, so that the second device and the fourth device can be used as a slave. Wireless communication may be performed without establishing a connection with the third device in the connected state. Further, when the timing of the synchronous communication with the first device and the timing of the wireless communication with the third device overlap, the second device gives priority to the synchronous communication with the first device. You may go there.
上記によれば、第2の機器は、ブロードキャストでデータを送受信することで第3の機器と通信することができ、第1の機器との同期通信が行われるタイミングでは、第1の機器との通信を優先して行うことができる。これにより、例えば、第2の機器は、第1の機器との接続が解除されないように第1の機器と通信しつつ、第3の機器と通信することができる。 According to the above, the second device can communicate with the third device by transmitting and receiving data by broadcasting, and at the timing when the synchronous communication with the first device is performed, the second device communicates with the first device. Communication can be prioritized. Thereby, for example, the second device can communicate with the third device while communicating with the first device so that the connection with the first device is not disconnected.
一実施形態では、前記第2の機器は、スレーブとして前記第4の機器と接続された状態の前記第3の機器と接続を確立し、当該第3の機器と接続された状態において、当該第3の機器と無線通信を行ってもよい。前記第2の機器は、前記第1の機器との同期通信が行われるタイミングと、前記第3の機器との間の接続における無線通信のタイミングとが重なる場合、前記第1の機器との通信を優先して行ってもよい。 In one embodiment, the second device establishes a connection with the third device in a state of being connected to the fourth device as a slave, and in a state of being connected to the third device, the second device. Wireless communication may be performed with the device of 3. The second device communicates with the first device when the timing of synchronous communication with the first device and the timing of wireless communication in the connection with the third device overlap. May be given priority.
上記によれば、第2の機器は、第3の機器と接続を確立して通信することができ、第1の機器との同期通信が行われるタイミングでは、第3の機器との通信よりも第1の機器との通信を優先して行うことができる。これにより、例えば、第2の機器は、第1の機器との接続が解除されないように第1の機器と通信しつつ、第3の機器と通信することができる。 According to the above, the second device can establish a connection with the third device and communicate with the third device, and at the timing when the synchronous communication with the first device is performed, it is better than the communication with the third device. Communication with the first device can be prioritized. Thereby, for example, the second device can communicate with the third device while communicating with the first device so that the connection with the first device is not disconnected.
一実施形態では、前記無線システムは、前記第2の機器と前記第3の機器との接続のための第2許容期間を設定する第2許容期間設定手段を含んでもよい。前記第2の機器及び第3の機器は、互いに接続された状態において、前記第2の機器及び第3の機器との間の同期通信を実行してもよい。前記第3の機器は、前記第2の機器と接続された状態において、前記第2許容期間に基づいて、前記第2の機器との同期通信を実行すべきか否かを判定する判定手段を有してもよい。前記第2の機器は、前記第2許容期間において前記第2の機器と前記第3の機器との間の同期通信が行われるように、前記第3の機器との通信又は前記第1の機器との通信の少なくとも何れか一方を制御する通信制御手段を有してもよい。 In one embodiment, the wireless system may include a second permissible period setting means that sets a second permissible period for the connection between the second device and the third device. The second device and the third device may execute synchronous communication between the second device and the third device in a state of being connected to each other. The third device has a determination means for determining whether or not synchronous communication with the second device should be executed based on the second allowable period in a state of being connected to the second device. You may. The second device communicates with the third device or the first device so that synchronous communication between the second device and the third device is performed during the second allowable period. A communication control means for controlling at least one of communication with the user may be provided.
上記によれば、例えば、第2の機器は、第3の機器との接続が解除されないように、前記第3の機器との通信および前記第1の機器との通信を制御することができる。 According to the above, for example, the second device can control the communication with the third device and the communication with the first device so that the connection with the third device is not disconnected.
一実施形態では、前記第2の機器は、前記第3の機器との間の接続における同期通信の時間間隔を設定し、当該設定した時間間隔で、前記第3の機器と同期通信を行い、前記第3の機器との同期通信の時間間隔を調整することにより、前記第1の機器との通信を優先して行ってもよい。 In one embodiment, the second device sets a time interval for synchronous communication in connection with the third device, and performs synchronous communication with the third device at the set time interval. By adjusting the time interval of the synchronous communication with the third device, the communication with the first device may be prioritized.
上記によれば、第2の機器は、例えば第3の機器との同期通信の時間間隔を長くすることで、第3の機器との同期通信が行われない期間において第1の機器と通信することができ、第1の機器との通信を優先して行うことができる。 According to the above, the second device communicates with the first device during the period when the synchronous communication with the third device is not performed, for example, by lengthening the time interval of the synchronous communication with the third device. It is possible to give priority to communication with the first device.
一実施形態では、前記無線システムは、前記第2の機器と前記第3の機器との接続のための第2許容期間を設定する第2許容期間設定手段と、前記第4の機器と前記第3の機器との接続のための第3許容期間を設定する第3許容期間設定手段とを含んでもよい。前記第3の機器は、前記第2の機器と接続された状態において、前記第2許容期間に基づいて、前記第2の機器との同期通信を実行すべきか否かを判定する判定手段を有してもよい。前記第4の機器は、前記第3の機器と接続された状態において、前記第3の機器との同期通信を実行してもよい。前記第3の機器は、前記第4の機器と接続された状態において、前記第3許容期間に基づいて、前記第4の機器との同期通信を実行すべきか否かを判定してもよい。前記第3の機器は、前記第4の機器との同期通信を、前記第2の機器との同期通信よりも優先して実行してもよい。 In one embodiment, the wireless system includes a second permissible period setting means for setting a second permissible period for connecting the second device and the third device, and the fourth device and the third device. It may include a third permissible period setting means for setting a third permissible period for connection with the device of 3. The third device has a determination means for determining whether or not synchronous communication with the second device should be executed based on the second allowable period in a state of being connected to the second device. You may. The fourth device may execute synchronous communication with the third device in a state of being connected to the third device. The third device may determine whether or not synchronous communication with the fourth device should be executed based on the third allowable period in a state of being connected to the fourth device. The third device may execute the synchronous communication with the fourth device in preference to the synchronous communication with the second device.
上記によれば、第2の機器と第3の機器とは接続され、この接続には第2許容期間が設定される。第3の機器と第4の機器とは接続され、この接続には第3許容期間が設定される。そして、第3の機器は、前記第3許容期間において前記第4の機器と同期通信を実行し、前記第2の機器との同期通信よりも優先して前記第4の機器との同期通信を実行する。これにより、第3の機器は、第4の機器との接続が解除されるリスクを回避することができる。 According to the above, the second device and the third device are connected, and a second allowable period is set for this connection. The third device and the fourth device are connected, and a third allowable period is set for this connection. Then, the third device executes synchronous communication with the fourth device during the third allowable period, and performs synchronous communication with the fourth device in preference to synchronous communication with the second device. Run. As a result, the third device can avoid the risk of disconnection from the fourth device.
一実施形態では、前記第3の機器は、前記第4の機器に対して前記第3許容期間を変更するための変更要求を送信する第3許容期間変更手段を有してもよい。 In one embodiment, the third device may have a third permissible period changing means for transmitting a change request for changing the third permissible period to the fourth device.
上記によれば、第3の機器は第4の機器に第3許容期間を変更させることができる。 According to the above, the third device can cause the fourth device to change the third permissible period.
一実施形態では、前記第2の機器は、無線通信の間隔を設定する間隔設定手段を含んでもよい。第2の機器は、スレーブとして前記第4の機器と接続された状態の前記第3の機器との間で接続を確立し、当該接続を確立した後、前記間隔設定手段によって設定された間隔で前記第2の機器と前記第3の機器の間の無線通信を行う。 In one embodiment, the second device may include interval setting means for setting the interval for wireless communication. The second device establishes a connection with the third device in a state of being connected to the fourth device as a slave, and after establishing the connection, at the interval set by the interval setting means. Wireless communication is performed between the second device and the third device.
上記によれば、第2の機器は、設定された間隔で第3の機器と通信することができる。 According to the above, the second device can communicate with the third device at set intervals.
一実施形態では、前記無線システムは、前記第1の機器と前記第2の機器との接続のための許容期間を設定する許容期間設定手段を含んでもよい。前記第2の機器は、前記第1の機器と接続された状態において、前記許容期間に基づいて、前記第1の機器との同期通信を実行すべきか否かを判定する判定手段を有してもよい。前記間隔設定手段は、前記第1の機器と前記第2の機器の間の接続の許容期間に基づいて、前記第2の機器と前記第3の機器との間の無線通信の間隔を設定してもよい。 In one embodiment, the wireless system may include a permissible period setting means for setting a permissible period for connection between the first device and the second device. The second device has a determination means for determining whether or not synchronous communication with the first device should be executed based on the permissible period in a state of being connected to the first device. May be good. The interval setting means sets the interval of wireless communication between the second device and the third device based on the allowable period of connection between the first device and the second device. You may.
上記によれば、第2の機器は、第3の機器との通信の間隔を、第1の機器との間の接続における許容期間に基づいて設定することができる。 According to the above, the second device can set the interval of communication with the third device based on the allowable period of connection with the first device.
一実施形態では、前記第2の機器の間隔設定手段は、前記第1の機器と第2の機器との間の通信の状況に応じて、前記第3の機器との通信の時間間隔を設定してもよい。 In one embodiment, the second device interval setting means sets the time interval for communication with the third device according to the communication status between the first device and the second device. You may.
上記によれば、第2の機器は、前記第1の機器と第2の機器との間の通信の状況に応じた時間間隔で、第3の機器と通信を行うことができる。 According to the above, the second device can communicate with the third device at time intervals according to the communication status between the first device and the second device.
一実施形態では、前記無線システムは、前記第2の機器と前記第3の機器との接続のための第2許容期間を設定する第2許容期間設定手段を含んでもよい。前記第3の機器は、前記第2の機器と接続された状態において、前記第2許容期間に基づいて、前記第2の機器との同期通信を実行すべきか否かを判定する判定手段を有してもよい。前記第2許容期間設定手段は、前記第1の機器と前記第2の機器の間の通信の状況に応じて、前記第2許容期間を設定してもよい。 In one embodiment, the wireless system may include a second permissible period setting means that sets a second permissible period for the connection between the second device and the third device. The third device has a determination means for determining whether or not synchronous communication with the second device should be executed based on the second allowable period in a state of being connected to the second device. You may. The second permissible period setting means may set the second permissible period according to the communication situation between the first device and the second device.
上記によれば、第1の機器と第2の機器との間の通信の状況に応じて、第2許容期間を設定することができる。例えば、第1の機器と第2の機器との通信の状況によって、第2の機器と第3の機器との接続における許容期間を長くしたり、短くしたりすることができる。 According to the above, the second permissible period can be set according to the communication status between the first device and the second device. For example, depending on the communication status between the first device and the second device, the permissible period for connecting the second device and the third device can be lengthened or shortened.
一実施形態では、前記第1の機器と前記第2の機器とは、同期通信を第1の時間間隔で行い、前記第2の機器は、前記第1の機器と接続されている間に、スレーブとして前記第4の機器と接続された状態の前記第3の機器との間で接続を確立し、前記第1の時間間隔とは異なる第2の時間間隔で前記第3の機器と同期通信を行ってもよい。 In one embodiment, the first device and the second device perform synchronous communication at first time intervals, while the second device is connected to the first device. As a slave, a connection is established between the fourth device and the third device in a connected state, and synchronous communication with the third device is performed at a second time interval different from the first time interval. May be done.
上記によれば、第1の機器と第2の機器との同期通信の時間間隔と、第2の機器と第3の機器との同期通信の時間間隔とを異ならせることができる。 According to the above, the time interval of the synchronous communication between the first device and the second device and the time interval of the synchronous communication between the second device and the third device can be made different.
一実施形態では、前記第2の機器は、前記第1の時間間隔よりも前記第2の時間間隔の方が短くなるように、前記第2の時間間隔を設定してもよい。 In one embodiment, the second device may set the second time interval such that the second time interval is shorter than the first time interval.
上記によれば、第2の時間間隔は第1の時間間隔よりも短いため、第2の機器は、第1の機器と比べて第3の機器と頻繁に通信することができる。このため、第2の機器と第3の機器との間で、比較的短時間に大きなデータをやり取りすることができる。 According to the above, since the second time interval is shorter than the first time interval, the second device can communicate with the third device more frequently than the first device. Therefore, a large amount of data can be exchanged between the second device and the third device in a relatively short time.
一実施形態では、前記無線システムは、前記第1の機器と前記第2の機器との接続のための第1許容期間を設定する第1許容期間設定手段と、前記第2の機器と前記第3の機器との接続のための第2許容期間を設定する第2許容期間設定手段と、を含んでもよい。前記第2の機器は、前記第1の機器と接続された状態において、前記第1許容期間に基づいて、前記第1の機器との同期通信を実行すべきか否かを判定する判定手段を有してもよい。前記第3の機器は、前記第2の機器と接続された状態において、前記第2許容期間に基づいて、前記第2の機器との同期通信を実行すべきか否かを判定する判定手段を有してもよい。前記第2許容期間設定手段は、前記第1の機器と前記第2の機器の間の通信の状況又は前記第2の機器と前記第3の機器の間の通信の状況の少なくともいずれか一方に応じて、前記第1許容期間よりも短くなるように前記第2許容期間を設定してもよい。 In one embodiment, the wireless system includes a first permissible period setting means for setting a first permissible period for connecting the first device and the second device, the second device, and the first. A second permissible period setting means for setting a second permissible period for connection with the device of 3 may be included. The second device has a determination means for determining whether or not synchronous communication with the first device should be executed based on the first permissible period in a state of being connected to the first device. You may. The third device has a determination means for determining whether or not synchronous communication with the second device should be executed based on the second allowable period in a state of being connected to the second device. You may. The second permissible period setting means is set to at least one of the communication status between the first device and the second device or the communication status between the second device and the third device. Accordingly, the second permissible period may be set to be shorter than the first permissible period.
上記によれば、第1の機器と第2の機器との間の接続の第1許容期間よりも、第2の機器と第3の機器との間の接続の第2許容期間を短くすることができる。これにより、第2の機器は第1の機器との接続が解除されるリスクを低減することができる。例えば、第2の機器が、第1の機器と比較的長期間に低頻度でデータをやり取りする一方で、第3の機器とは比較的短期間に高頻度でデータをやり取りする場合に、この構成が採用されてもよい。 According to the above, the second permissible period of the connection between the second device and the third device is shorter than the first permissible period of the connection between the first device and the second device. Can be done. As a result, the second device can reduce the risk of disconnection from the first device. For example, when the second device exchanges data with the first device at low frequency for a relatively long period of time, while the second device exchanges data with the third device at high frequency in a relatively short period of time. The configuration may be adopted.
一実施形態では、前記第2の機器は、前記第1の時間間隔よりも前記第2の時間間隔の方が長くなるように、前記第2の時間間隔を設定してもよい。 In one embodiment, the second device may set the second time interval such that the second time interval is longer than the first time interval.
上記によれば、第1の時間間隔は第2の時間間隔よりも短いため、第2の機器は、第3の機器と比べて第1の機器と頻繁に通信することができる。このため、第1の機器と第2の機器との間で、短時間に比較的大きなデータをやり取りすることができる。 According to the above, since the first time interval is shorter than the second time interval, the second device can communicate with the first device more frequently than the third device. Therefore, a relatively large amount of data can be exchanged between the first device and the second device in a short time.
一実施形態では、前記無線システムは、前記第1の機器と前記第2の機器との接続のための第1許容期間を設定する第1許容期間設定手段と、前記第2の機器と前記第3の機器との接続のための第2許容期間を設定する第2許容期間設定手段と、を含んでもよい。前記第2の機器は、前記第1の機器と接続された状態において、前記第1許容期間に基づいて、前記第1の機器との同期通信を実行すべきか否かを判定する判定手段を有してもよい。前記第3の機器は、前記第2の機器と接続された状態において、前記第2許容期間に基づいて、前記第2の機器との同期通信を実行すべきか否かを判定する判定手段を有してもよい。前記第2許容期間設定手段は、前記第1許容期間よりも長くなるように前記第2許容期間を設定してもよい。 In one embodiment, the wireless system includes a first permissible period setting means for setting a first permissible period for connecting the first device and the second device, the second device, and the first. A second permissible period setting means for setting a second permissible period for connection with the device of 3 may be included. The second device has a determination means for determining whether or not synchronous communication with the first device should be executed based on the first permissible period in a state of being connected to the first device. You may. The third device has a determination means for determining whether or not synchronous communication with the second device should be executed based on the second allowable period in a state of being connected to the second device. You may. The second permissible period setting means may set the second permissible period so as to be longer than the first permissible period.
上記によれば、第1の機器と第2の機器との間の接続の第1許容期間よりも、第2の機器と第3の機器との間の接続の第2許容期間を長くすることができる。これにより、第2の機器は第3の機器との接続が解除されるリスクを低減することができる。例えば、第2の機器が、第3の機器と比較的長期間に低頻度でデータをやり取りする一方で、第1の機器とは比較的高頻度でデータをやり取りする場合に、この構成が採用されてもよい。 According to the above, the second permissible period of the connection between the second device and the third device is longer than the first permissible period of the connection between the first device and the second device. Can be done. As a result, the second device can reduce the risk of disconnection from the third device. For example, this configuration is adopted when the second device exchanges data with the third device at a relatively high frequency for a relatively long period of time, while the second device exchanges data with the first device at a relatively high frequency. May be done.
一実施形態では、前記第2の機器は、前記第1の機器と接続されている間に、スレーブとして前記第4の機器と接続された状態の前記第3の機器との間で接続を確立し、前記第2の機器と前記第3の機器の間の接続よりも、前記第1の機器と前記第2の機器との間の接続を優先してもよい。 In one embodiment, the second device establishes a connection with the third device in a state of being connected to the fourth device as a slave while being connected to the first device. Then, the connection between the first device and the second device may be prioritized over the connection between the second device and the third device.
上記によれば、第2の機器は、第1の機器との接続を優先しつつ、第3の機器と接続して通信を行うことができる。 According to the above, the second device can communicate with the third device while giving priority to the connection with the first device.
一実施形態では、前記第2の機器は、前記第1の機器と前記第2の機器との間の接続状況に応じて、前記第2の機器と前記第3の機器の間の通信を制限してもよい。 In one embodiment, the second device limits communication between the second device and the third device depending on the connection status between the first device and the second device. You may.
上記によれば、第2の機器は、第1の機器との間の接続状況に応じて、前記第3の機器との間の通信を制限することができ、例えば、第1の機器との接続が解除されるリスクがある場合には、第3の機器との通信を制限することができる。 According to the above, the second device can restrict communication with the third device depending on the connection status with the first device, for example, with the first device. If there is a risk of disconnection, communication with the third device can be restricted.
一実施形態では、前記第2の機器は、前記第2の機器と前記第3の機器との間の接続を維持すれば、前記第1の機器と前記第2の機器との間の接続が解除される場合、前記第2の機器と前記第3の機器の間の接続を解除してもよい。 In one embodiment, if the second device maintains the connection between the second device and the third device, the connection between the first device and the second device can be established. When it is released, the connection between the second device and the third device may be released.
上記によれば、第2の機器は、第1の機器との接続が解除されるリスクがある場合には、第3の機器との接続を解除することができる。 According to the above, the second device can disconnect from the third device when there is a risk of disconnecting from the first device.
一実施形態では、前記第2の機器は、データを無線で送信する送信手段と、前記送信手段によるデータの送信とは異なるタイミングでデータを無線で受信する受信手段と、を含んでもよい。第2の機器は、前記送信手段による送信処理と前記受信手段による受信処理とを繰り返し行い、前記送信手段は、次以降に自機で行われる前記送信処理及び/又は前記受信処理のタイミングを示すタイミング情報を含むデータを送信してもよい。 In one embodiment, the second device may include a transmitting means that wirelessly transmits the data and a receiving means that wirelessly receives the data at a timing different from the transmission of the data by the transmitting means. The second device repeatedly performs the transmission process by the transmission means and the reception process by the reception means, and the transmission means indicates the timing of the transmission process and / or the reception process to be performed by the own machine from the next time onward. Data including timing information may be transmitted.
上記によれば、第2の機器は、自機が次以降に送信処理及び/又は受信処理を行うタイミングを他の機器に知らせることができる。 According to the above, the second device can notify other devices of the timing when the own device performs the transmission process and / or the reception process from the next time onward.
一実施形態では、前記第2の機器の送信手段は、前記タイミング情報を含むデータをブロードキャスト又はマルチキャストで送信してもよい。 In one embodiment, the transmitting means of the second device may transmit data including the timing information by broadcasting or multicasting.
上記によれば、第2の機器は、不特定の機器に上記タイミング情報を送信することができる。 According to the above, the second device can transmit the timing information to an unspecified device.
一実施形態では、前記第2の機器の送信手段は、他の機器からブロードキャスト又はマルチキャストで送信されたデータを受信したことに応じて、前記タイミング情報を含むデータを送信してもよい。 In one embodiment, the transmission means of the second device may transmit data including the timing information in response to receiving data transmitted by broadcast or multicast from another device.
上記によれば、第2の機器は、他の機器からのブロードキャストデータに応じて、タイミング情報を含むデータを送信することができる。 According to the above, the second device can transmit data including timing information in response to broadcast data from other devices.
一実施形態では、前記第3の機器は、データを無線で送信する送信処理と、データを無線で受信する受信処理とを繰り返し行い、前記第2の機器からの前記タイミング情報に基づいて、前記送信処理及び/又は前記受信処理を行うタイミングを調整してもよい。 In one embodiment, the third device repeatedly performs a transmission process of transmitting data wirelessly and a reception process of receiving data wirelessly, and based on the timing information from the second device, said The timing of performing the transmission process and / or the reception process may be adjusted.
上記によれば、第3の機器は、第2の機器からの前記タイミング情報に基づいて、送信処理及び/又は受信処理を行うタイミングを調整することができる。これにより、第2の機器と第3の機器との間で、送信処理及び受信処理のタイミングを合わせることができる。 According to the above, the third device can adjust the timing of performing the transmission process and / or the reception process based on the timing information from the second device. As a result, the timing of the transmission process and the reception process can be matched between the second device and the third device.
一実施形態では、前記第1の機器と前記第2の機器との間の無線通信、前記第4の機器と前記第3の機器との間の無線通信、および、前記第2の機器と前記第3の機器との間の無線通信は、全て同じ通信規格に基づいて行われてもよい。 In one embodiment, wireless communication between the first device and the second device, wireless communication between the fourth device and the third device, and the second device and the said. All wireless communication with the third device may be performed based on the same communication standard.
一実施形態では、前記各機器は、電波の周波数を切り替えながら前記無線通信を行ってもよい。 In one embodiment, the devices may perform the wireless communication while switching the frequency of radio waves.
一実施形態では、前記各機器は、複数の異なる所定の周波数を切り替えながら前記無線通信を行ってもよい。 In one embodiment, the devices may perform the wireless communication while switching between a plurality of different predetermined frequencies.
一実施形態では、前記通信規格は、Bluetooth Low Energyであってもよい。 In one embodiment, the communication standard may be Bluetooth Low Energy.
一実施形態では、前記第1の機器と前記第2の機器との間の無線通信、前記第4の機器と前記第3の機器との間の無線通信、および、前記第2の機器と前記第3の機器との間の無線通信は、全て同じ所定の周波数帯で行われてもよい。 In one embodiment, wireless communication between the first device and the second device, wireless communication between the fourth device and the third device, and the second device and the said. All wireless communication with the third device may be performed in the same predetermined frequency band.
一実施形態では、前記周波数帯は2.4GHz帯であってもよい。 In one embodiment, the frequency band may be the 2.4 GHz band.
一実施形態では、前記探索は、3つのチャネルを切り替えながら行われてもよい。 In one embodiment, the search may be performed while switching between the three channels.
一実施形態では、前記第2の機器は、スレーブとして前記第1の機器と接続された状態で、データをブロードキャスト又はマルチキャストで無線で送信する第1処理を実行してもよい。前記第3の機器は、スレーブとして前記第4の機器と接続された状態で、前記第2の機器の前記第1処理によってブロードキャスト又はマルチキャストで送信されたデータを無線で受信する第2処理を実行してもよい。 In one embodiment, the second device may execute the first process of wirelessly transmitting data by broadcasting or multicast while being connected to the first device as a slave. The third device executes a second process of wirelessly receiving data transmitted by broadcast or multicast by the first process of the second device while being connected to the fourth device as a slave. You may.
上記によれば、第2の機器はブロードキャスト又はマルチキャストでデータを送信し、第3の機器がこのデータを受信することができる。 According to the above, the second device can transmit data by broadcast or multicast, and the third device can receive this data.
一実施形態では、前記第3の機器は、スレーブとして前記第4の機器と接続された状態で、データをブロードキャスト又はマルチキャストで無線で送信する第3処理を実行してもよい。前記第2の機器は、スレーブとして前記第1の機器と接続された状態で、前記第3の機器の前記第3処理によってブロードキャスト又はマルチキャストで送信されたデータを無線で受信する第4処理を実行してもよい。前記第2の機器は、前記第1処理と前記第4処理とを繰り返し実行する第1実行手段を有してもよい。前記第3の機器は、前記第2処理と前記第3処理とを繰り返し実行する第2実行手段を有してもよい。 In one embodiment, the third device may execute a third process of wirelessly transmitting data by broadcasting or multicast while being connected to the fourth device as a slave. The second device executes a fourth process of wirelessly receiving data transmitted by broadcast or multicast by the third process of the third device while being connected to the first device as a slave. You may. The second device may have a first execution means for repeatedly executing the first process and the fourth process. The third device may have a second execution means for repeatedly executing the second process and the third process.
上記によれば、第3の機器は、第4の機器と接続された状態においてデータをブロードキャスト又はマルチキャストで送受信し、第2の機器は、第1の機器と接続された状態においてデータをブロードキャスト又はマルチキャストで送受信する。これにより、他の機器のスレーブとして接続された第3の機器および第2の機器は、互いにデータを送受信することができる。 According to the above, the third device broadcasts or multicasts data while connected to the fourth device, and the second device broadcasts or transmits data while connected to the first device. Send and receive by multicast. As a result, the third device and the second device connected as slaves of the other devices can send and receive data to and from each other.
前記第1処理と前記第4処理との間には、前記第1処理および前記第4処理の何れも行われないスリープ期間が存在し、前記第2処理と前記第3処理との間には、前記第2処理および前記第3処理の何れも行われないスリープ期間が存在してもよい。 Between the first process and the fourth process, there is a sleep period in which neither the first process nor the fourth process is performed, and between the second process and the third process. , There may be a sleep period in which neither the second process nor the third process is performed.
一実施形態では、前記第2の機器は、前記第1実行手段によって実行された前記第1処理によって送信されたデータを受信した前記第3の機器との接続処理、又は、前記第1実行手段によって実行された前記第4処理によって受信したデータを送信した前記第3の機器との接続処理を実行する第1接続処理手段を有してもよい。前記第3の機器は、前記第2実行手段によって実行された前記第2処理によって受信したデータを送信した前記第2の機器との接続処理、又は、前記第2実行手段によって実行された前記第3処理によって送信されたデータを受信した前記第2の機器との接続処理を実行する第2接続処理手段を有してもよい。 In one embodiment, the second device is a connection process with the third device that has received data transmitted by the first process executed by the first execution means, or the first execution means. There may be a first connection processing means for executing a connection process with the third device that has transmitted the data received by the fourth process executed by. The third device is connected to the second device that has transmitted the data received by the second process executed by the second execution means, or the second device executed by the second execution means. The second connection processing means for executing the connection processing with the second device that has received the data transmitted by the 3 processing may be provided.
上記によれば、第2の機器および第3の機器は互いに接続することができる。 According to the above, the second device and the third device can be connected to each other.
一実施形態では、前記第1の機器及び前記第2の機器は、互いに接続された状態において、前記第1の機器及び前記第2の機器との間の同期通信を繰り返し行ってもよい。前記第2の機器は、前記第1の機器との同期通信が実行されるタイミングを避けて前記第3の機器との間の無線通信を行う通信制御手段を有してもよい。 In one embodiment, the first device and the second device may repeatedly perform synchronous communication between the first device and the second device while being connected to each other. The second device may have a communication control means for performing wireless communication with the third device while avoiding the timing at which synchronous communication with the first device is executed.
上記によれば、第2の機器は第1の機器と繰り返し同期通信を行いつつ、第3の機器と通信を行うことができる。 According to the above, the second device can communicate with the third device while repeatedly performing synchronous communication with the first device.
一実施形態では、前記無線システムは、
前記第1の機器と前記第2の機器との間で行われる所定の通信に係る許容期間を設定する許容期間設定手段を含んでもよい。前記第2の機器は、前記第1の機器と接続された状態において、前記許容期間に基づいて、前記第1の機器との所定の通信を実行すべきか否かを判定する判定手段と、前記判定手段によって実行すべきと判定された所定の通信が前記第1の機器と前記第2の機器との間で実行されるように、当該実行すべきと判定された所定の通信が行われるタイミングを避けて前記第3の機器との無線通信を行う通信制御手段とを有してもよい。
In one embodiment, the wireless system is
Permissible period setting means for setting a permissible period related to a predetermined communication performed between the first device and the second device may be included. The second device includes a determination means for determining whether or not to execute a predetermined communication with the first device based on the permissible period in a state of being connected to the first device, and the above-mentioned Timing at which the predetermined communication determined to be executed is performed so that the predetermined communication determined to be executed by the determination means is executed between the first device and the second device. May have a communication control means for wirelessly communicating with the third device while avoiding the above.
上記によれば、第2の機器は第1の機器との接続が解除されるリスクを回避しつつ、第3の機器と通信を行うことができる。 According to the above, the second device can communicate with the third device while avoiding the risk of disconnection from the first device.
他の構成は、Bluetooth Low Energy(BLE)規格に基づく無線通信を行うことが可能な複数の機器を含む無線システムであって、前記無線システムは、第1の機器と、第2の機器と、第4の機器と、第3の機器とを含んでもよい。前記第1の機器及び前記第2の機器は、前記第1の機器をセントラルとし、前記第2の機器をペリフェラルとして、前記第1の機器と前記第2の機器との間で接続を確立してBLE規格に基づいた無線通信を行う。前記第4の機器及び前記第3の機器は、前記第4の機器をセントラルとし、前記第3の機器をペリフェラルとして、前記第4の機器と前記第3の機器との間で接続を確立してBLE規格に基づいた無線通信を行う。前記第2の機器は、前記第1の機器と前記第2の機器との接続が維持された状態で、ペリフェラルとして前記第4の機器と接続された状態の前記第3の機器とBLE規格に基づいた無線通信を行う。 Another configuration is a wireless system including a plurality of devices capable of performing wireless communication based on the Bluetooth Low Energy (BLE) standard, and the wireless system includes a first device, a second device, and the like. A fourth device and a third device may be included. The first device and the second device establish a connection between the first device and the second device by using the first device as a central device and the second device as a peripheral. Performs wireless communication based on the BLE standard. The fourth device and the third device establish a connection between the fourth device and the third device by using the fourth device as a central device and the third device as a peripheral. Performs wireless communication based on the BLE standard. The second device conforms to the BLE standard with the third device in a state of being connected to the fourth device as a peripheral while the connection between the first device and the second device is maintained. Perform wireless communication based on.
他の構成は、複数の機器と無線通信を行うことが可能な無線機器であってもよい。無線機器は、前記複数の機器のうちの第1の機器をマスターとし、自機をスレーブとして、当該第1の機器との間で接続を確立する接続確立手段と、スレーブとして前記第1の機器と接続された状態で、当該第1の機器とは異なる第2の機器のスレーブとして接続された状態の第3の機器と無線通信を行う通信手段とを備えてもよい。また、当該無線機器のプロセッサにおいて実行されるプログラムであってもよい。 The other configuration may be a wireless device capable of wirelessly communicating with a plurality of devices. The wireless device is a connection establishment means for establishing a connection with the first device, with the first device among the plurality of devices as the master and the own device as the slave, and the first device as the slave. A third device connected to the device as a slave of a second device different from the first device may be provided with a communication means for wireless communication. Further, it may be a program executed by the processor of the wireless device.
他の構成は、上記無線機器のプロセッサにおいて実行されるプログラムであってもよい。また他の構成は、上記無線システムにおいて実行される通信方法であってもよい。 The other configuration may be a program executed in the processor of the wireless device. The other configuration may be a communication method executed in the wireless system.
他の構成は、無線通信を行うことが可能な複数の機器を含む無線システムであって、前記無線システムは、第1の機器と、第2の機器とを含んでもよい。前記第1の機器及び前記第2の機器は、前記第1の機器をマスターとし、前記第2の機器をスレーブとして、前記第1の機器と前記第2の機器との間で接続を確立して無線通信を行う。前記第2の機器は、データをブロードキャスト又はマルチキャストで無線で送信する送信手段と、ブロードキャスト又はマルチキャストで無線で送信されたデータを受信する受信手段と、前記第1の機器と接続された状態で、前記送信手段による送信処理と前記受信手段による受信処理とを繰り返し実行することにより前記第1の機器とは異なる第3の機器との間で無線通信を行う他機器通信手段とを含む。 Another configuration is a wireless system including a plurality of devices capable of performing wireless communication, and the wireless system may include a first device and a second device. The first device and the second device establish a connection between the first device and the second device by using the first device as a master and the second device as a slave. To perform wireless communication. The second device is connected to a transmitting means for transmitting data wirelessly by broadcasting or multicast, a receiving means for receiving data transmitted wirelessly by broadcasting or multicast, and the first device. It includes other device communication means that wirelessly communicates with a third device different from the first device by repeatedly executing the transmission process by the transmission means and the reception process by the reception means.
他の構成は、複数の機器と無線通信を行うことが可能な無線機器であってもよい。当該無線機器は、前記複数の機器のうちの第1の機器をマスターとし、自機をスレーブとして、当該第1の機器との間で接続を確立する接続確立手段と、データをブロードキャスト又はマルチキャストで無線で送信する送信手段と、ブロードキャスト又はマルチキャストで無線で送信されたデータを受信する受信手段と、スレーブとして前記第1の機器と接続された状態で、前記送信手段による送信処理と前記受信手段による受信処理とを繰り返し実行することにより前記第1の機器とは異なる第3の機器との間で無線通信を行う他機器通信手段とを備えてもよい。 The other configuration may be a wireless device capable of wirelessly communicating with a plurality of devices. The wireless device uses the first device of the plurality of devices as a master and own device as a slave to establish a connection with the first device by broadcasting or multicasting data. The transmission process by the transmission means and the reception means by the transmission means in a state of being connected to the transmission means for wireless transmission, the reception means for receiving the data transmitted wirelessly by broadcast or multicast, and the first device as a slave. It may be provided with another device communication means that performs wireless communication with a third device different from the first device by repeatedly executing the reception process.
他の構成は、上記無線機器のプロセッサにおいて実行されるプログラムであってもよい。また他の構成は、上記無線システムにおいて実行される通信方法であってもよい。 The other configuration may be a program executed in the processor of the wireless device. The other configuration may be a communication method executed in the wireless system.
本発明によれば、スレーブとして接続されている機器が他の機器と通信を行うことができる。 According to the present invention, a device connected as a slave can communicate with another device.
以下、図面を参照して、一実施形態に係る無線通信システムについて説明する。本実施形態の無線通信システムは、無線通信が可能な複数の機器を含むシステムであり、各機器は、例えば、Bluetooth Low Energy(Bluetooth 4.x。以下、「BLE」と略する)規格に基づく通信を行うものとする。まず、BLE規格の概要について説明する。 Hereinafter, the wireless communication system according to the embodiment will be described with reference to the drawings. The wireless communication system of the present embodiment is a system including a plurality of devices capable of wireless communication, and each device is based on, for example, a Bluetooth Low Energy (Bluetooth 4.x; hereinafter abbreviated as "BLE") standard. Communication shall be carried out. First, the outline of the BLE standard will be described.
(BLEの概要)
BLE規格は、クラシックBluetooth(登録商標)(Ver.1.x−3.x)よりも消費電力が低くなるように設計された通信規格である。BLEではクラシックBluetoothよりも最大送信電力が抑えられたり、無線通信の動作時間や動作回数を減らすことにより、消費電力が抑えられる。BLEでは、クラシックBluetoothと比較して、通信の時間間隔は長く、この時間間隔は変更可能である。また、BLEでは、クラシックBluetoothと同様に、1のマスターに対して複数のスレーブが接続可能なスター型のネットワークトポロジーが採用されている。
(Overview of BLE)
The BLE standard is a communication standard designed to consume less power than the classic Bluetooth® (Ver. 1.x-3.x). In BLE, the maximum transmission power is suppressed as compared with the classic Bluetooth, and the power consumption is suppressed by reducing the operation time and the number of operations of wireless communication. In BLE, the communication time interval is longer than that of the classic Bluetooth, and this time interval can be changed. Further, in BLE, as in the case of classic Bluetooth, a star-type network topology in which a plurality of slaves can be connected to one master is adopted.
図1は、一般的なBLEネットワークの一例を示す図である。図1に示すように、通信可能な範囲には携帯端末10aと、BLE端末20とが存在し、これらの機器によってネットワークが形成される。BLEでは、通信可能な範囲は、例えば数m〜数十mである。
FIG. 1 is a diagram showing an example of a general BLE network. As shown in FIG. 1, a
携帯端末10aは、例えば、携帯電話、スマートフォン、タブレット端末等の所定のアプリケーションを実行可能な携帯型の情報処理装置である。携帯端末10aは、例えば、CPU(又は/及び他のプロセッサ)と、RAMと、記憶装置(不揮発性メモリやハードディスク等)と、表示装置(液晶表示装置や有機EL表示装置等)と、入力部(ボタンやタッチパネル等)と、BLE規格に基づく通信を行うためのBLE通信モジュールと、バッテリーとを備える。携帯端末10aのCPUは、記憶装置に記憶された(又はネットワーク経由で取得した)様々なアプリケーションプログラムを実行することが可能である。例えば、携帯端末10aは、所定のアプリケーションとして、動画や静止画を再生可能なアプリケーション、メッセージアプリケーション、ブラウザアプリケーション、ゲームアプリケーション、BLE端末20から取得したデータを処理するアプリケーション等、様々なアプリケーションプログラムを実行可能である。携帯端末10aは、BLE端末20と比較して高度な情報処理を行うことが可能であり、そのため消費電力もBLE端末20と比較して高い。
The
BLE端末20は、例えば、携帯型の機器であり、典型的には携帯端末10aよりも小さな機器である。BLE端末20は、典型的には携帯端末10よりも限定された機能しか有しておらず、比較的単純な処理を行う機器であってもよい。なお、BLE端末20は、携帯端末10aと同様の高度な情報処理を行う機器であってもよい。
The
図2は、BLE端末20の内部構成の一例を示すブロック図である。図2に示すように、BLE端末20は、例えば、制御回路21と、入力部22と、発光部23と、バイブレータ24と、BLE通信モジュール25とを備える。BLE端末20は、携帯型の比較的小さな機器であって消費電力が低い機器であり、例えばボタン電池によって比較的長期間(数ヶ月〜数年)動作することが可能である。BLE端末20の各部は制御回路21上に実装されてもよい。例えば、BLE端末20は、入力部22に対して行われた入力に応じたデータをBLE通信モジュール25を用いて携帯端末10aに送信したり、携帯端末10aから送信されたデータをBLE通信モジュール25を用いて受信して、発光部23を発行させたり、バイブレータ24を振動させたりすることができる。なお、BLE端末20は、任意のアプリケーションプログラムを実行するためのCPU又は/及び他のプロセッサを備えてもよい。また、BLE端末20は、ディスプレイ、タッチパネル、スピーカ、マイク、カメラ等を備えてもよい。例えば、BLE端末20は、映像や音声に係るデータをBLE通信モジュール25を介して携帯端末10aとやり取りしてもよい。
FIG. 2 is a block diagram showing an example of the internal configuration of the
図1に示すように、携帯端末10aは、BLEネットワークにおけるセントラル(「マスター」とも言う)として機能し、BLE端末20は、ペリフェラル(「スレーブ」とも言う)として機能する。携帯端末10aは、複数のBLE端末20(20a、・・、20x)と接続を確立することが可能であり、各接続においてセントラルとなる。セントラルは、ペリフェラルのネットワークへの参加を管理したり、ペリフェラルとの接続のおける各種パラメータを設定したりする。
As shown in FIG. 1, the
ここで、BLE規格では、2.4GHz帯の電波が用いられる。具体的には、40のチャネルを用いて通信が行われる。図3は、BLE規格で用いられるチャネルの一覧を示す図である。図3に示すように、40のチャネルのうち、3つのチャネル37〜39はアドバタイジングチャネルであり、その他のチャネル0〜36は、データチャネルである。アドバタイジングチャネルは、機器の発見や接続のために用いられたり、又は、自機の存在を他の機器に知らせるために用いたり、後述するように他の機器と接続を確立せずにデータをやり取りするために用いられるチャネルである。データチャネルは、接続状態(接続された状態)において用いられるチャネルであり、接続状態にある2つの機器間でデータの送受信を行うために用いられる。なお、クラシックBluetoothでは、79のチャネルを有し、そのうち32チャネルが発見用のチャネルである。
Here, in the BLE standard, a radio wave in the 2.4 GHz band is used. Specifically, communication is performed using 40 channels. FIG. 3 is a diagram showing a list of channels used in the BLE standard. As shown in FIG. 3, of the 40 channels, three
図4は、携帯端末10aとBLE端末20aとが接続されていない状態から接続された状態になるまでの通信の流れの一例を示す図である。
FIG. 4 is a diagram showing an example of a communication flow from a state in which the
各機器は接続されていない状態(非接続状態)から接続状態になるまでに、その状態を変化させる。具体的には、図4に示すように、携帯端末10aは、所定の時間間隔でスキャンを繰り返す。スキャンを行っている状態をスキャニング状態といい、その状態の機器をスキャナという。具体的には、携帯端末10aは、スキャンと休止状態とを繰り返し、スキャンの実行中は、受信回路を作動させて他の機器からのアドバタイジングパケット(アドバタイジングPDU(プロトコル・データ・ユニット))の受信を試みる。
Each device changes its state from the unconnected state (unconnected state) to the connected state. Specifically, as shown in FIG. 4, the
一方、BLE端末20aは、所定の時間間隔(アドバタイジングインターバル)でアドバタイジングを繰り返す。アドバタイジングを行っている状態をアドバタイジング状態といい、その状態の機器をアドバタイザという。具体的には、BLE端末20aは、1回のアドバタイジング(アドバタイジングイベント)において、3つのチャネル37〜39を切り替えながらアドバタイジングパケットを送信する。このように、電波の周波数を切り替えながらアドバタイジングパケットが送信される。電波の周波数が切り替えられることを「ホッピング」という。
On the other hand, the
図4に示すように、携帯端末10aのスキャンのタイミングとBLE端末20aのアドバタイジングのタイミングとが一致すると、携帯端末10aは、BLE端末20aからのアドバタイジングパケットを受信する。携帯端末10aは、BLE端末20aからのアドバタイジングパケットを受信すると、BLE端末20aに対してスキャン要求を送信する。このスキャン要求に対してBLE端末20aがスキャン応答を返す。スキャン要求およびスキャン応答もまた、アドバタイジングチャネルを用いて送信される。スキャンの方式には「アクティブスキャン」と、「パッシブスキャン」とがあり、図4では、「アクティブスキャン」の例が示されている。「パッシブスキャン」では、図4に示す「スキャン要求」と「スキャン応答」は行われない。すなわち、パッシブスキャンでは、携帯端末10aは、BLE端末20aからのアドバタイジングパケットを受信すると、スキャン要求を送信せずに、コネクション要求をBLE端末20aに送信する。
As shown in FIG. 4, when the scanning timing of the
携帯端末10aは、アドバタイジングパケットを送信した機器と接続を行う場合、イニシエーティング状態(イニシエータ)となる。携帯端末10a(イニシエータ)は、アドバタイジングパケットを送信したBLE端末20aに対して、コネクション要求を送信する。イニシエータからコネクション要求が送信されると、接続が確立されて、2つの機器は接続状態となる。具体的には、携帯端末10aをマスター(セントラル)、BLE端末20aをスレーブ(ペリフェラル)とする2つの機器が接続状態となる。
When the
なお、イニシエータからのコネクション要求には、接続のための複数のパラメータが含まれる。具体的には、コネクション要求には、イニシエータのアドレス、アドバタイザのアドレス、アクセスアドレス、コネクションインターバル、スレーブレイテンシー、以降のホッピングに係る情報(ホップ数や使用するチャネルに係る情報)、接続監視タイムアウト(connection supervision timeout)等が含まれる。アクセスアドレスはランダムに決定されるものであり、接続を識別するためのものである。各機器は、接続相手にパケットを送信する場合、このアクセスアドレスをパケットに含めて送信する。各機器は、アクセスアドレスに基づいて、接続相手からのパケットかどうかを判断することができる。また、コネクションインターバル、スレーブレイテンシー、接続監視タイムアウトについては後述する。また、コネクション要求の後に、接続における暗号鍵を交換するためのペアリングやボンディングが行われてもよい。ペアリングでは、この接続において用いられる一時的な暗号鍵が生成・交換される。ボンディングでは、ペアリングの後に、永続的な暗号鍵の生成・交換が行われる。永続的な暗号鍵は各機器において不揮発性メモリ等に記憶される。 The connection request from the initiator includes a plurality of parameters for connection. Specifically, the connection request includes the initiator address, advertiser address, access address, connection interval, slave latency, information related to subsequent hopping (information related to the number of hops and the channel used), and connection monitoring timeout (connection). supervision timeout) etc. are included. The access address is randomly determined and is used to identify the connection. When transmitting a packet to the connection partner, each device includes this access address in the packet and transmits the packet. Each device can determine whether the packet is from the connection partner based on the access address. The connection interval, slave latency, and connection monitoring timeout will be described later. Further, after the connection request, pairing or bonding for exchanging the encryption key in the connection may be performed. In pairing, a temporary encryption key used in this connection is generated and exchanged. In bonding, a persistent encryption key is generated and exchanged after pairing. The persistent encryption key is stored in a non-volatile memory or the like in each device.
アドバタイジングパケットは、通常、ブロードキャストで送信される。すなわち、不特定の機器が受信可能である。なお、「ブロードキャスト」には、限定された不特定の機器が処理可能なデータ送信も含まれる。ここで、「限定された不特定の機器」とは、機器を唯一に特定しないが(機器に割り当てられた固有のアドレスを特定しないが)、共通の属性を持った機器又は共通の状態にある機器である。「共通の属性を持った機器」とは、例えば、機種が同じ又はベンダーが同じ等、所定の属性を持った機器群を指す。こうした所定の属性を持つ機器へアドバタイジングパケットを送信するために、例えば、送信側の機器は、ベンダーや端末の機種を示す情報(ベンダーIDや機種番号等。以下、「属性情報」と言う。)をアドバタイジングパケットに含めて(又は付加して)送信する。受信側の機器では、当該受信側の機器が持つ属性情報と一致する場合には、当該アドバタイジングパケットを処理する。このようにして、送信側は限定された不特定の機器に対してデータを送信することができる。一方、「共通の状態にある機器」とは、例えば、現在の設定が同じ等、ある時点で所定の状態にある機器群を指す。例えば、送信されるアドバタイジングパケットに、限定された不特定の機器のみが処理可能であることを示すフラグが立てられる。受信側では、この限定された不特定の機器向けのアドバタイジングパケットを処理するかどうかの設定がなされている。不特定の機器向けのアドバタイジングパケットを処理する設定がなされた機器は、アドバタイジングパケットを受信すると、上記フラグが立っているかどうかを判断し、フラグが立っている場合には、当該アドバタイジングパケットを処理する。一方、不特定の機器向けのアドバタイジングパケットを処理する設定がなされていない機器は、アドバタイジングパケットを受信すると、上記フラグが立っているかどうかを判断し、フラグが立っている場合には、当該パケットを破棄する又は処理しない。このようにして、送信側は限定された不特定の機器に対してデータを送信することができる。このような「限定された不特定の機器」に対する送信も、限定されない不特定の機器に対する送信も含めて、ここでは「ブロードキャスト」ということにする。なお、アドバタイジングパケットは、いわゆる「マルチキャスト」によって送信されてもよい。 Advertising packets are usually sent by broadcast. That is, an unspecified device can receive it. The "broadcast" also includes data transmission that can be processed by a limited number of unspecified devices. Here, the "limited unspecified device" is a device having a common attribute or a common state, although the device is not uniquely specified (although the unique address assigned to the device is not specified). It is a device. The "device having a common attribute" refers to a group of devices having a predetermined attribute, for example, the same model or the same vendor. In order to transmit an advertising packet to a device having such a predetermined attribute, for example, the device on the transmitting side has information indicating a vendor or a model of a terminal (vendor ID, model number, etc., hereinafter referred to as "attribute information"). Is included (or added to) in the advertising packet and transmitted. The receiving device processes the advertising packet when it matches the attribute information of the receiving device. In this way, the transmitting side can transmit data to a limited number of unspecified devices. On the other hand, the "device in a common state" refers to a group of devices in a predetermined state at a certain point in time, for example, the current settings are the same. For example, the transmitted advertising packet is flagged to indicate that only a limited number of unspecified devices can process it. On the receiving side, it is set whether or not to process the advertising packet for this limited unspecified device. When a device set to process an advertising packet for an unspecified device receives an advertising packet, it determines whether or not the above flag is set, and if the flag is set, processes the advertising packet. .. On the other hand, when a device that is not set to process an advertising packet for an unspecified device receives an advertising packet, it determines whether or not the above flag is set, and if the flag is set, the packet is sent. Do not discard or process. In this way, the transmitting side can transmit data to a limited number of unspecified devices. The term "broadcast" is used here to include transmissions to such "limited unspecified devices" as well as transmissions to unspecified devices that are not limited. The advertising packet may be transmitted by so-called "multicast".
また、アドバタイジングパケットには、複数のタイプがある。具体的には、アドバタイジングパケットのタイプとして、「ADV_IND」と、「ADV_DIRECT_IND」と、「ADV_NONCONN_IND」と、「ADV_SCAN_IND」とがある。「ADV_IND」と「ADV_DIRECT_IND」とは、接続可能であることを示すアドバタイジングパケットである。「ADV_IND」は、通常のアドバタイジングに用いられ、不特定の機器が接続可能であることを示すアドバタイジングパケットである。また、「ADV_DIRECT_IND」は、特定の機器が接続可能であることを示すアドバタイジングパケットであり、以前に接続したことのある機器と高速で接続するために用いられる。携帯端末10aは、「ADV_IND」又は「ADV_DIRECT_IND」のアドバタイジングパケットを受信した場合、当該パケットを送信したBLE端末20aに対して上記コネクション要求を送信する。
In addition, there are multiple types of advertising packets. Specifically, the types of advertising packets include "ADV_IND", "ADV_DIRECT_IND", "ADV_NONCONN_IND", and "ADV_SCAN_IND". "ADV_IND" and "ADV_DIRECT_IND" are advertising packets indicating that they can be connected. "ADV_IND" is an advertising packet used for normal advertising and indicating that an unspecified device can be connected. Further, "ADV_DIRECT_IND" is an advertising packet indicating that a specific device can be connected, and is used to connect to a device that has been connected before at high speed. When the
また、「ADV_NONCONN_IND」及び「ADV_SCAN_IND」は、接続不可であることを示すアドバタイジングパケットである。「ADV_NONCONN_IND」及び「ADV_SCAN_IND」は、不特定の機器に対して情報(例えば、アプリケーションで用いられるデータや位置情報などのデータ)を送信するために用いられる。 Further, "ADV_NONCONN_IND" and "ADV_SCAN_IND" are advertising packets indicating that connection is not possible. "ADV_NONCONN_IND" and "ADV_SCAN_IND" are used to transmit information (for example, data used in an application, data such as location information) to an unspecified device.
なお、一般的にはアドバタイジングよりもスキャンの方が消費電力が高くなる。これは、スキャンの実行中は、どのタイミングでもアドバタイジングパケットを受信できる状態にしておく(受信回路を作動させておく)必要があるからである。これに対して、アドバタイジングでは、1回のアドバタイジングイベントにおいて複数のアドバタイジングパケットが送信されるが、1のアドバタイジングパケットは極めて短い時間に送信されため、1回のアドバタイジングイベント中でも、アドバタイジングパケットを送信していない時間がある。アドバタイザは、アドバタイジングパケットを送信するときには送信回路を作動させるとともに電波を出力する必要があるため瞬間的に消費電力が高くなるものの、アドバタイジングパケットを送信するとき以外は、送信回路を作動させる必要もなければ電波も出力しないため、電力の消費は抑えられる。このため、ある一定の期間における消費電力は、スキャンの方がアドバタイジングよりも高くなる。 In general, scanning consumes more power than advertising. This is because it is necessary to be in a state where the advertising packet can be received (the receiving circuit is activated) at any timing during the execution of the scan. On the other hand, in advertising, a plurality of advertising packets are transmitted in one advertising event, but since one advertising packet is transmitted in an extremely short time, the advertising packet is transmitted even in one advertising event. I have no time. The advertiser needs to operate the transmission circuit and output radio waves when transmitting the advertising packet, so the power consumption increases momentarily, but it is not necessary to operate the transmission circuit except when transmitting the advertising packet. For example, since no radio waves are output, power consumption can be suppressed. Therefore, the power consumption in a certain period of time is higher in scanning than in advertising.
図5は、接続状態における携帯端末10aとBLE端末20aとの通信の一例を示す図である。図5に示すように、2つの機器が接続状態である場合、2つの機器との間でコネクションイベントと呼ばれる同期した通信(同期通信)が所定の時間間隔で行われる。コネクションイベントの間隔を「コネクションインターバル」という。コネクションインターバルは、接続が確立される際にマスターによって設定される。携帯端末10aとBLE端末20aとの接続におけるコネクションインターバルはCIa(例えば500m秒)である。コネクションインターバルは、7.5m秒〜4秒の範囲で設定されてもよい。
FIG. 5 is a diagram showing an example of communication between the
1回のコネクションイベントでは、1のデータチャネル(例えば、チャネル1)を用いて携帯端末10aとBLE端末20aとの間でデータの送受信が行われる。最初のコネクションイベントの発生からCIaが経過すると、チャネルが切り替えられて次のコネクションイベントが行われる。図5に示す例では、最初のコネクションイベントではチャネル1が用いられ、2回目のコネクションイベントではチャネル3が用いられている。このホップするチャネルの数を「ホップ数」といい、図5に示す例では、ホップ数は「2」である。このホップ数は、携帯端末10aとBLE端末20aとの間の接続が確立される際に設定される。
In one connection event, data is transmitted / received between the
コネクションイベントは、接続を確立した端末毎に行われる。例えば、携帯端末10aが、BLE端末20cとも接続された状態の場合、携帯端末10aとBLE端末20cとの間でも、コネクションイベントが所定の時間間隔で発生する。図5に示す例では、携帯端末10aとBLE端末20cとの間の接続におけるコネクションインターバルはCIcである。携帯端末10aが複数のBLE端末20と接続される場合、各接続のコネクションイベントが時間的に重ならないように、携帯端末10aは、最初のコネクションイベントのタイミングを決定する。
The connection event is held for each terminal that has established a connection. For example, when the
図6は、携帯端末10aとBLE端末20aとの間の接続が確立された後の接続状態における通信の一例を示す図である。
FIG. 6 is a diagram showing an example of communication in a connection state after the connection between the
図6に示すように、携帯端末10aとBLE端末20aとが接続された状態では、2つの機器は各コネクションイベントにおいて通信を行い、コネクションイベント以外の期間は通信を行わない。各機器は、例えば、コネクションイベント以外の期間においては、(他の機器と通信を行わなければ)受信回路および送信回路を作動させず、コネクションイベントのタイミングにおいて受信回路および送信回路を作動させて通信を行う。
As shown in FIG. 6, when the
具体的には、前回のコネクションイベントのタイミングからコネクションインターバル(CIa)が経過した場合は、携帯端末10aはBLE端末20aに対してパケットを送信し、BLE端末20aは当該パケットに対する応答を携帯端末10aに送信する。ここで、各機器には時刻の計測誤差があるため、BLE端末20aは、この誤差を考慮して、コネクションイベントのタイミングを含む所定期間で携帯端末10aからのパケットの受信を試みる。具体的には、BLE端末20aは、前回のコネクションイベントのタイミング(実際にパケットを受信したタイミング)からCIaが経過する前のタイミングで受信回路を作動させ、携帯端末10aからのパケットを受信可能にする。また、BLE端末20aは、前回のコネクションイベントのタイミングからCIaが経過した後のタイミングにおいても携帯端末10aからのパケットを受信可能な状態にしておく。すなわち、BLE端末20aは、上記誤差を考慮して、前回のコネクションイベントのタイミングから理論上のCIaが経過した時点の前後の期間においてパケットを受信可能な状態にする。接続が確立される際に、携帯端末10a(マスター)の時刻の精度情報が携帯端末10aからBLE端末20aに送信される。BLE端末20aは、受信した携帯端末10aの精度情報と自機の時刻の精度情報とに基づいて、受信回路を作動させるタイミングを計算する。
Specifically, when the connection interval (CIa) has elapsed from the timing of the previous connection event, the
コネクションイベントにおいては、アプリケーションで用いられるデータ(アプリケーションデータ)の送受信が行われる。例えば、アプリケーションデータは、ゲームキャラクタやアイテムのデータ、それらのID、文字、記号、アプリケーションで再生されるコンテンツ(動画、静止画、音声)を示すデータ(コンテンツ自体やそのID)、各種センサからのデータ等であってもよい。アプリケーションデータは、1のパケットで送信されてもよいし、複数のパケットに分けて送信されてもよい。例えば、コンテンツのIDを受信した機器(携帯端末10a又はBLE端末20a)においては、その受信したIDをアプリケーションが解釈し、当該IDに対応するコンテンツ(動画、静止画、音声等)を再生する。IDに対応するコンテンツのデータは、IDを受信した機器が有する記憶装置に記憶されてもよいし、機器の外部に記憶されてもよい。例えば、IDを受信した機器(携帯端末10a又はBLE端末20a)が、携帯端末10a及びBLE端末20aとは異なるサーバ機器に対してIDを送信し、当該IDに対応するコンテンツのデータを当該サーバ機器からダウンロードしてもよい。そして、ダウンロードされたコンテンツのデータに基づいて、コンテンツが再生されてもよい。
In the connection event, data (application data) used in the application is transmitted and received. For example, application data is data from game characters and items, their IDs, characters, symbols, data indicating content (video, still image, audio) played by the application (content itself and its ID), and various sensors. It may be data or the like. The application data may be transmitted in one packet, or may be divided into a plurality of packets and transmitted. For example, in the device (
例えば、携帯端末10aは、BLE端末20aからアプリケーションデータを取得する場合、コネクションイベントにおいてBLE端末20aに対してデータの取得要求をデータパケット(データPDU)に含めて送信する。BLE端末20aは、この取得要求に応じたデータを応答パケットに含めて送信する。1のパケットにアプリケーションデータが収まらない場合は、BLE端末20aは、アプリケーションデータを分割し、複数の応答パケットに、分割したアプリケーションデータのそれぞれを含めて送信する。この応答パケットには、分割したアプリケーションデータと、シーケンス番号が含まれる。携帯端末10aは、分割されたアプリケーションデータをシーケンス番号順に並べることで、アプリケーションデータを再構築する。このように、複数回のコネクションイベントが行われることで、1のパケットに収まらないサイズのアプリケーションデータが、BLE端末20aから携帯端末10aに(または、携帯端末10aからBLE端末20aに)送信される。
For example, when the
ここで、携帯端末10aとBLE端末20aとの間の接続には、スレーブレイテンシーが設定される。スレーブレイテンシーは、BLE端末20a(ペリフェラル)が無視(スキップ)することができるコネクションイベントの回数である。通常、各コネクションイベントにおいて携帯端末10a(セントラル)はBLE端末20aに対してパケットを送信し、BLE端末20aは当該パケットを受信したことに応じて応答パケットを返す。これにより、アプリケーションデータがやり取りされる。しかしながら、BLE端末20aは、送信すべきデータが無い場合、応答を返さなくてもよい。
Here, slave latency is set for the connection between the
図6に示す例では、スレーブレイテンシーSLaは「4」に設定されている。図6に示すように、時点t0におけるコネクションイベントにおいて、携帯端末10aからBLE端末20aにパケットが送信され、当該パケットに応じてBLE端末20aから携帯端末10aに応答パケットが送信される。CIaが経過した時点t1におけるコネクションイベントでは、携帯端末10aはBLE端末20aにパケットを送信するものの、BLE端末20aは、応答パケットを携帯端末10aに送信しなくてもよい。さらに次の時点t2、t3、t4においても、BLE端末20aは、応答パケットを携帯端末10aに送信しなくてもよい。一方、時点t4からCIaが経過した時点t5におけるコネクションイベントでは、BLE端末20aは応答パケットを携帯端末10aに送信する。さらに、その後の時点t6〜t9におけるコネクションイベントでは、BLE端末20aは応答パケットを携帯端末10aに送信しなくてもよいが、時点t10におけるコネクションイベントでは、BLE端末20aは応答パケットを携帯端末10aに送信する。なお、BLE端末20aは、時点t1〜t4、t6〜t9におけるコネクションイベントにおいて、応答パケットを携帯端末10aに送信してもよい。すなわち、スレーブレイテンシーは、スレーブとしてのBLE端末20aがコネクションイベントを連続的に無視することができる最大回数である。このように、携帯端末10aは、所定の許容期間(スレーブレイテンシーが示すコネクションイベントの回数)にBLE端末20aからのパケットを受信しない場合がある。なお、この許容期間は、上述のようにコネクションイベントの回数によって表されてもよく、時間によって表されてもよい。
In the example shown in FIG. 6, the slave latency SLa is set to "4". As shown in FIG. 6, in the connection event at the time point t0, a packet is transmitted from the
スレーブレイテンシーは、BLE端末20a(ペリフェラル)に対して与えられた、携帯端末10a(セントラル)に対する応答を無視することができる権利と捉えることができる。BLE端末20aは、自機の判断で、各コネクションイベントにおいて携帯端末10aに対して応答を送信するかどうかを決定することができる。例えば、BLE端末20aは、他の処理や他の機器との通信を行う必要がある場合には、携帯端末10aへの応答を省略することができる。BLE端末20aは、スレーブレイテンシーの範囲内で携帯端末10aに対して応答を返す。
Slave latency can be regarded as the right to ignore the response to the
携帯端末10aとBLE端末20aとの間で所定期間通信が行われなかった場合、2つの機器の間の接続は解除(切断)される(2つの機器が接続状態から非接続状態に遷移する)。2つの機器の間の接続が解除されるか否かは、接続監視タイムアウトに基づいて判断される。具体的には、前回の通信からの経過時間が接続監視タイムアウトを超えた(又は達した)場合、携帯端末10aとBLE端末20aとの接続は解除される。ここで、接続監視タイムアウトは、スレーブレイテンシーSLよりも大きな値に設定される。このため、例えば図6において、携帯端末10aが5回目のコネクションイベント(t5)においてBLE端末20aからの応答パケットを受信しなかった場合でも、携帯端末10aおよびBLE端末20aはすぐに非接続状態に遷移しない。これは、例えば、スレーブレイテンシーが「4」に設定されている場合に、BLE端末20aが4回のコネクションイベント(t1〜t4におけるコネクションイベント)を無視して、5回目のコネクションイベント(t5)において携帯端末10aに応答パケットを送信した場合でも、通信の状況により、その応答パケットを携帯端末10aが受信できないことも想定されるからである。仮に、5回目のコネクションイベントにおいてBLE端末20aが送信した応答パケットを携帯端末10aが受信できなかった場合に携帯端末10aとBLE端末20aとの接続が解除されると、頻繁に接続が解除されてしまう。このようなことを防止するために、接続監視タイムアウトは、スレーブレイテンシーSLよりも大きな値に設定され、通信が行われなかった期間が接続監視タイムアウトを超えた場合に、2つの機器は接続状態から非接続状態に遷移する(2つの機器の接続は解除される)。
If communication is not performed between the
具体的には、携帯端末10aは、応答パケットを受信してからの経過時間を計測し、BLE端末20aから応答パケットを受信しない期間が接続監視タイムアウトを超えた場合(又は接続監視タイムアウトに達した場合)、接続状態から非接続状態に遷移する。また、BLE端末20aは、携帯端末10aからのデータパケットを受信しない期間が接続監視タイムアウトを超えた場合(又は接続監視タイムアウトに達した場合)、接続状態から非接続状態に遷移する(または、BLE端末20aは、携帯端末10に応答パケットを送信してからの経過時間を計測し、携帯端末10aに応答パケットを送信しない期間が接続監視タイムアウトを超えた場合、接続状態から非接続状態に遷移してもよい)。すなわち、携帯端末10a及びBLE端末20aは、接続先からのパケットを受信しない期間が接続監視タイムアウトを超えた(又は達した)場合、接続状態から非接続状態に遷移する。
Specifically, the
なお、前回の通信からの経過時間を計測し、コネクションイベントにおいて接続先からの通信を確認できない期間が接続監視タイムアウトを超えた(又は達した)場合、携帯端末10a又はBLE端末20aは接続状態から非接続状態に遷移せず、接続の中断があったと判断してもよい。例えば、接続の中断があったと判断した場合、携帯端末10a及び/又はBLE端末20aは、接続の中断状態に遷移してもよい。例えば、BLE端末20aは、接続の中断があったと判断した場合、携帯端末10aからのパケットの受信を試みるものの、携帯端末10aへのパケットの送信は行なわない状態に遷移してもよい。この場合において、このパケットの受信を試みるタイミングは、例えば、接続状態におけるコネクションインターバルよりも長い又は短い間隔であってもよし、ランダムであってもよい。あるいは、BLE端末20aは、接続の中断があったと判断した場合、携帯端末10aからのパケットの受信を試みずに、携帯端末10aに対してパケットを定期的に又はランダムに送信する状態に遷移してもよい。また、携帯端末10aは、接続の中断があったと判断した場合、例えば、接続状態において設定されていたコネクションインターバルと異なる間隔(例えばコネクションインターバルより長い間隔)でBLE端末20aにパケットを送信してもよいし、ランダムに決定したタイミングでBLE端末20aにパケットを送信してもよい。あるいは、携帯端末10aは、接続の中断があったと判断した場合、BLE端末20aにパケットを送信せず、BLE端末20aからのパケットの受信を試みてもよい。そして、中断状態に遷移した2つの機器は、(接続監視タイムアウトを超えた又は達した場合であっても)相手からのパケットを受信したことに基づいて再び接続状態に戻ってもよい。
If the elapsed time from the previous communication is measured and the period during which communication from the connection destination cannot be confirmed in the connection event exceeds (or reaches) the connection monitoring timeout, the
接続監視タイムアウトは、「(SL+1)×コネクションインターバル」の2倍以上に設定される。例えば、コネクションインターバルが500m秒、スレーブレイテンシーが4に設定される場合、接続監視タイムアウトとして、500m秒×(4+1)×2=5秒が設定されてもよい。なお、接続監視タイムアウトは、時間によって定められてもよいし、コネクションイベントの回数によって定められてもよい。例えば、コネクションインターバルが500m秒、スレーブレイテンシーが4に設定される場合、接続監視タイムアウトとして「(4+1)×2=10」が設定されてもよく、この場合は時間に換算すると「5秒」となる。この場合、例えば、図6において、5回目のコネクションイベント(t5)において、携帯端末10aがBLE端末20aから応答パケットを受信しなかった場合でも、t6〜t10におけるコネクションイベントは実行される(この期間、2つの機器の接続は維持される)。時点t10におけるコネクションイベントにおいて、携帯端末10aがBLE端末20aから応答パケットを受信した場合は、2つの機器の接続は維持される。一方、5回目のコネクションイベント(t5)において携帯端末10aがBLE端末20aから応答パケットを受信しなかった場合において、時点t10におけるコネクションイベントにおいても携帯端末10aがBLE端末20aから応答パケットを受信しなかった場合(すなわち、t1以降の全てのコネクションイベントにおいて携帯端末10aが応答パケットを受信しなかった場合)は、2つの機器の接続は解除される。なお、接続監視タイムアウトは、例えば100m秒〜32秒の範囲で定められてもよい。
The connection monitoring timeout is set to twice or more of "(SL + 1) x connection interval". For example, when the connection interval is set to 500 msec and the slave latency is set to 4, the connection monitoring timeout may be set to 500 msec × (4 + 1) × 2 = 5 seconds. The connection monitoring timeout may be determined by the time or the number of connection events. For example, when the connection interval is set to 500 msec and the slave latency is set to 4, "(4 + 1) x 2 = 10" may be set as the connection monitoring timeout. In this case, "5 seconds" is converted into time. Become. In this case, for example, in FIG. 6, in the fifth connection event (t5), even if the
なお、スレーブレイテンシーSLの定義範囲は例えば0〜499である。しかしながら、BLE規格は時刻同期型の通信であるため、2つの機器のクロックの累積誤差がある値を超える前に2つの機器は同期される必要がある。クロックの累積誤差を考慮した必要な通信間隔を実効接続インターバルという。実行接続インターバルは、「(SL+1)×コネクションインターバル」で表され、上記接続監視タイムアウトの半分以下に設定されなければならない。このため、スレーブレイテンシーの最大値は、接続監視タイムアウトの制限を受ける。 The definition range of the slave latency SL is, for example, 0 to 499. However, since the BLE standard is a time-synchronized communication, the two devices need to be synchronized before the cumulative error of the clocks of the two devices exceeds a certain value. The required communication interval considering the cumulative error of the clock is called the effective connection interval. The execution connection interval is represented by "(SL + 1) x connection interval" and must be set to half or less of the above connection monitoring timeout. Therefore, the maximum value of slave latency is limited by the connection monitoring timeout.
なお、スレーブレイテンシーに基づいて、携帯端末10aとBLE端末20aとの接続を解除するか否かが判断されてもよい。例えば、携帯端末10aは、BLE端末20aからの応答パケットが無かった期間がスレーブレイテンシーを超えた場合(または当該期間がスレーブレイテンシーに達した場合)、BLE端末20aとの接続を解除してもよい。
It should be noted that it may be determined whether or not to disconnect the
このように、BLE端末20は、携帯端末10に対して送信すべきデータが無い場合、スレーブレイテンシーの範囲内で携帯端末10に対して応答パケットを送信しなくてもよい。また、仮に携帯端末10がBLE端末20から応答パケットを受信しなかった期間がスレーブレイテンシーを超えた場合でも、当該応答パケットを受信しなかった期間が接続監視タイムアウトを超えていない場合は、携帯端末10はBLE端末20との接続を解除することは無い。しかしながら、仮に携帯端末10がBLE端末20から応答パケットを受信しなかった期間が接続監視タイムアウトを超えていない場合でも、当該期間がスレーブレイテンシーを超えた場合は、2つの機器間のクロック誤差が累積され、2つの機器間で同期が取れなくなる可能性がある。2つの機器間で同期が取れなくなると、携帯端末10とBLE端末20とは互いに通信をすることができず、接続は解除されてしまう。したがって、BLE端末20(スレーブ)は、連続してコネクションイベントを無視する回数(マスターに応答パケットを返さない回数)がスレーブレイテンシーSLを超えないように携帯端末10に対して応答パケットを送信する。これにより、携帯端末10とBLE端末20とは前回の通信から遅くともSL+1回目のコネクションイベントにおいて同期を取ることができ、携帯端末10とBLE端末20との間の接続が解除されるリスクを回避することができる。
As described above, the
なお、コネクションイベントにおいては、コネクションインターバルの変更が行われたり、スレーブレイテンシーの変更が行われたり、接続監視タイムアウトの変更が行われたりする。コネクションインターバルの変更は、携帯端末10a(セントラル)によって行われる。スレーブレイテンシーの変更は、BLE端末20a(ペリフェラル)からの要求(当該要求は応答パケットに含められる)によって行われる。BLE端末20aが携帯端末10aに対してコネクションインターバルの変更要求を送信してもよく、携帯端末10aがスレーブレイテンシーを変更してもよい。また、携帯端末10a及びBLE端末20aの双方がコネクションインターバル、スレーブレイテンシーおよび接続監視タイムアウトの変更のための要求を行うことが可能であってもよい。この場合は、コネクションインターバルの変更については、携帯端末10a(セントラル)の要求が優先され、スレーブレイテンシーの変更については、BLE端末20a(ペリフェラル)の要求が優先されてもよい。一方で、コネクションインターバル、スレーブレイテンシーおよび接続監視タイムアウトのいずれの変更についても、マスターである機器(携帯端末10a)の要求がスレーブの機器(BLE端末20a)よりも優先されるようにしてもよい。
In the connection event, the connection interval is changed, the slave latency is changed, and the connection monitoring timeout is changed. The connection interval is changed by the
図4〜図6を参照して説明したように、BLE端末20は、接続のためのアドバタイジングパケットを繰り返しブロードキャストするアドバタイジングを行う。一例として、BLE端末20は、アドバタイジングを行ったすぐ後に(携帯端末10からのコネクション要求等を受信するために)受信状態にしばらく留まる。携帯端末10は当該アドバタイジングパケットを受信すると、コネクション要求をBLE端末20に送信する。コネクション要求には、接続のための各種パラメータ(コネクションインターバルやスレーブレイテンシー等)が含まれる。携帯端末10がコネクション要求を送信すると、携帯端末10とBLE端末20との接続が確立され、2つの機器は接続状態になる。
As described with reference to FIGS. 4 to 6, the
接続状態になると、コネクションイベントのタイミングにおいて、携帯端末10は送信回路を作動させて、BLE端末20に対してデータパケットを送信する。すなわち、携帯端末10aは、コネクションイベントのタイミングが到来すると、BLE端末20aに対してデータパケットを送信する。具体的には、携帯端末10aは、データパケットに接続確立時に決定されたアクセスアドレスを含めて送信する。BLE端末20は、携帯端末10と同期して、携帯端末10からのパケットを受信するために受信回路を作動させる。BLE端末20は、携帯端末10からのパケットを受信したことに応じて当該パケットに対する応答を携帯端末10に送信する。この応答パケットにも上記アクセスアドレスが含まれる。ここで、BLE端末20は、携帯端末10からのパケットをスレーブレイテンシーによって定められる回数だけ無視することができる。BLE端末20は、あるコネクションイベントにおける携帯端末10からのパケットを無視する場合は、そのコネクションイベントのタイミングにおいて受信回路を作動させなくてもよい。また、携帯端末10は、BLE端末20からの応答が無かった期間が、接続監視タイムアウトを超えない場合は、BLE端末20との接続を維持する。一方、携帯端末10は、BLE端末20からの応答が無かった期間が、接続監視タイムアウトを超えた(又は達した)場合は、BLE端末20との接続を解除して非接続状態になる。非接続状態になると、2つの機器の間ではコネクションイベントは発生しない。BLE端末20が、再び、アドバタイジングを行って、携帯端末10がコネクション要求を送信すると、再び接続状態に移行する。
When the connection state is reached, the
このように、2つの機器との間で接続が確立される際は、コネクション要求が行われて(接続のためのパラメータがやり取りされて)、2つの機器は接続状態になる。2つの機器が接続状態である場合には、2つの機器の間で所定の時間間隔で通信が行われる。2つの機器が接続状態であるときは、接続の確立の際にやり取りされた情報に基づいて、2つの機器は通信を行う。接続状態は、接続が解除されるまで(例えば、BLE端末20からの応答が無かった期間が接続監視タイムアウトを超えるまで)維持される。携帯端末10においてユーザやアプリケーションからの接続を解除する旨の指示が行われた場合に、2つの機器の間の接続が解除されてもよい。一方、「非接続状態」では、上記コネクションイベントは発生しない。なお、非接続状態であっても、アドバタイジングパケットを用いたブロードキャストを行うことにより、2つの機器の間で通信が行われる場合がある。
In this way, when a connection is established between the two devices, a connection request is made (parameters for connection are exchanged), and the two devices are in a connected state. When the two devices are connected, communication is performed between the two devices at predetermined time intervals. When the two devices are connected, the two devices communicate based on the information exchanged when the connection was established. The connection state is maintained until the connection is released (for example, until the period during which there is no response from the
(本実施形態のBLEネットワーク)
次に本実施形態におけるBLEネットワークの接続形態について説明する。図7は、本実施形態におけるBLEネットワークの接続形態の一例を示す図である。
(BLE network of this embodiment)
Next, the connection form of the BLE network in this embodiment will be described. FIG. 7 is a diagram showing an example of the connection form of the BLE network in the present embodiment.
図7に示すように、本実施形態の無線機器システム1は、BLE規格に基づく無線通信が可能な複数の機器を含み、携帯端末10aと、携帯端末10bと、BLE端末20aと、BLE端末20bとを含む。図7では、携帯端末10aをセントラルとし、BLE端末20aをペリフェラルとして、携帯端末10aとBLE端末20aとが、接続された状態である(接続A)。また、携帯端末10bをセントラルとし、BLE端末20bをペリフェラルとして、携帯端末10bとBLE端末20bとが、接続された状態である(接続B)。
As shown in FIG. 7, the
本実施形態では、図7に示すような状態において、BLE端末20aとBLE端末20bとが通信可能な範囲に存在する場合、BLE端末20aとBLE端末20bとが通信することができる。具体的には、BLE端末20aとBLE端末20bとは、2つの機器間で接続を確立し、接続状態において互いに通信することができる。また、BLE端末20aとBLE端末20bとは、非接続状態においても通信することができる。例えば、BLE端末20aは、マスターである携帯端末10aからの指示無しでBLE端末20bと通信することができる。また、携帯端末10aのアプリケーションレイヤからの要求や携帯端末10aに対するユーザ操作によって、携帯端末10aからBLE端末20aに対して指示が行われ、当該指示に応じて、BLE端末20aとBLE端末20bとの間の通信が行われてもよい。
In the present embodiment, when the
まず、BLE端末20aとBLE端末20bとが接続されない状態において通信する場合について説明する。
First, a case where communication is performed in a state where the
図8は、BLE端末20aとBLE端末20bとが接続されていない状態で通信する場合の一例を示す図である。
FIG. 8 is a diagram showing an example of a case where the
図8に示すように、携帯端末10aとBLE端末20aとは接続された状態であり、コネクションインターバルCIa毎にコネクションイベントが発生する。携帯端末10aとBLE端末20aとの接続AにおけるコネクションインターバルCIaは、例えば、500m秒であってもよい。また、携帯端末10aとBLE端末20aとの接続AにはスレーブレイテンシーSLaが設定されており、例えば、SLa=「4」であるとする。
As shown in FIG. 8, the
また、携帯端末10bとBLE端末20bとは接続された状態であり、コネクションインターバルCIb毎にコネクションイベントが発生する。携帯端末10bとBLE端末20bとの接続BにおけるコネクションインターバルCIbは、例えば、500m秒であってもよい。また、携帯端末10bとBLE端末20bとの接続BにはスレーブレイテンシーSLbが設定されており、例えば、SLb=「5」であるとする。
Further, the
このような状態において、BLE端末20aとBLE端末20bとは、アドバタイジングとスキャンを繰り返し実行する。ここでは、一例として、アドバタイジングのタイプは、上記「ADV_NONCONN_IND」である。すなわち、接続不可であることを示すアドバタイジングパケットが、BLE端末20aとBLE端末20bとの間で送信される。これにより、BLE端末20aからBLE端末20b、及び、BLE端末20bからBLE端末20aに対してデータが送信される。
In such a state, the
具体的には、BLE端末20aは、携帯端末10aとの接続Aが解除されるリスクを回避するために、スレーブレイテンシーSLa内で携帯端末10aと通信を行う一方で、携帯端末10aとの通信を行わない間は、スキャンとアドバタイジングを繰り返し実行してBLE端末20bとの通信を試みる。例えば、BLE端末20aは、携帯端末10aとの間の接続Aにおけるコネクションイベントにおいて携帯端末10aに対して応答を返した後、次の4回のコネクションイベントにおいては携帯端末10aに対して応答を返さない。この4回のコネクションイベントが行われる期間において、BLE端末20aは、スキャンとアドバタイジングを繰り返し実行してBLE端末20bとの通信を試みる。すなわち、BLE端末20aは、スレーブレイテンシーSLaを上限として複数のコネクションイベントを無視し、その無視したコネクションイベントの間に、BLE端末20bと通信するためにスキャンとアドバタイジングを繰り返し実行する。図8に示すように、スキャンとアドバタイジングの間には、休止期間が設けられる。なお、間に休止期間を挟んでスキャンとアドバタイジングとが交互に行われてもよいし(図8)、間に休止期間を挟まずにスキャンとアドバタイジングとが交互に行われてもよい(図示せず)。また、スキャンとアドバタイジングとは必ずしも交互に行われなくてもよい。
Specifically, the
同様に、BLE端末20bは、携帯端末10bとの接続Bが解除されるリスクを回避するために、携帯端末10bと通信を行う一方で、携帯端末10bとの通信を行わない間は、スキャンとアドバタイジングを繰り返し実行する。例えば、BLE端末20bは、携帯端末10bとの間の接続Bにおけるコネクションイベントにおいて携帯端末10bに対して応答を返した後、次の5回のコネクションイベントにおいては携帯端末10bに対して応答を返さずに、スキャンとアドバタイジングを繰り返し実行する。
Similarly, the
BLE端末20aと20bのスキャンとアドバタイジングのタイミングが一致した場合は、BLE端末間で通信が行われる。例えば、BLE端末20aがスキャンを実行している間に、BLE端末20bがアドバタイジングを実行すると、BLE端末20bからBLE端末20aにデータが送信される。逆に、BLE端末20bがスキャンを実行している間に、BLE端末20aがアドバタイジングを実行すると、BLE端末20aからBLE端末20bにデータが送信される。このようにして、BLE端末20同士は、他の機器(携帯端末10)のスレーブとして当該他の機器と接続されている状態においても、互いに通信を行うことができる。
When the scanning and advertising timings of the
なお、以下では、携帯端末10を「親」と呼び、BLE端末20を「子」と呼ぶことがある。「親」はセントラル(マスター)と同じ意味であり、「子」はペリフェラル(スレーブ)と同じ意味である。また、携帯端末10とBLE端末20との間の接続を「親子間接続」と呼び、BLE端末20aとBLE端末20bとの間の通信を「子同士通信」と呼ぶことがある。
In the following, the
ここで、各BLE端末20のスキャンとアドバタイジングのタイミングが一致しなければ、BLE端末20同士は通信することができない。例えば、BLE端末20aがスキャンを実行している間にBLE端末20bがアドバタイジングを行わなければ、BLE端末20aはBLE端末20bからのデータを受信することはできない。
Here, if the scanning and advertising timings of the
BLE端末20aとBLE端末20bとが一定の時間間隔でスキャンとアドバタイジングとを繰り返し実行し、かつ、スキャンとアドバタイジングの長さが固定の場合、BLE端末20aのスキャン(又はアドバタイジング)のタイミングとBLE端末20bのアドバタイジング(又はスキャン)のタイミングとが一致することなく、2つの機器間で通信を行うことができないままとなる場合もありうる。そこで、本実施形態では、BLE端末20aのスキャン(又はアドバタイジング)のタイミングとBLE端末20bのアドバタイジング(又はスキャン)のタイミングとを一致させるために、各BLE端末20において実行されるスキャンとアドバタイジングの実行期間(実行時間の長さ)をランダムに変化させる。
When the
図9は、BLE端末20において実行されるスキャンとアドバタイジングの実行期間が変化する様子を示す図である。
FIG. 9 is a diagram showing how the execution period of scanning and advertising executed in the
図9では、説明のためにBLE端末20aにおいて実行されるスキャンとアドバタイジングの実行期間を固定し、BLE端末20bにおいて実行されるスキャンとアドバタイジングの実行期間を可変にした場合の例が示されている。
FIG. 9 shows an example in which the execution period of scanning and advertising executed on the
図9に示すように、BLE端末20aにおいては、スキャンとアドバタイジングが繰り返し実行され、スキャンの実行期間ST0と、アドバタイジングの実行期間AT0は固定である。また、スキャンもアドバタイジングも行われない休止期間も固定である。これに対して、BLE端末20bでは、スキャンの実行期間、およびアドバタイジングの実行期間はランダムである。例えば、1回目のスキャンの実行期間はST0であり、2回目のスキャンの実行期間はST1(>ST0)、3回目のスキャンの実行期間はST2となる。また、1回目のアドバタイジングの実行期間はAT1であり、2回目のアドバタイジングの実行期間はAT2(>AT1)である。また、図9に示す例では、BLE端末20bにおいて休止期間もランダムである。このように、スキャンの実行期間、アドバタイジングの実行期間、及び、休止期間が変化することにより、BLE端末20aのスキャン(又はアドバタイジング)の実行期間と、BLE端末20bのアドバタイジング(又はスキャン)の実行期間とが重なるようになり、BLE端末20aとBLE端末20bとの間で通信が行われる。
As shown in FIG. 9, in the
なお、図9では、スキャンの実行期間、アドバタイジングの実行期間、および休止期間をランダムに変化させる例について説明したが、スキャンの実行期間、アドバタイジングの実行期間、および休止期間のうちの少なくとも何れか1つがランダムに変化してもよい。なお、これらの期間は、完全にランダムな乱数によって決定されてもよいし、いわゆる疑似乱数(ある程度の規則性を排除できない乱数)により決定されてもよく、これらの乱数はハードウェア又はソフトウェアによって生成されてもよい。また、スキャンの実行期間、及び、アドバタイジングの実行期間を固定して、スキャンの実行タイミング及び/又はアドバタイジングの実行タイミングを可変にしてもよい。すなわち、スキャンの実行期間(実行時間の長さ)、アドバタイジングの実行期間、休止期間、スキャンの実行タイミング、アドバタイジングの実行タイミングのうちの少なくとも何れかを可変にしてもよい。また、スキャンの実行期間、アドバタイジングの実行期間、および休止期間を一定のパターンで変化させてもよい。また、受信処理又は送信処理の一部として休止期間を設けてもよい。 Although FIG. 9 describes an example in which the scan execution period, the advertising execution period, and the pause period are randomly changed, at least one of the scan execution period, the advertising execution period, and the pause period is described. One may change randomly. Note that these periods may be determined by completely random random numbers or so-called pseudo-random numbers (random numbers whose regularity cannot be excluded to some extent), and these random numbers are generated by hardware or software. May be done. Further, the scan execution period and the advertising execution period may be fixed, and the scan execution timing and / or the advertising execution timing may be changed. That is, at least one of the scan execution period (length of execution time), the advertising execution period, the pause period, the scan execution timing, and the advertising execution timing may be variable. In addition, the scan execution period, the advertising execution period, and the pause period may be changed in a certain pattern. Further, a pause period may be provided as a part of the reception process or the transmission process.
また、BLE端末間でスキャン及び/又はアドバタイジングに関する情報をやり取りすることで、スキャン及び/又はアドバタイジングの実行期間や実行タイミングが調整されてもよい。図10は、スキャン及び/又はアドバタイジングの実行タイミングを示す情報をBLE端末20が送信することにより、スキャン及び/又はアドバタイジングの実行タイミングを調整する方法について説明するための図である。
Further, by exchanging information on scanning and / or advertising between BLE terminals, the execution period and execution timing of scanning and / or advertising may be adjusted. FIG. 10 is a diagram for explaining a method of adjusting the execution timing of scanning and / or advertising by transmitting information indicating the execution timing of scanning and / or advertising by the
図10に示すように、例えば、BLE端末20aからのアドバタイジングパケットには、次に自機がアドバタイジング及び/又はスキャンを実行するタイミングを示すタイミング情報が含まれる。このBLE端末20aからのアドバタイジングパケットを受信したBLE端末20bは、当該アドバタイジングパケットに含まれるタイミング情報に基づいて、次に実行するアドバタイジング及び/又はスキャンの実行タイミングを調整する。図10に示す例では、BLE端末20aからのアドバタイジングパケットを受信しない場合、BLE端末20bは、1回目のスキャンの後にタイミングT1でアドバタイジングを行うものとする。この場合において、BLE端末20aからのアドバタイジングパケットを受信したことに応じて、BLE端末20bは、タイミングT2で次のアドバタイジングを行う。具体的には、タイミングT0におけるBLE端末20aからのアドバタイジングパケットには、次にBLE端末20aがスキャンを実行するタイミングを示す情報として「T2」が含まれる。また、BLE端末20aは、タイミングT0におけるアドバタイジングパケットに、次に自機がアドバタイジングを実行するタイミングを示す情報として「T3」を含めて送信してもよい。BLE端末20bは、BLE端末20aが次に実行するスキャンのタイミングT2に合わせて、アドバタイジングを行う。また、BLE端末20aからの情報に応じて、BLE端末20bは、タイミングT3に合わせてスキャンを行ってもよい。これにより、BLE端末20aのスキャンの実行タイミングとBLE端末20bのアドバタイジングの実行タイミングとを一致させることができ、BLE端末20bからBLE端末20aにデータを送信することができる。BLE端末20bから送信されるアドバタイジングパケットにも、次のアドバタイジング及び/又はスキャンの実行タイミングを示すタイミング情報が含まれる。なお、BLE端末20bは、BLE端末20aからのアドバタイジングパケットを受信したことに応じて、BLE端末20bに対してスキャン要求を送信し、当該スキャン要求に応じてBLE端末20bがスキャン応答を送信する。このスキャン応答に上記タイミング情報が含まれてもよい。
As shown in FIG. 10, for example, the advertising packet from the
このようにして、BLE端末20は、次以降にアドバタイジング及び/又はスキャンを実行するタイミングを示す情報を、アドバタイジングパケットに含めて送信する。これにより、BLE端末20同士は、一方の機器がアドバタイジングを実行している間に他方の機器がスキャンを実行するようにアドバタイジング及び/又はスキャンの実行タイミングを調整することができる。なお、BLE端末20は、アドバタイジング及び/又はスキャンの実行期間(実行時間の長さ)を示す情報も含めて、アドバタイジングパケットを送信してもよい。BLE端末20は、他の機器から受信したアドバタイジングパケットに基づいて、次以降にアドバタイジング及び/又はスキャンを実行するタイミングと、その実行期間(実行時間の長さ)とを調整することができる。
In this way, the
以上のように、BLE端末20間でアドバタイジング及び/又はスキャンの実行タイミングの調整が行われることで、BLE端末間の通信を効率よく行うことができる。各BLE端末20においてアドバタイジング及びスキャンの実行タイミングや実行時間がランダムに決定される場合は、一方のアドバタイジングの実行期間と他方のスキャンの実行期間とが偶然に重ならなければ2つの機器は互いに通信をすることができない。しかしながら、図10に示した例では、一方のアドバタイジングの実行期間と他方のスキャンの実行期間とが重なるように、各BLE端末20がアドバタイジング及びスキャンのタイミングを調整するため、効率よく2つの機器間で通信を行うことができる。
As described above, by adjusting the execution timing of advertising and / or scanning between the
次に、BLE端末20同士の通信を行うための、携帯端末10とBLE端末20との間の接続(親子間接続)の調整について説明する。
Next, adjustment of the connection (parent-child connection) between the
図11は、携帯端末10(セントラル)とBLE端末20(ペリフェラル)との間の接続の調整が行われる様子を示す図である。 FIG. 11 is a diagram showing how the connection between the mobile terminal 10 (central) and the BLE terminal 20 (peripheral) is adjusted.
携帯端末10aとBLE端末20aとは接続された状態であり、携帯端末10bとBLE端末20bとは接続された状態である。携帯端末10aとBLE端末20aとの間の接続AのコネクションインターバルCIaは、例えば500m秒であり、スレーブレイテンシーSLaは例えば「4」である。携帯端末10bとBLE端末20bとの間の接続BのコネクションインターバルCIbは、例えば500m秒であり、スレーブレイテンシーSLbは例えば「5」である。
The
図11に示すように、BLE端末20aとBLE端末20bとはアドバタイジングとスキャンとを繰り返し実行することで、互いに通信を行う。ここで、BLE端末20aがタイミングTa1における接続Aのコネクションイベントにおいて携帯端末10aに対して応答を返さなければ、コネクションイベントを無視した回数が、携帯端末10aとの接続AにおけるスレーブレイテンシーSLaを超えてしまう。このため、BLE端末20aは、タイミングTa1において携帯端末10aと通信を行う。BLE端末20aは携帯端末10aと通信を行っている間は、アドバタイジングもスキャンも行わない。また、BLE端末20bも、コネクションイベントを無視した回数が携帯端末10bとの間の接続BにおけるスレーブレイテンシーSLbを越えないように、タイミングTb1においては携帯端末10bと通信を行う一方で、アドバタイジングもスキャンも行わない。
As shown in FIG. 11, the
このように、BLE端末20(ペリフェラル)は、携帯端末10(セントラル)との通信を優先して行う。これにより、BLE端末20は、少なくともスレーブレイテンシーの範囲内で携帯端末10と通信を行うことができる。しかしながら、BLE端末20間の通信の効率は悪くなる。そこで本実施形態では、スレーブレイテンシーの範囲内で携帯端末10とBLE端末20との通信を行いつつ、BLE端末20間の通信の効率を上げるために、携帯端末10とBLE端末20との間の通信のタイミングが調整される。具体的には、携帯端末10aとBLE端末20aとの間の通信のタイミングTa(BLE端末20aが携帯端末10aに応答パケットを返すタイミング)と、携帯端末10bとBLE端末20bとの間の通信のタイミングTb(BLE端末20bが携帯端末10bに応答パケットを返すタイミング)とが近くなるように、これらの通信のタイミングが調整される。
In this way, the BLE terminal 20 (peripheral) gives priority to communication with the mobile terminal 10 (central). As a result, the
例えば、BLE端末20aは、コネクションインターバルCIaと、コネクションイベントを無視した回数と、スレーブレイテンシーSLaとに基づいて、次に携帯端末10aに応答パケットを送信するタイミングTa2を計算することができる。BLE端末20aは、次に携帯端末10aと通信を行うタイミングTa2を示す情報を、アドバタイジングパケットに含めて送信する。当該アドバタイジングパケットをBLE端末20bが受信すると、BLE端末20bは、タイミングTa2と近いタイミングTb2において、携帯端末10bと通信を行う(携帯端末10bに応答パケットを送信する)。ここで、BLE端末20bは、タイミングTb2において携帯端末10bと通信を行わなかったとしても、コネクションイベントを無視する回数がスレーブレイテンシーSLbの範囲内であるため、タイミングTb2において携帯端末10bと通信を行わなくてもよい。しかしながら、BLE端末20bは、BLE端末20aから受信したタイミングTa2を示す情報に基づいて、タイミングTb2においてBLE端末20aとの通信のためのスキャン及びアドバタイジングを行わず、携帯端末10bと通信を行う。
For example, the
このように、携帯端末10とBLE端末20との間の通信のタイミングが調整される。
In this way, the timing of communication between the
図12は、図11の後の状態を示す図であり、携帯端末10(セントラル)とBLE端末20(ペリフェラル)との間の接続の調整が行われた後の各機器間の通信の一例を示す図である。図11で示したような調整が行われた後は、図12に示すように、携帯端末10aとBLE端末20aとの間の通信のタイミング(Ta3〜Ta5)と、携帯端末10bとBLE端末20bとの間の通信のタイミング(Tb3〜Tb5)とが近くなる。図12に示す例では、BLE端末2bは、スレーブレイテンシーSLbが到来する前に、携帯端末10bと通信を行う。これにより、BLE端末20は、携帯端末10に対してスレーブレイテンシーの範囲内で応答パケットを返すことによって携帯端末10との接続が解除されるリスクを回避しつつ、BLE端末20同士で効率よく通信を行うことができる。
FIG. 12 is a diagram showing a state after FIG. 11, and is an example of communication between each device after the connection between the mobile terminal 10 (central) and the BLE terminal 20 (peripheral) is adjusted. It is a figure which shows. After the adjustment as shown in FIG. 11 is performed, as shown in FIG. 12, the timing of communication between the
次に、BLE端末20同士が接続を確立して、接続状態で通信を行う場合について説明する。図13は、携帯端末10とBLE端末20とが接続された状態において、BLE端末20同士が接続を確立する様子の一例を示す図である。
Next, a case where the
図13に示すように、図11と同様、携帯端末10aとBLE端末20aとは接続された状態であり、携帯端末10bとBLE端末20bとは接続された状態である。この状態において、BLE端末20a及びBLE端末20bは、図8に示すようなスキャンとアドバタイジングとを繰り返し実行する。上述のように、繰り返し行われるスキャン及びアドバタイジングの実行期間はランダムに変化する(図9参照)。図13に示すように、例えば、BLE端末20aがスキャンを実行している間に、BLE端末20bは、接続可能であることを示すアドバタイジングパケット(「ADV_IND」)を不特定の機器にブロードキャストする。BLE端末20aは、当該アドバタイジングパケットを受信する。すると、BLE端末20aは、BLE端末20bに対してコネクション要求を送信する。そして、BLE端末20aをセントラル(マスター)とし、BLE端末20bをペリフェラル(スレーブ)としてBLE端末20aとBLE端末20bとの間の接続C(子同士の接続)が確立される。子同士の接続においては、BLE端末20a及びBLE端末20bの両方がセントラルになりうるが、スキャナ(イニシエータ)がセントラルになるため、図13の例では、BLE端末20aが、BLE端末20bとの接続Cにおいてはセントラルとなる。
As shown in FIG. 13, as in FIG. 11, the
BLE端末20aとBLE端末20bとの間の接続Cが確立される際には、上述と同様に、コネクションインターバルCIcやスレーブレイテンシーSLcが決定される。例えば、スレーブレイテンシーSLcとして、「4」が決定される。BLE端末20aとBLE端末20bとの間の接続CにおけるコネクションインターバルCIcは、親子間接続のコネクションインターバルCIa(又はCIb)に応じて決定されてもよい。
When the connection C between the
例えば、BLE端末20aは、携帯端末10aとBLE端末20aとの間の接続AにおけるコネクションインターバルCIaよりも小さな値(例えば、250m秒)を、CIcとして設定してもよい。CIcがCIaよりも短くなるように設定されることにより、BLE端末20aとBLE端末20bとの間の通信を頻繁に行うことができ、BLE端末20aとBLE端末20bとの間でより多くの情報をやり取りすることができる。逆に、BLE端末20aは、CIaよりも大きな値(例えば、1秒)をCIcとして設定してもよい。この場合は、携帯端末10aとBLE端末20aとの間の通信をより優先して行うことができる。
For example, the
また、BLE端末20aとBLE端末20bとの間の接続CにおけるスレーブレイテンシーSLcは、親子間接続におけるSLa(又はSLb)に応じて決定されてもよい。例えば、BLE端末20aは、SLaよりも大きな値をSLcとして決定してもよい。逆に、BLE端末20aは、SLaよりも小さな値をSLcとして決定してもよい。また、BLE端末20aは、接続AにおけるCIa及びSLaに基づいて、CIc及び/又はSLcを設定してもよい。また、BLE端末20aは、携帯端末10aとの接続における通信の状況(上記CIa、SLa、携帯端末10aとの間の接続Aにおける通信量、携帯端末10aとの間の接続Aにおける電波の状態等)に応じて、CIc及び/又はSLcを決定してもよい。
Further, the slave latency SLc in the connection C between the
図14は、図13の後の状態を示す図であり、BLE端末20aとBLE端末20bとが接続された状態における通信の一例を示す図である。
FIG. 14 is a diagram showing a state after FIG. 13, and is a diagram showing an example of communication in a state where the
図14に示すように、BLE端末20aとBLE端末20bとが接続された状態では、BLE端末20aとBLE端末20bとの接続Cにおけるコネクションイベントが繰り返し発生し、2つの機器間でデータの送受信が行われる。ここで、携帯端末10aとBLE端末20aとの間の通信が行われる間は、BLE端末20aは、BLE端末20bとの間の通信を制限する。すなわち、BLE端末20aは、携帯端末10aとの接続Aにおけるコネクションイベントが発生するタイミングにおいては、携帯端末10aとの通信を優先的に行い、BLE端末20bとの通信を行わない。同様に、携帯端末10bとBLE端末20bとの間の通信が行われる間は、BLE端末20bは、BLE端末20aとの間の通信を制限する。すなわち、BLE端末20は、親子間の通信を子同士の通信よりも優先して行う。BLE端末20aとBLE端末20bとの間の通信が制限される期間は、スレーブレイテンシーSLcの範囲内の期間である。このように、スレーブレイテンシーSLcの範囲内でBLE端末20aとBLE端末20bとの間の通信を制限することで、携帯端末10aとBLE端末20aとの間の接続A、及び、携帯端末10bとBLE端末20bとの間の接続Bが解除されるリスクを回避しつつ、BLE端末20aとBLE端末20bとの間の接続Cが解除されるリスクを回避することができる。
As shown in FIG. 14, when the
図15は、BLE端末20aとBLE端末20bとの間の通信を制限する方法の具体例を示す図である。
FIG. 15 is a diagram showing a specific example of a method of limiting communication between the
図15に示すように、BLE端末20aは、携帯端末10aと通信を行うタイミングTaよりも前のタイミングTc1におけるコネクションイベントにおいて、コネクションインターバルを、現在のCIcよりも長いCIc2に変更する。BLE端末20aとBLE端末20bとの間の接続Cにおいては、BLE端末20aがセントラルであるため、BLE端末20aは、自由にコネクションインターバルCIcを変更することができる。コネクションインターバルがCIcからCIc2に変更されると、BLE端末20aとBLE端末20bとの間の接続Cにおける次のコネクションイベントは、携帯端末10aとの通信(タイミングTaにおける通信)が行われた後に発生することになる。このため、携帯端末10aとBLE端末20aとの間の通信が行われる間は、BLE端末20aはBLE端末20bと通信を行わないようにすることができる。このように、BLE端末20aは、親である携帯端末10aとの間の接続Aにおけるコネクションイベントのタイミングが、BLE端末20bとの間の接続Cにおけるコネクションイベントのタイミングと被らないように(例えば、携帯端末10aとの間の接続Aにおけるコネクションイベントを優先させるために)、現在のコネクションインターバルを任意に変更することができる。
As shown in FIG. 15, the
また、携帯端末10bとBLE端末20bとの間の通信が行われる場合には、BLE端末20bは、BLE端末20aとの通信を行わず、携帯端末10bと通信を優先して行う。図15に示す例では、BLE端末20bは、携帯端末10bと通信を行うために、BLE端末20aとBLE端末20bとの間の接続Cにおけるコネクションイベントを1回だけスキップしている。BLE端末20aとBLE端末20bとの間の接続CにおけるスレーブレイテンシーSLcは「4」であるため、BLE端末20bは、1回のコネクションイベントをスキップすることができる。BLE端末20aとBLE端末20bとの間の接続Cにおける次のコネクションイベント(タイミングTc2)では、BLE端末20aは、BLE端末20bに対して、コネクションインターバルをCIc2からCIcに戻す旨を通知する。
Further, when the communication between the
なお、BLE端末20bは、接続CにおけるスレーブレイテンシーSLcを変更することができる。例えば、BLE端末20bは、現在のスレーブレイテンシーSLcよりも長い期間BLE端末20aとの通信を行わないようにする必要があると判断した場合には、接続Cにおけるコネクションイベントにおいて、スレーブレイテンシーSLcの変更の要求をBLE端末20aに送信する。例えば、BLE端末20bが携帯端末10bに対して大量のデータを送信する必要がある場合には、BLE端末20bは、SLcを現在よりも長くするようにスレーブレイテンシーの変更要求をBLE端末20aに送信する。また、BLE端末20bは、CIcを現在よりも長くするように、コネクションインターバルの変更要求をBLE端末20aに送信してもよい。
The
このように、BLE端末20aとBLE端末20bとの間の接続CにおけるコネクションインターバルCIcやスレーブレイテンシーSLcを変更することで、BLE端末20aとBLE端末20bとの間の通信を制限することができる。これにより、BLE端末20同士の通信よりも携帯端末10とBLE端末20との間の通信を優先することができ、スレーブレイテンシーの範囲内で親子間の通信を行うことができる。例えば、BLE端末20aは、携帯端末10aとの接続を維持することが困難な場合は、BLE端末20bとの接続を解除してもよい。すなわち、親子間の接続を維持することが困難な場合は、子同士の接続が解除されてもよい。親子間の接続を維持することが困難かどうかの判断は、例えば、親子間の接続におけるスレーブレイテンシー、親子間の接続における電波の強度、エラー率等に基づいて行われてもよい。例えば、BLE端末20は、携帯端末10との接続におけるコネクションイベントを無視した回数がスレーブレイテンシーSLを超える場合、親子間の接続を維持することが困難(親子間の接続が解除されるリスクが高い)と判断してもよいし、コネクションイベントを無視した回数が「SL+所定数」を超える場合、親子間の接続を維持することが困難と判断してもよい。また、親子間で大量のデータを短時間で交換する必要がある場合には、BLE端末20は、CIcやSLcを変更することで子同士の通信を行わないようにしてもよい。例えば、携帯端末10aにおいて、所定のアプリケーション(例えばゲームアプリケーション)が行われ、携帯端末10aとBLE端末20bとの間で頻繁に通信を行う必要がある場合には、BLE端末20aは、携帯端末10aとの通信を優先して行ってもよい(BLE端末20bとの通信を行わないようにしてもよい)。
In this way, by changing the connection interval CIc and the slave latency SLc in the connection C between the
図16は、BLE端末20aとBLE端末20bとが接続される場合において携帯端末10とBLE端末20との間の接続が調整された場合の通信の一例を示す図である。
FIG. 16 is a diagram showing an example of communication when the connection between the
図16に示すように、BLE端末20aとBLE端末20bとが接続された状態であり、コネクションインターバルCIc毎に子同士の接続Cにおけるコネクションイベントが発生する。また、図12において説明したように、携帯端末10aとBLE端末20aとの通信のタイミング(Ta3〜Ta5)と、携帯端末10bとBLE端末20bとの通信のタイミング(Tb3〜Tb5)とが調整されて、これら2つの通信のタイミングがほぼ一致した状態となっている。この場合において、BLE端末20a(20b)は、携帯端末10a(10b)との通信を行うタイミングを含む所定期間は、子同士の通信を制限する。BLE端末20aが携帯端末10aと通信を行うタイミング(Ta3〜Ta5)と、BLE端末20bが携帯端末10bと通信を行うタイミング(Tb3〜Tb5)とがほぼ一致するため、子同士はほぼ同じタイミングで子同士の通信を制限することになる。このような調整が行われることで、BLE端末20は携帯端末10との接続が解除されるリスクを回避しつつ、BLE端末20間で効率よく通信を行うことができる。
As shown in FIG. 16, the
[各機器の処理の詳細]
(携帯端末10の処理)
次に、携帯端末10およびBLE端末20において行われる処理の詳細について説明する。図17は、携帯端末10において行われる処理の一例を示すフローチャートである。図18は、図17のステップS108の詳細フローチャートである。携帯端末10は、図17及び図18に示す処理を実行するためのプロセッサを備えており、当該プロセッサはBLE通信モジュールとして実装されている。なお、以下では携帯端末10のBLE通信モジュール(プロセッサ)が図17及び図18に示す処理を実行するものとして説明するが、図17及び図18に示す処理の一部又は全部は、携帯端末10のCPU又は他のプロセッサが通信プログラムを実行することによって行われてもよい。
[Details of processing of each device]
(Processing of mobile terminal 10)
Next, the details of the processing performed in the
以下では、携帯端末10aとBLE端末20aとの間で接続が確立される場合について説明するが、携帯端末10bとBLE端末20bとの間の接続においても同様の流れである。
Hereinafter, the case where the connection is established between the
図17に示すように、携帯端末10a(のBLE通信モジュール)は、まず、スキャンを実行するタイミングか否かを判定する(ステップS100)。スキャンを実行するタイミングと判定した場合(ステップS100:YES)、携帯端末10aは、スキャンを実行する(ステップS101)。具体的には、携帯端末10aは、3つのチャネル37〜39を切り替えながらスキャンを実行する。携帯端末10aは、一定の時間間隔でスキャンを実行してもよいし、スキャンを実行するタイミング、スキャンを実行する時間の長さをランダムに決定してもよい。スキャンを実行するタイミングでないと判定した場合(ステップS100:NO)、携帯端末10aは、再びステップS100の処理を行う。
As shown in FIG. 17, the
ステップS101に続いて、携帯端末10aは、アドバタイザ(BLE端末20a)からアドバタイジングパケットを受信したか否かを判定する(ステップS102)。アドバタイジングパケットを受信しなかった場合(ステップS102:NO)、携帯端末10aは、ステップS100の処理を再び実行する。
Following step S101, the
ステップS102においてアドバタイザからアドバタイジングパケットを受信したと判定した場合、携帯端末10aは、受信したアドバタイジングパケットに基づいて、接続可能であることを示すアドバタイジングパケットか否かを判定する(ステップS103)。具体的には、ステップS103においては、携帯端末10aは、受信したアドバタイジングパケットが、「ADV_IND」又は「ADV_DIRECT_IND」か否かを判定する。
When it is determined in step S102 that the advertising packet has been received from the advertiser, the
接続可能であることを示すアドバタイジングパケットと判定しなかった場合(ステップS103:NO)、携帯端末10aは、アドバタイジングパケットに含まれるデータを取得する(ステップS104)。具体的には、携帯端末10aは、アドバタイジングパケットのタイプが「ADV_NONCONN_IND」である場合、アドバタイジングパケットに含まれるデータを取得する。
When it is not determined that the advertising packet indicates that the connection is possible (step S103: NO), the
接続可能であることを示すアドバタイジングパケットと判定した場合(ステップS103:YES)、携帯端末10aは、アドバタイジングパケットを送信したBLE端末20aにコネクション要求を送信する(ステップS105)。このコネクション要求には、携帯端末10aのアドレス、BLE端末20aのアドレス、アクセスアドレス、コネクションインターバルCIa、スレーブレイテンシーSLa、ホップ数、接続監視タイムアウト等の情報が含まれる。上述のようにアクセスアドレスは、接続を識別するためのものであり、接続毎に携帯端末10aがランダムに決定する。なお、受信したアドバタイジングパケットのタイプが「ADV_SCAN_IND」である場合、携帯端末10aは、当該アドバタイジングパケットを送信したアドバタイザに対して、スキャン要求を送信する。携帯端末10aは、スキャン要求に対するスキャン応答を受信した場合、ステップS105においてコネクション要求を送信する。
When it is determined that the advertising packet indicates that the connection is possible (step S103: YES), the
コネクション要求を送信した後、携帯端末10aは、携帯端末10aは、BLE端末20aとの接続Aを確立する(ステップS106)。
After transmitting the connection request, the
ステップS106の後、携帯端末10aは、接続中処理を行う(ステップS107)。このステップS107の処理は、携帯端末10aとBLE端末20aとの接続Aにおける通信を行うための処理であり、携帯端末10aとBLE端末20aとが接続状態を維持している間、繰り返し実行される。以下、図18を参照して、携帯端末10aの接続中処理の詳細について説明する。
After step S106, the
図18に示すように、携帯端末10aは、時間カウンタを加算する(ステップS110)。具体的には、携帯端末10aは、一定の時間間隔でステップS110の処理を実行し、ステップS110の処理を実行する毎に時間カウンタを1ずつ増加させる。携帯端末10aは、時間カウンタの値に基づいて、前回のコネクションイベントを実行してからコネクションインターバルCIaが経過したか否かを判定する(ステップS111)。
As shown in FIG. 18, the
前回のコネクションイベントからコネクションインターバルCIaが経過したと判定した場合(ステップS111:YES)、携帯端末10aは、BLE端末20aとの接続Aにおけるコネクションイベントに係る処理(ステップS112〜S120)を実行する。具体的には、携帯端末10aは、BLE端末20aに送信すべき送信データがあるか否かを判定する(ステップS112)。例えば、アプリケーションからの要請によって携帯端末10aが、アプリケーションデータをBLE端末20aから取得する必要がある場合は、ステップS112においてYESと判定される。また、携帯端末10aがアプリケーションデータをBLE端末20aに送信する必要がある場合は、ステップS112においてYESと判定される。
When it is determined that the connection interval CIa has elapsed since the previous connection event (step S111: YES), the
ステップS112においてYESと判定した場合、携帯端末10aは、パケットに当該送信データを含める(ステップS113)。例えば、BLE端末20aからアプリケーションデータを取得する場合には、携帯端末10aは、送信データとして、BLE端末20aからデータを取得するための取得要求をパケットに含める。
If YES is determined in step S112, the
ステップS113の処理を実行した場合、又は、ステップS112でNOと判定した場合、携帯端末10aは、パケットをBLE端末20aに送信する(ステップS114)。具体的には、携帯端末10aは、データチャネル0〜36のうちの何れかを用いてデータパケットをBLE端末20aに送信する。ステップS113の処理が実行された場合には、パケットのペイロードにはアプリケーションデータが含まれ、ステップS113の処理が実行されなかった場合には、ペイロードにはデータは含まれない。なお、このデータパケットには、接続が確立される際にランダムに決定されたアクセスアドレスが含まれる。このアクセスアドレスに基づいてBLE端末20aは、携帯端末10aからのデータパケットを受信することができる。また、携帯端末10aが、コネクションインターバルCIaを変更する場合には、新たなCIaの情報がパケットに含められてBLE端末20aに送信される。
When the process of step S113 is executed, or when NO is determined in step S112, the
ステップS114に続いて、携帯端末10aは、接続状態のBLE端末20aから応答パケットを受信したか否かを判定する(ステップS115)。BLE端末20aから応答パケットを受信した場合(ステップS115:YES)、携帯端末10aは、受信したデータの処理を行う(ステップS116)。ここでは、携帯端末10a(のBLE通信モジュール)は、BLE端末20aから上記取得要求に応じたデータを受信した場合、当該データをアプリケーションに渡す。
Following step S114, the
ステップS116の処理の後、携帯端末10aは、変数Nに「0」を設定するとともに、変数Tをリセットし(ステップS117)、再びステップS110に戻る。ここで、「N」は、携帯端末10aとBLE端末20aとの間の接続AにおいてBLE端末20aから応答パケットを受信しなかったコネクションイベントの回数を示す。すなわち、「N」は、BLE端末20aがコネクションイベントを無視(スキップ)した回数を示す。また、変数「T」は、携帯端末10aがBLE端末20aから応答パケットを受信してからの経過時間を示す変数である。携帯端末10aは、BLE端末20aとの接続を解除するか否かをこの変数「T」を用いて判定する。例えば、「T」は、時間経過に応じて加算されてもよいし、ステップS110の処理が行われる毎に1ずつ加算されてもよい。
After the process of step S116, the
一方、BLE端末20aから応答パケットを受信しなかった場合(ステップS115:NO)、携帯端末10aは、「N」に1を加算する(ステップS118)。そして、携帯端末10aは、「T」が接続Aにおける接続監視タイムアウト以上か否かを判定する(ステップS119)。Tが接続監視タイムアウト以上と判定した場合には、携帯端末10aは、BLE端末20aとの接続Aを解除する(ステップS120)。一方、Tが接続監視タイムアウト以上と判定しなかった場合には、携帯端末10aは、処理をステップS110に戻す。
On the other hand, when the response packet is not received from the
(BLE端末20aの処理)
次に、図19〜図23を参照してBLE端末20において行われる処理の詳細について説明する。図19は、BLE端末20aにおいて行われる処理の一例を示すフローチャートである。ここでは、BLE端末20aが図19〜図22の処理を行い、BLE端末20bが図23の処理を行う場合を想定する。BLE端末20は、図19〜図23に示す処理を実行するためのプロセッサを備えており、当該プロセッサはBLE通信モジュール25として実装されている。以下では、BLE端末20のBLE通信モジュール25(プロセッサ)が図19〜図23に示す処理を実行するものとして説明する。なお、BLE端末20はアプリケーションを実行可能なCPU及び/又は他のプロセッサ(BLE通信モジュール25として実装されているかどうかに関わらない)を備えてもよく、当該CPU及び/又は他のプロセッサが通信プログラムを実行することによって図19〜図23に示す処理の一部又は全部が行われてもよい。
(Processing of BLE terminal 20a)
Next, the details of the processing performed in the
図19に示すように、BLE端末20aは、アドバタイジングを実行するタイミングか否かを判定する(ステップS200)。アドバタイジングを実行するタイミングでないと判定した場合(ステップS200:NO)、BLE端末20aは、再びステップS200の処理を実行する。
As shown in FIG. 19, the
アドバタイジングを実行するタイミングであると判定した場合(ステップS200:YES)、BLE端末20aは、アドバタイジングを行う(ステップS201)。具体的には、BLE端末20aは、ステップS201において3つのチャネル37〜39を切り替えながらアドバタイジングパケットを送信する。ここでは、BLE端末20aは、自機の周辺に存在する不特定の他の機器と接続をするためのアドバタイジングパケット(上記「ADV_IND」)を送信するものとする。
When it is determined that it is the timing to execute the advertising (step S200: YES), the
次に、BLE端末20aは、携帯端末10a(イニシエータ)から上記ステップS105において送信されたコネクション要求を受信したか否かを判定する(ステップS202)。他の機器からコネクション要求を受信しなかった場合(ステップS202:NO)、BLE端末20aは、ステップS200の処理を再び実行する。
Next, the
コネクション要求を受信した場合(ステップS202:YES)、BLE端末20aは、コネクション要求に含まれるCI、SL、接続監視タイムアウト、ホップ数、アクセスアドレス等を設定して、接続状態に遷移し、BLE端末20aと携帯端末10aとの間の接続Aが確立される(ステップS203)。接続Aが確立された後、BLE端末20aは、接続中処理を行う(ステップS204)。接続中処理は、携帯端末10aとBLE端末20aとの接続Aが維持されている間、繰り返し実行される。以下、BLE端末20aの接続中処理の詳細について説明する。
When the connection request is received (step S202: YES), the
(BLE端末20の接続中処理)
図20は、ステップS205の接続中処理の詳細フローチャートである。
(Processing during connection of BLE terminal 20)
FIG. 20 is a detailed flowchart of the process during connection in step S205.
図20に示すように、BLE端末20aは、時間カウンタを加算する(ステップS210)。具体的には、BLE端末20aは、一定の時間間隔でステップS210の処理を実行し、ステップS210の処理を実行する毎に時間カウンタを1ずつ増加させる。BLE端末20aは、時間カウンタの値に基づいて、接続Aにおける前回のコネクションイベントから(携帯端末10aからパケットを受信してから)コネクションインターバルCIaが経過したか否かを判定する(ステップS211)。なお、BLE端末20aは、実際にはステップS211において、前回のコネクションイベントからCIaよりも所定時間(上記時刻の計測誤差を考慮して算出される時間)だけ短い時間が経過したか否かを判定する。
As shown in FIG. 20, the
前回のコネクションイベントからコネクションインターバルCIaが経過したと判定した場合(ステップS211:YES)、BLE端末20aは、接続Aにおけるコネクションイベントをスキップするか否かを判定する(ステップS212)。具体的には、「N」がスレーブレイテンシーSLa以上の場合、BLE端末20aは、ステップS212においてNOと判定する。ここで、「N」は、BLE端末20aがコネクションイベントをスキップした回数(連続して携帯端末10aに対して応答パケットを送信しなかったコネクションイベントの回数)を示す。すなわち、BLE端末20aは、連続して携帯端末10aに応答パケットを返さなかった回数NがスレーブレイテンシーSLaに達した場合、今回のコネクションイベントにおいて携帯端末10aに応答パケットを返すと判定する。
When it is determined that the connection interval CIa has elapsed since the previous connection event (step S211: YES), the
また、「N」がスレーブレイテンシーSLa未満である場合でも、BLE端末20aは、ステップS212においてNOと判定することがある。例えば、図11や図16で示した親子間の接続の調整のためにスレーブレイテンシーSLaに到達する前に携帯端末10aに応答を送信する場合は、BLE端末20aは、ステップS212においてNOと判定する。また、BLE端末20aは、携帯端末10aに送信すべきデータがある場合も、ステップS212においてNOと判定する。なお、ステップS212の処理では、BLE端末20aは、まず、送信すべきデータ(アプリケーションデータや図11等で示した親子間の接続の調整のためのデータ)があるか否かを判定し、その判定結果がNOである場合に、NがSLa以上か否かを判定してもよい。すなわち、BLE端末20aは、携帯端末10aに送信すべきデータがある場合は、今回のコネクションイベントにおいて携帯端末10aに当該送信すべきデータを含む応答パケットを送信するために、ステップS212においてNOと判定し、携帯端末10aに送信すべきデータがない場合でも、NがSLa以上であれば空の応答パケットを送信するためにステップS212においてNOと判定してもよい。
Further, even when "N" is less than the slave latency SLa, the
ステップS212においてNOと判定した場合、BLE端末20aは、データチャネル0〜36のうちの何れかを用いて携帯端末10aからパケットを受信する(ステップS213)。続いて、BLE端末20aは、データチャネル0〜36のうちの何れかを用いて携帯端末10aに応答パケットを送信する(ステップS214)。ステップS214では、BLE端末20aは、携帯端末10aに送信すべきアプリケーションデータがある場合は当該データを含めてパケットを送信する。
If NO is determined in step S212, the
次に、BLE端末20aは、受信したデータの処理を行う(ステップS215)。ステップS215の処理では、上記携帯端末10aから所定のデータを受信した場合、BLE端末20aのBLE通信モジュールは、当該受信したデータをアプリケーションに渡す。そして、BLE端末20aは、変数Nに「0」を設定し(ステップS216)、再びステップS210に戻る。
Next, the
なお、上記ステップS213の処理は、ステップS212の処理の前に行なわれてもよい。すなわち、BLE端末20aは、コネクションイベントのタイミングが到来すると、まず、携帯端末10aからのデータパケットを受信し(ステップS213)、次に、ステップS212において今回のコネクションイベントをスキップするか否かを判定してもよい。例えば、BLE端末20aは、ステップS213において携帯端末10aからデータパケットを受信し、次に、ステップS212の処理を実行する。このステップS212の処理では、上述のように、BLE端末20aは、携帯端末10aに送信すべきデータ(アプリケーションデータ等)があるか否かの判定と、NがSL以上か否かの判定とを行う。そして、BLE端末20aは、これらの判定結果に基づいて、今回のコネクションイベントをスキップするか否かを判定する。
The process of step S213 may be performed before the process of step S212. That is, when the timing of the connection event arrives, the
一方、BLE端末20aは、ステップS212でYESと判定した場合、すなわち、今回のコネクションイベントをスキップすると判定した場合、「N」に1を加算し(ステップS217)、次にステップS218の処理を実行する。
On the other hand, if the
ステップS211でNOと判定した場合、又は、ステップS217を実行した場合、BLE端末20aは、BLE端末間通信処理を行う(ステップS218)。ステップS218のBLE端末間通信処理は、携帯端末10aとの接続Aにおけるコネクションインターバルの間(S211でNO)、又は、接続Aのコネクションイベントをスキップすると判定した場合(S212でYES)、実行される。BLE端末間通信処理は、BLE端末20aが携帯端末10aと接続している状態において、他のBLE端末20bと通信(子同士の通信)を行うための処理である。BLE端末間通信処理は、携帯端末10aからの指示が無くても実行される。なお、BLE端末間通信処理を実行するか否かの設定が、携帯端末10aから命令に基づいて行われてもよい。
When it is determined as NO in step S211 or when step S217 is executed, the
なお、BLE端末20aは、図20の処理を実行中に、前回携帯端末10aと通信を行ってからの経過時間が接続監視タイムアウト以上か否かを判定する。例えば、BLE端末20aは、前回携帯端末10aからパケットを受信してからの経過時間が接続監視タイムアウト以上か否かを判定する。あるいは、BLE端末20aは、前回携帯端末10aに対して応答パケットを送信してからの経過時間が接続監視タイムアウト以上か否かを判定してもよい。そして、前回の携帯端末10aとの通信からの経過時間が接続監視タイムアウト以上の場合には、BLE端末20aは、携帯端末10aとの接続を解除し、接続状態から非接続状態に移行して、図20の処理を終了する。この接続監視タイムアウトは、接続の確立時に携帯端末10aによって決定されて通知される。
While executing the process of FIG. 20, the
以下、ステップS218におけるBLE端末間通信処理の詳細について説明する。 Hereinafter, details of the BLE terminal-to-terminal communication process in step S218 will be described.
(BLE端末通信処理)
図21は、ステップS218のBLE端末間通信処理の詳細フローチャートである。図21においては、BLE端末20aが携帯端末10aと接続している状態において、BLE端末20bと通信する例について説明する。
(BLE terminal communication processing)
FIG. 21 is a detailed flowchart of the BLE terminal-to-terminal communication process in step S218. In FIG. 21, an example of communicating with the BLE terminal 20b in a state where the
図21に示すように、BLE端末20aは、アドバタイジングを実行するタイミングか否かを判定する(ステップS231)。例えば、アドバタイジングを実行するタイミングとして、一定のタイミングが設定されてもよいし、図9で示したように、アドバタイジングを実行するタイミングがランダムに決定されてもよい。また、図10で説明したように、他の機器から受信したアドバタイジングパケットに基づいてアドバタイジングを実行するタイミングが決定されてもよい。
As shown in FIG. 21, the
アドバタイジングを実行するタイミングと判定した場合(ステップS231:YES)、BLE端末20aは、アドバタイジングを行う(ステップS232)。具体的には、BLE端末20aは、ステップS232において、3つのアドバタイジングチャネル37〜39を切り替えながら複数のアドバタイジングパケットを送信する。
When it is determined that it is the timing to execute the advertising (step S231: YES), the
例えば、BLE端末20aは、他のBLE端末20bとコネクションを確立せずに通信を行う場合、アドバタイジングパケットのタイプとして「ADV_NONCONN_IND」を設定し、アプリケーションデータを含めてブロードキャストでパケットを送信する。アプリケーションデータのサイズが、1のアドバタイジングパケットが送信可能なデータのサイズを超えている場合、BLE端末20aは、アプリケーションデータを分割して、複数のアドバタイジングパケットに分けて送信する。この場合、BLE端末20aは、分割したそれぞれのデータが、アプリケーションデータにおけるどの位置(何番目)かを示す情報をそれぞれのアドバタイジングパケットに含めて送信する。例えば、アプリケーションデータが75オクテットである場合、BLE端末20aは、アプリケーションデータを3つに分けて、25オクテットずつの分割データにする。これら3つの分割データは、先頭から順に1,2,3番と定義され、この順で送信される。なお、受信側でデータが受信できない可能性を考慮して、3つの分割データは繰り返し(複数回)送信されてもよい。具体的には、BLE端末20aは、1番目の分割データ(アプリケーションデータの先頭から1/3の部分)と、シーケンス番号(1番)とを含む1のアドバタイジングパケットを送信する。次に、BLE端末20は、2番目の分割データ(アプリケーションデータの中央部分)と、シーケンス番号(2番)とを含む1のアドバタイジングパケットを送信する。そして、BLE端末20aは、3番目の分割データ(アプリケーションデータの後から1/3の部分)と、シーケンス番号(3番)とを含む1のアドバタイジングパケットを送信する。これら3つのアドバタイジングパケットをBLE端末20bが受信し、シーケンス番号にしたがって分割データを並べることで、BLE端末20bは、BLE端末20aから送信されたアプリケーションデータを再構築することができる。なお、BLE端末20aは、スキャン要求が可能であることを示すアドバタイジングパケット(「ADV_SCAN_IND」)を送信してもよい。この場合は、アドバタイジングパケットを受信したBLE端末20bからスキャン要求が送信され、それに応じてBLE端末20aはスキャン応答を送信する。BLE端末20a、このスキャン応答にさらにデータを含めることができる。これにより、BLE端末20aは、1のアドバタイジングパケットを送信したことによって、さらにスキャン応答を送信することができ、より多くのデータをBLE端末20bに送信することができる。
For example, when the
また、BLE端末20aは、他のBLE端末20bと接続を確立して通信を行う場合は、ステップS232において、アドバタイジングパケットのタイプとして「ADV_IND」を設定し、アドバタイジングパケットをブロードキャストで送信する。この場合において、スキャンを実行中の他のBLE端末20bがBLE端末20aからのアドバタイジングパケットを受信した場合、BLE端末20bは、コネクション要求をBLE端末20aに送信する。これにより、BLE端末20aとBLE端末20bとの間で接続が確立される。
Further, when the
なお、ステップS232において送信されるアドバタイジングパケットには、図10を参照して説明したタイミング情報(次以降のアドバタイジング及び/又はスキャンのタイミングを示す情報)が含まれる場合がある。また、アドバタイジングパケットには、図11を参照して説明したタイミングTa2の情報が含まれる場合もある。上述のように、これらの情報を受信したことに基づいて、BLE端末20bは、次以降のアドバタイジングのタイミングやスキャンのタイミングを調整する。これにより、目的のアドバタイジングパケット(例えば、未だ取得できていないシーケンス番号に係るアドバタイジングパケット)をより短期で取得することができるようになる。
The advertising packet transmitted in step S232 may include timing information (information indicating the timing of subsequent advertising and / or scanning) described with reference to FIG. 10. Further, the advertising packet may include information on the timing Ta2 described with reference to FIG. As described above, the
ステップS231でNOと判定した場合、又は、ステップS232の処理を行った場合、BLE端末20aは、スキャンを実行するタイミングか否かを判定する(ステップS233)。例えば、スキャンを実行するタイミングとして、一定のタイミングが設定されてもよいし、図9で示したように、スキャンを実行するタイミングがランダムに決定されてもよい。また、図10で説明したように、他の機器から受信したアドバタイジングパケットに含まれるタイミング情報に基づいてスキャンを実行するタイミングが決定されてもよい。
When it is determined as NO in step S231, or when the process of step S232 is performed, the
スキャンを実行するタイミングと判定した場合(ステップS233:YES)、BLE端末20aは、スキャンを行う(ステップS234)。例えば、BLE端末20aは、ステップS234において、BLE端末20bからアドバタイジングパケットを受信する。BLE端末20bからのアドバタイジングパケットのタイプによって、BLE端末20aのその後の動作が異なる。
When it is determined that it is time to execute the scan (step S233: YES), the
例えば、BLE端末20bから受信したアドバタイジングパケットのタイプが、「ADV_IND」である場合、すなわち、BLE端末20bと接続可能である場合(ステップS235:YES)、BLE端末20aは、接続処理を行う(ステップS236)。ステップS236の接続処理は、図17のステップS105〜S106と同様の処理である。すなわち、BLE端末20aは、BLE端末20bに対してコネクション要求を送信し、BLE端末20bからその応答を受信することで、BLE端末20bとの間で接続Cを確立する。このとき、BLE端末20aはセントラル(マスター)となり、BLE端末20bはペリフェラル(スレーブ)となる。また、このステップS236においては、BLE端末20aは、BLE端末20aとBLE端末20bとの間の接続Cに関するパラメータ(アクセスアドレス、コネクションインターバルCIc、スレーブレイテンシーSLc、ホップ数、接続監視タイムアウト等)を決定してBLE端末20bに通知する。
For example, when the type of the advertising packet received from the
一方、例えば、BLE端末20bから受信したアドバタイジングパケットのタイプが、「ADV_NONCONN_IND」である場合、BLE端末20aは、ステップS235においてNOと判定する。すなわち、「ADV_NONCONN_IND」の場合は、非接続のアドバタイジングであるため、BLE端末20aは、アドバタイジングパケットに含まれるデータを取得する(ステップS237)。このアドバタイジングパケットには、BLE端末20bが他の不特定の機器に送信したデータ(例えば、アプリケーションデータ)が含まれている場合があり、BLE端末20aは、アドバタイジングパケットに含まれるデータを取得する。このデータが分割されたアプリケーションデータである場合は、BLE端末20aは、上述のように、アドバタイジングパケットに含まれるシーケンス番号に基づいて、アプリケーションデータを再構築する。
On the other hand, for example, when the type of the advertising packet received from the
なお、ステップS234において受信されるアドバタイジングパケットには、図10を参照して説明したタイミング情報(次以降のアドバタイジング及び/又はスキャンのタイミングを示す情報)が含まれる場合がある。また、アドバタイジングパケットには、図11に示すタイミングTb(BLE端末20bが携帯端末10bに応答パケットを送信するタイミング)の情報が含まれる場合もある。上述のように、これらの情報を受信したことに基づいて、BLE端末20aは、次以降のアドバタイジングのタイミングやスキャンのタイミングを調整する。
The advertising packet received in step S234 may include timing information (information indicating the timing of subsequent advertising and / or scanning) described with reference to FIG. 10. Further, the advertising packet may include information on the timing Tb (timing at which the BLE terminal 20b transmits a response packet to the mobile terminal 10b) shown in FIG. As described above, the
上記ステップS232のアドバタイジング、及び、ステップS234のスキャンが繰り返し行われることで、BLE端末20aとBLE端末20bとが接続されていない状態においても、2つの機器間でデータを送受信することができる。また、ステップS232のアドバタイジング、及び、ステップS234のスキャンが繰り返し行われることで、BLE端末20aとBLE端末20bとの間で接続を確立することができる。
By repeating the advertising in step S232 and the scanning in step S234, data can be transmitted and received between the two devices even when the
BLE端末20aとBLE端末20bとが接続を確立して通信を行うか、接続を確立せずに通信を行うかは、例えばアプリケーションの要請によって決まる。例えば、データを確実に送受信する必要がある場合は、BLE端末20aは、アドバタイジングパケットのタイプとして「ADV_IND」を設定する。また、データを複数の機器に同時に送信する必要がある場合、BLE端末20aは、アドバタイジングパケットのタイプとして「ADV_NONCONN_IND」を設定し、アドバタイジングパケットを送信する。
Whether the
ステップS236の処理を実行した場合、ステップS237の処理を実行した場合、又は、ステップS233でNOと判定した場合、BLE端末20aは、ステップS238の処理を実行する。
When the process of step S236 is executed, the process of step S237 is executed, or when NO is determined in step S233, the
ステップS238において、BLE端末20aは、BLE端末20bと接続された状態か否かを判定する。上記ステップS232のアドバタイジング、及び、ステップS234のスキャンが繰り返し行われた結果、BLE端末20aとBLE端末20bとが接続された状態である場合は、BLE端末20aは、BLE端末間接続中処理を行う(ステップS239)。
In step S238, the
ステップS239のBLE端末間接続中処理は、BLE端末20aが携帯端末10aと接続された状態であり(図15の接続A)、かつ、BLE端末20bと接続された状態(図15の接続C)である場合に行われる処理である。以下、ステップS239のBLE端末間接続中処理の詳細について説明する。
The process during connection between BLE terminals in step S239 is a state in which the
(BLE端末20aのBLE端末間接続中処理)
図22は、ステップS239のBLE端末間接続中処理の詳細フローチャートであり、セントラル(マスター)として動作するBLE端末20aにおいて行われる処理を示す図である。
(Processing during connection between BLE terminals of BLE terminal 20a)
FIG. 22 is a detailed flowchart of the process during connection between BLE terminals in step S239, and is a diagram showing the process performed in the
図22では、携帯端末10aとBLE端末20aとが接続された状態であり、この接続AのパラメータとしてコネクションインターバルがCIa、スレーブレイテンシーがSLaに設定されていることを前提とする。また、BLE端末20aとBLE端末20bとが接続された状態であり、この接続CのパラメータとしてコネクションインターバルがCIc、スレーブレイテンシーがSLcに設定されていることとする。
In FIG. 22, it is assumed that the
図22に示すように、BLE端末20aは、時間カウンタに基づいて、コネクションインターバルCIcが経過したか否かを判定する(ステップS241)。具体的には、BLE端末20aは、BLE端末20aとBLE端末20bとの間の接続Cにおける前回のコネクションイベントのタイミングからCIcが経過したか否かを判定する。なお、BLE端末20aは接続毎に時間カウンタを設定してもよいし、共通の時間カウンタを用いて各接続のコネクションイベントを実行するタイミングを判定してもよい。すなわち、携帯端末10aとBLE端末20aとの接続Aのための時間カウンタ(図20のステップS211の判定に用いられる時間カウンタ)と、BLE端末20aとBLE端末20bとの接続Cのための時間カウンタ(ステップS241の判定に用いられる時間カウンタ)とが異なっていてもよいし、同じでもよい。
As shown in FIG. 22, the
コネクションインターバルCIcが経過していないと判定した場合(ステップS241:NO)、BLE端末20aは、図22に示す処理を終了する。
When it is determined that the connection interval CIc has not elapsed (step S241: NO), the
コネクションインターバルCIcが経過したと判定した場合(ステップS241:YES)、BLE端末20aは、BLE端末20aとBLE端末20bとの間の通信を制限するか否かを判定する(ステップS242)。具体的には、BLE端末20aは、現時点から所定時間内に携帯端末10aと通信する必要がある場合には、BLE端末20aとBLE端末20bとの間の通信を制限すると判定する。すなわち、現時点から所定時間内にBLE端末20aが携帯端末10aに対して応答を送信しなければ、携帯端末10aとBLE端末20aとの接続AにおけるスレーブレイテンシーSLaを超える場合には、BLE端末20aは、BLE端末20bとの間の通信を制限する。具体的には、BLE端末20aは、「N」の値がスレーブレイテンシーSLa以上の場合、BLE端末20aとBLE端末20bとの間の通信を制限すると判定する。
When it is determined that the connection interval CIc has elapsed (step S241: YES), the
BLE端末20aとBLE端末20bとの間の通信を制限すると判定した場合(ステップS242:YES)、BLE端末20aは、コネクションインターバルCIcを変更する(ステップS243)。具体的には、BLE端末20aは、次に発生するBLE端末20aとBLE端末20bとの間の接続Cにおけるコネクションイベントが、携帯端末10aとBLE端末20aとの接続Aにおけるコネクションイベントと時間的に重ならないように、CIcを現在よりも大きな値(CIc2)に変更する(図15参照)。
When it is determined that the communication between the
ステップS243の処理を実行した場合、又は、ステップS242でNOと判定した場合、BLE端末20aは、BLE端末20bに送信すべき送信データ(例えばアプリケーションデータ)があるか否かを判定し(ステップS244)、送信データがある場合には(ステップS244:YES)、パケットに送信データを含める(ステップS245)。
When the process of step S243 is executed, or when NO is determined in step S242, the
ステップS245の処理を実行した場合、又は、ステップS244でNOと判定した場合、BLE端末20aは、データチャネルを用いてBLE端末20bにパケットを送信する(ステップS246)。ステップS245の処理が行われた場合は、パケットのペイロードには送信データが含まれ、ステップS245の処理が行われなかった場合には、パケットのペイロードには送信データは含まれない。なお、ステップS243でCIcがCIc2に変更された場合には、変更後のCIc2の情報がパケットに含まれる。これにより、BLE端末20aとBLE端末20bとの間の接続Cにおける次のコネクションイベントは、CIc2の経過後に発生することになる。
When the process of step S245 is executed, or when NO is determined in step S244, the
なお、変更されたCIc2は、携帯端末10aとBLE端末20aとの間のコネクションイベントが終了した後にCIcに戻される。携帯端末10aとBLE端末20aとの間のコネクションイベントが終了した後に発生するBLE端末20aとBLE端末20bとの間の接続Cにおけるコネクションイベントにおいて、BLE端末20aは、CIcの情報をBLE端末20bに送信する(図15参照)。
The changed CIc2 is returned to the CIc after the connection event between the
ステップS242〜S246の処理が行われることにより、図15で示したように、携帯端末10aとBLE端末20aとの間の通信が行われる間、BLE端末20aとBLE端末20bとの間の通信を制限することができる。
By performing the processes of steps S242 to S246, as shown in FIG. 15, while the communication between the
ステップS246の後、BLE端末20aは、BLE端末20bから応答パケットを受信したか否かを判定する(ステップS247)。BLE端末20bから応答パケットを受信した場合(ステップS247:YES)、BLE端末20aは、受信したデータの処理を行う(ステップS248)。ステップS248において、例えば、BLE端末20b(のBLE通信モジュール)は、受信したデータをアプリケーション層に渡す。そして、BLE端末20aは、変数Mに「0」を設定するとともに、変数「S」をリセットし(ステップS249)、図22に示す処理を終了する。「M」は、BLE端末20aとBLE端末20bとの間の接続CにおいてBLE端末20bから応答パケットを受信しなかったコネクションイベントの回数を示す。また、「S」は、BLE端末20aがBLE端末20bから応答パケットを受信してからの経過時間を示す変数である。BLE端末20aは、BLE端末20bとの接続を解除するか否かをこの変数「S」を用いて判定する。例えば、「S」は、時間経過に応じて加算されてもよいし、ステップSS241の処理が行われる毎に1ずつ加算されてもよい。
After step S246, the
一方、BLE端末20bから応答パケットを受信しなかった場合(ステップS247:NO)、BLE端末20aは、「M」に1を加算する(ステップS250)。次に、BLE端末20aは、「S」が接続Cにおける接続監視タイムアウト以上か否かを判定する(ステップS251)。「S」が接続監視タイムアウト以上と判定した場合(ステップS251:YES)、BLE端末20aは、BLE端末20bとの接続Cを解除して(ステップS252)、図22に示す処理を終了する。「S」が接続監視タイムアウト以上と判定しなかった場合(ステップS251:NO)、BLE端末20aは、ステップS252の処理を行わずに(接続Cを解除せずに)、図22に示す処理を終了する。
On the other hand, when the response packet is not received from the
(BLE端末20bのBLE端末間接続中処理)
図23は、ステップS239のBLE端末間接続中処理の詳細フローチャートであり、ペリフェラル(スレーブ)として動作するBLE端末20bにおいて行われる処理を示す図である。
(Processing during connection between BLE terminals of BLE terminal 20b)
FIG. 23 is a detailed flowchart of the process during connection between BLE terminals in step S239, and is a diagram showing the process performed in the BLE terminal 20b operating as a peripheral (slave).
図23では、携帯端末10bとBLE端末20bとが接続された状態であり、この接続BのパラメータとしてコネクションインターバルがCIb、スレーブレイテンシーがSLbに設定されていることを前提とする。また、BLE端末20aとBLE端末20bとが接続された状態であり、この接続CのパラメータとしてコネクションインターバルがCIc、スレーブレイテンシーがSLcに設定されていることとする。
In FIG. 23, it is assumed that the
図23に示すように、BLE端末20bは、時間カウンタに基づいて、コネクションインターバルCIcが経過したか否かを判定する(ステップS261)。具体的には、BLE端末20bは、BLE端末20aとBLE端末20bとの間の接続Cにおける前回のコネクションイベントのタイミングからCIcが経過したか否かを判定する。なお、BLE端末20bは接続毎に時間カウンタを設定してもよいし、共通の時間カウンタを設定してもよい。
As shown in FIG. 23, the
コネクションインターバルCIcが経過していないと判定した場合(ステップS261:NO)、BLE端末20bは、図23に示す処理を終了する。 When it is determined that the connection interval CIc has not elapsed (step S261: NO), the BLE terminal 20b ends the process shown in FIG. 23.
コネクションインターバルCIcが経過したと判定した場合(ステップS261:YES)、BLE端末20bは、BLE端末20aとBLE端末20bとの間の通信を制限するか否かを判定する(ステップS262)。具体的には、BLE端末20bは、現時点から所定時間内に携帯端末10bと通信する必要がある場合には、BLE端末20aとBLE端末20bとの間の通信を制限すると判定する。すなわち、現時点から所定時間内にBLE端末20bが携帯端末10bに対して応答を送信しなければ、携帯端末10bとBLE端末20bとの接続BにおけるスレーブレイテンシーSLbを超える場合には、BLE端末20bは、BLE端末20aとの間の通信を制限する。
When it is determined that the connection interval CIc has elapsed (step S261: YES), the
BLE端末20aとBLE端末20bとの間の通信を制限すると判定した場合(ステップS262:YES)、BLE端末20bは、変数「M」がスレーブレイテンシーSLc以上か否かを判定する(ステップS263)。「M」は、BLE端末20aとBLE端末20bとの間の接続Cにおけるコネクションイベントにおいて、BLE端末20bが応答パケットを送信しなかった(コネクションイベントをスキップした)回数を示す。「M」がスレーブレイテンシーSLc以上と判定した場合(ステップS263:YES)、BLE端末20bは、ステップS264に処理を進める。一方、「M」がスレーブレイテンシーSLc未満と判定した場合(ステップS263:NO)、BLE端末20bは、図23の処理を終了する。
When it is determined that the communication between the
ステップS262でNOと判定した場合、又は、ステップS263でYESと判定した場合、BLE端末20bは、BLE端末20aとの接続Cにおけるコネクションイベントをスキップするか否かを判定する(ステップS264)。
If NO is determined in step S262, or YES is determined in step S263, the
ステップS262及びステップS263の処理から明らかなように、BLE端末20bは、携帯端末10bとの通信を優先させるためにBLE端末20aとの通信を制限する。具体的には、BLE端末20bは、携帯端末10bとの通信がスレーブレイテンシーSLbの範囲内で行われるように、BLE端末20aとの通信を制限する(すなわち、接続Cのコネクションイベントをスキップする)。しかしながら、BLE端末20bは、今回のコネクションイベントにおいてBLE端末20aに対して応答を送信しなければBLE端末20aとの接続CにおけるスレーブレイテンシーSLcを超える場合(ステップS263:YES)、BLE端末20aとの通信を制限せずに、ステップS264に処理を進める。これにより、BLE端末20bは、携帯端末10bとの通信を優先しつつも、BLE端末20aとの接続Cが解除されるリスクを回避することができる。
As is clear from the processes of steps S262 and S263, the BLE terminal 20b limits the communication with the
ステップS264において、BLE端末20bは、接続Cにおける今回のコネクションイベントをスキップするか否かを判定する。
In step S264, the
ステップS264においてNOと判定した場合、BLE端末20bは、図20のステップS214〜ステップS216と同様に、接続Cにおけるコネクションイベントを実行する。具体的には、BLE端末20bは、データチャネルを用いてBLE端末20aからパケットを受信し(ステップS265)、当該パケットの受信に応じてBLE端末20aに対して応答を送信する(ステップS266)。この応答には、SLcの変更要求が含められてもよい。そして、BLE端末20bは、BLE端末20aからのデータの処理を行い(ステップS267)、変数Mに「0」を設定し(ステップS268)、図23に示す処理を終了する。
If NO is determined in step S264, the
一方、ステップS264においてYESと判定した場合、BLE端末20bは、「M」に1を加算し(ステップS269)、図23に示す処理を終了する。
On the other hand, if YES is determined in step S264, the
ここで、親子間の接続(携帯端末10bとBLE端末20bとの間の接続B)と、子同士の接続(BLE端末20同士の接続C)とで、一方の通信を制限した場合には、他方の接続が解除されるリスクがある場合には、BLE端末20bは、親子間の接続を優先する。例えば、「N」の値がスレーブレイテンシーSLbと等しい場合、すなわち、BLE端末20bが携帯端末10bに対して応答パケットを返さなかった回数がスレーブレイテンシーSLbと等しい場合、BLE端末20bは、ステップS264においてYESと判定する。例えば、ステップS263でYESと判定した場合であっても、BLE端末20bは、ステップS264においてYESと判定する(この場合、M>SLcとなるため、子同士の接続Cは解除されるリスクが高くなる)。すなわち、BLE端末20bは、親子間の接続Bが解除されるリスクを回避するために、子同士の接続Cにおける通信を制限する。
Here, when one of the communication is restricted between the connection between the parent and child (connection B between the
このように、本実施形態では、親子間の接続を子同士の接続よりも優先させる。これにより、親子間の接続中に子同士が接続される場合でも、親子間の接続が解除されるリスクを回避することができる。なお、他の実施形態では、親子間の接続よりも子同士の接続を優先させてもよい。また、現在の通信の状況に応じて、親子間の接続を優先させるか、子同士の接続を優先させるかが決定されてもよい。例えば、親子間の接続の通信量よりも子同士の接続の通信量の方が多い場合には、子同士の接続を優先させてもよい。 As described above, in the present embodiment, the connection between the parent and the child is prioritized over the connection between the children. As a result, even if the children are connected to each other during the connection between the parent and the child, the risk of disconnecting the connection between the parent and the child can be avoided. In another embodiment, the connection between the children may be prioritized over the connection between the parent and the child. Further, depending on the current communication situation, it may be decided whether to prioritize the connection between the parent and child or the connection between the children. For example, when the communication volume of the connection between the children is larger than the communication volume of the connection between the parent and the child, the connection between the children may be prioritized.
なお、BLE端末20bは、図23の処理を実行中に、前回BLE端末20aと通信を行ってからの経過時間が接続監視タイムアウト以上か否かを判定する。例えば、BLE端末20bは、前回BLE端末20aからパケットを受信してからの経過時間が接続監視タイムアウト以上か否かを判定する。あるいは、BLE端末20aは、前回BLE端末20aに対して応答パケットを送信してからの経過時間が接続監視タイムアウト以上か否かを判定してもよい。そして、前回BLE端末20aと通信を行ってからの経過時間が接続監視タイムアウト以上の場合には、BLE端末20bは、BLE端末20aとの接続を解除し、接続状態から非接続状態に移行して、図23の処理を終了する。この接続監視タイムアウトは、接続の確立時にBLE端末20aによって決定されて通知される。
The
以上のように、本実施形態では、BLE端末20aは、携帯端末10a(親)と接続した状態で、携帯端末10bと接続された状態のBLE端末20b(子)と通信を行う。すなわち、あるネットワークにスレーブとして参加しているBLE端末20aは、別のネットワークにスレーブとして参加しているBLE端末20bと通信を行う。具体的には、BLE端末20aは、BLE端末20bと接続していない状態でアドバタイジングパケットをブロードキャスト(非限定の不特定の機器又は限定された不特定の機器へのブロードキャスト)で送受信することにより、BLE端末20bと互いに通信を行う。また、BLE端末20aは、BLE端末20bと接続を確立し、接続状態で互いに通信を行う。
As described above, in the present embodiment, the
また、本実施形態では、親子間の接続が維持されるように、子同士の通信が制御される。すなわち、子は、親子間の接続を維持するための通信(親子間のコネクションイベント)が発生するタイミングでは、子同士の通信を行わずに、親子間の通信を優先的に行う。例えば、BLE端末20は、親子間の接続を維持するための通信のタイミングと、子同士の通信のタイミングとが一致する場合、子同士の通信を制限して(子同士の通信を行わずに)、親子間の通信を優先的に行う。また、BLE端末20は、親子間の接続を維持するための通信が行われるタイミングを含む所定期間は、子同士の通信を制限してもよい。
Further, in the present embodiment, communication between children is controlled so that the connection between the parent and child is maintained. That is, at the timing when the communication for maintaining the connection between the parent and the child (connection event between the parent and the child) occurs, the child preferentially performs the communication between the parent and the child without performing the communication between the children. For example, when the timing of communication for maintaining the connection between the parent and child and the timing of communication between the children match, the
また、BLE端末20は、子同士の通信の効率を向上させるために、親子間の接続を維持するための通信のタイミングを調整する。具体的には、携帯端末10aとBLE端末20aとの接続Aを維持するための通信のタイミングと、携帯端末10bとBLE端末20bとの接続Bを維持するための通信のタイミングとが近くなるように、これらの通信のタイミングが調整される。このような調整が行われることにより、BLE端末20は、親子間の接続を維持した状態で、子同士で効率よく通信を行うことができる。
Further, the
子同士の通信では、アプリケーションデータが互いに送受信される。アプリケーションデータとしては、例えば、ゲームキャラクタやアイテム等のゲームにおいて用いられるデータ(キャラクタやアイテムの実データやIDを示すデータ)、ゲーム名やゲームID等であってもよい。また、アプリケーションで用いられるデータとしては、アプリケーションで再生される、文字データ、画像データ、動画データ、音声データ、広告のためのデータ等であってもよい。また、アプリケーションデータとして、BLE端末20の位置情報(GPS情報)、BLE端末20に設けられたセンサ(例えば、加速度センサや角速度センサ等の慣性センサ、温度センサ、湿度センサ、血圧や脈拍等の人体の生体情報を取得可能なセンサ等)等からの出力情報であってもよい。子同士の通信で受信したアプリケーションデータに基づいてBLE端末20が所定の処理を行ってもよいし、受信したアプリケーションデータは、携帯端末10に送信されて携帯端末10において当該データに基づく所定の処理が行われてもよい。
In communication between children, application data is sent and received to each other. The application data may be, for example, data used in a game such as a game character or item (data indicating actual data or ID of the character or item), a game name, a game ID, or the like. Further, the data used in the application may be character data, image data, moving image data, audio data, data for advertisement, etc., which are reproduced by the application. Further, as application data, position information (GPS information) of the
なお、上記フローチャートにおける各ステップの処理は、単なる一例に過ぎず、各ステップの処理順序を入れ替えてもよいし、各ステップの処理が実行されなくてもよい。また、上記フローチャートにおける処理に他の処理が付加されてもよい。 The processing of each step in the above flowchart is merely an example, and the processing order of each step may be changed, or the processing of each step may not be executed. Further, another process may be added to the process in the above flowchart.
また、上記実施形態では、各機器は、BLE規格に基づく通信を行うものとしたが、BLEに限らずクラシックBluetoothに基づく通信が行われてもよい。また、他の規格(例えば、IEEE802.11シリーズ等)に基づく通信が行われてもよい。また、その他の任意の規格に基づく通信が行われてもよい。なお、上記BLE規格に基づく通信では、接続状態において、接続確立時に生成された共通のアクセスアドレスを用いて2つの機器間で通信が行われる。他の規格に基づく通信においては、例えば、接続が確立された後の接続状態では、機器固有のアドレスを用いて通信が行われる。すなわち、送信側は、受信側の機器のアドレスを指定してパケットを送信する(ユニキャスト)。 Further, in the above embodiment, each device is supposed to perform communication based on the BLE standard, but the communication is not limited to BLE and may be performed based on the classic Bluetooth. In addition, communication based on other standards (for example, IEEE802.11 series, etc.) may be performed. In addition, communication based on any other standard may be performed. In the communication based on the BLE standard, in the connected state, communication is performed between the two devices using the common access address generated at the time of establishing the connection. In communication based on other standards, for example, in the connection state after the connection is established, communication is performed using a device-specific address. That is, the transmitting side specifies the address of the device on the receiving side and transmits the packet (unicast).
また、上記実施形態では、親子間の通信を子同士の通信よりも優先的に行ったが、他の実施形態では、子同士の通信を親子間の通信よりも優先的に行ってもよい。例えば、携帯端末10aとBLE端末20aとが常に接続されている状態である場合において、BLE端末20aとBLE端末20bとがある期間だけ通信可能な範囲にある場合を想定する。例えば、携帯端末10aとBLE端末20aとを携帯するユーザAが移動しており、携帯端末10bとBLE端末20bとを携帯するユーザBが移動している場合において、ユーザAとユーザBとがすれ違うケースが考えられる。この場合、携帯端末10aとBLE端末20aとは常に近距離に位置し、携帯端末10bとBLE端末20bとは常に近距離に位置するため、携帯端末10aとBLE端末20aとは常に通信可能であり、携帯端末10bとBLE端末20bとは常に通信可能である。しかしながら、BLE端末20aとBLE端末20bとは、すれ違う間だけ通信可能な範囲にあり、BLE端末20aとBLE端末20bとがデータをやり取りするためには、短期間にデータをやり取りする必要がある。このような場合は、子同士(BLE端末20a及びBLE端末20b)の通信を親子間(携帯端末10a及びBLE端末20a、あるいは、携帯端末10b及びBLE端末20b)の通信よりも優先的に行ってもよい。例えば、子同士は、接続を確立せずに通信を行ってもよく、接続を確立して通信を行ってもよい。子同士の通信を行っている間に、親子間のコネクションイベントが発生した場合でも子同士の通信が優先されてもよい。親子間の通信が行われない期間がスレーブレイテンシーを超えることがあっても、子同士の通信を優先させてもよい。すなわち、例えば、携帯端末10aとBLE端末20aとの接続において、BLE端末20aは、携帯端末10aに対して応答を返さなければ携帯端末10aとの接続におけるスレーブレイテンシーを超える場合であっても、BLE端末20bとの通信を優先的に行ってもよい。このような場合では、親子間の接続は、子同士の通信が完了した後(ユーザAとユーザBとが離れた後)すぐにでも再開できる。上述のように、通信が行われない期間がスレーブレイテンシーを超えても接続監視タイムアウト以内であれば親子間の接続は維持される。また、例えば、BLE端末20aは、BLE端末20bとの通信が完了した後(BLE端末20bとの通信が不可能になった後)、BLE端末20bとの通信を優先したことによって携帯端末10aとの接続が解除された場合であっても、「ADV_DIRECT_IND」のタイプのアドバタイジングパケットを送信することで、携帯端末10aと高速に接続を確立することができる。しかしながら、子同士の通信は、ユーザAとユーザBとがすれ違う間にしかできないため、子同士の通信を親子間の通信よりも優先的に行ってもよい。
Further, in the above embodiment, the communication between the parent and the child is prioritized over the communication between the children, but in other embodiments, the communication between the children may be prioritized over the communication between the parent and the child. For example, in the case where the
また、上記実施形態では、子同士の接続におけるコネクションインターバルCIcやスレーブレイテンシーSLcを変更することによって子同士の通信を制限し、子同士の通信を制限した期間において親子間の通信を行うようにした(図15)。他の実施形態では、例えば、コネクションインターバル及び/又はスレーブレイテンシーに加えて、接続監視タイムアウトを変更してもよい。また、コネクションインターバル及び/又はスレーブレイテンシーに代えて、接続監視タイムアウトを変更してもよい。子同士の接続における接続監視タイムアウトを変更する(現在の値よりも長くする)ことによって、子同士の通信が比較的長い時間行われなれない場合でも子同士の接続が解除されないようにし、子同士の通信が行われない期間において、親子間の通信を行ってもよい。 Further, in the above embodiment, the communication between the children is restricted by changing the connection interval CIc and the slave latency SLc in the connection between the children, and the communication between the parent and the child is performed during the period in which the communication between the children is restricted. (Fig. 15). In other embodiments, the connection monitoring timeout may be changed, for example, in addition to the connection interval and / or slave latency. Also, the connection monitoring timeout may be changed instead of the connection interval and / or slave latency. By changing the connection monitoring timeout in the connection between children (making it longer than the current value), even if communication between children cannot be performed for a relatively long time, the connection between children will not be disconnected, and the children will not be disconnected. Communication between parent and child may be performed during the period when communication is not performed.
この明細書に記載されている処理の一部又は全部は、携帯端末又はBLE端末のCPU及び/又は他のプロセッサが通信プログラムを実行することによって行われてもよい。また、上記処理の一部又は全部は、携帯端末又はBLE端末が備えるASIC(Application Specific Integrated Circuit)によって行われてもよい。 Some or all of the processing described in this specification may be performed by the CPU and / or other processor of the mobile terminal or BLE terminal executing a communication program. Further, a part or all of the above processing may be performed by an ASIC (Application Specific Integrated Circuit) included in the mobile terminal or the BLE terminal.
1 無線通信システム
10a、10b 携帯端末
20a、20b BLE端末
25 BLE通信モジュール
1
Claims (24)
前記無線システムは、第1の機器と、第2の機器と、第3の機器と、第4の機器とを含み、
前記第1の機器及び前記第2の機器は、
前記第1の機器をマスターとし、前記第2の機器をスレーブとして、前記第1の機器と前記第2の機器との間で接続を確立して無線通信を行い、
前記第4の機器及び前記第3の機器は、
前記第4の機器をマスターとし、前記第3の機器をスレーブとして、前記第4の機器と前記第3の機器との間で接続を確立して無線通信を行い、
前記第2の機器は、
データをブロードキャスト又はマルチキャストで無線で送信する送信手段と、
ブロードキャスト又はマルチキャストで送信されたデータを無線で受信する受信手段と、を有し、
スレーブとして前記第1の機器と接続された状態で前記送信手段による送信処理と前記受信手段による受信処理とを繰り返し実行することにより、スレーブとして前記第4の機器と接続された状態の前記第3の機器と接続を確立せずに無線通信を行い、
前記送信処理の実行期間、前記送信処理を実行するタイミング、前記受信処理の実行期間、及び、前記受信処理を実行するタイミングのうち少なくとも何れか1つを変更しながら、前記送信処理と前記受信処理とを繰り返し実行する、無線システム。 A wireless system that includes multiple devices capable of wireless communication.
The wireless system includes a first device, a second device, a third device, and a fourth device.
The first device and the second device are
Using the first device as a master and the second device as a slave, a connection is established between the first device and the second device to perform wireless communication.
The fourth device and the third device are
Using the fourth device as a master and the third device as a slave, a connection is established between the fourth device and the third device to perform wireless communication.
The second device is
A means of transmitting data wirelessly by broadcasting or multicast, and
It has a receiving means for wirelessly receiving data transmitted by broadcast or multicast, and has.
By repeatedly executing the transmission process by the transmission means and the reception process by the reception means while connected to the first device as a slave, the third device in a state of being connected to the fourth device as a slave. There line wireless communication without establishing a with equipment connection,
The transmission process and the reception process are changed while changing at least one of the execution period of the transmission process, the timing of executing the transmission process, the execution period of the reception process, and the timing of executing the reception process. A wireless system that repeatedly executes and.
前記第2の機器は、前記第1の機器と前記第2の機器との間の同期通信が行われるタイミングとは異なるタイミングで、スレーブとして前記第4の機器と接続された状態の前記第3の機器と無線通信を行う、請求項1から8の何れかに記載の無線システム。 The first device and the second device repeatedly perform synchronous communication in a state where the first device and the second device are connected.
The third device is connected to the fourth device as a slave at a timing different from the timing at which synchronous communication between the first device and the second device is performed. The wireless system according to any one of claims 1 to 8 , which performs wireless communication with the device of the above.
前記第4の機器と前記第3の機器とは、同期通信を繰り返し行い、
前記第1の機器と前記第2の機器との間の同期通信と、前記第4の機器と前記第3の機器との間の同期通信と、のうちの少なくとも何れか一方の同期通信のタイミングを調整する調整手段をさらに備える、請求項1から9の何れかに記載の無線システム。 The first device and the second device repeatedly perform synchronous communication, and the first device and the second device perform synchronous communication repeatedly.
The fourth device and the third device repeatedly perform synchronous communication, and perform synchronous communication.
Timing of synchronous communication of at least one of the synchronous communication between the first device and the second device and the synchronous communication between the fourth device and the third device. The wireless system according to any one of claims 1 to 9, further comprising an adjusting means for adjusting the above.
前記第2の機器は、前記第1の機器と前記第2の機器との間の同期通信が行われるタイミングにおいて、前記第2の機器と前記第3の機器との間の無線通信よりも前記第1の機器との間の無線通信を優先して行う、請求項1から12の何れかに記載の無線システム。 In a state where the first device and the second device are connected, the first device and the second device repeatedly perform synchronous communication to perform synchronous communication.
The second device is more said than the wireless communication between the second device and the third device at the timing when the synchronous communication between the first device and the second device is performed. The wireless system according to any one of claims 1 to 12 , wherein wireless communication with the first device is prioritized.
前記第2の機器は、
前記第1の機器と接続された状態において、前記許容期間に基づいて、前記第1の機器との同期通信を実行すべきか否かを判定する判定手段と、
前記許容期間において前記第1の機器と前記第2の機器との間の同期通信が行われるように、前記第3の機器との通信又は前記第1の機器との通信の少なくともいずれか一方を制御する通信制御手段とを有する、請求項13に記載の無線システム。 The wireless system includes a permissible period setting means for setting a permissible period for connecting the first device and the second device.
The second device is
A determination means for determining whether or not synchronous communication with the first device should be executed based on the allowable period in a state of being connected to the first device.
At least one of the communication with the third device and the communication with the first device so that the synchronous communication between the first device and the second device is performed in the allowable period. The wireless system according to claim 13 , further comprising a communication control means for controlling.
データを無線で送信する送信処理と、データを無線で受信する受信処理とを繰り返し行い、
前記第2の機器からの前記タイミング情報に基づいて、前記送信処理及び/又は前記受信処理を行うタイミングを調整する、請求項16から18の何れかに記載の無線システム。 The third device is
The transmission process of transmitting data wirelessly and the reception process of receiving data wirelessly are repeated.
The wireless system according to any one of claims 16 to 18 , wherein the timing of performing the transmission process and / or the reception process is adjusted based on the timing information from the second device.
前記無線システムは、第1の機器と、第2の機器と、第4の機器と、第3の機器とを含み、
前記第1の機器及び前記第2の機器は、
前記第1の機器をセントラルとし、前記第2の機器をペリフェラルとして、前記第1の機器と前記第2の機器との間で接続を確立してBLE規格に基づいた無線通信を行い、
前記第4の機器及び前記第3の機器は、
前記第4の機器をセントラルとし、前記第3の機器をペリフェラルとして、前記第4の機器と前記第3の機器との間で接続を確立してBLE規格に基づいた無線通信を行い、
前記第2の機器は、
データをブロードキャスト又はマルチキャストで無線で送信する送信手段と、
ブロードキャスト又はマルチキャストで送信されたデータを無線で受信する受信手段と、を有し、
前記第1の機器と前記第2の機器との接続が維持された状態で前記送信手段による送信処理と前記受信手段による受信処理とを繰り返し実行することにより、ペリフェラルとして前記第4の機器と接続された状態の前記第3の機器と接続を確立せずにBLE規格に基づいた無線通信を行い、
前記送信処理の実行期間、前記送信処理を実行するタイミング、前記受信処理の実行期間、及び、前記受信処理を実行するタイミングのうち少なくとも何れか1つを変更しながら、前記送信処理と前記受信処理とを繰り返し実行する、無線システム。 A wireless system that includes a plurality of devices capable of performing wireless communication based on the Bluetooth Low Energy (BLE) standard.
The wireless system includes a first device, a second device, a fourth device, and a third device.
The first device and the second device are
With the first device as the central and the second device as the peripheral, a connection is established between the first device and the second device to perform wireless communication based on the BLE standard.
The fourth device and the third device are
With the fourth device as the central and the third device as the peripheral, a connection is established between the fourth device and the third device to perform wireless communication based on the BLE standard.
The second device is
A means of transmitting data wirelessly by broadcasting or multicast, and
It has a receiving means for wirelessly receiving data transmitted by broadcast or multicast, and has.
By repeatedly executing the transmission process by the transmission means and the reception process by the reception means while the connection between the first device and the second device is maintained, the device is connected to the fourth device as a peripheral. There line wireless communication based on BLE standard without establishing a connection with the state the third device,
The transmission process and the reception process are changed while changing at least one of the execution period of the transmission process, the timing of executing the transmission process, the execution period of the reception process, and the timing of executing the reception process. A wireless system that repeatedly executes and.
前記複数の機器のうちの第1の機器をマスターとし、自機をスレーブとして、当該第1の機器との間で接続を確立する接続確立手段と、
データをブロードキャスト又はマルチキャストで無線で送信する送信手段と、
ブロードキャスト又はマルチキャストで送信されたデータを無線で受信する受信手段と、
スレーブとして前記第1の機器と接続された状態で前記送信手段による送信処理と前記受信手段による受信処理とを繰り返し実行することにより、当該第1の機器とは異なる第2の機器のスレーブとして接続された状態の第3の機器と接続を確立せずに無線通信を行う通信手段とを備え、
前記送信処理の実行期間、前記送信処理を実行するタイミング、前記受信処理の実行期間、及び、前記受信処理を実行するタイミングのうち少なくとも何れか1つを変更しながら、前記送信処理と前記受信処理とを繰り返し実行する、無線機器。 A wireless device that can perform wireless communication with multiple devices.
A connection establishment means for establishing a connection with the first device, with the first device among the plurality of devices as the master and the own device as the slave.
A means of transmitting data wirelessly by broadcasting or multicast, and
A receiving means that wirelessly receives data transmitted by broadcast or multicast, and
By repeatedly executing the transmission process by the transmission means and the reception process by the reception means while connected to the first device as a slave, the device is connected as a slave of a second device different from the first device. It is equipped with a third device in the state of being in the state and a communication means for wireless communication without establishing a connection.
The transmission process and the reception process are changed while changing at least one of the execution period of the transmission process, the timing of executing the transmission process, the execution period of the reception process, and the timing of executing the reception process. A wireless device that repeatedly executes and.
前記複数の機器のうちの第1の機器をマスターとし、前記無線機器をスレーブとして、当該第1の機器との間で接続を確立する接続確立手段と、
データをブロードキャスト又はマルチキャストで無線で送信する送信手段と、
ブロードキャスト又はマルチキャストで送信されたデータを無線で受信する受信手段と、
前記無線機器がスレーブとして前記第1の機器と接続された状態で前記送信手段による送信処理と前記受信手段による受信処理とを繰り返し実行することにより、当該第1の機器とは異なる第2の機器のスレーブとして接続された状態の第3の機器と接続を確立せずに無線通信を行う通信手段として機能させ、
前記通信手段は、前記送信処理の実行期間、前記送信処理を実行するタイミング、前記受信処理の実行期間、及び、前記受信処理を実行するタイミングのうち少なくとも何れか1つを変更しながら、前記送信処理と前記受信処理とを繰り返し実行する、通信プログラム。 A communication program that can be executed by a processor of a wireless device capable of wirelessly communicating with a plurality of devices.
A connection establishment means for establishing a connection with the first device, with the first device of the plurality of devices as the master and the wireless device as the slave.
A means of transmitting data wirelessly by broadcasting or multicast, and
A receiving means that wirelessly receives data transmitted by broadcast or multicast, and
A second device different from the first device by repeatedly executing the transmission process by the transmission means and the reception process by the reception means while the wireless device is connected to the first device as a slave. without establishing a connection with the third device connected state as a slave to function as a communication means for performing wireless communication,
The communication means transmits while changing at least one of the execution period of the transmission process, the timing of executing the transmission process, the execution period of the reception process, and the timing of executing the reception process. A communication program that repeatedly executes processing and the receiving processing.
前記無線システムは、第1の機器と、第2の機器と、第3の機器と、第4の機器とを含み、
前記通信方法は、
前記第1の機器をマスターとし、前記第2の機器をスレーブとして、前記第1の機器と前記第2の機器との間で接続を確立して無線通信を行うステップと、
前記第4の機器をマスターとし、前記第3の機器をスレーブとして、前記第4の機器と前記第3の機器との間で接続を確立して無線通信を行ステップと、
前記第2の機器が、
データをブロードキャスト又はマルチキャストで無線で送信する送信ステップと、
ブロードキャスト又はマルチキャストで送信されたデータを無線で受信する受信ステップと、
スレーブとして前記第1の機器と接続された状態で前記送信ステップにおける送信処理と前記受信ステップにおける受信処理とを繰り返し実行することにより、スレーブとして前記第4の機器と接続された状態の前記第3の機器と接続を確立せずに無線通信を行う通信ステップとを含み、
前記第2の機器は、前記通信ステップにおいて、前記送信処理の実行期間、前記送信処理を実行するタイミング、前記受信処理の実行期間、及び、前記受信処理を実行するタイミングのうち少なくとも何れか1つを変更しながら、前記送信処理と前記受信処理とを繰り返し実行する、通信方法。 A communication method executed in a wireless system including a plurality of devices capable of performing wireless communication.
The wireless system includes a first device, a second device, a third device, and a fourth device.
The communication method is
A step of establishing a connection between the first device and the second device and performing wireless communication with the first device as a master and the second device as a slave.
With the fourth device as the master and the third device as the slave, a connection is established between the fourth device and the third device to perform wireless communication.
The second device
A transmission step that broadcasts or multicasts data wirelessly,
A reception step that wirelessly receives data transmitted by broadcast or multicast, and
By repeatedly executing the transmission process in the transmission step and the reception process in the reception step while connected to the first device as a slave, the third device in a state of being connected to the fourth device as a slave. look including a communication step of, without establishing a device connection for wireless communication,
In the communication step, the second device is at least one of an execution period of the transmission process, a timing of executing the transmission process, an execution period of the reception process, and a timing of executing the reception process. A communication method in which the transmission process and the reception process are repeatedly executed while changing the above.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2015152748 | 2015-07-31 | ||
| JP2015152748 | 2015-07-31 | ||
| JP2016010985A JP6703406B2 (en) | 2015-07-31 | 2016-01-22 | Wireless system, wireless device, communication program, and communication method |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2016010985A Division JP6703406B2 (en) | 2015-07-31 | 2016-01-22 | Wireless system, wireless device, communication program, and communication method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2020127238A JP2020127238A (en) | 2020-08-20 |
| JP6938716B2 true JP6938716B2 (en) | 2021-09-22 |
Family
ID=57989113
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2016010985A Active JP6703406B2 (en) | 2015-07-31 | 2016-01-22 | Wireless system, wireless device, communication program, and communication method |
| JP2020082697A Active JP6938716B2 (en) | 2015-07-31 | 2020-05-08 | Wireless systems, wireless devices, communication programs, and communication methods |
Family Applications Before (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2016010985A Active JP6703406B2 (en) | 2015-07-31 | 2016-01-22 | Wireless system, wireless device, communication program, and communication method |
Country Status (1)
| Country | Link |
|---|---|
| JP (2) | JP6703406B2 (en) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3576441A1 (en) * | 2018-05-31 | 2019-12-04 | Koninklijke Philips N.V. | Device for wireless communication handover |
| CN113225693B (en) | 2019-04-18 | 2022-04-15 | 华为技术有限公司 | Bluetooth connection method, equipment and system |
| KR102907513B1 (en) | 2021-01-13 | 2026-01-05 | 삼성전자주식회사 | Electronic device to transmit and receive protocol/service information and operating method thereof |
| US11792755B2 (en) * | 2021-04-02 | 2023-10-17 | Cypress Semiconductor Corporation | Time synchronization in wireless networks |
| JP2024074370A (en) * | 2022-11-21 | 2024-05-31 | ルネサスエレクトロニクス株式会社 | Wireless communication device and method |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1236315A1 (en) * | 1999-12-06 | 2002-09-04 | Telefonaktiebolaget LM Ericsson (publ) | Route discovery based piconet forming |
| US6975613B1 (en) * | 1999-12-06 | 2005-12-13 | Telefonaktiebolaget L M Ericsson (Publ) | System and method for scheduling communication sessions in an ad-hoc network |
| JP4116212B2 (en) * | 1999-12-28 | 2008-07-09 | 株式会社東芝 | COMMUNICATION DEVICE AND ITS CONTROL METHOD |
| JP2013165467A (en) * | 2012-02-13 | 2013-08-22 | Toshiba Corp | Radio communication apparatus and radio communication method |
| US20140357192A1 (en) * | 2013-06-04 | 2014-12-04 | Tal Azogui | Systems and methods for connectionless proximity determination |
-
2016
- 2016-01-22 JP JP2016010985A patent/JP6703406B2/en active Active
-
2020
- 2020-05-08 JP JP2020082697A patent/JP6938716B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2017034654A (en) | 2017-02-09 |
| JP6703406B2 (en) | 2020-06-03 |
| JP2020127238A (en) | 2020-08-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7016340B2 (en) | Wireless systems, wireless devices, communication programs, and communication methods | |
| EP3125641B1 (en) | Wireless system, wireless device, non-transitory computer-readable storage medium having stored therein communication program, and communication method | |
| JP6938716B2 (en) | Wireless systems, wireless devices, communication programs, and communication methods | |
| US10397868B2 (en) | Wireless system, wireless device, non-transitory computer-readable storage medium having stored therein communication program, and communication method | |
| US9706600B2 (en) | Connectionless Wi-Fi mesh communication | |
| KR101799364B1 (en) | Method of communication and apparatus | |
| JP6235135B2 (en) | System and method for establishing synchronization across multiple networks and participating STAs via operation on a known common channel | |
| KR101870224B1 (en) | Systems and methods of operating a device of a data path group network | |
| US10681591B2 (en) | Method and apparatus for controlling electronic device in wireless communication system supporting Bluetooth communication | |
| CN104067647B (en) | The method and apparatus found for equipment | |
| US20170215113A1 (en) | Method and apparatus for controlling electronic device in wireless communication system supporting bluetooth communication | |
| US9042828B2 (en) | Method, apparatus, and computer program product for optimized discovery between mobile devices | |
| US20150271745A1 (en) | Exchanging Configuration Information Wirelessly | |
| CN104969649A (en) | Wifi real-time streaming and bluetooth coexistence | |
| JP2017118405A (en) | Radio system, radio apparatus, communication program, and communication method | |
| US8139558B2 (en) | Method and system for establishing a system time within a mobile ad hoc network | |
| US10492060B2 (en) | Method and device for transmitting/receiving data in wireless communication system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200508 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200508 |
|
| 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: 20210831 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210901 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6938716 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |