JP6793137B2 - A device that associates content with blocks - Google Patents

A device that associates content with blocks Download PDF

Info

Publication number
JP6793137B2
JP6793137B2 JP2018003635A JP2018003635A JP6793137B2 JP 6793137 B2 JP6793137 B2 JP 6793137B2 JP 2018003635 A JP2018003635 A JP 2018003635A JP 2018003635 A JP2018003635 A JP 2018003635A JP 6793137 B2 JP6793137 B2 JP 6793137B2
Authority
JP
Japan
Prior art keywords
block
execution
blocks
content
content data
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
JP2018003635A
Other languages
Japanese (ja)
Other versions
JP2019122484A (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.)
L E Tech CO Ltd
Original Assignee
L E Tech CO Ltd
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 L E Tech CO Ltd filed Critical L E Tech CO Ltd
Priority to JP2018003635A priority Critical patent/JP6793137B2/en
Priority to PCT/JP2018/048605 priority patent/WO2019138951A1/en
Publication of JP2019122484A publication Critical patent/JP2019122484A/en
Application granted granted Critical
Publication of JP6793137B2 publication Critical patent/JP6793137B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Toys (AREA)

Description

本発明は、ブロックにコンテンツを関連付けする装置に関する。 The present invention relates to a device that associates content with a block.

コンピュータプログラムなどのような動作を表すコンテンツの一部であるコンテンツデータなどを関連付けたブロックを並べて、その接続順に応じて、コンテンツの実行や、表示などを行う玩具が知られている。そのような玩具は、知育玩具、教育用玩具などとして知られている。従来のこのような玩具において、ユーザは、ブロックに関連付けされたコンテンツを変更することができない。 A toy is known in which blocks associated with content data, which is a part of content representing an operation such as a computer program, are arranged, and the content is executed or displayed according to the connection order. Such toys are known as educational toys, educational toys, and the like. In conventional such toys, the user cannot change the content associated with the block.

コンテンツデータを各ブロックに割り当てることによって、よりフレキシブルな遊び方を提供する玩具が望まれている。 A toy that provides a more flexible way of playing by allocating content data to each block is desired.

本発明の実施例によるブロック玩具は、ブロック制御装置と、前記ブロック制御装置に接続された一又は二以上の玩具用ブロックとを備え、前記ブロック制御装置は、前記ブロックに関連付けされているコンテンツデータと前記ブロックとの対応関係の少なくとも一部を入れ替えることができる。 The block toy according to the embodiment of the present invention includes a block control device and one or more toy blocks connected to the block control device, and the block control device includes content data associated with the block. At least a part of the correspondence between the block and the block can be replaced.

本発明の実施例によるブロック玩具において、前記玩具用ブロックは、所定のコンテンツを分割したコンテンツデータそれぞれに関連付けされている。 In the block toy according to the embodiment of the present invention, the toy block is associated with each of the content data obtained by dividing the predetermined content.

本発明の実施例によるブロック玩具において、前記玩具用ブロックは、互いが数珠繋ぎで接続されている。 In the block toy according to the embodiment of the present invention, the toy blocks are connected to each other by connecting beads.

本発明の実施例によるブロック玩具において、前記玩具用ブロックは、識別子を有する。 In the block toy according to the embodiment of the present invention, the toy block has an identifier.

本発明の実施例によるブロック玩具において、前記ブロック制御装置は、前記識別子を前記ブロックから収集し、前記ブロックの接続順序を特定し、前記ブロック制御装置は、さらに、前記接続順序に応じて、前記ブロックに関連付けされたコンテンツデータの実行又は再生を制御する。 In the block toy according to the embodiment of the present invention, the block control device collects the identifier from the block, specifies the connection order of the blocks, and the block control device further, according to the connection order, said. Controls the execution or playback of content data associated with a block.

本発明の実施例によるブロック玩具において、前記ブロック制御装置は、シグナル情報に基づいて前記ブロックのインデントの情報を特定する。 In the block toy according to the embodiment of the present invention, the block control device identifies the indent information of the block based on the signal information.

本発明の実施例によるブロック制御装置は、一又は二以上の玩具用ブロックに接続され、前記ブロックに関連付けされているコンテンツデータと前記ブロックとの対応関係の少なくとも一部を入れ替えることができる。 The block control device according to the embodiment of the present invention is connected to one or more toy blocks, and can replace at least a part of the correspondence between the content data associated with the block and the block.

本発明の実施例によるブロック制御装置は、玩具用ブロックと通信することができる。 The block control device according to the embodiment of the present invention can communicate with the toy block.

本発明の実施例によるブロックの実施例を示す。An example of the block according to the embodiment of the present invention is shown. ブロックを備えたシステムを示す。Indicates a system with blocks. スタートブロックの内部の概要を示す。An overview of the inside of the start block is given. コンテンツテーブル、識別子対応情報テーブル及びブロック接続情報テーブルを示す。The content table, the identifier correspondence information table, and the block connection information table are shown. 実行ブロックの内部の概要を示す。An overview of the inside of the execution block is given. コンテンツ識別子テーブルの変形例を示す。A modified example of the content identifier table is shown. 識別子対応情報テーブルの変形例を示す。A modified example of the identifier correspondence information table is shown. (a):スタートブロックの内部の概要を示す。(b):スタートブロックの第2の面を示す。(A): An outline of the inside of the start block is shown. (B): Shows the second surface of the start block. (a):実行ブロック第1の面を示す。(b):実行ブロックの内部の概要を示す。(c):実行ブロックの第2の面を示す。(A): Indicates the first surface of the execution block. (B): An outline of the inside of the execution block is shown. (C): Shows the second surface of the execution block. (a):制御ブロックの第1の面を示す。(b):制御ブロックの内部の概要を示す。(c):制御ブロックの第2の面を示す。(A): Shows the first surface of the control block. (B): An outline of the inside of the control block is shown. (C): Shows the second surface of the control block. 一つのスタートブロック及び3つの実行ブロックが接続されている状態を示す。Indicates a state in which one start block and three execution blocks are connected. 第4の実行ブロックを第3の実行ブロックに対して右にずらして配置している状態を示す。It shows a state in which the fourth execution block is shifted to the right with respect to the third execution block. 関数定義ブロック及び関数呼び出し(ファンクションコール)ブロックによる制御ブロックを用いた例を示す。An example using a control block consisting of a function definition block and a function call (function call) block is shown. 制御ブロックとして、条件分岐(ブランチ)ブロックを用いた例を示す。An example of using a conditional branch block as a control block is shown. 制御ブロックとして、繰り返し(ループ)ブロックを用いた例を示す。An example in which a repeating (loop) block is used as the control block is shown. 設定ブロックの内部の概要を示す。An overview of the inside of the configuration block is given. スタートブロック及び関数定義ブロックの接続例を示す。An example of connecting the start block and the function definition block is shown. 制御ブロックとして、繰り返し(ループ)ブロック及び条件分岐(ブランチ)ブロックを用いた例を示す。An example in which a repeating (loop) block and a conditional branch (branch) block are used as control blocks is shown.

以下の説明において、図中の同様の参照番号は同様の要素を示すものとする。 In the following description, similar reference numbers in the figures shall indicate similar elements.

概要
図1は、本発明の実施例によるブロックの実施例を示す。ブロックは、スタートブロック102、及び、実行ブロック105、110及び115を有する。実行ブロック105、110及び115は、例えば、プログラムの内容を表す命令又は命令を識別する情報を有する。実行ブロック105、110及び115は、それぞれのブロックに関連付けされたコンテンツに関する情報を少なくとも記憶する記憶媒体を備える。コンテンツに関する情報は、コンテンツそのものの情報、コンテンツを識別するための識別子などとすることができる。各ブロックの記憶媒体は、ブロックが接続されたときのブロックの位置や、接続順などの情報を記憶していてもよい。スタートブロック102は、記憶媒体を有しており、各ブロックと各コンテンツとの関係を表す情報、実行ブロック105、110及び115が接続されたときのブロックの位置や、接続順序などの情報を記憶していてもよい。記憶媒体は、不揮発性、揮発性もしくは両方でもよい。
Overview Figure 1 shows an embodiment of a block according to an embodiment of the present invention. The block has a start block 102 and execution blocks 105, 110 and 115. Execution blocks 105, 110 and 115 have, for example, an instruction representing the contents of a program or information identifying an instruction. Execution blocks 105, 110, and 115 include storage media that store at least information about the content associated with each block. The information about the content can be information about the content itself, an identifier for identifying the content, or the like. The storage medium of each block may store information such as the position of the block when the blocks are connected and the connection order. The start block 102 has a storage medium, and stores information indicating the relationship between each block and each content, information such as the block positions when the execution blocks 105, 110, and 115 are connected, and the connection order. You may be doing it. The storage medium may be non-volatile, volatile or both.

ブロック102、105、110及び115は、例えば、立方体の形状とすることができる。立方体の形状は、例示であり、ブロックの形状は、直方体、球体、三角柱、棒などの幾何学的形状であってもよい。さらに、ブロックの形状は、幾何学的形状ではない動物などのぬいぐるみや、自動車やロボットのような形態を模した形状であってもよい。言い換えると、ブロックは、物体として定義することもできる。スタートブロック102、及び、実行ブロック105、110及び115は、有線を介して互いに接続することができる。有線は、例えば、シリアル接続、パラレル接続、USBなどの有線接続手段によって実現される。また、接続は無線で実現されてもよい。言い換えると、各実行ブロックは、スタートブロック102に通信できればよい。 Blocks 102, 105, 110 and 115 can be, for example, in the shape of a cube. The shape of the cube is an example, and the shape of the block may be a geometric shape such as a rectangular parallelepiped, a sphere, a triangular prism, or a rod. Further, the shape of the block may be a shape that imitates a stuffed animal such as an animal that is not a geometric shape, or a shape such as a car or a robot. In other words, a block can also be defined as an object. The start block 102 and the execution blocks 105, 110 and 115 can be connected to each other via a wire. Wired is realized by a wired connection means such as serial connection, parallel connection, and USB. In addition, the connection may be realized wirelessly. In other words, each execution block only needs to be able to communicate with the start block 102.

図1において、実行ブロック105、110及び115それぞれは、プログラムの内容を表す命令(コンテンツ)又は命令を識別する情報を有している。実行ブロック105、110及び115における命令は、それぞれ、「↑」(上(前)に進む)、「→」(右に曲がる)及び「↑」(上(前)に進む)である。実行ブロック105、110及び115は、この順序にて数珠つなぎで物理的に接続される。これにより、実行ブロック105、110及び115は、互いに電気的に接続され、互いに通信を行う、もしくは、他の実行ブロックを介して少なくともスタートブロック102と通信を行うことができる。本実施例において、実行ブロック105、110及び115において、ブロック外部から認識可能なしるし「↑」、「→」及び「↑」は、それぞれのブロックの命令に関連付けされている。また、認識には、視覚的認識が含まれている。他の実施例において、認識は、触覚的認識や、聴覚的認識、嗅覚的認識及び味覚的認識などの少なくとも一つを含んでいてもよい。さらに、他の実施例において、認識がされなくてもよい。これにより、ブロックの命令を認識させないことで、ブロックを正しく配列することを困難にしてゲーム性を高めることができる。 In FIG. 1, each of the execution blocks 105, 110, and 115 has an instruction (content) representing the content of the program or information for identifying the instruction. The instructions in the execution blocks 105, 110, and 115 are "↑" (go up (forward)), "→" (turn right), and "↑" (go up (forward)), respectively. Execution blocks 105, 110 and 115 are physically connected in a string in this order. As a result, the execution blocks 105, 110 and 115 can be electrically connected to each other and communicate with each other, or can communicate with at least the start block 102 via another execution block. In the present embodiment, in the execution blocks 105, 110 and 115, the marks “↑”, “→” and “↑” that can be recognized from outside the block are associated with the instructions of the respective blocks. Cognition also includes visual recognition. In other embodiments, cognition may include at least one such as tactile cognition, auditory cognition, olfactory cognition and taste cognition. Furthermore, in other embodiments, it does not have to be recognized. As a result, by not recognizing the instruction of the block, it becomes difficult to arrange the blocks correctly and the game can be improved.

スタートブロック102は、実行ブロックの一つであるブロック105に物理的に接続される。これにより、スタートブロック102は、実行ブロック105、110及び115に電気的に接続することができる。したがって、スタートブロック102、実行ブロック105、110及び115は、互いに通信可能、もしくは、スタートブロック102は、各ブロックと通信可能となる。これにより、スタートブロック102は、実行ブロック105が1番目、実行ブロック110が2番目及び実行ブロック115が3番目に接続されていること、すなわち、実行ブロック105、110及び115の接続順序を特定することができる。 The start block 102 is physically connected to the block 105, which is one of the execution blocks. As a result, the start block 102 can be electrically connected to the execution blocks 105, 110 and 115. Therefore, the start block 102, the execution blocks 105, 110, and 115 can communicate with each other, or the start block 102 can communicate with each block. Thereby, the start block 102 specifies that the execution block 105 is connected first, the execution block 110 is connected second, and the execution block 115 is connected third, that is, the connection order of the execution blocks 105, 110, and 115 is specified. be able to.

図2は、ブロックを備えたシステムを示す。複数のブロック102、105、110、115、及び、コンピュータ装置150を備えている。 FIG. 2 shows a system with blocks. It includes a plurality of blocks 102, 105, 110, 115, and a computer device 150.

スタートブロック102は、特定した実行ブロックの接続順序に基づいて、実行ブロック105、110及び115の命令(コンテンツ)の実行順序を特定することができる。スタートブロック102又は他のブロックは、実行順序及びコンテンツを有線回線及び/又は無線回線125を介してコンピュータ装置150に送信することができる。 The start block 102 can specify the execution order of the instructions (contents) of the execution blocks 105, 110, and 115 based on the connection order of the specified execution blocks. The start block 102 or other block can transmit the execution sequence and content to the computer device 150 via a wired line and / or a wireless line 125.

コンピュータ装置150は、表示装置152を有し、受信した実行順序及びコンテンツに基づいて処理を実行する。本実施例では、例えば、表示装置152は、マス目を有するマップ153及びキャラクタ154を表示する。コンピュータ装置150は、命令に基づいて、表示装置152のキャラクタ154を動かす。例えば、キャラクタ154は、実行ブロック105の命令「↑」に基づいて、スタートのマス155から160に移動し、実行ブロック110の命令「→」に基づいて、マス160から165に移動し、さらに、実行ブロック115の命令「↑」に基づいて、マス165から170に移動する。各ブロックの並び順により、子供や、初めてプログラムを作成する人であっても、コンピュータプログラミングの作成及び実行と同等の体験が楽しめる。 The computer device 150 has a display device 152 and executes processing based on the received execution order and contents. In this embodiment, for example, the display device 152 displays the map 153 and the character 154 having squares. The computer device 150 moves the character 154 of the display device 152 based on the instruction. For example, the character 154 moves from the start cell 155 to 160 based on the instruction "↑" of the execution block 105, moves from the cell 160 to 165 based on the instruction "→" of the execution block 110, and further. Based on the instruction "↑" of the execution block 115, the cell moves from the mass 165 to 170. Depending on the order of the blocks, even children and those who create programs for the first time can enjoy the same experience as creating and executing computer programming.

本実施例において、コンテンツは、オブジェクトなどの動作を示すコンピュータプログラムであり、その動作は、コンピュータ装置150で実行されたが、スタートブロック102において、動作が行われてもよい。他の実施例において、コンテンツが、音声、音楽、動画である場合も同様に、そのコンテンツは、コンピュータ装置150又はスタートブロック102において実行又は再生されてもよい。 In this embodiment, the content is a computer program indicating the operation of an object or the like, and the operation is executed by the computer device 150, but the operation may be performed in the start block 102. Similarly, in another embodiment, when the content is audio, music, or video, the content may be executed or played on the computer device 150 or the start block 102.

実施例1
(実行ブロックのみを用いた例)
図3は、スタートブロックの内部の概要を示す。スタートブロック102は、プロセッサ305、ROM310、RAM315、コネクタ320を備える。さらに、スタートブロック102は、電源を備えていてもよい、又は、外部から電源が供給される電源用コネクタを備えていてもよい(電源に関する構成については図示せず)。コネクタ320は、後述する実行ブロックの上位コネクタ510に接続することができる。プロセッサ305は、ROM310に記憶されているコンピュータプログラムに基づいて命令を実行し、スタートブロック102自体を制御することができ、さらに、接続された実行ブロックを制御することもできる。例えば、プロセッサ305は、実行ブロックを制御することにより、接続された実行ブロックの接続順序を特定することができる。
Example 1
(Example using only the execution block)
FIG. 3 shows an outline of the inside of the start block. The start block 102 includes a processor 305, a ROM 310, a RAM 315, and a connector 320. Further, the start block 102 may be provided with a power supply, or may be provided with a power supply connector to which power is supplied from the outside (the configuration relating to the power supply is not shown). The connector 320 can be connected to the upper connector 510 of the execution block described later. The processor 305 can execute an instruction based on a computer program stored in the ROM 310 to control the start block 102 itself, and can also control the connected execution block. For example, the processor 305 can specify the connection order of the connected execution blocks by controlling the execution blocks.

RAM315は、不揮発性の記憶媒体とすることができる。RAM315は、図4に示すコンテンツテーブル410、識別子対応情報テーブル420、ブロック接続情報テーブル430を有する。コンテンツテーブル410は、コンテンツ識別子及びコンテンツデータを有する。コンテンツ識別子は、コンテンツデータごとにユニークである。コンテンツデータは、コンテンツがコンピュータプログラムである場合、コンピュータプログラムに対応する動作やステップに関する命令のデータであり、コンテンツが音楽である場合、1つの曲を適切に分割した音楽データであり、コンテンツが動画である場合、1つの動画を適切に分割した動画データとすることができる。他の実施例において、コンテンツは、コンピュータプログラム、音楽及び動画以外でもよく、他のコンテンツでもよい。コンテンツデータは、少なくともコンテンツの一部とすることができる。 The RAM 315 can be a non-volatile storage medium. The RAM 315 has a content table 410, an identifier correspondence information table 420, and a block connection information table 430 shown in FIG. The content table 410 has a content identifier and content data. The content identifier is unique for each content data. When the content is a computer program, the content data is data of instructions related to actions and steps corresponding to the computer program, and when the content is music, it is music data obtained by appropriately dividing one song, and the content is a moving image. In the case of, one moving image can be appropriately divided into moving image data. In other embodiments, the content may be other than computer programs, music and video, and may be other content. Content data can be at least part of the content.

識別子対応情報テーブル420は、ブロック識別子及びコンテンツ識別子を少なくとも有する。ブロック識別子は、各ブロックにユニークに割り当てられる識別子である。例えば、実行ブロック105、110及び115には、それぞれ、識別子対応情報テーブル420のブロック識別子に示される「0101」、「0102」及び「0103」が格納されている。また、ブロック識別子は、関連付けされるコンテンツ識別子と対応付けされる。例えば、実行ブロック105、110及び115には、コンテンツ識別子「001」、「002」及び「003」が対応付けされる。これにより、実行ブロック105、110及び115には、それぞれ、コンテンツデータ「AAA」、「BBB」及び「CCC」が対応付けされる。例えば、図2のように、コンテンツがコンピュータプログラムに関する場合、コンテンツデータ「AAA」、「BBB」及び「CCC」は、それぞれ、「↑」(上(前)に進む)、「→」(右に曲がる)及び「↑」(上(前)に進む)の命令となる。 The identifier correspondence information table 420 has at least a block identifier and a content identifier. The block identifier is an identifier uniquely assigned to each block. For example, the execution blocks 105, 110, and 115 store "0101", "0102", and "0103" shown in the block identifiers of the identifier correspondence information table 420, respectively. In addition, the block identifier is associated with the associated content identifier. For example, the content identifiers "001", "002", and "003" are associated with the execution blocks 105, 110, and 115. As a result, the content data "AAA", "BBB", and "CCC" are associated with the execution blocks 105, 110, and 115, respectively. For example, as shown in FIG. 2, when the content is related to a computer program, the content data "AAA", "BBB" and "CCC" are "↑" (advance to the top (previous)) and "→" (to the right), respectively. It becomes a command of (turn) and "↑" (go up (forward)).

ブロック接続情報テーブル430は、接続された実行ブロックの接続順序を特定するために用いられる。スタートブロック102は、実行ブロック105、110及び115に接続されると、プロセッサ305は、各実行ブロックのブロック識別子を後述する方法で実行ブロックのROM520又はRAM530から取得するととともに、接続の順序を特定する。プロセッサ305は、ブロック識別子及び接続の順序をブロック接続情報テーブルに作成又は更新する。図4のブロック接続情報テーブル430は、実行ブロック105(ブロック識別子:0101)、実行ブロック110(ブロック識別子:0102)及び実行ブロック115(ブロック識別子:0103)がこの順序で接続されていることを示す。具体的には、ブロック接続情報テーブル430では、実行ブロック105、110及び115が、それぞれ、ブロック識別子「0101」、「0102」及び「0103」に対応しており、スタートブロック102に近いブロックから、位置情報として「1」番目、「2」番目及び「3」番目に接続されていることが示されている。 The block connection information table 430 is used to specify the connection order of the connected execution blocks. When the start block 102 is connected to the execution blocks 105, 110 and 115, the processor 305 acquires the block identifier of each execution block from the ROM 520 or RAM 530 of the execution block by the method described later, and specifies the order of connection. .. Processor 305 creates or updates the block identifier and connection order in the block connection information table. The block connection information table 430 of FIG. 4 shows that the execution block 105 (block identifier: 0101), the execution block 110 (block identifier: 0102), and the execution block 115 (block identifier: 0103) are connected in this order. .. Specifically, in the block connection information table 430, the execution blocks 105, 110, and 115 correspond to the block identifiers "0101", "0102", and "0103", respectively, and the blocks closest to the start block 102 are displayed. It is shown that the position information is connected to the "1st", "2nd", and "3" th positions.

したがって、スタートブロック102は、コンテンツデータの実行や再生の順序を実行ブロックの位置情報に基づいてテーブル410、420、430を用いて特定することができる。 Therefore, the start block 102 can specify the order of execution and reproduction of the content data by using the tables 410, 420, and 430 based on the position information of the execution block.

図5は、実行ブロックの内部の概要を示す。実行ブロック105、110及び115は、それぞれ、上位コネクタ510、プロセッサ515、ROM520、RAM530、下位コネクタ535を備える。実行ブロックの上位コネクタ510は、スタートブロックのコネクタ320及び他の実行ブロックの下位コネクタ535に接続することができる。例えば、実行ブロック105の上位コネクタ510は、スタートブロック102のコネクタ320に接続され、実行ブロック105の下位コネクタ535は、他の実行ブロック110の上位コネクタ510に接続される。実行ブロックのROM520又はRAM530は、当該実行ブロックのブロック識別子を少なくとも記憶している。この場合、RAM530は、不揮発性の記憶媒体とすることができる。これにより、RAM530のブロック識別子は書き換えることができる。 FIG. 5 shows an overview of the inside of the execution block. The execution blocks 105, 110, and 115 each include an upper connector 510, a processor 515, a ROM 520, a RAM 530, and a lower connector 535. The upper connector 510 of the execution block can be connected to the connector 320 of the start block and the lower connector 535 of another execution block. For example, the upper connector 510 of the execution block 105 is connected to the connector 320 of the start block 102, and the lower connector 535 of the execution block 105 is connected to the upper connector 510 of the other execution block 110. The ROM 520 or RAM 530 of the execution block stores at least the block identifier of the execution block. In this case, the RAM 530 can be a non-volatile storage medium. As a result, the block identifier of the RAM 530 can be rewritten.

実行ブロック105、110及び115がスタートブロック102に接続されると、スタートブロック102は、実行ブロック105、110及び115の接続順序を特定する命令を、各実行ブロックに送信する。例えば、実行ブロック105が接続順序を特定する命令を受信すると、それ自体のブロック識別子「0101」を下位のブロックである実行ブロック110に送信する。実行ブロック110は、ブロック識別子の情報「0101」を受信すると、それ自体のブロック識別子「0102」を付加して、ブロック識別子の情報「0101:0102」を下位のブロックである実行ブロック115に送信する。実行ブロック115は、下位コネクタ535に接続されている他の実行ブロックが無いことを検出すると、実行ブロック115より下位に接続が無いことを決定することができる。実行ブロック115は、ブロック識別子の情報「0101:0102」を受信すると、実行ブロック115より下位に接続が無いことに応じて、それ自体のブロック識別子「0103」を付加して、ブロック識別子の情報「0101:0102:0103」を実行ブロック105及び110を介してスタートブロック102に送信する。これにより、スタートブロック102は、受信したブロック識別子の情報「0101:0102:0103」に基づいて、接続順序として、ブロック識別子「0101」が1番目であり、ブロック識別子「0102」が2番目であり、及び、ブロック識別子「0103」が3番目であることを特定することができる。 When the execution blocks 105, 110 and 115 are connected to the start block 102, the start block 102 transmits an instruction for specifying the connection order of the execution blocks 105, 110 and 115 to each execution block. For example, when the execution block 105 receives an instruction for specifying the connection order, it transmits its own block identifier "0101" to the lower block execution block 110. When the execution block 110 receives the block identifier information "0101", it adds its own block identifier "0102" and transmits the block identifier information "0101: 0102" to the lower block execution block 115. .. When the execution block 115 detects that there is no other execution block connected to the lower connector 535, it can determine that there is no connection below the execution block 115. When the execution block 115 receives the block identifier information "0101: 0102", the execution block 115 adds its own block identifier "0103" according to the fact that there is no connection below the execution block 115, and the block identifier information "0101: 0102" is added. 0101: 0102: 0103 ”is transmitted to the start block 102 via the execution blocks 105 and 110. As a result, in the start block 102, the block identifier "0101" is the first and the block identifier "0102" is the second in the connection order based on the received block identifier information "0101: 0102: 0103". , And it can be specified that the block identifier "0103" is the third.

上記の例において、コンテンツがコンピュータプログラムであることは例示であり、他の情報をコンテンツとすることができる。コンテンツは、例えば、音楽や、動画などとすることができる。 In the above example, it is an example that the content is a computer program, and other information can be the content. The content can be, for example, music, moving images, or the like.

コンテンツが音楽や、動画などである場合、1曲や、1つのテレビ番組、1つの映画、1つの動画作品のようにコンテンツを1つの単位として区分けすることができる。このような例において、コンテンツ識別子テーブルは、1つの単位をテーブルの項目として追加してもよい。例えば、図6は、コンテンツ識別子テーブルの変形例を示す。図6において、コンテンツグループ「A」は、コンテンツ識別子「001」、「002」及び「003」に対応する3つのデータ「AAA」、「BBB」、「CCC」で、1つの曲又は1つの動画となる。コンテンツ識別子「001」、「002」及び「003」に対応するデータ「AAA」、「BBB」及び「CCC」は、それぞれ、曲の1節(1フレーズ)や、動画における1つのチャプタに対応する。コンテンツグループ「B」及び「C」は、コンテンツグループ「A」の曲又は動画とは別の作品であることを示す。他の実施例において、コンテンツデータは、音符又は音符に関する音、静止画など、コンテンツを構成する単位に基づくデータとすることができる。 When the content is music, a moving image, or the like, the content can be classified as one unit such as one song, one TV program, one movie, or one moving image work. In such an example, the content identifier table may add one unit as a table item. For example, FIG. 6 shows a modified example of the content identifier table. In FIG. 6, the content group "A" is three data "AAA", "BBB", and "CCC" corresponding to the content identifiers "001", "002", and "003", and is one song or one moving image. It becomes. The data "AAA", "BBB" and "CCC" corresponding to the content identifiers "001", "002" and "003" correspond to one section (one phrase) of the song and one chapter in the video, respectively. .. The content groups "B" and "C" indicate that the works are different from the songs or videos of the content group "A". In another embodiment, the content data may be data based on a unit constituting the content, such as a musical note or a sound related to a musical note, a still image, or the like.

コンテンツグループ「A」は、コンテンツデータ「AAA」、「BBB」及び「CCC」がこの順序で再生されると、正しい順序の曲又は動画として再生される。この場合、実行ブロックは、実行ブロック105、実行ブロック110、実行ブロック115の順序で接続されている。仮に、実行ブロックが、実行ブロック110、実行ブロック105、実行ブロック115の順序で接続された場合、コンテンツデータ「BBB」、「AAA」及び「CCC」がこの順序で再生される。この場合、誤った順序の曲又は動画として再生される。他の実施例において、接続順序が誤っていることをユーザに通知してもよい。したがって、玩具のユーザは、コンテンツデータが正しい順序の曲又は動画を再生するようにブロックを接続して遊ぶことができる。一方で、コンテンツグループ「A」のブロックを複数回遊ぶと、どのブロックがいずれのコンテンツデータと対応付けされているかが分かってしまう。すると、ユーザは、ブロックで遊ぶのに飽きてしまう。そこで、本発明の実施例では、ブロックで遊ぶたび、所定の回数遊んだとき、又は、ユーザの指示を受けたときに、識別子対応情報テーブルの対応関係を変更することによって、ブロックに割り当てるコンテンツデータを変更する。ブロックに割り当てるコンテンツデータを変更できるようにすることにより、ユーザに興味を掻き立てさせ、飽きさせないようにすることができる。図4では、ブロック識別子「0101」、「0102」及び「0103」は、それぞれ、コンテンツ識別子「001」、「002」及び「003」に対応している。例えば、次にブロックで遊ぶなどのスタートブロック102に電源が投入するときなどに、ブロック識別子とコンテンツ識別子との対応付けを動的に変更されてもよい。例えば、ブロック識別子「0101」、「0102」及び「0103」は、それぞれ、コンテンツ識別子「001」、「003」及び「002」に対応させる。これにより、実行ブロックに対応付けされたコンテンツデータを変更させることにより、ユーザは飽きることなく、ブロック玩具を末永く楽しむことができる。また、各実行ブロックには、他のコンテンツグループ「B」又は「C」のデータを対応付けしてもよい。 When the content data "AAA", "BBB" and "CCC" are played back in this order, the content group "A" is played back as a song or a moving image in the correct order. In this case, the execution blocks are connected in the order of execution block 105, execution block 110, and execution block 115. If the execution blocks are connected in the order of the execution block 110, the execution block 105, and the execution block 115, the content data "BBB", "AAA", and "CCC" are reproduced in this order. In this case, the songs or videos are played in the wrong order. In other embodiments, the user may be notified that the connection order is incorrect. Therefore, the toy user can play by connecting blocks so that the content data plays songs or videos in the correct order. On the other hand, when the blocks of the content group "A" are played a plurality of times, it becomes clear which block is associated with which content data. Then, the user gets tired of playing with blocks. Therefore, in the embodiment of the present invention, the content data assigned to the block by changing the correspondence relationship of the identifier correspondence information table when playing with the block, playing a predetermined number of times, or receiving a user's instruction. To change. By making it possible to change the content data assigned to the block, it is possible to arouse the user's interest and not get bored. In FIG. 4, the block identifiers “0101”, “0102” and “0103” correspond to the content identifiers “001”, “002” and “003”, respectively. For example, the association between the block identifier and the content identifier may be dynamically changed when the power is turned on to the start block 102, such as when playing with a block next time. For example, the block identifiers "0101", "0102" and "0103" correspond to the content identifiers "001", "003" and "002", respectively. As a result, the user can enjoy the block toy for a long time without getting bored by changing the content data associated with the execution block. Further, data of another content group "B" or "C" may be associated with each execution block.

また、コンテンツがコンピュータプログラムであってもよい。ブロック識別子とコンピュータプログラムに係るコンテンツ識別子との対応付けを動的に変更することによって、コンピュータプログラムの作成において、よりゲーム性を高めて、ユーザが興味を掻き立てるようにすることができる。 Further, the content may be a computer program. By dynamically changing the correspondence between the block identifier and the content identifier related to the computer program, it is possible to further enhance the gameplay and arouse the user's interest in the creation of the computer program.

実施例2
(制御ブロックを用いた例)
実行ブロックに加えて、制御ブロックを用いることによって、ユーザは、コンピュータプログラム作成の概念に近い考え方を身につけることができる。制御ブロックの例としては、繰り返し(ループ)や、条件分岐(ブランチ)、関数定義、関数呼び出し(ファンクションコール)機能などがある。本実施例において、各ブロックが、実行ブロック又は制御ブロックであるかを少なくとも識別できるようにする必要がある。一実施例において、制御ブロックは、実行ブロックと同様に、コネクタ、プロセッサ、RAM及びROMを少なくとも有する。
Example 2
(Example using a control block)
By using the control block in addition to the execution block, the user can acquire an idea close to the concept of computer program creation. Examples of control blocks include repetition (loop), conditional branching (branch), function definition, and function call (function call) functions. In this embodiment, it is necessary to be able to at least identify whether each block is an execution block or a control block. In one embodiment, the control block, like the execution block, has at least a connector, a processor, RAM and ROM.

図7は、識別子対応情報テーブルの変形例を示す。識別子対応情報テーブル710は、ブロック識別子及びコンテンツ識別子に加えて、ブロック種別を有する。ブロック種別は、ブロックが実行ブロックであるか制御ブロックであるかなどを示す。例えば、ブロックが実行ブロックである場合、ブロック種別は「7」とすることができる。ブロック種別が「0」、「2」〜「6」である場合、ブロックは制御ブロックとすることができる。各ブロックは、例えば、以下の通りとすることができる。
ブロック種別「0」:動作なし
ブロック種別「1」:スタート
ブロック種別「2」:関数定義
ブロック種別「3」:繰り返し(ループ)
ブロック種別「4」:条件分岐(ブランチ)
ブロック種別「5」:関数呼び出し(ファンクションコール)
ブロック種別「6」:設定
ブロック種別「7」:実行
FIG. 7 shows a modified example of the identifier correspondence information table. The identifier correspondence information table 710 has a block type in addition to the block identifier and the content identifier. The block type indicates whether the block is an execution block or a control block. For example, when the block is an execution block, the block type can be "7". When the block type is "0", "2" to "6", the block can be a control block. Each block can be, for example, as follows.
Block type "0": No operation Block type "1": Start block type "2": Function definition block type "3": Repeat (loop)
Block type "4": Conditional branch (branch)
Block type "5": Function call (function call)
Block type "6": Setting Block type "7": Execution

(関数定義)
例えば、制御ブロックとして「関数定義」ブロックを用いる場合、接続は以下の順序で行うことができる。「関数定義」ブロックは、独立したコンテンツデータの実行又は再生の開始を定義するブロックである。
1.メインブロックグループ
(1−1)「スタート」ブロック
(1−2)第2の「実行」ブロック
(1−3)「関数呼び出し(ファンクションコール)」ブロック
2.関数定義ブロックグループ
(2−1)「関数定義」ブロック
(2−2)第1の「実行」ブロック
これにより、(2−1)「関数定義」ブロックの下に配置された(2−2)第1の「実行」ブロックは関数として定義される。(1−3)「関数呼び出し(ファンクションコール)」ブロックと(2−1)「関数定義」ブロックとは、予め関連付けされている。例えば、スタートブロック102が、関数呼び出し(ファンクションコール)ブロックの識別子と関数定義ブロックの識別子とを関連付けて記憶していてもよい。第1の関数定義ブロック及び第1の関数呼び出し(ファンクションコール)ブロックと第2の関数定義ブロック及び第2の関数呼び出し(ファンクションコール)ブロックとからなる関数定義ブロック及び関数呼び出し(ファンクションコール)ブロックの組を2つ準備することによって、複数の関数定義ブロックを定義することができる。組は3つ以上でもよい。関数呼び出し(ファンクションコール)ブロックと関数定義ブロックとの関連付けは、変更できてもよい。
(Function definition)
For example, when a "function definition" block is used as the control block, the connections can be made in the following order. A "function definition" block is a block that defines the start of execution or reproduction of independent content data.
1. 1. Main block group (1-1) "Start" block (1-2) Second "execution" block (1-3) "Function call" block 2. Function definition block group (2-1) "Function definition" block (2-2) First "execution" block This placed (2-1) under the "function definition" block (2-2). The first "execution" block is defined as a function. The (1-3) "function call" block and the (2-1) "function definition" block are associated in advance. For example, the start block 102 may store the identifier of the function call (function call) block and the identifier of the function definition block in association with each other. A function definition block and a function call (function call) block consisting of a first function definition block, a first function call (function call) block, a second function definition block, and a second function call (function call) block. By preparing two sets, multiple function definition blocks can be defined. There may be three or more pairs. The association between the function call block and the function definition block may be changed.

(1−1)「スタート」ブロックと(2−1)「関数定義」ブロックとは、有線又は無線で接続することができる。例えば、図17に示す通り、スタートブロック102及び関数定義ブロックは、それぞれ、図3、及び、図5又は10に示した構成にコネクタ1720及び1730を加えた構成とすることができる。スタートブロック102は、関数定義用コネクタ1720を有し、関数定義ブロックは、第1の関数定義用コネクタ1730及び第2の関数定義用コネクタ1740を有する。スタートブロック102は、関数定義用コネクタ1720に接続されたブロックを関数定義ブロックとして認識する。当該関数定義ブロックは、第2の関数定義用コネクタ1740を介して他の関数定義ブロックの第1の関数定義用コネクタ1730に接続することができる。これにより、2以上の関数定義ブロックグループを接続することができる。 The (1-1) "start" block and the (2-1) "function definition" block can be connected by wire or wirelessly. For example, as shown in FIG. 17, the start block 102 and the function definition block may have the configurations shown in FIGS. 3 and 5 or 10, respectively, plus the connectors 1720 and 1730. The start block 102 has a function definition connector 1720, and the function definition block has a first function definition connector 1730 and a second function definition connector 1740. The start block 102 recognizes the block connected to the function definition connector 1720 as the function definition block. The function definition block can be connected to the first function definition connector 1730 of another function definition block via the second function definition connector 1740. This makes it possible to connect two or more function definition block groups.

(1−1)「スタート」ブロックは、(1−2)第2の「実行」ブロックのコンテンツの実行又は再生を行う。そして、「スタート」ブロックは、(6)「関数呼び出し(ファンクションコール)」ブロックにおいて、関数定義ブロックグループで定義されている関数を実行する。関数定義ブロックグループにおける関数の内容は、上記で定義された(2−2)第1の「実行」ブロックのコンテンツの実行又は再生である。他の実施例において、(1−3)「関数呼び出し(ファンクションコール)」ブロックの後に、「動作なし」ブロックを配置してもよい。これにより、「スタート」ブロックは、関数を実行した後の復帰先を認識するように構成されていてもよい。 (1-1) The "start" block executes or reproduces the contents of the (1-2) second "execution" block. Then, the "start" block executes the function defined in the function definition block group in the (6) "function call (function call)" block. The content of the function in the function definition block group is the execution or reproduction of the contents of the (2-2) first "execution" block defined above. In another embodiment, the “no action” block may be placed after the (1-3) “function call” block. As a result, the "start" block may be configured to recognize the return destination after executing the function.

(繰り返し(ループ))
例えば、制御ブロックとして「繰り返し(ループ)」を用いる場合、接続は以下の順序で行うことができる。
(1)「スタート」ブロック
(2)「繰り返し(ループ)」ブロック
(3)「設定」ブロック
(4)第1の「実行」ブロック
(5)「動作なし」ブロック
これにより、(2)「繰り返し(ループ)」ブロック及び(3)「設定」ブロックと(5)「動作なし」ブロックとの間に配置された(4)第1の「実行」ブロックのコンテンツは、「設定」ブロックで引数として設定される値の数分繰り返して実行又は再生される。本実施例において、「設定」ブロックそれぞれは、対応する数値などの情報を予め有していてもよい。例えば、第1の「設定」ブロックは、値「1」を有し、第2の「設定」ブロックは、値「2」を有し、第3の「設定」ブロックは、値「3」を有していてもよい。
(Repeat (loop))
For example, when "repetition (loop)" is used as the control block, the connections can be made in the following order.
(1) "Start" block (2) "Repeat (loop)" block (3) "Setting" block (4) First "Execution" block (5) "No operation" block Thereby, (2) "Repeat" The contents of the (4) first "execute" block placed between the "(loop)" block and the (3) "setting" block and the (5) "no action" block are used as arguments in the "setting" block. It is repeatedly executed or played for several minutes of the set value. In this embodiment, each "setting" block may have information such as a corresponding numerical value in advance. For example, the first "setting" block has a value "1", the second "setting" block has a value "2", and the third "setting" block has a value "3". You may have.

他の実施例において、「設定」ブロックに関し、ユーザが設定対象の値などの情報を入力可能にしてもよい。例えば、「設定」ブロックにボタンを設け、ユーザは、このボタンを用いて1、2、3・・・のいずれか一つの値を入力できる。本実施例では、図4に示したブロック接続情報テーブル430に「設定」の列(カラム)を追加してもよい。例えば、スタートブロック102は、各ブロックの情報を収集するときに、「設定」ブロックで入力された情報も収集し、ブロック接続情報テーブル430における当該「設定」のブロック識別子に対応するカラム「設定データ」の項目を収集した情報で更新する。他の実施例において、「設定」ブロックのボタンは、一例であり、「設定」ブロックは、ボタンに換えて又はボタンに加えて、他の形態の入力装置を有していても良い。他の実施例において、「設定」ブロックは、入力装置に換えて又は入力装置に加えて、他の装置から設定すべき情報を受信する受信装置を有していても良い。 In another embodiment, the user may be able to input information such as a value to be set with respect to the "setting" block. For example, a button is provided in the "setting" block, and the user can input any one of 1, 2, 3, ... Using this button. In this embodiment, a "setting" column may be added to the block connection information table 430 shown in FIG. For example, when the start block 102 collects the information of each block, it also collects the information input in the "setting" block, and the column "setting data" corresponding to the block identifier of the "setting" in the block connection information table 430. Update with the collected information. In other embodiments, the buttons in the "settings" block are an example, and the "settings" block may have other forms of input devices in place of or in addition to the buttons. In other embodiments, the "setting" block may have a receiving device in place of or in addition to the input device to receive information to be set from another device.

上記の例において、設定ブロックは、繰り返し(ループ)ブロックの下に接続される。他の実施例において、繰り返し(ループ)ブロックの横面と設定ブロックの横面とがコネクタによって接続されてもよい。設定ブロックは、ループの回数を送ることができればよいので、送信される情報量は比較的小さい。したがって、コネクタは、光学送受信機でもよい。この場合、繰り返し(ループ)ブロックは光学受信機を有し、設定ブロックは、光学送信機を有する。これにより、設定ブロックは、設定すべき情報を光学的に繰り返し(ループ)ブロックに送信することができる。光学受信機の例としては、赤外線送受信機などがある。 In the above example, the configuration block is connected under the repeating (loop) block. In another embodiment, the side surface of the repeating (loop) block and the side surface of the setting block may be connected by a connector. Since the setting block only needs to be able to send the number of loops, the amount of information transmitted is relatively small. Therefore, the connector may be an optical transmitter / receiver. In this case, the repeating (loop) block has an optical receiver and the setting block has an optical transmitter. As a result, the setting block can optically transmit the information to be set to the repeating (loop) block. An example of an optical receiver is an infrared transmitter / receiver.

(条件分岐(ブランチ))
例えば、制御ブロックとして「条件分岐(ブランチ)」ブロックを用いる場合、接続は以下の順序で行うことができる。
(1)「スタート」ブロック
(2)「条件分岐(ブランチ)」ブロック
(3)第1の「実行」ブロック
(4)「動作なし」ブロック
これにより、(2)「条件分岐(ブランチ)」ブロックと(4)「動作なし」ブロックとの間に配置された(3)第1の「実行」ブロックのコンテンツは、「条件分岐(ブランチ)」の条件を満たすときに実行又は再生される。「条件分岐(ブランチ)」の条件の例としては、所定の時刻のときに条件を満たすなどとすることができる(例えば、条件12:00〜15:00の間であれば、第1の「実行」ブロックのコンテンツが実行又は再生される)。
(Conditional branch)
For example, when a "conditional branch" block is used as the control block, the connections can be made in the following order.
(1) "Start" block (2) "Conditional branch (branch)" block (3) First "execution" block (4) "No operation" block Thereby, (2) "Conditional branch (branch)" block The content of the (3) first "execution" block arranged between (4) and the "no operation" block is executed or played when the condition of the "conditional branch" is satisfied. As an example of the condition of "conditional branch", the condition can be satisfied at a predetermined time (for example, if the condition is between 12:00 and 15:00, the first "conditional branch" is used. The content of the "execute" block is executed or played).

(繰り返し(ループ)及び条件分岐(ブランチ))
例えば、制御ブロックとして「繰り返し(ループ)」ブロック及び「条件分岐(ブランチ)」ブロックを用いる場合、接続は以下の順序で行うことができる。
(1)「スタート」ブロック
(2)「繰り返し(ループ)」ブロック(3回繰り返し)
(3)第1の「実行」ブロック
(4)「条件分岐(ブランチ)」ブロック
(5)第2の「実行」ブロック
(6)第2の「動作なし」ブロック
(7)第1の「動作なし」ブロック
これにより、(2)「繰り返し(ループ)」ブロック(3回繰り返し)と(7)第1の「動作なし」ブロックとの間に配置された(3)第1の「実行」ブロックのコンテンツは、3回繰り返して実行又は再生される。また、(4)「条件分岐(ブランチ)」ブロックは、3回繰り返して、条件の判断が行われる。(4)「条件分岐(ブランチ)」ブロックと(6)第2の「動作なし」ブロックとの間に配置された(5)第2の「実行」ブロックのコンテンツは、「条件分岐(ブランチ)」の条件を満たすときに実行又は再生される。「条件分岐(ブランチ)」の条件の例としては、ループの回数が1回目である場合に条件分岐(ブランチ)内の処理が実行又は再生される。本実施例では、第1の「実行」ブロック及び第2の「実行」ブロックのコンテンツデータが実行又は再生された後、第1の「実行」ブロックのコンテンツデータが2回繰り返して実行又は再生される。他の実施例において、「繰り返し(ループ)」ブロックの「3回繰り返し」における数値「3」及び「条件分岐(ブランチ)」の条件「ループの回数が1回目」における数値「1」は、それぞれ、設定ブロックによって設定されてもよい。
(Repeat (loop) and conditional branch (branch))
For example, when a "repetition (loop)" block and a "conditional branch" block are used as control blocks, the connections can be made in the following order.
(1) "Start" block (2) "Repeat (loop)" block (Repeat 3 times)
(3) 1st "execution" block (4) "conditional branch" block (5) 2nd "execution" block (6) 2nd "no operation" block (7) 1st "operation" None "None" block This places (2) a "repeated (loop)" block (repeated three times) and (7) a first "no action" block (3) a first "execution" block. The content of is executed or reproduced three times repeatedly. Further, (4) the "conditional branch" block is repeated three times to determine the condition. The contents of the (5) second "execution" block placed between the (4) "conditional branch" block and the (6) second "no action" block are "conditional branch (branch)". Is executed or regenerated when the condition of "" is satisfied. As an example of the condition of "conditional branch (branch)", when the number of loops is the first time, the process in the conditional branch (branch) is executed or regenerated. In this embodiment, after the content data of the first "execution" block and the second "execution" block is executed or reproduced, the content data of the first "execution" block is repeatedly executed or reproduced twice. To. In another embodiment, the numerical value "3" in the "repetition (loop)" block "three times repetition" and the numerical value "1" in the condition "the number of loops is the first" of the "conditional branch" are respectively. , May be set by a setting block.

実施例3
(ブロックにインデントを適用する例)
上記の実施例2において、「関数定義」ブロック、「繰り返し(ループ)」ブロック及び「条件分岐(ブランチ)」ブロックの制御対象となる「実行」ブロックを特定するために、制御対象となる「実行」ブロックは、「関数定義」ブロック、「繰り返し(ループ)」ブロック及び「条件分岐(ブランチ)」ブロックと「動作なし」ブロックとに挟まれることによって特定されていた。本実施例において、制御対象となる「実行」ブロックにインデントを適用することによって、ビジュアル的に制御対象のブロックがどれであるかを容易に理解できるようにする。また、インデントを用いたブロックの配置は、ユーザが実際のコンピュータプログラムに近い文法をより簡単に習得することに役立たせることができる。さらに、コンピュータプログラムにおいて、インデントは、処理対象のステップなどを桁下げすることによって視覚的に推奨されている。また、最近のコンピュータ言語では、インデントは、処理対象のステップを定義するために必須とされている。したがって、インデントの使いかたの習得は、実際のコンピュータプログラムの習得にも役立たせることができる。ブロックにおけるインデントの例としては、並べた2以上のブロックにおいて、前のブロックに対してブロックを揃えて並べずに、例えば、ブロックを一定の長さ分ずらして配置することによって実現され得る。
Example 3
(Example of applying indentation to a block)
In the above-mentioned second embodiment, in order to specify the "execution" block to be controlled by the "function definition" block, the "repetition (loop)" block, and the "conditional branch" block, the "execution" to be controlled is specified. The "function definition" block, the "repetition (loop)" block, the "conditional branch" block, and the "no action" block were identified. In this embodiment, by applying an indent to the "execution" block to be controlled, it is possible to easily understand which block is to be controlled visually. In addition, the placement of blocks using indentation can help the user more easily learn a grammar that is close to that of an actual computer program. Furthermore, in computer programs, indentation is visually recommended by indenting the steps to be processed and the like. Also, in modern computer languages, indentation is required to define the steps to be processed. Therefore, learning how to use indentation can also be useful for learning actual computer programs. An example of indentation in a block can be realized by arranging two or more blocks arranged side by side without aligning the blocks with respect to the previous block, for example, by arranging the blocks by a certain length.

図8(a)は、スタートブロックの内部の概要を示す。スタートブロック102は、図3において示した通り、プロセッサ305、ROM310、RAM315及びコネクタ320を有する。図8(a)におけるコネクタ320の位置は、図3におけるコネクタ320の位置と異なり、スタートブロック102の第2の面の長手方向中心に位置するのではなく左側に寄っている。 FIG. 8A shows an outline of the inside of the start block. As shown in FIG. 3, the start block 102 has a processor 305, a ROM 310, a RAM 315, and a connector 320. The position of the connector 320 in FIG. 8A is different from the position of the connector 320 in FIG. 3, and is not located at the center of the second surface of the start block 102 in the longitudinal direction but is closer to the left side.

図8(b)は、図8(a)におけるスタートブロック102を矢印805方向から見た様子を示しており、スタートブロック102の第2の面を示す。第2の面において、コネクタ320は、長手方向において左側に寄っており、短手方向において中心に位置する。図8(a)及び図8(b)を結ぶ点線は、図8(a)におけるコネクタ320の位置がスタートブロック102の第2の面の長手方向で対応していることを示す。 FIG. 8B shows the start block 102 in FIG. 8A as viewed from the direction of arrow 805, and shows the second surface of the start block 102. On the second surface, the connector 320 is closer to the left side in the longitudinal direction and is centrally located in the lateral direction. The dotted line connecting FIGS. 8A and 8B indicates that the position of the connector 320 in FIG. 8A corresponds to the longitudinal direction of the second surface of the start block 102.

図9(b)は、実行ブロックの内部の概要を示す。実行ブロック105、110、115は、図5において示した通り、プロセッサ515、ROM520、RAM530及び下位コネクタ535を有する。本実施において、実行ブロック105、110、115は、図5における上位コネクタ510の代わりに、第1の上位コネクタ905及び第2の上位コネクタ910を有する。第1の上位コネクタ905は、実行ブロック第1の面の長手方向において左側に寄っている。第2の上位コネクタ910は、実行ブロック第1の面の長手方向において右側に寄っている。 FIG. 9B shows an overview of the inside of the execution block. Execution blocks 105, 110, 115 have a processor 515, a ROM 520, a RAM 530, and a lower connector 535, as shown in FIG. In this embodiment, the execution blocks 105, 110, 115 have a first upper connector 905 and a second upper connector 910 instead of the upper connector 510 in FIG. The first upper connector 905 is closer to the left side in the longitudinal direction of the first surface of the execution block. The second upper connector 910 is closer to the right side in the longitudinal direction of the first surface of the execution block.

図9(a)は、図9(b)における実行ブロック105、110、115を矢印950方向から見た様子を示しており、実行ブロック105、110、115の第1の面を示す。第1の面において、第1の上位コネクタ905は、長手方向において左側に寄っており、第2の上位コネクタ910は、長手方向において右側に寄って位置している。第1の面において、第1の上位コネクタ905及び第2の上位コネクタ910は、共に、短手方向において中心に位置する。図9(a)及び図9(b)を結ぶ点線は、図9(b)における第1の上位コネクタ905及び第2の上位コネクタ910の位置が実行ブロック105、110、115の第1の面の長手方向で対応していることを示す。 FIG. 9A shows the execution blocks 105, 110, 115 in FIG. 9B as viewed from the direction of the arrow 950, and shows the first surface of the execution blocks 105, 110, 115. On the first surface, the first upper connector 905 is located closer to the left side in the longitudinal direction, and the second upper connector 910 is located closer to the right side in the longitudinal direction. On the first surface, both the first upper connector 905 and the second upper connector 910 are centrally located in the lateral direction. The dotted line connecting FIGS. 9 (a) and 9 (b) indicates that the positions of the first upper connector 905 and the second upper connector 910 in FIG. 9 (b) are the first surfaces of the execution blocks 105, 110, and 115. It is shown that they correspond in the longitudinal direction of.

図9(c)は、図9(b)における実行ブロック105、110、115を矢印955方向から見た様子を示しており、実行ブロック105、110、115の第2の面を示す。第2の面において、下位コネクタ535は、図5における下位コネクタ535の位置と異なり、長手方向において左側に寄って位置している。第2の面において、下位コネクタ535は、短手方向において中心に位置する。図9(b)及び図9(c)を結ぶ点線は、図9(b)における下位コネクタ535の位置が実行ブロック105、110、115の第2の面の長手方向で対応していることを示す。 9 (c) shows the execution blocks 105, 110, 115 in FIG. 9 (b) viewed from the direction of arrow 955, and shows the second surface of the execution blocks 105, 110, 115. On the second surface, the lower connector 535 is located closer to the left side in the longitudinal direction, unlike the position of the lower connector 535 in FIG. In the second aspect, the lower connector 535 is centered in the lateral direction. The dotted line connecting FIGS. 9 (b) and 9 (c) indicates that the position of the lower connector 535 in FIG. 9 (b) corresponds to the longitudinal direction of the second surface of the execution blocks 105, 110, 115. Shown.

図10(b)は、制御ブロックの内部の概要を示す。制御ブロックは、少なくとも「関数定義」ブロックや、「関数呼び出し(ファンクションコール)」ブロック、「条件分岐(ブランチ)」ブロック、「繰り返し(ループ)」ブロックなどを含む。制御ブロック1005は、第1の上位コネクタ1010、第2の上位コネクタ1015、プロセッサ1020、ROM1030、RAM1040及び下位コネクタ1045を少なくとも有する。 FIG. 10B shows an outline of the inside of the control block. The control block includes at least a "function definition" block, a "function call" block, a "conditional branch" block, a "repetition (loop)" block, and the like. The control block 1005 has at least a first upper connector 1010, a second upper connector 1015, a processor 1020, a ROM 1030, a RAM 1040, and a lower connector 1045.

図10(a)は、図10(b)における制御ブロック1005を矢印1060方向から見た様子を示しており、制御ブロック1005の第1の面を示す。第1の面において、第1の上位コネクタ1010は、長手方向において左側に寄っており、第2の上位コネクタ1015は、長手方向において右側に寄って位置している。第1の面において、第1の上位コネクタ1010及び第2の上位コネクタ1015は、共に、短手方向において中心に位置する。図10(a)及び図10(b)を結ぶ点線は、図10(b)における第1の上位コネクタ1010及び第2の上位コネクタ1015の位置が制御ブロック1005の第1の面の長手方向で対応していることを示す。 FIG. 10A shows the control block 1005 in FIG. 10B as viewed from the direction of the arrow 1060, and shows the first surface of the control block 1005. In the first surface, the first upper connector 1010 is located closer to the left side in the longitudinal direction, and the second upper connector 1015 is located closer to the right side in the longitudinal direction. On the first surface, both the first upper connector 1010 and the second upper connector 1015 are centrally located in the lateral direction. The dotted line connecting FIGS. 10 (a) and 10 (b) indicates that the positions of the first upper connector 1010 and the second upper connector 1015 in FIG. 10 (b) are in the longitudinal direction of the first surface of the control block 1005. Indicates that it is supported.

図10(c)は、図10(b)における制御ブロック1005を矢印1065方向から見た様子を示しており、制御ブロック1005の第2の面を示す。第2の面において、下位コネクタ1045は、長手方向において右側に寄って位置している。第2の面において、下位コネクタ1045は、短手方向において中心に位置する。図10(b)及び図10(c)を結ぶ点線は、図10(b)における下位コネクタ1045の位置が制御ブロック1005の第2の面の長手方向で対応していることを示す。 FIG. 10C shows the control block 1005 in FIG. 10B as viewed from the direction of arrow 1065, and shows the second surface of the control block 1005. On the second surface, the lower connector 1045 is located closer to the right side in the longitudinal direction. In the second aspect, the lower connector 1045 is centrally located in the lateral direction. The dotted line connecting FIGS. 10 (b) and 10 (c) indicates that the position of the lower connector 1045 in FIG. 10 (b) corresponds to the longitudinal direction of the second surface of the control block 1005.

図11は、一つのスタートブロック及び3つの実行ブロックが接続されている状態を示す。スタートブロック102のコネクタ320は、第1の実行ブロック105の第1の上位コネクタ905に接続されている。第1の実行ブロック105の下位コネクタ535は、第2の実行ブロック110の第1の上位コネクタ905に接続されている。第2の実行ブロック110及び第3の実行ブロック115も、同様に、コネクタを用いて互いに接続される。 FIG. 11 shows a state in which one start block and three execution blocks are connected. The connector 320 of the start block 102 is connected to the first upper connector 905 of the first execution block 105. The lower connector 535 of the first execution block 105 is connected to the first upper connector 905 of the second execution block 110. The second execution block 110 and the third execution block 115 are similarly connected to each other using a connector.

スタートブロック102は、第1の実行ブロック105、第2の実行ブロック110及び第3の実行ブロック115の接続により、各ブロックと通信し、各ブロックのブロック識別子及び位置情報を少なくとも取得することができる。これにより、スタートブロック102は、図4に示したようなブロック接続情報テーブル430を更新及び/又は作成することができる。スタートブロック102は、ブロック接続情報テーブル430及び識別子対応情報テーブル420に基づいて各ブロック識別子に対応するコンテンツ識別子を特定する。また、スタートブロック102は、識別子対応情報テーブル420及びコンテンツテーブル410に基づいて各コンテンツ識別子に対応するコンテンツデータを特定する。これにより、スタートブロック102は、位置情報による実行ブロックの接続順序と各実行ブロックに関連するコンテンツデータとを対応付けて特定し、当該接続順序でコンテンツデータを再生又は実行する(例えば、コンテンツデータ「AAA」、「BBB」、「CCC」の順序でこれらデータを再生又は実行する)。 The start block 102 can communicate with each block by connecting the first execution block 105, the second execution block 110, and the third execution block 115, and can acquire at least the block identifier and position information of each block. .. As a result, the start block 102 can update and / or create the block connection information table 430 as shown in FIG. The start block 102 specifies the content identifier corresponding to each block identifier based on the block connection information table 430 and the identifier correspondence information table 420. Further, the start block 102 specifies the content data corresponding to each content identifier based on the identifier correspondence information table 420 and the content table 410. As a result, the start block 102 identifies the connection order of the execution blocks based on the position information in association with the content data related to each execution block, and reproduces or executes the content data in the connection order (for example, the content data ". Play or execute these data in the order of "AAA", "BBB", "CCC").

図12は、図11で示したブロックに加えて第4の実行ブロック1105を第3の実行ブロック115に対して右にずらして配置している状態を示す。この場合、第4の実行ブロック1105の第1の上記コネクタ905及び第2の上記コネクタ910は、いずれも、第3の実行ブロック115の下位コネクタに接続されていない。したがって、この実施例では、スタートブロック102を第4の実行ブロック1105に接続することはできない。これは、実行ブロックのコネクタの物理的位置により、接続を制御することができる。より具体的には、第4の実行ブロック1105は、第3の実行ブロック115に対してインデントを付加したように配置されるが、第4の実行ブロック1105の接続は認識されないので、ユーザは、第4の実行ブロック1105の配置が正しくないことを認識することができる。言い換えると、ユーザは、実行ブロック同士の配置に関し、インデントを付加した配置ができないことを知ることができる。ユーザは、コンピュータプログラムの文法(例えば、コンピュータプログラム言語「Pythonなどで用いられるようなインデントの使い方)をブロックの外観で及び/又はブロック同士の接続可否(物理的及び/又は電気的接続可否を含む)や、ブロック同士の接続における感触などで知ることができる。したがって、幼児などの子供向けのブロック玩具において、プログラミングを直感的に学ぶことができる。 FIG. 12 shows a state in which the fourth execution block 1105 is shifted to the right with respect to the third execution block 115 in addition to the block shown in FIG. In this case, neither the first connector 905 nor the second connector 910 of the fourth execution block 1105 is connected to the lower connector of the third execution block 115. Therefore, in this embodiment, the start block 102 cannot be connected to the fourth execution block 1105. It can control the connection by the physical position of the connector on the execution block. More specifically, the fourth execution block 1105 is arranged so as to add an indent to the third execution block 115, but the connection of the fourth execution block 1105 is not recognized, so that the user can use the user. It can be recognized that the arrangement of the fourth execution block 1105 is incorrect. In other words, the user can know that indentation cannot be added to the arrangement of execution blocks. The user describes the grammar of the computer program (for example, how to use indentation as used in Python etc.) in the appearance of blocks and / or whether blocks can be connected to each other (including physical and / or electrical connection). ) And the feel of the connection between blocks. Therefore, programming can be learned intuitively in block toys for children such as infants.

図13は、制御ブロックとして、関数定義ブロック及び関数呼び出し(ファンクションコール)ブロックを用いた例を示す。スタートブロック102のコネクタ320は、第2の実行ブロック110の第1の上位コネクタ905に接続される。第2の実行ブロック110の下位コネクタ535は、第2の制御ブロック(関数呼び出し(ファンクションコール))1005の第1の上位ブロック1010に接続される。 FIG. 13 shows an example in which a function definition block and a function call (function call) block are used as control blocks. The connector 320 of the start block 102 is connected to the first upper connector 905 of the second execution block 110. The lower connector 535 of the second execution block 110 is connected to the first upper block 1010 of the second control block (function call (function call)) 1005.

スタートブロック及び関数定義ブロックは、図17で示されているように、コネクタ1720及びコネクタ1730、1740をそれぞれ有する。スタートブロック102の関数定義用コネクタ1720は、第1の制御ブロック(関数定義)1305の第1の関数定義用コネクタ1730に接続される。なお、他の実施例において、第1の制御ブロック(関数定義)1305のコネクタ1740は、他の制御ブロック(関数定義)の第1の関数用コネクタ1730に接続されてもよい。これにより、2以上の関数を定義することができる。第1の制御ブロック1305の下位コネクタ1045は、第1の実行ブロック105の第2の上位コネクタ910に接続されている。これにより、関数として、第1の実行ブロック105のコンテンツが定義される。 The start block and the function definition block have connectors 1720 and connectors 1730 and 1740, respectively, as shown in FIG. The function definition connector 1720 of the start block 102 is connected to the first function definition connector 1730 of the first control block (function definition) 1305. In another embodiment, the connector 1740 of the first control block (function definition) 1305 may be connected to the first function connector 1730 of the other control block (function definition). This makes it possible to define two or more functions. The lower connector 1045 of the first control block 1305 is connected to the second upper connector 910 of the first execution block 105. As a result, the content of the first execution block 105 is defined as a function.

図17の変形例として、スタートブロック及び関数定義ブロックのコネクタは、同じ構成としてもよい。例えば、スタートブロックは、一又は二以上の上位コネクタを有していてもよい。他の実施例において、関数定義ブロックの下位コネクタは、スタートブロックのコネクタの位置に配置してもよい。すなわち、関数定義ブロックの下位コネクタは、スタートブロックと同様に、第2面における長手方向の左側に寄るように構成されてもよい。他の実施例において、スタートブロック及び関数定義ブロックは、コネクタ及び内部の構成などを同じとすることができる。 As a modification of FIG. 17, the connectors of the start block and the function definition block may have the same configuration. For example, the start block may have one or more upper connectors. In another embodiment, the lower connector of the function definition block may be placed at the connector position of the start block. That is, the lower connector of the function definition block may be configured to be closer to the left side in the longitudinal direction on the second surface, similarly to the start block. In another embodiment, the start block and the function definition block can have the same connector and internal configuration.

スタートブロック102は、第1及び第2の制御ブロック、第1及び第2の実行ブロックの接続により、各ブロックと通信し、各ブロックから、各ブロックのブロック識別子及び位置情報を少なくとも取得することができる。これにより、第1制御ブロック(関数定義)、第2制御ブロック(関数呼び出し(ファンクションコール))、第1の実行ブロック及び第2の実行ブロックのブロック識別子が、それぞれ、「0003」、「0006」、「0101」、「0102」とすると、以下のようなブロック接続情報テーブル430を更新及び/又は作成することができる。位置情報「2−1」及び「2−2」における「2−」は、同じ関数定義ブロックのグループであることを示し、「−1」及び「−2」は、接続順序を示す。

Figure 0006793137
The start block 102 can communicate with each block by connecting the first and second control blocks, the first and second execution blocks, and obtain at least the block identifier and position information of each block from each block. it can. As a result, the block identifiers of the first control block (function definition), the second control block (function call (function call)), the first execution block, and the second execution block are "0003" and "0006", respectively. , "0101" and "0102", the following block connection information table 430 can be updated and / or created. "2-" in the position information "2-1" and "2-2" indicates that they are the same group of function definition blocks, and "-1" and "-2" indicate the connection order.
Figure 0006793137

スタートブロック102は、図7に示した識別子対応情報テーブル710を参照することにより、第1の制御ブロック(ブロック識別子:0003)、第2の制御ブロック(ブロック識別子:0006)、第1の実行ブロック(ブロック識別子:0101)及び第2の実行ブロック(ブロック識別子:0102)のブロック種別を、それぞれ、「2」、「5」、「7」及び「7」として特定する。すなわち、第1の制御ブロック、第2の制御ブロック、第1の実行ブロック及び第2の実行ブロックは、それぞれ、関数定義ブロック、関数呼び出し(ファンクションコール)を行うブロック、実行ブロック及び実行ブロックとして特定される。さらに、第1の実行ブロック(ブロック識別子:0101)及び第2の実行ブロック(ブロック識別子:0102)に対応するコンテンツ識別子は、それぞれ、識別子対応情報テーブル710に基づいて、「001」及び「002」として特定される。スタートブロック102は、図4に示したコンテンツテーブル410から、コンテンツ識別子「001」及び「002」に対応するコンテンツデータ(それぞれ、「AAA」及び「BBB」)を特定する。 By referring to the identifier correspondence information table 710 shown in FIG. 7, the start block 102 includes a first control block (block identifier: 0003), a second control block (block identifier: 0006), and a first execution block. The block types of (block identifier: 0101) and the second execution block (block identifier: 0102) are specified as "2", "5", "7", and "7", respectively. That is, the first control block, the second control block, the first execution block, and the second execution block are specified as a function definition block, a block for making a function call (function call), an execution block, and an execution block, respectively. Will be done. Further, the content identifiers corresponding to the first execution block (block identifier: 0101) and the second execution block (block identifier: 0102) are "001" and "002", respectively, based on the identifier correspondence information table 710. Specified as. The start block 102 identifies the content data (“AAA” and “BBB”, respectively) corresponding to the content identifiers “001” and “002” from the content table 410 shown in FIG.

第1の実行ブロック105の下位コネクタ535及び第2の制御ブロック1005の下位コネクタ1045は、処理の終了(すなわち、ブロックが自身以降にブロックが接続されていないこと)を検出するセンサーとして機能してもよい。実行ブロック及び制御ブロックは、自身のブロックの下位コネクタに他のコネクタが接続されていないことを検出すると、処理の終了を検出したことをスタートブロック102に通知することができる。これにより、スタートブロック102は、処理の終了を特定する。 The lower connector 535 of the first execution block 105 and the lower connector 1045 of the second control block 1005 function as sensors to detect the end of processing (that is, the block has no blocks connected after itself). May be good. When the execution block and the control block detect that no other connector is connected to the lower connector of their own block, they can notify the start block 102 that the processing has been completed. As a result, the start block 102 identifies the end of the process.

制御対象の実行ブロックに関し、例えば、(1)制御ブロックが関数定義ブロックである場合、制御対象の実行ブロックのコンテンツデータは関数として定義され、(2)制御ブロックが条件分岐(ブランチ)ブロックである場合、制御対象の実行ブロックのコンテンツデータは条件分岐(ブランチ)の条件を満たしたときに再生又は実行され、(3)制御ブロックがループブロックである場合、制御対象の実行ブロックのコンテンツデータは所定の数分繰り返して再生又は実行される。 Regarding the execution block to be controlled, for example, (1) when the control block is a function definition block, the content data of the execution block to be controlled is defined as a function, and (2) the control block is a conditional branch block. In this case, the content data of the execution block to be controlled is played or executed when the condition of the conditional branch is satisfied, and (3) when the control block is a loop block, the content data of the execution block to be controlled is predetermined. It is played or executed repeatedly for several minutes.

スタートブロック102は、第2の制御ブロック1005のブロック種別が「5」(関数呼び出し(ファンクションコール))であるかを特定する。ブロック種別が「5」である場合、関数呼び出し(ファンクションコール)の処理として、関数として定義されているコンテンツデータの再生又は実行が行われる。 The start block 102 specifies whether the block type of the second control block 1005 is "5" (function call (function call)). When the block type is "5", the content data defined as the function is reproduced or executed as the processing of the function call (function call).

以上により、図13に示したブロックの配置から、スタートブロック102は、以下の処理順序でコンテンツデータの再生又は実行を行う。
(1)第1の制御ブロック(関数定義)1005に接続される第1の実行ブロック105のコンテンツデータ「AAA」を関数として定義する(第1の制御ブロック及び第1の実行ブロック)。
(2)第2の実行ブロック110のコンテンツデータ「BBB」の実行又は再生を行う。
(3)第2の制御ブロック1305が関数呼び出し(ファンクションコール)のブロックであると特定すると、関数として定義されているコンテンツデータ「AAA」の実行又は再生を行う。
As described above, from the arrangement of the blocks shown in FIG. 13, the start block 102 reproduces or executes the content data in the following processing order.
(1) The content data "AAA" of the first execution block 105 connected to the first control block (function definition) 1005 is defined as a function (first control block and first execution block).
(2) The content data "BBB" of the second execution block 110 is executed or reproduced.
(3) When the second control block 1305 is specified as a block for function call (function call), the content data "AAA" defined as a function is executed or regenerated.

本実施例において、有線又は無線を用いて、スタートブロック及び関数定義ブロックは離れて接続及び配置されてもよい。これにより、関数定義ブロックグループが2以上ある場合であっても、関数定義ブロックグループ内で後述するインデントを付すことができる。他の実施例において、関数定義ブロックグループ内で、他の関数を呼び出すための他の関数呼び出し(ファンクションコール)ブロックが接続されてもよい。他の実施例において、スタートブロックは、関数定義ブロックと隣り合わせに接続されてもよい。この場合、スタートブロック及び関数定義ブロックの第1及び2面における長手方向の長さは、関数定義ブロック以外の制御ブロック及び実行ブロックの第1及び2面における長手方向の長さより長くすることができる。 In this embodiment, the start block and the function definition block may be connected and arranged separately by wire or wirelessly. As a result, even when there are two or more function definition block groups, indentation described later can be added in the function definition block group. In another embodiment, other function call (function call) blocks for calling other functions may be connected within the function definition block group. In other embodiments, the start block may be connected side by side with the function definition block. In this case, the longitudinal length of the start block and the function definition block on the first and second surfaces can be longer than the longitudinal length of the control block and the execution block other than the function definition block on the first and second surfaces. ..

他の実施例において、スタートブロックに接続される一又は二以上の関数定義ブロックは、並列に実行又は再生されるように制御されてもよい。これにより、スタートブロックのグループで定義される一又は二以上のコンテンツデータと一又は二以上の関数定義ブロックのグループで定義される一又は二以上のコンテンツデータとは、重畳的に実行又は演奏され、コンテンツが音楽である場合、輪唱や、複数楽器による演奏、作曲などが可能となる。他の実施例において、ブロック制御装置は、実行ブロックの接続順序に基づいて取得したコンテンツデータを合成して、新たなコンテンツを作成してもよい。 In other embodiments, one or more function definition blocks connected to the start block may be controlled to be executed or regenerated in parallel. As a result, one or more content data defined in the group of start blocks and one or more content data defined in the group of one or more function definition blocks are executed or played in an overlapping manner. , If the content is music, it is possible to sing in a circle, perform with multiple musical instruments, compose, and so on. In another embodiment, the block control device may create new content by synthesizing the content data acquired based on the connection order of the execution blocks.

他の実施例において、関数呼び出し(ファンクションコール)のブロックが呼び出す関数定義ブロックは、設定ブロックによって定義されてもよい。2以上の関数定義ブロックを用いて、2以上の関数を定義した場合、関数呼び出し(ファンクションコール)が呼び出す関数定義ブロックは、設定ブロックを用いて変更することができる。他の実施例において、関数定義ブロックは、一又は二以上の関数呼び出し(ファンクションコール)ブロックによって2回以上呼び出されてもよい。 In another embodiment, the function definition block called by the block of function call (function call) may be defined by the setting block. When two or more functions are defined using two or more function definition blocks, the function definition block called by the function call (function call) can be changed by using the setting block. In other embodiments, the function definition block may be called more than once by one or more function call blocks.

図13に関し、スタートブロック102の下位コネクタ320は、当該ブロックの第2の面にける長手方向左側に配置されているが、下位コネクタ320は、当該長手方向右側に配置してもよい。他の実施例において、スタートブロック102に対して、下位コネクタ320以降に接続されるブロックにインデントを付し、最後のブロックとして動作なしブロックを置いてインデントを戻すことによって、スタートブロック102が制御する範囲を明確にすることができる。 With respect to FIG. 13, the lower connector 320 of the start block 102 is arranged on the left side in the longitudinal direction on the second surface of the block, but the lower connector 320 may be arranged on the right side in the longitudinal direction. In another embodiment, the start block 102 is controlled by adding an indent to the block connected to the lower connector 320 or later with respect to the start block 102, placing a non-operating block as the last block, and returning the indent. The range can be clarified.

関数定義ブロックも同様に、関数定義ブロック1005の下位コネクタ1045と第1の実行ブロック105は実行ブロック105の長手方向右側の第2の上位コネクタ910を用いて接続されているが、長手方向左側の第1の上位コネクタ905を用いて接続することができる。これにより、関数定義ブロック1005に対して、第1の実行ブロック105にインデントを付し、最後のブロックとして動作なしブロックを置いてインデントを戻すことによって、関数定義ブロック1005が制御する範囲を明確にすることができる。図13の関数定義ブロックが以降のブロックをインデントしない場合、下位コネクタ1045は長手方向左側に配置されても良い。 Similarly, in the function definition block, the lower connector 1045 of the function definition block 1005 and the first execution block 105 are connected by using the second upper connector 910 on the right side in the longitudinal direction of the execution block 105, but on the left side in the longitudinal direction. It can be connected using the first upper connector 905. As a result, the range controlled by the function definition block 1005 is clarified by indenting the first execution block 105 with respect to the function definition block 1005 and placing a non-operation block as the last block and returning the indent. can do. If the function definition block of FIG. 13 does not indent subsequent blocks, the lower connector 1045 may be located on the left side in the longitudinal direction.

図14は、制御ブロックとして、条件分岐(ブランチ)ブロックを用いた例を示す。スタートブロック102のコネクタ320は、第1の制御ブロック1005の第1の上位コネクタ1010に接続されている。第1の制御ブロック1005の下位コネクタ1045は、第1の実行ブロック105の第1の上位コネクタ905に接続されている。第1の実行ブロック105の下位ブロック535は、第2の実行ブロック110の第2の上位コネクタ910に接続される。すなわち、制御ブロックの後に接続される実行ブロックにおいて、第2の上位コネクタ910が接続に用いられると、スタートブロック102(及び/又は第2の実行ブロック110)は、第2の実行ブロック110が第1の実行ブロック105に対してインデントが戻されたことを検出する。これにより、第1の実行ブロック105は、第1の制御ブロック1005に対してインデントが付され、第2の実行ブロック110は、第1の実行ブロック105に対してインデントが戻される。したがって、ユーザは、インデントを用いた条件分岐(ブランチ)の定義手法を理解することができる。 FIG. 14 shows an example in which a conditional branch block is used as the control block. The connector 320 of the start block 102 is connected to the first upper connector 1010 of the first control block 1005. The lower connector 1045 of the first control block 1005 is connected to the first upper connector 905 of the first execution block 105. The lower block 535 of the first execution block 105 is connected to the second upper connector 910 of the second execution block 110. That is, in the execution block connected after the control block, when the second upper connector 910 is used for connection, the start block 102 (and / or the second execution block 110) has the second execution block 110 as the second execution block. It is detected that the indent is returned for the execution block 105 of 1. As a result, the first execution block 105 is indented with respect to the first control block 1005, and the second execution block 110 is indented back with respect to the first execution block 105. Therefore, the user can understand the method of defining a conditional branch using indentation.

スタートブロック102は、第1の制御ブロック、第1及び第2の実行ブロックの接続により、各ブロックと通信し、各ブロックから、各ブロックのブロック識別子及び位置情報を少なくとも取得することができる。これにより、第1制御ブロック(条件分岐(ブランチ))、第1の実行ブロック及び第2の実行ブロックのブロック識別子が、それぞれ、「0005」、「0101」、「0102」とすると、以下のようなブロック接続情報テーブル430を更新及び/又は作成することができる。

Figure 0006793137
The start block 102 can communicate with each block by connecting the first control block, the first and the second execution blocks, and can acquire at least the block identifier and the position information of each block from each block. As a result, assuming that the block identifiers of the first control block (conditional branch), the first execution block, and the second execution block are "0005", "0101", and "0102", respectively, as follows. Block connection information table 430 can be updated and / or created.
Figure 0006793137

スタートブロック102は、識別子対応情報テーブル710に基づいて、各ブロックのブロック種別を特定し、さらに、識別子対応情報テーブル710及びコンテンツテーブル410から、第1及び第2の実行ブロックのコンテンツ識別子「001」及び「002」に対応するコンテンツデータ(それぞれ、「AAA」及び「BBB」)を特定する。 The start block 102 specifies the block type of each block based on the identifier correspondence information table 710, and further, from the identifier correspondence information table 710 and the content table 410, the content identifier "001" of the first and second execution blocks. And the content data corresponding to "002" ("AAA" and "BBB", respectively) are specified.

以上により、図14に示したブロックの配置から、スタートブロック102は、以下の処理順序でコンテンツデータの再生又は実行を行う。
(1)条件分岐(ブランチ)の条件を満たすとき(第1の制御ブロック)、インデントの終了を検出した第2の実行ブロック105の一つ上(前)の第1の実行ブロック105のコンテンツデータ「AAA」を実行又は再生する(第1の実行ブロック)。条件分岐(ブランチ)の条件の例としては、現在時刻が所定の時刻(12:00から15:00)であるなどとすることができる。
(2)第2の実行ブロック110のコンテンツデータ「BBB」の実行又は再生を行う。これにより、コンテンツデータ「BBB」は、常に実行又は再生されるが、コンテンツデータ「AAA」は条件を満たすときのみ実行又は再生される。
As described above, from the arrangement of the blocks shown in FIG. 14, the start block 102 reproduces or executes the content data in the following processing order.
(1) When the condition of the conditional branch (branch) is satisfied (first control block), the content data of the first execution block 105 one above (previous) of the second execution block 105 that has detected the end of indentation. Execute or regenerate "AAA" (first execution block). As an example of the condition of the conditional branch, the current time can be a predetermined time (12:00 to 15:00).
(2) The content data "BBB" of the second execution block 110 is executed or reproduced. As a result, the content data "BBB" is always executed or reproduced, but the content data "AAA" is executed or reproduced only when the conditions are satisfied.

図15は、制御ブロックとして、繰り返し(ループ)ブロックを用いた例を示す。スタートブロック102のコネクタ320は、第1の実行ブロック105の第1の上位コネクタ905に接続されている。第1の実行ブロック105の下位コネクタ535は、制御ブロック1005の第1の上位コネクタ1010に接続されている。制御ブロック1005の下位コネクタ1045は、第2の実行ブロック110の第1の上位コネクタ905に接続されている。また、制御ブロック1005は、上述した通り、制御ブロック1005の横面と設定ブロック1605の横面とがコネクタによって接続されてもよい。設定ブロック1605については、後述するが、設定ブロック1605は、制御ブロック1005で用いられる情報を実行ブロック及び/又は制御ブロック1005を介してスタートブロックに供給することができる。ここで、設定ブロック1605の情報は、制御ブロック1005が繰り返し(ループ)の場合、ループする回数として定義してもよい。ループを3回実行する場合、設定ブロック1605の情報は「3」となる。一実施例において、ループを2回実行する場合、設定ブロックは省略されてもよい。この場合、省略されると、ループする回数は「2」として扱われる。第2の実行ブロック110の下位コネクタ535は、第3の実行ブロック115の第1の上位コネクタ905に接続される。 FIG. 15 shows an example in which a repeating (loop) block is used as the control block. The connector 320 of the start block 102 is connected to the first upper connector 905 of the first execution block 105. The lower connector 535 of the first execution block 105 is connected to the first upper connector 1010 of the control block 1005. The lower connector 1045 of the control block 1005 is connected to the first upper connector 905 of the second execution block 110. Further, as described above, in the control block 1005, the side surface of the control block 1005 and the side surface of the setting block 1605 may be connected by a connector. The setting block 1605 will be described later, but the setting block 1605 can supply the information used in the control block 1005 to the start block via the execution block and / or the control block 1005. Here, the information of the setting block 1605 may be defined as the number of loops when the control block 1005 is repeated (loop). When the loop is executed three times, the information of the setting block 1605 is "3". In one embodiment, if the loop is executed twice, the setting block may be omitted. In this case, if omitted, the number of loops is treated as "2". The lower connector 535 of the second execution block 110 is connected to the first upper connector 905 of the third execution block 115.

スタートブロック102は、制御ブロック1005、設定ブロック1605、第1、第2及び第3の実行ブロック105、110、115の接続により、各ブロックと通信し、各ブロックから、各ブロックのブロック識別子及び位置情報を少なくとも取得することができる。これにより、制御ブロック(繰り返し(ループ))1005、制御ブロック(設定)1605、第1の実行ブロック、第2の実行ブロック及び第3の実行ブロックのブロック識別子が、それぞれ、「0004」、「0007」、「0101」、「0102」、「0103」とすると、以下のようなブロック接続情報テーブル430を更新及び/又は作成することができる。なお、スタートブロック102は、制御ブロック(設定)1605が接続されていることを検出しなくてもよい。この場合、スタートブロック102は、制御ブロック(繰り返し(ループ))1005を介して制御ブロック(設定)1605が有する設定情報を少なくとも取得できる。

Figure 0006793137
The start block 102 communicates with each block by connecting the control block 1005, the setting block 1605, and the first, second, and third execution blocks 105, 110, and 115, and from each block, the block identifier and position of each block. At least the information can be obtained. As a result, the block identifiers of the control block (repetition (loop)) 1005, the control block (setting) 1605, the first execution block, the second execution block, and the third execution block are "0004" and "0007", respectively. , "0101", "0102", and "0103", the following block connection information table 430 can be updated and / or created. The start block 102 does not have to detect that the control block (setting) 1605 is connected. In this case, the start block 102 can acquire at least the setting information of the control block (setting) 1605 via the control block (repetition (loop)) 1005.
Figure 0006793137

スタートブロック102は、上記ブロック識別子から、第1、第2、第3の実行ブロック105、110、115のコンテンツデータ「AAA」、「BBB」、「CCC」をそれぞれ特定し、第2及び第3の実行ブロック110、115が制御ブロック(繰り返し(ループ))1005の制御対象であることを特定する。また、スタートブロック102は、設定情報を設定ブロック1605から受ける、又は、制御ブロック(繰り返し(ループ))1005が取得した設定情報を受ける。ここでは、設定情報は「3」と仮定する。 The start block 102 identifies the content data "AAA", "BBB", and "CCC" of the first, second, and third execution blocks 105, 110, and 115 from the block identifier, respectively, and the second and third execution blocks 102, respectively. It is specified that the execution blocks 110 and 115 of the above are the control targets of the control block (repetition (loop)) 1005. Further, the start block 102 receives the setting information from the setting block 1605, or receives the setting information acquired by the control block (repetition (loop)) 1005. Here, the setting information is assumed to be "3".

以上により、図15に示したブロックの配置から、スタートブロック102は、以下の処理順序でコンテンツデータの再生又は実行を行う。
(1)第1の実行ブロック105のコンテンツデータ「AAA」の実行又は再生を行う
(2)第2の実行ブロック110のコンテンツデータ「BBB」及び第3の実行ブロック115のコンテンツデータ「CCC」の実行又は再生を3回繰り返す。これにより、コンテンツデータ「AAA」を1回実行又は再生した後、コンテンツデータ「BBB」及び「CCC」の実行又は再生が3回繰り返される。コンテンツデータが音楽である場合、特定のフレーズである「BBB」及び「CCC」が繰り返し再生される。
As described above, from the arrangement of the blocks shown in FIG. 15, the start block 102 reproduces or executes the content data in the following processing order.
(1) Execution or reproduction of the content data "AAA" of the first execution block 105 (2) Content data "BBB" of the second execution block 110 and content data "CCC" of the third execution block 115 Repeat execution or playback 3 times. As a result, after the content data "AAA" is executed or reproduced once, the execution or reproduction of the content data "BBB" and "CCC" is repeated three times. When the content data is music, the specific phrases "BBB" and "CCC" are repeatedly played.

図16は、設定ブロックの内部の概要を示す。設定ブロック1605は、プロセッサ1610、ROM1615、RAM1620及びコネクタ1650を備える。RAM1620は、記憶媒体とすることができる。RAM1620又はROM1615は、自身のブロック識別子に加えて、設定ブロック自体が予め有する情報を記憶することができる。これにより、設定ブロックは、他のブロックに接続されたとき、設定すべき情報をスタートブロック102に供給することができる。他の実施例において、設定ブロックは、ユーザからの変数の値の入力を受ける入力装置を有していてもよい。入力装置は、例えば、ユーザが入力可能なダイヤル式入力装置、一又は二以上のボタン、タッチパネル式入力装置などとすることができる。これにより、ユーザは、設定ブロックの情報を変更することができる。コネクタ1650は、電気的接続、磁気的接続、光学的接続、及び、スイッチなどによる物理的接続の少なくとも一つによって制御ブロック1005に接続することができる。他の実施例において、設定ブロックが設定する情報は、設定ブロックが置かれている方向によって定義されてもよい。 FIG. 16 shows an overview of the inside of the setting block. The setting block 1605 includes a processor 1610, a ROM 1615, a RAM 1620, and a connector 1650. The RAM 1620 can be a storage medium. The RAM 1620 or ROM 1615 can store information that the setting block itself has in advance, in addition to its own block identifier. As a result, the setting block can supply the information to be set to the start block 102 when connected to another block. In other embodiments, the configuration block may have an input device that receives input of variable values from the user. The input device may be, for example, a dial-type input device capable of input by a user, one or more buttons, a touch panel type input device, or the like. This allows the user to change the information in the configuration block. The connector 1650 can be connected to the control block 1005 by at least one of an electrical connection, a magnetic connection, an optical connection, and a physical connection such as a switch. In another embodiment, the information set by the setting block may be defined by the direction in which the setting block is placed.

図18は、制御ブロックとして、繰り返し(ループ)ブロック及び条件分岐(ブランチ)ブロックを用いた例を示す。スタートブロック102のコネクタ320は、第1の実行ブロック105の第1の上位コネクタ905に接続されている。第1の実行ブロック105の下位コネクタ535は、第1の制御ブロック(繰り返し(ループ))1805の第1の上位コネクタ1010に接続されている。 FIG. 18 shows an example in which a repeating (loop) block and a conditional branching (branch) block are used as control blocks. The connector 320 of the start block 102 is connected to the first upper connector 905 of the first execution block 105. The lower connector 535 of the first execution block 105 is connected to the first upper connector 1010 of the first control block (repetition (loop)) 1805.

第1の制御ブロック1805の下位コネクタ1045は、第2の実行ブロック110の第1の上位コネクタ905に接続されている。これにより、第2の実行ブロック110は、第1の制御ブロック1805に対してインデントが付加される。また、第1の制御ブロック1805は、上述した通り、第1の制御ブロック1805の横面と第1の設定ブロック1605の横面とがコネクタによって接続されてもよい。本実施例では、第1の設定ブロック1605は、ループ回数が「3」であることを特定している。第2の実行ブロック110の下位コネクタ535は、第2の制御ブロック(第1の条件分岐(ブランチ))1810の第1の上位コネクタ1010に接続されている。 The lower connector 1045 of the first control block 1805 is connected to the first upper connector 905 of the second execution block 110. As a result, the second execution block 110 is indented with respect to the first control block 1805. Further, as described above, in the first control block 1805, the side surface of the first control block 1805 and the side surface of the first setting block 1805 may be connected by a connector. In this embodiment, the first setting block 1605 specifies that the number of loops is "3". The lower connector 535 of the second execution block 110 is connected to the first upper connector 1010 of the second control block (first conditional branch) 1810.

第2の制御ブロック(第1の条件分岐(ブランチ))1810の下位コネクタ1045は、第3の実行ブロック115の上位コネクタ905に接続されている。これにより、第3の実行ブロック115は、第2の制御ブロック1810に対してインデントが付加される。本実施例において、第2の制御ブロック1810の第1の条件分岐(ブランチ)の条件は、ループの回数が1回であることである。ループの回数が1回である条件は、第2の設定ブロック1860によって設定されてもよい。第3の実行ブロック115の下位コネクタ535は、第3の制御ブロック(第2の条件分岐(ブランチ))1820の第2の上位コネクタ1015に接続されている。第3の制御ブロック1820(及び/又はスタートブロック102)は、第1の上位コネクタ1010が上位ブロックに接続されておらず、第2の上位コネクタ1015が上位ブロックに接続されていることを検出する。すなわち、第3の制御ブロック1820(ブロック識別子「0008」)は、シグナル情報が「1」であることを検出する。スタートブロック102(及び/又は第3の制御ブロック1820)は、この検出に応じて、第3の制御ブロック1820が上位ブロックである第3の実行ブロック115に対してインデントが戻されたことを判定することができる。 The lower connector 1045 of the second control block (first conditional branch) 1810 is connected to the upper connector 905 of the third execution block 115. As a result, the third execution block 115 is indented with respect to the second control block 1810. In this embodiment, the condition of the first conditional branch of the second control block 1810 is that the number of loops is one. The condition that the number of loops is one may be set by the second setting block 1860. The lower connector 535 of the third execution block 115 is connected to the second upper connector 1015 of the third control block (second conditional branch) 1820. The third control block 1820 (and / or the start block 102) detects that the first upper connector 1010 is not connected to the upper block and the second upper connector 1015 is connected to the upper block. .. That is, the third control block 1820 (block identifier "0008") detects that the signal information is "1". The start block 102 (and / or the third control block 1820) determines in response to this detection that the third control block 1820 has returned indentation to the third execution block 115, which is the upper block. can do.

第3の制御ブロック(第2の条件分岐(ブランチ))1820の下位コネクタ1045は、第4の実行ブロック1830の上位コネクタ905に接続されている。これにより、第4の実行ブロック1830は、第3の制御ブロック1820に対してインデントが付加される。本実施例において、第3の制御ブロック1820の第2の条件分岐(ブランチ)の条件は、ループの回数が2回であることである。ループの回数が2回である条件は、第3の設定ブロック1865によって設定されてもよい。 The lower connector 1045 of the third control block (second conditional branch) 1820 is connected to the upper connector 905 of the fourth execution block 1830. As a result, the fourth execution block 1830 is indented with respect to the third control block 1820. In this embodiment, the condition of the second conditional branch of the third control block 1820 is that the number of loops is two. The condition that the number of loops is two may be set by the third setting block 1865.

第4の実行ブロック1830の下位コネクタ535は、第5の実行ブロック1840の第2の上位コネクタ910に接続されている。第5の実行ブロック1840(及び/又はスタートブロック102)は、第1の上位コネクタ905が上位ブロックに接続されておらず、第2の上位コネクタ910が上位ブロックに接続されていることを検出する。すなわち、第5の実行ブロック1840(ブロック識別子「0105」)は、シグナル情報が「1」であることを検出する。スタートブロック102(及び/又は第5の実行ブロック1840)は、この検出に応じて、第5の実行ブロック1840が上位ブロックである第4の実行ブロック1830に対してインデントが戻されたことを判定することができる。 The lower connector 535 of the fourth execution block 1830 is connected to the second upper connector 910 of the fifth execution block 1840. The fifth execution block 1840 (and / or start block 102) detects that the first upper connector 905 is not connected to the upper block and the second upper connector 910 is connected to the upper block. .. That is, the fifth execution block 1840 (block identifier "0105") detects that the signal information is "1". The start block 102 (and / or the fifth execution block 1840) determines in response to this detection that the fifth execution block 1840 has returned an indent to the fourth execution block 1830, which is the upper block. can do.

第5の実行ブロック1840の下位コネクタ535は、第6の実行ブロック1850の第2の上位コネクタ910に接続されている。第6の実行ブロック1850(及び/又はスタートブロック102)は、第1の上位コネクタ905が上位ブロックに接続されておらず、第2の上位コネクタ910が上位ブロックに接続されていることを検出する。すなわち、第6の実行ブロック1850(ブロック識別子「0106」)は、シグナル情報が「1」であることを検出する。スタートブロック102(及び/又は第6の実行ブロック1850)は、この検出に応じて、第6の実行ブロック1850が上位ブロックである第5の実行ブロック1840に対してインデントが戻されたことを判定することができる。上記の各実施例のように、実行ブロック、制御ブロック共に長手方向左側の第1の上位コネクタの上位ブロックへの接続情報をシグナル情報とし、シグナル情報は、第1の上位コネクタにおいて接続が有る場合「0」、接続が無い場合「1」としている。この「シグナル情報」により、スタートブロック及び/又はスタートブロック以外の各ブロックは、「シグナル情報」が「0」のときに制御範囲のインデントを認識でき、そして、「シグナル情報」が「1」のときに、インデントからの戻りを認識できる。 The lower connector 535 of the fifth execution block 1840 is connected to the second upper connector 910 of the sixth execution block 1850. The sixth execution block 1850 (and / or start block 102) detects that the first upper connector 905 is not connected to the upper block and the second upper connector 910 is connected to the upper block. .. That is, the sixth execution block 1850 (block identifier "0106") detects that the signal information is "1". The start block 102 (and / or the sixth execution block 1850) determines in response to this detection that the sixth execution block 1850 has returned an indent to the fifth execution block 1840, which is a higher block. can do. As in each of the above embodiments, the connection information to the upper block of the first upper connector on the left side in the longitudinal direction is used as the signal information for both the execution block and the control block, and the signal information is the case where there is a connection in the first upper connector. It is set to "0" and "1" when there is no connection. With this "signal information", each block other than the start block and / or the start block can recognize the indent of the control range when the "signal information" is "0", and the "signal information" is "1". Sometimes you can recognize the return from indentation.

スタートブロック102は、各実行ブロック、各制御ブロック1805、1810、1820及び設定ブロック1605、1860、1865の接続により、各ブロックと通信し、各ブロックから、各ブロックのブロック識別子及び位置情報を少なくとも取得することができる。これにより、第1の制御ブロック(繰り返し(ループ))1805、第1の設定ブロック1605、第2の設定ブロック1860、第3の設定ブロック1865、第2の制御ブロック(第1の条件分岐(ブランチ))1810、第3の制御ブロック(第2の条件分岐(ブランチ))1820、第1の実行ブロック105、第2の実行ブロック110、第3の実行ブロック115、第4の実行ブロック1830、第5の実行ブロック1840及び第6の実行ブロック1850のブロック識別子が、それぞれ、「0004」、「0007」、「0009」、「0010」、「0005」、「0008」、「0101」、「0102」、「0103」、「0104」、「0105」、「0106」とすると、以下のようなブロック接続情報テーブル430を更新及び/又は作成することができる。なお、スタートブロック102は、第1の設定ブロック1605が接続されていることを検出しなくてもよい。この場合、スタートブロック102は、第1の制御ブロック(繰り返し(ループ))1805を介して第1の設定ブロック1605が有する情報(ループ回数が「3」)を少なくとも取得できる。また、第2及び3の設定ブロック1860、1865が用いられている場合、スタートブロック102は、各設定ブロックに対応する制御ブロックを介して設定ブロックの情報を取得してもよい。

Figure 0006793137
The start block 102 communicates with each block by connecting each execution block, each control block 1805, 1810, 1820 and setting blocks 1605, 1860, 1865, and at least obtains the block identifier and position information of each block from each block. can do. As a result, the first control block (repetition (loop)) 1805, the first setting block 1605, the second setting block 1860, the third setting block 1865, and the second control block (first conditional branch (branch)). )) 1810, 3rd control block (second conditional branch) 1820, 1st execution block 105, 2nd execution block 110, 3rd execution block 115, 4th execution block 1830, 1st The block identifiers of the 5th execution block 1840 and the 6th execution block 1850 are "0004", "0007", "0009", "0010", "0005", "0008", "0101", and "0102", respectively. , "0103", "0104", "0105", "0106", the following block connection information table 430 can be updated and / or created. The start block 102 does not have to detect that the first setting block 1605 is connected. In this case, the start block 102 can acquire at least the information (the number of loops is “3”) of the first setting block 1605 via the first control block (repetition (loop)) 1805. Further, when the second and third setting blocks 1860 and 1865 are used, the start block 102 may acquire the information of the setting block via the control block corresponding to each setting block.
Figure 0006793137

スタートブロック102は、識別子対応情報テーブル710を参照し、接続されている各ブロックの種別を特定する。さらに、スタートブロック102は、実行ブロックに関し、コンテンツテーブル410を参照し、各実行ブロックに対応するコンテンツデータを特定する。本実施例において、制御ブロックにおけるループ回数や条件分岐(ブランチ)の条件などの制御ブロックのコンテンツは、識別子対応情報テーブル710又はコンテンツテーブル410に記憶されていてもよい。他の実施例において、制御ブロックのコンテンツは、各制御ブロックの記憶媒体に記憶されていてもよい。 The start block 102 refers to the identifier correspondence information table 710 and specifies the type of each connected block. Further, the start block 102 refers to the content table 410 with respect to the execution block, and specifies the content data corresponding to each execution block. In this embodiment, the contents of the control block such as the number of loops in the control block and the condition of the conditional branch (branch) may be stored in the identifier correspondence information table 710 or the content table 410. In another embodiment, the contents of the control blocks may be stored in the storage medium of each control block.

以上により、図18に示したブロックの配置から、スタートブロック102は、以下の処理順序でコンテンツデータの再生又は実行を行う。
(1)第1の実行ブロック105のコンテンツデータ「AAA」の実行又は再生を行う。
(2)第2の実行ブロック110から第5の実行ブロック1840までに関して、実行又は再生が3回繰り返される。
以下において、(2−X−Y)における「X」は、ループの回数を示す。
(2−1−1)第2の実行ブロック110のコンテンツデータ「BBB」の(1回目の)実行又は再生を行う。
(2−1−2)第2の制御ブロック1810において、ループの回数が1回目であることに応じて、第3の実行ブロック115のコンテンツデータ「CCC」の実行又は再生を行う。
(2−1−3)第3の制御ブロック1820において、ループの回数が1回目であることに応じて、第4の実行ブロック1830のコンテンツデータは実行対象とされない。
(2−1−4)第5の実行ブロック1840のコンテンツデータ(例えば「EEE」)の(1回目の)実行又は再生を行う。
(2−2−1)第2の実行ブロック110のコンテンツデータ「BBB」の(2回目の)実行又は再生を行う。
(2−2−2)第2の制御ブロック1810において、ループの回数が2回目であることに応じて、第3の実行ブロック115のコンテンツデータは実行対象とされない。
(2−2−3)第3の制御ブロック1820において、ループの回数が2回目であることに応じて、第4の実行ブロック1830のコンテンツデータ(例えば「DDD」)の実行又は再生を行う。
(2−2−4)第5の実行ブロック1840のコンテンツデータ「EEE」の(2回目の)実行又は再生を行う。
(2−3−1)第2の実行ブロック110のコンテンツデータ「BBB」の(3回目の)実行又は再生を行う。
(2−3−2)第2の制御ブロック1810において、ループの回数が3回目であることに応じて、第3の実行ブロック115のコンテンツデータは実行対象とされない。
(2−3−3)第3の制御ブロック1820において、ループの回数が3回目であることに応じて、第4の実行ブロック1830のコンテンツデータは実行対象とされない。
(2−3−4)第5の実行ブロック1840のコンテンツデータ「EEE」の(3回目の)実行又は再生を行う。
(3)第1の制御ブロック1805に関するループの制御が終了する。
(4)第6の実行ブロック1850のコンテンツデータ(例えば「FFF」)の実行又は再生を行う。
As described above, from the arrangement of the blocks shown in FIG. 18, the start block 102 reproduces or executes the content data in the following processing order.
(1) The content data "AAA" of the first execution block 105 is executed or reproduced.
(2) Execution or reproduction is repeated three times with respect to the second execution block 110 to the fifth execution block 1840.
In the following, "X" in (2-XY) indicates the number of loops.
(2-1-1) The (first) execution or reproduction of the content data "BBB" of the second execution block 110 is performed.
(2-1-2) In the second control block 1810, the content data "CCC" of the third execution block 115 is executed or regenerated according to the number of loops being the first time.
(2-1-3) In the third control block 1820, the content data of the fourth execution block 1830 is not executed, depending on the number of loops being the first.
(2-1-4) The (first) execution or reproduction of the content data (for example, "EEE") of the fifth execution block 1840 is performed.
(2-2-1) The (second) execution or reproduction of the content data "BBB" of the second execution block 110 is performed.
(2-2-2) In the second control block 1810, the content data of the third execution block 115 is not targeted for execution according to the number of loops being the second time.
(2-2-3) In the third control block 1820, the content data (for example, “DDD”) of the fourth execution block 1830 is executed or reproduced according to the number of loops being the second time.
(2-2-4) The (second) execution or reproduction of the content data "EEE" of the fifth execution block 1840 is performed.
(2-3-1) The content data "BBB" of the second execution block 110 is executed or reproduced (third time).
(2-3-2) In the second control block 1810, the content data of the third execution block 115 is not executed because the number of loops is the third.
(2-3-3) In the third control block 1820, the content data of the fourth execution block 1830 is not targeted for execution according to the number of loops being the third time.
(2-3-4) The (third) execution or reproduction of the content data "EEE" of the fifth execution block 1840 is performed.
(3) The control of the loop related to the first control block 1805 ends.
(4) The content data (for example, "FFF") of the sixth execution block 1850 is executed or reproduced.

本実施例において、シグナル情報を用いてインデントの検出を説明したが、当業者であれば理解されるように、他の実施例においてもシグナル情報を用いることができる。 Although the detection of indentation has been described using signal information in this embodiment, signal information can also be used in other examples, as will be understood by those skilled in the art.

実施例4
(ブロックに割り当てたコンテンツデータの動的変更)
本実施例によれば、実行ブロック(又は、実行ブロックの識別子)に割り当てられているコンテンツデータを動的に変更することができる。これにより、本実施例は、音楽や、動画、そして、ロボットや、ドローンなどの制御を行うための制御信号などのブロックに関連付けされたコンテンツデータを動的に変更することによって、よりフレキシブルな遊び方を可能にし、ユーザが飽きにくい玩具を提供することができる。
Example 4
(Dynamic change of content data assigned to blocks)
According to this embodiment, the content data assigned to the execution block (or the identifier of the execution block) can be dynamically changed. As a result, this embodiment is a more flexible way of playing by dynamically changing the content data associated with blocks such as music, moving images, and control signals for controlling robots and drones. It is possible to provide toys that users will not get tired of.

(1)コンテンツデータの再割り当て
例えば、初めに、曲「A」を分割したフレーズ「AAA」、「BBB、「CCC」それぞれを、第1のブロック、第2のブロック、第3のブロックに割り当ていたとする。ユーザがブロックを複数回配置して、コンテンツデータを再生する。この場合、ユーザは、正しいフレーズの並び順(すなわち、ブロックの配置順序)が分かると、ゲーム性がなくなり飽きてしまう。このようなときに、各ブロックに割り当てている曲「A」の一部であるフレーズを異なる実行ブロックへ再割り当てすることによって、ゲーム性を高めて、より魅力的な玩具を提供することができる。
(1) Reassignment of content data For example, first, the phrases "AAA", "BBB, and" CCC "that divide the song" A "are assigned to the first block, the second block, and the third block, respectively. Suppose you were there. The user arranges the blocks multiple times to play the content data. In this case, if the user knows the correct phrase arrangement order (that is, the block arrangement order), the game becomes unplayable and tired. In such a case, by reassigning the phrase that is a part of the song "A" assigned to each block to a different execution block, it is possible to enhance the game and provide a more attractive toy. ..

本実施例では、再割り当ての実行は、ユーザが指示可能な再割り当てボタンをスタートブロック102に設ける、又は、他の装置から再割り当てについての指示を受ける回路をスタートブロック102に設けることによって実現される。他の装置とは、有線又は無線で接続することができる。スタートブロック102において、再割り当てボタンが押されると、又は、スタートブロック102が他の装置から再割り当てについての指示を受けると、再割り当てが実行される。 In this embodiment, the execution of reassignment is realized by providing a reassignment button in the start block 102 that can be instructed by the user, or providing a circuit in the start block 102 that receives instructions for reassignment from another device. To. It can be connected to other devices by wire or wirelessly. When the reassignment button is pressed in the start block 102, or when the start block 102 receives an instruction for reassignment from another device, the reassignment is executed.

再割り当てが実行されると、図4で示したスタートブロック102におけるコンテンツテーブル410のコンテンツ識別子とコンテンツデータとの対応関係を入れ替える。これにより、各実行ブロックへのコンテンツデータの再割り当てが実現できる。他の実施例において、図6に示したコンテンツテーブル610を参照し、同一のコンテンツグループに対応するコンテンツ識別子に対して、コンテンツ識別子とコンテンツデータとの対応関係を入れ替えることによって再割り当てを行ってもよい。他の実施例において、図4に示した識別子対応情報テーブル420について、又は、図7で示した識別子対応情報テーブル710においてブロック種別(ブロック種別:7)が実行ブロックのものについて、ブロック識別子とコンテンツ識別子との対応関係を入れ替えることによって再割り当てを行ってもよい。 When the reassignment is executed, the correspondence between the content identifier of the content table 410 and the content data in the start block 102 shown in FIG. 4 is replaced. As a result, the content data can be reassigned to each execution block. In another embodiment, even if the content table 610 shown in FIG. 6 is referred to and the content identifiers corresponding to the same content group are reassigned by exchanging the correspondence between the content identifiers and the content data. Good. In another embodiment, the block identifier and the content of the identifier correspondence information table 420 shown in FIG. 4 or the identifier correspondence information table 710 shown in FIG. 7 whose block type (block type: 7) is an execution block. Reassignment may be performed by exchanging the correspondence with the identifier.

(2)新たなコンテンツの割り当て
スタートブロック102は、識別子対応情報テーブル420又は710において、コンテンツ識別子が割り当てられていないブロック識別子を特定する。スタートブロック102は、特定されたブロック識別子に新たなコンテンツのコンテンツ識別子を割り当てる。また、スタートブロック102は、新たに追加されるコンテンツのコンテンツ識別子及びコンテンツデータをコンテンツテーブルに追加する。一実施例において、特定されたブロック識別子の数に基づいて、コンテンツをどのように分割するかを決定することができる。コンテンツ識別子が割り当てられていないブロック識別子が存在しない場合、スタートブロック102は、コンテンツ識別子が既に割り当てられている所定のブロック識別子に新たなコンテンツのコンテンツ識別子を割り当てる。
(2) Allocation of New Content The start block 102 specifies a block identifier to which a content identifier is not assigned in the identifier correspondence information table 420 or 710. The start block 102 assigns a content identifier of new content to the specified block identifier. Further, the start block 102 adds the content identifier and the content data of the newly added content to the content table. In one embodiment, it is possible to determine how to divide the content based on the number of block identifiers identified. If there is no block identifier to which no content identifier has been assigned, the start block 102 assigns a new content content identifier to a predetermined block identifier to which the content identifier has already been assigned.

(3)コンテンツの割り当てのタイミング
・スタートブロック102の電源をオンにしたときに、コンテンツの割り当てを行う。
・各ブロックの配置が完成したときにコンテンツの割り当てを行う。例えば、コンテンツが音楽である場合にブロックの配置により曲が完成したときにコンテンツの割り当てを行う。他の実施例において、各ブロックの配置が完成する途中で、誤りのある配置が所定の回数行われたことに応じて、コンテンツの割り当てを行ってもよい。
・電源が投入されてから(又は、先のコンテンツの割り当てが完了してから)、所定の時間経過したときにコンテンツの割り当てを行う。これにより、ブロックを配列させることの難易度を上げることができる。
・スタートブロック以外のブロックが、スタートブロック102に接続されたとき、接続されたブロックにコンテンツデータの割り当てが行われる。本実施例において、接続されるたびに、コンテンツデータの実行又は再生を行えるようにしてもよい。これにより、ユーザは、ブロックに割り当てられたコンテンツデータを認識することができる。ブロックの数が多い場合、コンテンツデータが割り当てられないブロックがあってもよい。この場合、コンテンツデータが割り当てられないブロック又はスタートブロック102において、音声装置や、表示装置を用いて、当該ブロックにコンテンツが割り当てられないことをユーザに通知してもよい(例えば、ビープ音など)。
(3) Timing of content allocation-Contents are allocated when the power of the start block 102 is turned on.
-Assign content when the placement of each block is completed. For example, when the content is music, the content is assigned when the song is completed by arranging the blocks. In another embodiment, the content may be allocated according to the fact that the erroneous arrangement is performed a predetermined number of times while the arrangement of each block is completed.
-Contents are allocated when a predetermined time elapses after the power is turned on (or after the previous content allocation is completed). This makes it possible to increase the difficulty of arranging the blocks.
-When a block other than the start block is connected to the start block 102, content data is assigned to the connected block. In this embodiment, the content data may be executed or reproduced each time the connection is made. As a result, the user can recognize the content data assigned to the block. If the number of blocks is large, there may be blocks to which content data is not allocated. In this case, in the block to which the content data is not assigned or the start block 102, a voice device or a display device may be used to notify the user that the content is not assigned to the block (for example, a beep sound). ..

上記の各実施例において、コンテンツが割り当てられるブロックは、実行ブロックのみとしたが、制御ブロックを含む全てのブロックとしてもよい。これにより、制御ブロック及び実行ブロックに関連付けされるコンテンツデータは、変更可能となる。この場合、ブロックに関連付けされるコンテンツデータは、コンテンツテーブル410(又は識別子対応テーブル710などの他のテーブル)において、ブロック識別子と関連付けされて記憶される。 In each of the above embodiments, the block to which the content is assigned is only the execution block, but it may be all blocks including the control block. As a result, the content data associated with the control block and the execution block can be changed. In this case, the content data associated with the block is stored in association with the block identifier in the content table 410 (or another table such as the identifier correspondence table 710).

実施例5
(スタートブロックの変形例)
上記の各実施例において、スタートブロック102が、各情報テーブルの保持や、各ブロックの制御などを実行しているが、これは一例であり、上記説明したスタートブロック102の一部は、一又は二以上の他の装置と共同して実現されてもよい。他の装置は、例として、スマートフォンや、タブレット、ノートパソコン、デスクトップパソコンなどでもよい。他の装置は、スタートブロック102と有線又は無線で接続することができる。スタートブロック102自体、又は、スタートブロック102及び他の装置の組み合わせは、ブロック制御装置と呼ぶことができる。ブロック制御装置は、インターネットを介して有線又は無線で、ブロック制御装置自体を制御するためのコンピュータプログラムや、実行ブロック、制御ブロック及び設定ブロックを制御するプログラム、実行ブロックに割り当てるコンテンツデータなどを外部サーバから取得できるようにしてもよい。上記説明したテーブルの一部又は全部は、スタートブロック102及び他の装置の一方が有していてもよい。他の実施例において、スタートブロック102の代わりに、スマートフォンや、タブレット、ノートパソコン、デスクトップパソコンなどのコンピュータ装置であるブロック制御装置が、スタートブロック102が行う機能を実現してもよい。他の実施例において、ブロック制御装置は、スタートブロック102及び/又はコンピュータ装置にコンテンツデータや各種のテーブルなどを供給する外部サーバを含んでいてもよい。他の実施例において、ブロック制御装置は、他のブロック制御装置と有線回線又は無線回線を介して通信を行うことができる。これにより、ブロック制御装置のそれぞれのユーザは、例えば、誰が早くブロックを正しく並べることができたかなどの競争を行うことができる。
Example 5
(Modification example of start block)
In each of the above embodiments, the start block 102 holds each information table, controls each block, and the like, but this is an example, and a part of the start block 102 described above is one or more. It may be realized in collaboration with two or more other devices. The other device may be, for example, a smartphone, a tablet, a laptop computer, a desktop computer, or the like. Other devices can be connected to the start block 102 by wire or wirelessly. The start block 102 itself, or a combination of the start block 102 and other devices, can be referred to as a block control device. The block control device is an external server that provides a computer program for controlling the block control device itself, a program for controlling an execution block, a control block, and a setting block, content data to be assigned to the execution block, etc., by wire or wirelessly via the Internet. It may be possible to obtain from. A part or all of the table described above may be possessed by one of the start block 102 and the other device. In another embodiment, instead of the start block 102, a block control device which is a computer device such as a smartphone, a tablet, a laptop computer, or a desktop personal computer may realize the function performed by the start block 102. In another embodiment, the block control device may include an external server that supplies content data, various tables, and the like to the start block 102 and / or the computer device. In another embodiment, the block control device can communicate with another block control device via a wired line or a wireless line. As a result, each user of the block control device can compete, for example, who was able to arrange the blocks correctly quickly.

上記の各実施例において、スタートブロック及び他の装置の一方又は両方からなるブロック制御装置は、コンテンツに適した出力装置を用いてコンテンツを再生又は実行できる。一例として、コンテンツが音楽あれば出力装置はスピーカであり、コンテンツが動画であれば出力装置はディスプレイ及び/又はスピーカであり、コンテンツがプログラムであればそれに適した装置とすることができる。ブロック制御装置が各ブロックから収集(準備)したコンテンツデータの実行又は再生は、例えば、ブロック制御装置や、スタートブロック及び他のブロック、又は、ロボットなどの外部装置などにおいて実現されてもよい。 In each of the above embodiments, the block control device consisting of one or both of the start block and the other device can play or execute the content using an output device suitable for the content. As an example, if the content is music, the output device is a speaker, if the content is a moving image, the output device is a display and / or a speaker, and if the content is a program, a suitable device can be used. Execution or reproduction of content data collected (prepared) from each block by the block control device may be realized in, for example, a block control device, a start block and other blocks, or an external device such as a robot.

上記の各実施例において、各ブロックの接続は、有線又は無線で接続される。有線の場合、第1のブロックの下位コネクタ及び第2の上位コネクタは、それぞれ、凸型及び凹型形状(又は、その逆)を有しており、一方のコネクタが他方のコネクタを受けるようにすることができる。また、無線の場合、各ブロックのコネクタの代わりに、無線通信送受信機を用いることができる。各ブロックは、無線通信送受信機を用いて無線通信を行う。無線通信送受信機は、例えば、RFIDタグ/リーダ、WIFI通信回路、Bluetooth通信回路、ZigBee通信回路などを用いて実現される。 In each of the above embodiments, the connections of the blocks are wired or wireless. In the case of wire, the lower connector of the first block and the second upper connector have convex and concave shapes (or vice versa), respectively, so that one connector receives the other connector. be able to. Further, in the case of wireless, a wireless communication transmitter / receiver can be used instead of the connector of each block. Each block performs wireless communication using a wireless communication transmitter / receiver. The wireless communication transmitter / receiver is realized by using, for example, an RFID tag / reader, a WIFI communication circuit, a Bluetooth communication circuit, a ZigBee communication circuit, or the like.

他の実施例において、各ブロックの接続は、ブロックの形状による物理的接続であってもよい。物理的接続は、例えば、一方のブロックの凸型又は凹型形状が他方のブロックの凹型又は凸型形状と組み合わせることによって実現される。他の例として、物理的接続は、磁力によって実現される。例えば、磁力による物理的接続は、一方のブロックの磁石のS極と他方のブロックの磁石のN極とが組み合わさって実現される。物理的接続が用いられる場合、ブロック制御装置は、各ブロックを赤外線センサーやカメラなどのイメージセンサによる光学的認識を用いて特定してもよい。 In other embodiments, the connection of each block may be a physical connection due to the shape of the block. Physical connections are achieved, for example, by combining the convex or concave shape of one block with the concave or convex shape of the other block. As another example, physical connections are achieved by magnetic force. For example, the physical connection by magnetic force is realized by combining the south pole of the magnet of one block and the north pole of the magnet of the other block. When a physical connection is used, the block control device may identify each block using optical recognition by an image sensor such as an infrared sensor or a camera.

例えば、ブロック制御装置は、イメージセンサなどである光学的に読み取り可能な装置を備え、光学的に読み取り可能な装置は、各ブロックの図柄を検出し、各ブロックのブロック識別子及び配置を特定する。他の実施例において、ブロック制御装置は、各ブロックを、無線通信技術を用いて特定してもよい。この場合、ブロック制御装置及び各ブロックは、それぞれ、無線通信受信機/リーダ(又はリーダ・ライタ)及び無線通信送信機(又は無線通信送信機及び無線通信受信機/リーダ(又はリーダ・ライタ))を有する。例えば、無線通信技術がRFID技術を用いた通信の場合、各ブロックはRFIDタグを有し、ブロック制御装置のRFIDリーダ(又はリーダ・ライタ)がこれらのRFIDタグを読み出すことによって、各ブロックのブロック識別子及び配置を特定する。 For example, the block control device includes an optically readable device such as an image sensor, and the optically readable device detects a symbol of each block and specifies a block identifier and an arrangement of each block. In another embodiment, the block control device may identify each block using wireless communication technology. In this case, the block control device and each block are wireless communication receiver / reader (or reader / writer) and wireless communication transmitter (or wireless communication transmitter and wireless communication receiver / reader (or reader / writer)), respectively. Has. For example, when the wireless communication technology is communication using RFID technology, each block has an RFID tag, and the RFID reader (or reader / writer) of the block control device reads these RFID tags to block each block. Identify the identifier and placement.

他の実施例において、各ブロックを受けるボードによって物理的接続が実現されてもよい。例えば、ボードは、2以上のブロックを受け入れるように構成されている。各ブロックは、ブロック識別子を少なくとも記憶した電気的に読み取り可能なタグ、磁気的に読み取り可能なタグ、光学的に読み取り可能なタグの少なくとも一つを備え、ボードは、電気的に読み取り可能な装置、磁気的に読み取り可能な装置、光学的に読み取り可能な装置の少なくとも一つを備える。ボードは、受け入れたブロックのブロック識別子及び配置を、電気的読み取り装置、磁気的読み取り装置、光学的読み取り装置の少なくとも一つを用いて特定するように構成されている。 In other embodiments, the board receiving each block may provide physical connectivity. For example, the board is configured to accept more than one block. Each block comprises at least one of an electrically readable tag, a magnetically readable tag, and an optically readable tag that stores at least the block identifier, and the board is an electrically readable device. It comprises at least one of a magnetically readable device and an optically readable device. The board is configured to identify the block identifier and placement of the received block using at least one of an electrical reader, a magnetic reader, and an optical reader.

実施例6
各ブロックの変形例)
各ブロックは、電子ペーパーや、液晶ディスプレイ、有機ELディスプレイなどの表示装置を備えていてもよい。表示装置は、各ブロックに関連付けされているコンテンツ又はコンテンツを表すしるしを表示することができる。例えば、コンテンツが音楽である場合、表示装置は、曲名、ブロックが有する音楽の秒数などを表示してもよい。
Example 6
( Modification example of each block)
Each block may include a display device such as an electronic paper, a liquid crystal display, or an organic EL display. The display device can display the content associated with each block or a mark representing the content. For example, when the content is music, the display device may display the song title, the number of seconds of music that the block has, and the like.

他の実施例において、各ブロックは、表示装置を含む出力装置を備えていてもよい。出力装置は、各ブロックに関連付けされている凹凸、振動、音声、静止画、動画、匂いなどの一又は二以上を発生させることができる。これにより、ユーザは、触覚、聴覚、視覚、嗅覚により、各ブロックを識別することができる。ブロック制御装置は、出力装置が出力する情報を割り当て及び/又は供給を行っても良い。 In other embodiments, each block may include an output device that includes a display device. The output device can generate one or more of the irregularities, vibrations, sounds, still images, moving images, odors, etc. associated with each block. This allows the user to identify each block by touch, hearing, sight, and smell. The block control device may allocate and / or supply the information output by the output device.

ブロック制御装置は、各ブロックのブロック識別子の書き換えができてもよい又は、ブロック識別子を拡張した識別子を作成し、各ブロックに記憶させてもよい。これにより、ブロックの遊び方や、ゲームの規則などの拡張が、より簡単に対応できる。 The block control device may be able to rewrite the block identifier of each block, or may create an identifier that extends the block identifier and store it in each block. This makes it easier to extend how to play blocks and the rules of the game.

実施例7
(設定ブロックの変形例)
設定ブロックで設定可能な情報は、各実施例で説明したように、ループの回数やIF文の条件などを引数として設定可能な情報とすることができる。また、設定ブロックは、接続されたブロック群で使用可能な変数を設定できてもよい。さらに、所定の処理を行う命令に関する情報を変数として設定できてもよい。例えば、設定ブロックは、変数についての情報を各ブロックに提供する。また、設定ブロックは、当該変数の値が所定の値となったときに関数などの所定の処理を実行する命令を変数として各ブロックに設定できてもよい。所定の処理は、関数の実行の他、例えば、コンテンツの実行又は再生の停止や、各ブロックの出力装置の制御などとすることができる。
Example 7
(Modification example of setting block)
As described in each embodiment, the information that can be set in the setting block can be information that can be set by using the number of loops, the condition of the IF statement, and the like as arguments. Further, the setting block may be able to set variables that can be used in the connected block group. Furthermore, information about an instruction that performs a predetermined process may be set as a variable. For example, the configuration block provides each block with information about the variable. Further, the setting block may be able to set in each block an instruction for executing a predetermined process such as a function when the value of the variable becomes a predetermined value as a variable. In addition to the execution of the function, the predetermined processing can be, for example, execution of the content or stop of playback, control of the output device of each block, and the like.

コンテンツデータ
コンテンツデータのコンピュータプログラムの動作の対象は、自動車や、飛行機、船などの乗り物及びそれら乗り物のラジコン玩具や、ロボット、ドローンなどでもよい。
Content data The target of the operation of the computer program of the content data may be a vehicle such as an automobile, an airplane, or a ship, a radio-controlled toy of the vehicle, a robot, a drone, or the like.

コンテンツデータが音楽(音声)である場合、コンテンツデータは、フレーズより小さい単位のデータであってもよい。例えば、データの単位は、時間、小節、音符などとすることができる。 When the content data is music (voice), the content data may be data in units smaller than the phrase. For example, the unit of data can be time, measure, musical note, or the like.

コンテンツデータは、コンピュータプログラム、音声、音楽、動画などに加えて、一又は二以上の文字とすることができる。例えば、正しく、実行ブロックを並べると、ブロック制御装置は、各実行ブロックに関連付けされた文字に基づいて、単語又は文章を特定する。例えば、正しい順序で実行ブロックが並べられた場合、ブロック制御装置は、正解の単語や文章を映像や音声に基づいて出力する。 The content data can be one or more characters in addition to computer programs, audio, music, moving images, and the like. For example, when the execution blocks are correctly arranged, the block control device identifies a word or sentence based on the characters associated with each execution block. For example, when the execution blocks are arranged in the correct order, the block control device outputs the correct word or sentence based on the video or audio.

図6に示したコンテンツテーブルのコンテンツグループ610に関し、実行ブロックに割り当てられるコンテンツデータは、異なるコンテンツグループのコンテンツデータでもよい。例えば、コンテンツグループ「A」及び「B」に属する5つのコンテンツデータがそれぞれ5つの実行ブロックに割当てられてもよい。これにより、実行ブロックの組み合わせが複雑になり、ゲーム性がより向上する。 Regarding the content group 610 of the content table shown in FIG. 6, the content data assigned to the execution block may be the content data of a different content group. For example, five content data belonging to the content groups "A" and "B" may be assigned to each of the five execution blocks. As a result, the combination of execution blocks becomes complicated, and the game quality is further improved.

各実行ブロックには、2以上のコンテンツデータが割当てられてもよい。例えば、同じ音楽のフレーズであるコンテンツデータであっても、各実行ブロックには、男声及び女声の2つのコンテンツデータが割り当てられてもよい。例えば、実行ブロックを設定ブロックを受け入れ可能に構成し、設定ブロックは、男声及び女声の一方又は両方が用いられるように切り替えるスイッチを備える。これにより、実行ブロックに割り当てられた男声及び女声の2つのコンテンツデータの切り替えが可能となり、男声及び女声の一方又は両方を用いて音楽が再生される。他の実施例において、各実行ブロックは、2以上のコンテンツデータのうちの一つを選択するための切り替え手段を有していてもよい。 Two or more content data may be assigned to each execution block. For example, even if the content data is the same musical phrase, two content data, a male voice and a female voice, may be assigned to each execution block. For example, the execution block is configured to accept the setting block, and the setting block includes a switch for switching between male and female voices or both. As a result, it is possible to switch between the two content data of the male voice and the female voice assigned to the execution block, and the music is played using one or both of the male voice and the female voice. In another embodiment, each execution block may have a switching means for selecting one of two or more content data.

上記の各実施例において、各ブロックの上位又は下位コネクタの数は、一又は二以上として説明したが、それぞれ、二又は三以上でもよい。 In each of the above embodiments, the number of upper or lower connectors of each block has been described as one or more, but may be two or three or more, respectively.

上記の各実施例において、各ブロックのコネクタは、所定の面において、短手方向の中心としたが、これは、例示であり、いずれかの方向によっていてもよい。 In each of the above embodiments, the connector of each block is centered in the lateral direction on a predetermined surface, but this is an example and may be in either direction.

上記の各実施例において、「動作なし」ブロックは、省略してもよい。 In each of the above embodiments, the "no action" block may be omitted.

他の実施例において、実施例3(ブロックにインデントを適用する例)などにおいて、「動作なし」ブロックは、インデントを戻す(インデントの解除)ために用いられてもよい。例えば、2以上のインデントが複数のブロックに付された場合、「動作なし」ブロック1つが、2以上のインデントを戻すように構成されていてもよい。本実施例において、「動作なし」ブロックの第1及び2の面における長手方向の長さは、2以上のインデントを戻すために十分な長さを有していてもよい。 In other embodiments, such as in Example 3 (an example of applying indentation to a block), the "no action" block may be used to unindent (unindent). For example, when two or more indents are attached to a plurality of blocks, one "no action" block may be configured to return two or more indents. In this embodiment, the longitudinal length of the "no motion" block on the first and second surfaces may be long enough to return two or more indents.

上記の実施例において、ハードウエアで実現するよう説明されたいくつかの要素の一部又は全ては、ソフトウエアで実現することができ、そして、ソフトウエアで実現するよう説明されたいくつかの要素の一部又は全ては、ハードウエアで実現することができることは理解されるであろう。 In the above embodiment, some or all of some of the elements described to be achieved in hardware can be implemented in software, and some elements described to be achieved in software. It will be understood that some or all of the above can be achieved in hardware.

以上に説明した玩具は、子供及び幼児用の玩具として説明したが、玩具は、10〜20歳代の学生用、大人用、老人用であってもよい。 The toys described above have been described as toys for children and toddlers, but the toys may be for students in their 10s to 20s, for adults, and for the elderly.

以上に説明した処理又は処理順序において、ある処理において、その処理ではまだ利用することができないはずのデータを利用しているなどの処理又は処理順序上の矛盾が生じない限りにおいて、処理又は処理順序を自由に変更することができる。 In the processing or processing order described above, as long as there is no contradiction in the processing or processing order such as using data that should not be available in the processing in a certain processing, the processing or processing order Can be changed freely.

以上に説明してきた各実施例に関し、各実施例の一部又は全部を組み合わせて一つの実施例として実現されてもよい。 With respect to each of the embodiments described above, a part or all of each embodiment may be combined and realized as one embodiment.

以上に説明してきた各実施例は、本発明を説明するための例示であり、本発明はこれらの実施例に限定されるものではない。本発明は、その要旨を逸脱しない限り、種々の形態で実施することができる。 Each of the examples described above is an example for explaining the present invention, and the present invention is not limited to these examples. The present invention can be carried out in various forms as long as it does not deviate from the gist thereof.

102 スタートブロック
105、110、115 実行ブロック
125 有線回線及び/又は無線回線
150 コンピュータ装置

スタートブロック
305 プロセッサ
310 ROM
315 RAM
320 コネクタ
1720 関数定義用コネクタ

スタートブロックが有するテーブル
410、610 コンテンツテーブル
420、710 識別子対応情報テーブル
430 ブロック接続情報テーブル

実行ブロック
510 上位コネクタ
515 プロセッサ
520 ROM
530 RAM
535 下位コネクタ
905 第1の上位コネクタ
910 第2の上位コネクタ

関数定義ブロック
510 上位コネクタ
515 プロセッサ
520 ROM
530 RAM
535 下位コネクタ
1730 第1の関数定義用コネクタ
1740 第2の関数定義用コネクタ

制御ブロック
1005 制御ブロック
1010 第1の上位コネクタ
1015 第2の上位コネクタ
1020 プロセッサ
1030 ROM
1040 RAM
1045 下位コネクタ

設定ブロック
1605 設定ブロック
1610 プロセッサ
1615 ROM
1620 RAM
1650 コネクタ
102 Start block 105, 110, 115 Execution block 125 Wired line and / or wireless line 150 Computer device

Start block 305 Processor 310 ROM
315 RAM
320 connector 1720 Function definition connector

Table 410, 610 content table 420, 710 identifier correspondence information table 430 block connection information table that the start block has

Execution block 510 Upper connector 515 Processor 520 ROM
530 RAM
535 Lower connector 905 First upper connector 910 Second upper connector

Function definition block 510 Upper connector 515 Processor 520 ROM
530 RAM
535 Lower connector 1730 First function definition connector 1740 Second function definition connector

Control block 1005 Control block 1010 First upper connector 1015 Second upper connector 1020 Processor 1030 ROM
1040 RAM
1045 lower connector

Setting block 1605 Setting block 1610 Processor 1615 ROM
1620 RAM
1650 connector

Claims (5)

ブロック玩具であって、
ブロック制御装置と、
前記ブロック制御装置に接続された、識別子を有する二以上の玩具用ブロックであって、互いが数珠繋ぎで接続され、ユーザによってそれぞれを区別するように認識される二以上の玩具用ブロックと、
を備え、
前記ブロック制御装置は、前記二以上の玩具用ブロックのそれぞれを二以上のコンテンツデータの一つと関連付けしたものである対応関係であって、前記二以上の玩具用ブロックと前記二以上のコンテンツデータとの対応関係を記憶し、さらに、前記関連付けを、前記二以上の玩具用ブロックの内の一つの玩具用ブロックと関連付けしたコンテンツデータを前記二以上の玩具用ブロックの内の他の玩具用ブロックの一つに関連付けして、変更することにより、前記対応関係の少なくとも一部を入れ替えるように構成され
前記ブロック制御装置は、さらに、前記二以上の玩具用ブロックの前記識別子に基づいて、前記二以上の玩具用ブロックの接続順序を判定し、前記接続順序と前記二以上の玩具用ブロックに関連付けされている前記二以上のコンテンツデータとを対応付けるように構成され、コンテンツは、前記二以上のコンテンツデータを前記接続順序で実行又は再生することにより形成される、ブロック玩具。
It ’s a block toy,
Block control device and
Two or more toy blocks having an identifier connected to the block control device, the two or more toy blocks connected to each other in a string and recognized to be distinguished by the user .
With
The block control device has a correspondence relationship in which each of the two or more toy blocks is associated with one of the two or more content data, and the two or more toy blocks and the two or more content data. And further, the content data in which the association is associated with one toy block in the two or more toy blocks is the content data of the other toy block in the two or more toy blocks. and associated with one, by changing, it is configured so that swapping at least a portion of the correspondence,
The block control device further determines the connection order of the two or more toy blocks based on the identifiers of the two or more toy blocks, and is associated with the connection order and the two or more toy blocks. it has the configured so that correspondence between two or more content data, the content is formed by performing or reproducing the two or more content data in the connection order, the block toy.
前記二以上の玩具用ブロックは、所定のコンテンツを分割したコンテンツデータそれぞれに関連付けされている、請求項1に記載のブロック玩具。 The block toy according to claim 1, wherein the two or more toy blocks are associated with each content data obtained by dividing a predetermined content. 前記ブロック制御装置は、前記識別子を前記二以上の玩具用ブロックから収集し、前記二以上の玩具用ブロックの前記接続順序を特定し、前記ブロック制御装置は、さらに、前記接続順序に応じて、前記ブロックに関連付けされたコンテンツデータの実行又は再生を制御する、請求項に記載のブロック玩具。 The block control device collects the identifiers from the two or more toy blocks, identifies the connection order of the two or more toy blocks, and the block control device further, according to the connection order, controlling the execution or playback of the associated content data to the block, the block toy according to claim 1. ブロック制御装置であって、
互いが数珠繋ぎで接続され、識別子を有する二以上の玩具用ブロックであって、ユーザによってそれぞれを区別するように認識される二以上の玩具用ブロックに接続され、
前記ブロック制御装置は、
前記二以上の玩具用ブロックのそれぞれを二以上のコンテンツデータの一つと関連付けしたものである対応関係であって、前記二以上の玩具用ブロックと前記二以上のコンテンツデータとの対応関係を記憶し、さらに、前記関連付けを、前記二以上の玩具用ブロックの内の一つの玩具用ブロックと関連付けしたコンテンツデータを前記二以上の玩具用ブロックの内の他の玩具用ブロックの一つに関連付けして、変更することにより、前記対応関係の少なくとも一部を入れ替えるように構成され、
さらに、前記二以上の玩具用ブロックの前記識別子に基づいて、前記二以上の玩具用ブロックの接続順序を判定し、前記接続順序と前記二以上の玩具用ブロックに関連付けされている前記二以上のコンテンツデータとを対応付けるように構成され、
コンテンツは、前記二以上のコンテンツデータを前記接続順序で実行又は再生することにより形成される、ブロック制御装置。
It is a block control device
Two or more toy blocks that are connected to each other in a string and have an identifier, and are connected to two or more toy blocks that are recognized by the user to distinguish each other .
The block control device is
It is a correspondence relationship in which each of the two or more toy blocks is associated with one of the two or more content data, and the correspondence relationship between the two or more toy blocks and the two or more content data is stored. Further, the content data in which the association is associated with one toy block in the two or more toy blocks is associated with one of the other toy blocks in the two or more toy blocks. by changing, it is configured so that swapping at least a portion of the correspondence,
Further, based on the identifier of the two or more toy blocks, the connection order of the two or more toy blocks is determined, and the connection order and the two or more toy blocks associated with the two or more toy blocks are determined. is configured so that associates the content data,
Content is a block control device formed by executing or reproducing the two or more content data in the connection order.
請求項に記載のブロック制御装置と通信する玩具用ブロック。 A toy block that communicates with the block control device according to claim 4 .
JP2018003635A 2018-01-12 2018-01-12 A device that associates content with blocks Active JP6793137B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018003635A JP6793137B2 (en) 2018-01-12 2018-01-12 A device that associates content with blocks
PCT/JP2018/048605 WO2019138951A1 (en) 2018-01-12 2018-12-28 Toy

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018003635A JP6793137B2 (en) 2018-01-12 2018-01-12 A device that associates content with blocks

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2019147483A Division JP7202006B2 (en) 2019-08-09 2019-08-09 A device that associates content with blocks

Publications (2)

Publication Number Publication Date
JP2019122484A JP2019122484A (en) 2019-07-25
JP6793137B2 true JP6793137B2 (en) 2020-12-02

Family

ID=67398218

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018003635A Active JP6793137B2 (en) 2018-01-12 2018-01-12 A device that associates content with blocks

Country Status (1)

Country Link
JP (1) JP6793137B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7493792B2 (en) 2020-12-08 2024-06-03 国立大学法人 筑波大学 Identification System

Family Cites Families (8)

* 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
JP3765755B2 (en) * 2001-12-28 2006-04-12 株式会社トミー Block toys
US7316567B2 (en) * 2003-08-01 2008-01-08 Jennifer Chia-Jen Hsieh Physical programming toy
JP6324716B2 (en) * 2013-12-26 2018-05-16 株式会社ソニー・インタラクティブエンタテインメント Block, block system, display method, and information processing method
JP6176870B2 (en) * 2016-01-05 2017-08-09 株式会社セガ トイズ Coding toy, block, stage, figurine toy and coding method
JP6321066B2 (en) * 2016-03-10 2018-05-09 株式会社デザイニウム Apparatus, method and program for programming learning
JP2017225518A (en) * 2016-06-21 2017-12-28 株式会社エフティエルインターナショナル Block and block control system
JP6253170B1 (en) * 2017-02-22 2017-12-27 合同会社オフィス・ゼロ Program creation support system and method

Also Published As

Publication number Publication date
JP2019122484A (en) 2019-07-25

Similar Documents

Publication Publication Date Title
Frei et al. Curlybot: designing a new class of computational toys
Barnes et al. Child-robot theater: Engaging elementary students in informal STEAM education using robots
CN101411948A (en) Electronic toys
Vaucelle et al. Picture this! Film assembly using toy gestures
Barbareschi et al. TIP-Toy: a tactile, open-source computational toolkit to support learning across visual abilities
JP6793137B2 (en) A device that associates content with blocks
Ihamäki et al. The internet of toys, connectedness and character-based play in early education
WO2019138951A1 (en) Toy
JP7202006B2 (en) A device that associates content with blocks
KR101511313B1 (en) Method for controlling puzzle toy
KR101535457B1 (en) Multi-function toy for studying and playing
Marsh et al. The online and offline digital literacy practices of young children
Millner Computer as chalk: cultivating and sustaining communities of youth as designers of tangible user interfaces
Al-Khalifa et al. Basma: An interactive IoT-based plush toy for Arabic-speaking children
Miller-Klugman et al. Low-Cost Open-Source Robotics for Education
JP2004532682A (en) Interactive content display system
JP2004533171A (en) Devices that interact with real-time stream content
US20200368630A1 (en) Apparatus and System for Providing Content to Paired Objects
CN110047341A (en) Contextual language learning apparatus, system and method
KR102450665B1 (en) A system for providing quest solving e-book services using play module
Vaucelle et al. Play-it-by-eye! Collect movies and improvise perspectives with tangible video objects
Vaucelle Play it by eye, frame it by hand
Stephen Playing and learning with technologies
Trujano Creating Novel Mixed Reality Experiences using existing sensors and peripherals
St. Clair et al. " Between the Lions" as a Classroom Tool

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181003

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20181003

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20181012

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190415

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190513

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190809

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20190809

C11 Written invitation by the commissioner to file amendments

Free format text: JAPANESE INTERMEDIATE CODE: C11

Effective date: 20190830

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20191007

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20191021

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20191206

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20191216

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20200210

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20200413

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20200706

C302 Record of communication

Free format text: JAPANESE INTERMEDIATE CODE: C302

Effective date: 20200901

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200903

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20201001

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20201029

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20201029

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201109

R150 Certificate of patent or registration of utility model

Ref document number: 6793137

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250