(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023067085
(43)【公開日】2023-05-16
(54)【発明の名称】移動体、通信システム、および制御方法
(51)【国際特許分類】
H04W 76/10 20180101AFI20230509BHJP
H04W 92/18 20090101ALI20230509BHJP
H04W 84/20 20090101ALI20230509BHJP
H04W 4/70 20180101ALI20230509BHJP
【FI】
H04W76/10
H04W92/18
H04W84/20
H04W4/70
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021178060
(22)【出願日】2021-10-29
(71)【出願人】
【識別番号】500112146
【氏名又は名称】サイレックス・テクノロジー株式会社
(74)【代理人】
【識別番号】100109210
【弁理士】
【氏名又は名称】新居 広守
(72)【発明者】
【氏名】桑原 哲也
【テーマコード(参考)】
5K067
【Fターム(参考)】
5K067AA21
5K067DD11
5K067EE02
5K067EE25
5K067HH21
5K067KK02
(57)【要約】
【課題】無線通信を効率よく行える移動体を提供する。
【解決手段】移動体18は、相互に無線接続され任意の方向に移動する複数の移動体18~26のうちの一の移動体であって、複数の移動体18~26を制御するための通信フレームを受信する受信部28と、複数の移動体18~26のうち通信フレームの宛先となる宛先移動体を決定する決定部36と、決定部36によって決定された宛先移動体に通信フレームを送信する送信部30とを備え、決定部36は、複数の移動体18~26のうち、予め定められた所定方向において一の移動体よりも一方側に位置しかつ所定方向における位置が一の移動体により近い他の移動体を、より優先的に宛先移動体として決定する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
相互に無線接続され任意の方向に移動する複数の移動体のうちの一の移動体であって、
前記複数の移動体を制御するための通信フレームを受信する受信部と、
前記複数の移動体のうち前記通信フレームの宛先となる宛先移動体を決定する決定部と、
前記決定部によって決定された前記宛先移動体に前記通信フレームを送信する送信部とを備え、
前記決定部は、前記複数の移動体のうち、予め定められた所定方向において前記一の移動体よりも一方側に位置しかつ前記所定方向における位置が前記一の移動体により近い他の移動体を、より優先的に前記宛先移動体として決定する、
移動体。
【請求項2】
制御装置と、送信装置と、受信装置と、前記複数の移動体とを備える通信システムにおいて、
前記制御装置は、前記通信フレームを送信し、
前記送信装置は、前記制御装置から前記通信フレームを受信し、受信した前記通信フレームを前記複数の移動体のいずれかに送信し、
前記受信装置は、前記所定方向において前記送信装置よりも一方側に配置され、前記複数の移動体のいずれかから前記通信フレームを受信し、受信した前記通信フレームを前記制御装置に送信する、
請求項1に記載の移動体。
【請求項3】
前記通信フレームは、前記通信フレームが送信される前記複数の移動体の順番を示す順番情報を含み、
前記一の移動体は、前記順番情報に基づいて、前記複数の移動体のうちの前記一の移動体よりも後に前記通信フレームが送信されることが示されている2つ以上の移動体のうち、前記順番が前記一の移動体に最も近い第1移動体および前記順番が前記第1移動体の次に前記一の移動体に近い第2移動体を抽出する抽出部をさらに備え、
前記決定部は、前記抽出部によって抽出された前記第1移動体および前記第2移動体が前記所定方向において前記一の移動体よりも物理的に一方側に位置しており、かつ前記所定方向において前記第1移動体の位置および前記第2移動体の位置が相互に異なる場合、前記第1移動体および前記第2移動体のうちの前記所定方向における位置が前記一の移動体に近い方を前記宛先移動体として決定する、
請求項1または2に記載の移動体。
【請求項4】
前記決定部による決定結果に基づいて前記順番情報を書き換える書換部をさらに備え、
前記送信部は、前記書換部によって書き換えられた前記順番情報を含む前記通信フレームを前記宛先移動体に送信する、
請求項3に記載の移動体。
【請求項5】
前記複数の移動体のそれぞれは、前記所定方向における前記送信装置よりも前記受信装置側かつ前記受信装置よりも前記送信装置側における所定範囲において移動可能であり、
前記通信システムは、前記複数の移動体のそれぞれが前記所定範囲から離脱または前記所定範囲に合流したか否かを認識するためのマーカをさらに備え、
前記通信フレームは、前記通信フレームが送信される前記複数の移動体の順番を示す順番情報を含み、
前記一の移動体は、書換部と、前記順番情報および前記マーカの検出結果に基づいて、前記複数の移動体のうちの前記一の移動体よりも後に前記通信フレームが送信されることが示されておりかつ前記所定範囲に位置している2つ以上の移動体のうち、前記順番が前記一の移動体に最も近い第1移動体および前記順番が前記第1移動体の次に前記一の移動体に近い第2移動体を抽出する抽出部と、をさらに備え、
前記決定部は、前記抽出部によって抽出された前記第1移動体および前記第2移動体が前記所定方向において前記一の移動体よりも物理的に一方側に位置しており、かつ前記所定方向において前記第1移動体の位置および前記第2移動体の位置が相互に異なる場合、前記第1移動体および前記第2移動体のうちの前記所定方向における位置が前記一の移動体に近い方を前記宛先移動体として決定し、
前記書換部は、前記決定部による決定結果に基づいて前記順番情報を書き換え、
前記送信部は、前記書換部によって書き換えられた前記順番情報を含む前記通信フレームを前記宛先移動体に送信する、
請求項2に記載の移動体。
【請求項6】
前記書換部は、前記抽出部によって抽出された前記第1移動体および前記第2移動体が前記所定方向において前記一の移動体よりも一方側に位置しており、かつ前記所定方向において前記第2移動体が前記第1移動体よりも前記一の移動体に近い場合、前記第2移動体の次に前記第1移動体に前記通信フレームが送信されるように前記順番情報を書き換え、
前記送信部は、前記書換部によって書き換えられた前記順番情報を含む前記通信フレームを前記第2移動体に送信する、
請求項4または5に記載の移動体。
【請求項7】
前記決定部は、前記抽出部によって抽出された前記第1移動体および前記第2移動体が前記所定方向において前記一の移動体よりも一方側に位置しており、かつ前記所定方向において前記第1移動体の位置および前記第2移動体の位置が相互に同じである場合、前記第1移動体および前記第2移動体のうちの前記所定方向において前記一の移動体側に移動している方を前記宛先移動体として決定する、
請求項4から6のいずれか1項に記載の移動体。
【請求項8】
前記書換部は、前記抽出部によって抽出された前記第1移動体および前記第2移動体が前記所定方向において前記一の移動体よりも一方側に位置しており、かつ前記所定方向において前記第1移動体の位置および前記第2移動体の位置が相互に同じであり、かつ前記第2移動体が前記所定方向において前記一の移動体側に移動している場合、前記第2移動体の次に前記第1移動体に前記通信フレームが送信されるように前記順番情報を書き換え、
前記送信部は、前記書換部によって書き換えられた前記順番情報を含む前記通信フレームを前記第2移動体に送信する、
請求項7に記載の移動体。
【請求項9】
制御装置と、送信装置と、受信装置と、複数の移動体とを備え、
前記制御装置は、前記複数の移動体を制御するための通信フレームを送信し、
前記送信装置は、前記制御装置から前記通信フレームを受信し、受信した前記通信フレームを前記複数の移動体のいずれかに送信し、
前記受信装置は、予め定められた所定方向において前記送信装置よりも一方側に配置され、前記複数の移動体のいずれかから前記通信フレームを受信し、受信した前記通信フレームを前記制御装置に送信し、
前記複数の移動体のうちの一の移動体は、前記通信フレームを受信する受信部と、前記複数の移動体のうち前記通信フレームの宛先となる宛先移動体を決定する決定部と、前記決定部によって決定された前記宛先移動体に前記通信フレームを送信する送信部とを有し、
前記決定部は、前記複数の移動体のうち、前記所定方向において前記一の移動体よりも一方側に位置しかつ前記所定方向における位置が前記一の移動体により近い他の移動体を、より優先的に前記宛先移動体として決定する、
通信システム。
【請求項10】
相互に無線接続され任意の方向に移動する複数の移動体のうちの一の移動体の制御方法であって、
前記複数の移動体を制御するための通信フレームを受信する受信ステップと、
前記複数の移動体のうち前記通信フレームの宛先となる宛先移動体を決定する決定ステップと、
前記決定ステップにおいて決定された前記宛先移動体に前記通信フレームを送信する送信ステップとを備え、
前記決定ステップでは、前記複数の移動体のうち、予め定められた所定方向において前記一の移動体よりも一方側に位置しかつ前記所定方向における位置が前記一の移動体により近い他の移動体を、より優先的に前記宛先移動体として決定する、
制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動体、通信システム、および制御方法に関する。
【背景技術】
【0002】
従来、通信を行う通信装置が知られている。通信装置の一例として、特許文献1には、外部機器から送信されるフレーム群をデータフレーム単位で受信する受信部と、受信部によるデータフレームの受信に並行して、受信部により受信済みのデータフレームの送信先機器への送信を開始する送信部とを備える通信装置が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ここで、通信フレームの宛先の通信装置に向かって電波が飛ぶように電波に指向性を持たせて電波を発することによって、宛先の通信装置が受信した電波の受信強度が低下することを抑制できるので、無線通信を効率よく行える。
【0005】
たとえば、所定方向において相互に異なる位置に配置される送信装置および受信装置があり、無線通信によって送信装置から複数の通信装置を経由して受信装置に通信フレームを送信する場合、複数の通信装置のそれぞれが、所定方向における受信装置側に指向性を持つ電波を発し、当該通信装置よりも受信装置側においてより近くに位置する通信装置に通信フレームを送信することによって、効率よく無線通信を行える。
【0006】
しかしながら、複数の通信装置のそれぞれが移動体である場合、複数の通信装置の位置が変わり、送信元の通信装置よりも所定方向の受信装置側に宛先の通信装置が位置していないことがあり、無線通信を効率よく行えない。また、複数の通信装置のそれぞれが移動体である、複数の通信装置の近隣に遮蔽体(たとえば、電波が届きにくくする物体)や反射体(たとえば、電波を乱反射させる物体)が存在した場合には、無線通信をさらに効率よく行えないという課題がある。
【0007】
本発明は、上記課題を解決するためになされたものであり、無線通信を効率よく行える移動体等を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明の一態様に係る移動体は、相互に無線接続され任意の方向に移動する複数の移動体のうちの一の移動体であって、前記複数の移動体を制御するための通信フレームを受信する受信部と、前記複数の移動体のうち前記通信フレームの宛先となる宛先移動体を決定する決定部と、前記決定部によって決定された前記宛先移動体に前記通信フレームを送信する送信部とを備え、前記決定部は、前記複数の移動体のうち、予め定められた所定方向において前記一の移動体よりも一方側に位置しかつ前記所定方向における位置が前記一の移動体により近い他の移動体を、より優先的に前記宛先移動体として決定する。
【0009】
これによれば、複数の移動体のうち、所定方向において一の移動体よりも一方側に位置しかつ所定方向における位置が一の移動体により近い移動体を、より優先的に宛先移動体として決定でき、宛先移動体に通信フレームを送信できる。したがって、一の移動体は、所定方向における一方側に電波を発して通信フレームを送信できる。また、宛先移動体の次に通信フレームを送信すべき移動体は、所定方向において宛先移動体よりも一方側に位置している可能性が高いので、宛先移動体も、所定方向における一方側に電波を発して通信フレームを送信できる。このように、一の移動体および宛先移動体のそれぞれが、所定方向における一方側に電波を発して通信フレームを送信できるので、無線通信を効率よく行える。
【0010】
また、制御装置と、送信装置と、受信装置と、前記複数の移動体とを備える通信システムにおいて、前記制御装置は、前記通信フレームを送信し、前記送信装置は、前記制御装置から前記通信フレームを受信し、受信した前記通信フレームを前記複数の移動体のいずれかに送信し、前記受信装置は、前記所定方向において前記送信装置よりも一方側に配置され、前記複数の移動体のいずれかから前記通信フレームを受信し、受信した前記通信フレームを前記制御装置に送信してもよい。
【0011】
これによれば、複数の移動体のうち、所定方向において一の移動体よりも受信装置側(一方側)に位置しかつ所定方向における位置が一の移動体により近い移動体を、より優先的に宛先移動体として決定でき、宛先移動体に通信フレームを送信できる。したがって、一の移動体は、所定方向における受信装置側に電波を発して通信フレームを送信できる。また、宛先移動体の次に通信フレームを送信すべき移動体は、所定方向において宛先移動体よりも受信装置側に位置している可能性が高いので、宛先移動体も、所定方向における受信装置側に電波を発して通信フレームを送信できる。このように、一の移動体および宛先移動体のそれぞれが、所定方向における受信装置側に電波を発して通信フレームを送信できるので、無線通信を効率よく行える。
【0012】
また、前記通信フレームは、前記通信フレームが送信される前記複数の移動体の順番を示す順番情報を含み、前記一の移動体は、前記順番情報に基づいて、前記複数の移動体のうちの前記一の移動体よりも後に前記通信フレームが送信されることが示されている2つ以上の移動体のうち、前記順番が前記一の移動体に最も近い第1移動体および前記順番が前記第1移動体の次に前記一の移動体に近い第2移動体を抽出する抽出部をさらに備え、前記決定部は、前記抽出部によって抽出された前記第1移動体および前記第2移動体が前記所定方向において前記一の移動体よりも物理的に一方側に位置しており、かつ前記所定方向において前記第1移動体の位置および前記第2移動体の位置が相互に異なる場合、前記第1移動体および前記第2移動体のうちの前記所定方向における位置が前記一の移動体に近い方を前記宛先移動体として決定してもよい。
【0013】
これによれば、順番情報に基づいて2つの宛先移動体の候補である第1移動体および第2移動体を容易に抽出できる。また、一の移動体は、所定方向における一方側に電波を発して、第1移動体および第2移動体のうちの一方に通信フレームを送信できる。また、当該一方も、所定方向における一方側に電波を発して、第1移動体および第2移動体のうちの他方に通信フレームを送信できる。このように、第1移動体および第2移動体を容易に抽出できるとともに、一の移動体および宛先移動体のそれぞれが、所定方向における一方側に電波を発して通信フレームを送信できるので、無線通信をさらに効率よく行える。
【0014】
また、前記決定部による決定結果に基づいて前記順番情報を書き換える書換部をさらに備え、前記送信部は、前記書換部によって書き換えられた前記順番情報を含む前記通信フレームを前記宛先移動体に送信してもよい。
【0015】
これによれば、決定部による決定結果によって通信フレームが送信される複数の移動体の順番が変わる場合、順番情報を書き換えることができ、書き換えられた順番情報を含む通信フレームを宛先移動体に送信でき、結果として、制御装置に順番情報の書き換えを認識させ得るので、無線通信をさらに効率よく行える。
【0016】
また、前記複数の移動体のそれぞれは、前記所定方向における前記送信装置よりも前記受信装置側かつ前記受信装置よりも前記送信装置側における所定範囲において移動可能であり、前記通信システムは、前記複数の移動体のそれぞれが前記所定範囲から離脱または前記所定範囲に合流したか否かを認識するためのマーカをさらに備え、前記通信フレームは、前記通信フレームが送信される前記複数の移動体の順番を示す順番情報を含み、前記一の移動体は、書換部と、前記順番情報および前記マーカの検出結果に基づいて、前記複数の移動体のうちの前記一の移動体よりも後に前記通信フレームが送信されることが示されておりかつ前記所定範囲に位置している2つ以上の移動体のうち、前記順番が前記一の移動体に最も近い第1移動体および前記順番が前記第1移動体の次に前記一の移動体に近い第2移動体を抽出する抽出部と、をさらに備え、前記決定部は、前記抽出部によって抽出された前記第1移動体および前記第2移動体が前記所定方向において前記一の移動体よりも物理的に一方側に位置しており、かつ前記所定方向において前記第1移動体の位置および前記第2移動体の位置が相互に異なる場合、前記第1移動体および前記第2移動体のうちの前記所定方向における位置が前記一の移動体に近い方を前記宛先移動体として決定し、前記書換部は、前記決定部による決定結果に基づいて前記順番情報を書き換え、前記送信部は、前記書換部によって書き換えられた前記順番情報を含む前記通信フレームを前記宛先移動体に送信してもよい。
【0017】
これによれば、順番情報およびマーカの検出結果に基づいて所定範囲に存在する移動体を正しく認識でき、そのうえで第1移動体および第2移動体を容易に抽出できる。また、一の移動体は、所定方向における受信装置側に電波を発して、第1移動体および第2移動体のうちの一方に通信フレームを送信できる。また、当該一方も、所定方向における受信装置側に電波を発して、第1移動体および第2移動体のうちの他方に通信フレームを送信できる。このように、第1移動体および第2移動体を容易に抽出できるとともに、一の移動体および宛先移動体のそれぞれが、所定方向における受信装置側に電波を発して通信フレームを送信できるので、無線通信をさらに効率よく行える。
【0018】
また、前記書換部は、前記抽出部によって抽出された前記第1移動体および前記第2移動体が前記所定方向において前記一の移動体よりも前記一方側に位置しており、かつ前記所定方向において前記第2移動体が前記第1移動体よりも前記一の移動体に近い場合、前記第2移動体の次に前記第1移動体に前記通信フレームが送信されるように前記順番情報を書き換え、前記送信部は、前記書換部によって書き換えられた前記順番情報を含む前記通信フレームを前記第2移動体に送信してもよい。
【0019】
これによれば、第2移動体が所定方向における一方側に電波を発して通信フレームを第1移動体に容易に送信できるので、無線通信をさらに効率よく行える。
【0020】
また、前記決定部は、前記抽出部によって抽出された前記第1移動体および前記第2移動体が前記所定方向において前記一の移動体よりも一方側に位置しており、かつ前記所定方向において前記第1移動体の位置および前記第2移動体の位置が相互に同じである場合、前記第1移動体および前記第2移動体のうちの前記所定方向において前記一の移動体側に移動している方を前記宛先移動体として決定してもよい。
【0021】
これによれば、一の移動体は、所定方向における一方側に電波を発して、第1移動体および第2移動体のうちの一方に通信フレームを送信できる。また、当該一方も、所定方向における一方側に電波を発して、第1移動体および第2移動体のうちの他方に通信フレームを送信できる。このように、一の移動体および宛先移動体のそれぞれが、所定方向における一方側に電波を発して通信フレームを送信できるので、無線通信をさらに効率よく行える。
【0022】
また、前記書換部は、前記抽出部によって抽出された前記第1移動体および前記第2移動体が前記所定方向において前記一の移動体よりも一方側に位置しており、かつ前記所定方向において前記第1移動体の位置および前記第2移動体の位置が相互に同じであり、かつ前記第2移動体が前記所定方向において前記一の移動体側に移動している場合、前記第2移動体の次に前記第1移動体に前記通信フレームが送信されるように前記順番情報を書き換え、前記送信部は、前記書換部によって書き換えられた前記順番情報を含む前記通信フレームを前記第2移動体に送信してもよい。
【0023】
これによれば、第2移動体が所定方向における一方側に電波を発して通信フレームを第1移動体に容易に送信できるので、無線通信をさらに効率よく行える。
【0024】
また、上記課題を解決するために、本発明の一態様に係る通信システムは、制御装置と、送信装置と、受信装置と、複数の移動体とを備え、前記制御装置は、前記複数の移動体を制御するための通信フレームを送信し、前記送信装置は、前記制御装置から前記通信フレームを受信し、受信した前記通信フレームを前記複数の移動体のいずれかに送信し、前記受信装置は、予め定められた所定方向において前記送信装置よりも一方側に配置され、前記複数の移動体のいずれかから前記通信フレームを受信し、受信した前記通信フレームを前記制御装置に送信し、前記複数の移動体のうちの一の移動体は、前記通信フレームを受信する受信部と、前記複数の移動体のうち前記通信フレームの宛先となる宛先移動体を決定する決定部と、前記決定部によって決定された前記宛先移動体に前記通信フレームを送信する送信部とを有し、前記決定部は、前記複数の移動体のうち、前記所定方向において前記一の移動体よりも一方側に位置しかつ前記所定方向における位置が前記一の移動体により近い他の移動体を、より優先的に前記宛先移動体として決定する。
【0025】
これによれば、通信システムは、上記移動体と同様の効果を奏する。
【0026】
また、上記課題を解決するために、本発明の一態様に係る制御方法は、相互に無線接続され任意の方向に移動する複数の移動体のうちの一の移動体の制御方法であって、前記複数の移動体を制御するための通信フレームを受信する受信ステップと、前記複数の移動体のうち前記通信フレームの宛先となる宛先移動体を決定する決定ステップと、前記決定ステップにおいて決定された前記宛先移動体に前記通信フレームを送信する送信ステップとを備え、前記決定ステップでは、前記複数の移動体のうち、予め定められた所定方向において前記一の移動体よりも一方側に位置しかつ前記所定方向における位置が前記一の移動体により近い他の移動体を、より優先的に前記宛先移動体として決定する。
【0027】
これによれば、制御方法は、上記移動体と同様の効果を奏する。
【発明の効果】
【0028】
本発明により、移動体等は、無線通信を効率よく行える。
【図面の簡単な説明】
【0029】
【
図1】
図1は、第1の実施の形態に係る通信システムの構成を示す図である。
【
図2】
図2は、
図1の通信システムの移動体の機能構成を示すブロック図である。
【
図3】
図3は、
図1の通信システムにおける無線通信フレームの構成の一例を示す図である。
【
図4】
図4は、
図3の無線通信フレームのデータグラムに含まれる情報の一例を示す図である。
【
図5】
図5は、
図1の通信システムの制御装置の動作の一例を示すフローチャートである。
【
図6】
図6は、
図1の通信システムの移動体の制御部の動作の一例を示すフローチャートである。
【
図7】
図7は、
図6の動作の続きの動作の一例を示すフローチャートである。
【
図8】
図8は、
図7の動作の続きの動作の一例を示すフローチャートである。
【
図9】
図9は、
図8の動作の続きの動作の一例を示すフローチャートである。
【
図10】
図10は、第2の実施の形態に係る通信システムの構成を示す図である。
【
図11】
図11は、
図10の通信システムにおける無線通信フレームのデータグラムに含まれる情報の一例を示す図である。
【
図12】
図12は、
図10の通信システムの制御装置の動作の一例を示すフローチャートである。
【
図13】
図13は、
図10の通信システムの移動体の制御部の動作の一例を示すフローチャートである。
【発明を実施するための形態】
【0030】
以下、実施の形態について、図面を参照しながら具体的に説明する。
【0031】
以下で説明する実施の形態は、いずれも本発明の好ましい一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置および接続形態、ステップ、ステップの順序等は、一例であり、本発明を限定する主旨ではない。
【0032】
また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、より好ましい形態を構成する任意の構成要素として説明される。なお、同一の構成要素には同一の符号を付し、説明を省略する場合がある。
【0033】
(第1の実施の形態)
図1は、第1の実施の形態に係る通信システム10の構成を示す図である。
図1を参照して、通信システム10の構成について説明する。
【0034】
図1に示すように、通信システム10は、制御装置12と、送信装置14と、受信装置16と、複数の移動体18、20、22、24、26とを備えている。
【0035】
通信システム10は、マスタスレーブ方式で通信を行うシステムである。制御装置12は、マスタである。送信装置14、受信装置16、および複数の移動体18~26のそれぞれは、スレーブである。たとえば、制御装置12、送信装置14、受信装置16、および複数の移動体18~26は、EtherCAT(Ethernet for Control Automation Technology)に基づく通信を行う。通信システム10は、たとえば、工場内の物品の入庫処理を行う自動倉庫などに適用される。
【0036】
制御装置12、送信装置14、受信装置16、および複数の移動体18~26は、リング状に通信接続されており、リング方式のネットワークを構成している。たとえば、制御装置12から送信された通信フレームは、送信装置14を経由した後に複数の移動体18~26を経由し、複数の移動体18~26を経由した後に受信装置16を経由し、受信装置16を経由した後に制御装置12に受信される(
図1の黒矢印を参照)。
【0037】
制御装置12は、複数の移動体18~26を制御する通信装置である。制御装置12は、複数の移動体18~26を制御するための通信フレームを送信する。つまり、通信フレームは、複数の移動体18~26を制御するための情報を含んでいる。たとえば、通信フレームは、通信フレームが送信される複数の移動体18~26の順番を示す順番情報等を含んでいる。たとえば、制御装置12は、複数の移動体18~26の位置を示す位置情報を取得し、複数の移動体18~26のうち、予め定められた所定方向における送信装置14側に位置している移動体から順番に通信フレームが送信されるように、通信フレームが送信される複数の移動体18~26の順番を決定する。たとえば、所定方向は、送信装置14から受信装置16に向かう方向であり、本実施の形態では、
図1または後述する
図10(以下、
図1等)におけるX軸で示す方向である。所定方向における一方側とは、
図1等におけるX軸のプラス方向側であり、所定方向における他方側とは、
図1等におけるX軸のマイナス方向側である。たとえば、所定方向における送信装置14から受信装置16側に向かって、移動体18、移動体20、移動体22、移動体24、および移動体26の順番に位置している場合、制御装置12は、移動体18、移動体20、移動体22、移動体24、および移動体26の順番に通信フレームが送信されるように、通信フレームが送信される複数の移動体18~26の順番を決定する。順番情報は後に
図4により説明するが、通信フレームの各データグラム[n]に含まれる「次に転送予定のスレーブのID」によって具現化される。
【0038】
送信装置14は、制御装置12から送信された通信フレームを受信し、受信した通信フレームを複数の移動体18~26のいずれかに送信する通信装置である。送信装置14は、制御装置12と有線接続されており、制御装置12から送信された通信フレームを有線通信によって受信する。また、送信装置14は、制御装置12から受信した通信フレームを無線通信によって複数の移動体18~26のいずれかに送信する。たとえば、送信装置14は、複数の移動体18~26のうち、所定方向において最も送信装置14側に位置している移動体に通信フレームを送信する。また、たとえば、送信装置14は、複数の移動体18~26のうち、最も所定方向の他方側(
図1等におけるX軸のマイナス方向側)に位置している移動体に通信フレームを送信する。また、たとえば、送信装置14は、順番情報に基づいて、複数の移動体18~26のうち、通信フレームが送信される順番が最も早い移動体に通信フレームを送信する。
【0039】
送信装置14は、所定場所に設置されており、移動しない。本実施の形態では、送信装置14は、側壁部1に固定されている。なお、たとえば、送信装置14は、棚部2に固定されていてもよい。なお、たとえば、送信装置14は、所定方向と直交する第1直交方向、および所定方向と直交しかつ第1直交方向と直交する第2直交方向において、受信装置16と異なる位置に配置されていてもよい。第1直交方向は、
図1等におけるY軸で示す方向であり、第2直交方向は、
図1等におけるZ軸で示す方向である。側壁部1は、所定方向に延びている。たとえば、側壁部1は、電波を遮蔽する遮蔽体である。また、たとえば、側壁部1は、電波を反射する反射体である。より具体的には、側壁部1は、工場内の物品の入庫処理を行う自動倉庫などに用いられるラックやクレーン、壁などの一部である。
【0040】
受信装置16は、所定方向において送信装置14と異なる位置に配置されている。受信装置16は、複数の移動体18~26のいずれかから通信フレームを受信し、受信した通信フレームを制御装置12に送信する通信装置である。受信装置16は、複数の移動体18~26のいずれかから送信された通信フレームを無線通信によって受信する。たとえば、受信装置16は、複数の移動体18~26のうち、所定方向において最も受信装置16側に位置している移動体から通信フレームを受信する。また、たとえば、受信装置16は、複数の移動体18~26のうち、最も所定方向の一方側(
図1等におけるX軸のプラス方向側)に位置している移動体から通信フレームを受信する。また、たとえば、受信装置16は、複数の移動体18~26のうち、最後に通信フレームを受信した移動体から通信フレームを受信する。受信装置16は、制御装置12と有線接続されており、複数の移動体18~26のいずれかから受信した通信フレームを有線通信によって制御装置12によって送信する。
【0041】
受信装置16は、所定方向において送信装置14よりも一方側に配置されている。受信装置16は、移動しない。本実施の形態では、受信装置16は、側壁部1に固定されており、所定方向において送信装置14と並んで配置されている。なお、たとえば、受信装置16は、棚部2に固定されていてもよい。また、たとえば、受信装置16は、所定方向と直交する第1直交方向、および所定方向と直交しかつ第1直交方向と直交する第2直交方向において、送信装置14と異なる位置にずれて配置されていてもよい。第1直交方向は、
図1等におけるY軸で示す方向であり、第2直交方向は、
図1等におけるZ軸で示す方向である。
【0042】
複数の移動体18~26は、相互に無線接続され、任意の方向(
図1におけるX軸およびY軸で規定される平面内の任意の方向)に移動する。たとえば、複数の移動体18~26のそれぞれは、所定方向における受信装置16側に指向性を持つ電波を発している場合、複数の移動体18~26のうちの所定方向において当該移動体よりも受信装置16側に位置している移動体または受信装置16に通信フレームを送信する。つまり、複数の移動体18~26のそれぞれは、所定方向の一方側に指向性を持つ電波を発し、複数の移動体18~26のうちの当該移動体よりも所定方向の一方側に位置している移動体または受信装置16に通信フレームを送信する。
【0043】
複数の移動体18~26のそれぞれは、任意の方向に移動する通信装置である(
図1の白矢印を参照)。本実施の形態では、複数の移動体18~26のそれぞれは、所定方向において、送信装置14よりも受信装置16側かつ受信装置16よりも送信装置14側に位置しており、側壁部1と棚部2との間における所定範囲Bを所定方向に移動する。棚部2は、所定方向に延びており、第1直交方向において側壁部1と対向している。たとえば、棚部2は、電波を遮蔽する遮蔽体である。また、たとえば、棚部2は、電波を反射する反射体である。たとえば、複数の移動体18~26のそれぞれは、棚部2に置かれている物品を当該移動体に載せ、当該物品を所望の場所まで搬送する。より具体的には、棚部2は、工場内の物品の入庫処理を行う自動倉庫などに用いられるラックやクレーン、壁などの一部である。なお、
図1では、複数の移動体18~26のそれぞれは、側壁部1および棚部2で挟まれた空間を移動するが、2つの棚部で挟まれた空間を移動する場合もある。
【0044】
以上、通信システム10の構成について説明した。
【0045】
図2は、
図1の通信システム10の移動体18の機能構成を示すブロック図である。
図2を参照して、複数の移動体18~26のうちの移動体18の機能構成について説明する。なお、複数の移動体20、22、24、26のそれぞれについては、移動体18と同様の構成であるため、後述する移動体18の説明を参照することによって詳細な説明を省略する。
【0046】
図2に示すように、移動体18は、受信部28と、送信部30と、記憶部32と、制御部34とを有している。
【0047】
受信部28は、通信フレームを受信する。たとえば、受信部28は、無線通信によって通信フレームを受信する無線通信モジュールである。
【0048】
送信部30は、決定部36によって決定された宛先移動体に通信フレームを送信する。たとえば、送信部30は、無線通信によって通信フレームを送信する無線通信モジュールである。
【0049】
記憶部32は、種々の情報を記憶している。たとえば、記憶部32は、後述する
図4に示すような情報を記憶している。たとえば、記憶部32は、メモリ等によって実現される。
【0050】
制御部34は、移動体18を制御する。たとえば、制御部34は、受信部28が受信した通信フレームに基づいて、移動体18を動作させる。また、たとえば、制御部34は、移動体18に関する情報を通信フレームに書き込み、送信部30を介して通信フレームを送信する。また、たとえば、制御部34は、送信部30を介して通信フレームを送信する宛先移動体の順番を含む順番情報を書き換える。たとえば、制御部34は、プロセッサ等によって実現される。制御部34は、決定部36と、抽出部38と、書換部40とを有している。
【0051】
決定部36は、他の複数の移動体20~26のうち通信フレームの宛先となる宛先移動体を決定する。決定部36は、他の複数の移動体20~26のうち、所定方向において移動体18(自機)よりも受信装置16側に位置しかつ所定方向における位置(すなわち
図1におけるX座標)が移動体18により近い移動体を、より優先的に宛先移動体として決定する。つまり、決定部36は、他の複数の移動体20~26のうち、所定方向において移動体18よりも一方側に位置しかつ所定方向における位置が移動体18により近い他の移動体を、より優先的に宛先移動体として決定する。
【0052】
たとえば、決定部36は、他の複数の移動体20~26のうち、所定方向において移動体18よりも受信装置16側に位置しかつ所定方向における位置が一の移動体18に最も近い移動体を、宛先移動体として決定する。つまり、たとえば、決定部36は、他の複数の移動体20~26のうち、所定方向において移動体18よりも一方側に位置しかつ所定方向における位置が移動体18に最も近い移動体を、宛先移動体として決定する。
【0053】
また、たとえば、他の複数の移動体20~26のうちの所定方向において移動体18よりも受信装置16側に位置しかつ所定方向における位置が移動体18に最も近い移動体と通信できない場合等には、決定部36は、他の複数の移動体20~26のうち、所定方向において移動体18よりも受信装置16側に位置しかつ所定方向における位置が移動体18に最も近い移動体の次に移動体18に近い移動体を、宛先移動体として決定する。つまり、たとえば、決定部36は、他の複数の移動体20~26のうち、所定方向において移動体18よりも一方側に位置しかつ所定方向における位置が移動体18に最も近い移動体の次に移動体18に近い移動体を、宛先移動体として決定する。
【0054】
また、たとえば、他の複数の移動体20~26のうちの所定方向において移動体18よりも受信装置16側に位置する2つ以上の移動体が抽出部38によって抽出された場合、決定部36は、当該2つ以上の移動体のうち、所定方向における位置が移動体18に最も近い移動体を、宛先移動体として決定する。つまり、たとえば、他の複数の移動体20~26のうちの所定方向において移動体18よりも一方側に位置する2つ以上の移動体が抽出部38によって抽出された場合、決定部36は、当該2つ以上の移動体のうち、所定方向における位置が移動体18に最も近い移動体を、宛先移動体として決定する。
【0055】
たとえば、抽出部38は、制御装置12から送信される通信フレームに含まれた順番情報に基づいて、複数の移動体18~26のうちの移動体18よりも後に通信フレームが送信されることが示されている2つ以上の移動体のうち、通信フレームが送信される順番が移動体18に最も近い第1移動体および当該順番が第1移動体の次に移動体18に近い第2移動体を宛先移動体の候補として抽出する。そして、決定部36は、これによって抽出部38が抽出した第1移動体および第2移動体の物理的位置を確認し、これらが所定方向において移動体18よりも物理的に一方側(受信装置16側)に位置しており、かつ所定方向において第1移動体の位置および第2移動体の位置が相互に異なる場合、第1移動体および第2移動体のうちの所定方向における位置が移動体18に近い方を宛先移動体として決定する。
【0056】
書換部40は、決定部36による決定結果に基づいて順番情報を書き換える。たとえば、書換部40は、抽出部38によって抽出された第1移動体および第2移動体が所定方向において移動体18よりも一方側(受信装置16側)に位置しており、かつ所定方向において第2移動体が第1移動体よりも移動体18に近い場合、第2移動体の次に第1移動体に通信フレームが送信されるように順番情報を書き換える。送信部30は、書換部40によって書き換えられた順番情報を含む通信フレームを第2移動体に送信する。
【0057】
また、別のケースとして、決定部36は、抽出部38によって抽出された第1移動体および第2移動体が所定方向において移動体18よりも一方側(受信装置16側)に位置しており、かつ所定方向において第1移動体の位置および第2移動体の位置が相互に同じである場合、第1移動体および第2移動体のうちの所定方向において移動体18側に移動している方を宛先移動体として決定する。
【0058】
また、たとえば、書換部40は、抽出部38によって抽出された第1移動体および第2移動体が所定方向において移動体18よりも一方側(受信装置16側)に位置しており、かつ所定方向において第1移動体の位置および第2移動体の位置が相互に同じであり、かつ第2移動体が所定方向において移動体18側に移動している場合、第2移動体の次に第1移動体に通信フレームが送信されるように順番情報を書き換える。送信部30は、書換部40によって書き換えられた順番情報を含む通信フレームを第2移動体に送信する。たとえば、書換部40によって、順番情報が書き換えられる。
【0059】
以上、移動体18の機能構成について説明した。
【0060】
上述したように、複数の移動体20、22、24、26のそれぞれは、移動体18と同様の構成である。つまり、本実施の形態では、複数の移動体18~26のそれぞれは、受信部28と、制御部34と、送信部30とを備えている。複数の移動体18~26のそれぞれの決定部36は、複数の移動体18~26のうち、所定方向において当該移動体よりも一方側に位置しかつ所定方向における位置が当該移動体により近い他の移動体を、より優先的に宛先移動体として決定する。
【0061】
図3は、
図1の通信システム10における無線通信フレームの構成の一例を示す図である。
図4は、
図3の無線通信フレームのデータグラムに含まれる情報の一例を示す図である。
図3および
図4を参照して、通信システム10における無線通信フレームについて説明する。
【0062】
図3の(a)に示すように、通信システム10における無線通信フレームは、PLCP(Physical Layer Convergence Protocol)プリアンブルと、PLCPヘッダと、データ(PSDU(Physical Layer Service Data Unit))とを含んでいる。
【0063】
PLCPプリアンブルは、IEEE802.11フレームの先頭に付加される同期信号を含むフィールドである。PLCPヘッダは、IEEE802.11フレームの変調方式、伝送速度、およびデータ長等の情報を含むフィールドである。
【0064】
図3の(b)に示すように、データ(PSDU)は、フレームコントロールと、デュレーションと、アドレス1と、アドレス2と、データと、FCS(Frame Check Sequence)とを含んでいる。
【0065】
フレームコントロールは、通信フレームの種類等の情報を含むフィールドである。デュレーションは、電波を使用する期間を示す情報を含むフィールドである。アドレス1は、宛先のMACアドレスを含むフィールドである。アドレス2は、送信元のMAC(Media Access Control)アドレスを含むフィールドである。FCSは、チェックサムを含むフィールドである。
【0066】
図3の(c)に示すように、データ(PSDU)に含まれるデータは、Ethernetヘッダと、EtherCATヘッダと、EtherCATデータグラム[1]~EtherCATデータグラム[n]と、FCSとを含んでいる。
【0067】
Ethernetヘッダは、宛先のMACアドレス、および送信元のMACアドレス等を含むフィールドである。EtherCATヘッダは、EtherCATフレームのヘッダであり、当該EtherCATフレームのデータ長等の情報を含むフィールドである。
【0068】
EtherCATデータグラム[1]~EtherCATデータグラム[n]のそれぞれは、送信装置14、複数の移動体18~26、および受信装置16のそれぞれ宛てのデータである。本実施の形態では、n=7であり、
図1に示す複数の移動体18~26の位置関係をもとに、EtherCATデータグラム[1]は送信装置14宛てのデータであり、EtherCATデータグラム[2]は移動体18宛てのデータであり、EtherCATデータグラム[3]は移動体20宛てのデータであり、EtherCATデータグラム[4]は移動体22宛てのデータであり、EtherCATデータグラム[5]は移動体24宛てのデータであり、EtherCATデータグラム[6]は移動体26宛てのデータであり、EtherCATデータグラム[7]は受信装置16宛てのデータである。なお、以下の説明では、EtherCATデータグラム[A](A=1~n)を、単に、データグラム[A]と呼ぶ場合がある。
【0069】
図3の(d)に示すように、EtherCATデータグラム[1]~EtherCATデータグラム[n]のそれぞれは、データグラムヘッダと、データと、ワーキングカウンタとを含んでいる。
【0070】
データグラムヘッダは、制御情報を含むフィールドである。ワーキングカウンタは、正常にアクセスされたデバイス番号をカウントするフィールドである。
【0071】
EtherCATデータグラム[1]~EtherCATデータグラム[n]のそれぞれに含まれるデータは、種々の情報を含むフィールドである。
【0072】
図4に示すように、当該データは、「複数のスレーブのID」と、「次に転送予定のスレーブのID」と、「スレーブのMACアドレス」と、「制御データ」と、「レスポンスデータ」と、「スレーブの位置情報」と、「スレーブの移動方向」と、「スレーブの移動速度」と、「電波の受信強度」とを含んでいる。
【0073】
「複数のスレーブのID」は、それぞれのEtherCATデータグラム[n]に対応するスレーブに割り当てられているIDである。つまり、「複数のスレーブのID」は、送信装置14のIDと、受信装置16のIDと、複数の移動体18~26のIDのいずれかである。
【0074】
「次に転送予定のスレーブのID」は、次に通信フレームを送信する予定のスレーブのIDである。EtherCATデータグラム[1]~EtherCATデータグラム[n]のそれぞれの「次に転送予定のスレーブのID」は、当該EtherCATデータグラムに対応するスレーブが送信予定のスレーブのIDである。たとえば、通信フレームを送信する順番は、制御装置12によって予め決められており、制御装置12によって決められた順番で通信フレームが送信されるように、順番情報が、各データグラムで「次に転送予定のスレーブのID」の形で決められている。たとえば、EtherCATデータグラム[2]に含まれている「次に転送予定のスレーブのID」が移動体20のIDである場合、移動体18は、通信フレームを移動体20に送信する。
【0075】
「スレーブのMACアドレス」は、それぞれのEtherCATデータグラム[n]に対応するスレーブの無線LANのMACアドレスである。たとえば、EtherCATデータグラム[2]に含まれている「スレーブのMACアドレス」は、移動体18のMACアドレスである。
【0076】
「制御データ」は、それぞれのEtherCATデータグラム[n]に対応するスレーブを制御するための情報である。たとえば、EtherCATデータグラム[2]に含まれている「制御データ」は、移動体18を制御するための情報である。なお、制御データには、自装置の移動先を示す制御装置12からの命令データが含まれていてもよい。
【0077】
本実施の形態では、「制御データ」は、「0」から「5」のいずれかである。たとえば、「制御データ」が「0」である場合、スレーブは移動を止めて停止し、「制御データ」が「1」である場合、スレーブは移動する。また、たとえば、「制御データ」が「2」である場合、スレーブは棚部2への物品の入庫処理を行い、「制御データ」が「3」である場合、スレーブは棚部2から物品の出庫処理を行い、「制御データ」が「4」である場合、スレーブは通信フレームの転送処理を行う。なお、本実施の形態では、EtherCATデータグラム[1]およびEtherCATデータグラム[7]のそれぞれに含まれる「制御データ」は常に「4」であり、送信装置14および受信装置16のそれぞれは、常に転送処理を行う。
【0078】
「レスポンスデータ」は、スレーブの状態を示す情報である。EtherCATデータグラム[1]~EtherCATデータグラム[n]のそれぞれの「レスポンスデータ」は、当該EtherCATデータグラムに対応するスレーブの状態を示す情報である。たとえば、EtherCATデータグラム[2]に含まれている「レスポンスデータ」は、移動体18の状態を示す情報である。
【0079】
本実施の形態では、「レスポンスデータ」は、「-2」から「6」のいずれかである。たとえば、「レスポンスデータ」が「0」である場合、スレーブが移動していないことつまり停止していることを示し、「レスポンスデータ」が「1」である場合、スレーブが移動していることを示す。また、たとえば、「レスポンスデータ」が「2」である場合、スレーブが棚部2への物品の入庫処理中であることを示し、「レスポンスデータ」が「3」である場合、スレーブが棚部2への物品の入庫処理を完了したことを示す。また、「レスポンスデータ」が「4」である場合、スレーブが棚部2から物品の出庫処理中であることを示し、「レスポンスデータ」が「5」である場合、スレーブが棚部2からの物品の出庫処理を完了したことを示す。また、「レスポンスデータ」が「6」である場合、スレーブが通信フレームの転送処理中であることを示し、「レスポンスデータ」が「-1」である場合、他のスレーブとの通信異常が発生していることを示し、「レスポンスデータ」が「-2」である場合、スレーブに異常が発生していることを示す。
【0080】
「スレーブの位置情報」は、スレーブの位置を示す情報である。EtherCATデータグラム[1]~EtherCATデータグラム[n]のそれぞれの「スレーブの位置情報」は、当該EtherCATデータグラムに対応するスレーブの位置を示す情報である。たとえば、EtherCATデータグラム[2]に含まれている「スレーブの位置情報」は、移動体18の位置を示す情報である。
【0081】
たとえば、「スレーブの位置情報」は、スレーブの位置を示すX座標およびY座標(
図1の座標軸参照)を含む。たとえば、複数のスレーブのそれぞれは、バーコードリーダによるバーコードの読み取りおよびエンコーダ等によって、当該スレーブの位置情報を取得する。なお、本実施の形態では、送信装置14および受信装置16のそれぞれは移動しないので、EtherCATデータグラム[1]およびEtherCATデータグラム[7]のそれぞれに含まれる「スレーブの位置情報」は変わらない。
【0082】
「スレーブの移動方向」は、スレーブが移動している方向を示す情報である。EtherCATデータグラム[1]~EtherCATデータグラム[n]のそれぞれの「スレーブの移動方向」は、当該EtherCATデータグラムに対応するスレーブが移動している方向を示す情報である。たとえば、EtherCATデータグラム[2]に含まれている「スレーブの移動方向」は、移動体18が移動している方向を示す情報である。
【0083】
「スレーブの移動速度」は、スレーブが移動している速度を示す情報である。EtherCATデータグラム[1]~EtherCATデータグラム[n]のそれぞれの「スレーブの移動速度」は、当該EtherCATデータグラムに対応するスレーブが移動している速度を示す情報である。たとえば、EtherCATデータグラム[2]に含まれている「スレーブの移動速度」は、移動体18が移動している速度を示す情報である。なお、本実施の形態では、送信装置14および受信装置16のそれぞれは移動しないので、EtherCATデータグラム[1]およびEtherCATデータグラム[7]のそれぞれに含まれる「スレーブの移動速度」は0mm/sである。
【0084】
「電波の受信強度」は、スレーブが受信した電波の受信強度を示す情報である。EtherCATデータグラム[1]~EtherCATデータグラム[n]のそれぞれの「スレーブの移動速度」は、当該EtherCATデータグラムに対応するスレーブが受信した電波の受信強度を示す情報である。たとえば、EtherCATデータグラム[2]に含まれている「電波の受信強度」は、移動体18が受信した電波の受信強度を示す情報である。
【0085】
以上、通信システム10における通信フレームについて説明した。
【0086】
図5は、
図1の通信システム10の制御装置12の動作の一例を示すフローチャートである。
図5を参照して、制御装置12の動作の一例について説明する。
【0087】
図5に示すように、制御装置12は、通信フレームを送信装置14に送信する(ステップS1)。たとえば、制御装置12は、送信装置14から複数の移動体18~26を経由して受信装置16まで通信フレームを送信可能となるように通信フレームを送信する順番を決め、当該順番を示す順番情報を含む通信フレームを送信装置14に送信する。
【0088】
制御装置12は、通信フレームを送信すると、受信装置16から通信フレームを受信したか否かを判定する(ステップS2)。つまり、制御装置12は、送信装置14に送信した通信フレームが複数の移動体18~26および受信装置16を経由して制御装置12に受信されたか否かを判定する。
【0089】
制御装置12は、受信装置16から通信フレームを受信していない場合(ステップS2でNo)、受信装置16から通信フレームを受信したか否かを再び判定する(ステップS2)。
【0090】
制御装置12は、受信装置16から通信フレームを受信した場合(ステップS2でYes)、処理を終了する。
【0091】
以上、制御装置12の動作の一例について説明した。
【0092】
図6は、
図1の通信システム10の移動体18の制御部34の動作の一例を示すフローチャートである。
図7は、
図6の動作の続きの動作の一例を示すフローチャートである。
図8は、
図7の動作の続きの動作の一例を示すフローチャートである。
図9は、
図8の動作の続きの動作の一例を示すフローチャートである。
図10は、
図9の動作の続きの動作の一例を示すフローチャートである。
図6から
図10を参照して、移動体18の制御部34の動作の一例について説明する。なお、複数の移動体20、22、24、26のそれぞれについては、移動体18の制御部34と同様の動作を行うため、後述する移動体18の制御部34の動作の説明を参照することによって、これらの動作の詳細な説明を省略する。
【0093】
図6に示すように、制御部34は、通信フレームを受信したか否かを判定する(ステップS11)。具体的には、制御部34は、受信部28が通信フレームを受信したか否かを判定する。
【0094】
制御部34は、通信フレームを受信していない場合(ステップS11でNo)、通信フレームを受信したか否かを再び判定する(ステップS11)。
【0095】
制御部34は、通信フレームを受信した場合(受信ステップ)(ステップS11でYes)、受信した通信フレームの宛先のMACアドレスを取得する(ステップS12)。たとえば、制御部34は、受信した通信フレームのアドレス1(
図3を参照)に含まれているスレーブのMACアドレスを、宛先のMACアドレスとして取得する。
【0096】
次に制御部34は、制御装置12から送信されたフレームにおける自機向けのデータグラムを探す。まず制御部34は、受信した通信フレームの宛先のMACアドレスを取得すると、A=1とし(ステップS13)、取得したMACアドレスと当該通信フレームのデータグラム[A]におけるMACアドレスとが一致しているか否かを判定する(ステップS14)。たとえば、制御部34は、取得したMACアドレスと、データグラム[1]のデータ(
図4を参照)に含まれているスレーブのMACアドレス(
図5を参照)とが一致しているか否かを判定する。本実施の形態では、データグラム[1]は送信装置14宛てのデータであり、データグラム[1]に含まれているMACアドレスは送信装置14のMACアドレスである。したがって、制御部34は、取得したMACアドレス(移動体18、20、22、24または26のいずれかのMACアドレス)と、データグラム[1]のデータに含まれているスレーブのMACアドレス(A=1の場合、送信装置14のMACアドレス)とが一致していないと判定する。
【0097】
制御部34は、取得したMACアドレスと通信フレームのデータグラム[A]におけるMACアドレスとが一致していない場合(ステップS14でNo)、全てのデータグラムの読み出しが完了したか否かを判定する(ステップS15)。たとえば、A=1~nの場合、通信フレームにはデータグラム[1]~データグラム[n]が含まれており、制御部34は、データグラム[1]から順番に読み出しを行い、データグラム[n]まで読み出しが完了している場合、全てのデータグラムの読み出しが完了したと判定する。たとえば、制御部34は、データグラム[1]の読み出ししか行っていない場合、全てのデータグラムの読み出しが完了していないと判定する。
【0098】
制御部34は、全てのデータグラムの読み出しが完了した場合(ステップS15でYes)、処理をエラー終了する。
【0099】
制御部34は、全てのデータグラムの読み出しが完了していない場合(ステップS15でNo)、A=A+1とし(ステップS16)、取得したMACアドレスと通信フレームのデータグラム[A]におけるMACアドレスとが一致しているか否かを再び判定する(ステップS14)。たとえば、制御部34は、直前のステップS14においてA=1であった場合、A=1+1=2とし、取得したMACアドレスと通信フレームのデータグラム[2]におけるMACアドレスとが一致しているか否かを判定する。また、たとえば、制御部34は、直前のステップS14においてA=2であった場合にはA=2+1=3とし、取得したMACアドレスと通信フレームのデータグラム[3]におけるMACアドレスとが一致しているか否かを判定する。本実施の形態では、データグラム[2]には移動体18のMACアドレスが含まれているので、移動体18の制御部34は、A=2の場合、取得したMACアドレスと通信フレームのデータグラム[2]におけるMACアドレスとが一致していると判定する。
【0100】
制御部34は、取得したMACアドレスと通信フレームのデータグラム[A]におけるMACアドレスとが一致している場合(ステップS14でYes)、データグラム[A]における制御データを出力する(
図7のステップS17)。たとえば、制御部34は、移動体18を駆動させるための駆動部(図示せず)等に対して制御データを出力し、移動体18を制御データに基づいて駆動させる。
【0101】
次に、制御部34は、データグラム[A]における制御データを出力すると、レスポンスデータ等を取得したか否かを判定する(ステップS18)。たとえば、制御部34は、駆動部からのレスポンスデータ、移動体18に搭載されているエンコーダからの移動体18の位置を示す位置情報、移動体18に搭載されているセンサからの移動体18の移動方向を示す情報および移動体18の移動速度を示す情報、ならびに受信部28が受信した電波の受信強度を示す情報等を取得したか否かを判定する。
【0102】
制御部34は、レスポンスデータ等を取得した場合(ステップS18でYes)、取得したレスポンスデータ等をデータグラム[A]に書き込む(ステップS19)。たとえば、制御部34は、取得したレスポンスデータ等をデータグラム[2]に書き込む。
【0103】
制御部34は、レスポンスデータ等を取得していない場合(ステップS18でNo)、移動体18の異常ステータス情報をデータグラム[A]に書き込む(ステップS20)。たとえば、制御部34は、移動体18の異常ステータス情報をデータグラム[2]に書き込む。なお、レスポンスデータを取得しないとの判断は、制御データの出力から所定時間が経過した後にしても良い。
【0104】
制御部34は、取得したレスポンスデータ等をデータグラム[A]に書き込みした場合(ステップS19)、および移動体18の異常ステータス情報をデータグラム[A]に書き込みした場合(ステップS20)、次にデータグラム[A]における「次に転送予定のスレーブのID」を取得する(ステップS21)。これ以降は、データグラム[A]の移動体の転送先の移動体として、制御装置12から送信されたフレームにおけるデータグラム番号を探す手順である。たとえば、データグラム[A]における「次に転送予定のスレーブのID」は、制御装置12によって予め書き込まれている。たとえば、データグラム[2]における「次に転送予定のスレーブのID」が移動体20のIDである場合、制御部34は、「次に転送予定のスレーブのID」として移動体20のIDを取得する。
【0105】
制御部34は、データグラム[A]における「次に転送予定のスレーブのID」を取得すると、N=1とし(ステップS22)、取得した「次に転送予定のスレーブのID」とデータグラム[A+N]における「スレーブのID」とが一致しているか否かを判定する(ステップS23)。たとえば、A=2の場合、制御部34は、データグラム[2]における「次に転送予定のスレーブのID」とデータグラム[3]における「スレーブのID」とが一致しているか否かを判定する。
【0106】
制御部34は、取得した「次に転送予定のスレーブのID」とデータグラム[A+N]における「スレーブのID」とが一致していない場合(ステップS23でNo)、全てのデータグラムの読み出しが完了したか否かを判定する(ステップS24)。たとえば、A=2でありかつn=7である場合、制御部34は、データグラム[3]から順番に読み出しを行い、データグラム[7]まで読み出しが完了している場合、全てのデータグラムの読み出しが完了したと判定する。たとえば、制御部34は、データグラム[3]の読み出ししか行っていない場合、全てのデータグラムの読み出しが完了していないと判定する。
【0107】
制御部34は、全てのデータグラムの読み出しが完了した場合(ステップS24でYes)、処理をエラー終了する。
【0108】
制御部34は、全てのデータグラムの読み出しが完了していない場合(ステップS24でNo)、N=N+1とし(ステップS25)、取得した「次に転送予定のスレーブのID」とデータグラム[A+N]における「スレーブのID」とが一致しているか否かを再び判定する(ステップS23)。たとえば、制御部34は、A=2でありかつ直前のステップS23においてN=1であった場合、N=1+1=2とし、取得した「次に転送予定のスレーブのID」とデータグラム[4]における「スレーブのID」とが一致しているか否かを判定する。また、たとえば、制御部34は、A=2でありかつ直前のステップS23においてN=2であった場合、N=2+1=3とし、取得した「次に転送予定のスレーブのID」とデータグラム[5]における「スレーブのID」とが一致しているか否かを判定する。
【0109】
制御部34は、取得した「次に転送予定のスレーブのID」とデータグラム[A+N]における「スレーブのID」とが一致している場合(ステップS23でYes)、M=1とし(ステップS26)、データグラム[A+N]における「次に転送予定のスレーブのID」とデータグラム[A+N+M]における「スレーブのID」とが一致しているか否かを判定する(ステップS27)。たとえば、制御部34は、データグラム[3]における「次に転送予定のスレーブのID」とデータグラム[4]における「スレーブのID」とが一致しているか否かを判定する。これはデータグラム[A]の移動体の転送先から次の転送先の移動体(すなわち、データグラム[A]の移動体の次の次の転送先)として、制御装置12から送信されたフレームにおけるデータグラム番号を探す手順である。
【0110】
制御部34は、データグラム[A+N]における「次に転送予定のスレーブのID」とデータグラム[A+N+M]における「スレーブのID」とが一致していない場合(ステップS27でNo)、全てのデータグラムの読み出しが完了したか否かを判定する(ステップS28)。たとえば、A=2でありかつn=7である場合、制御部34は、データグラム[4]から順番に読み出しを行い、データグラム[7]まで読み出しが完了している場合、全てのデータグラムの読み出しが完了したと判定する。たとえば、制御部34は、データグラム[4]の読み出ししか行っていない場合、全てのデータグラムの読み出しが完了していないと判定する。
【0111】
制御部34は、全てのデータグラムの読み出しが完了した場合(ステップS28でYes)、処理をエラー終了する。
【0112】
制御部34は、全てのデータグラムの読み出しが完了していない場合(ステップS28でNo)、M=M+1とし(ステップS29)、データグラム[A+N]における「次に転送予定のスレーブのID」とデータグラム[A+N+M]における「スレーブのID」とが一致しているか否かを再び判定する(ステップS27)。たとえば、制御部34は、A=2でありかつN=1でありかつ直前のステップS27においてM=1であった場合、M=1+1=2とし、データグラム[3]における「次に転送予定のスレーブのID」とデータグラム[5]における「スレーブのID」とが一致しているか否かを判定する。また、たとえば、制御部34は、A=2でありかつN=1でありかつ直前のステップS27においてN=2であった場合、N=2+1=3とし、データグラム[3]における「次に転送予定のスレーブのID」とデータグラム[6]における「スレーブのID」とが一致しているか否かを判定する。
【0113】
制御部34は、データグラム[A+N]における「次に転送予定のスレーブのID」とデータグラム[A+N+M]における「スレーブのID」とが一致している場合(ステップS27でYes)、所定方向においてデータグラム[A+N+M]に係るスレーブがデータグラム[A+N]に係るスレーブよりもデータグラム[A]に係るスレーブに近いか否かを判定する(ステップS30)。たとえば、制御部34は、A=2でありかつN=1でありかつM=1である場合、所定方向においてデータグラム[4]に係る移動体22がデータグラム[3]に係る移動体20よりもデータグラム[2]に係る移動体18に近いか否かを、EtherCATデータグラム[A]に含まれる「スレーブの位置情報」から抽出した位置情報(スレーブの位置を示すX座標およびY座標)を基に判定する。
【0114】
書換部40は、所定方向においてデータグラム[A+N+M]に係るスレーブがデータグラム[A+N]に係るスレーブよりもデータグラム[A]に係るスレーブに近い場合(ステップS30でYes)、データグラム[A]における「次に転送予定のスレーブのID」にデータグラム[A+N+M]に係るスレーブのIDを書き込む(ステップS31)。
【0115】
このように、制御部34は、複数の移動体18~26のうち通信フレームの宛先となる宛先移動体を決定する(決定ステップ)。制御部34は、決定ステップでは、複数の移動体18~26のうち、所定方向において移動体18よりも一方側に位置しかつ所定方向における位置が移動体18により近い他の移動体を、より優先的に宛先移動体として決定する。
【0116】
書換部40は、ステップS31でデータグラム[A]における「次に転送予定のスレーブのID」にデータグラム[A+N+M]に係るスレーブのIDを書き込むと、次に、データグラム[A+N+M]における「次に転送予定のスレーブのID」にデータグラム[A+N]に係るスレーブのIDを書き込む(ステップS32)。
【0117】
制御部34は、ステップS32で、データグラム[A+N+M]における「次に転送予定のスレーブのID」にデータグラム[A+N]に係るスレーブのIDを書き込むと、次に、通信フレームの宛先のMACアドレスにデータグラム[A+N+M]におけるMACアドレスを書き込む(ステップS33)。
【0118】
制御部34は、所定方向においてデータグラム[A+N+M]に係るスレーブがデータグラム[A+N]に係るスレーブよりもデータグラム[A]に係るスレーブに近くない場合(ステップS30でNo)、所定方向においてデータグラム[A+N+M]に係るスレーブとデータグラム[A+N]に係るスレーブとが同じ位置、かつデータグラム[A+N+M]に係るスレーブがデータグラム[A]に係るスレーブの方に向かって移動しているか否かを、EtherCATデータグラム[A]に含まれる「スレーブの位置情報」および「スレーブの移動方向」から抽出した情報を基に判定する(ステップS34)。
【0119】
書換部40は、所定方向においてデータグラム[A+N+M]に係るスレーブとデータグラム[A+N]に係るスレーブとが同じ位置、かつデータグラム[A+N+M]に係るスレーブがデータグラム[A]に係るスレーブに向かって移動している場合(ステップS34でYes)、データグラム[A]における「次に転送予定のスレーブのID」にデータグラム[A+N+M]に係るスレーブのIDを書き込む(ステップS31)。
【0120】
制御部34は、所定方向においてデータグラム[A+N+M]に係るスレーブとデータグラム[A+N]に係るスレーブとが同じ位置、かつデータグラム[A+N+M]に係るスレーブがデータグラム[A]に係るスレーブに向かって移動していない場合(ステップS34でNo)、通信フレームの宛先のMACアドレスにデータグラム[A+N]におけるMACアドレスを書き込む(ステップS35)。
【0121】
制御部34は、通信フレームの宛先のMACアドレスにデータグラム[A+N+M]におけるMACアドレスを書き込んだ場合(ステップS33)、および通信フレームの宛先のMACアドレスにデータグラム[A+N]におけるMACアドレスを書き込んだ場合(ステップS35)、通信フレームの送信元のMACアドレスにデータグラム[A]におけるMACアドレスを書き込む(ステップS36)。
【0122】
制御部34は、通信フレームの送信元のMACアドレスにデータグラム[A]におけるMACアドレスを書き込むと、通信フレームを送信する(送信ステップ)(ステップS37)。
【0123】
以上、移動体18の制御部34の動作の一例について説明した。
【0124】
上述したように、通信システム10では、たとえば、制御装置12は複数の移動体18~26の位置情報に基づいて通信フレームを送信させる順番を決定する。たとえば、制御装置12が当該順番を決定した後に複数の移動体18~26のそれぞれが移動して所定方向における複数の移動体18~26が並ぶ順番が変わった場合であっても、移動体18等の処理によって通信フレームを送信させる順番を適宜変更できる。
【0125】
以上、第1の実施の形態に係る通信システム10について説明した。
【0126】
第1の実施の形態に係る移動体18は、相互に無線接続され任意の方向に移動する複数の移動体18~26のうちの一の移動体であって、複数の移動体18~26を制御するための通信フレームを受信する受信部28と、複数の移動体18~26のうち通信フレームの宛先となる宛先移動体を決定する決定部36と、決定部36によって決定された宛先移動体に通信フレームを送信する送信部30とを備え、決定部36は、複数の移動体18~26のうち、予め定められた所定方向において一の移動体よりも一方側に位置しかつ所定方向における位置が一の移動体により近い他の移動体を、より優先的に宛先移動体として決定する。
【0127】
これによれば、複数の移動体18~26のうち、所定方向において一の移動体よりも一方側に位置しかつ所定方向における位置が一の移動体により近い移動体を、より優先的に宛先移動体として決定でき、宛先移動体に通信フレームを送信できる。したがって、一の移動体は、所定方向における一方側に電波を発して通信フレームを送信できる。また、宛先移動体の次に通信フレームを送信すべき移動体は、所定方向において宛先移動体よりも一方側に位置している可能性が高いので、宛先移動体も、所定方向における一方側に電波を発して通信フレームを送信できる。このように、一の移動体および宛先移動体のそれぞれが、所定方向における一方側に電波を発して通信フレームを送信できるので、無線通信を効率よく行える。
【0128】
また、制御装置12と、送信装置14と、受信装置16と、複数の移動体18~26とを備える通信システム10において、制御装置12は、通信フレームを送信し、送信装置14は、制御装置12から通信フレームを受信し、受信した通信フレームを複数の移動体18~26のいずれかに送信し、受信装置16は、所定方向において送信装置14よりも一方側に配置され、複数の移動体18~26のいずれかから通信フレームを受信し、受信した通信フレームを制御装置12に送信する。
【0129】
これによれば、複数の移動体18~26のうち、所定方向において一の移動体よりも受信装置16側(一方側)に位置しかつ所定方向における位置が一の移動体により近い移動体を、より優先的に宛先移動体として決定でき、宛先移動体に通信フレームを送信できる。したがって、一の移動体は、所定方向における受信装置16側に電波を発して通信フレームを送信できる。また、宛先移動体の次に通信フレームを送信すべき移動体は、所定方向において宛先移動体よりも受信装置16側に位置している可能性が高いので、宛先移動体も、所定方向における受信装置16側に電波を発して通信フレームを送信できる。このように、一の移動体および宛先移動体のそれぞれが、所定方向における受信装置16側に電波を発して通信フレームを送信できるので、無線通信を効率よく行える。
【0130】
また、通信フレームは、通信フレームが送信される複数の移動体18~26の順番を示す順番情報を含み、一の移動体は、順番情報に基づいて、複数の移動体18~26とのうちの一の移動体よりも後に通信フレームが送信されることが示されている2つ以上の移動体のうち、順番が一の移動体に最も近い第1移動体および順番が第1移動体の次に一の移動体に近い第2移動体を抽出する抽出部38をさらに備え、決定部36は、抽出部38によって抽出された第1移動体および第2移動体が所定方向において一の移動体よりも物理的に一方側に位置しており、かつ所定方向において第1移動体の位置および第2移動体の位置が相互に異なる場合、第1移動体および第2移動体のうちの所定方向における位置が一の移動体に近い方を宛先移動体として決定する。
【0131】
これによれば、順番情報に基づいて2つの宛先移動体の候補である第1移動体および第2移動体を容易に抽出できる。また、一の移動体は、所定方向における一方側に電波を発して、第1移動体および第2移動体のうちの一方に通信フレームを送信できる。また、当該一方も、所定方向における一方側に電波を発して、第1移動体および第2移動体のうちの他方に通信フレームを送信できる。このように、第1移動体および第2移動体を容易に抽出できるとともに、一の移動体および宛先移動体のそれぞれが、所定方向における一方側に電波を発して通信フレームを送信できるので、無線通信をさらに効率よく行える。
【0132】
また、決定部36による決定結果に基づいて順番情報を書き換える書換部40をさらに備え、送信部30は、書換部40によって書き換えられた順番情報を含む通信フレームを宛先移動体に送信する。
【0133】
これによれば、決定部36による決定結果によって通信フレームが送信される複数の移動体18~26の順番が変わる場合、順番情報を書き換えることができ、書き換えられた順番情報を含む通信フレームを宛先移動体に送信でき、結果として、制御装置12に順番情報の書き換えを認識させ得るので、無線通信をさらに効率よく行える。
【0134】
また、書換部40は、抽出部38によって抽出された第1移動体および第2移動体が所定方向において一の移動体よりも一方側に位置しており、かつ所定方向において第2移動体が第1移動体よりも一の移動体に近い場合、第2移動体の次に第1移動体に通信フレームが送信されるように順番情報を書き換え、送信部30は、書換部40によって書き換えられた順番情報を含む通信フレームを第2移動体に送信する。
【0135】
これによれば、第2移動体が所定方向における一方側に電波を発して通信フレームを第1移動体に容易に送信できるので、無線通信をさらに効率よく行える。
【0136】
また、決定部36は、抽出部38によって抽出された第1移動体および第2移動体が所定方向において一の移動体よりも一方側に位置しており、かつ所定方向において第1移動体の位置および第2移動体の位置が相互に同じである場合、第1移動体および第2移動体のうちの所定方向において一の移動体側に移動している方を宛先移動体として決定する。
【0137】
これによれば、一の移動体は、所定方向における一方側に電波を発して、第1移動体および第2移動体のうちの一方に通信フレームを送信できる。また、当該一方も、所定方向における一方側に電波を発して、第1移動体および第2移動体のうちの他方に通信フレームを送信できる。このように、一の移動体および宛先移動体のそれぞれが、所定方向における一方側に電波を発して通信フレームを送信できるので、無線通信をさらに効率よく行える。
【0138】
また、書換部40は、抽出部38によって抽出された第1移動体および第2移動体が所定方向において一の移動体よりも一方側に位置しており、かつ所定方向において第1移動体の位置および第2移動体の位置が相互に同じであり、かつ第2移動体が所定方向において一の移動体側に移動している場合、第2移動体の次に第1移動体に通信フレームが送信されるように順番情報を書き換え、送信部30は、書換部40によって書き換えられた順番情報を含む通信フレームを第2移動体に送信する。
【0139】
これによれば、第2移動体が所定方向における一方側に電波を発して通信フレームを第1移動体に容易に送信できるので、無線通信をさらに効率よく行える。
【0140】
また、上記課題を解決するために、本発明の一態様に係る通信システム10は、制御装置12と、送信装置14と、受信装置16と、複数の移動体18~26とを備え、制御装置12は、複数の移動体18~26を制御するための通信フレームを送信し、送信装置14は、制御装置12から通信フレームを受信し、受信した通信フレームを複数の移動体18~26のいずれかに送信し、受信装置16は、予め定められた所定方向において送信装置14よりも一方側に配置され、複数の移動体18~26のいずれかから通信フレームを受信し、受信した通信フレームを制御装置12に送信し、複数の移動体18~26のうちの一の移動体は、通信フレームを受信する受信部28と、複数の移動体18~26のうち通信フレームの宛先となる宛先移動体を決定する決定部36と、決定部36によって決定された宛先移動体に通信フレームを送信する送信部30とを有し、決定部36は、複数の移動体18~26のうち、所定方向において一の移動体よりも一方側に位置しかつ所定方向における位置が一の移動体により近い他の移動体を、より優先的に宛先移動体として決定する。
【0141】
これによれば、通信システム10は、上記移動体18と同様の効果を奏する。
【0142】
また、上記課題を解決するために、本発明の一態様に係る制御方法は、相互に無線接続され任意の方向に移動する複数の移動体18~26のうちの一の移動体の制御方法であって、複数の移動体18~26を制御するための通信フレームを受信する受信ステップと、複数の移動体18~26のうち通信フレームの宛先となる宛先移動体を決定する決定ステップと、決定ステップにおいて決定された宛先移動体に通信フレームを送信する送信ステップとを備え、決定ステップでは、複数の移動体18~26のうち、予め定められた所定方向において一の移動体よりも一方側に位置しかつ所定方向における位置が一の移動体により近い他の移動体を、より優先的に宛先移動体として決定する。
【0143】
これによれば、制御方法は、上記移動体18と同様の効果を奏する。
【0144】
(第2の実施の形態)
図10は、第2の実施の形態に係る通信システム10aの構成を示す図である。
図10を参照して、通信システム10aの構成について説明する。
【0145】
図10に示すように、通信システム10aは、上位装置50と、制御装置52と、送信装置54と、受信装置56と、複数の移動体58、60、62、64、66と、マーカ68とをさらに備えている点において、通信システム10と主に異なっている。以下の説明では、通信システム10との相違点を中心に説明する。
【0146】
上位装置50は、制御装置12および制御装置52と通信可能に接続されており、第1グループ(
図10の破線を参照)および第2グループ(
図10の破線を参照)を管理している。
【0147】
制御装置12、送信装置14、および受信装置16は、第1グループに所属し、制御装置52、送信装置54、および受信装置56は、第2グループに所属している。
【0148】
複数の移動体18~26のそれぞれは、所定方向における送信装置14よりも受信装置16側かつ受信装置16よりも送信装置14側における所定範囲B(
図10の二点鎖線を参照)において所定方向に移動可能である。
図10に示す状態では、複数の移動体18~26のそれぞれは、第1グループに所属しているが、移動することによって第2グループに所属することができる。
【0149】
複数の移動体58~66のそれぞれは、第1直交方向における送信装置54よりも受信装置56側かつ受信装置56よりも送信装置54側における所定範囲C(
図10の二点鎖線を参照)において第1直交方向に移動可能である。
図10に示す状態では、複数の移動体58~66のそれぞれは、第2グループに所属しているが、移動することによって第1グループに所属することができる。
【0150】
制御装置12は、複数の移動体18~26、58~66のうち、第1グループに所属している移動体を制御するための通信フレームを送信する。つまり、制御装置12は、複数の移動体18~26、58~66のうち、所定範囲Bに位置している移動体を制御するための通信フレームを送信する。たとえば、制御装置12から送信される通信フレームに含まれる順番情報には、複数の移動体18~26、58~66のうち所定範囲Bに位置している1つ以上の移動体の順番が含まれる。
【0151】
制御装置52は、複数の移動体18~26、58~66のうち、第2グループに所属している移動体を制御するための通信フレームを送信する。つまり、制御装置52は、複数の移動体18~26、58~66のうち、所定範囲Cに位置している移動体を制御するための通信フレームを送信する。たとえば、制御装置52から送信される通信フレームに含まれる順番情報には、複数の移動体18~26、58~66のうち所定範囲Cに位置している1つ以上の移動体の順番が含まれる。
【0152】
マーカ68は、複数の移動体18~26のそれぞれが、所定範囲Bから離脱または所定範囲Bに合流したか否かを認識するためのマーカである。また、マーカ68は、複数の移動体58~66のそれぞれが所定範囲Cに合流したかまたは所定範囲Cから離脱したか否かを認識するためのマーカでもある。マーカ68は、
図10における2つの所定範囲B、Cの境界に、たとえばバーコード、発光体などを設置することで実現でき、当該マーカ位置を通過する移動体がこれをカメラなどで検出し、検出結果に基づいて当初の所定範囲から新たな所定範囲に移動したことを認識する。換言すれば、マーカ68は、複数の移動体18~26、58~66のそれぞれがいずれのグループに所属しているかを認識するためのマーカである。
【0153】
たとえば、移動体18がマーカ68の近傍を-Y方向に通過することによって、移動体18は、所定範囲Bの外に出たこと、すなわち、第1グループから離脱して第2グループに所属したことを検出する。複数の移動体20~26についても同様である。
【0154】
また、たとえば、移動体58がマーカ68の前方を+Y方向に通過することによって、移動体58は、第2グループから離脱して第1グループに所属したことを認識する。複数の移動体60~66についても同様である。
【0155】
本実施の形態では、移動体18の抽出部38は、順番情報およびマーカ68の検出結果に基づいて、複数の移動体18~26のうちの移動体18よりも後に通信フレームが送信されることが示されておりかつ所定範囲Bに位置している2つ以上の移動体のうち、順番が移動体18に最も近い第1移動体および順番が第1移動体の次に移動体18に近い第2移動体を抽出する。
【0156】
移動体18の決定部36は、抽出部38によって抽出された第1移動体および第2移動体が所定方向において移動体18よりも物理的に一方側(受信装置16側)に位置しており、かつ所定方向において第1移動体の位置および第2移動体の位置が相互に異なる場合、第1移動体および第2移動体のうちの所定方向における位置が移動体18に近い方を宛先移動体として決定する。
【0157】
複数の移動体20~26、58~66のそれぞれの抽出部38は、移動体18の抽出部38と同じような処理を行う。また、複数の移動体20~26、58~66のそれぞれの決定部36は、移動体18の決定部36と同じような処理を行う。
【0158】
図11は、
図10の通信システム10aにおける通信フレームのデータグラムに含まれる情報の一例を示す図である。
図11を参照して、通信システム10aにおける通信フレームについて説明する。
【0159】
図11に示すように、通信システム10aにおける通信フレームのEtherCATデータグラム[1]~EtherCATデータグラム[n]のそれぞれに含まれるデータは、通信システム10における通信フレームが含んでいる情報に加えて、「所属グループ番号」と、「検出情報」とをさらに含んでいる点において、通信システム10における通信フレームと主に異なっている。
【0160】
「所属グループ番号」は、複数のスレーブのそれぞれが所属しているグループの番号である。たとえば、制御装置12および制御装置52のそれぞれは、上位装置50を介して、複数のスレーブのそれぞれが所属しているグループの番号を取得し、複数のスレーブのそれぞれが所属しているグループの番号を通信フレームに書き込む。たとえば、
図10に示す状態では、送信装置14、受信装置16、および複数の移動体18~26のそれぞれが所属するグループの番号は、1であり、送信装置54、受信装置56、および複数の移動体58~66のそれぞれが所属するグループの番号は、2である。
【0161】
「検出情報」は、マーカ68の検出結果を示す情報である。本実施の形態では、「検出情報」は、「0」および「1」のいずれかである。たとえば、「検出情報」が「0」である場合、スレーブが分岐・合流ポイント(マーカ68の前方)を通過していないことを示し、「検出情報」が「1」である場合、スレーブが分岐・合流ポイント(マーカ68の前方)を通過したことを示す。
【0162】
より具体的には、複数の移動体18~26、58~66のそれぞれは、EtherCATデータグラムに含まれる「スレーブの位置情報」、「スレーブの移動方向」、「スレーブの移動速度」、および「検出情報」を基にマーカ68の前方をどの方向に(たとえば、+Y方向や-Y方向など)通過したかを判定し、EtherCATデータグラムに含まれる「所属グループ番号」を適宜書き換える。たとえば、移動体24は、移動して第1グループを離脱して第2グループに属した場合、通信フレームのデータグラム[5]に含まれる「所属グループ番号」を1から2に書き換える。
【0163】
以上、通信システム10aにおける通信フレームについて説明した。
【0164】
図12は、
図10の通信システム10aの制御装置12の動作の一例を示すフローチャートである。
図12を参照して、制御装置12の動作の一例について説明する。なお、以下の説明では、
図6に示す動作の一例との相違点を中心に説明する。
【0165】
図12に示すように、制御装置12は、受信装置16から通信フレームを受信した場合(ステップS2でYes)、所属するグループが変わったスレーブがあるか否かを判定する(ステップS40)。たとえば、移動体24は、移動して第1グループを離脱して第2グループに属した場合、通信フレームのデータグラム[5]に含まれる「所属グループ番号」を1から2に書き換える。制御装置12は、通信フレームのデータグラム[5]に含まれる「所属グループ番号」が1から2に書き換えられている場合、移動体24が所属するグループが変わったと判定し、所属するグループが変わったスレーブがあると判定する。
【0166】
制御装置12は、所属するグループが変わったスレーブがある場合(ステップS40でYes)、当該スレーブのグループが変わったことを上位装置50に通知する(ステップS41)。たとえば、制御装置12は、当該スレーブのIDおよび当該スレーブが属するグループの番号を送信し、当該スレーブのグループが変わったことを上位装置50に通知する。なお、上位装置50は、当該通知を受信すると、当該スレーブのグループが変わった先の制御装置に通知する。
【0167】
制御装置12は、所属するグループが変わったスレーブがない場合(ステップS40でNo)、および当該スレーブのグループが変わったことを上位装置50に通知した場合(ステップS41)、処理を終了する。
【0168】
以上、制御装置12の動作の一例について説明した。
【0169】
図13は、
図10の通信システム10aの移動体18の制御部34の動作の一例を示すフローチャートである。
図14は、
図13の動作の続きの動作の一例を示すフローチャートである。
図13および
図14を参照して、制御部34の動作の一例について説明する。なお、以下の説明では、
図6~
図9に示す動作の一例との相違点を中心に説明する。
【0170】
図13に示すように、制御部34は、取得した「次に転送予定のスレーブのID」とデータグラム[A+N]における「スレーブのID」とが一致しているか否かを判定する(ステップS23)。
【0171】
制御部34は、取得した「次に転送予定のスレーブのID」とデータグラム[A+N]における「スレーブのID」とが一致している場合(ステップS23でYes)、
図14に示すように、データグラム[A+N]における「検出情報」を読み出す(ステップS50)。
【0172】
制御部34は、データグラム[A+N]における「検出情報」を読み出すと、データグラム[A+N]に係るスレーブが所属するグループが変わっているか否かを判定する(ステップS51)。
【0173】
制御部34は、データグラム[A+N]に係るスレーブが所属するグループが変わっている場合(ステップS51でYes)、データグラム[A]における「次に転送予定のスレーブのID」にデータグラム[A+N]の「次に転送予定のスレーブのID」を書き込む(ステップS52)。
【0174】
制御部34は、データグラム[A]における「次に転送予定のスレーブのID」にデータグラム[A+N]における「次に転送予定のスレーブのID」を書き込むと、
図14に示すように、データグラム[A]における「次に転送予定のスレーブのID」を再び取得する(ステップS21)。
【0175】
制御部34は、
図14に示すように、データグラム[A+N]に係るスレーブが所属するグループが変わっていない場合(ステップS51でNo)、
図8に示すように、M=1とし(ステップS26)、データグラム[A+N]における「次に転送予定のスレーブのID」とデータグラム[A+N+M]における「スレーブのID」とが一致しているか否かを判定する(ステップS27)。
【0176】
以上、移動体18の制御部34の動作の一例について説明した。
【0177】
上述したように、通信システム10aでは、複数の移動体18~26、58~66のそれぞれは、所定範囲Bおよび所定範囲Cに移動可能であり、制御装置12は、複数の移動体18~26、58~66のうち、所定範囲Bに位置している移動体を制御でき、制御装置52は、複数の移動体18~26、58~66のうち、所定範囲Cに位置している移動体を制御できる。
【0178】
以上、第2の実施の形態に係る通信システム10aについて説明した。
【0179】
第2の実施の形態において、複数の移動体18~26のそれぞれは、所定方向における送信装置14よりも受信装置16側かつ受信装置16よりも送信装置14側における所定範囲Bにおいて移動可能であり、通信システム10は、複数の移動体18~26のそれぞれが所定範囲Bから離脱または所定範囲Bに合流したか否かを認識するためのマーカ68をさらに備え、通信フレームは、通信フレームが送信される複数の移動体18~26の順番を示す順番情報を含み、一の移動体は、書換部40と、順番情報およびマーカ68の検出結果に基づいて、複数の移動体18~26のうちの一の移動体よりも後に通信フレームが送信されることが示されておりかつ所定範囲Bに位置している2つ以上の移動体のうち、当該順番が一の移動体に最も近い第1移動体および当該順番が第1移動体の次に一の移動体に近い第2移動体を抽出する抽出部38と、をさらに備え、決定部36は、抽出部38によって抽出された第1移動体および第2移動体が所定方向において一の移動体よりも物理的に一方側に位置しており、かつ所定方向において第1移動体の位置および第2移動体の位置が相互に異なる場合、第1移動体および第2移動体のうちの所定方向における位置が一の移動体に近い方を宛先移動体として決定し、書換部40は、決定部36による決定結果に基づいて順番情報を書き換え、送信部30は、書換部40によって書き換えられた順番情報を含む通信フレームを宛先移動体に送信する。
【0180】
これによれば、順番情報およびマーカ68の検出結果に基づいて所定範囲Bに存在する移動体を正しく認識でき、そのうえで第1移動体および第2移動体を容易に抽出できる。また、一の移動体は、所定方向における受信装置16側に電波を発して、第1移動体および第2移動体のうちの一方に通信フレームを送信できる。また、当該一方も、所定方向における受信装置16側に電波を発して、第1移動体および第2移動体のうちの他方に通信フレームを送信できる。このように、第1移動体および第2移動体を容易に抽出できるとともに、一の移動体および宛先移動体のそれぞれが、所定方向における受信装置16側に電波を発して通信フレームを送信できるので、無線通信をさらに効率よく行える。
【0181】
(他の実施の形態)
上述した実施の形態では、移動体18が、抽出部38を有して、通信フレームに含まれる情報から送信宛先として順序の近い2つの移動体を抽出する場合について説明したが、これに限定されない。たとえば、移動体18は、抽出部38を有していなくてもよい。この場合、たとえば、上述したように、移動体18の決定部36は、複数の移動体18~26の2つのみならず、すべてのうち、所定方向において移動体18よりも一方側(受信装置16側)に位置しかつ所定方向における位置が移動体18に最も近い移動体を、宛先移動体として決定してもよい。この場合、たとえば、移動体18の決定部36は、複数の移動体18~26の位置を示す位置情報を無線通信によって取得する。
【0182】
また、上述した実施の形態では、複数の移動体20、22、24、26のそれぞれが、移動体18と同様の構成である場合、つまり、複数の移動体18~26の全てが決定部36等を有している場合について説明したが、これに限定されない。たとえば、複数の移動体18~26の全てではなく、複数の移動体18~26のうちの少なくとも1つが、決定部36等を有していればよい。
【0183】
なお、本発明は、装置またはシステムとして実現できるだけでなく、その装置またはシステムを構成する処理手段をステップとする方法として実現したり、それらステップをコンピュータに実行させるプログラムとして実現したり、そのプログラムを記録したコンピュータ読み取り可能なCD-ROMなどの非一時的な記録媒体として実現したり、そのプログラムを示す情報、データまたは信号として実現したりすることもできる。そして、それらプログラム、情報、データおよび信号は、インターネット等の通信ネットワークを介して配信してもよい。
【0184】
以上、本発明の移動体等について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
【産業上の利用可能性】
【0185】
本発明は、無線通信を行う移動体等として利用され得る。
【符号の説明】
【0186】
10、10a 通信システム
12、52 制御装置
14、54 送信装置
16、56 受信装置
18、20、22、24、26、58、60、62、64、66 移動体
28 受信部
30 送信部
32 記憶部
34 制御部
36 決定部
38 抽出部
40 書換部
50 上位装置
68 マーカ