JP2018072726A - プログラム学習用アプリケーション及びプログラム学習システム - Google Patents

プログラム学習用アプリケーション及びプログラム学習システム Download PDF

Info

Publication number
JP2018072726A
JP2018072726A JP2016215296A JP2016215296A JP2018072726A JP 2018072726 A JP2018072726 A JP 2018072726A JP 2016215296 A JP2016215296 A JP 2016215296A JP 2016215296 A JP2016215296 A JP 2016215296A JP 2018072726 A JP2018072726 A JP 2018072726A
Authority
JP
Japan
Prior art keywords
learning
program
assist
control
curriculum
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2016215296A
Other languages
English (en)
Inventor
吉川直人
Naoto Yoshikawa
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to JP2016215296A priority Critical patent/JP2018072726A/ja
Publication of JP2018072726A publication Critical patent/JP2018072726A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

【課題】どこからでも自由に退屈せずに自主的に学ぶことができ、良質なアシストの下に適切なナビゲートを受けることができるプログラム学習アプリケーションを提供する。
【解決手段】PCが、ロボットのイラスト、その制御対象部位であるパーツPT、およびそのパーツPTに必要な機能を与えるための制御テーマをカリキュラム開始初期画面上に表示して、何れのパーツPTおよび制御テーマについても学習の頻度、進捗等のマスター状態に無関係に任意に学習要求を受け付けるアシストを行い、学習要求を受け付けた制御テーマに関して、具体的な学習項目CLをリキュラム詳細選択欄Fd2に表示して何れの学習項目を学習するか選択を選択するアシストを行い、学習項目CLが選択された場合に学習開始画面を開いて制御対象部位に対し学習項目をクリアするためのプログラム学習のアシストを行う。
【選択図】図4

Description

本発明は、プログラミングに関して良好な教育環境を提供するプログラム学習用アプリケーション及びプログラム学習システムに関するものである。
近年、プログラミングは学校においても必須科目になるなど、時代に適した思考力や応用力を鍛える教育ツールとして脚光を浴びている。教育カリキュラムにおいてはWEBやゲームプログラミングなど画面上でのみ動作するプログラムから、PCと接続した外部機器(ロボットやデバイス)の制御までさまざまで、とりわけ、低年齢層に関してはロボットとプログラミング言語を使わないブロック積み立て方式のビジュアル的なツールを利用したものが多く、多くの学習ツール・教室なども開かれている。
特に相応しい先行技術文献が見当たらないため、先行技術文献の欄は省略している。
しかしながら、ほとんどの上記の学習ツールや教室などにおけるカリキュラムに関し、ユーザが学ぶための単元は予め順序立てて決められており、順次単元を習得するようになっている。このため、興味が先にたっても途中を飛ばすと前後の脈絡がなくなるテキストが多く、似たような単元でも一通り地道に学習する必要があるため、退屈したりやる気を損ねることに繋がる。
また、単元をスキップして先をやってみようとしても、少し無理があることも教えてくれなければ、どの程度無理があるのか、どこを習得していないから無理があるのか等も、教室で個別指導が横にいて教えてくれるわけではないため、またたとえ指導者が横にいても定量的に判断するものがなくすべて指導員の裁量に左右されるため、結局、順序立てられた単元に従うか、指導員のたてたカリキュラムに従うほかはない。
プログラミング技術は職人技術でもあり、他の学習カリキュラムのように単純に指導要綱に基づいて指導員の短期的・一時的な訓練によって指導できるものではないため、学習塾等における指導員の質は大きく問われるもので、今後さらなに必要とされる良質な指導員の確保と良質で的確な指導は必須となる。
また、プログラミング教育における最大の目的は、論理的な思考の訓練以上に、自主性・能動性の自然な引き上げであり、これに対してのこれまでの単元積み重ねの指導方法は、あい反する手法であり、この根本問題を解決する必要がある。
本発明は、このような課題を解決した、従来にはない画期的なプログラム学習用アプリケーション及びプログラム学習システムを提供することを目的としている。
本発明は、かかる目的を達成するために、次のような手段を講じたものである。
すなわち、本発明のプログラム学習用アプリケーションは、コンピュータに読み込まれて実行されることにより、コンピュータが、制御対象物のイラスト、その制御対象部位、およびその制御対象部位に必要な機能を与えるための制御テーマをカリキュラム開始初期画面上に表示して、何れの制御対象部位および制御テーマについても学習の頻度、進捗等のマスター状態に無関係に任意に学習要求を受け付けるアシストを行い、学習要求を受け付けた制御テーマに関して、具体的な学習項目をカリキュラム詳細選択欄に表示して何れの学習項目を学習するか選択を選択するアシストを行い、学習項目が選択された場合に学習開始画面を開いて制御対象部位に対し学習項目をクリアするためのプログラム学習のアシストを行うものであり、プログラム学習中に進捗度や習熟度等のマスター状態を感知して、上記アシストの少なくとも一部をマスター状態に応じて行うように構成されたことを特徴とする。
また、カリキュラム開始初期画面では、プログラム学習のマスター状態に応じた成長度を制御対象物の機能向上度として表示するアシストを行うことを特徴とする。
また、カリキュラム詳細選択欄では、各学習項目についてマスター状態を表示するアシストを行うことを特徴とする。
また、カリキュラム詳細選択欄では、未修の学習項目についてはそのうち最も習得レベルの低い学習項目以外は基本的に選択不可とする一方、未修であっても既に習得済の他の制御テーマでテクニックが共通する学習項目については選択可もしくは選択不要とするアシストを行うことを特徴とする。
また、学習開始画面では、アシストコールに応じたアシストを行うことを特徴とする。
また、学習者に要求や選択を求めるタイミングで学習者へ問いかけるアシストを行い、そのアシストは、学習者に対してではなく、画面上の制御対象物に対する使役的な表現の形で行われることを特徴とする。
また、本発明のプログラム学習システムは、上記何れかに記載のプログラム学習支援アプリケーションを基本ツールと連動させて構成したことを特徴とする。
また、プログラム学習用アプリケーションのなかの制御対象部位や制御テーマと、基本ツールの拡張機能とが予め関連づけてあり、プログラム学習支援アプリケーションで選択される制御対象部位や制御テーマに対応する拡張機能が稼動するように構成されていることを特徴とする。
また、プログラム学習用アプリケーションでの進捗や習熟度に応じて、基本ツールで使えるコマンドを編成してコンピュータと接続されたサーバからコンピュータにダウンロードすることを特徴とする。
また、コンピュータと接続されたサーバにおいて進捗度や習熟度が管理されることを特徴とする。
以上説明したように、本発明によれば、一人で学習してもどこからでも興味がある部分のプログラミングからチャレンジすることができ、習熟度をコンピュータによって管理判断し定量的な計測結果から、学習者個々に個別に対応した適切なアシストを行うことができる。
また、学習者は画面中の学習対象物(例、ロボットやキャラクタ)に動きを教えてあげる指導者の感覚で学習を進めるため、無意識のうちに自らがプログラミングを習得しつつ、自主的・能動的な意識で飽きることなく学習を進めることができる。
本発明の一実施形態に係るプログラム学習を支援するシステム構成を示すシステム構成図。 同実施形態の制御対象部位を示す図。 制御対象部位とマイコンボード、定義名の関係を示す図。 同実施形態のカリキュラム開始初期画面を示す図。 図4の部分拡大図。 同実施形態中の学習開始画面を示す図。 同実施形態中のアシスト用ムービー画面を示す図。 同実施形態中のアシスト用画面シーケンスを示す図。 同実施形態中のアシストコール待ちを宣言する画面を示す図。 同実施形態中のスクラッチ画面を示す図。 同実施形態中のアシストコールがあったときの受付画面を示す図。 図10の対応フロー図。 図11の対応フロー図。 同実施形態で長時間応答がなかった場合の対応フロー図。 同実施形態でプログラム起動から学習開始までの流れを示すシーケンス図。 図15に引き続くシーケンス図。 同実施形態で使用するスクラッチの機能とアシスト例を説明する図。 同実施形態で使用するスクラッチの機能とアシスト例を説明する図。 同実施形態で使用するスクラッチの機能とアシスト例を説明する図。 同実施形態で使用するスクラッチの機能とアシスト例を説明する図。 同実施形態で使用するスクラッチの機能とアシスト例を説明する図。 同実施形態におけるPC側のシステム構成を示す機能ブロック図。 同実施形態におけるサーバ側のシステム構成を示す機能ブロック図。
以下、本発明の一実施形態を、図面を参照して説明する。
本発明を実施するための一つの形態例として、図1に示すように、制御対象物であるロボット1、ビジュアルプログラミングツールの一つであるScratch(スクラッチ)2、独自開発した学習支援アプリケーション3等を用いてロボットプログラミング教育を支援する。これらのスクラッチ2や学習支援アプリケーション3は学習者の対象PCにサーバSvからインストールして実行する。
そして、PC上でスクラッチ2や学習支援アプリケーション3を使って作成したプログラムを実行することで、マイコンボード4を介して接続したロボット1を動かす。
スクラッチ2はブロック式プログラミングエディタであり、スクラッチ2が標準的にもつ拡張機能「エクステンション」を利用し、予めロボット1がもつ各パーツをコントロールする機能をコマンドとして提供する。
本実施形態ではPCで作成したプログラミングをUSBやBluetooth(登録商標)、Wifiなどの通信機器を通じ、PCからの命令によってマイコンボード4に搭載されたドライバがロボット1に制御信号を出力する。
学習支援アプリケーション3には、次の機能がある。
1)スクラッチ2から出力されるエクステンション命令を受信するhttpサーバ機能
2)エクステンション命令を受信してロボット1のパーツを動かすための命令に置き換え、マイコンボード4へ送信する機能
3)ロボット1のセンサー等からのデータをリアルタイムに受信してスクラッチ2へ転送する機能
4)学習者のPC(マウス・キーボードなど)で操作された全内容をすべて記録し、インターネットINを介してサーバSvに転送する機能
5)サーバSvより学習者の学習進捗を受信する機能
6)サーバSvより学習者のレベルに合わせた学習内容をPC内にダウンロードし、適切な学習カリキュラムを提供する機能
一方、マイコンボード4には、学習支援アプリケーション3から送信される命令に基づいて、ロボット1に接続されているアクチュエータなどのパーツを動作させる機能。また、ロボット1のセンサー等から取得したデータを受信して学習支援アプリケーション3に送信する機能。
ロボット1のほうは、図2のパーツ図に基づくパーツと各種メカニカル機構から構成されている。
具体的にロボット1には、アクチュエータ等としてパーツPT(SPEAKER1、2、モータM1〜M8、赤外線センサRIP1、2、LED1〜3等)が搭載されており、これらのパーツPTが図1に示すマイコンボード4のI/Oポート4aに接続される。I/Oポート4aと各パーツPTは、図3に示すように関係づけられ、プログラム中において各パーツPTは右の定義名で呼ばれる。これらが制御対象部位である。
勿論、パーツPTは適宜の組み合わせで搭載することができる。
本学習支援は、提供する学習支援アプリケーション3を基本に進める。
図4はカリキュラム開始初期画面SCR4である。この画面では、学習対象とする機器であるロボット1のイラスト(ロボットイラスト)ILLが表示される。制御対象部位である動作可能な各パーツPTは、個人進捗別にマスター状態を色表現でわかり易く表示される。例えば、目と音のセンサーRIP、MIC、足首M4、M7については未習熟であるため水色、LEDを光らせる箇所は習得済であるため緑、話すスピーカSPEAKERは一部未修得で黄色、手(肩)や足(足の付け根)は習得度が悪いため赤といった具合である。このイラストILL上の適宜部位にマウスオーバーすると、そのパーツPTに関する制御テーマがテーマ表示欄Fd1に表示され、イラストILL上のマウスオーバー位置MOを変えると、テーマ表示欄Fd1に表示される制御テーマが切り替わり、マウスオーバーした状態でユーザは、学習の頻度や進捗等のマスター状態に無関係に、すなわち、順序関係なく、マスター完了未完了関係なく、どのパーツPTもクリック選択することができる。
画面上のメッセージは、今日はロボットに○○を教えてやろうという具合に、学習者が教育側になる様な使役的な言い回しで表示される。
例えば、図4はロボット1の胸に光るLED1〜3の位置がマウスオーバーされており、手テーマ表示欄Fd1には「胸に光るRGBのLEDでQumcumが感情表現できるように教えよう」という制御テーマが説明とともに表示されている。「Qumcum」とはロボット1に付けられている愛称である。この状態で胸のLED1〜3をマウスクリックすると、「Mission」と題したカリキュラム詳細選択欄Fd2と、「Your Masterd」と題した学習済項目欄Fd3が表示される。図5はその部分拡大図である。「Mission」は、選択したパーツに対してマスターすべき技術項目(カリキュラム)CLをリスト化して表示している。このリストは、予め習得した方がよい技術項目CLほど上にくるように降順となっている。複数の学習項目CLに分解されたカリキュラムは、複数のマスターテクニックリストをもっている。マスターテクニックとは、後述するブロック(BL)、シーケンス(SQ)、待ち時間(WT)、繰り返し(LP)などである。
学習項目CLは、全項目のマスター度合いの平均値を基準にして色分けされている。この項目CLをクリックすると図6に示す学習開始画面SCR6が開いて、学習を開始する。図5に示す時間欄Tmはシステムが想定する目標時間であり、学習履歴Arは実際にマスターのために費やしている時間(日付と受講時間数)であって、目標時間Tmに対する受講時間数、マウスクリック数、ロボット起動回数などから予め備えた適宜の計算あるいはテーブルに従って、学習の進捗度や習熟度を表すマスター状態の評価が行われ、前述した色分けで表示される。テクニックリスト欄TLは、その学習項目CLでマスター可能なプログラムテクニックを表示する。「BL」はスクラッチのブロック型の命令であり、「SQ」はあらかじめ定められた順序または手続きに従って制御の各段階を逐次進めていく体系であり、「LP」は繰り返しループであり、「WT」は次のステップに入るまでの待ち時間の挿入である。これら以外にも種々のものが用意されている。
そして、これらのテクニックは、制御対象部位がLEDであっても目のセンサーであっても手足の動きであっても共通する。
さらに言えば、まだ一度も経験していない学習項目は未経験表示(例えば赤表示)され、選択できない。経験済の学習項目CLは経験済表示(例えば黒表示)される。当然、一番最初は全部未経験表示で最もテクニックレベルの低い一番上の学習項目しか選択することはできない。逆に、簡単にできるために飛ばしてもよい学習項目は経験不問表示(例えば青表示)され、クリックすることができる。図示例では、「まずは何色でもいいから光らせる」と「RGB順序良く点滅させる」が経験済表示され、「RGBの組み合わせで好みの色」が未経験表示されている。
一方、「Mission」とは別欄の「Your Masterd」には、他の制御テーマにおいてすでにマスター済の学習項目がリスト表示される。
学習開始時にスクラッチを起動するとき、このマスター済の項目に基づいてスクラッチのエクステンション(コマンド)が編成される。
マスター状態に基づき予め学習者のプログラム学習に関する成長度を割り出す計算式あるいはテーブル等が用意されており、成長度はロボットの機能向上度(成長率)として図4のカリキュラム開始初期画面SCR4の右上にパーセント表示される。図4では「20%」と表示されている。マスター済の項目が増えるほど、また、マスターのために費やした時間が短いほど、成長度(ロボット成長率)の数値が上がる。
図6はスクラッチ3の学習開始画面SCR6である。アシスタントILLは、プログラム学習メニューMuを表示する。「やり方ビデを見る」が選択された場合は予め用意している図7のムービー画面SCR7を再生し、「一緒にやる」が選択された場合は図8のように、ステップ毎にガイダンス画面SCR8a→アシスト画面又はムービー画面SCR8b→スタンバイ宣言画面SCR8c→スクラッチ画面SCR8dというループを繰り返し、少なくともスクラッチ画面SCR8d上にアシスタントILLを表示してアシストコール待ち宣言をしてスクラッチ画面SCR8d上でアシスタントILLがクリックされることを待つアシストコール待ちのスタンバイ状態にする。「自分でやってみる」が選択された場合は図9に示すアシストコール待ちを宣言する画面SCR9aを表示したうえで画面を図10に示すスクラッチ画面SCR10に切り替える。ここでも、画面上にアシスタントILLを表示して図10に示すスクラッチ画面SCR9b上でアシスタントILLがクリックされることを待つアシストコール待ちのスタンバイ状態にする。対応フローは図12のとおりである。
図11はアシストコールがあったときの受付画面SCR11であり、どうしたいのかを選択させる。対応フローは図13のとおりである。
なお、図14は長時間対応なしの場合の対応フローを示している。
図15、図16はプログラム起動から学習開始までの流れを示している。プログラムを起動させると(ステップS1)、ロボット接続チェック(ステップS2)を行った後、PC1はログインユーザーの進捗から受講可能なカリキュラムを再構成して、制御テーマに関するテーマメニューデータをサーバSvからダウンロードする(ステップS3、S4)。テーマメニューは図4のカリキュラム開始初期画面に反映される(ステップS5)。すなわち、イラストILLをマウスオーバーしながら制御対象部位(制御テーマ)を選択し、更に学習項目CLを選択すると、サーバSvがテーマに必要なエクステンションコマンドを編成して、スクラッチのファイルをPC1にダウンロードする(ステップS6、S7)。制御テーマごとにクリアできるテクニックリストTLを予め持っており、これは上記ステップS5において図4のカリキュラム開始初期画面SCRのリキュラム詳細選択欄Fd2に反映される。スクラッチを起動(ステップS8)すると、プログラム学習に入り、図6の学習開始画面SCR6から選択される方法で学習を行う。学習中は、アシストコールのたびにアシストのダウンロードと表示を行う(ステップS9、S10)。
図16においてテーマを終了したとき(ステップS11)、終了時間や学習状況など、ローカルに記録したデータをアップロードする(ステップS12)。このとき、前述したように受講時間数、マウスクリック数、ロボット起動回数などから予め備えられている計算式やテーブル等に基づきマスター状態(理解度段階)を割り出してテクニックリストに記録する。理解度段階とは基準とされる時間に対して、早い/ちょうどいい/遅い等の段階評価である。このようにして、サーバSvには進捗度や習熟度等のマスター状態が管理され、次の再構成の際に図4のカリキュラム開始初期画面SCR4に反映される。具体的には、選択したテーマで以前受講したテーマに存在したテクニックで習熟度がよければ(理解度段階が高いものがあれば)、そのテクニック部分についてのカリキュラムは優先度を下げて表示する。逆に、習熟度が低ければ、そのカリキュラムの優先度を上げて表示する。
ここで、図17〜図21を参照してプログラミングエディタであるスクラッチ3の機能とアシスト例を簡単に紹介しておく。
図17において右上はキャラクタChを表示するステージ101であり、ステージ101中にはスプライトと呼ばれるキャラクタChが表示される。ここでのスプライトChは前述したロボット1のキャラクタILLである。右下はスプライト一覧102、真ん中はプログラムを作成するためのスクリプトエリア103、左上は命令種別エリア104、左下は選択した命令種別に応じて表示される命令集エリア105である。命令集エリア105から命令を選択し、スクリプトエリア103にドラッグドロップすることでプログラムの作成が進行する。
命令種別には、「制御」や「動き」などがある。「制御」は例えば図18に示すように、「制御スタートのほか、「○○がクリックされたとき」、「○○キーが押されたとき」、「スプライトがクリックされたとき」といったイベント発生ブロックのほか、「○回繰り返す」、「ずっと」、あるいは「待つ」といった嵌め込み用ブロックが用意されている。これは、図4、5に示したブロックBL、繰り返しLP、待つWTなどのテクニックに相当する。
一方、「動き」には、図19に示すように、「手を動かす」、「足を動かす」、「首を回す」等の動作が用意してある。「手を動かす」に関しては、右手か左手か、相対(何度)か絶対(何度のトコロ)かの入力欄を用意し、「足を動かす」に関しては、右足首か左足首か、右手か左手かに加え、相対(何度)か、図示しない絶対(何度のトコロ)かの入力欄を用意している。「首を動かす」、「LEDを光らせる」についてもこれに準ずる。制御対象部位である手、足、首は図4に示したパーツPTに相当し、テクニックの組み合わせはシーケンスSQに相当する。
図17のスクリプトエリア103でプログラムを作成した後、ロボット1のスプライトCh(ILL)をクリックすると、図1に示すPCがモータ制御パルス等をリアルタイムで生成してマイコンボード4に送信し、マイコンボード4内のドライバでロボット1に搭載したアクチュエータ等を駆動する。このとき、図4のイラストILLが同じ動きをするように画像あるいはプログラムが用意されている。
図20は例えば図19の「手を動かす」の単元に含まれるカリキュラムを示している。iはサクッとある位置に動かす方法をロボット1に教え、iiはゆっくりある位置まで動かす方法をロボット1に教え、iiiは左と右を同時に動かす方法をロボット1に教え、ivは左と右を交互に動かす方法をロボット1に教え、vはキーボードの↑↓で反応する手の実現をロボット1に教え、viは右手と左手の動きをキーボードに割り当てる方法をロボット1に教える。図21はステップごと、或いはわからないから教えて欲しいが選択されたときに学習をアシストする内容を書き出したもので、iでは絶対位置項目をスクリプトエリアにドラッグドロップして項目を入力すればよいこと、iiでは相対位置項目をスクリプトエリアにドラッグドロップして項目を入力すればよいこと、iiiでは右と左を繰り返しブロックの中に嵌め込んで繰り返し制御をさせるスクリプトを作ればよいこと、ivではiiiで右と左の方向を逆にすればよいこと、vでは矢印キーが押されたらというイベント項目をスクリプトエリアにドラッグドロップしてブロックの頭につければよいこと、viではvとi〜ivを組み合わせればよいこと等々をアシスト画面又はムービー画面を通じてサポートする。viiは両手を動かす課題の単元である。
履修管理部はその単元について履修済のチェックフラグを立て、習熟度に反映させる。
以上は、他のアイテムについても同様である。
図22はコンピュータPC側のシステム構成を機能面から説明する機能ブロック図であり、図23はサーバSv側のシステム構成を機能面から説明する機能ブロック図である。
サーバSvのスクラッチ管理部B1及びプログラム学習アプリ管理部B2は、スクラッチ2及びプログラム学習アプリケーション3を管理する。これらは、要求に応じてコンピュータPCにダウンロードされる。
かかるダウンロードによって、コンピュータPCには、以下に述べる機能A1〜A4等が備わる。
学習要求受付部A1は、制御対象物であるロボット1のイラストILL、その制御対象部位であるパーツPT、およびその制御対象部位であるパーツPTに必要な機能を与えるための制御テーマをカリキュラム開始初期画面SQR4上に表示する。そして、何れのパーツPTおよび制御テーマについても学習の頻度、進捗に無関係に任意に学習要求を受け付けるアシストを行う。
カリキュラム詳細選択部A2は、学習要求を受け付けた制御テーマに関して、具体的な学習項目CLをカリキュラム詳細選択欄F2に表示して何れの学習項目CLを学習するかのアシストを行う。その際、カリキュラム詳細選択欄Fdにおいて、未修の学習項目CLについてはそのうち最もレベルの低い学習項目以外は基本的に選択不可とする一方、未修であっても既に習得済の他の制御テーマでテクニックが共通する学習項目については選択可もしくは選択不要とするアシストを行う。このとき、習得難易度が低いものから降順にする表示アシストも行う。
プログラム学習アシスト部A3は、学習項目CLが選択された場合に図6の学習開始画面SCR4を開いて制御対象部位に対し学習項目CLをクリアするためのプログラム学習のアシストを図6〜図14に基づいて説明した態様で行う。このアシストには、サーバSvのアシストファイル管理部B6から適宜必要なデータが取り出される。
進捗管理部A4は、プログラム学習中に進捗度や習熟度等のマスター状態を感知してログをとり、サーバSvに送信する。サーバSvのマスター状態管理部B5はこれを管理し、次にPCから制御テーマの選択があったときに、進捗度や習熟度等のマスター状態に応じてカリキュラム編成部B3が学習項目CLを選択してカリキュラムを送信する。これを受信したPCは、カリキュラム開始初期画面SCR4上でかかる学習項目CLを表示するアシストを行う。また、カリキュラム開始初期画面SCR4において、マスター状態に応じた制御対象物の機能向上度(ロボット成長率)を表示するアシストを行う。さらに、カリキュラム詳細選択欄Fd2において、各学習項目CLについて習得の有無、受講時間や進捗に基づいて習熟度(マスター状態)を色分け表示するアシストを行う
さらに、以上において学習者の要求や選択を求めるタイミングで学習者へ問いかけるアシストを行い、そのアシストは、学習者に対してではなく、画面上の制御対象物であるロボット1に対する使役的な表現(「何をさせるか」という文言)の形でアシストを行う。ここでも、プログラム学習アシスト部A3とアシストファイル管理部B6とが連携して対応する。
また、プログラム学習システムとしては、以下の特徴を有する。
プログラム学習支援アプリケーション3を基本ツールであるスクラッチ2と連動させて構成されている点。
プログラム学習支援アプリケーション3のなかの制御対象部位(パーツPT)や制御テーマと、基本ツールであるスクラッチに備わる拡張機能(エクステンション)とが予め関連づけてあり、プログラム学習支援アプリケーションで選択される制御対象部位や制御テーマに対応する拡張機能(エクステンション)が稼動するようにサーバのエクステンション編成部B4が編成を行っている点。
プログラム学習支援アプリケーション3での進捗や習熟度等を通じて基本ツールであるスクラッチのコマンドがスクラッチ管理部B1やエクステンション編成部B4で編成される点。
以上のように、本実施形態のプログラム学習用アプリケーションは、コンピュータに読み込まれて実行されることにより、コンピュータが以下の処理を行なっている。
(1)制御対象物であるロボットのイラスト、その目やLEDや手足等の制御対象部位、およびその制御対象部位に必要な、距離を測る、LEDを光らせる、手足を動かすといった機能を与えるための制御テーマをカリキュラム開始初期画面上に表示する。
(2)何れの制御対象部位および制御テーマについても学習の頻度、進捗に無関係に任意に学習要求を受け付ける。
(3)学習要求を受け付けた制御テーマに関して、具体的な機能を与えるための学習項目をカリキュラム詳細選択欄に表示して何れの学習項目を選択するかの選択を求める。
(4)学習項目が選択された場合に学習開始画面を開いて制御対象部位に対し学習項目をクリアするためのプログラム学習支援を行う。
(5)プログラム学習中に進捗度や習熟度等のマスター状態を感知して、上記一連の処理のなかで進捗度や習熟度等のマスター状態に応じたアシストを行う。
このように支援アプリケーションを構成すると、一人で学習してもどこからでも興味がある部分のプログラミングからチャレンジすることができる。しかも、プログラム学習の進捗度や習熟度等のマスター状態の感知がなされ、それに応じたアシストがなされるため、指導者のように裁量や資質に左右されることがない。このようにして、自由なカリキュラムのもと、誰に対しても常時均質な学習支援環境を提供することができる。また、学習者は画面中の学習対象物であるロボットに機能を与えてあげる形をとるため、指導者の感覚を持ちながら、無意識のうちに学習を進め自らがプログラミングを習得することができ、自主的・能動的な意識で飽きることなく学習を進めることが可能となる。
また、カリキュラム開始初期画面では、プログラム学習のマスター状態に応じた制御対象物(ロボット)の機能向上度(ロボット成長率)を表示するアシストを行うようにしているので、自らの学習を第三者的に正当評価を行うことができることで、学習の進捗や習熟度を無意識のうちに自らの定量的な数値の積み重ねに置き換えることができる。
カリキュラム詳細選択欄では、各学習項目について習得の有無、習得に要した時間や進捗を総合的に勘案して習熟度を(評価として)表示するアシストを行うようにしている点も同様の効果を奏する。
特に、カリキュラム詳細選択欄では、未修の学習項目についてはそのうち最もレベルの低い学習項目以外は基本的に選択不可とする一方、未修であっても既に習得済の他の制御テーマでテクニックが共通する学習項目については選択可もしくは選択不要とするアシストを行うようにしているので、進捗度や習熟度に応じた円滑な学習の誘導を行うことができる。
学習開始画面では、アシストコールに応じたアシストを行うようにしているため、学習者が発信する進捗状況にマッチしたアシストを行うことができる。
さらに、学習者の要求や選択を求めるタイミングで学習者へ問いかけるアシストを行い、そのアシストは、学習者に対してではなく、画面上の制御対象物であるロボットに対する使役的な表現(「何をさせるか」という文言)の形で行われるので、学習者に「自分がプログラム対象物に対して教える」という意識を自覚させられるため、自発的な学習態度をより助長させる。
システムとしては、プログラム学習支援アプリケーションを基本ツールであるスクラッチと連動させて構成しているため、必要に応じて基本ツールに切り替えつつ、本アプリケーションを主体としてプログラム学習支援環境を整えることができる。
この場合、プログラム学習支援アプリケーションのなかの制御対象部位や制御テーマと、基本ツールに備わる拡張機能であるエクステンションとが予め関連づけてあり、プログラム学習支援アプリケーションで選択される制御対象部位や制御テーマに対応する拡張機能(エクステンション)が稼動するように構成されているので、基本ツールを学習者のレベルにマッチした状態で利用することができる。
そして、プログラム学習支援アプリケーションでの進捗や習熟度に応じて、基本ツールで使えるコマンドを編成してコンピュータと接続されたサーバからコンピュータにダウンロードするようにしているので、実行プログラムの最小化が図れる。
また、コンピュータと接続されたサーバにおいて進捗度や習熟度が管理されるようにしているので、所定のユーザーネームとパスワードでログインすれば、どこでも継続的な学習を行うことができる。
その他、このアプリケーションをロボットのプログラム以外の種々の制御対象物に適用するなど、本発明の趣旨を逸脱しない範囲で種々変形が可能である。
1…制御対象物(ロボット)
2…基本ツール(スクラッチ)
3…プログラム学習アプリケーション
Fd2…カリキュラム詳細選択欄
ILL…ロボットのイラスト
PC…コンピュータ
PT…制御対象部位(パーツ)
SQR4…カリキュラム開始初期画面
SQR6…学習開始画面

Claims (10)

  1. コンピュータに読み込まれて実行されることにより、コンピュータが、
    制御対象物のイラスト、その制御対象部位、およびその制御対象部位に必要な機能を与えるための制御テーマをカリキュラム開始初期画面上に表示して、
    何れの制御対象部位および制御テーマについても学習の頻度、進捗等のマスター状態に無関係に任意に学習要求を受け付けるアシストを行い、
    学習要求を受け付けた制御テーマに関して、具体的な学習項目をカリキュラム詳細選択欄に表示して何れの学習項目を学習するか選択を選択するアシストを行い、
    学習項目が選択された場合に学習開始画面を開いて制御対象部位に対し学習項目をクリアするためのプログラム学習のアシストを行うものであり、
    プログラム学習中に進捗度や習熟度等のマスター状態を感知して、上記アシストの少なくとも一部をマスター状態に応じて行うように構成されたことを特徴とするプログラム学習用アプリケーション。
  2. カリキュラム開始初期画面では、プログラム学習のマスター状態に応じた成長度を制御対象物の機能向上度として表示するアシストを行う請求項1に記載のプログラム学習用アプリケーション。
  3. カリキュラム詳細選択欄では、各学習項目についてマスター状態を表示するアシストを行う請求項1に記載のプログラム学習用アプリケーション。
  4. カリキュラム詳細選択欄では、未修の学習項目についてはそのうち最も習得レベルの低い学習項目以外は基本的に選択不可とする一方、未修であっても既に習得済の他の制御テーマでテクニックが共通する学習項目については選択可もしくは選択不要とするアシストを行う請求項1に記載のプログラム学習用アプリケーション。
  5. 学習開始画面では、アシストコールに応じたアシストを行う請求項1に記載のプログラム学習用アプリケーション。
  6. 学習者に要求や選択を求めるタイミングで学習者へ問いかけるアシストを行い、そのアシストは、学習者に対してではなく、画面上の制御対象物に対する使役的な表現の形で行われる請求項1〜5の何れかに記載のプログラム学習用アプリケーション。
  7. 請求項1〜6の何れかに記載のプログラム学習支援アプリケーションを基本ツールと連動させて構成したことを特徴とするプログラム学習システム。
  8. プログラム学習用アプリケーションのなかの制御対象部位や制御テーマと、基本ツールの拡張機能とが予め関連づけてあり、プログラム学習支援アプリケーションで選択される制御対象部位や制御テーマに対応する拡張機能が稼動するように構成されている請求項7に記載のプログラム学習システム。
  9. プログラム学習用アプリケーションでの進捗や習熟度に応じて、基本ツールで使えるコマンドを編成してコンピュータと接続されたサーバからコンピュータにダウンロードする請求項8に記載のプログラム学習システム。
  10. コンピュータと接続されたサーバにおいて進捗度や習熟度が管理される請求項9に記載のプログラム学習システム。
JP2016215296A 2016-11-02 2016-11-02 プログラム学習用アプリケーション及びプログラム学習システム Pending JP2018072726A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016215296A JP2018072726A (ja) 2016-11-02 2016-11-02 プログラム学習用アプリケーション及びプログラム学習システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016215296A JP2018072726A (ja) 2016-11-02 2016-11-02 プログラム学習用アプリケーション及びプログラム学習システム

Publications (1)

Publication Number Publication Date
JP2018072726A true JP2018072726A (ja) 2018-05-10

Family

ID=62115326

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016215296A Pending JP2018072726A (ja) 2016-11-02 2016-11-02 プログラム学習用アプリケーション及びプログラム学習システム

Country Status (1)

Country Link
JP (1) JP2018072726A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6439954B1 (ja) * 2018-03-20 2018-12-19 株式会社CambrianRobotics 制御システム、制御方法、及び基礎パーツ
CN109664648A (zh) * 2019-01-30 2019-04-23 张新宇 一种学生教学用智能伴读机器人
CN113673803A (zh) * 2020-05-13 2021-11-19 丰田自动车株式会社 配车装置、车辆及终端
JP2023035318A (ja) * 2021-09-01 2023-03-13 アドバンスデザインテクノロジー株式会社 デバイス制御システム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6439954B1 (ja) * 2018-03-20 2018-12-19 株式会社CambrianRobotics 制御システム、制御方法、及び基礎パーツ
JP2019164686A (ja) * 2018-03-20 2019-09-26 株式会社CambrianRobotics 制御システム、制御方法、及び基礎パーツ
US10939154B2 (en) * 2018-03-20 2021-03-02 CambrianRobotics, Inc. Electronic component control by a basic part using a received command from a server
CN109664648A (zh) * 2019-01-30 2019-04-23 张新宇 一种学生教学用智能伴读机器人
CN113673803A (zh) * 2020-05-13 2021-11-19 丰田自动车株式会社 配车装置、车辆及终端
CN113673803B (zh) * 2020-05-13 2024-05-28 丰田自动车株式会社 配车装置、车辆及终端
JP2023035318A (ja) * 2021-09-01 2023-03-13 アドバンスデザインテクノロジー株式会社 デバイス制御システム

Similar Documents

Publication Publication Date Title
Tanaka et al. Pepper learns together with children: Development of an educational application
JP2018072726A (ja) プログラム学習用アプリケーション及びプログラム学習システム
US20160005326A1 (en) Adaptive, immersive, and emotion-driven interactive media system
Hassan et al. Smartphone-based industrial informatics projects and laboratories
US11727824B2 (en) System and method for teaching computer programming
Aidinlou et al. Applications of robot assisted language learning (RALL) in language learning and teaching
Cook et al. The role of assisted manipulation in cognitive development
Garcia et al. An immersive virtual reality experience for learning Spanish
Vouloutsi et al. Towards a synthetic tutor assistant: the easel project and its architecture
Adams et al. Robotic systems for augmentative manipulation to promote cognitive development, play, and education
Mihov et al. STEM ROBOTICS IN PRIMARY SCHOOL.
Yusoff et al. The model of persuasive Hajj learning environment
Noble Building a LEGO-based Robotics Platform for a 3 rd Grade Classroom
Artoni et al. Designing ABA-Based software for low-functioning autistic children
Wood et al. Piloting scenarios for children with autism to learn about visual perspective taking
Pilatásig et al. Virtual system for teaching-learning of initial education using a haptic device
WO2017136874A1 (en) Advanced learning system
JP2006099075A (ja) 画像表示装置、画像表示システム、画像表示装置の制御方法、画像表示装置の制御プログラム、画像表示システムの制御プログラム、コンピュータ読み取り可能な記録媒体
Ellis et al. " Piece it together": Insights from one year of engagement with electronics and programming for people with intellectual disabilities
AU2018102139A4 (en) Advanced Learning System
EP3576075A1 (en) Operating a toy for speech and language assessment and therapy
KR100940062B1 (ko) 객체연결버튼을 이용한 컴퓨터 프로그램의 폴더 또는 파일의 검색 방법과 이를 위한 기록 매체
JP3204240U (ja) 対話型又は探査型知育ロボット
Villanueva New modalities and techniques of augmented reality in stem education
Gaudiello et al. Control heuristics for educational robots: a pilot study