"移動体に設けられた複数の制御対象を分散制御する分散制御システムであって、前記移動体の制御のための演算処理を行う主制御ユニットと、前記主制御ユニットと制御データの通信を行い、前記制御データに基づいて一以上の制御対象の駆動を制御する複数の副制御ユニットと、を備え、前記主制御ユニットは、前記複数の副制御ユニットに対応する前記制御対象と当該制御対象に付与されたアドレスとの関係が記憶された第一の記憶部と、各前記制御対象に関する個別制御データを前記アドレスの順に並べた前記制御データを生成する制御データ生成部と、前記制御データをブロードキャスト方式で送信する制御データ送信部と、を備え、前記副制御ユニットは、当該副制御ユニットに対応する前記制御対象の前記アドレスが記憶された第二の記憶部と、前記第二の記憶部に記憶された前記アドレスに基づいて、前記制御データに含まれる当該副制御ユニットに対応する前記制御対象に関する前記個別制御データを取得する個別制御データ取得部と、取得された前記個別制御データに基づいて、前記制御対象の駆動を制御する制御対象制御部と、を備えることを特徴とする分散制御システム。前記主制御ユニットは、前記制御対象又は前記副制御ユニットの増減に応じて前記第一の記憶部に記憶された前記制御対象と前記アドレスとの関係を更新する第一のアドレス更新部と、更新された前記アドレスを前記副制御ユニットへ通知するアドレス通知部と、を備え、前記副制御ユニットは、通知された前記アドレスに基づいて前記第二の記憶部に記憶された前記アドレスを更新する第二のアドレス更新部を備えることを特徴とする請求項1に記載の分散制御システム。前記移動体は、自律移動可能なロボットであり、前記制御対象は、関節駆動用のモータを含むことを特徴とする請求項1又は請求項2に記載の分散制御システム。ロボット等の移動体では、仕様変更に伴い、制御対象としてのモータ、センサ等を追加したり取り外したりすることがある。しかし、特許文献1に記載されたシステムは、具体的な構成の開示がされておらず、制御対象又は副制御ユニットの増減に対応できるものではない。本発明は、前記事情に鑑みて創作されたものであり、移動体における制御対象又は副制御ユニットの増減に容易に対応可能な分散制御システムを提供することを課題とする。前記課題を解決するため、本発明は、移動体に設けられた複数の制御対象を分散制御する分散制御システムであって、前記移動体の制御のための演算処理を行う主制御ユニットと、前記主制御ユニットと制御データの通信を行い、前記制御データに基づいて一以上の制御対象の駆動を制御する複数の副制御ユニットと、を備え、前記主制御ユニットは、前記複数の副制御ユニットに対応する前記制御対象と当該制御対象に付与されたアドレスとの関係が記憶された第一の記憶部と、各前記制御対象に関する個別制御データを前記アドレスの順に並べた前記制御データを生成する制御データ生成部と、前記制御データをブロードキャスト方式で送信する制御データ送信部と、を備え、前記副制御ユニットは、当該副制御ユニットに対応する前記制御対象の前記アドレスが記憶された第二の記憶部と、前記第二の記憶部に記憶された前記アドレスに基づいて、前記制御データに含まれる当該副制御ユニットに対応する前記制御対象に関する前記個別制御データを取得する個別制御データ取得部と、取得された前記個別制御データに基づいて、前記制御対象の駆動を制御する制御対象制御部と、を備えることを特徴とする。かかる構成によると、主制御ユニットから副制御ユニットへブロードキャスト送信される制御データに含まれる個別制御データにアドレスが付与されており、副制御ユニットが自身に接続されている制御対象のアドレスに基づいて必要な個別制御データのみを取得するので、分散制御システムは、移動体における制御対象又は副制御ユニットの増減に容易に対応することができる。前記主制御ユニットは、前記制御対象又は前記副制御ユニットの増減に応じて前記第一の記憶部に記憶された前記制御対象と前記アドレスとの関係を更新する第一のアドレス更新部と、更新された前記アドレスを前記副制御ユニットへ通知するアドレス通知部と、を備え、前記副制御ユニットは、通知された前記アドレスに基づいて前記第二の記憶部に記憶された前記アドレスを更新する第二のアドレス更新部を備えることが望ましい。また、前記移動体は、自律移動可能なロボットであり、前記制御対象は、関節駆動用のモータを含む構成であってもよい。本発明によれば、移動体における制御対象又は副制御ユニットの増減に容易に対応することができる。本発明の実施形態について、図面を参照して詳細に説明する。説明において、同一の要素には同一の番号を付し、重複する説明は省略する。ロボットRの構成まず、本発明の実施形態に係るロボットRについて説明する。以下の説明において、ロボットRの前後方向にX軸、左右方向にY軸、上下方向にZ軸をとる図1参照。本発明の実施形態に係るロボットRは、自律移動型の2足移動ロボットである。このロボットRは、外部のロボット管理装置から送信された実行命令信号に基づき、タスクを実行するものである。図1は、ロボットの外観を示す模式図である。図1に示すように、ロボットRは、人間と同じように2本の脚部R11本のみ図示により起立、移動歩行、走行などし、上体部R2、2本の腕部R31本のみ図示及び頭部R4を備え、自律して移動する。また、ロボットRは、これら脚部R1、上体部R2、腕部R3及び頭部R4の動作を制御する制御装置搭載部R5を背負う形で背中上体部R2の後部に備えている。ロボットRの駆動構造続いて、ロボットRの駆動構造について説明する。図2は、図1のロボットの駆動構造を模式的に示す斜視図である。なお、図2における関節部は、当該関節部を駆動する電動モータにより示されている。脚部R1図2に示すように、左右それぞれの脚部R1は、6個の関節部11RL~16RLを備えている。左右12個の関節は、股部脚部R1と上体部R2との連結部分の脚部回旋用Z軸まわりの股関節部11R,11L右側をR、左側をLとする。また、R,Lを付さない場合もある。以下同じ。、股部のピッチ軸Y軸まわりの股関節部12R,12L、股部のロール軸X軸まわりの股関節部13R,13L、膝部のピッチ軸Y軸まわりの膝関節部14R,14L、足首のピッチ軸Y軸まわりの足首関節部15R,15L、及び、足首のロール軸X軸まわりの足首関節部16R,16Lから構成されている。そして、脚部R1の下には足部17R,17Lが取り付けられている。すなわち、脚部R1は、股関節部11RL,12RL,13RL、膝関節部14RL及び足首関節部15RL,16RLを備えている。股関節部11RL~13RLと膝関節部14RLとは大腿リンク51R,51Lで、膝関節部14RLと足首関節部15RL,16RLとは下腿リンク52R,52Lで連結されている。上体部R2図2に示すように、上体部R2は、ロボットRの基体部分であり、脚部R1、腕部R3及び頭部R4と連結されている。すなわち、上体部R2上体リンク53は、股関節部11RL~13RLを介して脚部R1と連結されている。また、上体部R2は、後記する肩関節部31RL~33RLを介して腕部R3と連結されている。また、上体部R2は、後記する首関節部41,42を介して頭部R4と連結されている。また、上体部R2は、上体回旋用Z軸まわりの関節部21を備えている。腕部R3図2に示すように、左右それぞれの腕部R3は、7個の関節部31RL~37RLを備えている。左右14個の関節部は、肩部腕部R3と上体部R2との連結部分のピッチ軸Y軸まわりの肩関節部31R,31L、肩部のロール軸X軸まわりの肩関節部32R,32L、腕部回旋用Z軸まわりの肩関節部33R,33L、肘部のピッチ軸Y軸まわりの肘関節部34R,34L、手首回旋用Z軸まわりの腕関節部35R,35L、手首のピッチ軸Y軸まわりの手首関節部36R,36L、及び手首のロール軸X軸まわりの手首関節部37R,37Lから構成されている。そして、腕部R3の先端には把持部ハンド71R,71Lが取り付けられている。すなわち、腕部R3は、肩関節部31RL,32RL,33RL、肘関節部34RL、腕関節部35RL及び手首関節部36RL,37RLを備えている。肩関節部31RL~33RLとは肘関節部34RLとは上腕リンク54RLで、肘関節部34RLと手首関節部36RL,37RLとは前腕リンク55RLで連結されている。頭部R4図2に示すように、頭部R4は、首部頭部R4と上体部R2との連結部分のY軸まわりの首関節部41と、首部のZ軸まわりの首関節部42と、を備えている。首関節部41は頭部R4のチルト角を設定するためのものであり、首関節部42は頭部R4のパンを設定するためのものである。このような構成により、左右の脚部R1は合計12の自由度を与えられ、移動中に12個の関節部11RL~16RLを適宜な角度で駆動することで、脚部R1に所望の動きを与えることができ、ロボットRが任意に3次元空間を移動することができる。また、左右の腕部R3は合計14の自由度を与えられ、14個の関節部31RL~37RLを適宜な角度で駆動することで、ロボットRが所望の作業を行うことができる。また、足首関節部15RL,16RLと足部17RLとの間には、公知の6軸力センサ61RLが設けられている。6軸力センサ61RLは、床面からロボットRに作用する床反力の3方向成分Fx,Fy,Fzと、モーメントの3方向成分Mx,My,Mzと、を検出する。また、手首関節部36RL,37RLと把持部71RLとの間には、公知の6軸力センサ62RLが設けられている。6軸力センサ62RLは、ロボットRの把持部71RLに作用する反力の3方向成分Fx,Fy,Fzと、モーメントの3方向成分Mx,My,Mzと、を検出する。また、上体部R2には、傾斜センサ63が設けられている。傾斜センサ63は、上体部R2の重力軸Z軸に対する傾きと、その角速度と、を検出する。また、各関節部の電動モータは、その出力を減速増力する減速機図示せずを介して前記した大腿リンク51RL、下腿リンク52RLなどを相対変位させる。これら各関節部の角度は、関節角度検出手段例えば、ロータリエンコーダによって検出される。制御装置搭載部R5は、後記する自律移動制御部150、把持部制御部160、無線通信部170、主制御部200、バッテリ図示せずなどを収納している。各センサ61~63などの検出データは、制御装置搭載部R5内の各制御部に送られる。また、各電動モータは、各制御部からの駆動指示信号により駆動される。図3は、図1のロボットを示すブロック図である。図3に示すように、ロボットRは、脚部R1、腕部R3及び頭部R4に加えて、カメラC,C、スピーカS、マイクMC,MC、画像処理部100、音声処理部110、対象検知部120、自律移動制御部150、把持部制御部160、無線通信部170、主制御部200及び記憶部300を備えている。また、ロボットRは、ジャイロセンサSR1及びGPS受信器SR2を備えている。ジャイロセンサSR1は、ロボットRの向きに関するデータ向きデータを検出する。また、GPS受信器SR2は、ロボットRの位置に関するデータ位置データを検出する。ジャイロセンサSR1及びGPS受信器SR2が検出したデータは、主制御部200に出力され、ロボットRの行動を決定するために利用されると共に、主制御部200から無線通信部170を介してロボット管理装置3に送信される。[カメラ]カメラC,Cは、映像をデジタルデータとして取り込むことができるものであり、例えばカラーCCDカメラが使用される。カメラC,Cは、左右に平行に並んで配置され、撮影した画像は画像処理部100に出力される。このカメラC,Cと、スピーカS及びマイクMC,MCは、いずれも頭部R4の内部に配設される。[画像処理部]画像処理部100は、カメラC,Cが撮影した画像を処理して、撮影された画像からロボットRの周囲の状況を把握するため、周囲の障害物や人物の認識を行う部分である。この画像処理部100は、ステレオ処理部101、移動体抽出部102及び顔認識部103を備えている。ステレオ処理部101は、左右のカメラC,Cが撮影した2枚の画像の一方を基準としてパターンマッチングを行い、左右の画像中の対応する各画素の視差を計算して視差画像を生成し、生成した視差画像及び元の画像を移動体抽出部102に出力する。なお、この視差は、ロボットRから撮影された物体までの距離を表すものである。移動体抽出部102は、ステレオ処理部101から出力されたデータに基づき、撮影した画像中の移動体を抽出するものである。移動する物体移動体を抽出するのは、移動する物体は人物であると推定して、人物の認識をするためである。移動体の抽出をするために、移動体抽出部102は、過去の数フレームコマの画像を記憶しており、最も新しいフレーム画像と、過去のフレーム画像を比較して、パターンマッチングを行い、各画素の移動量を計算し、移動量画像を生成する。そして、視差画像と、移動量画像とから、カメラC,Cから所定の距離範囲内で、移動量の多い画素がある場合に、その位置に人物がいると推定し、その所定距離範囲のみの視差画像として、移動体を抽出し、顔認識部103へ移動体の画像を出力する。また、移動体抽出部102は、抽出した移動体の高さ、すなわち身長を算出し、顔認識部103へ出力する。顔認識部103は、抽出した移動体から肌色の部分を抽出して、その大きさ、形状などから顔の位置を認識する。なお、同様にして、肌色の領域と、大きさ、形状などから手の位置も認識される。認識された顔の位置は、ロボットRが移動するときの情報として、また、その人とのコミュニケーションを取るため、主制御部200に出力されると共に、無線通信部170に出力されて、基地局1を介して、ロボット管理装置3に送信される。[スピーカ]スピーカSは、後記する音声合成部111により生成された音声データに基づき、音声を出力する。[マイク]マイクMC,MCは、ロボットRの周囲の音を集音するものである。集音された音は、後記する音声認識部112及び音源定位部113に出力される。[音声処理部]音声処理部110は、音声合成部111、音声認識部112及び音源定位部113を備えている。音声合成部111は、主制御部200が決定し、出力してきた発話行動の指令に基づき、文字情報から音声データを生成し、スピーカSに音声を出力する部分である。音声データの生成には、予め記憶している文字情報と音声データとの対応関係を利用する。音声認識部112は、マイクMC,MCから音声データが入力され、予め記憶している音声データと文字情報との対応関係に基づき、音声データから文字情報を生成し、主制御部200に出力するものである。音源定位部113は、マイクMC,MC間の音圧差及び音の到達時間差に基づいて、音源の位置ロボットRからの距離及び方向を特定する。[対象検知部]対象検知部120は、ロボットRの周囲に検知用タグを備える検知対象例えば、ヒトが存在するか否かを検知すると共に、検知対象の存在が検知された場合、当該検知対象の位置を特定するものである。[自律移動制御部]自律移動制御部150は、頭部制御部151、腕部制御部152及び脚部制御部153を備えている。頭部制御部151は、主制御部200の指示に従い頭部R4を駆動し、腕部制御部152は、主制御部200の指示に従い腕部R3を駆動し、脚部制御部153は、主制御部200の指示に従い脚部R1を駆動する。[把持部制御部]把持部制御部160は、主制御部200の指示に従い、ロボットハンドである把持部71を駆動する。[無線通信部]無線通信部170は、ロボット管理装置3とデータの送受信を行う通信装置である。無線通信部170は、公衆回線通信装置171および無線通信装置172を備えている。公衆回線通信装置171は、携帯電話回線やPHS回線などの公衆回線を利用した無線通信手段である。一方、無線通信装置172は、IEEE80211b規格に準拠するワイヤレスLANなどの、近距離無線通信による無線通信手段である。無線通信部170は、ロボット管理装置3からの接続要求に従い、公衆回線通信装置171または無線通信装置172を選択してロボット管理装置3とデータ通信を行う。[主制御部及び記憶部]記憶部300には、ロボットRが移動するエリアの地形壁位置、机位置などに関するデータ地図データ、ロボットRが発話するためのデータ発話データ等が記憶されている。主制御部200は、ロボット管理装置3によって送信されたタスクを取得し、取得されたタスクと、ジャイロセンサSR1及びGPS受信器SR2によって検出されたデータと、に基づいて、ロボットRの行動を決定し、決定された内容を自律移動制御部150及び把持部制御部160へ出力する。<分散制御システムの構成>図4に示すように、本発明の実施形態に係る分散制御システム400は、移動体であるロボットRに設けられた複数の制御対象を分散制御するシステムであって、一の主制御ユニット410と、複数の副制御ユニット420420A~420Nと、制御対象430であるモータ430A-1,430A-2,430B-1,430-B2,430-C1,430C-2、センサ430D-1,430D-2、...及びデバイス430N-1,430N-2と、を備える。主制御ユニット410は、図3における自律移動制御部150及び把持部制御部160に相当し、ロボットRの制御のための演算処理を行って全制御対象430に関する個別制御データを含む制御データを生成し、生成された制御データを副制御ユニット420へ送信する。副制御ユニット420は、主制御ユニット410と制御データの通信を行い、主制御ユニット410から送信された制御データを受信し、受信した制御データに基づいて、当該副制御ユニット420に通信可能に接続された一以上の制御対象430の駆動を制御する。副制御ユニット420Aは、例えば図3における頭部R4に設けられたモータドライバとしてのECUElectronicControlUnitであり、頭部R4に設けられた首関節部41,42用のモータの駆動を制御する。以下、説明の簡略化のため、副制御ユニット420Aには二つのモータ430A-1,430A-2が通信可能に接続されているものとする。副制御ユニット420Bは、例えば図3における右側の腕部R3に設けられたモータドライバとしてのECUであり、腕部R3に設けられた肩関節部31R,32R,33R用のモータの駆動を制御する。以下、説明の簡略化のため、副制御ユニット420Bには二つのモータ430B-1,430B-2が通信可能に接続されているものとする。副制御ユニット420Cは、例えば図3における右側の腕部R3に設けられたモータドライバとしてのECUであり、腕部R3に設けられた肘関節部34R及び腕関節部35R用のモータの駆動を制御する。以下、説明の簡略化のため、副制御ユニット420Cには二つのモータ430C-1,430C-2が通信可能に接続されているものとする。副制御ユニット420Dは、センサ用ECUであり、ロボットRのセンサ例えば、右側の腕部R3に設けられた6軸力センサ等の駆動を制御する。以下、説明の簡略化のため、副制御ユニット420Dには二つのセンサ430D-1,430D-2が通信可能に接続されているものとする。かかる副制御ユニット420Dは、個別制御データに基づいて、センサ430D-1,430D-2のゲイン値、サンプリング周期等を変更することができる。副制御ユニット420Nは、インターフェース用ECUであり、ロボットRに取り付けられたデバイス例えば、LED、ブザー等の駆動を制御する。以下、説明の簡略化のため、副制御ユニット420Nには二つのデバイス430N-1,430N-2が通信可能に接続されているものとする。続いて、図5~図7を参照して、主制御ユニット410及び副制御ユニット420の詳細構成について説明する。図5は、主制御ユニット及び副制御ユニットの構成を示すブロック図であり、図6aは、変更前の制御データ構造体を示す図、図6bは、変更後の制御データ構造体を示す図であり、図7は、制御対象の増減について説明するための図であり、変更前後の制御データ構造体及びアドレスと、各副制御ユニットにおける変更前後の先頭の制御対象のアドレス及び対象数と、を示す図である。<主制御ユニットの構成>図5に示すように、主制御ユニット410は、機能部として、第一の記憶部411と、制御データ生成部412と、タイミング決定部413と、制御データ送信部414と、第一のアドレス更新部415と、アドレス通知部416と、制御対象情報取得部417と、を備える。第一の記憶部411には、複数の制御対象430と当該制御対象430に付与されたアドレスオフセットアドレスともいうとの関係が記憶されている。より詳細には、第一の記憶部411には、制御データ構造体と、当該制御データ構造体に付与されたアドレスと、が記憶されている。ここで、制御データ構造体は、図6aに示すように、制御データ全体において、どのデータがどの制御対象の個別制御データであるかを示すものである。また、アドレスは、0から始まる整数であって、例えば、図7の変更前に示すように、制御データのうち、1番目のモータ430A-1の個別制御データが含まれる部分にアドレス0が付与され、2番目のモータ430A-2の個別制御データが含まれる部分にアドレス1が付与され、3番目のモータ430B-1の個別制御データが含まれる部分にアドレス2が付与され、...、N番目のデバイス430N-2の個別制御データが含まれる部分にアドレス2N1が付与されている。かかる第一の記憶部411は、主制御ユニット410の起動時のみ機能する。制御データ生成部412は、後記する指令値生成部201から送信された指令値を受信し、受信した指令値個別制御データを、第一の記憶部411に記憶された、制御対象430と当該制御対象430に付与されたアドレスとの関係に基づいて並べ替えた制御データを生成し、制御データ送信部414へ出力する。ここで、主制御ユニット410の制御対象情報取得部417は、後記する各副制御ユニット420の制御対象送信部425によって送信された各制御対象情報をバラバラの順に取得して主制御部200の指令値生成部201へ送信する。指令値生成部201は、生成された各指令値をバラバラの順で主制御ユニット410の制御データ生成部412へ送信するため、制御データ生成部412は、各指令値をバラバラの順で取得することになる。したがって、制御データ生成部412は、制御データを生成する際に、バラバラの順で取得された各指令値個別制御データを、第一の記憶部411に記憶された制御データ構造体の順に並べ替える。タイミング決定部413は、移動体であるロボットRの制御対象430の全体の制御タイミング全ての制御対象の同期基準を決定し、制御データ送信部414へ出力する。かかる制御タイミングの決定に関しては、公知の技術を採用可能であるため、詳細な説明を省略する。制御データ送信部414は、制御データ生成部412によって生成された制御データ、及び、タイミング決定部413によって決定された送信タイミングを取得し、取得された制御データを取得された送信タイミングで、全ての副制御ユニット420に対してブロードキャスト送信する。第一のアドレス更新部415は、制御対象430の増減が行われた場合に、外部端末500から送信された増減通知を受信し、受信した増減通知に基づいて第一の記憶部411に記憶された制御対象430とアドレスとの関係を更新する。かかる増減通知は、どの副制御ユニット420の制御対象430が増減したかを含むデータである。なお、外部端末500は、図3のロボット管理装置3であって、基地局1、無線通信部170及び主制御部200を介して主制御ユニットの第一のアドレス更新部415と通信可能に接続される構成であってもよい。より詳細には、第一のアドレス更新部415は、増減通知に基づいて制御データ構造体を生成し直すとともに、複数の制御対象430のアドレスを算出し直し、新たな制御データ構造体及びアドレスを第一の記憶部411に記憶させる。例えば、副制御ユニット420Bに新たな制御対象モータ430B-3が接続された場合には、第一のアドレス更新部415は、第一の記憶部411に記憶された変更前の制御データ構造体図6a参照を読み出し、これに制御対象430B-3の個別制御データの場所を追加した変更後の制御データ構造体図6b参照を生成し、変更後の制御データ構造体にアドレスを付与し直して、変更度の制御データ構造体及びアドレスを第一の記憶部411に記憶させる。また、第一のアドレス更新部415は、第一の記憶部411に記憶された制御対象430とアドレスとの関係を更新した場合に、更新されたアドレスを含む更新通知をアドレス通知部416へ出力する。本実施形態において、更新通知は、副制御ユニット420ごとに生成されており、当該副制御ユニット420の接続された先頭の制御対象430のアドレスと対象数とを含むデータである。なお、第一のアドレス更新部415は、第一の記憶部411に記憶された制御対象430とアドレスとの関係を書き換えた場合には、第一の記憶部411を再起動させることによって前記した関係を更新する。アドレス通知部416は、第一のアドレス更新部415から出力された更新通知を取得し、取得された更新通知を各副制御ユニット420へ送信する。制御対象情報取得部417は、後記する副制御ユニット420の制御対象情報送信部425によって送信された制御対象情報を取得し、主制御部200の指令値生成部201へ転送する。なお、主制御部200の指令値生成部201は、制御対象情報取得部417によって転送された制御対象情報を取得し、ロボットRが実行すべきタスクの内容、及び、取得された制御対象情報に基づいて、フィードバック制御等の手法を用いて各制御対象の制御量を生成し、指令値として主制御ユニット410の制御データ生成部412へ送信する。<副制御ユニット420の構成>副制御ユニット420は、モータドライバとしてのECU、センサ用ECU、インターフェース用ECU等といった、個別制御データに基づいて当該副制御ユニット420に接続された制御対象430の駆動を直接制御するものであって、機能部として、第二の記憶部421と、個別制御データ取得部422と、制御対象制御部423と、第二のアドレス更新部424と、制御対象情報送信部425と、を備える。第二の記憶部421には、当該副制御ユニット420に対応する制御対象430のアドレスが記憶されている。本実施形態では、図7の変更前に記載されているように、副制御ユニット420の先頭の制御対象430のアドレスと当該副制御ユニット420に接続された制御対象430の数対象数とが関連付けて記憶されている。例えば、副制御ユニット420Aの第二の記憶部421には、先頭の制御対象430のアドレス0と対象数2とが関連付けて記憶されており、副制御ユニット420Bの第二の記憶部421には、先頭の制御対象430のアドレス2と対象数2とが関連付けて記憶されている。なお、図7では、制御データ構造体のうち、各副制御ユニット420A,B,C,...,Nの変更前及び変更後の対応制御対象430の個別制御データが格納される部分が太線枠で示されている。個別制御データ取得部422は、制御データ送信部414によって送信された制御データを受信し、第二の記憶部421に記憶されたアドレス及び対象数を参照することによって、制御データの中から該当する個別制御データを取得し、残りの個別制御データを破棄する。取得された個別制御データは、制御対象制御部423へ出力される。例えば、図7に示す副制御ユニット420Aの個別制御データ422は、第二の記憶部421に記憶されたアドレスが0、対象数が2であるため、制御データのうち、1,2番目の個別制御データを取得する。制御対象制御部423は、個別制御データ取得部422から出力された個別制御データを取得し、取得された個別制御データに基づいて、副制御ユニット420に接続された制御対象430の駆動を制御する。個別制御データは、前記した指令値等であって、例えば、制御対象430がモータである場合には、制御対象制御部423は、個別制御データであるモータの目標回転数と実際の回転数が一致するように、当該モータの駆動を制御する。第二のアドレス更新部424は、アドレス通知部416から送信された更新通知を受信し、受信した更新通知に基づいて、第二の記憶部421に記憶されたアドレス及び対象数を更新する。なお、第二のアドレス更新部424は、第二の記憶部421に記憶されたアドレス及び対象数を書き換えた場合には、第二の記憶部421を再起動させることによって前記したアドレス及び対象数を更新する。制御対象情報送信部425は、制御対象430であるモータ、センサ等から出力された現在値である制御対象情報を取得し、取得された制御対象情報を主制御ユニット410の制御対象情報取得部417へ送信する。<分散制御システムの動作例>続いて、分散制御システム400の動作例について、図8を参照し、副制御ユニット420Bにモータ430B-3が追加接続された場合を例にとって説明する適宜図4~図7参照。<主制御ユニットの動作例>まず、作業者がロボットRの副制御ユニット420Bに新たなモータ430B-3を接続し、外部端末500にその旨を入力する。主制御ユニット410の第一のアドレス更新部415が外部端末500によって送信された増減指示を受信するとステップS11でYes、第一のアドレス更新部415は、増減指示に基づいて新たな制御データ構造体を生成するとともに新たなアドレスを算出しステップS12、第一の記憶部411に記憶させ、第一の記憶部411を再起動させる。これにより、第一の記憶部411に記憶された制御データ構造体及びアドレスが更新される。なお、ステップS11でNoの場合は、本フローはステップS14に移行する。ステップS12に続いて、第一のアドレス更新部415は、第一の記憶部411を参照して副制御ユニット420ごとの更新通知を生成し、第一のアドレス通知部416へ出力する。続いて、アドレス通知部416は、更新通知を各副制御ユニット420へ送信するステップS13。続いて、制御データ生成部412が制御データを生成して制御データ送信部414へ出力し、制御データ送信部414は、送信タイミングに応じて制御データを全副制御ユニット420に対してブロードキャスト送信しステップS14、その後、本フローはステップS11に移行する。<副制御ユニットの動作例>一方、副制御ユニット420の第二のアドレス更新部424がアドレス通知部416から送信された更新通知を受信するとステップS21でYes、第二のアドレス更新部424は、更新通知に含まれる先頭のアドレス及び対象数を第二の記憶部421に記憶させ、第二の記憶部421を再起動させることによって、第二の記憶部421における先頭のアドレス及び対象数を更新するステップS22。ここで、図7に示すように、副制御ユニット420Bの第二の記憶部421では、対象数が2から3に更新され、副制御ユニット420Cの第二の記憶部421では、先頭のアドレスが4から5に更新され、それ以降の副制御ユニット420の第二の記憶部421でも、先頭のアドレスが1つ大きい数に更新される。なお、ステップS21でNoの場合は、本フローはステップS23に移行する。続いて、個別制御データ取得部422が制御データ送信部414によって送信された制御データを受信するとステップS23でYes、個別制御データ取得部422は、第二の記憶部421の記憶内容を参照して当該副制御ユニット420に接続された制御対象430の個別制御データのみを取得しステップS24、制御対象制御部423へ出力する。例えば、図7に示すように、変更前の副制御ユニット420Bでは、先頭のアドレスが2、対象数が2であるので、個別制御データ取得部422は、制御データに含まれる3,4番目の個別制御データを取得するのに対し、変更後の副制御ユニット420Bでは、先頭のアドレスが2、対象数が3であるので、個別制御データ取得部422は、制御データに含まれる3~5番目の個別制御データを取得する。なお、ステップS23でNoの場合は、本フローはステップS21に移行する。続いて、制御対象制御部423は、取得された個別制御データに基づいて、制御対象430の駆動を制御するステップS25、ステップS25の実行後、本フローはステップS21に移行する。従来の分散制御システムにおいては、主制御ユニットが個別制御データを制御対象に付与されたアドレスとの関係に基づいて並べ替えた制御データを生成して副制御ユニットへブロードキャスト送信し、副制御ユニットがアドレスに基づいて必要な個別制御データのみを取得するという概念は無く、全ての主制御ユニット及び副制御ユニットが同じ制御データ構造体を有していた全ての主制御ユニット及び副制御ユニットにおいて、同じ制御データ構造体がプログラム上で宣言されていた。そのため、従来の分散制御システムにおいて制御対象又は副制御ユニットの増減を行う場合は、全ての主制御ユニット及び副制御ユニットにおいて制御データ構造体を書き換える必要があった。これに対して、本発明の実施形態に係る分散制御システム400は、主制御ユニット410から副制御ユニット420へブロードキャスト送信される制御データから副制御ユニット420が自身に接続されている制御対象430の先頭のアドレス及び対象数に基づいて必要な個別制御データのみを取得するので、移動体であるロボットRにおける制御対象430又は副制御ユニット420の増減に容易に対応することができる。なお、本システム400を起動するときにも、アドレス通知部416が制御対象430のアドレスを第一の記憶部411から読み出して副制御ユニット420の第二のアドレス更新部424へ通知され、第二のアドレス更新部424が第二の記憶部421に記憶されたアドレスを更新する。以上、本発明の実施形態について図面を参照して説明したが、本発明は前記実施形態に限定されず、本発明の要旨を逸脱しない範囲で適宜変更可能である。例えば、第二の記憶部421には、当該副制御ユニット420に接続された全ての制御対象430のアドレスが記憶されており、第一のアドレス更新部415は、更新通知として、副制御ユニット420に接続された全ての制御対象430のアドレスを含むデータを生成する構成であってもよい。また、分散制御システム400の動作例として、制御対象430が一つ追加された場合について説明したが、分散制御システム400は、制御対象430が二つ以上追加された場合、制御対象430が一つ以上削減された場合、副制御ユニット420及び当該副制御ユニット420に接続された一以上の制御対象430が一つ以上追加又は削減された場合等においても、同様に動作することによって、制御対象430又は副制御ユニット420の増減に容易に対応することができる。"