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

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

▶ VIVITA株式会社の特許一覧

<>
  • 特開-情報処理装置 図1
  • 特開-情報処理装置 図2
  • 特開-情報処理装置 図3
  • 特開-情報処理装置 図4
  • 特開-情報処理装置 図5
  • 特開-情報処理装置 図6
  • 特開-情報処理装置 図7
  • 特開-情報処理装置 図8
  • 特開-情報処理装置 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022084961
(43)【公開日】2022-06-08
(54)【発明の名称】情報処理装置
(51)【国際特許分類】
   G06F 3/04842 20220101AFI20220601BHJP
   G06F 3/0481 20220101ALI20220601BHJP
   G06F 3/16 20060101ALI20220601BHJP
【FI】
G06F3/0484 120
G06F3/0481
G06F3/16 690
G06F3/16 610
G06F3/16 620
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2019066475
(22)【出願日】2019-03-29
(71)【出願人】
【識別番号】515074086
【氏名又は名称】VIVIWARE株式会社
(74)【代理人】
【識別番号】100205659
【弁理士】
【氏名又は名称】齋藤 拓也
(74)【代理人】
【識別番号】100154748
【弁理士】
【氏名又は名称】菅沼 和弘
(72)【発明者】
【氏名】柏本 和俊
(72)【発明者】
【氏名】加々見 翔太
【テーマコード(参考)】
5E555
【Fターム(参考)】
5E555AA08
5E555BA02
5E555BA05
5E555BB02
5E555BB05
5E555BC04
5E555BC18
5E555BE17
5E555CA12
5E555CB12
5E555CB14
5E555CB16
5E555CB34
5E555CB52
5E555CC03
5E555DA23
5E555DA24
5E555DB18
5E555DC26
5E555DC72
5E555FA00
(57)【要約】      (修正有)
【課題】ユーザが視覚的な操作よってより容易に複雑なプログラムを作製することが出来、タッチパネル式ディスプレイを用いて、直感的、効率的にプログラムを作製することが出来る情報処理装置を提供する。
【解決手段】情報処理装置(ユーザ端末1)は、指定操作検出部123を含むプログラム作製部102と報知部103を備える。指定操作検出部123は、画面内の所定面積を有する所定領域の少なくとも一部に対する物体の接触又は近接を含む操作を、所定領域の指定の操作として検出する。報知部103は、所定領域の指定の操作が検出手段により検出された旨の報知をする。
【選択図】図4
【特許請求の範囲】
【請求項1】
画面内の所定面積を有する所定領域の少なくとも一部に対する操作を、当該所定領域の指定の操作として検出する検出手段と、
前記所定領域の指定の操作が前記検出手段により検出された旨の報知をする報知手段と、
を備える情報処理装置。
【請求項2】
前記検出手段は、前記所定領域の少なくとも一部に対する物体の接触又は近接を含む操作を、当該所定領域の指定の操作として検出する、
請求項1に記載の情報処理装置。
【請求項3】
前記報知手段は、触覚、聴覚及び視覚のうち少なくともいずれか1つに基づく態様で、前記報知をする、
請求項1又は2に記載の情報処理装置。
【請求項4】
前記所定領域は前記画面内において複数存在し、
複数の前記所定領域毎に前記報知の前記態様を変化させる個別変化手段を、
さらに備える請求項3に記載の情報処理装置。
【請求項5】
前記報知手段は、前記触覚に基づく前記態様の報知として、振動による報知を行う、
請求項3又は4に記載の情報処理装置。
【請求項6】
前記報知手段は、前記聴覚に基づく前記態様の報知として、前記所定領域毎の識別情報の読み上げによる報知を行う、
請求項3又は4に記載の情報処理装置。
【請求項7】
前記所定領域の画像の表示の態様を変化させる第1変化手段、
をさらに備える請求項1乃至6のうち何れか1項に記載の情報処理装置。
【請求項8】
前記所定領域の前記所定面積を変化させる第2変化手段
をさらに備える請求項1乃至7のうち何れか1項に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置に関する。
【背景技術】
【0002】
従来から、子供の教育を目的とした組み立て式玩具の提供は、広く普及しており、関連する技術は数多く提案されている(例えば、特許文献1)。
例えば、特許文献1に記載された技術によれば、簡単な配線やプログラミングによって組み立て式玩具を構築することができる組み立てブロックの提供がなされている。
この特許文献1に記載された技術によれば、年齢の低いユーザであっても、複雑な作業や操作を行うことなく、組み立て式玩具を構築することができる。
また、タッチパネル式ディスプレイ上で、ビジュアルプログラミングを行う場合、操作時に操作対象や操作目標が指等に隠されてしまい、複雑度が上がると、プログラミングが困難となる為、指等に隠されない位置に指示アイテムを表示する技術が提案されている(例えば、特許文献2)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開平10-108985号公報
【特許文献2】特開昭62-150477号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上述の特許文献1の技術では、各組み立てブロックは、既存のプログラムによって単一に制御されているに過ぎず、組み立て式玩具の動作や制御の自由度には、限界があった。
即ち、例えば、上述の特許文献1の技術のみでは、各組み立てブロックの夫々の機能を組み合わせて、プログラムを作製するような処理を実行することはできなかった。
換言すれば、上述の特許文献1の技術のみでは、各組み立てブロックの夫々の機能を組み合わせるといった高度な処理を実行させるためには、別途、複雑なプログラムを作成する必要があった。
【0005】
また、上述の特許文献2の技術では、操作目標からずれた位置にタッチしなければならない為、細かい位置指定が可能であるものの、操作の直感性が低下し、位置指定操作の作業速度が低下してしまう。
【0006】
本発明は、このような状況に鑑みてなされたものであり、直感的、効率的にプログラムを作製することが出来る技術を提供する。
【課題を解決するための手段】
【0007】
上記目的を達成するため、本発明の一態様の情報処理装置は、
画面内の所定面積を有する所定領域の少なくとも一部に対する操作を、当該所定領域の指定の操作として検出する検出手段と、
前記所定領域の指定の操作が前記検出手段により検出された旨の報知をする報知手段と、
を備える。
【発明の効果】
【0008】
本発明によれば、直感的、効率的にプログラムを作製することができる。
【図面の簡単な説明】
【0009】
図1】本発明の一実施形態に係る情報処理システムの構成を示すブロック図である。
図2】本発明の一実施形態に係るユーザ端末のハードウェア構成の一例を示すブロック図である。
図3】本発明の一実施形態に係るベーシックコア及び機能モジュールが接続された状態の構成の一例を示す図である。
図4図2のユーザ端末の機能的構成例を示す機能ブロック図である。
図5】本発明の一実施形態に係る情報処理システムを利用したプログラム作製処理に際し、ユーザに実際に表示される画面の一例を示す図である。
図6】本発明の一実施形態に係る情報処理システムを利用したプログラム作製処理に際し、ユーザに実際に表示される画面の一例であって図5とは異なる例を示す図である。
図7】本発明の一実施形態に係る情報処理システムを利用したプログラム作製処理に際し、ユーザに実際に表示される画面の一例であって図5、6とは異なる例を示す図である。
図8】タッチパネル上の指定操作の目標点を含む所定領域にユーザが指を接触させた場合における、所定領域と指の大小関係を示す図である。
図9】本発明の一実施形態に係る情報処理システムを利用したプログラム作製処理に際し、ユーザに実際に表示されるVR空間上でのビジュアルプログラミング用の画像の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明の実施形態について、図面を用いて説明する。
【0011】
本発明は、ユーザが視覚的な操作によって、より容易に複雑なプログラムを作製するための技術的思想の創作である。
ユーザは、プログラム作製用に表示されるユーザインタフェース(以下、「プログラム作製画面」と呼ぶ)に表示された各種アイコンを操作することで、プログラムを作製することができる。
具体的には例えば、ユーザは、プログラム作製画面に表示された特定のハードウェアの動作を指定するプログラムの内容を示すアイコン(以下、「ハードウェアパーツ」又は「Hパーツ」と呼ぶ)及び特定のソフトウェアの実行を指定するプログラムの内容を示すアイコン(以下、「ソフトウェアパーツ」又は「Sパーツ」と呼ぶ)を視認することができる。
そして、ユーザは、これらのアイコンを任意に移動(例えば、Drag And Drop等)させることで、各種アイコンを組み合わせてプログラムを作製する。
このようにして作製されたプログラムは、例えば、組み立て式の玩具等に利用することができる。
つまり、本発明の一実施形態に係る情報処理システムは、容易な操作によってプログラムを作製することができるため、プログラムの仕組みや作成方法を子供に学ばせるための教材として極めて有用である。
【0012】
図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」と呼ぶ。
【0013】
ここで、本実施形態で用いられる、ベーシックコア2及び機能モジュール3について簡単に説明する。
ベーシックコア2とは、後述する機能モジュール3と接続して使用するハードウェアデバイスであり、近距離無線通信(例えば、NFC(登録商標)の規格に準拠した通信)でユーザ端末1とのペアリングを行う。
ユーザ端末1は、所定のベーシックコア2-Kとペアリングを行うことで、ベーシックコア2-K(Kは、1乃至mのうち任意の整数値)と、ベーシックコア2-Kと接続された所定の機能モジュール3-Kとを認識する。
機能モジュール3-Kとは、例えば、温度センサ等の各種センサ、ブザー等の操作器具、モーターや扇風機等の駆動器具等により構成されるハードウェアデバイスである。
【0014】
ここで、上述のユーザ端末1とベーシックコア2-Kとのペアリングについて説明する。本実施形態では、ベーシックコア2-Kに接続された機能モジュール3-Kの動作を少なくとも伴うプログラムの作製に際して、ユーザ端末1とベーシックコア2-Kとについて近距離無線通信を利用したペアリングを行う必要がある。
ペアリングとは、端的に言えば、近距離無線通信を用いて、ユーザ端末1に、ベーシックコア2-K及びそれに接続されている機能モジュール3-Kの種別や接続状態等を認識させることをいう。
なお、詳細については後述するが、ユーザ端末1では、機能モジュール3-Kの種別や接続の状態等を認識すると、接続された機能モジュール3-Kに対応するHパーツがプログラム作製画面に表示される。
【0015】
図2は、本発明の一実施形態に係るユーザ端末1のハードウェア構成を示すブロック図である。
【0016】
ユーザ端末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と、リムーバブルメディア35とを備えている。
【0017】
CPU21は、ROM22に記録されているプログラム、又は、記憶部30からRAM23にロードされたプログラムに従って各種の処理を実行する。
RAM23には、CPU21が各種の処理を実行する上において必要な情報等も適宜記憶される。
【0018】
CPU21、ROM22及びRAM23は、バス24を介して相互に接続されている。このバス24にはまた、入出力インターフェース25も接続されている。入出力インターフェース25には、タッチ操作入力部26、表示部27、出力部28、入力部29、記憶部30、第一近距離無線通信部31、通信部33及びドライブ34が接続されている。また、第二近距離無線通信部32も設けられている。
【0019】
タッチ操作入力部26は、例えば表示部27に積層される静電容量式又は抵抗膜式(感圧式)の位置入力センサにより構成され、タッチ操作がなされた位置の座標を検出する。
ここで、タッチ操作とは、タッチ操作入力部26に対する物体の接触又は近接の操作をいう。タッチ操作入力部26に対して接触又は近接する物体は、例えばプレイヤーの指やタッチペン等である。なお、以下、タッチ操作がなされた位置を「タッチ位置」と呼び、タッチ位置の座標を「タッチ座標」と呼ぶ。
表示部27は、液晶等のディスプレイにより構成され、プログラム作製に関する画像等、各種画像を表示する。
このように、本実施形態では、タッチ操作入力部26と表示部27とにより、タッチパネルが構成されている。
【0020】
出力部28は、スピーカや表示部等から構成され、各種情報を画像や音声として出力する。
入力部29は、各種ハードウェア等で構成され、ユーザの指示操作に応じて各種情報を入力する。
記憶部30は、ハードディスクやDRAM(Dynamic Random Access Memory)等で構成され、各種情報を記憶する。
第一近距離無線通信部31は、例えば、NFC(登録商標)の規格に従った方式で近距離無線通信を行う制御を実行する。具体的には例えば、上述の通り、ユーザ端末1とベーシックコア2は、NFC(登録商標)の規格に従った方式で近距離無線通信をして、ペアリングを行う。
第二近距離無線通信部32は、例えば、Bluetooth(登録商標)の規格に従った方式で近距離無線通信を行う制御を実行する。具体的には例えば、ユーザ端末1で作製したプログラムの実行結果(コマンド等を含む)を、Bluetooth(登録商標)の規格に従った方式の近距離無線通信で送信する。
通信部33は、第一近距離無線通信部31及び第二近距離無線通信部32とは別個独立して、インターネット等を介して他の装置との間で行う通信を制御する。
【0021】
ドライブ34は、必要に応じて設けられる。ドライブ34には、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等よりなる、リムーバブルメディア35が適宜装着される。ドライブ34によってリムーバブルメディア35から読み出されたプログラムは、必要に応じて記憶部30にインストールされる。
また、リムーバブルメディア35は、記憶部30に記憶されている各種情報も、記憶部30と同様に記憶することができる。
【0022】
次に、図3を用いて、ベーシックコア2-E(Eは、1乃至mのうち任意の整数値)及び機能モジュール3-Eの接続形態の詳細について説明する。
図3は、本発明の一実施形態に係るベーシックコア2-E及び機能モジュール3-Eが接続された状態の構成の一例を示す図である。
【0023】
図3には、ベーシックコア2-E、機能モジュール3-E及びバッテリーユニットPPが例示されている。
ベーシックコア2-Eには、バッテリーユニットBU、シリアルポートSP及び近距離無線通信部BTが備えられている。
バッテリーユニットBUは、例えば、電池等のバッテリーであり、ベーシックコア2-Eや機能モジュール3-Eに電力を供給する。
シリアルポートSPは、ベーシックコア2-Eと他のハードウェア等とを接続するための接続口(コネクタ)である。
図3の例では、ベーシックコア2-Eには、シリアルポートSPが備えられ、機能モジュール3-Eには、シリアルポートPSが備えられている。そして、ベーシックコア2-Eと機能モジュール3-Eは、この二つのシリアルポートSP、PSを介して接続されている。
近距離無線通信部BTは、他のハードウェア等と所定の規格(例えば、Bluetooth(登録商標))に従った方式で近距離無線通信を行うためのICカード等が搭載されている。
図3の例では、(図3においては、図示せぬ)ユーザ端末1と、近距離無線通信部BTを備えたベーシックコア2-Eとは、Bluetooth(登録商標)に従った方式で近距離無線通信を行う。
具体的に例えば、ユーザ端末1で作製されたプログラムの実行結果(コマンド等)は、ベーシックコア2-Eにも送信される。さらに言えば、ベーシックコア2-Eでは、ユーザ端末1から送信されてきた当該プログラムの実行結果(コマンド等)を取得し、さらに、その結果を、機能モジュール3-Eへと送信する。
【0024】
また、機能モジュール3-Eは、タイヤTを備えている。そして、上述の通り、機能モジュール3-Eは、ベーシックコア2-Eから送信されてきた上述のプログラムの実行結果(コマンド等)を取得する。図3の例の機能モジュール3-Eは、ユーザ端末1で作製されたプログラムの実行結果(コマンド等)に従って、タイヤTを駆動させる。
ここで、図3の例では、機能モジュール3-Eには、バッテリーユニットPPが接続されている。このバッテリーユニットPPは、外部電源として機能モジュール3-Eに電力を供給する。なお、上述したように、ベーシックコア2等から、機能モジュール3-Eに電力の供給が可能であるならば、バッテリーユニットPPは必須な構成要素ではない。
【0025】
このようなユーザ端末1、ベーシックコア2及び機能モジュール3の各種ハードウェアと各種ソフトウェアの協働によりプログラム作製処理の実行が可能となる。
ここで、プログラム作製処理とは、ベーシックコア2に接続された機能モジュール3を1以上機能させるためのプログラムを作成するための処理をいう。
【0026】
このプログラム作製処理を実現すべく、ユーザ端末1、ベーシックコア2及び機能モジュール3は、図4に示すような機能的構成を有している。
図4は、図1のユーザ端末1、ベーシックコア2及び機能モジュール3の機能的構成の一例を示す機能ブロック図である。
図4に示すように、ユーザ端末1のCPU21においては、ペアリング部101と、プログラム作製部102と、報知部103と、プログラム実行部104と、表示制御部105と、通信制御部106とが機能する。
また、ユーザ端末1の記憶部30の一領域には、プログラム作製部102で作製されたプログラムを格納するプログラム格納部500と、各種Sパーツが格納されているSパーツDB(Soft ware Parts Data Base)600と、報知部103が参照する各種報知パターンが格納されている報知パターンDB700とが設けられている。
【0027】
ユーザ端末1のペアリング部101は、第一近距離無線通信部31を介して、ユーザ端末1とベーシックコア2とのペアリングを行う。なお、このペアリングは、本実施形態ではNFC(登録商標)に準拠した近距離無線通信で行われるが、これは例示に過ぎず、任意の方式の通信で行われてもよい。
また、ペアリング部101には、接続確認部111が設けられる。接続確認部111は、ユーザ端末1とペアリングしたベーシックコア2及びそれに接続された機能モジュール3の種別や接続の状況を確認する。
なお、接続確認部111に確認された機能モジュール3の種別や接続の状況は、表示制御部105を介して、プログラム作製画面に表示される。
【0028】
プログラム作製部102は、ユーザのタッチ操作を受付けて、実際にプログラムの作製を行う。
ここで、プログラム作製部102には、Hパーツ供給部121と、Sパーツ供給部122と、指定操作検出部123と、パーツ結合部124と、確定部125とが設けられる。
【0029】
Hパーツ供給部121は、ペアリング部101によりペアリングが行われたベーシックコア2に接続されている機能モジュール3の種別に対応するHパーツを、表示制御部105を介してプログラム作製画面へ表示する。
Sパーツ供給部122は、適宜、SパーツDB600からSパーツを抽出して、表示制御部105を介してプログラム作製画面へ表示する。
【0030】
後述するように、パーツ結合部124により、各種Hパーツ及び各種Sパーツのうち、結合元のパーツと結合先のパーツは結合される。
このようなパーツ結合部124による結合元のパーツと結合先のパーツとの結合の操作は、タッチ操作によりなされる。具体的には例えば、ユーザは、指(物体)を用いて、結合元のパーツのコネクタに対してタッチ操作(指の接触又は近接)を開始することで、ドラッグの操作を行う。次に、ユーザは、表示部27の表示面へのタッチ操作(指の接触又は近接)を維持した状態で、タッチ位置を移動させる。そして、ユーザは、タッチ位置が、結合先のパーツのコネクタの位置と重なると、表示面に対する指の接触又は近接を解除させることで、ドロップの操作をする。
この場合、結合先のパーツのコネクタの位置とタッチ位置が正確に一致した状態で、ドロップの操作がなされないと、結合元のパーツと結合先のパーツとの結合ができない。
しかしながら、結合先のパーツのコネクタの面積が、表示面に接触又は近接している指の面積より小さいと、結合先のパーツのコネクタを指が覆ってしまうことになる。その結果、ユーザは、当該コネクタに対して指が正確に接触又は近接されているかを視認することが困難になる。
【0031】
そこで、指定操作検出部123は、結合先のパーツのコネクタの領域(表示部27に表示される所定面積を有する所定領域)の少なくとも一部に対するタッチ操作(指等の物体の接触又は近接を含む操作)を、当該所定領域の指定の操作として検出する。
具体的には例えば、指定操作検出部123は、タッチ座標が、結合先のパーツのコネクタの領域(表示部27に表示される所定面積を有する所定領域)に含まれていると判定したときに、当該所定領域の指定の操作を検出する。
【0032】
このようにして、結合先のパーツのコネクタの領域(所定面積を有する所定領域)の指定の操作が指定操作検出部123により検出されると後述する報知部103により所定の形態でユーザに報知される。
ここで、報知部103による報知の形態は、特に限定されず、後述するように例えば音声や振動等を採用することができる。
即ち、ユーザにとっては、結合先のパーツのコネクタに指が触れた瞬間に、音声やサウンドにより、指が触れた旨のフィードバックが得られる。換言すると、ユーザにとっては、結合先のパーツのコネクタに指が触れたという感覚が得られることになる。
【0033】
ここで、指定操作検出部123は、範囲変化部131を有している。
範囲変化部131は、指定操作検出部123により指定されたと検出される所定領域(結合先のパーツのコネクタの領域の所定面積)を変化させる。
即ち、「所定領域」とは、表示部27に表示されるコネクタの形状自体と必ずしも一致するものではなく、かつ、表示部27に明示的に表示させる必要は特にない領域である。換言すると、所定領域の所定面積とは、当該所定領域の指定の検出の範囲(感度)であり、このような範囲(感度)が範囲変化部131により変化可能となされている。
これにより、例えば、ユーザの好みに合うように、所定領域の指定の操作に対する検出感度をユーザ毎に変化させることができる。
また例えば、範囲変化部131は、結合先のパーツの候補が複数存在するような場合、これら複数の候補の夫々のコネクタ(所定領域)の密集度に適合するように、所定領域の指定の操作に対する検出感度を変化させることができる。
また例えば、範囲変化部131は、表示部27の画面サイズや解像度に応じて、所定領域の指定の操作に対する検出感度を変化させることができる。
また例えば、範囲変化部131は、タッチ操作がなされる物体の種類に応じて(指なのかタッチペンなのか等に応じて)、所定領域の指定の操作に対する検出感度を変化させることができる。
【0034】
パーツ結合部124は、ユーザのタッチ操作に応じて、各種Hパーツ及び各種Sパーツを結合する。
最終的に作製されるプログラムにおいては、このように結合された各種Hパーツ及びSパーツに指定されたプログラムの内容が連続的に実行される。
確定部125は、ユーザに作製されたプログラムの内容を確定し、その作製されたプログラムをプログラム格納部500へ格納する。
【0035】
報知部103は、前記所定領域の指定の操作が指定操作検出部123により検出された旨の報知をする。
ここで、報知部103には、個別変化部141が設けられる。
個別変化部141は、報知パターンDB700を参照して、検出対象の所定領域(結合先のパーツのコネクタの領域)毎に報知の態様を変化させる。
即ち、報知パターンDB700には、各種各様な報知の各パターン、例えば振動や音声等のパターンが、予め記憶されている。
【0036】
プログラム実行部104は、プログラム格納部500に格納されたプログラムのうちから、ユーザが実行を望むプログラムを抽出して実行する。
ここで、プログラム実行部104には、シミュレーション部151と、実機部152とが設けられている。
シミュレーション部151は、ユーザに作製されたプログラムによって、ベーシックコア2及び機能モジュール3を動作させることを目的とせずに、プログラム実行部104によって抽出されたプログラムを仮想的に実行する。
即ち、シミュレーション部151は、実際に作製されたプログラムが正常に実行できるか等をチェックするためのシミュレーションを行う。なお、プログラムの実行結果は、後述するように、表示制御部105を介して表示部27に表示される。
実機部152は、ユーザに作製されたプログラムによって、ベーシックコア2及び機能モジュール3を動作させることを目的として、プログラム実行部104によって抽出されたプログラムを実行する。
即ち、プログラム実行部104は、作製されたプログラムの実行結果(コマンド等)を、ベーシックコア2及び機能モジュール3へと送信し、機能モジュール3に機能を発揮させる。
なお、プログラムの実行結果は、表示制御部105を介して表示部27に表示されるだけでなく、後述するように、通信制御部106によってベーシックコア2へと送信される。
【0037】
表示制御部105は、前述した各種情報等を表示部27に表示するための制御を実行する。
【0038】
通信制御部106は、プログラム実行部104の実機部152で実行されたプログラムの実行結果を第二近距離無線通信部32を介してベーシックコア2に送信するための制御等を行う。
なお、前述の通り、本実施形態では、第二近距離無線通信部32は、Bluetooth(登録商標)の規格に従った方式で近距離無線通信を行う。
【0039】
ベーシックコア2は、ユーザ端末1とペアリングを行う。
ここで、プログラムの実行時において、当該プログラムで機能を発揮させる機能モジュール3は、所定のベーシックコア2と接続されている必要がある。
ここで、少なくともプログラムの実行時としたのは、ベーシックコア2と機能モジュール3との接続は、ベーシックコア2とユーザ端末1とのペアリングとは独立して行うことができるからである。つまり、ペアリング前にベーシックコア2と機能モジュール3との接続がなされていてもよいが、ペアリング後にベーシックコア2と機能モジュール3との接続がなされていてもよい。後者の場合、機能モジュール3から自身のユニークIDがユーザ端末1に送信されることで、ユーザ端末1はその機能モジュール3が何であるのか(どのような機能を発揮させるものか)を認識することができる。
【0040】
また、ペアリング後に機能モジュール3をベーシックコア2から外すこともできる。その際は、ベーシックコア2は、機能モジュール3が外れたことをユーザ端末1に通知する。ユーザ端末1は、UI(User Interface。後述する図5のユーザ表示画面等)に外れた旨を表示させる。より正確には本実施形態では、ユーザ端末1は、所定の機能モジュール3がベーシックコア2から外された場合は、当該所定の機能モジュール3に対応するHパーツを示すアイコンがUIにおいて非表示状態になる。
このようにして、ペアリング後の機能モジュール3のホットスワップが実現されている。即ち、ユーザにとっては、ペアリングを一旦してしまえば、あとはベーシックコア2に対する機能モジュール3の抜き差しだけでよい。この抜き差しの状態は、ユーザ端末1上のUIでも追従される。
いずれにしても、ベーシックコア2と機能モジュール3が接続されている場合、接続された機能モジュール3との通信の制御を実行する。
【0041】
次に、図5を用いて、ユーザ端末1の表示部27に表示されるプログラム作製画面の詳細について説明する。
図5は、図2のユーザ端末1が実行するプログラム作製処理に関し、ユーザに実際に表示される画面の一例を示す図である。
【0042】
図5において、左半分にはユーザに表示されているプログラム作製画面(以下、「ユーザ表示画面」と呼ぶ)が、右半分には実際に作製されたプログラムに応じて、動作する各種ハードウェアの模式図(以下、「ハードウェア模式図」と呼ぶ)が示されている。
まず、図5(A)は、ユーザ端末1に、いずれのベーシックコア2のペアリングもなされていない状況を示している。
即ち、図5(A)のハードウェア模式図を見ると、ユーザ端末1には、ベーシックコア2-O及び機能モジュール3-O(Oは、1乃至mのうち任意の整数値)と、ベーシックコア2-P及び機能モジュール3-P(Pは、1乃至mのうちO以外の任意の整数値)のいずれもペアリングされていない。
なお、機能モジュール3-Oは、押しボタンの機能を発揮することができる。機能モジュール3-Pは、ブザーの機能を発揮することができる。
そして、図5(A)のユーザ表示画面を見ると、プログラム作製時表示領域DAとHパーツ表示領域DHAにはアイコンは表示されていない。なお、Sパーツ表示領域DSAには、タイマーのアイコンが表示されている。
【0043】
図5(B)は、ユーザ端末1と、機能モジュール3-Oが接続されたベーシックコア2-Oとのペアリングがなされ、かつ、ユーザ端末1と、機能モジュール3-Pが接続されたベーシックコア2-Pとのペアリングがなされた状況を示している。
そして、図5(B)のユーザ表示画面を見ると、ペアリングがなされた機能モジュール3-Oに対応する押しボタンのアイコン及び機能モジュール3-Pに対応するブザーのアイコンがHパーツ表示領域DHBに夫々表示されている。
【0044】
図5(C)は、ユーザによって作製されたプログラムが、実行された状況を示している。
図5の(C)のユーザ表示画面を見ると、プログラム作製時表示領域DCには、右から順に押しボタンのアイコン、タイマー(2s)、ブザーのアイコンが順番に表示され、夫々のアイコンにより夫々結合されている。
ユーザは、このように、ユーザ表示画面に表示されたアイコンを視認しながら、各種Hパーツ及び各種Sパーツを自由に組み合わせて結合させることで、夫々のアイコンが指定する内容を組み合わせて1つのプログラムを製作し、そのプログラムを実行させることができる。
図5(C)のハードウェア模式図を見ると、同図のユーザ表示画面で示されるプログラムが実行された結果として、押しボタン(機能モジュール3-O)が押されると、その2秒後に、ブザー(機能モジュール3-P)が鳴るという動作が実現されることがわかる。
【0045】
図6は、図2のユーザ端末1が実行するプログラム作製処理に関し、ユーザに実際に表示される画面の一例であって図5の例とは異なる例を示す図である。
【0046】
図6においては、ユーザに表示されているプログラム作製画面、即ちユーザ表示画面のみが図示されている。
図6のユーザ表示画面を見ると、プログラム作製時表示領域DDには、Hパーツとして、左にはボタンのアイコンHBが表示され、右にはフルカラーLEDのアイコンHLが表示されている。それらの間には、Sパーツとして、タイマーのアイコンST、及びスライダーのアイコンSSR,SSG,SSBが表示されている。タイマーのアイコンST、及びスライダーのアイコンSSR,SSG,SSBの夫々は、入力側にはアイコンHBが結合され、出力側にはアイコンHLが結合されている。
【0047】
ここで、タイマーのアイコンSTは、設定された時間が経過すると、トリガ情報を出力するSパーツである。換言すると、タイマーのアイコンSTは、0又は1のデジタル信号を出力するSパーツである。
これに対して、スライダーのアイコンSSR,SSG,SSBは、0ないし255の間の任意の数値を出力することが可能なSパーツである。換言すると、スライダーのアイコンSSR,SSG,SSBは、アナログ信号を出力するSパーツである。
このように、Sパーツは、アナログ信号等の多種多様な情報を入出力情報として取り扱うことができる。Hパーツも、対応する機能モジュール3がアナログ信号等の多種多様な情報を入出力できるならば、それに対応してアナログ信号等の多種多様な情報を入出力情報として取り扱うことができる。
図6の例では、ユーザ表示画面で示されるプログラムが実行されると、押しボタン(図示せぬ機能モジュール)が押されると、所定期間経過後に、スライダーのアイコンSSR,SSG,SSBの夫々の出力値がR値、G値、B値の夫々としてLED(図示せぬ機能モジュール)に伝達されるので、そのR値、G値、B値で特定されるカラーでLEDが点灯するという動作が実現されることになる。
【0048】
図7は、本発明の一実施形態に係る情報処理システムを利用したプログラム作製処理に際し、ユーザに実際に表示される画面の一例であって図5、6とは異なる例を示す図である。
図7(A)は、HパーツとSパーツとを夫々のコネクタで結合する操作の手順を示す図である。
図7(A)のユーザ表示画面において、プログラム作製時表示領域DDには、HパーツとしてボタンのアイコンHBが左方に表示され、SパーツとしてスライダーのアイコンSSRが右方に表示されている。
ここで、ボタンのアイコンHBの出力側と、スライダーのアイコンSSRの入力側との結合を、ユーザは行いたいものとする。
【0049】
この場合、ユーザは、ボタンのアイコンHBの出力側コネクタCSに対してタッチ操作(指FSの接触又は近接)を開始することで、ドラッグの操作を行う。
次に、ユーザは、表示部27の表示面へのタッチ操作(指FSの接触又は近接)を維持した状態で、タッチ位置(指FNの位置)を矢印DRの方に移動させる。
そして、ユーザは、タッチ位置が、スライダーのアイコンSSRの入力側コネクタCEの位置と重なると、表示面に対する指の接触又は近接を解除させることで、ドロップの操作をする。
これらの、一連の操作を行うことにより、ユーザは、ボタンのアイコンHBの出力側と、スライダーのアイコンSSRの入力側とを結合させることができる。
【0050】
図7(B)は、スライダーのアイコンSSRの入力側コネクタCEに、タッチ位置(指FNの位置)を移動させた場合にユーザが視認する状態を示す図である。
即ち、スライダーのアイコンSSRの入力側コネクタCEの位置とタッチ位置が正確に一致した状態で、ドロップの操作がなされないと、ボタンのアイコンHBの出力側と、スライダーのアイコンSSRの入力側との結合ができない。
しかしながら、スライダーのアイコンSSRの入力側コネクタCEの面積が、表示面に接触又は近接している指FNの面積より小さいと、図7(B)に示すように、スライダーのアイコンSSRの入力側コネクタCEを指FNが覆ってしまうことになる。その結果、ユーザは、当該入力側コネクタCEに対して指FNが正確に接触又は近接されているかを視認することが困難になる。
【0051】
そこで、指定操作検出部123(図4)は、入力側コネクタCEの領域(所定領域)の少なくとも一部に対するタッチ操作(指FNの物体の接触又は近接を含む操作)を、当該入力側コネクタCE(所定領域)の指定の操作として検出する。
すると、報知部103は、入力側コネクタCE(所定領域)の指定の操作が指定操作検出部123により検出された旨を、振動や音声等の各種各様な形態でユーザに報知する。
即ち、ユーザにとっては、入力側コネクタCEに指FNが触れた瞬間に、音声やサウンドにより、指FNが触れた旨のフィードバックが得られる。換言すると、ユーザにとっては、入力側コネクタCEに指FNが触れたという感覚が得られることになる。
【0052】
さらにいえば、本発明は、タッチパネルに対する操作のみならず、各種各様なUI(User Interface)を用いた操作に広く一般に適用することができる。例えば、図9に示すように、本発明は、VR(Virtual Reality)を用いた操作にも適用することができる。
【0053】
図9は、本発明の一実施形態に係る情報処理システムを利用したプログラム作製処理に際し、ユーザに実際に表示されるVR空間上でのビジュアルプログラミング用の画像の例を示す図である。
【0054】
図9に示すように、ビジュアルプログラミング用の画像として、仮想パネルVPがVR空間VA内に表示される。
仮想パネルVPは、VR空間VA内で相互に結線可能なコネクタ群が一面に配置された、プログラムの作製用のパネルである。
即ち、仮想パネルVPのコネクタ群のうち結合元のコネクタと結合先のコネクタとを結線する機能は、上述の結合元のパーツと結合先のパーツとを結合する機能と等価である。なお、仮想パネルVPにおいて、コネクタ群のうち結合元のコネクタと結合先のコネクタとをユーザUが結線する作業を、以下「結線作業」と呼ぶ。
【0055】
ここで、ユーザUは、ヘッドマウントディスプレイHDを頭部に装着することにより、VR空間VA内に仮想パネルVP(その画像)が存在することを視認できる。
そして、ユーザUは、自身の手で把持するコントローラHCを動かす等のいわゆるジェスチャー操作をすることで、VR空間VA内において手VH(その画像)を動かす操作をする。ここで、VR空間VA内で手VHを動かす操作とは、VR空間VA内での手VHの位置を移動させることの他、VR空間VA内のオブジェクト(例えばプログラミング線PL等)を把持したり等を含む広義な概念である。
【0056】
ユーザUは、結線作業をする際に、VR空間VA内における仮想パネルVPのコネクタ群の中から、結合元のコネクタと結合先のコネクタを決定する。ここでは、コネクタC1が結合元のコネクタに決定され、コネクタC2が結合先のコネクタに決定されたものとする。
ユーザUは、VR空間VA内において、手VHでプログラミング線PLを把持し、その一端を結合元のコネクタC1に差し込む。
次に、ユーザUは、VR空間VA内において、プログラミング線PLの他端を結合先のコネクタC2に差し込む。
これにより、結線作業が終了して、結合元のコネクタC1と結合先のコネクタC2とが、プログラミング線PLにより結線される。
【0057】
ここで、VR空間VA内において、結合先のコネクタC2の位置(穴の位置)に対して、プログラミング線PLの端が正確に差し込まれないと、結合元のコネクタC1と結合先のコネクタC2とのプログラミング線PLによる結線ができない。
しかしながら、VR空間VA内において、結合先のコネクタC2の(VR空間VA内の見た目の)面積が、手VHの(VR空間VA内の見た目の)面積より小さいと、当該コネクタC2を手VHが覆ってしまうことになる。その結果、ユーザUは、当該コネクタC2(その穴)に対してプログラミング線PLの端が正確に差し込まれているのかを、VR空間VA内において視認することが困難になる。
【0058】
そこで、図示せぬ情報処理装置は、VR空間VA内における、コネクタC2の領域(所定領域)の少なくとも一部に対するプログラミング線PL又は手VHの接触を、当該コネクタC2の領域(所定領域)の指定の操作として検出する。
すると、図示せぬ情報処理装置は、指定の操作が検出された旨を、振動や音声等の各種各様な形態でユーザUに報知する。
この報知は、コントローラHCやヘッドマウントディスプレイHDを用いてもよいし、図示せぬ任意の媒体を用いてもよい。
即ち、ユーザUにとっては、VR空間VA内において、接続先のコネクタC2に手VHやプログラミング線PLの端が触れた瞬間に、音声やサウンドにより、その旨のフィードバックが得られる。換言すると、ユーザUにとっては、VR空間VA内において、接続先のコネクタC2に対してプログラミング線PLを差し込んだという感覚が得られることになる。
【0059】
以上本発明の一実施形態について説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
【0060】
例えば、図5に示す実施形態では、機能モジュール3-O及び機能モジュール3-Pとして、押しボタンとブザーが採用されているが、機能モジュール3の発揮する機能は特に上述した実施形態には限定されない。
本発明は、このような様々な実施形態により実施することが可能であるが、多くの実施形態において、特に子供の教育用の組み立て式玩具に使用するプログラムを作製するのに極めて有用である。
プログラム作製画面に表示されたアイコンを視覚的に確認することができるため、ユーザが子供であっても、安全かつ容易にプログラムを作製することができるし、また、自身で作製したプログラムに応じて、実機によって動作させることができるため、子供は飽きることなく、プログラムの作製を楽しむことができる。
このように、子供に楽しみながらプログラムの作製を行わせることで、子供は、一般に触れることが困難であるプログラムについて、慣れ親しむことができるのである。
【0061】
ここで、本実施形態における入出力情報について、補足する。本実施形態において、各種Hパーツや各種Sパーツを組み合わせることで、各種アイコンに指定されたプログラムの内容が連続的に実行される。
この夫々のプログラムの入出力情報は、図5に示したような単なるトリガ情報だけでなく、図6に示したようなアナログ信号等の多種多様な情報を入出力情報として取り扱うことができる。
即ち、例えば、本実施形態における入出力情報は、温度センサによって取得された情報(例えば、温度が15度)を、そのままアナログ信号等の情報として出力し、プログラムの作製に用いることができる。そのため、デジタル信号の情報だけでは、実現することのできない複雑な情報処理であっても実現することが可能となる。
【0062】
また例えば、上述の実施形態では、プログラム作製画面において、1以上のHパーツと1以上のSパーツのうち、結合元のパーツと結合先のパーツとの結合の操作が例示されたが、特にこれに限定されず、本発明は図8に示すような操作に対して広く一般に適用することができる。
即ち、図8に示すように、図示せぬ情報処理装置は、画面内の所定面積を有する所定領域TAの少なくとも一部に対する指FN(物体)の接触又は近接を含む操作を、当該所定領域TAの指定の操作として検出する。そして、当該情報処理装置は、所定領域TAの指定の操作が検出された旨をユーザに対して報知をする。
これにより、指FNによる所定領域TAの指定の操作が行われたことが、ユーザの視認に頼らなくても、各種各様な形態(振動や音声)の報知によりユーザは認識することができるようになる。
【0063】
また、上述の例で説明した通り、アイコンHLの入力側コネクタのいずれについて所定領域内にあるかをユーザが判別可能に報知するのみならず、アイコンHLの入力側コネクタの様に所定領域が密集して操作及び各コネクタの判別が困難である場合に、例えば、アイコンHLそのものを拡大することにより、各コネクタの間隔を大きくし、操作を容易にすることとして良い。
【0064】
上述の例で説明した通り、本発明はタッチパネル式ディスプレイに指を接触させる場合のみならず、タッチパネル式ディスプレイにスタイラスペンを接触させて使用する場合に適用して良い。この場合、触覚に基づく報知を行う手段をスタイラスペンが備えて良い。
さらには、マウスを使用して、指定操作を行う場合に適用して良い。この場合、触覚に基づく報知を行う手段をマウスが備えて良い。
【0065】
また例えば、上述の実施形態では、ユーザ端末1とベーシックコア2のペアリングは、NFC(登録商標)規格に従った方式での近距離無線通信により行っているが、これに限定されない。ペアリングは、近距離無線通信に限らず、いかなる手段によってペアリングを行ってもよい。
さらに言えば、上述の実施形態では、ユーザ端末1で作製したプログラムの実行結果をBluetooth(登録商標)等の規格に従った方式で近距離無線通信を利用して送信しているが、特にこれに限定されない。作製したプログラムは、近距離無線通信に限らず、いかなる手段を利用して送信してもよい。
【0066】
また例えば、上述の本実施形態では、ベーシックコア2の数と機能モジュール3の数をともにmとして説明を行ったが、特にこれに限定されない。即ち、ベーシックコア2の数と機能モジュール3の数は、同一でも構わないし、また、異なっていても構わない。
つまり、1台のベーシックコア2に対して、s台(sは1以上の任意の整数値)の機能モジュール3を接続してもよい。
【0067】
また例えば、上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。
換言すると、図4の機能的構成は例示に過ぎず、特に限定されない。
即ち、上述した一連の処理を全体として実行できる機能が情報処理システムに備えられていれば足り、この機能を実現するためにどのような機能ブロックを用いるのかは特に図4の例に限定されない。また、機能ブロックの存在場所も、図4に特に限定されず、任意でよい。
また、1つの機能ブロックは、ハードウェア単体で構成してもよいし、ソフトウェア単体で構成してもよいし、それらの組み合わせで構成してもよい。
【0068】
また例えば、一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータ等にネットワークや記録媒体からインストールされる。
コンピュータは、専用のハードウェアに組み込まれているコンピュータであっても良い。
また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えばサーバの他汎用のスマートフォンやパーソナルコンピュータであってもよい。
【0069】
また例えば、このようなプログラムを含む記録媒体は、ユーザにプログラムを提供するために装置本体とは別に配布される図示せぬリムーバブルメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される記録媒体等で構成される。
【0070】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的或いは個別に実行される処理をも含むものである。
また、本明細書において、システムの用語は、複数の装置や複数の手段等より構成される全体的な装置を意味するものとする。
【0071】
以上を換言すると、本発明が適用される情報処理装置は、
画面内の所定面積を有する所定領域の少なくとも一部に対する操作を、当該所定領域の指定の操作として検出する検出手段(例えば、図4の指定操作検出部123)と、
前記所定領域の指定の操作が前記検出手段により検出された旨の報知をする報知手段(例えば、図4の報知部103)と、
を備える情報処理装置であれば足りる。
これにより、ユーザは、所定領域の指定を視認することができない場合であっても、その指定を報知により即座に認識することができる。
なお、所定面積を有する所定領域は、画面を構成する複数の画素のうち任意の1の画素以上で構成されるものとする。即ち1画素であっても、所定面積を有すると把握するものとする。
【0072】
また、前記検出手段(例えば、図4の指定操作検出部123)は、前記所定領域の少なくとも一部に対する物体(例えば、人の指等)の接触又は近接を含む操作を、当該所定領域の指定の操作として検出する。
これにより、物体の画面への接触または近接の面積が所定面積よりも大きいため、ユーザは、物体の接触または近接で所定領域を指定すると、物体が所定領域を覆ってしまい、その指定を視認することができない場合であっても、その指定を報知により即座に認識することができる。
【0073】
また、前記報知手段は、触覚、聴覚及び視覚のうち少なくともいずれか1つに基づく態様で、前記報知をする、
ことができる。
これにより、ユーザは、所定領域の指定を様々な態様に基づく報知により即座に認識することができる。
【0074】
また、前記所定領域は前記画面内において複数存在し、
複数の前記所定領域毎に前記報知の前記態様を変化させる個別変化手段(例えば、図4の個別変化部141)、
を、さらに備えることができる。
この場合、例えば結合先のパーツの候補が複数存在するような場合であって、これらの複数の候補が近くに並んでいて、指等の物体が、複数の候補の夫々のコネクタに覆いかぶさっているような場合において、複数の候補の夫々の指定に対して、振動の仕方を異ならせる等して報知することができる。これにより、ユーザは、複数の候補のうち何れを指定しているのかを明確かつ容易に認識できる。
【0075】
また、前記報知手段は、前記触覚に基づく前記態様の報知として、振動による報知を行う、
ことができる。
【0076】
前記報知手段は、前記聴覚に基づく前記態様の報知として、前記所定領域毎の識別情報の読み上げによる報知を行う、
ことができる。
ここで、識別情報は、指定されている所定領域が何であるのかをユーザが聞分けられるものであれば、任意の情報でよい。例えば所定領域が、Hパーツ又はSパーツのコネクタの領域であれば、そのHパーツ又はSパーツの名称や特徴等を識別情報として採用することができる。
【0077】
また、前記所定領域の画像の表示の態様を変化させる第1変化手段を、
さらに備えることができる。
例えば、第1変化手段は、所定領域(Hパーツ又はSパーツのコネクタの領域)の部分を拡大表示させる等、UI(User Interface)を拡大表示させることができる。これにより、ユーザは、指等の物体を当該所定領域に接触又は近接させることが、視認により容易に行うことができるようになる。
【0078】
また、前記所定領域の前記所定面積を変化させる第2変化手段(例えば、図4の範囲変化部131)
をさらに備えることができる。
これにより、指定の操作の検出感度を自在に変更することができるようになる。
【0079】
なお、各Hパーツ及び各Sパーツのうち、結合元のパーツと結合先のパーツの結合(その結合を示す線)を切りたいという要望も存在する。
このような要望に応えるべく、図示はしないが、線の中点等を切る動作(タッチ操作等)を、切断の指示の操作として採用することができる。
ただし、この場合、指等の物体が背景に対して接触又は近接してしまうと、画面全体が動いてしまうという課題が発生する。この課題を解決すべく、物体の接触又は近接により背景を押さえる操作を行いつつ、上記切断の指示の操作をしてもよい。
【符号の説明】
【0080】
1・・・ユーザ端末、2・・・ベーシックコア、3・・・機能モジュール、21・・・CPU、27・・・表示部、31・・・第一近距離無線通信部、32・・・第二近距離無線通信部、101・・・ペアリング部、102・・・プログラム作製部、103・・・報知部、104・・・プログラム実行部、105・・・表示制御部、106・・・通信制御部、111・・・接続確認部、121・・・Hパーツ供給部、122・・・Sパーツ供給部、123・・・指定操作検出部、124・・・パーツ結合部、125・・・確定部、126・・・スクロール表示部、127・・・横切対象特定部、128・・・横切対象削除部、131・・・範囲変化部、141・・・個別変化部、151・・・シミュレーション部、152・・・実機部、500・・・プログラム格納部、600・・・SパーツDB、700・・・報知パターンDB、HC・・・コントローラ、HD・・・ヘッドマウントディスプレイ
図1
図2
図3
図4
図5
図6
図7
図8
図9