JP7284516B2 - Program creation support system, its method, and its program - Google Patents

Program creation support system, its method, and its program Download PDF

Info

Publication number
JP7284516B2
JP7284516B2 JP2020206879A JP2020206879A JP7284516B2 JP 7284516 B2 JP7284516 B2 JP 7284516B2 JP 2020206879 A JP2020206879 A JP 2020206879A JP 2020206879 A JP2020206879 A JP 2020206879A JP 7284516 B2 JP7284516 B2 JP 7284516B2
Authority
JP
Japan
Prior art keywords
curriculum
program
code
management table
sheet
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.)
Active
Application number
JP2020206879A
Other languages
Japanese (ja)
Other versions
JP2021060597A (en
Inventor
賢一 飛坐
章 大木
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.)
OFFICE ZERO LIMITED LIABILITY COMPANY
Original Assignee
OFFICE ZERO LIMITED LIABILITY COMPANY
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 OFFICE ZERO LIMITED LIABILITY COMPANY filed Critical OFFICE ZERO LIMITED LIABILITY COMPANY
Priority to JP2020206879A priority Critical patent/JP7284516B2/en
Publication of JP2021060597A publication Critical patent/JP2021060597A/en
Application granted granted Critical
Publication of JP7284516B2 publication Critical patent/JP7284516B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、プログラム作成支援システム及びその方法並びにそのプログラムに係り、特にプログラミング学習に好適なプログラム作成の支援技術に関するものである。 The present invention relates to a programming support system, its method, and its program, and more particularly to programming support technology suitable for programming learning.

AI(人工知能)や情報技術(IT)の発展に伴い、IT技術者の不足が予想され、プログラミング人材育成の重要性が叫ばれている。プログラミング人材育成ための対応の1つとして、我が国では、文部科学省が子供向けのプログラミング教育の重要性を提唱し、2020年から小学校でプログラミング教育が必須となった。既に、子供向けのプログラミング教育のシステムや教育治具、玩具等がいろいろと提案されており、なかには実用化されているものもある。 With the development of AI (artificial intelligence) and information technology (IT), a shortage of IT engineers is expected, and the importance of programming human resources is being emphasized. In Japan, the Ministry of Education, Culture, Sports, Science and Technology has advocated the importance of programming education for children as one of the measures to develop programming human resources, and from 2020 programming education has become mandatory in elementary schools. Various programming education systems, educational jigs, toys, etc. for children have already been proposed, and some of them have already been put to practical use.

その一つとして、コンピュータやインターネットを利用した初級者向けのプログラミング教育支援が提唱されている。例えば、特許文献1には、学習者用クライアントと、学習管理者用クライアントと、学習管理サーバを、ネットワークを通して接続して、学習者による課題の解答過程をオンラインでリアルタイムに把握してデータベース化し、記録したデータを基に任意の時間軸で解答過程を再現したりグラフによる可視化を行ったりして、各学習者のプログラミング習熟度を容易にかつ的確に把握できるプログラミング教育支援システムが開示されている。 As one of them, programming education support for beginners using computers and the Internet has been advocated. For example, in Patent Document 1, a client for a learner, a client for a learning manager, and a learning management server are connected through a network, and the process of answering a task by a learner is grasped online in real time and made into a database, Disclosed is a programming education support system that reproduces the answering process on an arbitrary time axis based on recorded data and visualizes it with a graph, so that each learner's programming proficiency can be easily and accurately grasped. .

また、非特許文献1には、文部科学省が開発した「プログラミン」と称する子供向けのサービスとして、表示装置の画面にマウスを操作しながら、複数の絵(ブロック)を組み合わせることでプログラムを組み上げる、コンピュータを利用した子供向けのプログラミングが開示されている。更に、非特許文献2には、ARマーカによる画像認識を用いてプログラムを作成してロボットを動作させる技術が開示されている。これは、ARマーカとなる画像が書かれた「どうさカード」と「じょうけんカード」を交互に並べたものを、タブレットで撮影することによりロボットにプログラムを自動転送する、としている。 Also, in Non-Patent Document 1, as a service for children called "Programming" developed by the Ministry of Education, Culture, Sports, Science and Technology, a program is assembled by combining multiple pictures (blocks) while operating a mouse on the screen of the display device. , discloses computer-based programming for children. Furthermore, Non-Patent Document 2 discloses a technique of creating a program using image recognition using an AR marker and operating a robot. This is supposed to automatically transfer the program to the robot by taking a picture of the alternately arranged “dosa card” and “joken card” on which the image that will be the AR marker is written with a tablet.

特開2006-227218公報Japanese Patent Application Laid-Open No. 2006-227218

文部科学省「プログラミン」2013年10月22日 http://www.mext.go.jp/programin/Ministry of Education, Culture, Sports, Science and Technology "Programin" October 22, 2013 http://www.mext.go.jp/programin/ 原槙稔幸,「子ども向け科学実験教室におけるプログラミング体験への拡張現実の導入に関する検討」,情報処理学会第75回(平成25年)全国大会講演論文集(4),一般社団法人情報処理学会,2013年3月6日,第385~386頁Toshiyuki Haramaki, ``Study on the introduction of augmented reality into programming experience in science experiment classes for children,'' IPSJ 75th (2013) National Conference Proceedings (4), Information Processing Society of Japan, March 6, 2013, pp. 385-386

上記特許文献1に記載の技術は、学習管理サーバが学習者のプログラミング習熟度を容易にかつ的確に把握することを主題としており、如何にして学習者にプログラムを作成させるか、については詳述されていない。 The technique described in Patent Document 1 is aimed at allowing the learning management server to easily and accurately grasp the programming proficiency of the learner. It has not been.

また、非特許文献1で紹介されているプログラミングは画面上で操作するため、パソコン(PC)等の使用が前提となる。学校の授業でプログラミング学習を行うとなると、生徒数に応じたPCが必要となるので相当の費用がかかり、更に生徒はPCの画面を操作するための基本的な操作を習得する必要がある。また、非特許文献2にはARマーカが記載されたカードをタブレットで撮影してプログラミングするという概念が開示されているが、子供たちがプログラミングし易くするための具体的な課題や技術的手段の示唆がない。
そこで、余り費用がかからず、とりわけ子供が簡便にプログラムの作成を学習することができる仕組みないし教材が望まれる。
Also, since the programming introduced in Non-Patent Document 1 is operated on the screen, it is premised on the use of a personal computer (PC) or the like. Learning programming in a school class requires a considerable amount of money because PCs corresponding to the number of students are required, and students also need to learn basic operations for operating the screen of the PC. In addition, Non-Patent Document 2 discloses the concept of programming by photographing a card with an AR marker written on it with a tablet. No suggestion.
Therefore, there is a demand for a system or teaching materials that do not require much cost and that allow children to learn programming in a simple manner.

本発明の目的は、簡便な手法によってプログラムの作成ができるプログラム作成支援システム及びその方法並びにそのプログラムを提供することにある。 SUMMARY OF THE INVENTION An object of the present invention is to provide a program creation support system, method, and program for creating a program by a simple method.

本発明に係るプログラム作成支援システムは、好ましくは、コンピュータを用いて、プログラムの作成を支援するプログラム作成支援システムであって、
それぞれ固有のコードを有する複数の物品と、
前記複数の物品の前記コードとプログラムの命令の関係付けを管理するテーブルと、
プログラムの作成に際して、並べられた複数の各物品の前記コードを取得する取得手段と、
該取得手段により取得された前記複数の各物品の該コードを認識するコード認識処理部と、
前記テーブルを参照して、該コード認識処理部で認識された前記コードに対応する命令を特定して、特定された複数の該命令から構成されるプログラムを生成するプログラム作成処理部と、を有するプログラム作成支援システム、として構成される。
本発明はまた、上記プログラム作成支援システムで実現されるプログラム作成支援方法、及びプログラム作成支援用プログラムとしても把握される。
The program creation support system according to the present invention is preferably a program creation support system that uses a computer to support program creation,
a plurality of items each having a unique code;
a table for managing the association between the codes of the plurality of items and program instructions;
Acquisition means for acquiring the code of each of the plurality of arranged goods when creating a program;
a code recognition processing unit that recognizes the code of each of the plurality of articles acquired by the acquisition means;
a program creation processing unit that refers to the table to identify instructions corresponding to the code recognized by the code recognition processing unit, and generates a program composed of the identified instructions. It is configured as a program creation support system.
The present invention can also be grasped as a program creation support method and a program creation support program realized by the above program creation support system.

本発明によれば、簡便な手法によってプログラムの作成が可能となる。 According to the present invention, a program can be created by a simple method.

実施例1によるプログラム作成支援システムの構成を示す図である。1 is a diagram showing the configuration of a programming support system according to Example 1; FIG. 携帯端末の構成例を示す図である。It is a figure which shows the structural example of a portable terminal. プログラムシートの例を示す図である。It is a figure which shows the example of a program sheet. プログラムの作成に用いられるチップの例を示す図である。FIG. 4 is a diagram showing an example of a chip used for creating a program; FIG. プログラム命令の例を示す図である。FIG. 4 is a diagram showing an example of program instructions; プログラム命令の例を示す図である。FIG. 4 is a diagram showing an example of program instructions; プログラム作成におけるチップの配列例を示す図である。FIG. 10 is a diagram showing an example of arrangement of chips in creating a program; プログラム作成におけるチップの配列例を示す図である。FIG. 10 is a diagram showing an example of arrangement of chips in creating a program; プログラム作成におけるチップの配列例を示す図である。FIG. 10 is a diagram showing an example of arrangement of chips in creating a program; カリキュラム管理テーブルの構成例を示す図である。It is a figure which shows the structural example of a curriculum management table. ユーザ管理テーブルの構成例を示す図である。FIG. 4 is a diagram showing a configuration example of a user management table; 先生管理テーブルの構成例を示す図である。FIG. 10 is a diagram showing a configuration example of a teacher management table; プログラム管理テーブルの構成例を示す図である。It is a figure which shows the structural example of a program management table. プログラム作成の概略的な動作を示すフローチャートである。4 is a flow chart showing a schematic operation of creating a program; プログラム作成の処理動作を示すフローチャートである。4 is a flowchart showing processing operations for creating a program; プログラム作成の処理動作を示すフローチャートである。4 is a flowchart showing processing operations for creating a program; 携帯端末の画面表示の例を示す図である。It is a figure which shows the example of a screen display of a portable terminal. プログラム作成支援システムの接続構成を示す図である。It is a figure which shows the connection structure of a program creation assistance system. 実施例3によるプログラム作成の概略的な動作を示すフローチャートである。11 is a flow chart showing a schematic operation of creating a program according to Example 3; 実施例7において用いられる課題シートの例を示す図である。FIG. 12 is a diagram showing an example of a task sheet used in Example 7; 実施例7において用いられるプログラムシートの例を示す図である。FIG. 12 is a diagram showing an example of a program sheet used in Example 7; 実施例8において用いられるチップの例を示す図である。FIG. 12 is a diagram showing an example of a chip used in Example 8; 実施例8におけるチップの配列例を示す図である。FIG. 21 is a diagram showing an example of arrangement of chips in Example 8; 実施例8におけるチップの配列例を示す図である。FIG. 21 is a diagram showing an example of arrangement of chips in Example 8;

本発明の好ましい例は、コンピュータを用いたプログラム作成支援システムにより実現される。予め命令の定義された、絵柄の描かれた複数のチップと、チップを並べる所定のシートが用意される。ユーザは、目的に従って複数のチップを選択的にシート上に並べる。このチップの配列を、スマートフォンのような携帯端末が備えるカメラで撮影する。プログラム作成支援システムにおける処理装置(例えばサーバ)が、カメラで取得されたチップの配列の画像から各チップの絵柄の画像を認識してプログラムを構成する命令コードを特定し、命令コードの配列からプログラムデータを作成する。作成されたプログラムデータは携帯端末へ送信されて実行される。プログラムの実行は例えば携帯端末の表示部の画面にキャラクタの動画として表示される。 A preferred example of the present invention is realized by a program creation support system using a computer. A plurality of chips having patterns on which commands are defined in advance and a predetermined sheet on which the chips are arranged are prepared. A user selectively arranges a plurality of chips on a sheet according to a purpose. This array of chips is photographed with a camera provided in a mobile terminal such as a smartphone. A processing device (e.g., a server) in a program creation support system recognizes an image of a design of each chip from an image of an array of chips acquired by a camera, identifies an instruction code that constitutes a program, and executes a program from the instruction code array. Create data. The created program data is transmitted to the portable terminal and executed. Execution of the program is displayed, for example, as a moving image of a character on the screen of the display unit of the mobile terminal.

好ましい例によれば、ユーザが多数の生徒から成る学校の授業において、先生が所持する1台の携帯端末があればプログラム作成の授業が可能となる。即ち、各生徒がチップの配列を終了する度に、携帯端末のカメラでチップの配列を撮影して、その画像をサーバへ送信して、サーバでプログラムを作成する。そして、プログラムの実行はその都度、携帯端末の画面で動画として見ることができるので、生徒ごとにプログラムの出来ばえが確認できる。 According to a preferred example, in a class at a school where the users are a large number of students, a program creation class can be conducted with a single portable terminal possessed by the teacher. That is, every time each student finishes arranging the chips, the arrangement of the chips is photographed by the camera of the portable terminal, the image is transmitted to the server, and the server creates a program. Each execution of the program can be viewed as a moving image on the screen of the portable terminal, so that each student can check the performance of the program.

本発明の好ましい例によれば、ユーザが1人でPCの画面を操作しながらプログラムを作成するというプログラム作成作業に比べて、シート上にチップを並べるという簡単な作業によってプログラムを作成することができる。そのため、プログラムの作成手順の習得が容易であり、プログラムの作成を教える先生も生徒も過度の負担が少ない。また、ユーザ1人1人にPCを用意する必要がないので多人数が同時に学習する場面に向いている。また、ユーザ毎にチップとシートのセットを用意することで対応できるので、低コストで実現できる。 According to a preferred example of the present invention, a user can create a program by a simple task of arranging chips on a sheet, compared to the program creation work of creating a program by a single user while operating the screen of a PC. can. Therefore, it is easy to learn the procedure for creating a program, and the burden on both the teacher and the student who teach the creation of the program is small. In addition, since it is not necessary to prepare a PC for each user, it is suitable for situations in which a large number of people study at the same time. In addition, since it is possible to prepare a chip and sheet set for each user, it can be realized at a low cost.

以下、図面を参照して、本発明の一実施例について詳細に説明する。
図1は、プログラム作成支援システムの全体構成例を示す。
プログラム作成支援システムは、プログラムの作成を支援するサーバ1と、ユーザが使用する複数の携帯端末2とが、通信ネットワーク9を介して接続して構成される。
An embodiment of the present invention will be described in detail below with reference to the drawings.
FIG. 1 shows an example of the overall configuration of a program creation support system.
The program creation support system is configured by connecting a server 1 that assists program creation and a plurality of mobile terminals 2 used by users via a communication network 9 .

サーバ1は、利用者の情報を管理し、携帯端末との間でデータ通信し、プログラムを作成し実行する等、の種々のデータ処理を行うコンピュータである。その機能及び処理の詳細については後述する。なお、サーバ1のハードウェア構成は図示していないが、プログラムを実行する処理装置(プロセッサ)、メモリ、ハードディスクのような外部記憶装置、入力器、表示器等のハードウェア資源を有する。 The server 1 is a computer that performs various data processing such as managing user information, communicating data with portable terminals, creating and executing programs, and the like. The details of the function and processing will be described later. Although the hardware configuration of the server 1 is not shown, it has hardware resources such as a processing unit (processor) for executing programs, memory, an external storage device such as a hard disk, an input device, and a display device.

プログラムの作成を支援するために、サーバ1は、携帯端末2のユーザや作業者の情報を登録して管理する情報管理部102と、プログラムを作成するプログラム作成処理部103と、プログラムの作成に際してチップの画像を認識する画像処理部104を有する。また、データベース(DB)として、ユーザの情報やプログラミング学習の利用に関する種々の管理情報を登録する管理情報DB105と、プログラム作成に関する情報を記憶するプログラムDB106を有する。これらの処理部及びDBの構成や機能については後で詳述する。なお図示の例では、管理情報DB105とプログラムDB106とを別のDBとして構成しているが、これらは1つのDBで構成してもよい。 In order to support program creation, the server 1 includes an information management unit 102 that registers and manages information on users and workers of the mobile terminal 2, a program creation processing unit 103 that creates programs, and a It has an image processing unit 104 that recognizes the image of the chip. Further, as a database (DB), it has a management information DB 105 for registering user information and various management information regarding use of programming learning, and a program DB 106 for storing information regarding program creation. The configuration and functions of these processing units and DB will be described in detail later. In the illustrated example, the management information DB 105 and the program DB 106 are configured as separate DBs, but they may be configured as one DB.

サーバ1はプログラム作成支援のためのサイトを有しており、携帯端末2からこのサイトに接続することで、プログラム作成支援を受けることができる。
携帯端末2は、例えばスマートフォン(以下単にスマホという)のような端末である。携帯端末2のハードウェア構成については、図2を参照して後述する。
The server 1 has a site for program creation support, and by connecting to this site from the portable terminal 2, program creation support can be received.
The mobile terminal 2 is, for example, a terminal such as a smart phone (hereinafter simply referred to as a smart phone). A hardware configuration of the mobile terminal 2 will be described later with reference to FIG.

図2は、携帯端末2のハードウェア構成を示す。
携帯端末2は、例えばスマートフォン(以下単にスマホという)のような携帯端末であり、種々のアプリケーションプログラム等を実行するプロセッサ(CPU)202と、データやプログラムを格納するメモリ203と、画面タッチ式の入力部204と、画面を表示する表示部205と、撮影機能であるカメラ206と、二次元バーコードを読み取るバーコードリーダ207と、ネットワーク9を通してサーバ1とデータ通信を行うネットワーク接続部208とを有する。スマホはインターネットを通して多くのサイトと接続することができて、ユーザが希望するアプリケーションをCPU202が実行する。また、スマホは上記以外に例えば音声入出力機能を始め種々の機能を有している。
FIG. 2 shows the hardware configuration of the mobile terminal 2. As shown in FIG.
The mobile terminal 2 is, for example, a mobile terminal such as a smartphone (hereinafter simply referred to as a smartphone), and includes a processor (CPU) 202 that executes various application programs and the like, a memory 203 that stores data and programs, and a screen touch type. An input unit 204, a display unit 205 that displays a screen, a camera 206 that has an imaging function, a barcode reader 207 that reads two-dimensional barcodes, and a network connection unit 208 that performs data communication with the server 1 through the network 9. have. The smartphone can connect to many sites through the Internet, and the CPU 202 executes applications desired by the user. In addition to the above, smartphones have various functions including, for example, a voice input/output function.

[プログラムシート及びチップ]
図3は、プログラムシートの例を示す。
プログラムシート(以下単にシートという)30は、プログラムの作成に用いられる、例えばA4サイズの用紙である。学校の授業では、予め印刷されたシート30を先生が各生徒に配布する。シート30は普通の紙製というよりも、生徒が何回も使用できて、チップの配置に耐えられるように、プラスチック製が好ましい。
[Program Sheet and Chip]
FIG. 3 shows an example of a program sheet.
A program sheet (hereinafter simply referred to as sheet) 30 is, for example, an A4 size sheet used for creating a program. In school classes, a teacher distributes a pre-printed sheet 30 to each student. The sheet 30 is preferably made of plastic rather than plain paper so that it can be used multiple times by the student and can withstand chip placement.

シート30の中央の広いスペースにはプログラムエリア302が確保される。シート30の上端にはタイトル301が印刷され、右上端には二次元バーコードを含む識別部305が印刷されている。タイトル301は例えばカリキュラムの名称である。識別部305の二次元バーコードはカリキュラムを識別するための識別情報を含んでいる。 A program area 302 is secured in the wide space in the center of the sheet 30 . A title 301 is printed on the upper edge of the sheet 30, and an identification portion 305 including a two-dimensional bar code is printed on the upper right edge. A title 301 is, for example, the name of a curriculum. The two-dimensional barcode of the identification section 305 contains identification information for identifying the curriculum.

プログラムエリア302には、複数の縦線と横線によりマトリクス状の罫線が印刷され、更にその左上端には、「スタート」マーク303が印刷され、そこから下へ向かって太い縦線のガイドライン304が印刷されている。マトリックス線やガイドライン304はチップを配列する案内となる。マトリクス状の縦線と横線はチップ絵柄の画像処理においてX/Y座標となる。シート30の原情報は画像としてプログラムDB106に記憶されている。 In the program area 302, a plurality of vertical and horizontal lines are printed to form a matrix of ruled lines, a "start" mark 303 is printed at the upper left corner of the ruled line, and a thick vertical line guideline 304 is printed downward from there. printed. Matrix lines and guidelines 304 serve as guides for arranging the chips. Vertical lines and horizontal lines in a matrix form X/Y coordinates in image processing of the chip pattern. The original information of the sheet 30 is stored in the program DB 106 as an image.

作業者である生徒は、ガイドライン304に沿って上から下へ向かってチップを配置していく。またある時は、マトリックス線に沿って左から右へチップを配置していく。図7Aから図7Cに、シート30に複数のチップ40を配置した例を示す。 A student who is an operator arranges chips from top to bottom along the guideline 304 . Other times, chips are laid out from left to right along the matrix lines. FIGS. 7A to 7C show examples in which a plurality of chips 40 are arranged on the sheet 30. FIG.

図4は、プログラムの作成に用いられるチップの例を示す。
チップ40は、プログラムの命令が定義付けられた表示子である。例えば、命令の動作を絵柄で表現(印刷)した、縦2cm×横5cmほどのプラスチック製矩形片である。それぞれの絵柄は命令ごとに相違する。チップ40は、シート30上に容易に固定できて容易に剥がれるように、その裏面に簡易的な粘着材が形成されているのが好ましい。なお、チップ40の絵柄の原情報は画像としてプログラムDB106に記憶されている。
FIG. 4 shows an example of a chip used for programming.
Chip 40 is an indicator in which program instructions are defined. For example, it is a rectangular piece of plastic about 2 cm long and 5 cm wide, which expresses (prints) the action of an instruction in a pattern. Each pattern differs for each command. It is preferable that the chip 40 has a simple adhesive material formed on its back surface so that it can be easily fixed on the sheet 30 and easily peeled off. The original information of the pattern of the chip 40 is stored in the program DB 106 as an image.

図4には17種類のチップの例が示されているが、命令の種類に応じてチップを更に増やすことができる。配布用の複数のチップ40をチップセットということにする。シート30やチップセット40は、ユーザからの要求に応じてユーザへ販売、発送される。なお、携帯端末2からの要求に応じて、サーバ1が、指定されたプリンタにシート30やチップセット40を印刷するサービスとすることもできる。 An example of 17 types of chips is shown in FIG. 4, but more chips can be added depending on the type of instruction. A plurality of chips 40 for distribution will be referred to as a chipset. The sheet 30 and the chipset 40 are sold and shipped to users in response to requests from the users. Note that the server 1 may print the sheet 30 or the chipset 40 on a designated printer in response to a request from the mobile terminal 2 .

[プログラム命令の例]
図5は、プログラム命令の例(命令リスト)を示す。
プログラム命令は、表示・動きを表す9つの命令(動作命令)と、制御文を表す2つの命令(制御命令)と、入出力を表す4つの命令(入出力命令)と、パラメータ即ち1から9までの数値を表す命令(パラメータ)と、その他の4つの命令から構成される。
[Example of program instruction]
FIG. 5 shows an example of program instructions (instruction list).
The program instructions consist of 9 instructions (motion instructions) representing display/movement, 2 instructions (control instructions) representing control statements, 4 instructions (input/output instructions) representing input/output, and parameters 1 to 9. It consists of an instruction (parameter) representing a numerical value up to and including four other instructions.

各チップと命令は一意に対応しており、チップの絵柄と、命令の名称、命令動作、パラメータの関係は図示の通りである。備考は参考的な説明を表す。例えば、動作命令において、右向きの絵(図5の一番目にある「動く:方向付き」命令)は、「指定された方向へ移動」を表す命令であり、この矢印が右へ向いているときは右へ移動、左を向いているときは左へ移動、を表す。パラメータは動作命令の回数や向き、番号等を表す。命令との関係において、パラメータの指定が可能な命令についてパラメータの設定を可能とする。例えば、「動く:方向付き」命令はパラメータの回数設定が可能であるが、「拾う」命令はパラメータの設定ができない。 Each chip and command uniquely correspond, and the relationship between the chip pattern, command name, command operation, and parameter is as shown in the drawing. Remarks represent informative explanations. For example, in the action command, the picture pointing to the right (the first "move: with direction" command in Fig. 5) is a command representing "move in the specified direction", and when this arrow is pointing to the right means move right, move left when facing left. The parameters represent the number of motion commands, directions, numbers, and the like. In relation to instructions, parameters can be set for instructions for which parameters can be specified. For example, the command "move: with direction" can set the number of parameters, but the command "pick up" cannot.

図6に例示するように、右向きの絵「動く:方向付き」命令で、パラメータが「3」のときは、「右へ3回動く」を意味する。ここで、ある命令を表す1つのチップ401の配列は必須であり、パラメータ402の配列は任意である。パラメータ402は命令の種類やその実行レベルに応じて変わる。 As exemplified in FIG. 6, a right-facing picture "Move: Directed" command with a parameter of "3" means "move right three times". Here, the arrangement of one chip 401 representing an instruction is essential, and the arrangement of parameters 402 is arbitrary. The parameters 402 change according to the type of instruction and its execution level.

なお、「その他」の命令において、「START」の命令は、シート30に「スタート」が印刷されている場合は使用されない。「END」の命令は、チップ配列の最後に配置される。演算子や条件文の命令は用意されているが、カリキュラムの内容によっては使用されない場合がある。 In the "other" commands, the "START" command is not used when "START" is printed on the sheet 30. FIG. The "END" instruction is placed at the end of the chip array. Instructions for operators and conditional statements are provided, but they may not be used depending on the content of the curriculum.

これら命令の、チップの絵柄(即ち絵柄の画像)と、動作等を示す名称と、動作の関係は、対応表である命令テーブル(符号50で示す)に定義されてプログラムDB106に記憶されている。ここで、命令テーブル50の画面表示の例は図5のようになるが、プログラムDB106に保管される命令テーブル50には、絵柄の画像に対応した固有のコードデータ(命令コード)が含まれる。 The relationship between the picture of the chip (that is, the image of the picture), the name indicating the action, etc., and the action of these commands is defined in a command table (denoted by reference numeral 50), which is a correspondence table, and stored in the program DB 106. . Here, an example of the screen display of the command table 50 is shown in FIG. 5. The command table 50 stored in the program DB 106 includes unique code data (command code) corresponding to the pattern image.

一例では、カリキュラムに応じてこの命令テーブル50から複数の命令(命令セットという)が選択される。また、新たなチップの絵柄や新たな命令を規定した場合や、既定の絵柄を削除又は変更したい場合には、命令テーブル50の内容を変更することができる。それは、サーバ1が有する入力器(図示せず)又は携帯端末2からの管理者の入力指示によって、命令テーブル50におけるチップの絵柄と命令との対応関係を変更することができる。 In one example, a plurality of instructions (referred to as an instruction set) are selected from this instruction table 50 according to the curriculum. Further, when a new chip design or a new command is defined, or when a predetermined design is desired to be deleted or changed, the contents of the command table 50 can be changed. It is possible to change the correspondence relationship between the chip pattern and the command in the command table 50 according to the administrator's input instruction from the input device (not shown) of the server 1 or the portable terminal 2 .

[各種のテーブルの説明]
次に、図8乃至図11を参照して、プログラム作成支援のために使用される各種のテーブルの構成について説明する。各テーブル80~110は、管理情報DB105に記憶される。
[Description of various tables]
Next, with reference to FIGS. 8 to 11, configurations of various tables used for supporting program creation will be described. Each table 80 to 110 is stored in management information DB 105 .

図8は、カリキュラム管理テーブルの構成例を示す。
カリキュラム管理テーブル80は、ユーザに提供するプログラム作成のカリキュラム、及び当該カリキュラムに使用される命令を管理するテーブルである。ここで、カリキュラムとはユーザがプログラミングするための課題或いは問題と言ってもよい。カリキュラムと、カリキュラムに対応する具体的な課題内容と、当該カリキュラムにおいて使用されるシートとは関連付けられている。これについては、図15を参照して後述する。
FIG. 8 shows a configuration example of a curriculum management table.
The curriculum management table 80 is a table for managing a program-created curriculum to be provided to the user and instructions used in the curriculum. Here, the curriculum may be said to be a task or problem for the user to program. Curriculum, specific task contents corresponding to the curriculum, and sheets used in the curriculum are associated with each other. This will be described later with reference to FIG.

カリキュラム管理テーブル80は、カリキュラムを識別するカリキュラム番号と、当該カリキュラムによるアプリケーションを実行するアドレスと、当該アプリケーションにおいて使用されるキャラクタを表すキャラクタセットと、命令テーブル50から選択された、当該カリキュラムで使用する全ての命令の参照番号(命令テーブル50の参照番号)とを登録する。ここで、アプリケーションとは、カリキュラムの選択から始まって、携帯端末2によってシート及びチップ配列の画像を取り込む処理、及びプログラムの作成処理に至る一連の処理を行うプログラムである。キャラクタとは、プログラムの実行において動画として使用される登場者であり例えばウサギや亀の画像、有名なアニメの画像である。 The curriculum management table 80 includes a curriculum number for identifying a curriculum, an address for executing an application according to the curriculum, a character set representing characters used in the application, and a character set selected from the command table 50 to be used in the curriculum. Reference numbers of all instructions (reference numbers of the instruction table 50) are registered. Here, the application is a program that performs a series of processes, starting from curriculum selection, capturing images of sheets and chip arrays by the mobile terminal 2, and creating a program. A character is a character that is used as a moving image in executing a program, such as an image of a rabbit or a turtle, or an image of a famous animation.

また、当該カリキュラムで使用する全ての命令の参照番号を命令セットに登録する理由はプログラム作成処理を速くするためである。即ち、プログラム作成処理に際して、命令テーブル50を参照しながらチップ配列の画像から個々のチップの画像を認識する処理を行うが、このときに命令テーブル50に登録された全てのチップ画像をスキャンすると多大な時間がかかる。これに対して、命令セットに登録された参照番号に対応する命令を対象にスキャンすれば、画像の認識にかかる時間は大幅に短くなる。 Also, the reason why the reference numbers of all the commands used in the curriculum are registered in the command set is to speed up the program creation process. That is, in the program creation process, the process of recognizing the image of each chip from the image of the chip array is performed while referring to the instruction table 50. At this time, scanning all the chip images registered in the instruction table 50 would take a lot of time. It takes a long time. On the other hand, if the command corresponding to the reference number registered in the command set is scanned, the time required to recognize the image is greatly shortened.

図9は、ユーザ管理テーブルの構成例を示す。
ユーザ管理テーブル90は、プログラムを作成するユーザの情報を管理するテーブルである。ユーザ管理テーブル90は、ユーザの識別IDである識別情報と、ユーザの名前と、プログラムデータを記憶しているアドレスを示すプログラムデータ格納先インデックス(ID)と、カリキュラム識別情報として、カリキュラム管理テーブル80から選択されて利用されるカリキュラム番号と、更新日時と、個人情報としてユーザが所有する携帯端末のメールアドレス等、を登録する。カリキュラム識別情報には、過去に利用したカリキュラム番号がログとして逐次登録されていく。この例では、プログラムデータ格納先IDは、作成されたプログラムデータを管理するプログラム管理テーブル110のアドレス或いはプログラム管理テーブル110を指定する情報を表す。
FIG. 9 shows a configuration example of a user management table.
The user management table 90 is a table for managing information on users who create programs. The user management table 90 contains identification information that is a user identification ID, user name, program data storage destination index (ID) indicating an address where program data is stored, and curriculum identification information as curriculum management table 80. Curriculum number to be selected and used from, update date and time, and personal information such as the e-mail address of the mobile terminal owned by the user are registered. Curriculum numbers used in the past are sequentially registered as a log in the curriculum identification information. In this example, the program data storage location ID represents the address of the program management table 110 that manages the created program data or information designating the program management table 110 .

学校の授業や団体でプログラム学習をする場合には、先生が所持する携帯端末2を用いてサーバ1とデータ通信するので、先生管理テーブル100が主に使用される。そのため、ユーザとしては、ユーザ管理テーブル90に生徒を識別するIDを含む生徒に関する情報を登録しなくてもよい。これに対して全ての生徒が携帯端末2を有していて、各人が独立してプログラム作成を行う場合にはユーザ管理テーブル90に全ての生徒のユーザ情報を登録する。 The teacher management table 100 is mainly used when performing program learning in a class at school or in a group because data communication is performed with the server 1 using the portable terminal 2 possessed by the teacher. Therefore, it is not necessary for the user to register information on students, including IDs for identifying students, in the user management table 90 . On the other hand, if all students have portable terminals 2 and each student independently creates a program, the user information of all students is registered in the user management table 90 .

図10は、先生管理テーブルの構成例を示す。
先生管理テーブル100は、学校の授業でプログラム学習をする場合、先生及びクラスを構成する生徒に関する情報を管理するテーブルである。先生管理テーブル100は、先生を識別する先生IDと、先生の名前と、プログラムデータを記憶しているアドレスを示すプログラムデータ格納先インデックス(ID)と、カリキュラム識別情報として、カリキュラム管理テーブルから選択されて利用されるカリキュラム番号と、ユーザ識別情報としてクラスの生徒識別IDと、個人情報としての先生が所有する携帯端末のメールアドレス等、を登録する。ユーザ識別情報にはクラスを構成する全ての複数の生徒IDが登録される。カリキュラム識別情報には、過去に利用したカリキュラム番号がログとして逐次登録されていく。
FIG. 10 shows a configuration example of a teacher management table.
The teacher management table 100 is a table for managing information about the teacher and the students who make up the class when program learning is performed in a school class. The teacher management table 100 is selected from the curriculum management table as the teacher ID for identifying the teacher, the name of the teacher, the program data storage destination index (ID) indicating the address where the program data is stored, and the curriculum identification information. A curriculum number to be used as a teacher, a student identification ID of a class as user identification information, and an e-mail address of a mobile terminal owned by the teacher as personal information are registered. All of the student IDs that make up the class are registered in the user identification information. Curriculum numbers used in the past are sequentially registered as a log in the curriculum identification information.

図11は、プログラム管理テーブルの構成例を示す。
プログラム管理テーブル110は、作成されたプログラムに関する情報を管理するテーブルである。プログラム管理テーブル110は、プログラムを作成したユーザ識別IDと、カリキュラム番号と、作成されたプログラムデータと、プログラムの登録日時と、その修正日時と、を登録する。本実施例では、ユーザ識別IDには生徒識別IDが登録されることになる。プログラムデータとは、作成されたプログラムそのものであり、複数行のプログラムステップの場合その行数分が登録される。
FIG. 11 shows a configuration example of a program management table.
The program management table 110 is a table for managing information on created programs. The program management table 110 registers the user identification ID that created the program, the curriculum number, the created program data, the registration date and time of the program, and the modification date and time. In this embodiment, the student identification ID is registered as the user identification ID. The program data is the created program itself, and in the case of a program step of multiple lines, the number of lines is registered.

[プログラム作成の概略動作]
次に、図12を参照して、プログラム作成の概略的な動作について説明する。
この例は、携帯端末2を所持している先生が、複数の生徒に対してプログラミングの授業を行う場合のフローを示している。図中、実線で示すステップは携帯端末又はサーバによる処理動作を表し、点線で示すステップは人間(先生又は生徒)の動作を表す。
[Overview of Program Creation]
Next, with reference to FIG. 12, a schematic operation of creating a program will be described.
This example shows a flow when a teacher who has a mobile terminal 2 gives a programming class to a plurality of students. In the figure, steps indicated by solid lines represent processing operations by the mobile terminal or the server, and steps indicated by dotted lines represent actions of a human (teacher or student).

まず、先生は携帯端末2を操作してアカウントとパスワードを入力してログインを行う(S1201)。そして、携帯端末2はネットワーク9を介してサーバ1と接続され、本件のプログラム作成のサイトに接続される。すると、携帯端末2にはカリキュラム選択用の画面が表示部205に表示される。先生は、表示された画面から目的のカリキュラムを選択する(S1202)。 First, the teacher operates the mobile terminal 2 to enter an account and password to log in (S1201). Then, the portable terminal 2 is connected to the server 1 via the network 9, and is connected to the site for creating the program in question. Then, a curriculum selection screen is displayed on the display unit 205 of the mobile terminal 2 . The teacher selects the desired curriculum from the displayed screen (S1202).

ここで、カリキュラムの選択からシート30の用意までの動作について説明する。カリキュラムの選択は、図15(A)に示すような、カリキュラム一覧表の画面が携帯端末2の表示部205に表示される。先生は、表示されたカリキュラム一覧表から目的とするカリキュラム(課題)を選択する。すると、図15(B)に示すように、選択された課題の詳細を表す画面が表示される。先生は課題の詳細内容を確認して了解ならば、その画面の下にある「シート」を選択する。すると、図15(C)に示すような、当該カリキュラムに対応したシートが印刷される。シートの印刷は予め指定されたプリンタを用いて行うことができる。なお、学校の授業でプログラミングを行う場合には、授業内容を予め理解しておく必要があるので、ここまでの動作を予め完了しておき、シートを事前に準備することができる。
なお、図15(A)~(C)に示すような、画面の情報は管理情報DB105に記憶されていて、携帯端末2の入力指示に応じて携帯端末2へ送信されて表示される。
Here, the operation from selection of the curriculum to preparation of the sheet 30 will be described. When the curriculum is selected, a curriculum list screen is displayed on the display unit 205 of the mobile terminal 2 as shown in FIG. 15(A). The teacher selects a desired curriculum (task) from the displayed curriculum list. Then, as shown in FIG. 15B, a screen showing details of the selected assignment is displayed. The teacher confirms the details of the assignment and, if he or she agrees, selects "Sheet" at the bottom of the screen. Then, a sheet corresponding to the curriculum is printed as shown in FIG. 15(C). Sheet printing can be performed using a predesignated printer. In the case of programming in a school class, it is necessary to understand the content of the class in advance, so the operations up to this point can be completed in advance and the sheet can be prepared in advance.
15A to 15C, screen information is stored in the management information DB 105, and is transmitted to and displayed on the mobile terminal 2 in response to an input instruction on the mobile terminal 2. FIG.

実際のプログラミンングの授業に際して、先生は、用意されたシート30とチップセット40を複数の生徒に配布して(S1203)、プログラミングの出題をする(S1204)。出題とは、図15(B)に示された課題を説明することである。例えば、カリキュラムの「トレーニング1」に対応する設題「りんごをテーブルに置いて部屋から出ましょう」のような題目である。少し高度な出題(例えば「入門3」)としては、諸動作を一つ一つ言わずに「ウサギさんとカメさんが競争する運動会」というような設題もあり得る。 In an actual programming class, the teacher distributes prepared sheets 30 and chip sets 40 to a plurality of students (S1203), and sets programming questions (S1204). The assignment is to explain the assignment shown in FIG. 15(B). For example, it is a subject such as "Put an apple on the table and leave the room" corresponding to "Training 1" in the curriculum. As a slightly advanced question (for example, "Introductory 3"), there may be a question such as "Athletic meet where Mr. Rabbit and Mr. Turtle compete" without mentioning each action.

生徒は、プログラミング即ち、配布されたシート30上にチップ40を配列する作業を行う(S1211)。チップ40の配列作業の結果、例えば図7A~図7Cのように、シート30上にチップが配列される。実験例によれば、図7A~図7Cは、課題「りんごをテーブルに置いて部屋から出ましょう」について、複数の異なるチップの配列によって解答した例である。 The student performs programming, that is, the task of arranging the chips 40 on the distributed sheet 30 (S1211). As a result of the arranging operation of the chips 40, the chips are arranged on the sheet 30 as shown in FIGS. 7A to 7C, for example. According to the experimental example, FIGS. 7A to 7C show an example in which the task "Let's put the apple on the table and leave the room" was answered using a plurality of different chip arrangements.

シート30上におけるチップ40の配列作業が終了すると、先生は携帯端末2のカメラ206で作業済みのチップ配列シート40を撮影して、その撮影した画像をサーバ1へ送信する(S1205)。 When the work of arranging the chips 40 on the sheet 30 is completed, the teacher takes an image of the chip arrangement sheet 40 that has been worked on with the camera 206 of the mobile terminal 2, and transmits the taken image to the server 1 (S1205).

サーバ1では、受信した画像を基にプログラム作成処理を行う(S1206)。この処理については後で詳述する。サーバ1で作成されたプログラムは携帯端末2で実行される(S1207)。 The server 1 performs program creation processing based on the received image (S1206). This process will be detailed later. The program created by the server 1 is executed by the portable terminal 2 (S1207).

[プログラム作成処理]
次に、図13及び図14を参照して、プログラムの作成処理について説明する。
図13は、プログラムの作成処理の全体のフローチャートを示す。
この処理に先立って、先生の携帯端末2からサーバ1が運営するサイトをアクセスして、ユーザ管理テーブル90にはユーザ(生徒)の名前等を含む個人情報が登録されている。また、先生管理テーブル100には、先生の名前や携帯端末2のメールアドレス、及びプログラミング授業に関わるクラスの生徒(ユーザ)の識別IDが登録されている。
[Program creation process]
Next, program creation processing will be described with reference to FIGS. 13 and 14. FIG.
FIG. 13 shows a flowchart of the entire program creation process.
Prior to this process, the site managed by the server 1 is accessed from the teacher's mobile terminal 2, and personal information including the name of the user (student) is registered in the user management table 90. FIG. In the teacher management table 100, the name of the teacher, the e-mail address of the mobile terminal 2, and the identification ID of the student (user) in the class involved in the programming class are registered.

更に、図12のカリキュラム選択処理(S1202)により、カリユラム選択画面(図15)を用いてカリキュラムを選択して、カリキュラム管理テーブル80から選択されたカリキュラム番号が、先生管理テーブル100に登録される。なお、本例の処理では、生徒個人毎に異なるカリキュラムを選択しないので、ユーザ管理テーブル90には選択されてカリキュラム番号を登録する必要がない。
また、図12に示すように、シート30と、選択されたカリキュラム番号に対応するチップセットが複数の生徒に配布され、プログラミング授業において生徒はシート30上にチップ40を配列する作業を完了した、とする。
12, a curriculum is selected using the curriculum selection screen (FIG. 15), and the curriculum number selected from the curriculum management table 80 is registered in the teacher management table 100. FIG. In the processing of this example, since a different curriculum is not selected for each individual student, there is no need to register the selected curriculum number in the user management table 90 .
Also, as shown in FIG. 12, a sheet 30 and a chip set corresponding to the selected curriculum number are distributed to a plurality of students, and the students complete the task of arranging chips 40 on the sheet 30 in the programming class. and

ここで、図7A~図7Cを参照して、チップの配列の例について説明しておきたい。
このチップ配列の例は、課題「りんごをテーブルに置き部屋から出ましょう」に対して、3人の生徒がそれぞれ別のチップ配列を行った例である。図7A~図7Cの何れも同じ動作を行い、正解となる。因みに、図示のチップの配列に基づくプログラム命令による動作は、以下の通りになる。
・右に2歩
・下に3歩
・拾う
・左に2歩
・置く
・下に2歩
・扉を開ける。
Here, an example of chip arrangement will be described with reference to FIGS. 7A to 7C.
This example of chip arrangement is an example in which three students arranged different chips for the task "Let's put an apple on the table and leave the room." All of FIGS. 7A to 7C perform the same operation and are correct. By the way, the operation according to the program instructions based on the illustrated chip arrangement is as follows.
・Two steps to the right ・Three steps down ・Pick up ・Two steps to the left ・Place ・Two steps down ・Open the door.

説明を図13に戻す。先生は、携帯端末2を操作してログインを行う(S1301)。この場合、サーバ1の情報管理部102は、先生管理テーブル100を参照して、先生識別IDを確認し、もしカリキュラム番号が登録されていない場合には、携帯端末1の表示部に、カリキュラムの選択を促す画面を表示して、図12に基づく画面から上記のような処理を行わせる。そして、情報管理部102は、先生管理テーブル100に登録されたカリユラム番号を基にカリユラム管理テーブル80を参照して、カリユラム管理テーブル80に登録されているアプリケーションを起動する(S1302)。アプリケーションが起動されると、選択されたカリキュラム番号を登録したカリユラム管理テーブル80の情報が携帯端末2のメモリに取り込まれて記憶される。 Return the description to FIG. The teacher logs in by operating the portable terminal 2 (S1301). In this case, the information management unit 102 of the server 1 refers to the teacher management table 100 to confirm the teacher identification ID. A screen prompting selection is displayed, and the above processing is performed from the screen based on FIG. Then, the information management unit 102 refers to the curriculum management table 80 based on the curriculum number registered in the teacher management table 100, and activates the application registered in the curriculum management table 80 (S1302). When the application is started, the information of the curriculum management table 80 in which the selected curriculum number is registered is taken into the memory of the mobile terminal 2 and stored.

先生は、携帯端末2のバーコードリーダ207を用いてシート2の識別部305を読ませる。更に、カメラ206を用いてチップ40が配列されたシート(チップ配列シート)30を撮影する。識別部305の情報及びチップ配列シートの撮影された画像(チップ配列シート画像)は一時、メモリ203に格納される(S1303)。チップ配列シート画像をメモリ203に登録する場合、当該画像が特定のユーザ(生徒)によって作成された旨を表示するために、先生は入力部204からユーザ識別ID(この場合、生徒識別ID)を入力する。チップ配列シート画像にはユーザ識別IDが付与されてメモリ203に格納される。 The teacher uses the barcode reader 207 of the portable terminal 2 to read the identification portion 305 of the sheet 2 . Further, the camera 206 is used to photograph the sheet (chip array sheet) 30 on which the chips 40 are arrayed. The information of the identification unit 305 and the captured image of the chip array sheet (chip array sheet image) are temporarily stored in the memory 203 (S1303). When registering a chip array sheet image in the memory 203, the teacher inputs a user identification ID (in this case, a student identification ID) from the input unit 204 in order to indicate that the image was created by a specific user (student). input. A user identification ID is assigned to the chip array sheet image and stored in the memory 203 .

識別部305からの情報にはカリキュラムを識別する情報が含まれており、CPU202がその識別情報とカリユラム管理テーブル80に登録されたカリキュラム番号と比較する。比較の結果、両者が一致すると、使用されたシート30が正しいと判断して、その後の処理を継続させる。一方、比較の結果正しくないと判断すると、CPU202は表示部205にその旨を表示して、シート30及びカリキュラム番号の確認を促す。 Information from the identification unit 305 includes information for identifying the curriculum, and the CPU 202 compares the identification information with the curriculum number registered in the curriculum management table 80 . As a result of the comparison, if the two match, it is determined that the used sheet 30 is correct, and the subsequent processing is continued. On the other hand, if the result of the comparison is determined to be incorrect, the CPU 202 displays a message to that effect on the display unit 205 and prompts confirmation of the sheet 30 and the curriculum number.

カリキュラム番号に対応した正規のシート30が使用された場合、CPU202はネットワーク接続部208を介して、チップ配列シート画像をサーバ1へ送信する(S1303)。チップ配列シート画像のサーバ1への送信は、生徒ごとのチップ配列シート画像を取得する度に行ってもよいし、複数の生徒のチップ配列シート画像がメモリ203に蓄積された時に行ってもよい。チップ配列シート画像には、先生識別ID、カリキュラム番号及びユーザ識別ID(この例では生徒識別ID)が付与されてサーバ1へ送信される。 When the regular sheet 30 corresponding to the curriculum number is used, the CPU 202 transmits the chip arrangement sheet image to the server 1 via the network connection section 208 (S1303). The transmission of the chip array sheet image to the server 1 may be performed each time a chip array sheet image for each student is obtained, or may be performed when the chip array sheet images of a plurality of students are accumulated in the memory 203. . A teacher identification ID, a curriculum number, and a user identification ID (in this example, a student identification ID) are added to the chip array sheet image and transmitted to the server 1 .

サーバ1がチップ配列シート画像を受信すると、情報管理部102は、送信元のアドレスが先生管理テーブル100に登録されたメールアドレスかを確認する。更に、受信したチップ配列シート画像に付与された生徒識別ID及び先生識別IDを取得して、先生管理テーブル100に登録されたものかを確認する。この確認の結果正しければ、画像処理及びプログラム作成処理に移る。(なお、ユーザ個人が自らの携帯端末からチップ配列シート画像をサーバへ送信する場合には、情報管理部102はユーザ管理テーブル90を参照して、正規に登録されたメールアドレスかを確認することになる。)
プログラム作成処理に際して、まず画像処理部104が、取得した上記画像からチップの有する絵柄の画像を認識する処理を行う(S1304)。その後、プログラム作成処理部103が、認識結果に基づいてプログラムの生成処理を行う(S1305)。これらの処理については、図14を参照して後述する。
When the server 1 receives the chip arrangement sheet image, the information management section 102 confirms whether the sender's address is the mail address registered in the teacher's management table 100 . Furthermore, the student identification ID and the teacher identification ID given to the received chip arrangement sheet image are obtained, and it is confirmed whether they are registered in the teacher management table 100 . If the result of this confirmation is correct, the process moves to image processing and program creation processing. (In addition, when the individual user transmits the chip arrangement sheet image to the server from his/her mobile terminal, the information management unit 102 refers to the user management table 90 to check whether the mail address is properly registered. become.)
In the program creation process, first, the image processing unit 104 performs a process of recognizing the image of the pattern of the chip from the obtained image (S1304). Thereafter, the program creation processing unit 103 performs program creation processing based on the recognition result (S1305). These processes will be described later with reference to FIG.

プログラム作成処理部103で作成されたプログラムデータは、情報管理部102の処理に従って、プログラム管理テーブル110に格納される。即ち、プログラム管理テーブル110において、「ユーザID」には当該プログラムを作成したユーザである生徒IDが、「カリキュラム番号」には先生管理テーブル100に登録されたカリキュラム番号が、「プログラム」には作成されたプログラムデータが、「プログラムの登録日時」にはプログラムを格納した日時が、それぞれ登録される。 The program data created by the program creation processing unit 103 is stored in the program management table 110 according to the processing of the information management unit 102 . That is, in the program management table 110, the "user ID" is the student ID of the user who created the program, the "curriculum number" is the curriculum number registered in the teacher management table 100, and the "program" is the created program. The date and time when the stored program data is registered, and the date and time when the program is stored are registered in the "program registration date and time".

その後、プログラム管理テーブル110に登録されたプログラムを実行することができる(S1307)。一例では、プログラムの実行はその前段にプログラムのテスト及びその確認の処理を含んでいる。それは、チップ40の配列において、制御文のチップやパラメータのチップが所定の規則に従って配列されていないとか、「END」が無い等の場合があり、これらはプログラムの実行上エラーとしなければならないからである。テスト及び確認の処理においてそのようなエラーが発見されると、プログラムデータの修正作業に移る。 After that, the program registered in the program management table 110 can be executed (S1307). In one example, program execution includes a program test and verification process before it. This is because, in the arrangement of the chips 40, there are cases where the control statement chips and parameter chips are not arranged according to a predetermined rule, or there is no "END", and these must be regarded as errors in the execution of the program. is. When such errors are found in the testing and verification process, the program data is corrected.

すなわち、プログラムのテスト及び確認のために、プログラム管理テーブル110に格納されたプログラムデータはネットワーク9を介して、送信元の携帯端末2へ送信され、CPU202で実行される。CPU202によるプログラムの実行は、例えばカリキュラム管理テーブル80に登録されたキャラクタの動画として、表示部205に表示される。先生は、表示部205に表示される動画を見て、当初設定した「課題」とカメラで取得されたチップ配列シート画像におけるチップ配列を基に、表示された動画が正しいか、を判断する。その結果、正しくないと判断した場合には、そのプログラムを作成した生徒に対して口頭でプログラミングの修正を指示する。併せて、入力部204より当該プログラムの修正を指示すると、その指示はサーバ1へ送信されて、プログラム管理テーブル110に修正中のフラグ(図示せず)が記憶される。生徒によるプログラミングの修正が終わると、上述した動作と同様にして、修正されたチップ配列シート画像がサーバ1へ送信される。この場合、同様にして、プログラム管理テーブル110に修正された(修正版)プログラムデータが格納される。併せてプログラム管理テーブル110の修正日時が登録される。 That is, for testing and confirmation of the program, the program data stored in the program management table 110 is transmitted via the network 9 to the mobile terminal 2 as the transmission source and executed by the CPU 202 . Execution of the program by the CPU 202 is displayed on the display unit 205 as, for example, animation of characters registered in the curriculum management table 80 . The teacher looks at the moving image displayed on the display unit 205 and judges whether the displayed moving image is correct based on the initially set "task" and the chip arrangement in the chip array sheet image acquired by the camera. As a result, when it is determined that the program is not correct, the student who created the program is instructed orally to correct the programming. At the same time, when an instruction to modify the program is given from the input unit 204, the instruction is transmitted to the server 1, and a flag (not shown) indicating that the program is being modified is stored in the program management table 110. FIG. After the student has finished correcting the programming, the corrected chip array sheet image is sent to the server 1 in the same manner as the operation described above. In this case, corrected (corrected version) program data is similarly stored in the program management table 110 . At the same time, the modification date and time of the program management table 110 are registered.

修正版プログラムは、上記と同様にして、先生が所持する携帯端末2で実行される。その結果、エラーが無ければ、その旨がサーバ1へ送信されて、プログラム完成を示すフラグ(図示せず)がプログラム管理テーブル110に登録される。
なお、完成後のプログラムの実行の例については、図16を参照して後述する。
The modified program is executed on the mobile terminal 2 owned by the teacher in the same manner as described above. As a result, if there is no error, a message to that effect is sent to the server 1 and a flag (not shown) indicating completion of the program is registered in the program management table 110 .
An example of execution of the completed program will be described later with reference to FIG.

次に、図14のフローチャートを参照して、画像処理(S1304)と、プログラム作成処理(S1304)を詳しく説明する。
画像処理(S1304)は、チップ配列シート画像から、個々のチップ40に描かれた絵柄の画像を認識して切り出す処理である。カメラ206で撮影された画像が傾いていることがあるので、まず、画像補正(S1401)の処理において、シート30の画像を基に画像の傾きを補正する。例えば、縦軸(Y軸)対してシート30のガイドライン304がある角度θ傾いていると判断したら、取得した画像全体を角度θ回転させて縦軸とガイドライン304を合せる。
Next, the image processing (S1304) and program creation processing (S1304) will be described in detail with reference to the flowchart of FIG.
The image processing (S1304) is a process of recognizing and cutting out images of patterns drawn on individual chips 40 from the image of the chip arrangement sheet. Since the image captured by the camera 206 may be tilted, first, the tilt of the image is corrected based on the image of the sheet 30 in image correction processing (S1401). For example, if it is determined that the guideline 304 of the sheet 30 is tilted at an angle θ with respect to the vertical axis (Y-axis), the entire acquired image is rotated by an angle θ to align the vertical axis and the guideline 304 .

次に、画像パターマッチング(S1402)において、命令テーブル50を参照しながら、チップ配列を構成する各チップ40が有する絵柄の画像が、命令テーブル50に登録された絵柄と一致するかを判断する。この処理により、命令テーブル50に登録された絵柄の画像に対応するコードデータが選択される。仮にもし、シート30上に消しゴムやごみ等があっても、それらの画像は選択されない(除外される)。画像パターンマッチングにおいては、取得されたチップ配列画像について、命令テーブル50に登録された全ての画像と比較することは行わず、カリユラム管理テーブル80に当初登録された命令参照番号に対応するチップ画像のみを対象として比較することで、処理時間の高速化を図っている。画像パターンマッチングの結果出力されるコードデータ(命令コード)には、当該絵柄画像が認識された場所の座標情報(シート30上のX/Y座標情報)が付加される。 Next, in image pattern matching (S1402), referring to the instruction table 50, it is determined whether or not the pattern image of each chip 40 constituting the chip array matches the pattern registered in the instruction table 50. FIG. Through this processing, the code data corresponding to the image of the pattern registered in the command table 50 is selected. Even if there is an eraser, dust, etc. on the sheet 30, those images are not selected (excluded). In the image pattern matching, the obtained chip array image is not compared with all the images registered in the instruction table 50, and only the chip images corresponding to the instruction reference numbers initially registered in the curriculum management table 80 are compared. We are trying to speed up the processing time by comparing the target. Coordinate information (X/Y coordinate information on the sheet 30) of the location where the pattern image is recognized is added to the code data (instruction code) output as a result of image pattern matching.

プログラム作成処理(S1304)おいては、上記画像処理により特定された絵柄の画像に対応する命令コードを整列させる(S1403)。命令コードを整列する理由は、パターンマッチングで認識された絵柄の画像は命令コードには変換されたが、その配列は未だチップ40が配列された状態のままであるため、命令コードを並び直して整列させるためである。この整列は、命令コードに付加された座標情報を基に例えばY座標を基準として揃える。更にプログラムの生成に際して、命令テーブル50を参照して命令コードの並び方が正しいかを確認する。例えば、上記画像処理の結果、「動く」の命令コードの右隣りにパラメータ「回数」の命令コードが並ぶ場合は正しいが、「拾う」や「置く」の命令コードの右隣りにパラメータ「回数」が並ぶ場合は、命令テーブル50で許可していないので正しくないと判断する。並び方が正しくない場合、一例ではそのパラメータを無視する。また、命令コードに対するパラメータの並び方が正しい場合であっても、パラメータの命令コードが許容範囲を超えて右側にずれている場合には、その命令コードを左側に移動させて、例えば「動く」命令コードの右隣りに整列させる。 In the program creation process (S1304), the instruction codes corresponding to the image of the pattern specified by the image processing are aligned (S1403). The reason for arranging the instruction code is that although the image of the pattern recognized by pattern matching is converted into the instruction code, the arrangement still remains in the state in which the chips 40 are arranged. This is for alignment. This alignment is based on coordinate information added to the instruction code, for example, with the Y coordinate as a reference. Furthermore, when generating the program, the instruction table 50 is referenced to confirm whether the order of the instruction codes is correct. For example, as a result of the above image processing, if the command code for the parameter "count" is lined up to the right of the command code for "move", it is correct. are lined up, the command table 50 does not permit it, so it is determined to be incorrect. If the alignment is incorrect, one example ignores the parameter. Also, even if the arrangement of the parameters for the instruction code is correct, if the instruction code of the parameter is shifted to the right beyond the allowable range, the instruction code is moved to the left and, for example, a "move" instruction is executed. Align right next to the code.

命令コードの整列及び確認が終了すると、整列された命令コードの順にプログラムコード化してプログラムデータを生成する(S1404)。作成されたプログラムのデータは、プログラム管理テーブル110の「プログラム」エリアに格納される。プログラム管理テーブル110には、ユーザ識別ID、カリキュラム番号、プログラム登録日時も併せて登録される。 After the instruction codes are aligned and confirmed, the aligned instruction codes are coded in order to generate program data (S1404). The created program data is stored in the “program” area of the program management table 110 . The program management table 110 also registers a user identification ID, a curriculum number, and a program registration date and time.

上記の処理動作によりチップ40の絵柄の配列に基づくプログラムが作成される。例えば、図7Aから図7Cに示すように、同じ設題でありながらチップの配列が異なると、命令コードの配列も異なるので、プログラムとしては別のものとなる。然し、プログラムの実行によって表示部205の画面に表示されるキャラクタの動作は同じになる。 A program based on the pattern arrangement of the chips 40 is created by the above processing operations. For example, as shown in FIGS. 7A to 7C, if the same subject is used but the arrangement of the chips is different, the instruction code arrangement is also different, resulting in a different program. However, the actions of the characters displayed on the screen of the display unit 205 by executing the program are the same.

[プログラムの実行]
実施例1では、作成されたプログラムは、先生が所持する携帯端末2のCPU202で実行される。プログラムの実行は、キャラクタの動作を伴う動画として表示部205の画面に表示される、とした。しかし、これに限らず、プログラムは種々の機器で実行される。
[Run program]
In Example 1, the created program is executed by the CPU 202 of the mobile terminal 2 owned by the teacher. It is assumed that the execution of the program is displayed on the screen of the display unit 205 as a moving image accompanied by the action of the character. However, the program is not limited to this, and can be executed on various devices.

図16は、プログラム作成支援システムにおいてサーバ1に接続される機器(接続機器という)を示す。例えば、サーバ1にはネットワーク9を介して、スクリーンに動画や映像を投影するプロジェクタや大型表示装置151、音響機器152、ロボットやミニカー等の動作機器153、を含む機器が接続される。 FIG. 16 shows devices (referred to as connected devices) connected to the server 1 in the program creation support system. For example, the server 1 is connected via the network 9 to devices including a projector for projecting moving images and images on a screen, a large-sized display device 151, an audio device 152, and an action device 153 such as a robot or minicar.

プログラムが実行される接続機器は1つの限らず、複数の機器で可能である。例えば、図5に示す命令リストの入出力命令の中から「音を鳴らす」が用いられる場合、表示装置151にキャラクタの動作が表示され、さらに音響機器152から音声が発生される。他の例として、音声を発するロボットを使用する場合、図5に示す命令リストの入出力命令の中から、「音を鳴らす」と「接続機器を制御」が用いられると、指定された先のロボットがプログラムの実行通りに動作し、かつロボットが備えるスピーカから音声が発せられる。 The connected device on which the program is executed is not limited to one, but can be multiple devices. For example, when "play sound" is used from among the input/output commands in the command list shown in FIG. As another example, in the case of using a robot that emits sound, if the input/output commands of the command list shown in FIG. The robot operates as the program is executed, and sounds are emitted from the speaker provided in the robot.

接続機器はインターネットに接続可能な、IPアドレスを有する全ての機器が対象となり得る。接続機器の管理は、サーバ1の管理情報DB105に、接続可能な機器のIPアドレス又はURLを登録する接続機器管理テーブルを用意しておき、接続機器管理テーブルを参照して出力先の接続機器を選択することで、プログラムが実行される機器への接続が可能である。接続機器の選択は、予め決めておいてもよいし、プログラムの完成した後に先生が所持する携帯端末2又は他の携帯端末から選択することができる。 The connection device can be all devices having an IP address that can be connected to the Internet. For management of connected devices, a connected device management table for registering the IP addresses or URLs of connectable devices is prepared in the management information DB 105 of the server 1, and the connected device of the output destination is selected by referring to the connected device management table. By selecting it, it is possible to connect to the device on which the program is executed. The connection device may be selected in advance, or may be selected from the mobile terminal 2 owned by the teacher or another mobile terminal after the program is completed.

[視覚障害者向けのプログラム作成支援システム]
上記実施例1は視覚正常者によるプログラム作成を前提としているが、本発明は視覚障害者がプログラム作成を行う場合にも有用である。その一例をあげれば、視覚障害者のためにシート30及び各チップ40には点字が施される。即ち、シート30のマトリックス線やガイドライン304、及びタイトル301や「スタート」マーク303は、上記した印刷の他に点字が形成される。また、各チップ40の所定の位置には上記した絵柄の他にチップの「名称」を表す点字が施される。さらに、命令テーブル50には、図5に示す構成に加えて、各チップの「名称」に対応して音符データが登録される。
[Program creation support system for the visually impaired]
Although the above embodiment 1 assumes that a visually impaired person creates a program, the present invention is also useful when a visually impaired person creates a program. For example, the sheet 30 and each chip 40 are embossed in Braille for the visually impaired. That is, the matrix lines of the sheet 30, the guideline 304, the title 301 and the "start" mark 303 are printed in braille in addition to the above printing. Further, at a predetermined position of each chip 40, Braille representing the "name" of the chip is applied in addition to the above-described pattern. Further, in the command table 50, in addition to the configuration shown in FIG. 5, musical note data is registered corresponding to the "name" of each chip.

ユーザはシート30及び各チップ40の点字を頼りにして、シート30上にチップ40を並べてプログラミングする。チップ配列シート画像をカメラで取得してからプログラムデータの生成までの動作は上記実施例1と同様である。プログラムの実行においては、携帯端末2の表示機能と音声出力機能を有効にして、或いは図16に示す音響機器152に接続して、プログラムを実行させることができる。プログラムの実行において、複数チップの配列の状態は音符による音の変化として出力されるので、視覚障害者はその音の変化を基にプログラムの出来ばえを把握することができる。 The user relies on the sheet 30 and Braille on each chip 40 to program the chips 40 side by side on the sheet 30 . The operation from acquiring the chip array sheet image with the camera to generating the program data is the same as in the first embodiment. In executing the program, the program can be executed by enabling the display function and the audio output function of the mobile terminal 2, or by connecting to the audio equipment 152 shown in FIG. In the execution of the program, the state of the arrangement of multiple chips is output as changes in the sounds of musical notes, so visually impaired people can grasp the performance of the program based on the changes in the sounds.

[他の例によるプログラム作成支援システム]
実施例1によるプログラム作成支援システムは、プログラム作成処理部103、画像処理部104、及び関連するテーブルや情報を記憶する管理情報DB105、プログラムDB106を全てサーバ1が有する。しかし、実施例2によるプログラム作成支援システムは、これらの処理機能やDBの全部又は一部を携帯端末2に持たせることができる。
[Program creation support system according to another example]
In the program creation support system according to the first embodiment, the server 1 has a program creation processing unit 103, an image processing unit 104, a management information DB 105 storing related tables and information, and a program DB 106. FIG. However, in the programming support system according to the second embodiment, the portable terminal 2 can have all or part of these processing functions and DB.

例えば、全ての処理機能及び関連するテーブルや情報を携帯端末2に持たせる場合、最初にプログラミング作成のサービスを行うサイト(例えばサーバ1が運営するサイト)にアクセスして、関係するアプリケーション(プログラム作成機能や関連する管理情報)をダウンロードして、携帯端末2に保持させる。あとは、上記実施例と同様にしてプログラムを作成することができる。この場合、シート30やチップ40は携帯端末2からの印刷指示により指定したプリンタで印刷して作成することができる。図13及び図14に示す処理は、携帯端末2が有するCPU202においてプログラムで実行される。 For example, when all the processing functions and related tables and information are provided in the mobile terminal 2, first access a site that provides a programming creation service (for example, a site operated by the server 1) and use the related application (program creation functions and related management information) and stored in the mobile terminal 2. After that, a program can be created in the same manner as in the above embodiment. In this case, the sheet 30 and the chip 40 can be created by printing with a printer designated by a print instruction from the mobile terminal 2 . The processing shown in FIGS. 13 and 14 is executed by a program in the CPU 202 of the mobile terminal 2. FIG.

また、一部の処理機能やDBを携帯端末2に持たせる例として、例えば、サーバ1には命令テーブル50を保持させて、携帯端末2にはカリキュラム管理テーブル80や、画像処理機能やプログラム作成機能を持たせることができる。この場合、カリキュラムに応じて用いられる命令と画像の対を、命令テーブル50から取得してカリキュラム管理テーブル80に記憶しておく。プログラム作成機能は、当該カリキュラム管理テーブル80を参照して、チップの画像に対応する命令を特定する処理を行うことができる。通常、サーバ1には、多くのユーザの携帯端末2が接続可能である。そこで、命令テーブル50には全ての命令と画像の対を母集団として管理しておき、ユーザの携帯端末2から要求で指定されたカリキュラムに応じて、命令テーブル50から選択された命令と画像の対のみを当該携帯端末2へ提供するのは有意義である。 Further, as an example in which the mobile terminal 2 has a part of the processing functions and the DB, for example, the server 1 holds the command table 50, and the mobile terminal 2 has a curriculum management table 80, an image processing function, and a program creation function. can have a function. In this case, pairs of commands and images used according to the curriculum are obtained from the command table 50 and stored in the curriculum management table 80 . The program creation function can refer to the curriculum management table 80 and perform a process of specifying an instruction corresponding to the image of the chip. Usually, the mobile terminals 2 of many users can be connected to the server 1 . Therefore, all pairs of commands and images are managed as a population in the command table 50, and commands and images selected from the command table 50 are selected according to the curriculum specified by the request from the mobile terminal 2 of the user. It makes sense to provide only the pair to the mobile terminal 2 in question.

[他の例によるプログラム作成の動作]
実施例1では、図12に示すように、先生が所持する携帯端末2を使用して、生徒が作成したシート30上のチップ40の配列を撮影するとした。しかし、プログラムの学習は学校の授業のみで行なわれるわけはなく、ユーザが自ら1人で行うこともできる。実施例3によれば、ユーザが携帯端末を所持していて、自分でログイン動作等の基本的な操作ができる。
[Other examples of programming behavior]
In Example 1, as shown in FIG. 12, the arrangement of chips 40 on a sheet 30 prepared by a student is photographed using the mobile terminal 2 possessed by the teacher. However, the learning of programs is not limited to school classes, and users can also learn by themselves. According to the third embodiment, the user owns the portable terminal and can perform basic operations such as login by himself/herself.

図17に示すように、ユーザは自ら携帯端末を用いてログインし(S1201)、カリキュラム選択(S1202)、シート及びチップセットの準備をして、プログラミングする(S1211´)。この場合、先生管理テーブル100は使用されずに、ユーザ管理テーブル90が使用される。それ以外の主な処理動作は実施例1と同様である。 As shown in FIG. 17, the user himself/herself logs in using a mobile terminal (S1201), selects a curriculum (S1202), prepares sheets and chipsets, and performs programming (S1211'). In this case, the user management table 90 is used instead of the teacher management table 100. FIG. Other main processing operations are the same as in the first embodiment.

また、このプログラム作成支援システムは、プログラム作成の学習以外にも、プログラムを作成するゲーム装置や、プログラムによる制御装置や玩具の制御のためのプログラム作成、等にも適用可能である。 In addition to program creation learning, this program creation support system is also applicable to game devices for creating programs, program creation for control of control devices and toys by programs, and the like.

[他の例によるプログラム作成支援処理フロー]
実施例1では、図13を参照する処理フローにおいて、画像の取込み、送信(S1303)からプログラムの作成処理(S1305)、プログラムの実行(S1307)、を一連の処理として行うように説明した。実施例4によれば、これらの処理ステップを複数に分けてそれぞれ別のタイミングで行うことも可能である。例えば、学校の授業において、第1回目では、シート30上にチップ40を並べるまでを学習させ、複数の生徒がそれぞれ作成したチップ配列をカメラ206で撮影して、複数のチップ配列シート画像をメモリ203に格納するまでとし、第2回目でメモリ203に格納されたチップ配列シート画像をサーバ1へ送信して、サーバでプログラム作成処理して、作成されたプログラムを携帯端末2へ送信させてメモリ203に格納して、1人の生徒のプログラムをテスト実行させるまでとし、3回目で残りの生徒の作成したプログラムをテスト実行させて、その後、プログラムの修正作業をさせる等、複数回に分けて実施することが可能である。特に学校の授業では、全体の生徒の進捗を見ながら進めることが重要なので、上記のように、プログラムの作成過程を幾つかに分けて進めることが有意義である。
[Program creation support processing flow according to another example]
In the first embodiment, in the processing flow with reference to FIG. 13, the process from capturing and transmitting an image (S1303) to creating a program (S1305) and executing the program (S1307) is performed as a series of processes. According to the fourth embodiment, it is also possible to divide these processing steps into a plurality of steps and perform them at different timings. For example, in a school class, in the first lesson, students are taught to arrange chips 40 on a sheet 30, and the chip arrays created by a plurality of students are photographed by the camera 206, and a plurality of chip array sheet images are stored in memory. 203, and the second time, the chip arrangement sheet image stored in the memory 203 is transmitted to the server 1, the server performs program creation processing, and the created program is transmitted to the portable terminal 2 and stored in the memory. 203, until one student's program is tested, and in the third test, the programs created by the remaining students are tested, and then the program is corrected. It is possible to implement. Especially in school classes, it is important to proceed while observing the progress of all students, so it is meaningful to divide the program creation process into several steps as described above.

[他の例による管理テーブル]
実施例1では、カリキュラム管理テーブル80には当該カリキュラムで使用される全ての命令の参照番号(図5の命令テーブル50から選択された命令の参照番号)が登録されるとした。実施例5においては、命令テーブル50から選択された命令の、チップの画像、名称、動作、パラメータ、及び命令コードの各データを登録するようにしてもよい。さらに、携帯端末2にプログラム作成支援のためのアプリケーションをサーバ1からダウンロードしておくことで、チップ配列画像を基にプログラムを作成する処理を携帯端末2のCPU202で行える。
[Management table by another example]
In the first embodiment, the curriculum management table 80 registers reference numbers of all commands used in the curriculum (reference numbers of commands selected from the command table 50 of FIG. 5). In the fifth embodiment, the chip image, name, operation, parameter, and instruction code data of the instruction selected from the instruction table 50 may be registered. Furthermore, by downloading an application for supporting program creation from the server 1 to the mobile terminal 2, the CPU 202 of the mobile terminal 2 can create a program based on the chip array image.

実施例5の他の例として、ユーザの要求に応じて、命令テーブル50から選択された複数の命令と、シート30と、チップ40を提供して、最終的にユーザによるプログラムの作成を支援するビジネスが考えられる。この場合、カリキュラム管理テーブル80はユーザ毎の契約管理テーブルとなり、カリキュラム番号はユーザに固有の契約識別コードとなる。例えば、サーバ1の情報管理部102は、上記他の例を踏襲した、選択された命令の、チップの画像、名称、動作、パラメータ、及び命令コードの各データを登録した契約管理テーブルと、ユーザ管理テーブルと、プログラム管理テーブル、及びプログラム作成支援のためのアプリケーションをユーザの携帯端末2へ提供する。携帯端末2では、取得されたチップ配列画像を基にCPU202で、図13及び図14に示す処理によりプログラムの作成が行える。 As another example of the fifth embodiment, a plurality of instructions selected from an instruction table 50, a sheet 30, and a chip 40 are provided in response to a user's request to ultimately assist the user in creating a program. business can be considered. In this case, the curriculum management table 80 becomes a contract management table for each user, and the curriculum number becomes a contract identification code unique to the user. For example, the information management unit 102 of the server 1 includes a contract management table in which each data of the chip image, name, operation, parameter, and instruction code of the selected instruction is registered, and the user A management table, a program management table, and an application for supporting program creation are provided to the mobile terminal 2 of the user. In the mobile terminal 2, the CPU 202 can create a program based on the acquired chip arrangement image by the processes shown in FIGS. 13 and 14. FIG.

[他の例によるシート]
シート30は、図3に示したものに限定されない。チップ40の配列の容易性、簡便性を考慮すれば、プログラムエリア302に「スタート」マークや罫線やガイドライン304が印刷されている方が好ましいが、代案によれば、それらは必ずしも必要とされない。チップ40の配列の開始位置や配列方向が分れば、或いはある程度習熟したユーザならば、プログラムエリア302に罫線やガイドライン304は無くてもよいであろう。また、「スタート」マーク303は、「START」のチップで代用できる。
[Sheet with other examples]
The seat 30 is not limited to that shown in FIG. Considering the ease and convenience of arranging the chips 40, it is preferable that the program area 302 has a "start" mark, ruled lines, and guidelines 304 printed thereon, but according to an alternative, they are not necessarily required. If the starting position and direction of arrangement of the chips 40 are known, or if the user is somewhat skilled, the ruled lines and guide lines 304 may be omitted in the program area 302 . Also, the "start" mark 303 can be substituted with a "START" chip.

また、他の例によれば、シート30は必ずしも必要としない。要するに、チップ40の配列の規則に従って開始位置や配列方向、終了位置を明確にして、チップ40を白紙や机やテーブル上に配列し、その配列をカメラで撮影することで、上記実施例1と同様の作用ないし効果を得ることができる。カメラで取得される画像は、シート無しのチップ配列画像である。例えば、机上にチップを配列する場合、仮に机上に消しゴムや鉛筆等の異物があっても問題はない。それは、カメラで撮影した画像を基にした画像認識の過程において消しゴムや鉛筆の画像は除外されて、チップ固有の画像のみを認識して抽出することができるからである。 Also, according to another example, sheet 30 is not necessarily required. In short, by clarifying the start position, the arrangement direction, and the end position according to the rules for arranging the chips 40, arranging the chips 40 on a blank sheet of paper, a desk, or a table, and photographing the arrangement with a camera, it is possible to achieve the same effect as in the first embodiment. A similar action or effect can be obtained. An image acquired by the camera is a chip arrangement image without a sheet. For example, when arranging chips on a desk, there is no problem even if there is a foreign object such as an eraser or a pencil on the desk. This is because in the process of image recognition based on images taken by a camera, images of erasers and pencils are excluded, and only images unique to the chip can be recognized and extracted.

また、シートを用いない他の例として、例えば、チップ40を縦横1~2m程の四辺形の厚紙カードで作成して、このカードを校庭に並べることでプログラミングして、そのカードの配列を、ドローンに搭載した無線通信機能付きのカメラで高所から撮影することで、チップ配列の画像を取得することも可能である。 As another example that does not use a sheet, for example, the chips 40 are made of quadrilateral cardboard cards about 1 to 2 meters in length and width, and the cards are arranged in the schoolyard for programming. It is also possible to acquire an image of the chip array by shooting from a high place with a camera equipped with a wireless communication function mounted on the drone.

[課題シートの例]
実施例7は、図15(B)に示した、課題(カリキュラム)シートの具体例である。図18に示すように、課題シート70には主に、課題文702と、絵図が記載されており、課題(又は課題シート)を管理するために、課題番号701と、識別部705を有する。識別部705は、課題を識別するための識別情報(課題識別情報)を含む二次元バーコードで形成される。課題識別情報は、カリキュラム管理テーブル80に登録されるカリキュラム番号と対応付けられる。
[Example of assignment sheet]
Example 7 is a specific example of the assignment (curriculum) sheet shown in FIG. 15(B). As shown in FIG. 18, the task sheet 70 mainly contains a task sentence 702 and a picture, and has a task number 701 and an identification section 705 for managing the task (or task sheet). The identification part 705 is formed of a two-dimensional barcode including identification information (task identification information) for identifying the task. Assignment identification information is associated with a curriculum number registered in the curriculum management table 80 .

実施例1に照らして言えば、先生(又はユーザ)は、課題が変わる度にその課題に対応した課題シート70を生徒に配布する。そして、先生(又はユーザ)は課題シート70を配布(使用)するとき(例えばS1204のとき)に、携帯端末2のバーコードリーダ207を用いて課題シート70の識別部705を読ませる。また、プログラム作成処理(図13)においては、アプリケーションの起動(ステップS1302)した後に、(実施例1における)シート3の識別部305をバーコードリーダ207で読ませる代わりに、課題シート70の識別部705をバーコードリーダ207で読ませる。これにより、課題シート70とカリキュラム管理テーブル80に登録されたカリキュラム番号と対応付けられる。他の動作は、実施例1と同様であり、図13における識別部305を、識別部705と読み替えれば理解できるであろう。 In light of the first embodiment, the teacher (or user) distributes the assignment sheet 70 corresponding to the assignment to the students each time the assignment changes. Then, when the teacher (or the user) distributes (uses) the assignment sheet 70 (for example, at S1204), the barcode reader 207 of the portable terminal 2 is used to read the identification portion 705 of the assignment sheet 70 . Further, in the program creation process (FIG. 13), after the application is started (step S1302), instead of having the barcode reader 207 read the identification section 305 of the sheet 3 (in the first embodiment), the task sheet 70 can be identified. The part 705 is read by the barcode reader 207 . As a result, the assignment sheet 70 and the curriculum number registered in the curriculum management table 80 are associated with each other. Other operations are the same as those of the first embodiment, and can be understood by replacing the identifying section 305 in FIG. 13 with the identifying section 705 .

この課題シート70を使用する場合、チップ40を配列するシートには識別部305が無くてよい。図19にこのシート30´の例を示す。つまり、実施例1によれば、カリキュラムが変わる度にシート30を替えているが、実施例7によれば、課題が変わるときに課題シート70を替えればよく、識別部305を有しないシート30´を変える必要がない。このため、シート30´はチップ40を配列する専用シート(例えば机上の台紙)として使用することができる。 When this task sheet 70 is used, the sheet on which the chips 40 are arranged may not have the identification section 305 . FIG. 19 shows an example of this sheet 30'. In other words, according to the first embodiment, the sheet 30 is changed every time the curriculum changes. ' does not need to be changed. Therefore, the sheet 30' can be used as a dedicated sheet for arranging the chips 40 (for example, a desk mount).

実施例7の応用例として、複数ページに亘る課題シート70を含む冊子をユーザに有償又は無償で提供する。この場合、識別部705は、課題識別情報の他に、プログラム作成サービスを行うサーバ1のサイト情報を含むのがよい。ユーザは、携帯端末2のバーコードリーダ207で、目的の課題シート70の識別部705を読ませて、その読取り情報を基にプログラム作成サービスのサイトへアクセスして、当該課題シート70に対応するカリキュラム管理テーブル80に登録された情報を取得して、プログラム作成のサービスを受けることができる。 As an application example of the seventh embodiment, a booklet containing a multi-page task sheet 70 is provided to the user for a charge or free of charge. In this case, the identification unit 705 preferably includes site information of the server 1 that provides the programming service, in addition to the assignment identification information. The user causes the bar code reader 207 of the mobile terminal 2 to read the identification part 705 of the target assignment sheet 70, accesses the site of the programming service based on the read information, and responds to the assignment sheet 70. The information registered in the curriculum management table 80 can be obtained, and the program creation service can be received.

[他の例によるチップ]
実施例8においては、チップ40を配列し易くするために、チップ40の外周部に凹凸が設けられる。図20に示すように、平板状のチップ40には、上辺と左辺に三角形状の凹部411,412が形成され、右辺と下辺には三角形状の凸部421,422が形成される。チップ40に凹凸を設けた理由は、チップ401の配列を規制するため、換言すればチップの配列の簡便化のためである。図21に示すように、ユーザは、あるチップの凸部を、他のチップの凹部に係合するようにして、複数のチップ40を順に容易に配列(或いは組合せと言ってもよい)することができる。具体例として、図22に示すように、「動く:方向付き」命令はパラメータを付加することができるので(図5参照)、「動く:方向付き」命令のチップ401は右辺に凸部422を持ち、パラメータのチップ402は左辺にのみ凹部412を有する。図22には示していないが、図5を参照したチップの凹凸の他の例として、例えば、「拾う」命令にはパラメータが付加されないので、「拾う」命令のチップの右辺には凸部が無い。また、全てのパラメータは、動作命令や制御命令等に付加されるので、パラメータのチップの左辺にのみ凹部412を有し、他の辺には凹部や凸部を有しない。また、図22に示すように、「終了」命令のチップ401は、上辺にのみ凹部411を有する。
[Tips according to other examples]
In the eighth embodiment, unevenness is provided on the outer peripheral portion of the chip 40 in order to facilitate the arrangement of the chips 40 . As shown in FIG. 20, a flat chip 40 has triangular concave portions 411 and 412 formed on its upper and left sides, and triangular convex portions 421 and 422 formed on its right and lower sides. The reason why the unevenness is provided on the chip 40 is to regulate the arrangement of the chips 401, in other words, to simplify the arrangement of the chips. As shown in FIG. 21, the user can easily arrange (or combine) a plurality of chips 40 in sequence by engaging the projections of one chip with the recesses of another chip. can be done. As a specific example, as shown in FIG. 22, a parameter can be added to the "move: with direction" command (see FIG. 5), so the chip 401 of the "move: with direction" command has a protrusion 422 on the right side. The parameter chip 402 has a recess 412 only on the left side. Although not shown in FIG. 22, as another example of unevenness of the chip with reference to FIG. None. Also, since all parameters are added to operation commands, control commands, etc., the parameter chip has a concave portion 412 only on the left side thereof, and does not have concave portions or convex portions on the other sides. Also, as shown in FIG. 22, the chip 401 for the "end" command has a concave portion 411 only on the upper side.

実施例8によれば、矩形状のチップ40の辺に適宜凹凸を形成し、それら複数のチップを配列させることで、命令やパラメータのチップの配列を管理することができる。これにより、チップの配列を一様に管理できるので、チップを配列するためのシート30を省略することが可能である。 According to the eighth embodiment, by appropriately forming irregularities on the sides of the rectangular chip 40 and arranging a plurality of such chips, the chip arrangement of commands and parameters can be managed. As a result, the arrangement of the chips can be managed uniformly, so that the sheet 30 for arranging the chips can be omitted.

また、チップの配列を管理できるので、画像処理における画像補正機能(S1401(図14))や、プログラム作成処理コードデータ整列機能(S1403)を実行するための時間や負荷を軽減することができ、全体としてプログラム作成のための時間を高速化できる。例えば、実施例1のように、凹凸が無いチップ40をシート30上に配列する場合、ガイドライン304があったとしても、複数のチップの左右の辺がデコボコとなったり、偏ったり、傾いて、配列されることが多々ある。このような場合には、画像補正機能(S1401)により正規に補正することができるが、そのための処理時間ないし負荷がかかる。一方、実施例8によれば、チップに設けた凹凸によりチップの配列が管理されるので、ユーザによるチップの配列のデコボコや傾き等が防止できる。そのため、画像処理プログラムによる画像補正機能(S1401)等の処理は殆ど不要となり、プログラム作成処理を高速化できる。 In addition, since the arrangement of chips can be managed, the time and load for executing the image correction function (S1401 (FIG. 14)) in image processing and the program creation processing code data alignment function (S1403) can be reduced. As a whole, the time for program creation can be speeded up. For example, when the chips 40 without unevenness are arranged on the sheet 30 as in the first embodiment, even if there is a guideline 304, the left and right sides of the plurality of chips are bumpy, biased, or tilted. They are often arranged. In such a case, normal correction can be performed by the image correction function (S1401), but processing time or load is required. On the other hand, according to the eighth embodiment, since the arrangement of the chips is managed by the unevenness provided on the chips, it is possible to prevent unevenness and inclination of the arrangement of the chips by the user. Therefore, processing such as the image correction function (S1401) by the image processing program is almost unnecessary, and the speed of program creation processing can be increased.

実施例8によれば、矩形状のチップの辺に三角形状の凹凸を形成しているが、凹凸形状は三角形状に限らず、半円形、四角、など種々適用できる。また、特定の命令には特定のパラメータしか適合しないような場合には、両者のチップには特定形状の凹凸を適用することができる。例えば、「ジャンプ」命令には、「向き、高さ」のパラメータのみが付加されるので、両者のチップは特定の関係にある。そのため、大多数の命令のチップに三角形状の凹凸が適用される中、「ジャンプ」命令のチップの右辺と、「向き、高さ」のパラメータのチップの左辺には、特別な凹凸(例えば半円形状の凹凸)を適用することができる。このようにすれば、「向き、高さ」のパラメータのチップが他の動作命令のチップのために選択されることを防止できる。 According to the eighth embodiment, triangular unevenness is formed on the sides of the rectangular chip, but the shape of the unevenness is not limited to the triangular shape, and various shapes such as a semicircular shape and a square shape can be applied. Also, if only certain parameters are suitable for a certain instruction, both chips can be applied with specific shapes of bumps. For example, a "jump" command is only given parameters of "orientation and height", so both chips have a specific relationship. Therefore, while the triangular unevenness is applied to the chips of the majority of instructions, special unevenness (for example, half Circular unevenness) can be applied. In this way, it is possible to prevent chips with "orientation, height" parameters from being selected for chips with other motion commands.

[他の例によるチップ]
チップ40に関する他の例として、チップ40に施した絵柄や形状、大きさは、図4乃至図5に示したものに限定されない。絵柄に関して言えば、図4に示したような抽象的な絵や文字に限らず、例えば、ウサギが走ったり、回転したり、物を拾うような具体的な絵でもよい。その方が幼児にとっては絵と命令の意味との関係が理解し易いであろう。他の例としてトランプやカルタでもよい。また、チップの形状は四辺形に限らず、種々の形状であってよい。例えばウサギが走ったり、寝たり、飛んだりする絵を切り抜いた形状でもよい。
[Tips according to other examples]
As another example of the chip 40, the pattern, shape, and size of the chip 40 are not limited to those shown in FIGS. As for the pattern, it is not limited to the abstract picture or characters shown in FIG. 4, but may be a concrete picture such as a rabbit running, spinning, or picking up an object. This would make it easier for infants to understand the relationship between the picture and the meaning of the command. Other examples include playing cards and karuta. Moreover, the shape of the chip is not limited to a quadrilateral, and may be various shapes. For example, it may be a shape cut out of a picture of a rabbit running, sleeping, or flying.

また、チップ40の呼び名に関して実施例1ではチップ40と言ったが、これに限らない。例えば、カード、パーツ(part)、ピース(piece)、小片、紙片、エレメント(element)、総称して部品とか物品と呼んでもよい。
チップは、配列しその後に片付けて収納する都合上平面状カードが好ましいが、必ずしも平面状部材に限らない。要は、配列することができる物品であって、物品が持つ絵柄や形状の特性(視認特性という)と命令とが一意に対応付けられるものであれば実現可能である。なお、視認特性を有する物品を、固有の表示を有する部品と呼んでもよいであろう。
In addition, although the chip 40 is referred to as the chip 40 in the first embodiment, the chip 40 is not limited to this. For example, cards, parts, pieces, strips, pieces of paper, and elements may be collectively called parts or articles.
The chips are preferably planar cards for the convenience of arranging them and then putting them away for storage, but they are not necessarily limited to planar members. In short, it can be realized as long as it is an item that can be arranged, and the characteristic of the pattern or shape of the item (referred to as visual recognition characteristic) is uniquely associated with the instruction. It should be noted that an article with visible characteristics may be referred to as a part with a unique indicia.

また、上記実施例ではチップ40の絵柄を画像認識することで命令と関係つけているが、これに限定されない。例えば、各チップ40に絵柄に加えて固有の数字やバーコードを付しておき、その数字やバーコードを認識することで、命令と対応付けすることも可能である。その場合、図5に示す命令テーブルには数字又はバーコードと命令との関係が登録されることになる。 Further, in the above embodiment, the pattern of the chip 40 is associated with the instruction by image recognition, but the present invention is not limited to this. For example, each chip 40 may be given a unique number or bar code in addition to a pattern, and by recognizing the number or bar code, it is possible to associate it with an instruction. In that case, the relationship between numbers or barcodes and commands is registered in the command table shown in FIG.

また、チップ40に関する他の例として、チップはユーザが自ら作成して使用することが可能である。例えば、ユーザは、図4と同じ形状及び絵柄のチップ40を手製で又はコピーにより作成してチップの数を増やすことができる。この場合、ユーザが作製したチップの絵柄が予め決められたものと同じ又は許容の範囲であれば、サーバ1の画像処理においてユーザが作成したチップ40の絵柄も同様の画像として認識するので問題はない。 As another example of the chip 40, the chip can be created and used by the user himself. For example, the user can increase the number of chips by hand-making or copying chips 40 having the same shape and pattern as those in FIG. In this case, if the pattern of the chip prepared by the user is the same as the predetermined one or within the allowable range, the pattern of the chip 40 prepared by the user is recognized as the same image in the image processing of the server 1, so there is no problem. do not have.

[その他の例]
上記実施例では、携帯端末2が有するバーコードリーダ207によって、シート30の識別部305を読み取るとした。代案では、カメラ206で識別部305を読み取って、画像認識機能により識別部305が有する識別情報を認識するようにすることもできる。
[Other examples]
In the above embodiment, the identification portion 305 of the sheet 30 is read by the barcode reader 207 of the mobile terminal 2 . Alternatively, the camera 206 can be used to read the identification section 305 and the identification information held by the identification section 305 can be recognized by the image recognition function.

また、上記実施例では、携帯端末2が持つカメラ206でシートに並べられたチップの配列を撮影するとした。代替例によれば、携帯端末のカメラに限らず、通信機能を有するカメラや、或いは通常のデジタルカメラで撮影したチップ配列の画像をUSBメモリやSDメモリに格納しておき、このメモリをプログラム作成用のサーバや端末に装填することでチップ配列の画像を取得することも可能である。
本発明は上記実施例ないし代替例以外にも、種々変形、応用して実施することができる。
In the above embodiment, the camera 206 of the mobile terminal 2 is used to photograph the array of chips arranged on the sheet. According to an alternative example, an image of the chip arrangement taken by a camera having a communication function or a normal digital camera is stored in a USB memory or an SD memory, and a program is created in this memory. It is also possible to obtain an image of the chip array by loading it into a server or terminal for the purpose.
The present invention can be practiced with various modifications and applications other than the above-described embodiments and alternatives.

1:サーバ 2:携帯端末 9:ネットワーク
102:情報管理部 103:プログラム作成処理部
104:画像処理部 105:管理情報DB 106:プログラムDB
202:CPU 203:メモリ 204:入力部
205:表示部 206:カメラ 207:バーコードリーダ
208:ネットワーク接続部
30:シート 301:タイトル 302:プログラムエリア
303:スタートマーク 304ガイドライン 305:識別部
40:チップ 50:命令テーブル 70:課題シート
80:カリキュラム管理テーブル 90:ユーザ管理テーブル
100:先生管理テーブル 110:プログラム管理テーブル
1: Server 2: Portable Terminal 9: Network 102: Information Management Unit 103: Program Creation Processing Unit 104: Image Processing Unit 105: Management Information DB 106: Program DB
202: CPU 203: Memory 204: Input section 205: Display section 206: Camera 207: Barcode reader 208: Network connection section 30: Sheet 301: Title 302: Program area 303: Start mark 304 Guideline 305: Identification section 40: Chip 50: Instruction table 70: Assignment sheet 80: Curriculum management table 90: User management table 100: Teacher management table 110: Program management table

Claims (5)

入力部と、表示部と、プログラムを実行するプロセッサと、記憶部と、を有する端末を用いて、プログラムの作成を支援するプログラム作成支援システムであって、
それぞれ固有のコードを有し、開始位置となるスタートマークを示すスタート物品と、動作を規定する複数の動作物品と、終了位置となるエンドマークを示すエンド物品を含む、複数の物品が用いられ、
プログラミングのためにユーザに提示される、少なくとも、課題文と絵図が記載されたカリキュラムと、カリキュラムを識別するカリキュラム識別情報の表示を有し、前記スタート物品と、前記複数の動作物品と、前記エンド物品が配置されるエリアを有しないカリキュラムシートが用いられ、
プログラミングのためのカリキュラムを識別する前記カリキュラム識別情報に応じて、該カリキュラムに基づくプログラミングに使用される、複数の各物品が有する前記コードと命令との対応付けを管理するカリキュラム管理テーブルと、
前記カリキュラムシートの前記カリキュラムの前記課題文と前記絵図に従って前記ユーザにより、前記カリキュラムシート以外の場所に並べられた複数の各物品の前記コードを取得する取得手段と、
該取得手段により取得された前記複数の各物品の該コードを認識するコード認識処理部と、
前記カリキュラム管理テーブルを参照して、該コード認識処理部で認識された前記コードに対応する命令を特定して、特定された複数の該命令から構成されるプログラムを生成するプログラム作成処理部と、を有し、
前記端末より前記ユーザの操作により指定される、カリキュラムに対応した前記カリキュラム管理テーブルが選択され、
前記取得手段は、前記スタート物品と、該スタート物品の後に配列された前記複数の動作物品と、前記エンド物品から形成される配列における各物品の前記コードを取得し、
前記コード認識処理部は、前記スタート物品と、前記エンド物品との間に配列された前記複数の動作物品の前記コードを認識し、
前記プログラム作成処理部は、選択された前記カリキュラム管理テーブルを参照して、前記コード認識処理部で認識された前記コードに対応する前記命令から構成されるプログラムを生成する
ことを特徴とするプログラム作成支援システム。
A program creation support system that supports creation of a program using a terminal having an input unit, a display unit, a processor that executes a program, and a storage unit,
A plurality of articles are used, each of which has a unique code and includes a start article that indicates a start mark that serves as a starting position, a plurality of action articles that define the action, and an end article that indicates an end mark that serves as an end position,
The program has a curriculum presented to a user for programming, in which at least task texts and pictures are described, and curriculum identification information for identifying the curriculum, the start item, the plurality of action items, and the end item. Curriculum sheets are used that do not have areas in which items are placed,
a curriculum management table for managing the correspondence between the code and instructions of each of a plurality of items used for programming based on the curriculum, according to the curriculum identification information for identifying the curriculum for programming;
Acquisition means for acquiring the code of each of a plurality of items arranged in a place other than the curriculum sheet by the user according to the assignment text and the picture diagram of the curriculum of the curriculum sheet;
a code recognition processing unit that recognizes the code of each of the plurality of articles acquired by the acquisition means;
a program creation processing unit that refers to the curriculum management table, identifies instructions corresponding to the code recognized by the code recognition processing unit, and generates a program composed of the identified instructions; has
selecting the curriculum management table corresponding to the curriculum designated by the user's operation from the terminal;
The acquiring means acquires the code of each item in an array formed from the starting item, the plurality of action items arranged after the starting item, and the end item,
The code recognition processing unit recognizes the code of the plurality of action items arranged between the start item and the end item,
The program creation processing unit refers to the selected curriculum management table and creates a program composed of the instructions corresponding to the codes recognized by the code recognition processing unit. support system.
前記端末はバーコードリーダを有し、該バーコードリーダが、前記カリキュラムシートの前記カリキュラム識別情報を読み取り、
読み取られた前記カリキュラム識別情報により、前記カリキュラム管理テーブルが選択される、請求項1に記載のプログラム作成支援システム。
the terminal has a barcode reader, the barcode reader reads the curriculum identification information on the curriculum sheet;
2. The program creation support system according to claim 1, wherein said curriculum management table is selected according to said read curriculum identification information.
前記複数の各物品は、固有の視認特性と、前記固有のコードを有する、請求項1に記載のプログラム作成支援システム。 2. The programming support system of claim 1, wherein each of said plurality of items has a unique visual characteristic and said unique code. 入力部と、表示部と、プログラムを実行するプロセッサと、記憶部と、を有する端末を用いて、プログラムの作成を支援するプログラム作成支援方法であって、
それぞれ固有のコードを有し、開始位置となるスタートマークを示すスタート物品と、動作を規定する複数の動作物品と、終了位置となるエンドマークを示すエンド物品を含む、複数の物品が用いられ、
プログラミングのためにユーザに提示される、少なくとも、課題文と絵図が記載されたカリキュラムと、カリキュラムを識別するカリキュラム識別情報の表示を有し、前記スタート物品と、前記複数の動作物品と、前記エンド物品が配置されるエリアを有しないカリキュラムシートが用いられ、
プログラミングのためのカリキュラムを識別する前記カリキュラム識別情報に応じて、該カリキュラムに基づくプログラミングに使用される、複数の各物品が有する前記コードと命令との対応付けをカリキュラム管理テーブルが管理するステップと、
前記カリキュラムシートの前記カリキュラムの前記課題文と前記絵図に従って前記ユーザにより、前記カリキュラムシート以外の場所に並べられた複数の各物品の前記コードを取得する取得ステップと、
該取得ステップにより取得された前記複数の各物品の該コードを認識するコード認識処理ステップと、
前記カリキュラム管理テーブルを参照して、該コード認識処理ステップで認識された前記コードに対応する命令を特定して、特定された複数の該命令から構成されるプログラムを生成するプログラム作成処理ステップと、を有し、
前記端末より前記ユーザの操作により指定される、カリキュラムに対応した前記カリキュラム管理テーブルが選択され、
前記取得ステップは、前記スタート物品と、該スタート物品の後に配列された前記複数の動作物品と、前記エンド物品から形成される配列における各物品の前記コードを取得し、
前記コード認識処理ステップは、前記スタート物品と、前記エンド物品との間に配列された前記複数の動作物品の前記コードを認識し、
前記プログラム作成処理ステップは、選択された前記カリキュラム管理テーブルを参照して、前記コード認識処理ステップで認識された前記コードに対応する前記命令から構成されるプログラムを生成する
ことを特徴とするプログラム作成支援方法。
A program creation support method for assisting creation of a program using a terminal having an input unit, a display unit, a processor for executing a program, and a storage unit,
A plurality of articles are used, each of which has a unique code and includes a start article that indicates a start mark that serves as a starting position, a plurality of action articles that define the action, and an end article that indicates an end mark that serves as an end position,
The program has a curriculum presented to a user for programming, in which at least task texts and pictures are described, and curriculum identification information for identifying the curriculum, the start item, the plurality of action items, and the end item. Curriculum sheets are used that do not have areas in which items are placed,
a step of managing, in a curriculum management table, the correspondence between the codes and instructions possessed by each of a plurality of articles used for programming based on the curriculum, according to the curriculum identification information for identifying the curriculum for programming;
an obtaining step of obtaining the code of each of the plurality of items arranged in a place other than the curriculum sheet by the user according to the assignment text and the diagram of the curriculum of the curriculum sheet;
a code recognition processing step for recognizing the code of each of the plurality of articles acquired by the acquiring step;
a program creation processing step of referring to the curriculum management table to identify instructions corresponding to the codes recognized in the code recognition processing step, and generating a program composed of the identified instructions; has
selecting the curriculum management table corresponding to the curriculum designated by the user's operation from the terminal;
the acquiring step acquires the code of each item in an array formed from the starting item, the plurality of action items arranged after the starting item, and the end item;
The code recognition processing step recognizes the codes of the plurality of action items arranged between the start item and the end item,
The program creation processing step refers to the selected curriculum management table and creates a program composed of the instructions corresponding to the codes recognized in the code recognition processing step. how to help.
前記端末が有するバーコードリーダが、前記カリキュラムシートの前記カリキュラム識別情報を読み取り、
読み取られた前記カリキュラム識別情報により、前記カリキュラム管理テーブルが選択される
請求項4に記載のプログラム作成支援方法。
a barcode reader of the terminal reads the curriculum identification information on the curriculum sheet;
5. The program creation support method according to claim 4, wherein said curriculum management table is selected according to said read curriculum identification information.
JP2020206879A 2020-12-14 2020-12-14 Program creation support system, its method, and its program Active JP7284516B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020206879A JP7284516B2 (en) 2020-12-14 2020-12-14 Program creation support system, its method, and its program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020206879A JP7284516B2 (en) 2020-12-14 2020-12-14 Program creation support system, its method, and its program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2020001314A Division JP6815052B2 (en) 2020-01-08 2020-01-08 Program creation support system and its method

Publications (2)

Publication Number Publication Date
JP2021060597A JP2021060597A (en) 2021-04-15
JP7284516B2 true JP7284516B2 (en) 2023-05-31

Family

ID=75381383

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020206879A Active JP7284516B2 (en) 2020-12-14 2020-12-14 Program creation support system, its method, and its program

Country Status (1)

Country Link
JP (1) JP7284516B2 (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140170606A1 (en) 2012-12-18 2014-06-19 Neuron Fuel, Inc. Systems and methods for goal-based programming instruction
JP2014229094A (en) 2013-05-23 2014-12-08 株式会社リコー Information processing device, information processing method and computer program
JP6087043B2 (en) 2007-07-31 2017-03-01 ライフスキャン・インコーポレイテッドLifescan,Inc. Differentiation of pluripotent stem cells using human feeder cells
JP2017517030A (en) 2014-05-07 2017-06-22 ジンウック キム Algorithm education device using blocks
JP2017121283A (en) 2016-01-05 2017-07-13 株式会社セガ トイズ Coding toy, block, stage, figure toy, and coding method
JP2017161770A (en) 2016-03-10 2017-09-14 株式会社デザイニウム Device, method, and program for programming learning
JP6491169B2 (en) 2016-11-17 2019-03-27 株式会社ニューギン Game machine
JP7104661B2 (en) 2019-06-04 2022-07-21 株式会社三共 Pachinko machine

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6087043U (en) * 1983-11-16 1985-06-15 島田 喜郎 Card for creating computer program drawings
JPS6491169A (en) * 1987-10-02 1989-04-10 Mitsuhiko Yamada Learning apparatus for computer
JPH0683601A (en) * 1992-09-02 1994-03-25 Fuji Facom Corp Program development support device
JP2804222B2 (en) * 1993-09-30 1998-09-24 日立ソフトウエアエンジニアリング株式会社 Courseware creation method
JP2011008554A (en) * 2009-06-26 2011-01-13 Keyence Corp Programming ability diagnosis device, programming ability diagnosis method, and computer program

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6087043B2 (en) 2007-07-31 2017-03-01 ライフスキャン・インコーポレイテッドLifescan,Inc. Differentiation of pluripotent stem cells using human feeder cells
US20140170606A1 (en) 2012-12-18 2014-06-19 Neuron Fuel, Inc. Systems and methods for goal-based programming instruction
JP2014229094A (en) 2013-05-23 2014-12-08 株式会社リコー Information processing device, information processing method and computer program
JP2017517030A (en) 2014-05-07 2017-06-22 ジンウック キム Algorithm education device using blocks
JP2017121283A (en) 2016-01-05 2017-07-13 株式会社セガ トイズ Coding toy, block, stage, figure toy, and coding method
JP2017161770A (en) 2016-03-10 2017-09-14 株式会社デザイニウム Device, method, and program for programming learning
JP6491169B2 (en) 2016-11-17 2019-03-27 株式会社ニューギン Game machine
JP7104661B2 (en) 2019-06-04 2022-07-21 株式会社三共 Pachinko machine

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
プログラミング教材を無料で 小学校算数を通して学ぶ,教育新聞[online],2017年08月09日,https://www.kyobun.co.jp/news/20170809_07/,[2022年07月29日検索]
原槙稔幸,子ども向け科学実験教室におけるプログラミング体験への拡張現実の導入に関する検討,情報処理学会第75回(平成25年)全国大会講演論文集(4),日本,一般社団法人情報処理学会,2013年03月06日,第385~386頁
商品パッケージのQRコードをスマートフォンで読み取ると記載情報を中・英・仏語などに切り替えて立体的に表示するインバウンド対応システムを開発,[online],2016年02月15日,https://www.dnp.co.jp/news/detail/1187578_1587.html,[2020年05月29日検索]
夛田 一貴,紙の配置や書き込みを活用したプログラミング環境の開発,筑波大学大学院博士課程システム情報工学研究科修士論文,pp. 8~14,18~23,https://www.iplab.cs.tsukuba.ac.jp/paper/master/tada_master.pdf,[online], 2017年3月, [2020年7月15日検索]
掛橋 駿,RFIDを用いた移動ロボットのプログラミング用ブロック型ツールの開発,ロボティクス・メカトロニクス 講演会2013 講演論文集,一般社団法人 日本機械学会,2013年05月21日,2P1-P03

Also Published As

Publication number Publication date
JP2021060597A (en) 2021-04-15

Similar Documents

Publication Publication Date Title
JP6253170B1 (en) Program creation support system and method
JP6957918B2 (en) Information display device, information display method, and program
JP6651148B2 (en) Program creation support system and method, and program therefor
JP6815052B2 (en) Program creation support system and its method
Bloomfield Evolution of a digital paper exam grading system
JP7284516B2 (en) Program creation support system, its method, and its program
JP5339574B2 (en) Answer information processing apparatus, scoring information processing apparatus, answer information processing method, scoring information processing method, and program
Sintoris et al. TaggingCreaditor: A tool to create and share content for location-based games for learning
Rice et al. E-Learning and the academic library: Essays on innovative initiatives
JP6633115B2 (en) Program creation support system and method, and program therefor
Pyykkönen et al. Activity pad: Teaching tool combining tangible interaction and affordance of paper
JP7184402B2 (en) Program creation support system and its method
JP6656689B2 (en) Programming support tool
Bloomfield et al. A tablet-based paper exam grading system
JP2005173348A (en) Terminal device for content operation, content display control method and program therefor, and content distribution system
JP6769391B2 (en) Data management system, data management method, data management device and data management program
JP7031173B2 (en) Information processing equipment, image forming equipment and programs
TWM524977U (en) Intelligent device of remotely controlling electronic book
González López et al. Atenea: Digitalizing Educational Games with Light Tables
JP2006195038A (en) Foul play prevention system
Węgrzyn-Odzioba Innovative Teaching Methods in Work with Social Science Students–Selected Mobile Applications
Nadoroski et al. EDUCATIONAL GAME FOR MOBILE DEVICES BASED ON AUGMENTED REALITY TO ASSIST CHILDREN'S LITERACY
Brown et al. Interactive Level Design for iOS Assignment Delivery: A Case Study
WO2018184109A1 (en) Method and system for missions and mission building
Broussard The Lyco Map Game

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220111

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20220309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220328

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220809

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220914

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221227

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230201

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230418

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230512

R150 Certificate of patent or registration of utility model

Ref document number: 7284516

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150