CN110637336A - 编程装置及记录介质、编程方法 - Google Patents

编程装置及记录介质、编程方法 Download PDF

Info

Publication number
CN110637336A
CN110637336A CN201880031650.9A CN201880031650A CN110637336A CN 110637336 A CN110637336 A CN 110637336A CN 201880031650 A CN201880031650 A CN 201880031650A CN 110637336 A CN110637336 A CN 110637336A
Authority
CN
China
Prior art keywords
programming
unit
height
program
region
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.)
Granted
Application number
CN201880031650.9A
Other languages
English (en)
Other versions
CN110637336B (zh
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Publication of CN110637336A publication Critical patent/CN110637336A/zh
Application granted granted Critical
Publication of CN110637336B publication Critical patent/CN110637336B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H17/00Toy vehicles, e.g. with self-drive; ; Cranes, winches or the like; Accessories therefor
    • A63H17/26Details; Accessories
    • A63H17/36Steering-mechanisms for toy vehicles
    • A63H17/395Steering-mechanisms for toy vehicles steered by program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/75Structural analysis for program understanding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B19/00Teaching not covered by other main groups of this subclass
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B1/00Manually or mechanically operated educational appliances using elements forming, or bearing, symbols, signs, pictures, or the like which are arranged or adapted to be arranged in one or more particular ways
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B1/00Manually or mechanically operated educational appliances using elements forming, or bearing, symbols, signs, pictures, or the like which are arranged or adapted to be arranged in one or more particular ways
    • G09B1/32Manually or mechanically operated educational appliances using elements forming, or bearing, symbols, signs, pictures, or the like which are arranged or adapted to be arranged in one or more particular ways comprising elements to be used without a special support
    • G09B1/325Manually or mechanically operated educational appliances using elements forming, or bearing, symbols, signs, pictures, or the like which are arranged or adapted to be arranged in one or more particular ways comprising elements to be used without a special support the elements comprising interacting electronic components
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B19/00Teaching not covered by other main groups of this subclass
    • G09B19/0053Computers, e.g. programming

Abstract

本发明提供一种编程装置及记录介质、编程方法,使对于用户而言能够容易理解编程操作、和与通过该操作而生成的程序对应的被控制部的三维物体移动的关联性。编程装置具有:编程板(120),受理至少一个的第一用户操作,用于通过确定被配置在平面方向上相互不同的位置的多个部分中两个以上的部分来指示平面形状;高度受理部,受理至少一个的第二用户操作,用于与所述两个以上的部分中任意一个的部分建立对应地指示针对所述平面的相交方向的位置即高度或者该高度的移位量;以及控制部,生成使目标设备(200)对应通过编程板(120)及所述高度受理部所指示的立体形状而移动的命令列表。

Description

编程装置及记录介质、编程方法
技术领域
本发明涉及编程装置及记录介质、编程方法。
背景技术
以往,伴随着计算机和移动终端等信息通信设备的普及、和包括这些信息通信设备的各种各样设备的控制技术的发展,程序的研发技术的重要性被提出。近年来,自幼儿期的编程教育的重要性被得到世界性的认知,自义务教育阶段就被采用作为必修科目的国家增加。在我们国家(日本)编程教育也被纳入政策中,可以预测未来对编程教育的关注将扩展到更低年龄层。
以这种对编程教育的关注的提高为背景,已研发出各种各样的编程教育工具。例如,在专利文献1中记载了这样的技术,用户直接手拿着物理的块体(物体)进行实际移动,通过进行一维或者二维的连接来生成程序,根据该程序控制执行装置的动作。另外,在非专利文献1中记载了这样的技术,用户直接手拿着物理的块体(物体)在规定的板上进行实际移动,通过顺序地进行组装来生成程序,控制行走机器人的动作。
根据这些文献所记载的技术,通过由行走机器人或角色顺序地执行对被连接或者组装而成的各块体设定的功能,能够直观地学习程序的结构和执行状况。在本说明书中,将如专利文献1或非专利文献1那样通过直接移动物体进行编程称作有形编程。另一方面,将如非专利文献2那样通过触摸移动在液晶显示装置等电子显示器的画面上显示的假想块体即假想图标进行编程称作视觉编程。另外,在本说明书中,所谓有形是指具有实体,在现实空间中能够用手摸到并实际感觉到的状态。此外,液晶显示装置等电子显示器自身虽然是有形的,但是通过触摸其显示器画面来操作在那样的显示器上被电子地显示出的图标等,不是有形的操作。
现有技术文献
专利文献
专利文献1:日本特开平5-204620号公报
非专利文献
非专利文献1:“Cubetto:コーデイングとプログラミングを教えてくれる子ども向けロボット”、[online]、2016、Primo Toys、[2016年11月22日検索]、インターネット<URL:https://www.primotoys.com/ja/>
发明内容
发明要解决的课题
通常,在针对幼儿等低龄者的编程教育中,从智力的发展的角度讲,使进行有形编程即在现实空间内实际触摸物体进行移动、变形等操作来进行编程,被认为学习效果比较高。
但是,上述的专利文献1和非专利文献1所记载的技术属于虽然是有形编程,但却是在规定的接合部连接被设定了功能的块体并在规定的板上顺序地组装来进行编程的方法,因而连接或者组装的块体整体的形状和配置、与实际进行动作的执行装置和行走机器人的行进方向没有关系。因此,低龄者不易直观地掌握、理解编程时的操作内容和执行装置的移动的关系,存在不能充分得到编程的学习效果的情况。
另外,近年来如无人机那样的飞行体的普及、智能电话等移动终端和游戏机的应用软件的假想空间内的对象(角色等)的移动等、与三维空间中的物体的移动相关的控制技术的进步显著。因此,在三维空间中的物体的移动自然在内,掌握理解在二维空间的移动基础上将其它次元的参数的变化作为第三维的虚拟三维中的物体移动(下面,为了方便,将这些移动统称为“三维物体移动”)的能力的重要性也被提出。
这样,以往作为面向低龄者的编程教育工具,已知有进行有形编程的工具,但是都不能说是对于幼儿而言可以充分得到编程的学习效果的工具。即,尚未得知诸如对于用户而言容易理解基于有形编程的编程操作、和与通过该操作而生成的程序对应的被控制部的三维物体移动的关联性的编程教育工具。
所以,本发明的目的在于,鉴于上述的课题,提供一种编程装置及记录介质、编程方法,使对于用户而言能够容易理解编程操作、和与通过该操作而生成的程序对应的被控制部的三维物体移动的关联性。
用于解决课题的手段
有关本发明的编程装置具有:
平面形状指示部,受理至少一个的第一用户操作,该至少一个的第一用户操作是通过确定被配置在平面方向上相互不同的位置的多个部分中两个以上的部分来指示平面形状的操作;
高度受理部,受理至少一个的第二用户操作,该至少一个的第二用户操作是与所述两个以上的部分中任意一个的部分建立对应地指示针对所述平面的相交方向的位置即高度或者该高度的移位量的操作;以及
控制部,生成使被控制部对应通过所述平面形状指示部及所述高度受理部所指示的立体形状而移动的命令列表。
有关本发明的编程方法是由具有平面形状指示部、高度受理部及控制部的编程装置执行的,所述编程方法包括:
通过所述编程装置的所述平面形状指示部受理至少一个的第一用户操作,该至少一个的第一用户操作是通过确定被配置在平面方向上相互不同的位置的多个部分中两个以上的部分来指示平面形状的操作;
通过所述编程装置的所述高度受理部受理至少一个的第二用户操作,该至少一个的第二用户操作是与所述两个以上的部分中任意一个的部分建立对应地指示针对所述平面的相交方向的位置即高度或者该高度的移位量的操作;以及
通过所述编程装置的所述控制部生成命令列表,用于使被控制部对应通过所述平面形状指示部及所述高度受理部指示的立体形状而移动。
有关本发明的记录介质存储有程序,所述程序使具有平面形状指示部、高度受理部及控制部的编程装置的计算机执行以下处理:
通过所述编程装置的所述平面形状指示部受理至少一个的第一用户操作,该至少一个的第一用户操作是通过确定被配置在平面方向上相互不同的位置的多个部分中两个以上的部分来指示平面形状的操作;
通过所述编程装置的所述高度受理部受理至少一个的第二用户操作,该至少一个的第二用户操作是与所述两个以上的部分中任意一个的部分建立对应地指示针对所述平面的相交方向的位置即高度或者该高度的移位量的操作;以及
通过所述编程装置的所述控制部生成命令列表,用于使被控制部对应通过所述平面形状指示部及所述高度受理部指示的立体形状而移动。
发明效果
根据本发明,使对于用户而言能够容易理解编程操作、和与通过该操作而生成的程序对应的被控制部的三维物体移动的关联性。
附图说明
图1是表示适用了有关本发明的编程装置的编程教育装置的一实施方式的概略图。
图2是表示有关本实施方式的编程教育装置所适用的结构例的功能框图。
图3是表示有关本实施方式的编程教育装置所适用的另一结构例的功能框图。
图4是表示有关本实施方式的编程教育装置的编程操作及程序生成、执行方法的一例(一般模式)的流程图。
图5是用于说明本实施方式所适用的编程操作处理的概略图(其一)。
图6是用于说明本实施方式所适用的编程操作处理的概略图(其二)。
图7是用于说明本实施方式所适用的程序生成、执行处理(总括处理)的概略图(其一)。
图8是用于说明本实施方式所适用的程序生成、执行处理(总括处理)的概略图(其二)。
图9是用于说明本实施方式所适用的程序生成、执行处理(步骤处理)的概略图(其一)。
图10是用于说明本实施方式所适用的程序生成、执行处理(步骤处理)的概略图(其二)。
图11是表示在有关本实施方式的编程教育装置(编程装置)中不具有引导片的结构例的概略图(其一)。
图12是表示在有关本实施方式的编程教育装置(编程装置)中不具有引导片的结构例的概略图(其二)。
图13是表示在有关本实施方式的编程教育装置(编程装置)中,将编程板和核心单元设为一体的结构例的概略图。
图14是表示有关本实施方式的编程教育装置的编程操作及程序生成、执行方法的变形例(实时模式)的流程图。
图15是用于说明本变形例所适用的编程操作处理及程序生成、执行处理的概略图(其一)。
图16是用于说明本变形例所适用的编程操作处理及程序生成、执行处理的概略图(其二)。
图17是表示适用了有关本发明的程序控制装置的编程教育装置的第二实施方式的概略图。
图18是表示适用了有关本发明的程序控制装置的编程教育装置的第三实施方式的概略图。
具体实施方式
下面,关于有关本发明的编程装置及其控制程序、编程方法,示出实施方式进行详细说明。在此,为了简化说明,对如下情况进行说明,即,使用适用了有关本发明的编程装置的编程教育装置,生成用于控制可以三维移动的目标设备的动作状态的程序。
<一实施方式>
(编程教育装置)
图1是表示适用了有关本发明的编程装置的编程教育装置的一实施方式的概略图。另外,图2是表示有关本实施方式的编程教育装置所适用的结构例的功能框图,图3是表示有关本实施方式的编程教育装置所适用的另一结构例的功能框图。
有关本实施方式的编程教育装置例如按照图1所示大致划分时具有程序控制装置100和目标设备200。程序控制装置100受理作为编程教育的对象的用户的输入操作,取得与所受理的输入操作对应的信息,生成用于控制目标设备200的动作状态的程序。另外,目标设备200是有形的或者无形的移动体,通过执行由程序控制装置100被转发的程序,被控制动作状态。下面,对程序控制装置100及目标设备(被控制部)200进行详细说明。
(程序控制装置)
程序控制装置100例如按照图1所示具有都是有形的编程板(平面形状指示部)120、编程块体(高度指示部、功能设定部、参数值指示部)140、核心单元(命令生成部)160、编程用引导片(下面简称为“引导片”)180。
(编程板120)
编程板120是能够在现实空间中物理地直接接触的有形物体,例如按照图1所示具有将编程区104设于一面侧(附图中指上表面)得到的大致平板状的形状,编程区104是将具有同一平面形状的多个有形的区域102相互相邻地沿行列方向进行二维配置得到的。该编程区104作为输入装置发挥作用,取得用户通过如后面所述的有形的输入操作而指示的信息,编程区104的各区域102与使后述的目标设备200进行动作时的绝对坐标系的二维平面(在本实施方式中指水平面)内的位置对应。在此,各区域102例如按照图1所示具有正方形或长方形等矩形的平面形状,被排列成网格状。另外,各区域102的平面形状还可以是除矩形以外的八边形等多边形或圆形的形状。
编程板120具体地例如按照图2所示具有指示检测部(高度受理部、功能受理部、参数值受理部)122、识别移位部124、块体接口部(以下简称为“块体I/F部”。高度受理部、功能受理部、参数值受理部)126、存储部128、外部接口部(以下简称为“外部I/F部”)130、和控制部132。
指示检测部122检测用户对编程区104的各区域102有无指示。具体地,指示检测部122例如按照图2所示具有与编程区104的各区域102对应地单独设置的触摸传感器、或者按动开关等机械开关。并且,指示检测部122在通过该触摸传感器检测出用户的手指等接触各区域102的状态、或者通过按动开关按下各区域102的状态时,确定编程区104上的该区域(指示区域102)的位置。通过指示检测部122所取得的与指示区域102的位置相关的信息(下面记述为“指示位置信息”),被顺序地存储在后述的存储部128的存储区域中。在此,指示检测部122所适用的触摸传感器既可以是静电电容方式,也可以是感压方式。并且,指示检测部122所适用的按动开关优选具有这样的机构:在每当用户的按下操作时切换接通状态和断开状态,并且在按下操作后各按动开关的上表面的高度恢复到编程区104的上表面高度(为了方便,记述为“基准高度”)(即,按动开关的上表面的高度始终返回到基准高度)。
另外,在图2中,作为指示检测部122,示出了与编程区104的各区域102对应地单独设置触摸传感器或者按动开关的方式,但本发明不限于该方式。例如,按照图3所示,作为指示检测部122,也可以是具有在编程区104的整体区域中共同设置的触摸面板的方式。在这种情况下,指示检测部122通过检测用户的手指等接触与触摸面板的各区域102对应的位置的状态,确定编程区104上的该指示区域102的位置。在这种情况下,触摸面板既可以是静电电容方式,也可以是感压方式。根据这样的方式,能够提高指示检测部122的触摸面板的分辨率,高精细地检测指示区域102,因而目标设备200的移动路径不仅能够设定为直线状(或者正交方向)的路径,而且还能够设定为包含平滑的曲线的路径。另外,在图3中如后面所述,作为识别移位部124示出了在编程区104的整体区域中设置共同的发光面板或显示面板的方式,但作为指示检测部122如果是设置上述的触摸面板的方式,则也可以是识别移位部124对应各区域102被单独设置的方式。
识别移位部124使用户所指示的区域(指示区域)移位成相对于未被指示的其它区域可以视觉地识别的状态。具体地,识别移位部124例如按照图2所示具有与编程区104的各区域102对应地单独设置的发光部或者显示部。在此,识别移位部124所适用的发光部例如能够适用发光二极管(LED),显示部例如能够适用基于液晶或有机EL元件的显示方式。并且,识别移位部124在使用了编程板120的编程操作时,使通过指示检测部122被检测出用户的指示的区域102的发光部以规定的发光颜色和发光强度、发光模式进行分光,或者使在显示部显示的图像变化,由此能够视觉地进行与其它区域102的识别。
另外,识别移位部124在执行根据编程操作所生成的程序使目标设备200进行动作时,使与该目标设备200的移动位置对应的区域102的发光部以规定的发光颜色和发光强度、发光模式进行分光,或者使在显示部显示的图像变化,由此能够视觉地进行与其它区域102的识别。另外,关于编程操作时及程序执行时的识别移位部124的移位状态的例子(发光部的发光状态),在后述的编程方法中进行详细说明。
另外,在图2中,作为识别移位部124示出了与编程区104的各区域102对应地单独设置发光部或者显示部的方式,但本发明不限于该方式。例如,按照图3所示,作为识别移位部124,也可以是具有在编程区104的整体区域中共同设置的发光面板和显示面板的方式。在这种情况下,识别移位部124在编程操作时使与用户指示的区域102对应的发光面板的区域以规定的发光颜色和发光强度、发光模式进行发光,并使在显示面板的该区域显示的图像变化,由此能够视觉地进行与其它区域102的识别。并且,识别移位部124在执行根据编程操作所生成的程序时,使与目标设备200的移动位置对应的发光面板的区域以规定的发光颜色和发光强度、发光模式进行发光,并使在显示面板显示的图像变化,由此能够视觉地进行与其它区域的识别。另外,识别移位部124所适用的发光面板和显示面板,能够适用例如将LED进行二维排列形成的面板、或液晶显示面板、有机EL显示面板。根据这样的方式,能够提高识别移位部124的发光面板和显示面板的分辨率,更高精细地进行多彩的发光动作和显示动作,因而在编程操作时和程序执行时能够清晰且明确地识别目标设备200的移动路径和对应的区域。另外,在图3中,如上所述,作为指示检测部122示出了在编程区104的整体区域中设置共同的触摸面板的方式,但作为识别移位部124如果是设置上述的发光面板和显示面板的方式,则指示检测部122也可以是对应各区域102而被单独设置的方式。并且,识别移位部124还可以是这样的方式,除上述的发光部或者显示部以外,还具有音响部和振动部,并具有使发音和振动的振幅和频率、模式变化的形态。由此,能够在用户的视觉基础上再通过听觉和触觉,更可靠地进行指示区域102的识别。
块体I/F部126检测有无被放置在编程区104的各区域102的编程块体140、以及与包括被堆放于该区域102的编程块体140的个数的堆放状态相关的信息(下面,记述为“堆放确定信息”),并且接收对该编程块体140预先设定的、具有用于设定目标设备200的绝对坐标系的高度方向(相对于水平面的垂直方向)的位置的单位变化量的信息(下面记述为“高度设定信息”)。具体地,块体I/F部126具有对应编程区104的各区域102被单独地设置的非接触型或者接触型的接口。并且,块体I/F部126在通过该非接触型或者接触型的接口检测出编程块体140被放置在编程区104的指示区域102的状态时,确定编程区104上的该编程块体140的位置以及堆放的状态,并且接收该编程块体140的高度设定信息。通过块体I/F部126所取得的与编程块体140的位置相关的信息(下面记述为“块体位置信息”)、以及上述的堆放确定信息、高度设定信息,被相互关联地顺序地存储在后述的存储部128的存储区域中。在此,作为块体I/F部126,在适用非接触型的接口的情况下,能够适用例如电子钱币卡等所使用的基于NFC(Near Field Communication)等近距离无线通信技术的方式、使用了红外线等的光通信方式,在适用接触型的接口的情况下,能够适用将端子电极相互直接连接的方式。
另外,还可以是,在作为指示检测部122具有静电电容方式的触摸传感器或触摸面板的情况下,通过对编程块体140的一部分或者全部使用与人体相同程度的电介质,通过指示检测部122检测在编程区104上是否被放置(接触)有编程块体140(编程块体140的有无)。另外,还可以是,在作为指示检测部122具有感压方式的触摸传感器或触摸面板、或者按动开关的情况下,通过用编程块体140轻轻地按压编程区104,通过指示检测部122检测在编程区104上是否被放置(接触)有编程块体140(编程块体140的有无)。
存储部128将通过指示检测部122所取得的与指示区域102的位置相关的指示位置信息顺序地存储在存储区域中。在此,通过将在存储部128的存储区域中存储的各指示位置信息按照时间序列进行排列,能够得到与用户的指示顺序相关的信息(下面记述为“顺序信息”)。由该指示位置信息及顺序信息规定将按照用户的编程操作被控制动作状态的目标设备200的移动路径投影在水平面上得到的水平方向的移动成分。即,用户通过指示编程区104的两个以上连续的区域102,决定用于规定目标设备200的移动路径中在水平面内的动作状态。换言之,在编程区104中,在把通过用户指示两个以上连续的区域102而决定的假想路径内相互相邻的两个区域102彼此相连形成的线段的集合设为第一形状时,成为该第一形状的相似形状的路径被规定作为目标设备200的实际的移动路径中的水平方向的移动成分。
并且,存储部128将通过块体I/F部126所取得的与编程块体140的位置相关的块体位置信息、设定目标设备200的高度方向的位置用的高度设定信息、以及与包括编程块体140的堆放个数的堆放状态相关的堆放确定信息相互建立关联进行存储。在此,在后述的核心单元160中,通过将与各块体位置信息相关的高度设定信息的单位变化量、和堆放确定信息的编程块体140的堆放个数相乘,设定用于决定上述的假想路径的各指示区域102的目标设备200的高度方向的位置。并且,对与上述的假想路径的各指示区域102对应的位置附加了所设定高度方向的位置的路径,被规定作为目标设备200在实际的三维空间中的移动路径。换言之,在把通过对规定上述的假想路径的第一形状、附加对上述的各指示区域102所设定的高度方向的位置(垂直方向的高度成分)得到的三维的立体形状作为第二形状时,具有成为该第二形状的相似形状的三维的立体的第三形状的路径,被规定作为目标设备200的实际的移动路径。
另外,还可以是,存储部128存储用于在后述的控制部132中控制编程板120的各部分的动作的程序和各种信息。即,存储部128具有RAM(随机存取存储器)及ROM(只读存储器)。
外部I/F部130用于在编程板120和后述的核心单元160之间进行通信,将在存储部128的存储区域存储的指示位置信息、顺序信息、块体位置信息、堆放确定信息、高度设定信息(下面,将这些信息统称为“输入操作信息”)发送给核心单元160。具体地,外部I/F部130具有非接触型或者接触型的接口。在此,作为外部I/F部130,在适用非接触型的接口的情况下,能够适用例如NFC或Bluetooth(注册商标)、Wi-Fi(Wireless Fidelity,注册商标)等无线通信方式、使用了红外线等的光通信方式,在适用接触型的接口的情况下,能够适用使用了各种通信线缆的有线通信方式、将端子电极相互直接连接的方式。
控制部132是控制编程板120的各部分的动作的计算机的处理器,编程板120具有上述的指示检测部122、识别移位部124、块体I/F部126、存储部128、外部I/F部130。特别是,在通过指示检测部122检测出用户对编程区104的各区域102的指示的情况下,控制部132使在存储部128的存储区域顺序地存储该区域102的指示位置信息,并且通过识别移位部124使该区域102以规定的发光状态进行发光,或者使显示图像变化,使移位成可以视觉识别的状态。并且,在通过块体I/F部126检测出编程块体140被放置在指示区域102上的状态的情况下,控制部132经由块体I/F部126取得对该编程块体140设定的高度设定信息、以及与编程块体140的堆放状态相关的堆放确定信息,并使其与该编程块体140的块体位置信息相关联地存储在存储部128的存储区域中。另外,控制部132将通过编程操作被存储在存储部128的存储区域中的各种信息,经由外部I/F部130向核心单元160发送。
(编程块体140)
编程块体140例如按照图1所示是能够在现实空间内物理地直接接触的有形的物体,具有大致立方体(或者大致长方体)形状,由用户放置在编程板120的编程区104上的任意的指示区域102中。该编程块体140作为输入装置发挥作用,用于在使目标设备200进行动作时,设定编程区104的各指示区域102的目标设备200的高度方向的位置。在此,编程块体140按照对目标设备200设定的高度方向的位置,在编程区104上被堆放放置一段或者多段而配置。并且,编程块体140的立体形状不限于立方体和长方体,只要是能够稳定地放置在编程区104上、而且编程块体140能够相互稳定地堆放的形状,则可以是具有任意的多面体形状的形状,不限于该例,还可以是表面的一部分是曲面的形状,如大致圆柱形状或大致圆锥形状、大致截头圆锥形状、大致球形状、大致半球形状等。另外,为了在编程区104上稳定地放置编程块体140、或者将编程块体140彼此稳定地放置、而且向编程板120可靠地发送上述的高度设定信息、以及与编程块体140的堆放状态相关的堆放确定信息,优选所放置的编程块体140的下表面、和被放置的编程板120的上表面或者其它编程块体140的上表面适当地紧密贴合。为此,例如可以是成为接触面的两个面具有相互卡合的凹凸形状的方式,还可以是被形成为两个面通过磁力等进行吸附的方式。
编程块体140具体地例如按照图2所示具有下面侧(在图1中指立方体形状的下面侧)的块体I/F部141、上面侧(在图1中指立方体形状的上面侧)的块体I/F部142、识别移位部144、存储部146和控制部148。
下面侧的块体I/F部141用于和编程板120或者被堆放于下段的其它编程块体140之间进行通信,上面侧的块体I/F部142用于和被堆放于上段的其它编程块体140之间进行通信。由此,将在后述的存储部146的存储区域存储的高度设定信息、以及与编程块体140的堆放状态相关的堆放确定信息,直接或者经由下段的编程块体140间接地被发送给编程板120。
具体地,块体I/F部141、142具有非接触型或者接触型的接口,该接口被单独设置在例如编程块体140的立方体形状中对置的两个面侧(在图1中指立方体形状的下面侧和上面侧)。并且,块体I/F部141、142在通过该非接触型或者接触型的接口检测出编程块体140被放置在编程区104的指示区域的状态、以及在编程块体140上被堆放有其它编程块体140的状态时,将对编程块体140设定的高度设定信息以及与编程块体140的堆放状态相关的堆放确定信息发送给编程板120。在此,在使编程块体140的上下反转、将块体I/F部142配置在立方体形状的下面侧、将块体I/F部141配置在编程块体140的立方体形状的上面侧的情况下,块体I/F部141、142也能够与上述情况一样地与编程板120或被堆放的其它编程块体140之间进行通信。即,下面侧的块体I/F部141和上面侧的块体I/F部142具有相同的功能,被适用与上述的编程板120的块体I/F部126所示出的各种方式相同的方式。
另外,在本实施方式中示出了这样的方式,在具有立方体形状的编程块体140的对置的两个面侧(上面侧和下面侧)设置具有相同功能的单独的块体I/F部141、142,但本发明不限于该方式。例如,也可以是,通过对编程块体设置的一个块体I/F部,与下面侧的编程板、以及被堆放于上面侧或者下面侧的其它编程块体之间进行通信。
另外,作为其它的方式,例如无论立方体的哪个面成为放置于编程板120时的接触面的情况下、并且无论在哪个面被堆放有其它编程块体140的情况下,都在六个面上全部单独地或者共同地设有块体I/F部142,使得能够与编程板120或其它编程块体140之间进行通信。
识别移位部144与上述的编程板120的识别移位部124一样地具有发光部或者显示部,在使用了编程板120的编程操作时,在通过块体I/F部142检测出编程块体140被放置在编程区104的各区域102的状态时,使发光部以规定的发光状态进行发光,并使在显示部显示的图像变化,由此能够视觉地进行与其它编程块体140的识别。
另外,该识别移位部144所适用的显示部也可以是不用电力,就使所显示的图像变化的方式。例如,在编程板120的内部中与编程区104的各区域102对应的部分被设置有永磁铁,在编程块体140的内部也被设置有永磁铁的方式。另外,还可以是利用磁力的方式,随着将编程块体140向区域102放置,借助在编程板120内的永磁铁和编程块体140内的永磁铁之间产生的吸引力或者排斥力,显示部进行旋转,由此使图像变化。此外,也可以是,在编程块体140中至少被放置于编程板120的一侧设置凸部,通过被放置于编程板120,该凸部朝向内部被按压并移位。另外,还可以是具有机械机构的方式,随着将编程块体140向区域102放置,编程块体140的凸部被向内侧按压并移位,与该移位联动地,显示部进行旋转,由此使图像变化。
另外,识别移位部144在执行根据编程操作而生成的程序,并使目标设备200进行在三维空间的动作时,使规定该目标设备200的高度方向的位置的各编程块体140的发光部以规定的发光状态进行发光,或者使在显示部显示的图像变化,由此能够视觉地进行与其它编程块体140的识别。
另外,也可以是,识别移位部144与上述的编程板120的识别移位部124一样地,除上述的发光部或者显示部以外,还具有音响部和振动部,并具有使发音和振动的振幅和频率、模式变化的形态。由此,能够在用户的视觉基础上再通过听觉和触觉,更可靠地进行规定高度方向的位置的编程块体140的识别。
存储部146存储高度设定信息,在使目标设备200在三维空间中进行动作时,该高度设定信息具有设定目标设备200的高度方向的位置用的单位变化量。在此,作为设定目标设备200的高度方向的位置用的高度设定信息,具有表示与被放置有编程块体140的区域102对应的位置的高度方向的相对变化量的数值(例如,相对于在紧前面的区域的高度上升10cm)。另外,本发明不限于该方式,作为高度设定信息,还可以是具有表示目标设备200的高度方向的绝对位置的数值(例如,自地面的高度位置是10cm)。
另外,存储部146将从被堆放在该编程块体140上的其它编程块体140发送的高度设定信息及堆放确定信息临时存储在存储区域中。此外,存储部146还可以存储用于在后述的控制部148中控制编程块体140的各部分的动作的程序和各种信息。即,存储部146具有RAM及ROM。
另外,在上述的实施方式中示出了这样的方式,对于各编程块体140预先在存储部146的存储区域中固定地存储具有一个单位变化量的高度设定信息,但本发明不限于该方式。例如,也可以是,对于一个编程块体140预先在存储部146的存储区域中存储具有多个单位变化量的高度设定信息,通过基于软件的设定变更和切换开关的操作、基于重力传感器和加速度传感器的编程块体140的倾斜和冲击的检测等,从多个单位变化量中选择设定任意的单位变化量。
另外,作为其它的方式,也可以是,在具有例如立方体形状的编程块体140中,在立方体的六个面全部具有块体I/F部142,并且使六个面分别对应不同的单位变化量,将具有各单位变化量的高度设定信息存储在存储部146的存储区域中。并且,检测通过各个面的块体I/F部142与编程板120直接或者间接地接触的面,从存储部146的存储区域读出与该接触面对应的高度设定信息,并发送给编程板120。由此,根据与接触编程板120的编程块体140的面对应的多种单位变化量,设定目标设备200的高度方向的位置。另外,在使编程块体140的一个面以上的各个面对应不同的单位变化量的情况下,例如也可以在与接触编程板120的面(立方体的下表面)对置的面(立方体的上表面)上,表述表示与该接触面对应的单位变化的文字或记号、插图、图像等,使可以通过视觉直观地识别设定目标设备200的高度方向的位置用的单位变化的内容。
控制部148是控制编程块体140的各部分的动作的计算机的处理器,编程块体140具有上述的块体I/F部141、142、识别移位部144、存储部146。特别是,在通过块体I/F/141(或者142)检测出编程块体140被放置在指示区域102上的状态的情况下,控制部148将对该编程块体140设定的高度设定信息、以及与编程块体140的堆放状态相关的堆放确定信息,经由块体I/F部141发送给编程板120,并且通过识别移位部144使该编程块体140以规定的发光状态进行发光,或者使显示图像变化,使移位成可以视觉识别的状态。
(核心单元160)
核心单元160例如按照图1所示具有在一面侧(在附图中指上表面)配置有操作开关的长方体形状或平板形状。该核心单元160作为控制装置发挥作用,根据通过使用了编程板120的编程操作而取得的信息,生成用于使目标设备200进行动作的程序,并且执行该程序使控制目标设备200的动作状态。
核心单元160具体地例如按照图2所示具有操作部162、外部I/F部164、存储部166、通信接口部(下面简称为通信I/F部)168、控制部170、和电源部172。
操作部162通过由用户进行操作,根据通过使用了上述的编程板120的编程操作而取得的信息生成程序,并指示该程序的执行状态。具体地,操作部162具有用于选择所生成的程序的执行状态的多个按动开关和触摸传感器、或者触摸面板。在此,在操作部162例如按照图1所示配置有如下的按动开关等:总括执行开关112,使总括地执行通过后述的控制部170所生成的程序整体;步骤执行开关114,使一个步骤一个步骤地执行该程序的命令;执行停止开关116,使所执行的程序停止;复位开关118,使目标设备200返回到初始位置(起始地点)。并且,操作部162在检测出用户按下任一个开关的状态或者与开关接触的状态时,向后述的控制部170输出根据该开关操作指示程序的生成及执行状态的控制信号。
外部I/F部164用于在核心单元160和编程板120之间进行通信,接收从编程板120发送的输入操作信息,并存储在后述的存储部166的存储区域中。存储部166将从编程板120经由外部I/F部164接收到的输入操作信息存储在规定的存储区域中,并且根据这些信息将通过后述的控制部170所生成的程序存储在其它存储区域中。并且,存储部166还可以是存储在控制部170中根据所接收到的输入操作信息生成控制目标设备200的动作状态的程序用的程序、和控制核心单元160的各部分的动作用的程序、以及其它各种信息。即,存储部166具有RAM及ROM。
通信I/F部168用于在核心单元160和目标设备200之间进行通信,将在存储部166的存储区域中存储的程序发送给目标设备200。具体地,通信I/F部168具有非接触型或者接触型的接口,在适用非接触型的接口的情况下,能够适用例如Wi-Fi(注册商标)和Bluetooth(注册商标)等无线通信方式、使用了红外线等的光通信方式,在适用接触型的接口的情况下,能够适用使用了通信线缆的有线通信方式。
控制部170是控制核心单元160的各部分的动作的计算机的处理器,核心单元160具有上述的操作部162、外部I/F部164、存储部166、通信I/F部168及后述的电源部172。特别是,在通过操作部162检测出与程序的生成、执行相关的用户的指示的情况下,控制部170根据从编程板120发送的输入操作信息,生成控制目标设备200的动作状态的程序。
具体地,控制部170当在操作部162中总括执行开关112或者步骤执行开关114被操作、并检测出按下或者接触状态时,根据从编程板120发送的输入操作信息(指示位置信息、顺序信息、块体位置信息、堆放确定信息、高度设定信息),生成具有控制在三维空间中移动的目标设备200的动作状态用的命令的程序。在此,通过使用了编程板120的编程操作而取得的上述的各信息与程序的源码对应,控制部170将该源码转换(编译)成由可以在目标设备200中执行的机械语言构成的程序。被转换处理后的程序被存储在存储部166的其它存储区域中。另外,该转换处理既可以对程序整体总括地执行,也可以按照程序的一个步骤的每个命令来执行。
并且,控制部170根据操作部162的开关操作,将所生成的程序发送给目标设备200,并控制目标设备200的动作状态。另外,控制部170控制通过电源部172对核心单元160内的各部分及编程板120、编程块体140的驱动用的电力的供给状态。
电源部172对核心单元160内的各部分供给驱动用的电力。并且,电源部172通过连接核心单元160和编程板120,经由外部I/F部164、130对编程板120内的各部分供给驱动用的电力。编程板120被供给的电力还经由块体I/F部126、141(或者142)被供给编程块体140。在此,电源部172例如可以由商用交流电源被供给电力,也可以具有干电池等一次电池或锂离子电池等二次电池,还可以具有基于环境发电技术的发电部。
另外,在本实施方式中,示出了仅在核心单元160具有电源部,在编程板120及编程块体140不具有电源部的方式。在该方式中,通过连接核心单元160和编程板120,经由在双方的外部I/F部164、130设置的给电机构,由核心单元160向编程板120供给驱动用的电力。另外,通过编程块体140被放置在编程板120上,经由在双方的块体I/F部126、141(或者142)设置的给电机构,由编程板120向编程块体140供给驱动用的电力。在此,作为在外部I/F部130、164和块体I/F部126、141设置的给电机构,能够适用电磁感应方式等非接触型、或者直接连接线缆和端子电极的接触型的给电机构。
并且,作为可以适用于本发明的其它方式,也可以是编程板120及编程块体140一方或者双方具有固有的电源部。在编程板120具有固有的电源部的方式中,还可以经由在块体I/F部126、141设置的给电机构,由编程板120向编程块体140供给驱动用的电力。
在至少编程板120具有固有的电源部的方式中,即使是不将核心单元160与编程板120连接的状态下,用户也能够使用编程板120和编程块体140进行编程操作。并且,在使核心单元160从编程板120分离而独立的状态下(即,核心单元160单体),通过操作操作部162的各开关,能够进行基于输入操作信息的程序生成处理和目标设备200的动作状态的控制。
(引导片180)
引导片180例如按照图1所示是在编程板120的编程区104上放置并安装的透光性的(透明或者半透明的)有形的薄膜或薄板,被预先记述有用于支持、引导用户的编程操作的图像(插图和写真、数字、文字、记号等)。换言之,在引导片180记录有确定用于规定目标设备200的移动路径的假想路径的信息。在此,在引导片180设有与编程板120的编程区104的各区域102对应的多个区划106,上述图像是以该区划106为基准单位被表述的。具体地,例如当在引导片180上表述道路和通道、高山和河流、大海等地形的情况下,图像被设置成在相邻的区划106之间是连续的,在表述房屋和树木等的情况下,图像是以一个或者多个区划106单位被设置的。
另外,如上所述,在决定与目标设备200的移动路径中水平方向的移动成分对应的假想路径的编程操作时,用户将用户的手指等接触引导片180的多个区划106中的任意一个区划106、或者按下这一个区划106。在指示检测部122适用静电电容方式的触摸传感器的情况下,引导片180具有保护编程区104,而且能够将用户的手指等电介质的接触状态适当地传递至触摸传感器的性质(感应特性)。在这种情况下,指示检测部122能够按照上述的接触操作,与位于所接触的一个区划106正下方的编程板120的编程区104的一个区域102被直接接触的情况一样地,检测这一个区域102的静电容量的变化。另外,在指示检测部122适用感压方式的触摸传感器或按动开关的情况下,指示检测部122能够按照上述的按下操作,与位于所按下的一个区划106正下方的编程板120的编程区104的一个区域102被直接按下的情况一样地,检测这一个区域102的移位。
另外,在用户在上述的水平面内的移动路径中设定目标设备200的高度方向的位置的编程操作时,在被安装于编程板120上的引导片180的各区划106(即,与编程区104的各区域102对应)中,按照目标设备200的高度方向的位置被放置有一个或者多个编程块体140。此时,在编程块体140和编程板120之间,经由引导片180按照规定的通信方式发送及接收信息。在此,作为编程块体140和编程板120的块体I/F部141、126,在适用NFC等基于无线通信技术的方式或红外线通信等光通信方式的情况下,引导片180具有使在该通信中使用的电磁波或光透射的性质或者形态。并且,在适用将端子电极彼此直接连接的方式的情况下,引导片180既可以在各区划106中设有供编程块体140的块体I/F部141和编程板120的块体I/F部126直接接触用的开口部(贯通孔),也可以在各区划106中设有将块体I/F部141和块体I/F部126电连接用的贯通电极(在引导片180的表面背面两个面上露出的导电体)。
另外,用户根据在引导片180上所表述的地形等,从引导片180上顺序地指示编程板120的各区域102,并且将编程块体140放置在各区域102中,由此决定目标设备200在三维空间中的移动路径。通过按照编程的内容准备多种这样被表述有与编程操作相关的特定的图像的引导片180,并适当更换在编程区104上安装的引导片180,能够适当地支持不同内容的编程操作,提高编程学习的效率。
并且,根据使用了这种引导片180的编程操作,即使是通过识别移位部124使根据用户的编程操作所指示的区域102、和在执行所生成的程序时与目标设备200的移动位置对应的区域102,以规定的发光状态进行发光、或者使显示图像变化的情况下,也能够通过透光性的引导片180视觉地识别该光和图像。
(目标设备200)
目标设备200是根据用户的输入操作通过程序控制装置100所生成的程序的执行对象。在本实施方式中,作为目标设备200,例如按照图1所示示出了适用在现实空间中三维地飞行于规定的空域中的无人机等具有实体的飞行体的情况。但是,目标设备200只要是根据该所生成的程序被控制在三维空间中的动作状态的设备即可,除有形的移动体以外,还可以是在智能电话或平板终端等移动终端、个人电脑等信息通信设备中被执行的应用软件或者通过该应用软件实现的假想空间内的物体、即非有形的移动体。
在目标设备200是有形的移动体的情况下,目标设备200具有通信I/F部、驱动部、存储部、功能部、电源部及控制部。目标设备200的通信I/F部与核心单元160的通信I/F部168进行通信,接收通过核心单元160的控制部170所生成的程序。存储部存储目标设备200的通信I/F部接收到的程序。控制部按照在目标设备200的存储部存储的程序,控制后述的功能部和驱动部、电源部等,使目标设备200进行动作。
目标设备200在使用了编程板120的编程操作中,由用户顺序地指示安装有引导片180的编程区104的各区域102,并且沿着通过在各区域102放置编程块体140而决定的三维空间中的移动路径进行立体移动。在此,目标设备200沿着上述的移动路径在实际的地形(实际地形)202上移动,实际地形202与将在编程操作时使用的引导片180的图像放大的图像(相似图像)对应。
另外,本实施方式所适用的目标设备200不限于图1所示的无人机等飞行体,只要是在特定的水平面内移动、而且与该水平面垂直的方向的成分变化的物体,例如可以是在水中潜航的潜水体,也可以是诸如在地面上行走而且在规定的位置跳跃至规定的高度的自走式的玩具,还可以是在水面上移动而且在规定的位置将水喷出到规定的高度的船体。在此,在目标设备200是如本实施方式所示的飞行体或潜水体的情况下,该目标设备200还可以进行在移动路径的始点从地面上升到一定的高度或者从水面上潜水到一定的水深处,在移动路径的终点再下降到地面上或者上浮到水面上的动作。
另外,在作为目标设备200适用在移动终端或信息通信设备中被执行的应用软件的情况下,在通过该应用软件所实现的假想的三维空间内,控制前述的对象(例如游戏画面内的角色和物体等)的动作状态,使在该三维空间内的任意的路径上移动。
(编程操作及程序生成、执行方法)
下面,对有关本实施方式的编程教育装置的编程操作及程序生成、执行方法(编程方法)进行说明。
图4是表示有关本实施方式的编程教育装置的编程操作及程序生成、执行方法的一例(一般模式)的流程图。图5、图6是用于说明本实施方式所适用的编程操作处理的概略图。图7、图8是用于说明本实施方式所适用的程序生成、执行处理(总括处理)的概略图。图9、图10是用于说明本实施方式所适用的程序生成、执行处理(步骤处理)的概略图。另外,关于图4的流程图中有关模式的切换设定的处理动作(步骤S104),将在后述的变形例中进行详细说明,因而在本实施方式中适当省略说明。
在有关本实施方式的编程教育装置的编程操作及程序生成、执行方法中,被大致地划分成执行以下处理:基于使用了编程板120和编程块体140和引导片180的输入操作的编程操作处理;基于使用了编程板120和核心单元160的输入操作信息的程序生成处理;以及使用了核心单元160和目标设备200的程序执行处理。编程教育装置中的这些各个控制处理是通过在上述的编程板120和编程块体140、核心单元160、目标设备200设置的各控制部中,独立地或者相互协作地执行特定的控制程序来实现的。
(编程操作处理)
在有关本实施方式的编程教育装置的编程操作处理中,按照图4的流程图及图5(a)、(b)所示,首先用户在连接了编程教育装置的编程板120和核心单元160的状态下将核心单元160的电源接通,由此起动程序控制装置100,并且将目标设备200的电源接通而进行起动(步骤S102)。并且,以覆盖编程板120的编程区104的方式安装引导片180。
在此,在引导片180中,按照图2所示设有存储了后述的全部移动路径信息及相邻区域信息的IC芯片182。并且,在编程板120设有IC芯片读出部184,用于读出在上述所安装的引导片180的IC芯片182中存储的相邻区域信息。该IC芯片读出部184通过近距离无线通信等通信方式读出被存储于IC芯片182的数据。在编程板120的电源被接通、而且编程板120被安装于引导片180时,通过编程板120的IC芯片读出部184读出在引导片180的IC芯片182存储的、该引导片180固有的全部移动路径信息及相邻区域信息,并根据编程板120的控制部132的控制被存储在存储部128的存储区域中。
然后,使用被安装有引导片180的编程板120及编程块体140执行编程操作处理。具体地,首先按照图6(a)所示,用户参照在被安装于编程板120的引导片180所表述的图像的同时,接触与使目标设备200进行动作时的移动路径中水平方向的移动成分对应的多个区划106(即,编程区104的多个区域102)、或者按下该区划106顺序地进行指示。在此,用户对于引导片180上的包括始点(开始)Rs和终点(结束)Rg的两个以上的连续的区划106,全部按照目标设备200的移动顺序来顺序地进行指示,以便决定目标设备200的移动路径。
在此,对上述的全部移动路径信息及相邻区域信息进行详细说明。在本实施方式中,编程区104的多个区域102沿行列方向被配置成二维状,沿着该排列方向(行方向或者列方向)连续地配置的两个区域102被视为相互相邻。在这种情况下,相互相邻的两个区域102可以隔开适当设定的阈值以下的距离而被分离开配置。全部移动路径信息是用于确定与包括始点Rs和终点Rg的两个以上的连续的区划106对应的两个以上的区域102中、编程板120的编程区104内的相对位置的信息。相邻区域信息是表示多个区域102中任意两个的区域102是否相互相邻的信息。全部移动路径信息及相邻区域信息例如被存储在编程板120的存储部128的存储区域中。在存储区域中存储的全部移动路径信息及相邻区域信息可以按照上面所述被存储在引导片180的IC芯片182中,并通过上述的IC芯片读出部184被读出,或者,还可以在编程板120的存储部128的存储区域中预先存储多个相邻区域信息,根据用户操作来选择与所安装的引导片180的种类对应的信息。另外,如下面详细叙述的那样,在引导片180的IC芯片182存储的全部移动路径信息及相邻区域信息是用于确定假想路径的信息,该假想路径规定目标设备200在移动路径中的水平面内的动作状态。
在本实施方式中,按照图5(a)所示,将所关注的某一区域102(为了方便,记述为“102X”)作为基准,在行方向被配置于左面的一个区域102L及被配置于右面的一个区域102R、和在列方向被配置于上面的一个区域102U及被配置于下面的一个区域102D这四个区域102L、102R、102U、102D,是与上述所关注的某一区域102X相邻的区域102。并且,用于确定该关注的某一区域102X的信息、和与该信息相关联的用于确定这四个相邻的区域102L、102R、102U、102D的信息,作为相邻区域信息被存储在编程板120的存储部128的存储区域中。在此,用于确定区域102的信息包括有关编程板120的编程区104上的各区域102的相对位置的信息,具体地,可以是确定从编程板120的最左行数起是第几行、以及从最上列数起是第几列的区域102的数值,但这只不过是一例。
另外,关于将多个区域102中的哪个区域设为与所关注的某一区域102X相邻的区域,可以根据涉及编程的学习的目的适当设定。例如,可以是,除上述的四个区域102L、102R、102U、102D以外,还把以所关注的某一区域102X为基准、沿着与排列方向相交的倾斜方向(45°方向)被最接近地配置的四个区域102,设为与该关注的某一区域102X相邻的区域102。
在此,在本实施方式的编程板120的编程区104中,在其整体区域中沿着行列方向不留死角地配置了多个区域102。但是,在安装了引导片180的情况下,用户不一定对所有的区域102允许编程操作。
具体地,按照图5(b)所示,仅对位于引导片180中被描画有指定假想路径的黑线的多个区划106正下方的多个区域102允许编程操作,对除此以外的多个区域102禁止编程操作。在这种情况下,当应该禁止编程操作的区域(指示禁止区域)、和与所关注的某一区域102X相邻的四个(在包括倾斜方向的情况下是八个)区域102中任一个相邻的情况下,设该指示禁止区域不是与该关注的某一区域102X相邻的区域。具体地,将与所关注的某一区域102X对应的相邻区域信息设为不包含对应指示禁止区域的信息即可。在此,为了方便,将指示禁止区域以外的区域即被允许编程操作的区域设为“指示允许区域”。以始点Rs为例进行说明,与该始点Rs的区划106对应的一个区域102的列方向下侧不存在区域102,并且在行方向右侧和行方向左侧相邻的区域102未被描画指定假想路径的黑线,因而这三个区域102不包含在与始点Rs对应的一个区域102的相邻区域信息中。因此,可以仅仅包括用于确定与始点Rs的一个区域102的信息、和与该信息相关联的用于确定在列方向上侧相邻的一个区域102(在将与始点Rs的区划106对应的一个区域102设为“102X”的情况下,成为区域102U)的信息,作为与该一个区域102对应的相邻区域信息。
编程板120的控制部132进行通过指示检测部122被检测出用户的输入操作的一个区域102是否是被允许编程操作的区域的判断。具体地,在开始编程操作并最初指示区域的情况下,根据全部移动路径信息,只有对与始点Rs对应的一个区域102的编程操作被允许。因此,在最初指示区域时进行如下控制,将对与始点Rs不对应的任一个区域102的编程操作判断为无效,通过在编程板120设置的未图示的扬声器和显示部输出“不能编程的区域”等错误消息,使该区域102的发光部不发光,或以与通常不同的发光颜色和发光模式进行发光。
在用户对与始点Rs对应的一个区域102进行编程操作时,编程板120的控制部132等待对与始点Rs对应的一个区域102的相邻区域信息所包含的任一个区域102的编程操作。在进行了对上述的相邻区域信息所包含的任一个区域102的编程操作的情况下,编程板120的控制部132然后等待对另一个区域102的编程操作,在进行了对上述的相邻区域信息所不包含的任一个区域102的编程操作的情况下,输出错误消息。这样,编程板120的控制部132受理编程操作,一直到通过指示检测部122被检测出对与终点Rg对应的一个区域102的指示为止。在通过指示检测部122被检测出对与终点Rg对应的一个区域102的指示以及对利用全部移动路径信息所指定的所有区域102的指示、或者根据预先设定的操作判断为编程操作结束时,从扬声器和显示部输出“编程结束”等消息。
由此,通过引导片180被指示与区划106对应的编程区104的区域102,按照图6(b)所示,决定与目标设备200的移动路径中水平方向的移动成分对应的假想路径(始点Rs→终点Rg)(步骤S106)。此时,编程板120的控制部132取得通过指示检测部122被检测出的各指示区域102的指示位置信息和与它们的指示顺序相关的顺序信息,并存储在存储部128的存储区域中。并且,控制部132使各指示区域102的识别移位部124以规定的发光状态进行发光,或者使显示图像变化,使移位成可以视觉识别的状态(在图6(a)中为了方便而用中间色调表述)。
在此,在识别移位部124具有发光部的情况下,控制部132例如按照图6(a)所示,继续(保持)使所指示的各区域102的发光部始终以规定的发光颜色和发光强度进行发光(点亮)、或者使发光颜色变化、或者使以规定的发光模式进行发光(闪烁)的动作。并且,控制部132在编程操作处理中,以操作在核心单元160的操作部162设置的程序确认开关(省略图示)等、或在一定时间未进行编程操作的情况、或者以已定的或者根据用户操作而设定的某一时间间隔等的条件为契机,按照根据编程操作所指示且已经决定的移动路径的顺序,执行使各区域102的发光部以时分方式顺序地发光的动作。这样,通过保持各指示区域102的识别移位部124的移位状态(在此情况下是指发光状态)、或者以特定的条件为契机来提示规定的移位状态,容易在视觉上掌握并理解编程操作的内容和进展状况、根据该编程操作所决定的截止到当前时刻的移动路径和目标设备200的移动顺序等。
并且,控制部132除按照前面所述进行了对指示禁止区域的编程操作的情况以外,在程序控制装置100的动作产生异常的情况下等也进行如下控制:通过扬声器和显示部输出“动作错误”等错误消息,或者使该区域102的发光部不发光,或者使以与通常不同的发光颜色和发光模式进行发光。由此,将编程操作时的错误等通知用户。另外,在编程板120具有音响部和振动部的情况下,控制部132也可以在上述的发光部的发光动作的基础上或者替代该发光动作,使音响部和振动部的发音和振动的振幅和频率、模式变化,将编程操作时的错误等通知用户。
然后,按照图6(b)、(c)所示,用户在成为上述的假想路径的多个区划106(指示区域102)中、设定目标设备200的高度方向的位置的区域106中,放置与该高度方向的位置对应的个数的编程块体140。例如,作为各编程块体140的高度设定信息,在单位变化的值被设定为上升10cm的情况下,在想要使目标设备200的高度方向的位置比当前上升10cm的区划106中放置一个编程块体140,在想要使上升30cm的区划106中堆放放置三个编程块体140。在这种情况下,在进行了对指示禁止区域中任一方的编程操作的情况下,编程板120的控制部132适当进行如前面所述的错误处理。
由此,与目标设备200的水平方向的移动成分对应的假想路径被附加高度成分(步骤S108),目标设备200在实际的三维空间中的移动路径被规定。此时,编程板120的控制部132取得经由引导片180并通过块体I/F部126被检测出的编程块体140的块体位置信息、堆放确定信息、高度设定信息,并存储在存储部128的存储区域中。并且,编程块体140的控制部148使用户放置的编程块体140的识别移位部144以规定的发光状态进行发光,或者使显示图像变化,使移位成可以视觉识别的状态(在图6(c)中为了方便而用中间色调表述)。
在此,在识别移位部144具有发光部的情况下,控制部148例如按照图6(c)所示,继续(保持)使各编程块体140的发光部始终以规定的发光颜色和发光强度进行发光(点亮)、或者使发光颜色变化、或者使以规定的发光模式进行发光(闪烁)的动作。并且,控制部148在编程操作处理中,以当操作在核心单元160的操作部162设置的程序确认开关(省略图示)、或当在一定时间未进行编程操作的情况、或者以已定的或者根据用户操作而设定的某一时间间隔等的条件为契机,按照根据编程操作所放置且已经设定的高度方向的位置,执行使各编程块体140的发光部以时分方式顺序地发光的动作。这样,通过保持各编程块体140的识别移位部144的移位状态(在此情况下是指发光状态)、或者以特定的条件为契机来提示规定的移位状态,容易在视觉上掌握并理解编程操作的内容和进展状况、根据该编程操作所设定的截止到当前时刻的移动路径。
并且,控制部148不仅在进行了对指示禁止区域任一方的编程操作的情况下,而且在判断为编程块体140被放置在预先设定的放置禁止区域的情况下,还在程序控制装置100的动作发生异常的情况下等,也进行如下控制:使该编程块体140的发光部不发光,或者使通过扬声器和显示部输出预先设定的错误消息,或者使以与通常不同的发光颜色和发光模式进行发光。由此,将编程操作时的错误等通知用户。另外,在编程块体140具有音响部和振动部的情况下,控制部148也可以在上述的发光部的发光动作的基础上或者替代该发光动作,使音响部和振动部的发音和振动的振幅和频率、模式变化,将编程操作时的错误等通知用户。在此,所谓放置禁止区域可以根据编程学习的目的适当设定,例如可以将与被描画了许多人聚集的繁华街道和活动会场、铁塔和高层建筑等图案(省略图示)的区划106对应的区域102设定为放置禁止区域。该放置禁止区域的信息也被包含在前述的相邻区域信息中。
在本实施方式中,反复执行上述的步骤S106、S108,一直到由用户决定与目标设备200的全部移动路径的水平方向的移动成分对应的假想路径,而且该假想路径的各区域102全部被附加高度成分并结束编程操作为止(步骤S110:否)。具体地,在通过指示检测部122检测出针对在编程板120的存储部128存储的与终点Rg的区划106对应的一个区域102的指示、以及针对利用全部移动路径信息所指定的所有区域102的指示时,通过编程板120的控制部132判断为编程操作结束。
另外,步骤S106、S108所示的编程操作可以是顺序地决定假想路径、并顺序地附加该假想路径的各区域102的高度成分的方式,也可以是在决定了目标设备200的全部假想路径后、附加该假想路径的各区域102的所有的高度成分的方式。并且,在仅设定使目标设备200沿着规定的移动路径中移动到一定的高度位置的动作、而不具有高度位置的变化的情况下,在引导片180上放置编程块体140的上述步骤S108的编程操作被省略。
另外,如图6(c)所示,在结束了使用编程板120及编程块体140的编程操作处理的状态下,控制部132、148按照上述步骤S106、S108所示,保持与具有根据编程操作所决定的高度方向的位置的全部移动路径对应的各指示区域102的识别移位部124、和各编程块体140的识别移位部144的移位状态,或者以特定的条件为契机提示该移位状态。由此,容易视觉地掌握理解根据编程操作所决定的目标设备200的全部移动路径及其移动顺序等。
并且,在结束上述的编程操作处理时(步骤S110:是),被设定为能够执行使用了编程板120和核心单元160的程序生成处理的待机状态。
另外,如图7(a)所示,当用户操作在核心单元160的操作部162设置的程序执行开关(总括执行开关112或者步骤执行开关114)时(步骤S112),执行步骤S114~S120的程序总括生成、执行处理、或者步骤S122~S130的程序步骤生成、执行处理。
(程序总括生成、执行处理)
在上述的步骤S112中,如图7(a)所示,当用户对在核心单元160设置的总括执行开关112进行接通操作时,程序总括生成、执行处理被执行。在程序总括生成、执行处理中,首先核心单元160的控制部170向编程板120的控制部132发送控制信号,从编程板120总括地接收具有通过上述的编程操作处理所取得的指示位置信息和顺序信息、块体位置信息、堆放确定信息、高度设定信息的输入操作信息(步骤S114)。
然后,控制部170将从编程板120接收到的输入操作信息作为源码,总括地生成具有用于控制目标设备200的动作状态的命令的程序(步骤S116)。在控制部170中所生成的程序被存储在核心单元160的存储部166的存储区域中。
然后,控制部170按照图7(a)所示,将所生成的程序经由通信I/F部168总括地转发给目标设备200(步骤S118)。目标设备200通过执行被转发的程序,按照图7(b)及图8(a)、(b)所示,进行沿着假想路径及移动路径顺序地移动的整体动作,该假想路径是指在使用上述的编程板120的编程操作处理中所决定的从始点Rs到终点Rg的路径,该移动路径是指根据对该假想路径附加的高度成分所规定的实际地形202的路径(步骤S120)。在进行整体动作后,有关图4的流程图所示的编程操作及程序生成、执行方法的一系列的处理动作结束。
在该整体动作中,核心单元160的控制部170经由通信I/F部168从目标设备200随时接收与程序的执行状态(即当前时刻的目标设备200的位置和高度)相关的信息作为程序执行信息,作为程序执行信息,并发送给编程板120的控制部132。编程板120的控制部132根据从核心单元160接收到的程序执行信息,按照图7(b)及图8(a)、(b)所示,使与当前时刻的目标设备200在实际地形202的位置对应的区域102或者编程块体140、以与根据编程操作所决定的其它指示区域102和编程块体140不同的发光状态进行发光,或者使显示图像变化,使移位成可以视觉识别的状态(在图7(b)及图8(a)、(b)中为了方便而用白色表述)。
另外,在本实施方式中说明了这样的情况:核心单元160随时与目标设备200进行通信,接收与目标设备200的程序的执行状态相关的信息,根据该信息使与当前时刻的目标设备200的位置对应的编程板120的区域102或者编程块体140移位(例如发光)成可以识别的状态。本发明不限于此,也可以是,核心单元160例如根据自向目标设备200的程序的转发结束的定时起的经过时间(即,不与目标设备200进行通信),推测目标设备200的程序的执行状态,使编程板120的区域102或者编程块体140移位成可以识别的状态。在这种情况下,也可以是,定期地或者按照预先设定的位置或条件,核心单元160与目标设备200进行通信,以便使核心单元160的推测与实际的程序的执行状态的误差不至于过大。
在此,在编程板120的识别移位部124及编程块体140的识别移位部144都具有发光部的情况下,编程板120的控制部132及编程块体140的控制部148例如按照下面所述控制发光状态,由此能够视觉地识别目标设备200中的程序的执行状态。由此,容易视觉地掌握理解目标设备200的程序的执行状态等。
控制部132、148例如按照图7(a)所示,首先保持使与根据编程操作所决定的全部移动路径对应的所有指示区域102及编程块体140的发光部始终以规定的发光颜色和发光强度发光的状态。并且,控制部132、148进行如下控制:根据程序执行信息使与当前时刻的目标设备200的位置对应的区域102和编程块体140的发光部,按照图7(b)、图8(a)、(b)所示,以与其它指示区域102和编程块体140不同的发光颜色、和更高的发光强度或者发光模式(例如闪烁)进行发光。
另外,作为其它方式,控制部132、148例如进行如下控制:根据程序执行信息使与当前时刻的目标设备200的位置对应的区域102和编程块体140的发光部,以规定的发光颜色和发光强度进行发光,使其它指示区域102和编程块体140的发光部不发光(使灭灯)。
另外,作为其它方式,例如编程板120的各区域102的识别移位部124及编程块体140的识别移位部144都单独具有表示编程操作时的状况的第一发光部和表示程序执行时的状况的第二发光部。并且,控制部132、148在与当前时刻的目标设备200的位置对应的区域102和编程块体140中,使第一及第二发光部都发光,在其它指示区域102和编程块体140中,仅使第一发光部发光。
另外,当在目标设备200中被执行的程序发生错误和故障的情况下,控制部132、148进行如下控制:根据从目标设备200接收到的程序执行信息,使发生了该错误和故障的区域102和编程块体140以与上述通常的执行状态不同的发光颜色和发光模式进行发光。由此,将程序执行时的异常通知用户。在此,作为程序执行时的错误和故障,例如是指目标设备200的位置偏离了在编程操作时所设定的移动路径的情况、和目标设备200撞击到在编程操作时未预想到的障碍物等而落下的情况等。
(程序步骤生成、执行处理)
在上述的步骤S112中,如图9(a)所示,当用户对在核心单元160设置的步骤执行开关114进行接通操作时,程序步骤生成、执行处理被执行。在程序步骤生成、执行处理中,首先核心单元160的控制部170向编程板120的控制部132发送控制信号,使总括地或者按照编程操作的每一个操作(步骤)从编程板120接收通过编程操作处理所取得的输入操作信息(步骤S122)。
然后,控制部170总括地或者按照编程操作的每一个操作生成程序,该程序具有用于根据所接收到的输入操作信息控制目标设备200的动作状态用的命令(步骤S124)。在控制部170所生成的程序被存储在核心单元160的存储部166的存储区域中。在此,所谓编程操作的一个操作是指指示一个区域102的操作和放置一个编程块体140的操作,所谓本实施方式的程序步骤生成、执行处理中的一个步骤,是指根据这一个操作所指定的步骤的集合。
然后,控制部170按照图9(a)所示,将所生成的程序按照一个操作量的程序,经由通信I/F部168转发给目标设备200(步骤S126)。目标设备200通过执行被转发的一个操作量的程序,进行沿着假想路径及移动路径移动一个操作量、或者执行一个操作量的功能的步骤动作,该假想路径是在上述的编程操作处理中所决定的路径,该移动路径是根据对该假想路径附加的高度成分规定的实际地形202中的路径(步骤S128)。
此时,核心单元160的控制部170将与转发给目标设备200的一个操作量的程序相关的信息(即,用于规定目标设备200的移动位置和高度的信息),作为程序执行信息发送给编程板120的控制部132。编程板120的控制部132根据该程序执行信息,按照图9(a)所示,使与当前时刻的目标设备200在实际地形202的位置对应的区域102或者编程块体140、以与其它指示区域102和编程块体140不同的发光状态进行发光,或者使显示图像变化,使移位成可以视觉识别的状态(在图9(a)中为了方便而用白色表述)。
在执行了步骤S128的处理动作后,核心单元160的控制部170判定在步骤S128中使目标设备200执行的步骤动作、是否是与通过编程操作处理所取得的输入操作信息中最后的输入操作信息对应的步骤动作(步骤S130)。即,在目标设备200移动到实际地形202上的移动路径的终点位置、而且在该终点位置被堆放有一个或者多个编程块体140的情况下,核心单元160的控制部170判定目标设备200是否执行完成与这些所有的编程块体140对应的功能。
核心单元160的控制部170当在步骤S128中判定为使目标设备200执行的步骤动作是与最后的输入操作信息对应的步骤动作的情况下(步骤S130:是),有关图4的流程图所示的编程操作及程序生成、执行方法的一系列的处理动作结束。另一方面,控制部170当在步骤S128中判定为使目标设备200执行的步骤动作不是与最后的输入操作信息对应的步骤动作的情况下(步骤S130:否),进入前述的步骤S112。在该步骤S112中,判定用户是否对在核心单元160设置的总括执行开关112或者步骤执行开关114哪一方进行了接通操作。
在判定为总括执行开关112被进行了接通操作的情况下,核心单元160的控制部170对于通过编程操作处理所取得的输入操作信息中尚未被执行的所有的输入操作信息,进行前述的程序总括生成、执行处理(步骤S114~S120)。在进行了与所有的输入操作信息对应的动作后,有关图4的流程图所示的编程操作及程序生成、执行方法的一系列的处理动作结束。另外,在判定为步骤执行开关114被进行了接通操作的情况下,核心单元160的控制部170按照前述的步骤S122~S130执行程序步骤生成、执行处理。另外,在本实施方式中,为了方便将图4所示的一系列的处理动作称作“一般模式”。
这样,在本实施方式中,能够通过编程操作来决定目标设备200的移动路径中水平方向的移动成分(假想路径),在该编程操作中,使用由编程板120、编程块体140和核心单元160构成的有形的程序控制装置,接触或者按下编程板120上的任意的区域102进行指示。此外,通过将编程块体140放置在编程板120上的任意的指示区域102的编程操作,能够附加目标设备200的移动路径中垂直方向的高度成分,规定在绝对坐标系中的三维的移动路径。
并且,在本实施方式中,能够使与在编程操作时所决定的目标设备200的移动路径对应的编程板120上的区域102和编程块体140进行移位,使得可以在视觉上与其它区域102和编程块体140进行识别。并且,能够使在根据编程操作所生成的程序的执行时与目标设备200的动作状态对应的区域102和编程块体140进行移位,使得在根据编程操作所生成的程序的执行时或者在程序的执行的前后(例如编程操作中),可以在视觉上与其它区域102和编程块体140进行识别。
因此,根据本实施方式,即使是幼儿等低龄者,也能够容易进行用于决定目标设备200在三维空间中的移动路径的编程,并且能够容易通过视觉直观地掌握其操作内容和目标设备200的动作状态,能够期待编程的学习效果的提高。
另外,在上述的编程操作及程序生成、执行方法中示出了这样的方式:在编程操作处理的结束后(步骤S110),通过用户操作在核心单元160的操作部162设置的程序执行开关(总括执行开关112或者步骤执行开关114)(步骤S112),将通过编程操作处理所取得的输入操作信息从编程板120发送给核心单元160(步骤S114、S122),但本发明不限于此。例如,也可以是,当在编程操作处理中在编程板120取得了输入操作信息时,随时或者在规定的定时或定期地将该输入操作信息发送给核心单元160。
另外,在上述的编程操作及程序生成、执行方法中说明了这样的方法:通过顺序地指示与从目标设备200的移动路径的始点到终点对应的编程区104的区域102来决定移动路径,但本发明不限于此。例如,虽然在编程操作时成为在时间上相连续的顺序关系,但是在被指示了相互不相邻的两个区域102的情况下,还可以进行将该指示区域102之间的未指示的区域102自动设定为指示区域来决定移动路径的插补处理。
具体地,当在编程区104中被连续地指示了相互不相邻的两个区域102的情况下,作为插补处理,也可以设定成为该区域102之间的最短距离或最短时间的路径,当在该区域102之间具有多个路径、而且在决定移动路径时预先具有条件(例如,最佳的成本和必须的通过地点等)的情况下,还可以考虑该条件来设定最好的路径。其中,所谓设定最好的路径时的条件即成本,是指在各区域102和所设定的路径中通过时产生的费用或者总费用,预先将各区域102和单独的成本建立关联。关于这样的插补处理,例如可以预先将插补处理嵌入在编程板120的控制部132中执行的编程操作处理中,例如还可以通过操作省略图示的插补设定开关,将插补处理功能起动、停止。
另外,在本实施方式中,作为设定目标设备200的高度方向的位置的方法示出了如下的方法:将根据对编程块体140设定的高度设定信息的单位变化量和堆放确定信息中的编程块体140的堆放个数计算出的高度方向的变化量,和与假想路径中紧前面的区域102对应的位置的高度进行相加(或者相减),由此设定相对高度的方法,或直接设定高度方向的绝对位置的方法,但本发明不限于该方式。
例如,能够适用这样的方法:作为高度设定信息,设定被放置有编程块体140的各区域的高度的时间变化量,将该区域作为起点,根据时间经过使高度变化。在该方法中,被设定成每当自成为起点的区域起向相邻区域移动时,例如高度方向的位置每次增加(上升)10cm。
另外,作为其它方式还能够适用这样的方法:作为高度设定信息,对被放置有编程块体140的各区域设定分支条件,根据该条件变更高度的变化方法。在该方法中,被设定成例如当在当前的区域中高度方向的位置超过100cm的情况下,在下一个区域中减少(下降)10cm,在未超过100cm的情况下,在下一个区域中增加(上升)10cm。
另外,作为其它方式,还能够适用根据在目标设备200的移动动作中产生的事件使高度变化的方法。在该方法中,被设定成例如在目标设备200沿着移动路径移动的过程中检测到一次拍手声音的情况下,高度方向的位置每次增加(上升)10cm,在检测到两次拍手声音的情况下,高度方向的位置每次减少(下降)10cm。
另外,在本实施方式中说明了如图5~图10所示的情况:在将引导片180紧密地安装在编程板120的编程区104上的状态下进行编程操作,目标设备200在与引导片180的图像对应的实际地形202上移动,但本发明不限于此,还可以具有如下所述的方式。
图11、图12是表示在有关本实施方式的编程教育装置(编程装置)中不具有引导片的结构例的概略图。在此,对与本实施方式相同的结构简化其说明。
即,在本实施方式中,编程教育装置可以不使用引导片180就进行编程操作。在这种情况下,如图11(a)所示,用户想象目标设备200在三维空间中的移动路径,直接接触或者按下未安装引导片的编程板120的编程区104的各区域102进行指示,由此决定目标设备200的移动路径中水平方向的移动成分(假想路径),另外,还通过在编程区104的任意的指示区域102放置一个或者多个编程块体140,附加目标设备200的移动路径中垂直方向的高度成分,决定目标设备200在三维空间中的移动路径。在此,用户最初指示的编程区104的区域102与目标设备200的移动路径的始点对应,最后指示的区域102与移动路径的终点对应。
另外,在不具有引导片180的方式中,例如还可以在编程板120的编程区104的上表面直接表述与在上述的引导片180上表述的图像相同的图像。另外,还可以按照图11(b)所示,在作为识别移位部124被设于各区域102的发光部和显示部、或者在编程区104的整体区域中共同设置的发光面板和显示面板,显示与在上述的引导片180上表述的图像相同的图像GP、和用于支持、引导编程操作的图像GP等。在图11(b)所示的方式中,通过使用识别移位部124改写所显示的图像GP等的数据,能够适当变更在编程区104显示的图像GP。
另外,在不具有引导片180的方式中,作为与编程板120的各区域102对应地设置的指示检测部122,还可以具有适用按动开关等的方式,该按动开关具有每当用户的按下操作时就切换接通状态和断开状态,并且使接通状态的上表面的高度相比编程区104的上表面高度(基准高度)移位的开关机构。具体地,各按动开关例如按照图12(a)所示,通过第一次的按下操作,按动开关的上表面移位成比编程区104的基准高度沉陷的状态(凹状态),并且进入电气接通的状态,通过第二次的按下操作,按动开关的上表面返回到基准高度,并且进入电气断开的状态。另外,按动开关不限于如上所述针对按下操作使开关的上表面沉陷(移位成凹状态)而成为接通状态,例如还可以按照图12(b)所示,针对按下操作使开关的上表面突出(移位成凸状态)而成为接通状态。这样,由用户指示的区域102移位成可以视觉识别的状态,由此容易掌握理解编程操作的进展状况。即,在图12所示的方式中,指示检测部122还兼备作为移位识别部124的功能。另外,在该方式中,编程板120的各区域102也可以具有发光部和显示部作为移位识别部124,还可以是,通过上述的指示检测部122使指示区域102移位成凹状态或者凸状态而成为电气接通状态,并且以规定的发光状态进行发光,或者使显示图像变化。
另外,在本实施方式中,按照图1所示说明了这样的方式:将编程板120和核心单元160单独设置,通过非接触型或者接触型的接口进行输入操作信息的发送及接收、以及供给驱动用的电力。本发明不限于该方式,也可以是将编程板120和核心单元160设为一体的方式。
图13是表示在有关本实施方式的编程教育装置(编程装置)中,将编程板和核心单元设为一体的结构例的概略图。在此,图13(a)是将编程板和核心单元设为一体的方式的概略图,图13(b)是表示本方式的编程板所适用的结构例的功能框图。在此,对与本实施方式相同的结构简化其说明。
在将编程板和核心单元设为一体的方式中,例如按照图13(a)所示,在编程板120的编程区104的周边配置有在上述的实施方式所示的核心单元160的操作部162设置的各种开关。并且,在本方式中,例如按照图13(b)所示,具有用于实现上述的编程板120和核心单元160具备的功能的结构。
在此,存储部129具有与上述的实施方式所示的编程板120的存储部128及核心单元160的存储部166相同的功能。即,存储部129将具有通过指示检测部122及块体I/F部126所取得的指示位置信息、顺序信息、块体位置信息、堆放确定信息、高度设定信息的输入操作信息存储在规定的存储区域中,并且将根据该输入操作信息通过控制部133而生成的程序存储在不同的存储区域中。另外,存储部129还可以存储用于在控制部133中根据输入操作信息生成控制目标设备200的动作状态的程序用的程序、和控制编程板120的各部分的动作用的程序、其它各种信息。即,存储部128具有RAM及ROM。
另外,控制部133是控制编程板120的各部分的动作的计算机的处理器,具有与上述的实施方式所示的编程板120的控制部132及核心单元160的控制部170相同的功能,编程板120具有上述的指示检测部122、识别移位部124、块体I/F部126、存储部129、操作部162、通信I/F部168、电源部172。即,控制部133在检测出用户对编程区104的各区域102的指示的情况下、和检测出在指示区域上被放置有编程块体140的状态的情况下,将所取得的输入操作信息存储在存储部129的存储区域中。并且,控制部133根据输入操作信息生成控制目标设备200的动作状态的程序,并且根据操作部162的开关操作,将所生成的程序发送给目标设备200,控制目标设备200的动作状态。
另外,在本方式中,在图2所示的编程板120和核心单元160之间进行通信用的外部I/F部130、164被省略。另外,还可以是,控制部133和存储部129的一部分或者全部被图2所示的编程板120和核心单元160共用。另外,在本方式中,借助由一个电源部172供给的电力,图2所示的编程板120和核心单元160的各部分进行动作。此外,在本方式中,如上所述的用于支持并引导编程操作的引导片180既可以被安装在编程区104上,也可以不安装。
这样,通过将编程板120和核心单元160设为一体,甚至能够在编程板120单体中进行编程操作和程序的生成、目标设备200的动作状态的控制。此时,根据本方式,通过在各处理动作中省略各种信息的发送及接收、减少向存储部129的存储、读出次数,能够简化整体的处理动作。并且,根据本方式,能够减少构成程序控制装置100的部件数目,并且能够对程序控制装置100的各部分稳定地供给驱动用的电力。
另外,在本实施方式中说明了这样的情况:在使目标设备200在三维空间中进行动作时,将用于设定目标设备200的高度方向的位置的高度设定信息预先存储在编程块体140中,在成为假想路径的区域102上放置一个或者多个编程块体140,但本发明不限于此。例如,也可以是,对编程块体140设定用于通过目标设备200执行特定的功能动作的功能信息,在被放置有该编程块体140的位置使目标设备200执行所设定的功能动作。即,对编程块体140设定的功能信息与上述的设定目标设备200的高度方向的位置用的高度设定信息一样地,通过放置编程块体140而作为输入操作信息中的一个被编程板120所取得,并在核心单元160中被生成程序,该程序具有使目标设备200执行基于该功能信息的功能动作用的命令。
在此,作为使目标设备200执行的功能动作,随着在成为假想路径的区域102之间的移动而执行特定的动作所谓运动。具体地,作为功能动作例如有使发光部以规定的发光状态进行发光的动作、使在显示部显示的图像变化的动作、通过音响部产生规定的声音和乐音的动作、通过振动部使目标设备200的筐体以规定的模式振动的动作、使目标设备200在当前位置旋转(旋回)或跳跃的动作、通过摄像部拍摄目标设备200的外部的图像的动作、以及通过声音传感器和照度传感器等各种传感器感测目标设备200的周围状况的动作等。因此,目标设备200预先具备发光部和音响部、振动部、摄像部、各种传感器等作为功能部,以便实现这些功能动作。目标设备200的控制部按照在存储部存储的程序,使目标设备200移动到与被放置有编程块体140的区域102对应的位置及高度,该编程块体140被设定了特定的功能动作,然后控制上述功能部中任一方,由此使目标设备200在该位置执行对该编程块体140设定的功能动作。
另外,作为使目标设备200执行的功能动作,除与上述的运动相当的功能动作以外,还有目标设备200的动作状态根据预先设定的条件而变化的“条件分支”、目标设备200在预先设定的区域102之间反复移动的“反复”、作为多个功能动作的集合的“函数”、规定针对在目标设备200的移动中产生的事件的动作的“事件处理”等。
这些功能动作既可以在与被放置有编程块体140的区域对应的移动路径上的位置,根据对编程块体140设定的功能信息被单独地执行或者组合执行多个功能动作,还可以对编程块体140组合设定本实施方式所示的用于设定目标设备200的高度方向的位置的高度设定信息和功能信息,在控制目标设备200在三维空间中的移动动作的同时执行特定的功能动作。
另外,在本实施方式中说明了如图1所示的情况:作为核心单元160适用通过非接触型或者接触型的接口与编程板120连接的专用的控制装置,但本发明不限于该方式,也可以将智能电话或平板终端等通用的移动终端用作核心单元160。即,近年来市场上销售的通用的移动终端能够作为上述的核心单元160具有的操作部162、外部I/F部164、存储部166、通信I/F部168、控制部170、电源部172的各构成要素发挥作用。因此,通过在这样的移动终端安装专用的应用软件(编译程序),能够将通用的移动终端用作上述的核心单元160,该应用软件根据在编程板120所取得的输入操作信息生成用于控制目标设备200的动作状态的程序。在此,在将通用的移动终端用作核心单元160的情况下,除上述的编译程序以外,还可以安装用于设定编程板120和目标设备200的各种参数的软件、将上述的输入操作信息代码转换成通用语言(文本)的软件等。另外,所谓编程板120和目标设备200的各种参数是可以变更的设定项目,如编程板120的指示检测部122的检测敏感度和识别移位部124的发光状态和显示图像、块体I/F部126的收发方式等、目标设备200的驱动部的移动速度和功能部的发光状态、发音状态、振动状态、通信I/F部的通信方式等。
<变形例>
下面,对具有有关上述的实施方式的程序控制装置的编程教育装置的变形例进行说明。
图14是表示有关本实施方式的编程教育装置的编程操作及程序生成、执行方法的变形例(实时模式)的流程图。图15、图16是用于说明本变形例所适用的编程操作处理及程序生成、执行处理的概略图。在此,对于与上述的实施方式相同的结构及处理方法简化其说明。
在有关上述的实施方式的编程教育装置中,对一般模式进行了说明,即,在编程操作处理中决定目标设备200在三维空间中的全部移动路径,然后执行程序生成处理及程序执行处理。在本变形例中,除上述的一般模式以外,还具有实时模式,用户选择任意的模式进行编程学习,该实时模式在编程操作处理中每当进行一个操作量的输入操作时,生成该一个操作量的程序并转发给目标设备200使执行该程序。
(编程操作处理)
在有关本变形例的编程教育装置的编程操作处理中,如图14的流程图所示,首先用户将编程板120和核心单元160连接并起动程序控制装置100,并且起动目标设备200(步骤S202)。并且,在编程板120的编程区104上安装引导片180。
然后,核心单元160的控制部170判定模式切换开关119是否被用户操作、是被设定为一般模式还是实时模式(步骤S204)。在此,模式切换开关119例如是如图15(a)所示在核心单元160的操作部162设置的开关,选择执行上述的实施方式所示的一般模式的处理动作或者后述的实时模式的处理动作哪一方,例如适用按动开关或滑动开关。在此,在模式切换开关119适用按动开关的情况下,在用户不按下操作模式切换开关119的情况下(步骤S204:否),作为初始设定(默认)的一般模式被保持,在按下操作模式切换开关119的情况下(步骤S204:是),由一般模式被切换设定为实时模式。并且,模式切换开关119在被切换设定为实时模式的状态下,在用户进行了按下操作的情况下,由实时模式再次被切换设定为一般模式。即,模式切换开关119在每当按下操作时就被交替地切换设定为一般模式和实时模式。
控制部170在判定为通过模式切换开关119被设定了一般模式的情况下,执行在上述的实施方式中图4所示的流程图的自步骤S106起的处理动作。另一方面,控制部170在判定为通过模式切换开关119被设定了实时模式的情况下,执行自步骤S206起的处理动作。
另外,该步骤S204中的有关模式的切换设定的处理动作,在上述的实施方式所示的图4的流程图中也一样地被执行,当在步骤S104中用户不按下操作模式切换开关119的情况下,作为初始设定的一般模式被保持,执行自步骤S106起的处理动作,在用户按下操作模式切换开关119、由一般模式被切换设定为实时模式的情况下,执行自下面的步骤S206起的处理动作。
在被设定了实时模式的情况下,用户执行使用被安装有引导片180的编程板120及编程块体140决定目标设备200在三维空间中的移动路径的编程操作处理(步骤S206)。
具体地,在决定目标设备200的移动路径的编程操作处理中,如图15(a)所示,用户参照在被安装于编程板120的引导片180所表述的图像的同时,接触与用于使目标设备200动作一个操作量的移动路径对应的一个区划106(即,成为假想路径的一个区域102)、或者按下该区划106进行指示。并且,在设定目标设备200的高度方向的位置的情况下,如图15(b)所示,在与移动路径对应的一个区划106中放置被设定了高度设定信息的一个或者多个的编程块体140。
用户在进行如上所述的编程操作时,通过引导片180被指示与上述的区划106对应的编程区104的一个区域102,如图15(a)所示,与目标设备200的移动路径的一个操作量对应的假想路径被决定。并且,如图15(b)所示,被放置有编程块体140的一个区域102被指示,并且上述假想路径被附加高度成分。此时,编程板120的控制部132取得通过指示检测部122被检测出的一个指示区域102的指示位置信息及其顺序信息、或者所放置的编程块体140的块体位置信息和高度设定信息、堆放确定信息,并存储在存储部128的存储区域中。并且,控制部132使该指示区域102的识别移位部124或者编程块体140的识别移位部144以规定的发光状态进行发光,或者使显示图像变化,使移位成可以视觉识别的状态(在图15(a)中为了方便而用较深的中间色调表述,在图15(b)中为了方便而用白色表述)。
另外,在本变形例中,说明了单独进行用于决定与目标设备200的水平方向的移动成分对应的假想路径的操作处理(图15(a))、和对该假想路径附加高度成分的操作处理(图15(b))的情况,但不限于此。例如,也可以采用如图16(a)、(b)所示的方法,在未被指示与移动路径对应的一个区划106(即成为假想路径的区域102)的状态下,在该区划106(或者区域102)放置一个或者多个编程块体140,由此总括地执行将与该区划106对应的区域102决定为假想路径的处理、和对该区域102附加高度成分的处理。特别是在实时模式中,使用了编程板120及编程块体140的编程操作和目标设备200的动作状态是实时地联动的,因而通过适用如上所述的总括处理的方法,能够防止无人机等目标设备200撞击到未预想到的障碍物等的错误和事故。另外,该方法是在上述的实施方式所示的一般模式中也可以良好地适用的方法。
(程序生成、执行处理)
然后,在编程操作处理中,在取得具有一个操作量的指示位置信息和顺序信息、或者块体位置信息和高度设定信息、堆放确定信息的输入操作信息时,从控制部132向核心单元160的控制部170被发送控制信号,程序生成、执行处理被执行。具体地,核心单元160的控制部170按照编程操作的每一个操作(步骤),接收通过编程操作处理而在编程板120所取得的输入操作信息(步骤S208)。
然后,核心单元160的控制部170生成一个操作量的程序,该程序具有根据所接收到的一个操作量的输入操作信息控制目标设备200的动作状态的命令(步骤S210)。
然后,如图15(a)、(b)所示,控制部170将所生成的一个操作量的程序转发给目标设备200(步骤S212),由此在目标设备200中该一个操作量的程序被执行,目标设备200沿着实际地形202的移动路径进行一个操作量的水平移动或者升降动作的步骤动作(步骤S214)。
这样控制目标设备200的动作状态的编程操作处理及程序生成、执行处理,如图15(a)、(b)或者图16(a)、(b)所示按照每一个操作被反复执行,一直到目标设备200移动到实际地形202的移动路径的终点位置、编程操作结束为止(步骤S216)。另外,控制部170根据受理了对与终点(结束)Rg对应的一个区划106的指示(接触或者按下),判定为编程操作结束。在另一例中,也可以是,控制部170在编程操作中的任意的定时,根据受理了核心单元160的执行停止开关116的按下操作,判定为编程操作结束。
这样,根据本变形例,通过任意地切换一般模式和实时模式,能够总括地或者按照每一个操作量通过视觉掌握用于控制目标设备200的动作状态的编程操作处理中的操作内容和程序的执行状态,因而容易直观地多方面地进行理解,能够期待编程的学习效果的提高。
<第2实施方式>
下面,关于有关本发明的编程教育装置的第2实施方式,参照附图进行说明。
图17是表示适用了有关本发明的程序控制装置的编程教育装置的第2实施方式的概略图。在此,对与上述的第1实施方式相同的结构简化其说明。
在有关上述的第1实施方式的编程教育装置中说明了这样的情况:使用在编程板120上放置的编程块体140设定目标设备200的高度方向的位置。在第2实施方式中,设定目标设备200的高度方向的位置不需使用编程块体。
首先,在上述的第1实施方式中,在不使用编程块体140就进行编程操作的情况下(即,省略了使用编程块体140的编程操作的情况下),目标设备200的移动路径中仅与水平方向的移动成分对应的假想路径被决定,仅目标设备200在水平面内(即,高度方向的位置不变的一定的状态)的移动动作被控制。
另一方面,在第2实施方式中,在使用了编程板120的编程操作时,不使用编程块体140,例如使用在编程板120的各区域102设置的指示检测部122的检测功能设定目标设备200的高度方向的位置。具体地,在编程区104的各区域102设置的指示检测部122通过触摸传感器或按动开关检测有无用户对该区域102的指示(接触或者按下)、以及该指示的方法和状态。并且,在编程板120的存储部128中,按照通过指示检测部122被检测出的用户的指示方法和指示状态,存储具有设定目标设备200的高度方向的位置用的单位变化量的高度设定信息。
在此,通过指示检测部122被检测出的指示方法和指示状态是指用户对区域102的接触或者按下时的次数、持续时间、力的大小、和输入操作和肢体动作的种类等,编程板120的控制部132根据该检测结果(次数和持续时间等),将高度设定信息的单位变化量设为整数倍或者比例数倍,由此计算目标设备200的高度方向的变化量。
例如,按照图17(a)所示被设定成,根据用户接触或者按下在区域102的指示检测部122设置的触摸传感器或按动开关的次数,目标设备200的高度分阶段地每次逐次上升10cm。另外,例如,按照图17(b)所示被设定成,根据接触或者按下触摸传感器或按动开关的持续时间,目标设备200的高度每秒逐次10cm地连续上升。其中,每接触或者按下一次、或者每秒的高度方向的变化量(10cm),与上述的第1实施方式所示的高度设定信息的单位变化量对应。另外,还能够适用高度方向的变化量在一定的数值范围内进行转矩切换(例如,根据接触或者按下的次数或持续时间,进行在预先设定的范围内增加的变化,在到达最大值的情况下返回到最小值并再次增加)的方法。
另外,作为其它方式,根据接触或者按下指示检测部122的触摸传感器或按动开关时的力的大小、双击操作或肢体动作的种类,适用预先设定的高度方向的变化量(例如,在双击操作时是10cm,在肢体动作“A”时是30cm,在肢体动作“B”时是50cm等)。通过控制部132被计算出或者所适用的目标设备200的高度方向的变化量,被与所指示的区域102的指示位置信息相关联地存储在存储部128中。
另外,还能够适用这样的方法:将在一个区域102中设定的高度方向的变化量、作为在处于时间上相连续的顺序关系的下一个区域102中设定目标设备200的高度方向的位置时的初始值(初始高度)。并且,关于高度方向的变化量(单位变化量)的大小和变化的快慢、变化的方式、规定该变化量的数值范围等,不限于被预先固定地存储的方式,例如也可以操作在编程板120设置的高度变化量切换开关(省略图示)等变更设定,或通过与编程板120或核心单元160连接的平板终端等移动终端(省略图示)的应用软件变更设定。
另外,在本实施方式中,在使用了编程板120的编程操作中,通过用户指示编程区104的区域102,与目标设备200的移动路径中水平方向的移动成分对应的假想路径被决定。此时,控制部132使各指示区域102的识别移位部124以规定的发光状态进行发光,或者使显示图像变化,使移位成可以视觉识别的状态(在图17(a)、(b)中为了方便而用中间色调表述)。另外,通过用户按照上述的指示方法和指示状态指示成为假想路径的多个指示区域102中设定目标设备200的高度方向的位置用的区域102,假想路径被附加高度成分。此时,控制部132使各指示区域102的识别移位部124按照所设定的高度方向的变化量的大小以规定的发光状态进行发光,或者使显示图像变化,使移位成可以视觉识别的状态。
在此,在识别移位部124具有单色LED等发光部的情况下,控制部132例如在高度方向的变化量越小(或者高度方向的绝对位置越低)时,使发光强度越低,在变化量越大(或者高度方向的绝对位置越高)时,使发光强度越高。另外,在识别移位部124具有多色LED等发光部的情况下,控制部132例如在高度方向的变化量越小时,使以越接近蓝色光侧的波长进行发光,在变化量越大时,使以越接近红色光侧的波长进行发光(在图17(a)、(b)中为了方便,高度方向的变化量越大的区域102,用越深的中间色调表述)。
这样,根据本实施方式,不需使用编程块体,按照接触或者按下编程板120上的任意的区域102时的指示方法和指示状态,即可规定目标设备200的移动路径的垂直方向的高度成分,并决定绝对坐标系中的三维的移动路径。并且,能够容易通过视觉直观地掌握与在编程操作时所决定的目标设备200的移动路径对应的编程板120上的区域102、和被附加了高度成分的区域102,能够容易进行用于决定目标设备200在三维空间中的移动路径的编程,并且能够期待编程的学习效果的提高。
<第3实施方式>
下面,关于有关本发明的编程教育装置的第3实施方式,参照附图进行说明。
图18是表示适用了有关本发明的程序控制装置的编程教育装置的第3实施方式的概略图。在此,对与上述的第1或者第2实施方式相同的结构简化其说明。
在有关上述的第1实施方式的编程教育装置中说明了这样的情况:使用在编程板120上放置的编程块体140设定目标设备200的高度方向的位置。在第3实施方式中,与上述的第2实施方式一样,设定目标设备200的高度方向的位置不需使用编程块体。
在第3实施方式中,编程板120的各区域102的指示检测部122具有按动开关,在编程操作时,例如按照图18(a)所示,通过任意设定在编程板120的各区域102设置的面板部件108的突出量,根据该突出量设定目标设备200的高度方向的位置。
在此,面板部件108是形成编程区104的各区域102的上表面面板,并且兼做指示检测部122的按动开关的接通、断开按钮。并且,指示检测部122所适用的按动开关例如按照图18(b)所示,在没有用户对指示检测部122的指示、面板部件108未被按下的状态下,各区域102的面板部件108的上表面被设定成与作为基准高度的编程区104的上表面高度一致(图18(b)中左图)。
在通过用户指示了各区域102时,该区域102的按动开关的面板部件108被按下并暂且沉陷,然后在用户的按下操作被解除时,面板部件108移位成比基准高度突出的状态(图18(b)中中间图)。此时,通过指示检测部122检测用户对该区域102的指示,取得指示位置信息及顺序信息。并且,在本实施方式中,使成为假想路径的各指示区域102的识别移位部124以规定的发光状态进行发光,或者使显示图像变化。
并且,关于指示区域102的按动开关,通过用户将比基准高度突出的面板部件108拉起到任意的高度,设定目标设备200的高度方向的位置(图18(b)中右图)。在此,指示检测部122连续地或者分阶段地检测按动开关的面板部件108被拉起时的面板部件108的突出量。该突出量作为用于设定目标设备200的高度方向的位置的高度设定信息被取得。并且,在核心单元160中,将作为高度设定信息所取得的面板部件108的突出量、与用于设定目标设备200的高度方向的位置的单位变化量或表示绝对位置的数值建立对应地进行存储。
这样,在本实施方式中,通过用户按下编程区104的任意区域102的按动开关、将比基准高度突出的面板部件108拉起到任意高度的编程操作,由用户指示的区域102成为可以视觉识别的状态,并且与该区域102对应的位置的目标设备200的高度方向的位置被设定。
因此,根据本实施方式,能够容易进行决定目标设备200在三维空间中的移动路径的编程,并且能够容易通过视觉直观地掌握其操作内容和目标设备200的动作状态,能够期待编程的学习效果的提高。
另外,在上述的各实施方式中,作为目标设备200,示出无人机等在三维空间中移动的物体进行了说明,但本发明不限于该方式。即,本发明不仅适用于在三维空间中的移动,而且还能够适用于如下的编程学习,即,在二维空间中的移动的基础上,把其它次元的参数的连续的或者分阶段的变化作为第三维的、以三维的物体的移动的控制为对象。在这种情况下,指示检测部122及块体I/F部126作为参数值受理部发挥作用,编程块体140作为参数值指示部发挥作用。
具体地,能够适用如下所述的控制作为对象。
在具有气球等形状连续变化的可变体的移动机器人中,在二维空间中的该移动机器人的移动控制和气球等的大小(膨胀的程度)的控制。
在具有发光部的移动机器人中,在二维空间中的移动控制、和发光部的发光颜色(色相)和发光强度的变化的控制。
在具有音响部的移动机器人中,在二维空间中的移动控制、和发光部的音量和音色(频率)的控制。例如,从扬声器播放着音乐而移动时的音量的控制、和每当在区域中移动时发出一个声音的声音的频率的控制。
在二维空间中的移动控制和移动速度的控制。例如,在当前时刻的区域内的移动速度的控制,如通过设定为较慢的速度使通过该区域的时间延长的控制。
在具有跳跃机构的移动机器人中,在二维空间中的移动控制和跳跃的高度的控制。
在具有物体的发射机构的移动机器人中,在二维空间中的移动控制和被发射的物体的到达高度和距离的控制。
另外,在上述的各实施方式中,对以幼儿等低龄者为对象的编程教育装置进行了说明,但本发明不限于此,由于具有有形的输入操作以及可以通过视觉掌握理解操作内容和目标设备的动作状态的特点,因而例如也可以将编程的初学者作为对象,还可以将需要身体的功能恢复用的康复指导的人作为对象。
本申请发明不限于前述各实施方式,在实施阶段中能够在不脱离其主旨的范围内进行各种变形。另外,在前述各实施方式中包含各种阶段的发明,根据所公开的多个构成要素的适当组合可以提出各种发明。例如,当从各实施方式所示的所有构成要素中删除几个构成要素,使组合成为几个构成要素形不同的方式时,也能够解决在发明要解决的课题部分中叙述的课题,并获得在发明效果部分中叙述的效果的情况下,该构成要素被删除后进行组合而成的结构也可以作为发明被提出。

Claims (9)

1.一种编程装置,其特征在于,具有:
平面形状指示部,受理至少一个的第一用户操作,该至少一个的第一用户操作是通过确定被配置在平面方向上相互不同的位置的多个部分中两个以上的部分来指示平面形状的操作;
高度受理部,受理至少一个的第二用户操作,该至少一个的第二用户操作是与所述两个以上的部分中任意一个的部分建立对应地指示针对所述平面的相交方向的位置即高度或者该高度的移位量的操作;以及
控制部,生成使被控制部对应通过所述平面形状指示部及所述高度受理部所指示的立体形状而移动的命令列表。
2.根据权利要求1所述的编程装置,其特征在于,
所述编程装置还具有一个以上的高度指示部,指示所述相交方向的高度或者所述高度的移位量,
所述高度受理部被设于所述任意一个的部分,按照使所述一个以上的高度指示部与该任意一个的部分对应地配置的操作,受理所述至少一个的第二用户操作。
3.根据权利要求1或2所述的编程装置,其特征在于,
所述编程装置还具有参数值受理部,受理至少一个的第三用户操作,该至少一个的第三用户操作是与所述两个以上的部分中任意一个的部分建立对应地指示用于规定所述被控制部的状态的参数的值的操作,
所述控制部生成所述命令列表,使得所述被控制部沿着与通过所述平面形状指示部所指示的所述平面形状对应的路径移动、或者沿着与在针对所述平面的相交方向上向所述平面投影得到的形状和所述平面形状相同的立体形状对应的路径移动,并且在所述被控制部位于与所述路径上的所述任意一个的部分对应的位置时,根据通过与该任意一个的部分对应的所述一个以上的参数值指示部所指示的所述参数的值,使所述被控制部的状态变化。
4.根据权利要求3所述的编程装置,其特征在于,
所述编程装置还具有一个以上的参数值指示部,指示用于规定所述被控制部的状态的参数的值,
所述参数值受理部被设于所述任意一个的部分,按照使所述一个以上的参数值指示部与该任意一个的部分对应地配置的操作,受理所述至少一个的第三用户操作。
5.根据权利要求1~4中任一项所述的编程装置,其特征在于,
所述两个以上的部分中任意一个的部分具有功能受理部,受理至少一个的第四用户操作,该至少一个的第四用户操作是将所述被控制部执行的功能与该任意一个的部分建立对应地设定的操作,
所述控制部生成所述命令列表,使得在所述被控制部位于与所述任意一个的部分对应的位置时,使所述被控制部执行通过所述至少一个的第四用户操作而与该任意一个的部分建立对应地设定的所述功能。
6.根据权利要求5所述的编程装置,其特征在于,
所述编程装置还具有一个以上的功能设定部,用于指示所述被控制部执行的功能,
所述功能受理部被设于所述任意一个的部分,按照使所述一个以上的功能设定部与所述任意一个的部分对应地配置的操作,受理所述至少一个的第四用户操作。
7.根据权利要求1~6中任一项所述的编程装置,其特征在于,
所述编程装置还具有与所述立体形状对应地移动的所述被控制部。
8.一种编程方法,通过具有平面形状指示部、高度受理部及控制部的编程装置来执行,其特征在于,所述编程方法包括:
通过所述编程装置的所述平面形状指示部受理至少一个的第一用户操作,该至少一个的第一用户操作是通过确定被配置在平面方向上相互不同的位置的多个部分中两个以上的部分来指示平面形状的操作;
通过所述编程装置的所述高度受理部受理至少一个的第二用户操作,该至少一个的第二用户操作是与所述两个以上的部分中任意一个的部分建立对应地指示针对所述平面的相交方向的位置即高度或者该高度的移位量的操作;以及
通过所述编程装置的所述控制部生成命令列表,用于使被控制部对应通过所述平面形状指示部及所述高度受理部指示的立体形状而移动。
9.一种存储有程序的记录介质,其特征在于,所述程序使具有平面形状指示部、高度受理部及控制部的编程装置的计算机执行以下处理:
通过所述编程装置的所述平面形状指示部受理至少一个的第一用户操作,该至少一个的第一用户操作是通过确定被配置在平面方向上相互不同的位置的多个部分中两个以上的部分来指示平面形状的操作;
通过所述编程装置的所述高度受理部受理至少一个的第二用户操作,该至少一个的第二用户操作是与所述两个以上的部分中任意一个的部分建立对应地指示针对所述平面的相交方向的位置即高度或者该高度的移位量的操作;以及
通过所述编程装置的所述控制部生成命令列表,用于使被控制部对应通过所述平面形状指示部及所述高度受理部指示的立体形状而移动。
CN201880031650.9A 2017-03-27 2018-02-15 编程装置及记录介质、编程方法 Active CN110637336B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017060808A JP6877689B2 (ja) 2017-03-27 2017-03-27 プログラミング装置及びその制御プログラム、プログラミング方法
JP2017-060808 2017-03-27
PCT/JP2018/006327 WO2018180051A1 (ja) 2017-03-27 2018-02-15 プログラミング装置及び記録媒体、プログラミング方法

Publications (2)

Publication Number Publication Date
CN110637336A true CN110637336A (zh) 2019-12-31
CN110637336B CN110637336B (zh) 2021-11-26

Family

ID=63675274

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880031650.9A Active CN110637336B (zh) 2017-03-27 2018-02-15 编程装置及记录介质、编程方法

Country Status (4)

Country Link
US (1) US11113036B2 (zh)
JP (1) JP6877689B2 (zh)
CN (1) CN110637336B (zh)
WO (1) WO2018180051A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111515948A (zh) * 2020-04-16 2020-08-11 杭州大嘴鸟信息技术有限公司 编程机器人的控制方法和控制系统
CN111790167A (zh) * 2020-06-12 2020-10-20 长沙师范学院 一种创新式益智积木编程玩具

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6877688B2 (ja) 2017-03-27 2021-05-26 カシオ計算機株式会社 プログラミング装置及びその制御プログラム、プログラミング方法
KR102312587B1 (ko) * 2019-11-20 2021-10-15 (주)디큐 드론을 이용한 코딩 교육용 스마트 토이 시스템
KR102359999B1 (ko) * 2019-11-25 2022-02-09 주식회사 웨이브쓰리디 이동체 제어를 위한 코딩용 앱을 포함한 모바일 디바이스와 이를 이용한 이동체 제어 방법
KR102314597B1 (ko) * 2019-12-03 2021-10-20 (주)디큐 기동경계 내에서 움직이는 드론을 이용한 코딩 교육용 스마트 토이 시스템
KR102398037B1 (ko) * 2020-07-08 2022-05-16 주식회사 허니 드론을 이용한 코딩 교육 시스템
WO2023008591A1 (en) * 2021-07-26 2023-02-02 Antt Robotics Ltd. Educational robot learning system

Citations (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080213735A1 (en) * 2006-11-03 2008-09-04 Shorr Wendy E Manipulative object with adhesive backing
US20090291418A1 (en) * 2008-05-20 2009-11-26 Amit Srivastav Navigation system
CN101657767A (zh) * 2007-02-19 2010-02-24 费劳恩霍弗应用技术研究院 用于控制焊接工件的机器人的方法和装置
CN101908289A (zh) * 2010-08-31 2010-12-08 南京智慧天下教育科技有限公司 一种教学用动态实时交互编程学习系统
WO2011033747A1 (ja) * 2009-09-15 2011-03-24 株式会社ソニー・コンピュータエンタテインメント ゲーム制御プログラム、ゲーム装置、及びゲーム制御方法
JP2011075589A (ja) * 2009-09-29 2011-04-14 Casio Computer Co Ltd 演奏教習装置、及び演奏教習処理のプログラム
CN102076389A (zh) * 2008-06-27 2011-05-25 科乐美数码娱乐株式会社 游戏装置、游戏处理方法、信息记录介质以及程序
CN102289981A (zh) * 2011-06-02 2011-12-21 朱鼎新 一种可编程学习型机器人
CN102782612A (zh) * 2010-02-24 2012-11-14 诺基亚公司 姿势控制
CN102800223A (zh) * 2012-07-19 2012-11-28 中国科学院软件研究所 一种协同实物编程方法
CN102849226A (zh) * 2012-08-21 2013-01-02 上海交通大学 基于多旋翼飞行器的科研教学装置
US20130215023A1 (en) * 2011-11-29 2013-08-22 Airbus Operations (Sas) Interactive dialog devices and methods for an operator of an aircraft and a guidance system of the aircraft
KR20130133146A (ko) * 2013-11-18 2013-12-06 김동환 알파벳 레이싱 게임 및 그 프로그램
CN204170425U (zh) * 2014-08-25 2015-02-25 广东邦宝益智玩具股份有限公司 积木机器人游戏系统
JP2015091282A (ja) * 2013-10-03 2015-05-14 稲葉 正和 ラジコン玩具自動操縦装置及びコンピュータプログラム
WO2015121742A1 (en) * 2014-02-14 2015-08-20 Lincoln Global, Inc. Virtual reality pipe welding simulator and setup
US20150360366A1 (en) * 2014-06-12 2015-12-17 Play-i, Inc. System and method for reinforcing programming education through robotic feedback
US20160133163A1 (en) * 2014-11-10 2016-05-12 International Business Machines Corporation Generating a Three-Dimensional Representation of a Topography
CN105632254A (zh) * 2016-01-18 2016-06-01 北京助想教育科技有限公司 一种新型教学系统
CN105765512A (zh) * 2014-01-30 2016-07-13 施政 在交互面上用物理物体进行计算机编程的系统及方法
CN106256395A (zh) * 2015-06-18 2016-12-28 卡西欧计算机株式会社 数据解析装置以及数据解析方法
CN106428541A (zh) * 2013-01-10 2017-02-22 深圳市大疆创新科技有限公司 可变形飞行器
JP2017506781A (ja) * 2013-03-12 2017-03-09 シィ, ヅェンSHI, Zheng インタラクティブサーフェスにおける物理的オブジェクトを有するコンピュータプログラミングのためのシステム及び方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3052524B2 (ja) 1992-01-28 2000-06-12 日本電気株式会社 プログラム生成システム
US8040328B2 (en) * 2000-10-11 2011-10-18 Peter Smith Books, papers, and downloaded information to facilitate human interaction with computers
US7316567B2 (en) * 2003-08-01 2008-01-08 Jennifer Chia-Jen Hsieh Physical programming toy
US9268535B2 (en) 2013-03-12 2016-02-23 Zheng Shi System and method for computer programming with physical objects on an interactive surface
US9672756B2 (en) 2014-06-12 2017-06-06 Play-i, Inc. System and method for toy visual programming

Patent Citations (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080213735A1 (en) * 2006-11-03 2008-09-04 Shorr Wendy E Manipulative object with adhesive backing
CN101657767A (zh) * 2007-02-19 2010-02-24 费劳恩霍弗应用技术研究院 用于控制焊接工件的机器人的方法和装置
US20090291418A1 (en) * 2008-05-20 2009-11-26 Amit Srivastav Navigation system
CN102076389A (zh) * 2008-06-27 2011-05-25 科乐美数码娱乐株式会社 游戏装置、游戏处理方法、信息记录介质以及程序
WO2011033747A1 (ja) * 2009-09-15 2011-03-24 株式会社ソニー・コンピュータエンタテインメント ゲーム制御プログラム、ゲーム装置、及びゲーム制御方法
JP2011075589A (ja) * 2009-09-29 2011-04-14 Casio Computer Co Ltd 演奏教習装置、及び演奏教習処理のプログラム
CN102782612A (zh) * 2010-02-24 2012-11-14 诺基亚公司 姿势控制
CN101908289A (zh) * 2010-08-31 2010-12-08 南京智慧天下教育科技有限公司 一种教学用动态实时交互编程学习系统
CN102289981A (zh) * 2011-06-02 2011-12-21 朱鼎新 一种可编程学习型机器人
US20130215023A1 (en) * 2011-11-29 2013-08-22 Airbus Operations (Sas) Interactive dialog devices and methods for an operator of an aircraft and a guidance system of the aircraft
CN102800223A (zh) * 2012-07-19 2012-11-28 中国科学院软件研究所 一种协同实物编程方法
CN102849226A (zh) * 2012-08-21 2013-01-02 上海交通大学 基于多旋翼飞行器的科研教学装置
CN106428541A (zh) * 2013-01-10 2017-02-22 深圳市大疆创新科技有限公司 可变形飞行器
JP2017506781A (ja) * 2013-03-12 2017-03-09 シィ, ヅェンSHI, Zheng インタラクティブサーフェスにおける物理的オブジェクトを有するコンピュータプログラミングのためのシステム及び方法
JP2015091282A (ja) * 2013-10-03 2015-05-14 稲葉 正和 ラジコン玩具自動操縦装置及びコンピュータプログラム
KR20130133146A (ko) * 2013-11-18 2013-12-06 김동환 알파벳 레이싱 게임 및 그 프로그램
CN105765512A (zh) * 2014-01-30 2016-07-13 施政 在交互面上用物理物体进行计算机编程的系统及方法
WO2015121742A1 (en) * 2014-02-14 2015-08-20 Lincoln Global, Inc. Virtual reality pipe welding simulator and setup
US20150360366A1 (en) * 2014-06-12 2015-12-17 Play-i, Inc. System and method for reinforcing programming education through robotic feedback
CN204170425U (zh) * 2014-08-25 2015-02-25 广东邦宝益智玩具股份有限公司 积木机器人游戏系统
US20160133163A1 (en) * 2014-11-10 2016-05-12 International Business Machines Corporation Generating a Three-Dimensional Representation of a Topography
CN106256395A (zh) * 2015-06-18 2016-12-28 卡西欧计算机株式会社 数据解析装置以及数据解析方法
CN105632254A (zh) * 2016-01-18 2016-06-01 北京助想教育科技有限公司 一种新型教学系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JIZOMAE: "Parrot RollingSpiderを自動航行させるアフリかあった!", 《HTTP://JIZOMAE.BLOG.JP/ARCHIVES/27063026.HTML》 *
YING LI: "Teaching Programming Based on Computational Thinking", 《 2016 IEEE FRONTIERS IN EDUCATION CONFERENCE》 *
李龙: "面向教育机器人的物理仿真系统的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111515948A (zh) * 2020-04-16 2020-08-11 杭州大嘴鸟信息技术有限公司 编程机器人的控制方法和控制系统
CN111515948B (zh) * 2020-04-16 2021-02-26 杭州大嘴鸟信息技术有限公司 编程机器人的控制方法和控制系统
CN111790167A (zh) * 2020-06-12 2020-10-20 长沙师范学院 一种创新式益智积木编程玩具

Also Published As

Publication number Publication date
JP6877689B2 (ja) 2021-05-26
US20210109719A1 (en) 2021-04-15
US11113036B2 (en) 2021-09-07
CN110637336B (zh) 2021-11-26
JP2018163545A (ja) 2018-10-18
WO2018180051A1 (ja) 2018-10-04

Similar Documents

Publication Publication Date Title
CN110637336B (zh) 编程装置及记录介质、编程方法
CN110622231B (zh) 编程装置及记录介质、编程方法
US9561447B2 (en) Image generating and playing-piece-interacting assembly
EP2744580B1 (en) Baseplate assembly for use with toy pieces
US20160361662A1 (en) Interactive lcd display back light and triangulating toy brick baseplate
JP6555831B2 (ja) 情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法
JP6910592B2 (ja) プログラミング装置及びその制御プログラム、プログラミング方法
JP6910593B2 (ja) プログラム処理装置
US10751605B2 (en) Toys that respond to projections
US20190105579A1 (en) Baseplate assembly for use with toy pieces
JP2010279678A (ja) 二次元入力装置、コントロール装置及びインタラクティブゲームシステム
KR101946464B1 (ko) 체감형 인터랙티브 콘텐츠를 제공하기 위한 도구 및 그 방법
US20220219072A1 (en) Interactive electronic toy system
US20180097927A1 (en) Control apparatus
US20080278446A1 (en) Multi-sensor user input device for interactive programs on a machine
KR101859510B1 (ko) 상호작용 구조물 및 플로어 시스템
JP2019016189A (ja) 物体の接続の順序を動作の順序として特定する装置
KR20150050755A (ko) 게임용 패드 장치

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant