(57)【要約】  ユーザが視覚的な操作によってプログラムを作製すること。  ペアリング部１０１は、ユーザ端末１とベーシックコア２とのペアリングを行う。プログラム作製部１０２は、ユーザのタッチ操作に基づいてプログラムの作製を行う。Ｈパーツ供給部１２１はＨパーツを、Ｓパーツ供給部１２２はＳパーツを夫々プログラム作製部１０２に供給する。パーツ結合部１２３は、ユーザのタッチ操作に応じて、各種Ｈパーツ及び各種Ｓパーツを結合する。プログラム実行部１０３は、プログラム格納部３００から実行すべきプログラムを抽出し、そのプログラムを実行する。通信制御部１０５は、プログラム実行部１０３で実行されたプログラムの実行結果を第二近距離無線通信部３１を介してベーシックコア２に送信させる。
2018155483.tif 000002
【特許請求の範囲】
【請求項１】
制御装置と、前記制御装置と近距離無線通信でペアリングする機能と他のハードウェアデバイスと通信をする機能を有する１以上の第１ハードウェアデバイスと、前記第１ハードウェアデバイスと通信をする機能と所定の機能を発揮する機能を有する１以上の第２ハードウェアデバイスとを含む情報処理システムにおける、前記制御装置であって、
前記第１ハードウェアデバイスと前記第２ハードウェアデバイスとの組を複数組み合わせて所定の一連の処理を実行させる制御を実行する制御実行手段と、
所定方式の近距離無線通信により、前記制御実行手段の制御対象となる前記第１ハードウェアデバイスと前記制御装置とのペアリングを実行するペアリング実行手段と、
前記制御実行手段の制御対象となる前記第１ハードウェアデバイスと前記制御装置とのペアリングの状態を提示する提示手段と、
を備える制御装置。
【請求項２】
前記制御実行手段は、
前記所定の一連の処理を前記制御装置内で仮想的に実行するシミュレーション手段と、
制御対象となる前記第１ハードウェアデバイスと通信しながら、前記所定の一連の処理を実際に実行する実行手段と、
を含む
請求項１に記載の制御装置。
【請求項３】
前記実行手段は、前記近距離無線通信とは異なる通信方式で通信しながら、前記所定の一連の処理を実際に実行する
請求項２に記載の制御装置。
【請求項４】
前記所定の一連の処理を実行させるため、前記第１ハードウェアデバイスと前記第２ハードウェアデバイスとの組を示すハードウェア部品と、所定の機能を前記制御装置内で発揮させるソフトウェア部品とを含む複数の部品の中から、２以上の部品を組み合わせる操作を受付ける操作受付部と、
前記２以上の部品の組み合わせを確定する確定部と、
をさらに備え、
前記制御実行手段は、前記確定部により確定された前記２以上の部品の組み合わせに基づいて、前記所定の一連の処理を実行させる制御を実行する、
請求項１乃至３のうち何れか１項に記載の制御装置。
【請求項５】
前記複数の部品は、アナログ信号を入力又は出力する部品を１以上含む、
請求項４に記載の制御装置。
【請求項６】
制御装置と、前記制御装置と近距離無線通信でペアリングする機能と他のハードウェアデバイスと通信をする機能を有する１以上の第１ハードウェアデバイスと、前記第１ハードウェアデバイスと通信をする機能と所定の機能を発揮する機能を有する１以上の第２ハードウェアデバイスとを含む情報処理システムにおける、前記制御装置が実行する制御方法であって、
前記第１ハードウェアデバイスと前記第２ハードウェアデバイスとの組を複数組み合わせて所定の一連の処理を実行させる制御を実行する制御実行ステップと、
所定方式の近距離無線通信により、前記制御実行ステップにおける制御対象となる前記第１ハードウェアデバイスと前記制御装置とのペアリングを実行するペアリング実行ステップと、
前記制御実行ステップにおける制御対象となる前記第１ハードウェアデバイスと前記制御装置とのペアリングの状態を提示する提示ステップと、
を含む制御方法。
【請求項７】
制御装置と、前記制御装置と近距離無線通信でペアリングする機能と他のハードウェアデバイスと通信をする機能を有する１以上の第１ハードウェアデバイスと、前記第１ハードウェアデバイスと通信をする機能と所定の機能を発揮する機能を有する１以上の第２ハードウェアデバイスとを含む情報処理システムにおける、前記制御装置を制御するコンピュータに、
前記第１ハードウェアデバイスと前記第２ハードウェアデバイスとの組を複数組み合わせて所定の一連の処理を実行させる制御を実行する制御実行ステップと、
所定方式の近距離無線通信により、前記制御実行ステップにおける制御対象となる前記第１ハードウェアデバイスと前記制御装置とのペアリングを実行するペアリング実行ステップと、
前記制御実行ステップにおける制御対象となる前記第１ハードウェアデバイスと前記制御装置とのペアリングの状態を提示する提示ステップと、
を含む制御処理を実行させるプログラム。
【請求項８】
制御装置と、前記制御装置と近距離無線通信でペアリングする機能と他のハードウェアデバイスと通信をする機能を有する１以上の第１ハードウェアデバイスと、前記第１ハードウェアデバイスと通信をする機能と所定の機能を発揮する機能を有する１以上の第２ハードウェアデバイスとを含む情報処理システムにおける、前記第１ハードウェアデバイスとして機能する情報処理装置であって、
前記１以上の第２ハードウェアデバイスのうち組をつくるものとの間での通信を制御する通信制御手段と、
前記制御装置において、前記第１ハードウェアデバイスと前記第２ハードウェアデバイスとの組を複数組み合わせて所定の一連の処理を実行させる制御が実行される場合に、当該情報処理装置が制御対象となるとき、所定方式の近距離無線通信により、当該情報処理装置と前記制御装置とのペアリングを実行するペアリング実行手段と、
を備える情報処理装置。
【請求項９】
制御装置と、前記制御装置と近距離無線通信でペアリングする機能と他のハードウェアデバイスと通信をする機能を有する１以上の第１ハードウェアデバイスと、前記第１ハードウェアデバイスと通信をする機能と所定の機能を発揮する機能を有する１以上の第２ハードウェアデバイスとを含む情報処理システムにおける、前記第１ハードウェアデバイスが実行する情報処理方法であって、
前記１以上の第２ハードウェアデバイスのうち組をつくるものとの間での通信を制御する通信制御ステップと、
前記制御装置において、前記第１ハードウェアデバイスと前記第２ハードウェアデバイスとの組を複数組み合わせて所定の一連の処理を実行させる制御が実行される場合に、当該情報処理装置が制御対象となるとき、所定方式の近距離無線通信により、当該情報処理装置と前記制御装置とのペアリングを実行するペアリング実行ステップと、
を含む情報処理方法。
【請求項１０】
制御装置と、前記制御装置と近距離無線通信でペアリングする機能と他のハードウェアデバイスと通信をする機能を有する１以上の第１ハードウェアデバイスと、前記第１ハードウェアデバイスと通信をする機能と所定の機能を発揮する機能を有する１以上の第２ハードウェアデバイスとを含む情報処理システムにおける、前記第１ハードウェアデバイスを制御するコンピュータに、
前記１以上の第２ハードウェアデバイスのうち組をつくるものとの間での通信を制御する通信制御ステップと、
前記制御装置において、前記第１ハードウェアデバイスと前記第２ハードウェアデバイスとの組を複数組み合わせて所定の一連の処理を実行させる制御が実行される場合に、当該情報処理装置が制御対象となるとき、所定方式の近距離無線通信により、当該情報処理装置と前記制御装置とのペアリングを実行するペアリング実行ステップと、
を含む制御処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、制御方法、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来から、子供の教育を目的とした組み立て式玩具の提供は、広く普及しており、関連する技術は数多く提案されている（例えば、特許文献１）。
例えば、特許文献１に記載された技術によれば、簡単な配線やプログラミングによって組み立て式玩具を構築することができる組み立てブロックの提供がなされている。
この特許文献１に記載された技術によれば、年齢の低いユーザであっても、複雑な作業や操作を行うことなく、組み立て式玩具を構築することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０−１０８９８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述の特許文献１の技術では、各組み立てブロックは、既存のプログラムによって単一に制御されているに過ぎず、組み立て式玩具の動作や制御の自由度には、限界があった。
即ち、例えば、上述の特許文献１の技術のみでは、各組み立てブロックの夫々の機能を組み合わせて、プログラムを作製するような処理を実行することはできなかった。
換言すれば、上述の特許文献１の技術のみでは、各組み立てブロックの夫々の機能を組み合わせるといった高度な処理を実行させるためには、別途、複雑なプログラムを作成する必要があった。【０００５】
本発明は、このような状況に鑑みてなされたものであり、ユーザが視覚的な操作よって、より容易に複雑なプログラムを作製することが出来る技術を提供する。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の一態様の制御装置は、
制御装置と、前記制御装置と近距離無線通信でペアリングする機能と他のハードウェアデバイスと通信をする機能を有する１以上の第１ハードウェアデバイスと、前記第１ハードウェアデバイスと通信をする機能と所定の機能を発揮する機能を有する１以上の第２ハードウェアデバイスとを含む情報処理システムにおける、前記制御装置であって、
前記第１ハードウェアデバイスと前記第２ハードウェアデバイスとの組を複数組み合わせて所定の一連の処理を実行させる制御を実行する制御実行手段と、
所定方式の近距離無線通信により、前記制御実行手段の制御対象となる前記第１ハードウェアデバイスと前記制御装置とのペアリングを実行するペアリング実行手段と、
前記制御実行手段の制御対象となる前記第１ハードウェアデバイスと前記制御装置とのペアリングの状態を提示する提示手段と、
を備える。【０００７】
本発明の一態様の制御方法、情報処理装置、情報処理方法及びプログラムも、本発明の一態様の情報処理システムに対応する制御方法、情報処理装置、情報処理方法及びプログラムとして提供される。
【発明の効果】
【０００８】
本発明によれば、ユーザが視覚的な操作よって、より容易に複雑なプログラムを作製することが出来る技術を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態に係る情報処理システムの構成を示すブロック図である。
【図２】本発明の一実施形態に係るユーザ端末のハードウェア構成の一例を示すブロック図である。
【図３】本発明の一実施形態に係るベーシックコアのハードウェア構成の一例を示すブロック図である。
【図４】本発明の一実施形態に係る機能モジュールのハードウェア構成の一例を示すブロック図である。
【図５】本発明の一実施形態に係るベーシックコア及び機能モジュールが接続された状態の構成の一例を示す図である。
【図６】図２のユーザ端末、図３のベーシックコア及び図４の機能モジュールの機能的構成例を示す機能ブロック図である。
【図７】本発明の一実施形態に係る情報処理システムを利用したプログラム作製処理に関する状態の遷移を示す状態遷移図である。
【図８】本発明の一実施形態に係る情報処理システムを利用したプログラム作製処理に際し、ユーザに実際に表示される画面の一例を示す図である。
【図９】本発明の一実施形態に係る情報処理システムを利用したプログラム作製処理に際し、ユーザに実際に表示される画面の一例であって図８とは異なる例を示す図である。
【図１０】本発明の一実施形態に係る具体的な一例を示す図である。
【図１１】本発明の一実施形態に係る情報処理システムにより実行される接続状態認識処理に際し、図２のユーザ端末に実際に表示される画面の一例を示す図である。
【図１２】本発明の一実施形態に係る情報処理システムにより実行される再接続関連付け処理に際し、図２のユーザ端末に実際に表示される画面の一例を示す図である。
【図１３】本発明の一実施形態に係る情報処理システムにより実行される再接続関連付け処理の図１２とは異なる例の処理に際し、図２のユーザ端末に実際に表示される画面の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について、図面を用いて説明する。
【００１１】
本発明は、ユーザが視覚的な操作よって、より容易に複雑なプログラムを作製するための技術的思想の創作である。
ユーザは、プログラム作製用に表示されるユーザインタフェース（以下、「プログラム作製画面」と呼ぶ）に表示された各種アイコンを操作することで、プログラムを作製することができる。
具体的には例えば、ユーザは、プログラム作製画面に表示された特定のハードウェアの動作を指定するプログラムの内容を示すアイコン（以下、「ハードウェアパーツ」又は「Ｈパーツ」と呼ぶ）及び特定のソフトウェアの実行を指定するプログラムの内容を示すアイコン（以下、「ソフトウェアパーツ」又は「Ｓパーツ」と呼ぶ）を視認することができる。
そして、ユーザは、これらのアイコンを任意に移動（例えば、Ｄｒａｇ  Ａｎｄ  Ｄｒｏｐ等）させることで、各種アイコンを組み合わせてプログラムを作製する。
このようにして作製されたプログラムは、例えば、組み立て式の玩具等に利用することができる。
つまり、本発明の一実施形態に係る情報処理システムは、容易な操作によってプログラムを作製することができるため、プログラムの仕組みや作成方法を子供に学ばせるための教材として極めて有用である。
【００１２】
図１は、本発明の一実施形態に係る情報処理システムの構成を示すブロック図である。
図１に示す情報処理システムは、ユーザにより使用されるユーザ端末１と、ｍ個のベーシックコア２−１乃至２−ｍ（ｍは１以上の任意の整数値）と、ｍ個の機能モジュール３−１乃至３−ｍとを含むシステムである。
さらに、ユーザ端末１は、ベーシックコア２−１乃至２−ｍの夫々と、各種方式、例えばＮＦＣ（登録商標）（Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の各種方式で通信を行う。
なお、以下、ベーシックコア２−１乃至２−ｍの夫々を個々に区別する必要がない場合、これらをまとめて「ベーシックコア２」と、機能モジュール３−１乃至３−ｍを個々に区別する必要がない場合、これらをまとめて「機能モジュール３」と呼ぶ。
【００１３】
ここで、本実施形態で用いられる、ベーシックコア２及び機能モジュール３について簡単に説明する。
ベーシックコア２とは、後述する機能モジュール３と接続して使用するハードウェアデバイスであり、近距離無線通信（例えば、ＮＦＣ（登録商標）の規格に準拠した通信）でユーザ端末１とのペアリングを行う。
ユーザ端末１は、所定のベーシックコア２−Ｋとペアリングを行うことで、ベーシックコア２−Ｋ（Ｋは、１乃至ｍのうち任意の整数値）と、ベーシックコア２−Ｋと接続された所定の機能モジュール３−Ｋとを認識する。
機能モジュール３−Ｋとは、例えば、温度センサ等の各種センサ、ブザー等の操作器具、モーターや扇風機等の駆動器具等により構成されるハードウェアデバイスである。
【００１４】
ここで、上述のユーザ端末１とベーシックコア２−Ｋとのペアリングについて説明する。本実施形態では、ベーシックコア２−Ｋに接続された機能モジュール３−Ｋの動作を少なくとも伴うプログラムの作製に際して、ユーザ端末１とベーシックコア２−Ｋとについて近距離無線通信を利用したペアリングを行う必要がある。
ペアリングとは、端的に言えば、近距離無線通信を用いて、ユーザ端末１に、ベーシックコア２−Ｋ及びそれに接続されている機能モジュール３−Ｋの種別や接続状態等を認識させることをいう。
なお、詳細については後述するが、ユーザ端末１では、機能モジュール３−Ｋの種別や接続の状態等を認識すると、接続された機能モジュール３−Ｋに対応するＨパーツがプログラム作製画面に表示される。
【００１５】
図２は、本発明の一実施形態に係るユーザ端末１のハードウェア構成を示すブロック図である。
【００１６】
ユーザ端末１は、タブレット等で構成される。
ユーザ端末１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２３と、バス２４と、入出力インターフェース２５と、タッチ操作入力部２６と、表示部２７と、入力部２８と、記憶部２９と、第一近距離無線通信部３０と、第二近距離無線通信部３１と、通信部３２と、ドライブ３３と、リムーバブルメディア３４とを備えている。
【００１７】
ＣＰＵ２１は、ＲＯＭ２２に記録されているプログラム、又は、記憶部２９からＲＡＭ２３にロードされたプログラムに従って各種の処理を実行する。
ＲＡＭ２３には、ＣＰＵ２１が各種の処理を実行する上において必要な情報等も適宜記憶される。
【００１８】
ＣＰＵ２１、ＲＯＭ２２及びＲＡＭ２３は、バス２４を介して相互に接続されている。このバス２４にはまた、入出力インターフェース２５も接続されている。入出力インターフェース２５には、タッチ操作入力部２６、表示部２７、入力部２８、記憶部２９、第一近距離無線通信部３０、通信部３２及びドライブ３３が接続されている。また、第二近距離無線通信部３１も設けられている。
【００１９】
タッチ操作入力部２６は、例えば表示部２７に積層される静電容量式又は抵抗膜式（感圧式）の位置入力センサにより構成され、タッチ操作がなされた位置の座標を検出する。
表示部２７は、液晶等のディスプレイにより構成され、プログラム作製に関する画像等、各種画像を表示する。
このように、本実施形態では、タッチ操作入力部２６と表示部２７とにより、タッチパネルが構成されている。
【００２０】
入力部２８は、各種ハードウェア等で構成され、ユーザの指示操作に応じて各種情報を入力する。
記憶部２９は、ハードディスクやＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成され、各種情報を記憶する。
第一近距離無線通信部３０は、例えば、ＮＦＣ（登録商標）の規格に従った方式で近距離無線通信を行う制御を実行する。具体的には例えば、上述の通り、ユーザ端末１とベーシックコア２は、ＮＦＣ（登録商標）の規格に従った方式で近距離無線通信をして、ペアリングを行う。
第二近距離無線通信部３１は、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）の規格に従った方式で近距離無線通信を行う制御を実行する。具体的には例えば、ユーザ端末１で作製したプログラムの実行結果（コマンド等を含む）を、Ｂｌｕｅｔｏｏｔｈ（登録商標）の規格に従った方式の近距離無線通信で送信する。
通信部３２は、第一近距離無線通信部３０及び第二近距離無線通信部３１とは別個独立して、インターネット等を介して他の装置との間で行う通信を制御する。
【００２１】
ドライブ３３は、必要に応じて設けられる。ドライブ３３には、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等よりなる、リムーバブルメディア３４が適宜装着される。ドライブ３３によってリムーバブルメディア３４から読み出されたプログラムは、必要に応じて記憶部２９にインストールされる。
また、リムーバブルメディア３４は、記憶部２９に記憶されている各種情報も、記憶部２９と同様に記憶することができる。
【００２２】
図３は、本発明の一実施形態に係るベーシックコア２のハードウェア構成を示すブロック図である。
【００２３】
ベーシックコア２は、所定のハードウェアデバイス等で構成される。
ベーシックコア２は、ＣＰＵ４１と、ＲＯＭ４２と、ＲＡＭ４３と、バス４４と、第一近距離無線通信部４５と、第二近距離無線通信部４６と、接続部４７と、電源部４８とを備えている。
【００２４】
ベーシックコア２の構成のうち、ＣＰＵ４１、ＲＯＭ４２、ＲＡＭ４３、バス４４、第一近距離無線通信部４５、第二近距離無線通信部４６については、ユーザ端末１の構成と基本的に同様であるので、ここではそれらの説明は省略する。
【００２５】
接続部４７は、他のハードウェアデバイス（例えば、図１の機能モジュール３）との接続を行う。
また、接続部４７は、モジュール間通信部５１と、モジュール間電力伝達部５２とを備える。
モジュール間通信部５１は、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）の規格に従った方式により、データ通信を行う制御を実行する。
モジュール間電力伝達部５２は、後述する電源部４８からの電力の供給を受けて、他のハードウェアデバイス（例えば、図１の機能モジュール３）へと、電力を伝達する。
電源部４８は、電池等のバッテリーである。電源部４８は、ベーシックコア２に電力を供給するとともに、モジュール間電力伝達部５２を介して、適宜、機能モジュール３へ電力を供給する。
【００２６】
図４は、本発明の一実施形態に係る機能モジュール３のハードウェア構成を示すブロック図である。
【００２７】
機能モジュール３は、所定のハードウェアデバイス等で構成される。
機能モジュール３は、ＣＰＵ６１と、ＲＯＭ６２と、ＲＡＭ６３と、バス６４と、接続部６７と、機能ハードウェア６８と、電力供給部６９とを備えている。
【００２８】
機能モジュール３の構成のうち、ＣＰＵ６１、ＲＯＭ６２、ＲＡＭ６３、バス６４、及び接続部６７については、ユーザ端末１若しくはベーシックコア２の構成と基本的に同様であるので、ここではそれらの説明は省略する。
なお、機能モジュール３にも、ベーシックコア２と同様に、第一近距離無線通信部と、第二近距離無線通信部とが設けられてもよい。
【００２９】
機能ハードウェア６８は、例えば、温度センサやブザーであり、夫々の機能モジュールが固有の機能を発揮するためのハードウェア等である。
即ち、ユーザが作製したプログラムは、機能ハードウェア６８が適切にその機能を発揮することで、実際のハードウェア上に反映されるのである。
ここで、本実施形態において、プログラムの実行には、２種類の実行方法が存在する。即ち、ユーザ端末１で作製したプログラムを、ユーザ端末１のみで仮想的に実行する種類を、「シミュレーションによる実行」と呼ぶ。他方、ユーザ端末１で作製したプログラムの実行結果に基づいて機能ハードウェア６８等を動作させる種類を、「実機による実行」と呼ぶ。
【００３０】
電力供給部６９は、モジュール間電力伝達部７２を介して取得した電力、又は外部の電源（例えば図５のバッテリーユニットＢＵ）から供給された電力を機能モジュール３へ供給する。
【００３１】
次に、図５を用いて、ベーシックコア２−Ｅ（Ｅは、１乃至ｍのうち任意の整数値）及び機能モジュール３−Ｅの接続形態の詳細について説明する。
図５は、本発明の一実施形態に係るベーシックコア２−Ｅ及び機能モジュール３−Ｅが接続された状態の構成の一例を示す図である。
【００３２】
図５には、ベーシックコア２−Ｅ、機能モジュール３−Ｅ及びバッテリーユニットＰＰが例示されている。
ベーシックコア２−Ｅには、バッテリーユニットＢＵ（例えば、後述する図６の電源部４８）、シリアルポートＳＰ及び近距離無線通信部ＢＴ（例えば、後述する図６の第２近距離無線通信部４６）が備えられている。
バッテリーユニットＢＵは、例えば、電池等のバッテリーであり、ベーシックコア２−Ｅや機能モジュール３−Ｅに電力を供給する。
シリアルポートＳＰは、ベーシックコア２−Ｅと他のハードウェア等とを接続するための接続口（接続コネクタ）である。
図５の例では、ベーシックコア２−Ｅには、シリアルポートＳＰが備えられ、機能モジュール３−Ｅには、シリアルポートＰＳが備えられている。そして、ベーシックコア２−Ｅと機能モジュール３−Ｅは、この二つのシリアルポートＳＰ、ＰＳを介して接続されている。
近距離無線通信部ＢＴは、他のハードウェア等と所定の規格（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標））に従った方式で近距離無線通信を行うためのＩＣカード等が搭載されている。
図５の例では、（図５においては、図示せぬ）ユーザ端末１と、近距離無線通信部ＢＴを備えたベーシックコア２−Ｅとは、Ｂｌｕｅｔｏｏｔｈ（登録商標）に従った方式で近距離無線通信を行う。
具体的に例えば、ユーザ端末１で作製されたプログラムの実行結果（コマンド等）は、ベーシックコア２−Ｅにも送信される。さらに言えば、ベーシックコア２−Ｅでは、ユーザ端末１から送信されてきた当該プログラムの実行結果（コマンド等）を取得し、さらに、その結果を、機能モジュール３−Ｅへと送信する。
【００３３】
また、機能モジュール３−Ｅは、タイヤＴ（例えば、図４の機能ハードウェア６８）を備えている。そして、上述の通り、機能モジュール３−Ｅは、ベーシックコア２−Ｅから送信されてきた上述のプログラムの実行結果（コマンド等）を取得する。図５の例の機能モジュール３−Ｅは、ユーザ端末１で作製されたプログラムの実行結果（コマンド等）に従って、タイヤＴを駆動させる。
ここで、図５の例では、機能モジュール３−Ｅには、バッテリーユニットＰＰが接続されている。このバッテリーユニットＰＰは、外部電源として機能モジュール３−Ｅに電力を供給する。なお、上述したように、ベーシックコア２の電源部４８（図３）等から、機能モジュール３−Ｅに電力の供給が可能であるならば、バッテリーユニットＰＰは必須な構成要素ではない。
【００３４】
このようなユーザ端末１、ベーシックコア２及び機能モジュール３の各種ハードウェアと各種ソフトウェアの協働によりプログラム作製処理の実行が可能となる。
ここで、プログラム作製処理とは、ベーシックコア２に接続された機能モジュール３を１以上機能させるためのプログラムを作成するための処理をいう。
【００３５】
このプログラム作製処理を実現すべく、ユーザ端末１、ベーシックコア２及び機能モジュール３は、図６に示すような機能的構成を有している。
図６は、図１のユーザ端末１、ベーシックコア２及び機能モジュール３の機能的構成の一例を示す機能ブロック図である。
図６に示すように、ユーザ端末１のＣＰＵ２１においては、ペアリング部１０１と、プログラム作製部１０２と、プログラム実行部１０３と、表示制御部１０４と、通信制御部１０５とが機能する。
また、ユーザ端末１の記憶部２９の一領域には、プログラム作製部１０２で作製されたプログラムを格納するプログラム格納部５００と、各種Ｓパーツが格納されているＳパーツＤＢ（Ｓｏｆｔ  ｗａｒｅ  Ｐａｒｔｓ  Ｄａｔａ  Ｂａｓｅ）６００とが設けられている。
そして、ベーシックコア２のＣＰＵ４１においては、ペアリング部２０１と、端末通信制御部２０２と、機能モジュール通信制御部２０３と、主制御部２０４とが機能する。
さらに、機能モジュール３のＣＰＵ６１においては、主制御部２４１と、機能発揮部２４２とが機能する。
【００３６】
ユーザ端末１のペアリング部１０１は、第一近距離無線通信部３０を介して、ユーザ端末１とベーシックコア２とのペアリングを行う。なお、このペアリングは、本実施形態ではＮＦＣ（登録商標）に準拠した近距離無線通信で行われるが、これは例示に過ぎず、任意の方式の通信で行われてもよい。
また、ペアリング部１０１には、接続確認部１１１が設けられる。接続確認部１１１は、ユーザ端末１とペアリングしたベーシックコア２及びそれに接続された機能モジュール３の種別や接続の状況を確認する。
なお、接続確認部１１１に確認された機能モジュール３の種別や接続の状況は、表示制御部１０４を介して、プログラム作製画面に表示される。
【００３７】
プログラム作製部１０２は、ユーザのタッチ操作を受付けて、実際にプログラムの作製を行う。
ここで、プログラム作製部１０２には、Ｈパーツ供給部１２１と、Ｓパーツ供給部１２２と、パーツ結合部１２３と、確定部１２４とが設けられる。
Ｈパーツ供給部１２１は、ペアリング部１０１によりペアリングが行われたベーシックコア２に接続されている機能モジュール３の種別に対応するＨパーツを、表示制御部１０４を介してプログラム作製画面へ表示する。
Ｓパーツ供給部１２２は、適宜、ＳパーツＤＢ６００からＳパーツを抽出して、表示制御部１０４を介してプログラム作製画面へ表示する。
パーツ結合部１２３は、ユーザのタッチ操作に応じて、各種Ｈパーツ及び各種Ｓパーツを結合する。
最終的に作製されるプログラムにおいては、このように結合された各種Ｈパーツ及びＳパーツに指定されたプログラムの内容が連続的に実行される。
確定部１２４は、ユーザに作製されたプログラムの内容を確定し、その作製されたプログラムをプログラム格納部５００へ格納する。
【００３８】
プログラム実行部１０３は、プログラム格納部５００に格納されたプログラムのうちから、ユーザが実行を望むプログラムを抽出して実行する。
ここで、プログラム実行部１０３には、シミュレーション部１３１と、実機部１３２とが設けられている。
シミュレーション部１３１は、ユーザに作製されたプログラムによって、ベーシックコア２及び機能モジュール３を動作させることを目的とせずに、プログラム実行部１０３によって抽出されたプログラムを仮想的に実行する。
即ち、シミュレーション部１３１は、実際に作製されたプログラムが正常に実行できるか等をチェックするためのシミュレーションを行う。なお、プログラムの実行結果は、後述するように、表示制御部１０４を介して表示部２７に表示される。
実機部１３２は、ユーザに作製されたプログラムによって、ベーシックコア２及び機能モジュール３を動作させることを目的として、プログラム実行部１０３によって抽出されたプログラムを実行する。
即ち、プログラム実行部１０３は、作製されたプログラムの実行結果（コマンド等）を、ベーシックコア２及び機能モジュール３へと送信し、機能モジュール３に機能を発揮させる。
なお、プログラムの実行結果は、表示制御部１０４を介して表示部２７に表示されるだけでなく、後述するように、通信制御部１０５によってベーシックコア２へと送信される。
【００３９】
表示制御部１０４は、前述した各種情報等を表示部２７に表示するための制御を実行する。
【００４０】
通信制御部１０５は、プログラム実行部１０３の実機部１３２で実行されたプログラムの実行結果を第二近距離無線通信部３１を介してベーシックコア２に送信するための制御等を行う。
なお、前述の通り、本実施形態では、第二近距離無線通信部３１は、Ｂｌｕｅｔｏｏｔｈ（登録商標）の規格に従った方式で近距離無線通信を行う。
【００４１】
ベーシックコア２のペアリング部２０１は、第一近距離無線通信部４５を介して、ユーザ端末１とペアリングを行う。
ここで、第一近距離無線通信部４５は、ベーシックコア２においてシステムと独立している。そこで、第一近距離無線通信部４５には、第二近距離無線通信部４６の接続情報（例えばＭＡＣアドレス）が予め書き込まれており、ペアリング部２０１は、そのＭＡＣアドレスを読み込んで、Ｂｌｕｅｔｏｏｔｈ（登録商標）によるユーザ端末１とのペアリングを実現している。
【００４２】
端末通信制御部２０２は、例えば、ユーザ端末１から送信されてきたプログラムの実行結果を第二近距離無線通信部４６を介して取得するための制御等を実行する。
【００４３】
ここで、プログラムの実行時において、当該プログラムで機能を発揮させる機能モジュール３は、所定のベーシックコア２と接続されている必要がある。
即ち、少なくともプログラムの実行時において、ベーシックコア２と機能モジュール３は、接続部４７と接続部６７によって接続されている。
ここで、少なくともプログラムの実行時としたのは、ベーシックコア２と機能モジュール３との接続は、ベーシックコア２とユーザ端末１とのペアリングとは独立して行うことができるからである。つまり、ペアリング前にベーシックコア２と機能モジュール３との接続がなされていてもよいが、ペアリング後にベーシックコア２と機能モジュール３との接続がなされていてもよい。後者の場合、機能モジュール３から自身のユニークＩＤがユーザ端末１に送信されることで、ユーザ端末１はその機能モジュール３が何であるのか（どのような機能を発揮させるものか）を認識することができる。
また、ペアリング後に機能モジュール３をベーシックコア２から外すこともできる。その際は、ベーシックコア２は、機能モジュール３が外れたことをユーザ端末に１に通知する。ユーザ端末１は、ＵＩ（後述する図８のユーザ表示画面等）に外れた旨を表示させる。より正確には本実施形態では、ユーザ端末１は、所定の機能モジュール３がベーシックコア２から外された場合は、当該所定の機能モジュール３に対応するＨパーツを示すアイコンがＵＩにおいて非表示状態になる。
このようにして、ペアリング後の機能モジュール３のホットスワップが実現されている。即ち、ユーザにとっては、ペアリングを一旦してしまえば、あとはベーシックコア２に対する機能モジュール３の抜き差しだけでよい。この抜き差しの状態は、ユーザー端末１上のＵＩでも追従される。
いずれにしても、ベーシックコア２と機能モジュール３が接続されている場合、ベーシックコア２の機能モジュール通信制御部２０３は、接続部４７を介して接続された機能モジュール３との通信の制御を実行する。
例えば、機能モジュール通信制御部２０３は、後述する主制御部２０４で出力された動作指示等を機能モジュール３へ送信する。
【００４４】
主制御部２０４は、ベーシックコア２で実行される各種処理の主たる制御を実行する。
例えば、主制御部２０４は、端末通信制御部２０２で取得したプログラムの実行結果に基づいて、機能モジュール３の機能を発揮させるための動作指示等を出力する。
【００４５】
機能モジュール３の主制御部２４１は、機能モジュール３で実行される各種処理の主たる制御を実行する。
例えば、ベーシックコア２から送信されてきた動作指示を、接続部６７を介して、取得する。
【００４６】
機能発揮部２４２は、主制御部２４１で取得された動作指示を、機能ハードウェア６８に実行させるための制御を実行する。
即ち、機能発揮部２４２は、主制御部２４１で取得された動作指示を機能ハードウェア６８に実行させることで、機能モジュール３の機能を発揮させる。
【００４７】
なお、図６において、電力供給部６９は、モジュール間電力伝達部７２を介して取得した電力を機能モジュール３へ供給する様子のみが図示されているが、上述したように、外部の電源（例えば図５のバッテリーユニットＢＵ）から供給された電力を機能モジュール３へ供給することもできる。
【００４８】
図７は、本発明の一実施形態に係る情報処理システムを利用したプログラム作製処理に関する状態の遷移を示す状態遷移図である。
図７において、各状態は、１つの楕円形で示されており、夫々の状態は、ＳＰを含む符号により判別される。
１つの状態から１つの状態への状態遷移は、所定の条件（以下、「状態遷移条件」と呼ぶ）が満たされると実行される。
このような状態遷移条件は、図７おいては、１つの状態から１つの状態への遷移を表す矢印に、Ａを含む符号を付して表されている。
【００４９】
本実施形態においては、図７に示すように、プログラム作製状態ＳＰ１が基本の状態になる。
プログラム作製状態ＳＰ１において、ユーザは、ユーザ端末１とベーシックコア２を近接させることでペアリングを行う。
なお、ここでいう近接されるとは、ＮＦＣ（登録商標）規格に従った方式で近距離無線通信を行うのに有効な距離であり、一般に１０ｃｍ程度の距離まで近接させることを言う。
即ち、ユーザが、ユーザ端末１とベーシックコア２とを１０ｃｍ程度の距離まで近接させることで、状態遷移条件Ａ１が満たされる。
すると、状態は、ペアリング状態ＳＰ２へと遷移する。これにより、Ｈパーツ供給部１２１は、Ｈパーツを表示制御部１０４を介してプログラム作製画面を表示する。
そして、ペアリング後、ユーザが一定の時間、操作を行わなかった場合には、状態遷移条件Ａ２が満たされる。
すると、状態は、プログラム作製状態ＳＰ１へと再び遷移する。
【００５０】
ペアリング状態ＳＰ２において、ユーザが、所定の操作子（図示せぬプログラム実行ボタン等）を押下すると、状態遷移条件Ａ３が満たされる。
すると、状態は、プログラム実行状態ＳＰ３に遷移する。
そして、先ほどと同様に、プログラム実行状態ＳＰ３において、ユーザが、ユーザ端末１とベーシックコア２を近接させることで、状態遷移条件Ａ４が満たされる。
すると、状態は、ペアリング状態ＳＰ２へと再び遷移する。
【００５１】
プログラム作製状態ＳＰ１において、ユーザが、プログラムの作成が終了して、プログラムの実行を指示する所定の操作子（図示せぬプログラム実行ボタン等）を押下すると、状態遷移条件Ａ１２が満たされる。
すると、状態は、プログラム実行状態ＳＰ３に遷移する。
なお、プログラム実行状態ＳＰ３において、ユーザが、プログラムの追加や変更を所望した場合、所定の操作子（図示せぬプログラム作製ボタン等）を押下すると、状態遷移条件Ａ１３が満たされる。
すると、状態は、プログラム実行状態ＳＰ１に遷移する。
【００５２】
ここで、プログラム実行状態ＳＰ３には、上述したようにシミュレーション状態と実機状態２つの状態が存在する。
プログラム実行状態ＳＰ３において、これらの２つの状態は、ユーザが所定の操作子（図示せぬシミュレーションボタン等）を押下することで、夫々の状態での、状態遷移条件Ａ１０又Ａ１１を満たす。
このように、プログラム実行状態ＳＰ３において、シミュレーション状態と実機状態は、適宜、遷移することができる。
【００５３】
プログラム実行状態ＳＰ３において、プログラム実行後、ユーザが所定の操作子（図示せぬプログラム実行キャンセルボタン等）を押下すると、状態遷移条件Ａ５が満たされる。
すると、状態は、休止状態ＳＰ４へと遷移する。
そして、休止状態ＳＰ４において、ユーザが所定の操作子（図示せぬプログラム実行ボタン等）を押下すると、状態遷移条件Ａ６が満たされる。
すると、状態は、プログラム実行状態ＳＰ３へと遷移する。
【００５４】
休止状態ＳＰ４において、ユーザが、所定の操作子（図示せぬプログラム作製アプリケーションの起動ボタン等）を押下すると状態遷移条件Ａ７が満たされる。
すると、状態は、プログラム作製状態ＳＰ１へと遷移する。
そして、プログラム作製状態ＳＰ１において、ユーザのが、所定の操作子（図示せぬプログラム作製キャンセルボタン等）を押下すると、遷移条件Ａ８が満たされる。
すると、状態は、休止状態ＳＰ４へと遷移する。
なお、図７に示す通り、ペアリング状態ＳＰ２と休止状態ＳＰ４については、直接遷移することも可能である。
【００５５】
次に、図８及び図９を用いて、ユーザ端末１の表示部２７に表示されるプログラム作製画面の詳細について説明する。
図８は、図２のユーザ端末１が実行するプログラム作製処理に関し、ユーザに実際に表示される画面の一例を示す図である。
【００５６】
図８において、左半分にはユーザに表示されているプログラム作製画面（以下、「ユーザ表示画面」と呼ぶ）が、右半分には実際に作製されたプログラムに応じて、動作する各種ハードウェアの模式図（以下、「ハードウェア模式図」と呼ぶ）が示されている。
まず、図８（Ａ）は、ユーザ端末１に、いずれのベーシックコア２のペアリングもなされていない状況を示している。
即ち、図８（Ａ）のハードウェア模式図を見ると、ユーザ端末１には、ベーシックコア２−Ｏ及び機能モジュール３−Ｏ（Ｏは、１乃至ｍのうち任意の整数値）と、ベーシックコア２−Ｐ及び機能モジュール３−Ｐ（Ｐは、１乃至ｍのうちＯ以外の任意の整数値）のいずれもペアリングされていない。
なお、機能モジュール３−Ｏは、押しボタンの機能を発揮することができる。機能モジュール３−Ｐは、ブザーの機能を発揮することができる。
そして、図８（Ａ）のユーザ表示画面を見ると、プログラム作製時表示領域ＤＡとＨパーツ表示領域ＤＨＡにはアイコンは表示されていない。なお、Ｓパーツ表示領域ＤＳＡには、タイマーのアイコンが表示されている。
【００５７】
図８（Ｂ）は、ユーザ端末１と、機能モジュール３−Ｏが接続されたベーシックコア２−Ｏとのペアリングがなされ、かつ、ユーザ端末１と、機能モジュール３−Ｐが接続されたベーシックコア２−Ｐとのペアリングがなされた状況を示している。
そして、図８（Ｂ）のユーザ表示画面を見ると、ペアリングがなされた機能モジュール３−Ｏに対応する押しボタンのアイコン及び機能モジュール３−Ｐに対応するブザーのアイコンがＨパーツ表示領域ＤＨＢに夫々表示されている。
【００５８】
図８（Ｃ）は、ユーザによって作製されたプログラムが、実行された状況を示している。
図８の（Ｃ）のユーザ表示画面を見ると、プログラム作製時表示領域ＤＣには、右から順に押しボタンのアイコン、タイマー（２ｓ）、ブザーのアイコンが順番に表示され、夫々のアイコンにより夫々結合されている。
ユーザは、このように、ユーザ表示画面に表示されたアイコンを視認しながら、各種Ｈパーツ及び各種Ｓパーツを自由に組み合わせて結合させることで、夫々のアイコンが指定する内容を組み合わせて１つのプログラムを製作し、そのプログラムを実行させることができる。
図８（Ｃ）のハードウェア模式図を見ると、同図のユーザ表示画面で示されるプログラムが実行された結果として、押しボタン（機能モジュール３−Ｏ）が押されると、その２秒後に、ブザー（機能モジュール３−Ｐ）が鳴るという動作が実現されることがわかる。
【００５９】
図９は、図２のユーザ端末１が実行するプログラム作製処理に関し、ユーザに実際に表示される画面の一例であって図８の例とは異なる例を示す図である。
【００６０】
図９においては、ユーザに表示されているプログラム作製画面、即ちユーザ表示画面のみが図示されている。
図９のユーザ表示画面を見ると、プログラム作製時表示領域ＤＤには、Ｈパーツとして、左にはボタンのアイコンＨＢが表示され、右にはフルカラーＬＥＤのアイコンＨＬが表示されている。それらの間には、Ｓパーツとして、タイマーのアイコンＳＴ、及びスライダーのアイコンＳＳＲ，ＳＳＧ，ＳＳＢが表示されている。タイマーのアイコンＳＴ、及びスライダーのアイコンＳＳＲ，ＳＳＧ，ＳＳＢの夫々は、入力側にはアイコンＨＢが接続され、出力側にはアイコンＨＬが接続されている。
ここで、タイマーのアイコンＳＴは、設定された時間が経過すると、トリガ情報を出力するＳパーツである。換言すると、タイマーのアイコンＳＴは、０又は１のデジタル信号を出力するＳパーツである。
これに対して、スライダーのアイコンＳＳＲ，ＳＳＧ，ＳＳＢは、０ないし２５５の間の任意の数値を出力することが可能なＳパーツである。換言すると、スライダーのアイコンＳＳＲ，ＳＳＧ，ＳＳＢは、アナログ信号を出力するＳパーツである。
このように、Ｓパーツは、アナログ信号等の多種多様な情報を入出力情報として取り扱うことができる。Ｈパーツも、対応する機能モジュール３がアナログ信号等の多種多様な情報を入出力できるならば、それに対応してアナログ信号等の多種多様な情報を入出力情報として取り扱うことができる。
図９の例では、ユーザ表示画面で示されるプログラムが実行されると、押しボタン（図示せぬ機能モジュール）が押されると、所定期間経過後に、スライダーのアイコンＳＳＲ，ＳＳＧ，ＳＳＢの夫々の出力値がＲ値、Ｇ値、Ｂ値の夫々としてＬＥＤ（図示せぬ機能モジュール）に伝達されるので、そのＲ値、Ｇ値、Ｂ値で特定されるカラーでＬＥＤが点灯するという動作が実現されることになる。
【００６１】
以上本発明の一実施形態について説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
【００６２】
例えば、図８に示す実施形態では、機能モジュール３−Ｏ及び機能モジュール３−Ｐとして、押しボタンとブザーが採用されているが、機能モジュール３の発揮する機能は特に上述した実施形態には限定されない。
以下、図１０を参照しつつ、上述の実施形態とは異なる手法が採用された他の実施形態についていくつか説明する。
【００６３】
図１０は、本発明の一実施形態に係る具体例であって、図５及び図８とは異なる例を示す図である。
図１０（ａ）を見ると、機能モジュールＭ１として、プロペラ付きロケットのおもちゃが採用されている。
例えば、図１０（ａ）の例では、所定のユーザＨ１によって、プログラムの実行ボタンが押下されると、１０秒間のカウントダウン後にプロペラが回転するというプログラムが作製されて実行されている。
なお、機能モジュールＭ１と接続されたベーシックコアＢ１やカウントダウンの機能を発揮する機能モジュールＭＣ（例えば、スピーカー等）については、図示されていないが、例えば、機能モジュールＭ１の内部に格納されている。
【００６４】
また、図１０（ｂ）を見ると、機能モジュールＭ１として、電車のおもちゃが採用されている。
例えば、図１０（ｂ）の例では、所定のユーザＨ２によって、プログラムの実行ボタンが押下されると、人の声等に反応して、電車が発車するというプログラムが作製されて実行されている。
なお、図１０（ｂ）では図１０（ａ）と同様に、機能モジュールＭ２と接続されたベーシックコアＢ２や音を捉える機能を発揮する機能モジュールＭＡ（例えば、音声センサ）については、図示されていないが、例えば、機能モジュールＭ２の内部に格納されている。
本発明は、このような様々な実施形態により実施することが可能であるが、多くの実施形態において、特に子供の教育用の組み立て式玩具に使用するプログラムを作製するのに極めて有用である。
プログラム作製画面に表示されたアイコンを視覚的に確認することができるため、ユーザが子供であっても、安全かつ容易にプログラムを作製することができるし、また、自身で作製したプログラムに応じて、実機によって動作させることができるため、子供は飽きることなく、プログラムの作製を楽しむことができる。
このように、子供に楽しみながらプログラムの作製を行わせることで、子供は、一般に触れることが困難であるプログラムについて、慣れ親しむことができるのである。
さらに、図１０に図示せぬベーシックコア２とユーザ端末１とのペアリングをしておけば、機能モジュールＭ１，Ｍ２等機能モジュール３は自由に着脱が可能であり、その着脱の状態もプログラム作製画面に反映される。従って、子供は、ハードウェアの設計も楽しめることができる。
【００６５】
ここで、本実施形態における入出力情報について、補足する。本実施形態において、各種Ｈパーツや各種Ｓパーツを組み合わせることで、各種アイコンに指定されたプログラムの内容が連続的に実行される。
この夫々のプログラムの入出力情報は、図８に示したような単なるトリガ情報だけでなく、図９に示したようなアナログ信号等の多種多様な情報を入出力情報として取り扱うことができる。
即ち、例えば、本実施形態における入出力情報は、温度センサによって取得された情報（例えば、温度が１５度）を、そのままアナログ信号等の情報として出力し、プログラムの作製に用いることができる。そのため、デジタル信号の情報だけでは、実現することのできない複雑な情報処理であっても実現することが可能となる。
【００６６】
次に、接続認識処理について説明する。接続認識処理とは、ユーザ端末１とペアリングされたベーシックコア２に接続される機能モジュール３をユーザ端末１が認識し、当該機能モジュール３をの各接続状態を、ユーザ端末１に表示させる一連の処理である。
図１１は、本発明の一実施形態に係る情報処理システムにより実行される接続状態認識処理に際し、図２のユーザ端末１に実際に表示される画面の一例を示す図である。
図１１において、図８と同様に、左半分には、ユーザ表示画面（ユーザに表示されているプログラム作製画面）が、右半分には、ハードウェア模式図（実際に作製されたプログラムに応じて、動作する各種ハードウェアの模式図）が示されている。なお、ユーザ表示画面とハードウェア模式図の図示については、後述する図１２及び図１３も同様である。
【００６７】
図１１（Ａ）は、ハードウェア模式図によれば、ユーザ端末１と、機能モジュール３−１，３−２が接続されたベーシックコア２とのペアリングがなされた状況を示している。ここで、機能モジュール３−１，３−２の夫々は、ボタンの機能を発揮することができる。
図１１（Ａ）のユーザ表示画面のＨパーツ表示領域には、ペアリングがなされたベーシックコア２に接続された機能モジュール３−１，３−２のアイコン（ボタンと表示されたアイコン）が表示されている。なお、図１１（Ａ）の状態では、ユーザによるプログラム作成は未だ行われていないので、ユーザ表示画面のプログラム作製時表示領域には何も表示されていない。
【００６８】
図１１（Ｂ）は、ハードウェア模式図によれば、図１１（Ａ）と同様に、ユーザ端末１と、機能モジュール３−１，３−２が接続されたベーシックコア２とのペアリングがなされた状況を示している。
図１１（Ｂ）のユーザ表示画面のＨパーツ表示領域には、ペアリングがなされたベーシックコア２に接続された機能モジュール３−１，３−２のアイコン（ボタンと表示されたアイコン）が表示されている。図１１（Ｂ）の状態では、ユーザによるプログラム作成が行われており、ユーザ表示画面のプログラム作製時表示領域には、機能モジュール３−１に対応するボタンのアイコンの出力側には、「サウンド  正解」というアイコンが接続されており、機能モジュール３−２に対応するボタンのアイコンの出力側には、「テキスト読み上げ  こんにちは」というアイコンが接続されている。
図１１（Ｂ）の状態で、ユーザによって作製されたプログラムが実行されると、機能モジュール３−１のボタンが押下された場合には、サウンドとして「正解」が実際に出力され、また、機能モジュール３−２のボタンが押下された場合には、「こんにちは」というテキストが読み上げられることになる。
【００６９】
図１１（Ｃ）は、ハードウェア模式図によれば、図１１（Ｂ）の状態の後に何らかの原因で、ユーザ端末１とペアリングされたベーシックコア２と、機能モジュール３−１，３−２とが切断された状況を示している。
図１１（Ｃ）の状態では、ユーザ表示画面のプログラム作製時表示領域には、機能モジュール３−１に対応するボタンのアイコンが消去され、同一位置に「切断」を示すアイコンが表示される。同様に、機能モジュール３−２に対応するボタンのアイコンが消去され、同一位置に「切断」を示すアイコンが表示される。
【００７０】
次に、再接続関連付け処理について説明する。再接続関連付け処理とは、ユーザ端末１とペアリングされたベーシックコア２に対して、一旦切断された後に再度接続された機能モジュール３をユーザ端末１が認識し、当該機能モジュール３の各接続状態を回復させて、ユーザ端末１に表示させる一連の処理である。
図１２は、本発明の一実施形態に係る情報処理システムにより実行される再接続関連付け処理に際し、図２のユーザ端末に実際に表示される画面の一例を示す図である。
【００７１】
再接続関連付け処理が行われると、図１２に示すように、ユーザ表示画面のプログラム作製時表示領域には、切断の状態（図１１（Ｃ）の状態）で表示された「切断」を示す２つのアイコンが消去され、夫々の同一位置に、機能モジュール３−１,３−２の夫々に対応する２つのボタンのアイコンの表示が復活する。
【００７２】
ここで、接続状態が回復された同一種（ボタン等）の機能モジュール３が２以上存在する場合（例えば図１２の例では、ボタンの２つの機能モジュール３−１，３−２が存在する場合）は、いずれのハードウェア部品と関連付けるべきかについて、その組み合わせが複数存在する点が問題となる。
この点において、例えば、機能モジュール３（ハードウェア部品）とソフトウェア部品とがプログラムにおいて関連付けられていた場合に、ユーザ端末１は、その機能モジュール３（ハードウェア部品）に対して一意に識別可能な符号を記憶させておき、機能モジュール３の接続状態が回復した場合に、当該符号に基づいて、ソフトウェア部品との関連付けを自動で回復させても良い。
【００７３】
図１３は、本発明の一実施形態に係る情報処理システムにより実行される再接続関連付け処理の図１２とは異なる例の処理に際し、図２のユーザ端末に実際に表示される画面の一例を示す図である。
図１３の例の再接続関連付け処理では、ユーザ端末１とペアリングされたベーシックコア２に対して、一旦切断された後に再度接続された機能モジュール３−１，３−２がユーザ端末１により認識され、当該機能モジュール３−１,３−２の各接続状態の回復の際に、その回復をユーザに確認させる。
即ち、図１３のハードウェア模式図によれば、接続状態が回復された機能モジュール３が複数台存在する場合（図１３の例では、機能モジュール３−１，３−２という２台が存在する場合）、その回復をユーザに確認させる対象の機能モジュール３（図１３の例では機能モジュール３−１）は、ＬＥＤを点灯する。これにより、ユーザは、その対象を確実に視認することができる。
そして、ユーザ表示画面のプログラム作製時表示領域において、対象の機能モジュール３（図１３の例では機能モジュール３−１）に対応するボタンのアイコンに近接するように確認ダイアログが表示される。この確認ダイアログには、例えば「プラグを接続したブランチは今ＬＥＤが点灯しているボタンですか？  はい  いいえ」というメッセージが表示される。
ユーザは、ユーザ端末１に対して、「はい」又は「いいえ」の選択操作をすることができる。
「はい」の選択操作がなされた場合は、機能モジュール３−１に対応するボタンのアイコンの出力側に対する、「サウンド  正解」というアイコンの接続（関係付け）が回復する。
なお、機能モジュール３−２側の接続の回復は、同様に、機能モジュール３−２のＬＥＤを表示させつつ、当該機能モジュール３−２に対応するボタンのアイコンに近接するように確認ダイアログを表示させてもよい。或いは、機能モジュール３−１の接続の回復と同時に、機能モジュール３−２の接続を自動的に回復させてもよい。
【００７４】
なお、図１１乃至図１３に図示したものは例示に過ぎない。即ち、制御装置（ユーザ端末１）と、前記制御装置（ユーザ端末１）と近距離無線通信でペアリングする機能と他のハードウェアデバイスと通信をする機能を有する１以上の第１ハードウェアデバイス（ベーシックコア２）と、前記第１ハードウェアデバイス（ベーシックコア２）と通信をする機能と所定の機能を発揮する機能を有する２以上の第２ハードウェアデバイス（機能モジュール３）とを含む情報処理システムにおける、前記制御装置（ユーザ端末１）及び前記第１ハードウェアデバイス（ベーシックコア２）は、次のようなステップを含む制御処理を実行することができる。
即ち、前記情報処理システムは、
前記制御装置（ユーザ端末１）とペアリングした前記第１ハードウェアデバイス（ベーシックコア２）と通信する前記２以上の第２ハードウェアデバイス（機能モジュール３）を組み合わせて実行させる所定の一連の処理を前記第２ハードウェアデバイス（機能モジュール３）毎に関連付けする処理関連付けステップと、
前記処理関連付けステップで所定の一連の処理を関連付けされた前記２以上の第２ハードウェアデバイス（機能モジュール３）と前記１以上の第１ハードウェアデバイス（ベーシックコア２）との間での通信状態が切断されたことを検知する通信状態検知ステップと、
前記通信状態検知ステップで前記１以上の第１ハードウェアデバイス（ベーシックコア２）との間での通信状態が切断されたことを検知された前記２以上の第２ハードウェアデバイス（機能モジュール３）が、前記１以上の第１ハードウェアデバイス（ベーシックコア２）との間での通信状態が回復した場合に、関連付けられていた処理毎に、前記２以上の第２ハードウェアデバイス（機能モジュール３）のいずれと関連付けるかについて確認を行う関連付け確認ステップと、
を含む制御処理を実行することができる。
【００７５】
また例えば、上述の実施形態では、ユーザ端末１とベーシックコア２のペアリングは、ＮＦＣ（登録商標）規格に従った方式での近距離無線通信により行っているが、これに限定されない。ペアリングは、近距離無線通信に限らず、いかなる手段によってペアリングを行ってもよい。
さらに言えば、上述の実施形態では、ユーザ端末１で作製したプログラムの実行結果をＢｌｕｅｔｏｏｔｈ（登録商標）等の規格に従った方式で近距離無線通信を利用して送信しているが、特にこれに限定されない。作製したプログラムは、近距離無線通信に限らず、いかなる手段を利用して送信してもよい。
【００７６】
また例えば、上述の本実施形態では、ベーシックコア２の数と機能モジュール３の数をともにｍとして説明を行ったが、特にこれに限定されない。即ち、ベーシックコア２の数と機能モジュール３の数は、同一でも構わないし、また、異なっていても構わない。
つまり、１台のベーシックコア２に対して、ｓ台（ｓは１以上の任意の整数値）の機能モジュール３を接続してもよい。
【００７７】
また例えば、上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。
換言すると、図６の機能的構成は例示に過ぎず、特に限定されない。
即ち、上述した一連の処理を全体として実行できる機能が情報処理システムに備えられていれば足り、この機能を実現するためにどのような機能ブロックを用いるのかは特に図４の例に限定されない。また、機能ブロックの存在場所も、図６に特に限定されず、任意でよい。
また、１つの機能ブロックは、ハードウェア単体で構成してもよいし、ソフトウェア単体で構成してもよいし、それらの組み合わせで構成してもよい。
【００７８】
また例えば、一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータ等にネットワークや記録媒体からインストールされる。
コンピュータは、専用のハードウェアに組み込まれているコンピュータであっても良い。
また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えばサーバの他汎用のスマートフォンやパーソナルコンピュータであってもよい。
【００７９】
また例えば、このようなプログラムを含む記録媒体は、ユーザにプログラムを提供するために装置本体とは別に配布される図示せぬリムーバブルメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される記録媒体等で構成される。
【００８０】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的或いは個別に実行される処理をも含むものである。
また、本明細書において、システムの用語は、複数の装置や複数の手段等より構成される全体的な装置を意味するものとする。
【００８１】
以上を換言すると、本発明が適用される情報処理システムは、次のような構成を有する各種各様の実施形態を取ることができる。
即ち、本発明が適用される情報処理装置は、
制御装置と、前記制御装置と近距離無線通信でペアリングする機能と他のハードウェアデバイスと通信をする機能を有する１以上の第１ハードウェアデバイスと、前記第１ハードウェアデバイスと通信をする機能と所定の機能を発揮する機能を有する１以上の第２ハードウェアデバイスとを含む情報処理システムにおける、前記制御装置であって、
前記第１ハードウェアデバイスと前記第２ハードウェアデバイスとの組を複数組み合わせて所定の一連の処理を実行させる制御を実行する制御実行手段（例えば、図６のプログラム実行部１０３）と、
所定方式の近距離無線通信により、前記制御実行手段の制御対象となる前記第１ハードウェアデバイスと前記制御装置とのペアリングを実行するペアリング実行手段（例えば、図６のペアリング部１０１）と、
前記制御実行手段の制御対象となる前記第１ハードウェアデバイスと前記制御装置とのペアリングの状態を提示する提示手段（例えば、図６の接続確認部１１１）と、
を備える制御装置であれば足りる。
これにより、ユーザは、視覚的に作製するプログラムの内容を確認しつつ、容易な操作（アイコンを組み合わせて連結させる等）によってプログラムを作製することが出来る。
【符号の説明】
【００８２】
１・・・ユーザ端末、２・・・ベーシックコア、３・・・機能モジュール、２１・・・ＣＰＵ、２７・・・表示部、３０・・・第一近距離無線通信部、３１・・・第二近距離無線通信部、４１・・・ＣＰＵ、４５・・・第一近距離無線通信部、４６・・・第二近距離無線通信部、４７・・・接続部、４８・・・電源部、５１・・・モジュール間通信部、５２・・・モジュール間電力伝達部、６１・・・ＣＰＵ、６７・・・接続部、６８・・・機能ハードウェア、６９・・・電力供給部、７１・・・モジュール間通信部、７２・・・モジュール間電力伝達部、１０１・・・ペアリング部、１０２・・・プログラム作製部、１０３・・・プログラム実行部、１０４・・・表示制御部、１０５・・・通信制御部、１１１・・・接続確認部、１２１・・・Ｈパーツ供給部、１２２・・・Ｓパーツ供給部、１２３・・・パーツ結合部、１２４・・・確定部、１３１・・・シミュレーション部、１３２・・・実機部、２０１・・・ペアリング部、２０２・・・端末通信制御部、２０３・・・機能モジュール通信制御部、２０４・・・主制御部、２４１・・・主制御部、２４２・・・機能発揮部、５００・・・プログラム格納部、６００・・・ＳパーツＤＢ
【図１】
2018155483.tif 000003
【図２】
2018155483.tif 000004
【図３】
2018155483.tif 000005
【図４】
2018155483.tif 000006
【図５】
2018155483.tif 000007
【図６】
2018155483.tif 000008
【図７】
2018155483.tif 000009
【図８】
2018155483.tif 000010
【図９】
2018155483.tif 000011
【図１０】
2018155483.tif 000012
【図１１】
2018155483.tif 000013
【図１２】
2018155483.tif 000014
【図１３】
2018155483.tif 000015
【国際調査報告】
2018155483.tif 000016
2018155483.tif 000017
2018155483.tif 000018