IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ VIVITA株式会社の特許一覧

<>
  • 特開-情報処理システム 図1
  • 特開-情報処理システム 図2
  • 特開-情報処理システム 図3
  • 特開-情報処理システム 図4
  • 特開-情報処理システム 図5
  • 特開-情報処理システム 図6
  • 特開-情報処理システム 図7
  • 特開-情報処理システム 図8
  • 特開-情報処理システム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023032976
(43)【公開日】2023-03-09
(54)【発明の名称】情報処理システム
(51)【国際特許分類】
   G06F 8/34 20180101AFI20230302BHJP
   H04L 67/303 20220101ALI20230302BHJP
   H04L 67/10 20220101ALI20230302BHJP
【FI】
G06F8/34
H04L67/303
H04L67/10
【審査請求】未請求
【請求項の数】1
【出願形態】OL
(21)【出願番号】P 2021139378
(22)【出願日】2021-08-27
(71)【出願人】
【識別番号】515074086
【氏名又は名称】VIVIWARE株式会社
(74)【代理人】
【識別番号】100205659
【弁理士】
【氏名又は名称】齋藤 拓也
(74)【代理人】
【識別番号】100154748
【弁理士】
【氏名又は名称】菅沼 和弘
(72)【発明者】
【氏名】柏本 和俊
(72)【発明者】
【氏名】林 兼大
(72)【発明者】
【氏名】加々見 翔太
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376BC14
5B376BC16
5B376BC45
(57)【要約】      (修正有)
【課題】ユーザが視覚的な操作によって、より容易に複雑なプログラムを作製する情報処理システムを提供する。
【解決手段】ユーザの指示により制御プログラムの作製を支援するユーザ端末1と、1以上の機能モジュール3とを含む情報処理システムにおいて、制御プログラムは、1以上の機能モジュール3の夫々に対応付けられたハードウェア部品を含むプログラミング部品が結合されることで定義される。実機確認部125は、制御プログラムにおいて、ユーザの所定操作により所定のハードウェア部品が指示されたことを検出する。通信制御部105は、1以上の機能モジュール3のうち、実機確認部125により検出された機能モジュール3を対象機能モジュールとして、指示された旨の制御信号を対象機能モジュールに送信する制御を実行する。機能モジュール3の発光部70は、制御信号が受信された場合、自身が対象機能モジュールである旨を発光することで報知する。
【選択図】図6
【特許請求の範囲】
【請求項1】
ユーザの指示により制御プログラムの作製を支援するプログラム作製支援装置と、
前記プログラム作成支援装置と通信をする第1通信機能と、他のハードウェアデバイスと通信をする第2通信機能と、前記制御プログラムに基づいて前記他のハードウェアデバイスを制御する制御機能とを有する1以上の第1ハードウェアデバイスと、
前記第1ハードウェアデバイスと通信をする第3通信機能と、所定機能を発揮させる機能発揮機能とを有する前記他のハードウェアデバイスとしての1以上の第2ハードウェアデバイスと、
を含む情報処理システムにおいて、
前記制御プログラムは、前記1以上の第2ハードウェアデバイスの夫々に対応付けられたハードウェア部品を含むプログラミング部品が結合されることで定義され、
前記プログラム作製支援装置は、
前記制御プログラムにおいて、前記ユーザの所定操作により所定のハードウェア部品が指示されたことを検出する検出手段と、
前記1以上の第2ハードウェアのうち、前記検出手段により検出された前記所定のハードウェア部品に対応するものを対象第2ハードウェアとして、当該対象第2ハードウェアデバイスが指示された旨を示す制御信号を、前記第1ハードウェアデバイスを介して、当該対象第2ハードウェアに送信する制御を実行する送信制御手段と、
を備え、
前記第2ハードウェアデバイスは、
前記制御信号が受信された場合、自身が当該対象第2ハードウェアである旨を所定の形態で報知する報知手段
を備える、
情報処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システムに関する。
【背景技術】
【0002】
従来から、子供の教育を目的とした組み立て式玩具の提供は、広く普及しており、関連する技術は数多く提案されている(例えば、特許文献1)。
例えば、特許文献1に記載された技術によれば、簡単な配線やプログラミングによって組み立て式玩具を構築することができる組み立てブロックの提供がなされている。
この特許文献1に記載された技術によれば、年齢の低いユーザであっても、複雑な作業や操作を行うことなく、組み立て式玩具を構築することができる。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平10-108985号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上述の特許文献1の技術では、各組み立てブロックは、既存のプログラムによって単一に制御されているに過ぎず、組み立て式玩具の動作や制御の自由度には、限界があった。
即ち、例えば、上述の特許文献1の技術のみでは、各組み立てブロックの夫々の機能を組み合わせて、プログラムを作製するような処理を実行することはできなかった。
換言すれば、上述の特許文献1の技術のみでは、各組み立てブロックの夫々の機能を組み合わせるといった高度な処理を実行させるためには、別途、複雑なプログラムを作成する必要があった。
【0005】
本発明は、このような状況に鑑みてなされたものであり、ユーザが視覚的な操作によって、より容易に複雑なプログラムを作製することが出来る技術を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明の一態様の情報処理システムは、
ユーザの指示により制御プログラムの作製を支援するプログラム作製支援装置と、
前記プログラム作成支援装置と通信をする第1通信機能と、他のハードウェアデバイスと通信をする第2通信機能と、前記制御プログラムに基づいて前記他のハードウェアデバイスを制御する制御機能とを有する1以上の第1ハードウェアデバイスと、
前記第1ハードウェアデバイスと通信をする第3通信機能と、所定機能を発揮させる機能発揮機能とを有する前記他のハードウェアデバイスとしての1以上の第2ハードウェアデバイスと、
を含む情報処理システムにおいて、
前記制御プログラムは、前記1以上の第2ハードウェアデバイスの夫々に対応付けられたハードウェア部品を含むプログラミング部品が結合されることで定義され、
前記プログラム作製支援装置は、
前記制御プラグラムにおいて、前記ユーザの所定操作により所定のハードウェア部品が指示されたことを検出する検出手段と、
前記1以上の第2ハードウェアのうち、前記検出手段により検出された前記所定のハードウェア部品に対応するものを対象第2ハードウェアとして、当該対象第2ハードウェアデバイスが指示された旨を示す制御信号を、前記第1ハードウェアデバイスを介して、当該対象第2ハードウェアに送信する制御を実行する送信制御手段と、
を備え、
前記第2ハードウェアデバイスは、
前記制御信号が受信された場合、自身が当該対象第2ハードウェアである旨を所定の形態で報知する報知手段
を備える。
【発明の効果】
【0007】
本発明によれば、ユーザが視覚的な操作によって、より容易に複雑なプログラムを作製することが出来る技術を提供することができる。
【図面の簡単な説明】
【0008】
図1】本発明の一実施形態に係る情報処理システムの構成を示すブロック図である。
図2】本発明の一実施形態に係るユーザ端末のハードウェア構成の一例を示すブロック図である。
図3】本発明の一実施形態に係るベーシックコアのハードウェア構成の一例を示すブロック図である。
図4】本発明の一実施形態に係る機能モジュールのハードウェア構成の一例を示すブロック図である。
図5】本発明の一実施形態に係るベーシックコア及び機能モジュールが接続された状態の構成の一例を示す図である。
図6図2のユーザ端末、図3のベーシックコア及び図4の機能モジュールの機能的構成例を示す機能ブロック図である。
図7】本発明の一実施形態に係る情報処理システムを利用したプログラム作製処理に関する状態の遷移を示す状態遷移図である。
図8図2のユーザ端末が実行するプログラム作製処理に関し、ユーザ端末に機能モジュールを認識させ、その機能モジュールに対応するHパーツをプログラム作成画面に表示させる際にユーザ端末に実際に表示される画面と実機の一例を示す図である。
図9】機能モジュールに対応するHパーツをプログラム作成画面に表示させた後、ユーザがプログラム作成中にHパーツに対応する機能モジュールを確認する際に、ユーザ端末に実際に表示される画面と実機の一例を示す図である。
【発明を実施するための形態】
【0009】
以下、本発明の実施形態について、図面を用いて説明する。
【0010】
本発明は、ユーザが視覚的な操作によって、より容易に複雑なプログラムを作製するための技術的思想の創作である。
ユーザは、プログラム作製用に表示されるユーザインタフェース(以下、「プログラム作製画面」と呼ぶ)に表示された各種アイコンを操作することで、プログラムを作製することができる。
具体的には例えば、ユーザは、プログラム作製画面に表示された特定のハードウェアの動作を指定するプログラムの内容を示すアイコン(以下、「ハードウェアパーツ」又は「Hパーツ」と呼ぶ)及び特定のソフトウェアの実行を指定するプログラムの内容を示すアイコン(以下、「ソフトウェアパーツ」又は「Sパーツ」と呼ぶ)を視認することができる。
そして、ユーザは、これらのアイコンを任意に移動(例えば、Drag And Drop等)させることで、各種アイコンを組み合わせてプログラムを作製する。
このようにして作製されたプログラムは、例えば、組み立て式の玩具等に利用することができる。
つまり、本発明の一実施形態に係る情報処理システムは、容易な操作によってプログラムを作製することができるため、プログラムの仕組みや作成方法を子供に学ばせるための教材として極めて有用である。
【0011】
図1は、本発明の一実施形態に係る情報処理システムの構成を示すブロック図である。
図1に示す情報処理システムは、ユーザにより使用されるユーザ端末1と、m個のベーシックコア2-1乃至2-m(mは1以上の任意の整数値)と、m個の機能モジュール3-1乃至3-mとを含むシステムである。
さらに、ユーザ端末1は、ベーシックコア2-1乃至2-mの夫々と、各種方式、例えばNFC(Near Field Communication)、Bluetooth(登録商標)等の各種方式で通信を行う。
なお、以下、ベーシックコア2-1乃至2-mの夫々を個々に区別する必要がない場合、これらをまとめて「ベーシックコア2」と、機能モジュール3-1乃至3-mを個々に区別する必要がない場合、これらをまとめて「機能モジュール3」と呼ぶ。
【0012】
ここで、本実施形態で用いられる、ベーシックコア2及び機能モジュール3について簡単に説明する。
ベーシックコア2とは、後述する機能モジュール3と接続して使用するハードウェアデバイスであり、近距離無線通信(例えば、NFCの規格に準拠した通信)でユーザ端末1とのペアリングを行う。
ユーザ端末1は、所定のベーシックコア2-K(Kは、1乃至mのうち任意の整数値)とペアリングを行うことで、ベーシックコア2-Kと、ベーシックコア2-Kと接続された所定の機能モジュール3-Kとを認識する。
機能モジュール3-Kとは、例えば、温度センサ等の各種センサ、押しボタンスイッチ等の操作器具、LED(Light Emitting Diode)や液晶等の表示器具、モータや扇風機等の駆動器具等により構成されるハードウェアデバイスである。
【0013】
ここで、上述のユーザ端末1とベーシックコア2-Kとのペアリングについて説明する。本実施形態では、ベーシックコア2-Kに接続された機能モジュール3-Kの動作を少なくとも伴うプログラムの作製に際して、ユーザ端末1とベーシックコア2-Kとについて近距離無線通信を利用したペアリングを行う必要がある。
ペアリングとは、端的に言えば、近距離無線通信を用いて、ユーザ端末1に、ベーシックコア2-K及びそれに接続されている機能モジュール3-Kの種別や接続状態等を認識させることをいう。
なお、詳細については後述するが、ユーザ端末1では、機能モジュール3-Kの種別や接続の状態等を認識すると、接続された機能モジュール3-Kに対応するHパーツがプログラム作製画面に表示される。
【0014】
図2は、本発明の一実施形態に係るユーザ端末1のハードウェア構成を示すブロック図である。
【0015】
ユーザ端末1は、タブレット等で構成される。
ユーザ端末1は、CPU(Central Processing Unit)21と、ROM(Read Only Memory)22と、RAM(Random Access Memory)23と、バス24と、入出力インターフェース25と、タッチ操作入力部26と、表示部27と、入力部28と、記憶部29と、第一近距離無線通信部30と、第二近距離無線通信部31と、通信部32と、ドライブ33と、リムーバブルメディア34とを備えている。
【0016】
CPU21は、ROM22に記録されているプログラム、又は、記憶部29からRAM23にロードされたプログラムに従って各種の処理を実行する。
RAM23には、CPU21が各種の処理を実行する上において必要な情報等も適宜記憶される。
【0017】
CPU21、ROM22及びRAM23は、バス24を介して相互に接続されている。このバス24にはまた、入出力インターフェース25も接続されている。入出力インターフェース25には、タッチ操作入力部26、表示部27、入力部28、記憶部29、第一近距離無線通信部30、通信部32及びドライブ33が接続されている。また、第二近距離無線通信部31も設けられている。
【0018】
タッチ操作入力部26は、例えば表示部27に積層される静電容量式又は抵抗膜式(感圧式)の位置入力センサにより構成され、タッチ操作がなされた位置の座標を検出する。
表示部27は、液晶等のディスプレイにより構成され、プログラム作製に関する画像等、各種画像を表示する。
このように、本実施形態では、タッチ操作入力部26と表示部27とにより、タッチパネルが構成されている。
【0019】
入力部28は、各種ハードウェア等で構成され、ユーザの指示操作に応じて各種情報を入力する。
記憶部29は、ハードディスクやDRAM(Dynamic Random Access Memory)等で構成され、各種情報を記憶する。
第一近距離無線通信部30は、例えば、NFCの規格に従った方式で近距離無線通信を行う制御を実行する。具体的には例えば、上述の通り、ユーザ端末1とベーシックコア2は、NFCの規格に従った方式で近距離無線通信をして、ペアリングを行う。
第二近距離無線通信部31は、例えば、Bluetoothの規格に従った方式で近距離無線通信を行う制御を実行する。具体的には例えば、ユーザ端末1で作製したプログラムの実行結果(コマンド等を含む)を、Bluetoothの規格に従った方式の近距離無線通信で送信する。
通信部32は、第一近距離無線通信部30及び第二近距離無線通信部31とは別個独立して、インターネット等を介して他の装置との間で行う通信を制御する。
【0020】
ドライブ33は、必要に応じて設けられる。ドライブ33には、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等よりなる、リムーバブルメディア34が適宜装着される。ドライブ33によってリムーバブルメディア34から読み出されたプログラムは、必要に応じて記憶部29にインストールされる。
また、リムーバブルメディア34は、記憶部29に記憶されている各種情報も、記憶部29と同様に記憶することができる。
【0021】
図3は、本発明の一実施形態に係るベーシックコア2のハードウェア構成を示すブロック図である。
【0022】
ベーシックコア2は、所定のハードウェアデバイス等で構成される。
ベーシックコア2は、CPU41と、ROM42と、RAM43と、バス44と、第一近距離無線通信部45と、第二近距離無線通信部46と、接続部47と、電源部48とを備えている。
【0023】
ベーシックコア2の構成のうち、CPU41、ROM42、RAM43、バス44、第一近距離無線通信部45、第二近距離無線通信部46については、ユーザ端末1の構成と基本的に同様であるので、ここではそれらの説明は省略する。
【0024】
接続部47は、他のハードウェアデバイス(例えば、図1の機能モジュール3)との接続を行う。
また、接続部47は、モジュール間通信部51と、モジュール間電力伝達部52とを備える。
モジュール間通信部51は、例えば、LAN(Local Area Network)の規格に従った方式により、データ通信を行う制御を実行する。
モジュール間電力伝達部52は、後述する電源部48からの電力の供給を受けて、他のハードウェアデバイス(例えば、図1の機能モジュール3)へと、電力を伝達する。
電源部48は、電池等のバッテリーである。電源部48は、ベーシックコア2に電力を供給するとともに、モジュール間電力伝達部52を介して、適宜、機能モジュール3へ電力を供給する。
【0025】
図4は、本発明の一実施形態に係る機能モジュール3のハードウェア構成を示すブロック図である。
【0026】
機能モジュール3は、所定のハードウェアデバイス等で構成される。
機能モジュール3は、CPU61と、ROM62と、RAM63と、バス64と、接続部67と、機能ハードウェア68と、電力供給部69と、発光部70とを備えている。
【0027】
機能モジュール3の構成のうち、CPU61、ROM62、RAM63、バス64、及び接続部67については、ユーザ端末1若しくはベーシックコア2の構成と基本的に同様であるので、ここではそれらの説明は省略する。
なお、機能モジュール3にも、ベーシックコア2と同様に、第一近距離無線通信部と、第二近距離無線通信部とが設けられてもよい。
【0028】
機能ハードウェア68は、例えば、温度センサやブザーであり、夫々の機能モジュールが固有の機能を発揮するためのハードウェア等である。
即ち、ユーザが作製したプログラムは、機能ハードウェア68が適切にその機能を発揮することで、実際のハードウェア上に反映されるのである。
ここで、本実施形態において、プログラムの実行には、2種類の実行方法が存在する。即ち、ユーザ端末1で作製したプログラムを、ユーザ端末1のみで仮想的に実行する種類を、「シミュレーションによる実行」と呼ぶ。他方、ユーザ端末1で作製したプログラムの実行結果に基づいて機能ハードウェア68等を動作させる種類を、「実機による実行」と呼ぶ。
【0029】
電力供給部69は、モジュール間電力伝達部72を介して取得した電力、又は外部の電源(例えば図5のバッテリーユニットPP)から供給された電力を機能モジュール3へ供給する。
【0030】
発光部70は、所定の制御信号が受信された場合、電力供給部69から供給された電力を用いて発光する。所定の制御信号の詳細について、即ち、発光部70が発光する条件等については、図6乃至9を用いて後述する。
【0031】
次に、図5を用いて、ベーシックコア2-E(Eは、1乃至mのうち任意の整数値)及び機能モジュール3-Eの接続形態の詳細について説明する。
図5は、本発明の一実施形態に係るベーシックコア2-E及び機能モジュール3-Eが接続された状態の構成の一例を示す図である。
【0032】
図5には、ベーシックコア2-E、機能モジュール3-E及びバッテリーユニットPPが例示されている。
ベーシックコア2-Eには、バッテリーユニットBU(例えば、後述する図6の電源部48)、シリアルポートSP及び近距離無線通信部BT(例えば、後述する図6の第2近距離無線通信部46)が備えられている。
バッテリーユニットBUは、例えば、電池等のバッテリーであり、ベーシックコア2-Eや機能モジュール3-Eに電力を供給する。
シリアルポートSPは、ベーシックコア2-Eと他のハードウェア等とを接続するための接続口(接続コネクタ)である。
図5の例では、ベーシックコア2-Eには、シリアルポートSPが備えられ、機能モジュール3-Eには、シリアルポートPSが備えられている。そして、ベーシックコア2-Eと機能モジュール3-Eは、この二つのシリアルポートSP、PSを介して接続されている。
近距離無線通信部BTは、他のハードウェア等と所定の規格(例えば、Bluetooth)に従った方式で近距離無線通信を行うための制御部やアンテナ等が搭載されている。
図5の例では、(図5においては、図示せぬ)ユーザ端末1と、近距離無線通信部BTを備えたベーシックコア2-Eとは、Bluetoothの規格に従った方式で近距離無線通信を行う。
具体的に例えば、ユーザ端末1で作製されたプログラムの実行結果(コマンドや制御信号等)は、ベーシックコア2-Eにも送信される。さらに言えば、ベーシックコア2-Eでは、ユーザ端末1から送信されてきた当該プログラムの実行結果(コマンドや制御信号等)を取得し、さらに、その結果を、機能モジュール3-Eへと送信する。
【0033】
また、機能モジュール3-Eは、タイヤT(例えば、図4の機能ハードウェア68)を備えている。そして、上述の通り、機能モジュール3-Eは、ベーシックコア2-Eから送信されてきた上述のプログラムの実行結果(コマンドや制御信号等)を取得する。図5の例の機能モジュール3-Eは、ユーザ端末1で作製されたプログラムの実行結果(コマンドや制御信号等)に従って、タイヤTを駆動させる。
ここで、図5の例では、機能モジュール3-Eには、バッテリーユニットPPが接続されている。このバッテリーユニットPPは、外部電源として機能モジュール3-Eに電力を供給する。なお、上述したように、ベーシックコア2の電源部48(図3)等から、機能モジュール3-Eに電力の供給が可能であるならば、バッテリーユニットPPは必須な構成要素ではない。
【0034】
このようなユーザ端末1、ベーシックコア2及び機能モジュール3の各種ハードウェアと各種ソフトウェアの協働によりプログラム作製処理の実行が可能となる。
ここで、プログラム作製処理とは、ベーシックコア2に接続された機能モジュール3を1以上機能させるためのプログラムを作製するための処理をいう。
【0035】
このプログラム作製処理を実現すべく、ユーザ端末1、ベーシックコア2及び機能モジュール3は、図6に示すような機能的構成を有している。
図6は、図1のユーザ端末1、ベーシックコア2及び機能モジュール3の機能的構成の一例を示す機能ブロック図である。
図6に示すように、ユーザ端末1のCPU21においては、ペアリング部101と、プログラム作製部102と、プログラム実行部103と、表示制御部104と、通信制御部105とが機能する。
また、ユーザ端末1の記憶部29の一領域には、プログラム作製部102で作製されたプログラムを格納するプログラム格納部500と、各種Sパーツが格納されているSパーツDB(Software Parts Data Base)600とが設けられている。
そして、ベーシックコア2のCPU41においては、ペアリング部201と、端末通信制御部202と、機能モジュール通信制御部203と、主制御部204とが機能する。
さらに、機能モジュール3のCPU61においては、主制御部241と、機能発揮部242とが機能する。
【0036】
ユーザ端末1のペアリング部101は、第一近距離無線通信部30を介して、ユーザ端末1とベーシックコア2とのペアリングを行う。なお、このペアリングは、本実施形態ではNFCに準拠した近距離無線通信で行われるが、これは例示に過ぎず、任意の方式の通信で行われてもよい。
また、ペアリング部101には、接続確認部111が設けられる。接続確認部111は、ユーザ端末1とペアリングしたベーシックコア2及びそれに接続された機能モジュール3の種別や接続の状況を確認する。
なお、接続確認部111に確認された機能モジュール3の種別や接続の状況は、表示制御部104を介して、プログラム作製画面に表示される。
【0037】
プログラム作製部102は、ユーザのタッチ操作を受付けて、実際にプログラムの作製を行う。
ここで、プログラム作製部102には、Hパーツ供給部121と、Sパーツ供給部122と、モジュール結合部123と、確定部124と、実機確認部125とが設けられる。
Hパーツ供給部121は、ペアリング部101によりペアリングが行われたベーシックコア2に接続されている機能モジュール3の種別に対応するHパーツを、表示制御部104を介してプログラム作製画面へ表示する。
Sパーツ供給部122は、適宜、SパーツDB600からSパーツを抽出して、表示制御部104を介してプログラム作製画面へ表示する。
モジュール結合部123は、ユーザのタッチ操作に応じて、各種Hパーツ及び各種Sパーツを結合する。
最終的に作製されるプログラムにおいては、このように結合された各種Hパーツ及びSパーツに指定されたプログラムの内容が連続的に実行される。
確定部124は、ユーザに作製されたプログラムの内容を確定し、その作製されたプログラムをプログラム格納部500へ格納する。
【0038】
実機確認部125は、プログラム作製画面に表示されたHパーツがどの実機、即ち、どの機能モジュール3であるのかをユーザが確認するための制御を実行する。
具体的には、まず、実機確認部125は、プログラム作製画面においてユーザのHパーツに対する所定操作に基づいて、そのHパーツがユーザにより指示された旨を検出する。
そして、実機確認部125は、機能モジュール3のうち、検出されたHパーツに対応するものを対象機能モジュールとして、対象機能モジュールが指示された旨を示す制御信号を、ベーシックコア2を介して、対象機能モジュールに送信する制御を実行する。
具体的には、実機確認部125は、後述する通信制御部105を用いて、対象機能モジュールが指示された旨を示す制御信号を、対象機能モジュールに送信する制御を実行する。
【0039】
プログラム実行部103は、プログラム格納部500に格納されたプログラムのうちから、ユーザが実行を望むプログラムを抽出して実行する。
ここで、プログラム実行部103には、シミュレーション部131と、実機部132とが設けられている。
シミュレーション部131は、ユーザに作製されたプログラムによって、ベーシックコア2及び機能モジュール3を動作させることを目的とせずに、プログラム実行部103によって抽出されたプログラムを仮想的に実行する。
即ち、シミュレーション部131は、実際に作製されたプログラムが正常に実行できるか等をチェックするためのシミュレーションを行う。なお、プログラムの実行結果は、後述するように、表示制御部104を介して表示部27に表示される。
実機部132は、ユーザに作製されたプログラムによって、ベーシックコア2及び機能モジュール3を動作させることを目的として、プログラム実行部103によって抽出されたプログラムを実行する。
即ち、プログラム実行部103は、作製されたプログラムの実行結果(コマンドや制御信号等)を、ベーシックコア2及び機能モジュール3へと送信し、機能モジュール3に機能を発揮させる。
なお、プログラムの実行結果は、表示制御部104を介して表示部27に表示されるだけでなく、後述するように、通信制御部105によってベーシックコア2へと送信される。
【0040】
表示制御部104は、前述した各種情報等を表示部27に表示するための制御を実行する。
【0041】
通信制御部105は、プログラム実行部103の実機部132で実行されたプログラムの実行結果を第二近距離無線通信部31を介してベーシックコア2に送信するための制御等を行う。
なお、前述の通り、本実施形態では、第二近距離無線通信部31は、Bluetoothの規格に従った方式で近距離無線通信を行う。
【0042】
また、通信制御部105は、上述の実機確認部125の機能が発揮された結果として、対象機能モジュールが指示された旨を示す制御信号を、ベーシックコア2を介して、対象機能モジュールに送信する制御を実行する。
即ち、通信制御部105は、機能モジュール3のうち、実機確認部125により検出されたHパーツに対応するものを対象機能モジュールとして、対象機能モジュールが指示された旨を示す制御信号を、ベーシックコア2を介して、対象機能モジュールに送信する制御を実行する。
【0043】
ベーシックコア2のペアリング部201は、第一近距離無線通信部45を介して、ユーザ端末1とペアリングを行う。
ここで、第一近距離無線通信部45は、ベーシックコア2においてシステムと独立している。そこで、第一近距離無線通信部45には、第二近距離無線通信部46の接続情報(例えばMACアドレス)が予め書き込まれており、ペアリング部201は、そのMACアドレスを読み込んで、Bluetoothによるユーザ端末1とのペアリングを実現している。
【0044】
端末通信制御部202は、例えば、ユーザ端末1から送信されてきたプログラムの実行結果を第二近距離無線通信部46を介して取得するための制御等を実行する。
【0045】
ここで、プログラムの実行時において、当該プログラムで機能を発揮させる機能モジュール3は、所定のベーシックコア2と接続されている必要がある。
即ち、少なくともプログラムの実行時において、ベーシックコア2と機能モジュール3は、接続部47と接続部67によって接続されている。
ここで、少なくともプログラムの実行時としたのは、ベーシックコア2と機能モジュール3との接続は、ベーシックコア2とユーザ端末1とのペアリングとは独立して行うことができるからである。つまり、ペアリング前にベーシックコア2と機能モジュール3との接続がなされていてもよいが、ペアリング後にベーシックコア2と機能モジュール3との接続がなされていてもよい。後者の場合、機能モジュール3から自身のユニークIDがユーザ端末1に送信されることで、ユーザ端末1はその機能モジュール3が何であるのか(どのような機能を発揮させるものか)を認識することができる。
また、ペアリング後に機能モジュール3をベーシックコア2から外すこともできる。その際は、ベーシックコア2は、機能モジュール3が外れたことをユーザ端末に1に通知する。ユーザ端末1は、UI(後述する図8のユーザ表示画面等)に外れた旨を表示させる。より正確には本実施形態では、ユーザ端末1は、所定の機能モジュール3がベーシックコア2から外された場合は、当該所定の機能モジュール3に対応するHパーツを示すアイコンがUIにおいて非表示状態になる。
このようにして、ペアリング後の機能モジュール3のホットスワップが実現されている。即ち、ユーザにとっては、ペアリングを一旦してしまえば、あとはベーシックコア2に対する機能モジュール3の抜き差しだけでよい。この抜き差しの状態は、ユーザ端末1上のUIでも追従される。
いずれにしても、ベーシックコア2と機能モジュール3が接続されている場合、ベーシックコア2の機能モジュール通信制御部203は、接続部47を介して接続された機能モジュール3との通信の制御を実行する。
例えば、機能モジュール通信制御部203は、後述する主制御部204で出力された動作指示等を機能モジュール3へ送信する。
【0046】
主制御部204は、ベーシックコア2で実行される各種処理の主たる制御を実行する。
例えば、主制御部204は、端末通信制御部202で取得したプログラムの実行結果に基づいて、機能モジュール3の機能を発揮させるための動作指示等を出力する。
【0047】
機能モジュール3の主制御部241は、機能モジュール3で実行される各種処理の主たる制御を実行する。
例えば、ベーシックコア2から送信されてきた動作指示を、接続部67を介して、取得する。
【0048】
機能発揮部242は、主制御部241で取得された動作指示を、機能ハードウェア68に実行させるための制御を実行する。
即ち、機能発揮部242は、主制御部241で取得された動作指示を機能ハードウェア68に実行させることで、機能モジュール3の機能を発揮させる。
【0049】
発光制御部243は、実機確認部125が機能した結果、ベーシックコア2を介して、対象機能モジュールが指示された旨を示す制御信号が受信された場合、その機能モジュール3自身が対象機能モジュールである旨を、発光することで報知するための制御を実行する。
即ち、発光制御部243は、機能モジュール3自身が対象機能モジュールである旨を示す制御信号が受信された場合、発光部70を点灯や点滅させることにより、ユーザに自身が対象機能モジュールを報知することができる。
【0050】
なお、図6において、電力供給部69は、モジュール間電力伝達部72を介して取得した電力を機能モジュール3へ供給する様子のみが図示されているが、上述したように、外部の電源(例えば図5のバッテリーユニットPP)から供給された電力を機能モジュール3へ供給することもできる。
【0051】
図7は、本発明の一実施形態に係る情報処理システムを利用したプログラム作製処理に関する状態の遷移を示す状態遷移図である。
図7において、各状態は、1つの楕円形で示されており、夫々の状態は、SPを含む符号により判別される。
1つの状態から1つの状態への状態遷移は、所定の条件(以下、「状態遷移条件」と呼ぶ)が満たされると実行される。
このような状態遷移条件は、図7おいては、1つの状態から1つの状態への遷移を表す矢印に、Aを含む符号を付して表されている。
【0052】
本実施形態においては、図7に示すように、プログラム作製状態SP1が基本の状態になる。
プログラム作製状態SP1において、ユーザは、ユーザ端末1とベーシックコア2を近接させることでペアリングを行う。
なお、ここでいう近接されるとは、NFC規格に従った方式で近距離無線通信を行うのに有効な距離であり、一般に10cm程度の距離まで近接させることを言う。
即ち、ユーザが、ユーザ端末1とベーシックコア2とを10cm程度の距離まで近接させることで、状態遷移条件A1が満たされる。
すると、状態は、ペアリング状態SP2へと遷移する。これにより、Hパーツ供給部121は、Hパーツを表示制御部104を介してプログラム作製画面を表示する。
そして、ペアリング後、ユーザが一定の時間、操作を行わなかった場合には、状態遷移条件A2が満たされる。
すると、状態は、プログラム作製状態SP1へと再び遷移する。
【0053】
ペアリング状態SP2において、ユーザが、所定の操作子(図示せぬプログラム実行ボタン等)を押下すると、状態遷移条件A3が満たされる。
すると、状態は、プログラム実行状態SP3に遷移する。
そして、先ほどと同様に、プログラム実行状態SP3において、ユーザが、ユーザ端末1とベーシックコア2を近接させることで、状態遷移条件A4が満たされる。
すると、状態は、ペアリング状態SP2へと再び遷移する。
【0054】
プログラム作製状態SP1において、ユーザが、プログラムの作製が終了して、プログラムの実行を指示する所定の操作子(図示せぬプログラム実行ボタン等)を押下すると、状態遷移条件A12が満たされる。
すると、状態は、プログラム実行状態SP3に遷移する。
なお、プログラム実行状態SP3において、ユーザが、プログラムの追加や変更を所望した場合、所定の操作子(図示せぬプログラム作製ボタン等)を押下すると、状態遷移条件A13が満たされる。
すると、状態は、プログラム実行状態SP1に遷移する。
【0055】
ここで、プログラム実行状態SP3には、上述したようにシミュレーション状態と実機状態2つの状態が存在する。
プログラム実行状態SP3において、これらの2つの状態は、ユーザが所定の操作子(図示せぬシミュレーションボタン等)を押下することで、夫々の状態での、状態遷移条件A10又A11を満たす。
このように、プログラム実行状態SP3において、シミュレーション状態と実機状態は、適宜、遷移することができる。
【0056】
プログラム実行状態SP3において、プログラム実行後、ユーザが所定の操作子(図示せぬプログラム実行キャンセルボタン等)を押下すると、状態遷移条件A5が満たされる。
すると、状態は、休止状態SP4へと遷移する。
そして、休止状態SP4において、ユーザが所定の操作子(図示せぬプログラム実行ボタン等)を押下すると、状態遷移条件A6が満たされる。
すると、状態は、プログラム実行状態SP3へと遷移する。
【0057】
休止状態SP4において、ユーザが、所定の操作子(図示せぬプログラム作製アプリケーションの起動ボタン等)を押下すると状態遷移条件A7が満たされる。
すると、状態は、プログラム作製状態SP1へと遷移する。
そして、プログラム作製状態SP1において、ユーザが、所定の操作子(図示せぬプログラム作製キャンセルボタン等)を押下すると、遷移条件A8が満たされる。
すると、状態は、休止状態SP4へと遷移する。
なお、図7に示す通り、ペアリング状態SP2と休止状態SP4については、直接遷移することも可能である。
【0058】
次に、図8及び図9を用いて、ユーザ端末1の表示部27に表示されるプログラム作製画面を用いて、ユーザが対象機能モジュールを確認する方法の例について説明する。
図8は、図2のユーザ端末1が実行するプログラム作製処理に関し、ユーザ端末に機能モジュールを認識させ、その機能モジュールに対応するHパーツをプログラム作製画面に表示させる際にユーザ端末に実際に表示される画面と実機の一例を示す図である。
図9は、機能モジュールに対応するHパーツをプログラム作製画面に表示させた後、ユーザがプログラム作製中にHパーツに対応する機能モジュールを確認する際に、ユーザ端末に実際に表示される画面と実機の一例を示す図である。
【0059】
図8において、左半分にはユーザに表示されているプログラム作製画面(以下、「ユーザ表示画面」と呼ぶ)が、右半分には実際に作製されたプログラムに応じて、動作する各種ハードウェアの模式図(以下、「ハードウェア模式図」と呼ぶ)が示されている。
まず、図8(A)は、ユーザ端末1に、いずれのベーシックコア2のペアリングもなされていない状況を示している。
即ち、図8(A)のハードウェア模式図を見ると、ユーザ端末1には、ベーシックコア2-O及び機能モジュール3-O(Oは、1乃至mのうち任意の整数値)と、ベーシックコア2-P及び機能モジュール3-P(Pは、1乃至mのうちO以外の任意の整数値)のいずれもペアリングされていない。
なお、機能モジュール3-Oは、押しボタンの機能を発揮することができる。機能モジュール3-Pは、ブザーの機能を発揮することができる。
そして、図8(A)のユーザ表示画面を見ると、プログラム作製時表示領域DAとHパーツ表示領域DHAにはアイコンは表示されていない。なお、Sパーツ表示領域DSAには、タイマーのアイコンが表示されている。
【0060】
図8(B)は、ユーザ端末1と、機能モジュール3-Oが接続されたベーシックコア2-Oとのペアリングがなされ、かつ、ユーザ端末1と、機能モジュール3-Pが接続されたベーシックコア2-Pとのペアリングがなされた状況を示している。
そして、図8(B)のユーザ表示画面を見ると、ペアリングがなされた機能モジュール3-Oに対応する押しボタンのアイコン及び機能モジュール3-Pに対応するブザーのアイコンがHパーツ表示領域DHBに夫々表示されている。
このように、ユーザは、図8(A)及び図8(B)に示すように、ユーザ端末1に機能ハードウェア3-O及び3-Pを認識させることができる。このように機能ハードウェアが認識されたことを前提として、ユーザは、以下に示す操作等をすることが可能となる。
【0061】
図9(C1)及び図9(C2)のユーザ表示画面を見ると、プログラム作製時表示領域DCには、2つの押しボタンのアイコン、タイマー(2s)、ブザーのアイコンが配置されている。
ユーザは、このように、ユーザ表示画面に表示されたアイコンを視認しながら、各種Hパーツ及び各種Sパーツを自由に組み合わせて結合させることで、夫々のアイコンが指定する内容を組み合わせて1つのプログラムを製作し、そのプログラムを実行させることができる。
なお、ユーザは、複数のアイコン(Hパーツ)を操作してプログラミングを行うのが通常である。即ち、図8及び図9は、複数の押しボタンや複数のブザー等を含む多数の機能モジュールを用いたプログラムを作製する様子のうち、一部のみを図示したものであると言える。
【0062】
ここで、以下、ユーザは、機能モジュール3-Qに対して操作した2秒後にブザーの機能モジュール3-Pが鳴動するプログラムを作製したいものとして説明する。
この場合、ユーザは、プログラム作製時表示領域DCやHパーツ表示領域DHCに表示されたHパーツのうち、何れの押しボタンのアイコン(Hパーツ)が機能モジュール3-Qに対応付けられているかを把握し、プログラミングを行う必要が有る。
ユーザは、以下に説明するように操作することで、Hパーツに対応付けられた機能モジュール3を把握することができる。
【0063】
即ち、ユーザは、指Fを用いた操作により、押しボタンのアイコンのHパーツを指示する。具体的には例えば、ユーザは、プログラム作製時表示領域DCに表示されたHパーツに対して所定操作(例えば、所定時間内での連続タッチ操作)を行う。
【0064】
図9(C1)に示すように、ユーザは、プログラム作製時表示領域DCの右下に表示されたHパーツを指示したものとする。この結果、図6を用いて説明した実機確認部125等が機能することにより、押しボタン(機能モジュール3-O)に備えられた発光部70が発光する。
これにより、ユーザは、自身が所定操作を行ったHパーツ(プログラム作製時表示領域DCのうち右下のHパーツ)がその押しボタン(機能モジュール3-O)に対応付けられたものであることを把握することができる。
【0065】
また、図9(C2)に示すように、ユーザは、プログラム作製時表示領域DCの右上に表示されたHパーツを指示する。この結果、図6を用いて説明した実機確認部125等が機能することにより、押しボタン(機能モジュール3-Q)に備えられた発光部70が発光する。
これにより、ユーザは、自身が所定操作を行ったHパーツ(プログラム作製時表示領域DCのうち右上のHパーツ)がその押しボタン(機能モジュール3-Q)に対応付けられたものであることを把握することができる。
【0066】
このように、ユーザは、機能モジュール3-O及び3-Qに備えられた発光部70により、複数のHパーツの夫々が何れの機能モジュール3に対応付けられているかを把握することができるのである。
【0067】
図9(D)のユーザ表示画面を見ると、プログラム作製時表示領域DDには、右上の押しボタンのアイコン、タイマー(2s)、ブザーのアイコンの順に、矢印により夫々結合されている。
ユーザは、このように、ユーザ表示画面に表示されたアイコンを視認しながら、各種Hパーツ及び各種Sパーツを自由に組み合わせて結合させることで、夫々のアイコンが指定する内容を組み合わせて1つのプログラムを製作し、そのプログラムを実行させることができる。
図9(D)のハードウェア模式図を見ると、同図のユーザ表示画面で示されるプログラムが実行された結果として、押しボタン(機能モジュール3-Q)が押されると、その2秒後に、ブザー(機能モジュール3-P)が鳴るという動作が実現されることがわかる。
【0068】
以上、図8及び図9では、説明の簡単ため押しボタン(機能モジュール3-Q)とブザー(機能モジュール3-P)を用いて説明した。しかしながら、実際には上述したように、多数の機能モジュールが用いられたり、同一種の機能モジュールが複数個用いられたりするのが通常である。
即ち例えば、ユーザは、複数の押しボタンの機能モジュール3を用いたプログラミングを行うことが有る。この場合、ペアリングの結果としてプログラム作製時表示領域DDやHパーツ表示領域DHDには、複数の押しボタンのアイコン(Hパーツ)が表示される。
ユーザは、上述のような操作を行うことで、何れの押しボタンのアイコン(Hパーツ)が何れの機能モジュール3と対応付けられているかを容易に把握することができるのである。
【0069】
以上本発明の一実施形態について説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
【0070】
例えば、図8に示す実施形態では、機能モジュール3-O及び機能モジュール3-Pとして、押しボタンとブザーが採用されているが、機能モジュール3の発揮する機能は特に上述した実施形態には限定されない。
以下、即ち例えば、モータや、スピーカ、Webカメラ等、各種各様なものが機能モジュール3として採用され得る。
【0071】
また、上述の実施形態では、機能モジュール3自身が対象機能モジュールである旨を報知するため、発光部70が採用されていたが、特にこれに限定されない。
即ち、機能モジュール3は、制御信号が受信された場合、自身が対象機能モジュールである旨を所定の形態で報知することができれば足りる。
具体的には例えば、機能モジュール3は、ブザーを備えていてもよい。この場合、機能モジュールは、発光ではなく音の形態で自身が対象機能モジュールである旨を報知することができる。
また例えば、機能モジュール3は、自身の機能を所定期間だけ発揮させることで自身が対象機能モジュールである旨を報知してもよい。この場合、例えば、機能モジュール3がモータのときには、モータを所定期間(例えば1秒)機能させることで、自身が対象機能モジュールである旨を報知してもよい。
また例えば、プログラム作製画面上において、接続された2以上の機能モジュールについて、その接続に係る線を操作することにより、その2以上の機能モジュールの両方が自身が対象機能モジュールである旨を所定の形態で報知してもよい。即ち、図9の例においては、ユーザは、指Fを用いて矢印部に所定操作を行うことにより、機能モジュール3-O及び3-Pの両方が自身が対象機能モジュールである旨を発光の形態で報知してもよい。これにより、ユーザが操作しているプログラムに関与している機能モジュールが何れであるのかを1度の所定操作で把握することができる。
【0072】
本発明は、様々な実施形態により実施することが可能であるが、多くの実施形態において、特に子供の教育用の組み立て式玩具に使用するプログラムを作製するのに極めて有用である。
プログラム作製画面に表示されたアイコンを視覚的に確認することができるため、ユーザが子供であっても、安全かつ容易にプログラムを作製することができるし、また、自身で作製したプログラムに応じて、実機によって動作させることができるため、子供は飽きることなく、プログラムの作製を楽しむことができる。
このように、子供に楽しみながらプログラムの作製を行わせることで、子供は、一般に触れることが困難であるプログラムについて、慣れ親しむことができるのである。
【0073】
また例えば、上述の実施形態では、ユーザ端末1とベーシックコア2のペアリングは、NFC規格に従った方式での近距離無線通信により行っているが、これに限定されない。ペアリングは、近距離無線通信に限らず、いかなる手段によってペアリングを行ってもよい。
さらに言えば、上述の実施形態では、ユーザ端末1で作製したプログラムの実行結果をBluetooth等の規格に従った方式で近距離無線通信を利用して送信しているが、特にこれに限定されない。作製したプログラムは、近距離無線通信に限らず、いかなる手段を利用して送信してもよい。
【0074】
また例えば、上述の本実施形態では、ベーシックコア2の数と機能モジュール3の数をともにmとして説明を行ったが、特にこれに限定されない。即ち、ベーシックコア2の数と機能モジュール3の数は、同一でも構わないし、また、異なっていても構わない。
つまり、1台のベーシックコア2に対して、s台(sは1以上の任意の整数値)の機能モジュール3を接続してもよい。
【0075】
また例えば、上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。
換言すると、図6の機能的構成は例示に過ぎず、特に限定されない。
即ち、上述した一連の処理を全体として実行できる機能が情報処理システムに備えられていれば足り、この機能を実現するためにどのような機能ブロックやデータベースを用いるのかは特に図6の例に限定されない。また、機能ブロックやデータベースの存在場所も、図6に特に限定されず、任意でよい。
また、1つの機能ブロックは、ハードウェア単体で構成してもよいし、ソフトウェア単体で構成してもよいし、それらの組み合わせで構成してもよい。
【0076】
また例えば、一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータ等にネットワークや記録媒体からインストールされる。
コンピュータは、専用のハードウェアに組み込まれているコンピュータであっても良い。
また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えばサーバの他汎用のスマートフォンやパーソナルコンピュータであってもよい。
【0077】
また例えば、このようなプログラムを含む記録媒体は、ユーザにプログラムを提供するために装置本体とは別に配布される図示せぬリムーバブルメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される記録媒体等で構成される。
【0078】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的或いは個別に実行される処理をも含むものである。
また、本明細書において、システムの用語は、複数の装置や複数の手段等より構成される全体的な装置を意味するものとする。
【0079】
以上を換言すると、本発明が適用される情報処理システムは、次のような構成を有する各種各様の実施形態を取ることができる。
【0080】
ユーザの指示により制御プログラムの作製を支援するプログラム作製支援装置(例えば、図6のユーザ端末1)と、
前記プログラム作成支援装置と通信をする第1通信機能と、他のハードウェアデバイスと通信をする第2通信機能と、前記制御プログラムに基づいて前記他のハードウェアデバイスを制御する制御機能とを有する1以上の第1ハードウェアデバイス(例えば、図6のベーシックコア2)と、
前記第1ハードウェアデバイスと通信をする第3通信機能と、所定機能を発揮させる機能発揮機能とを有する前記他のハードウェアデバイスとしての1以上の第2ハードウェアデバイス(例えば、図6の機能モジュール3)と、
を含む情報処理システムにおいて、
前記制御プログラムは、前記1以上の第2ハードウェアデバイスの夫々に対応付けられたハードウェア部品を含むプログラミング部品が結合されることで定義され、
前記プログラム作製支援装置は、
前記制御プラグラムにおいて、前記ユーザの所定操作により所定のハードウェア部品が指示されたことを検出する検出手段(例えば、図6の実機確認部125)と、
前記1以上の第2ハードウェアのうち、前記検出手段により検出された前記所定のハードウェア部品に対応するものを対象第2ハードウェアとして、当該対象第2ハードウェアデバイスが指示された旨を示す制御信号を、前記第1ハードウェアデバイスを介して、当該対象第2ハードウェアに送信する制御を実行する送信制御手段(例えば、図6の通信制御部105)と、
を備え、
前記第2ハードウェアデバイスは、
前記制御信号が受信された場合、自身が当該対象第2ハードウェアである旨を所定の形態で報知する報知手段(例えば、図6の発光部70)
を備えれば足りる。
【0081】
これにより、ユーザは、視覚的に作製するプログラミングにおいて、表示されたハードウェア部品が、何れの第2ハードウェアデバイスであるのかが報知される。即ち、ユーザは、より容易にプログラムを作製することが出来る。
【符号の説明】
【0082】
1・・・ユーザ端末、2・・・ベーシックコア、3・・・機能モジュール、21,41,61・・・CPU、26・・・タッチ操作入力部、27・・・表示部、32・・・通信部、33・・・ドライブ、34・・・リムーバブルメディア、47・・・接続部、48・・・電源部、51・・・モジュール間通信部、52・・・モジュール間電力伝達部、68・・・機能ハードウェア、70・・・発光部、72・・・モジュール間電力伝達部、101・・・ペアリング部、102・・・プログラム作製部、103・・・プログラム実行部、104・・・表示制御部、105・・・通信制御部、111・・・接続確認部、121・・・Hパーツ供給部、122・・・Sパーツ供給部、123・・・モジュール結合部、124・・・確定部、125・・・実機確認部、131・・・シミュレーション部、132・・・実機部、201・・・ペアリング部、202・・・端末通信制御部、203・・・機能モジュール通信制御部、204・・・主制御部、241・・・主制御部、242・・・機能発揮部、243・・・発光制御部、500・・・プログラム格納部、600・・・SパーツDB
図1
図2
図3
図4
図5
図6
図7
図8
図9