CN108777100B - 基于有形编程指令积木的编程教育系统 - Google Patents

基于有形编程指令积木的编程教育系统 Download PDF

Info

Publication number
CN108777100B
CN108777100B CN201810971316.3A CN201810971316A CN108777100B CN 108777100 B CN108777100 B CN 108777100B CN 201810971316 A CN201810971316 A CN 201810971316A CN 108777100 B CN108777100 B CN 108777100B
Authority
CN
China
Prior art keywords
instruction
module
building block
main control
parameter
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
CN201810971316.3A
Other languages
English (en)
Other versions
CN108777100A (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.)
Hangzhou Gaodi Technology Co ltd
Original Assignee
Hangzhou Gaodi Technology 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 Hangzhou Gaodi Technology Co ltd filed Critical Hangzhou Gaodi Technology Co ltd
Priority to CN201810971316.3A priority Critical patent/CN108777100B/zh
Publication of CN108777100A publication Critical patent/CN108777100A/zh
Application granted granted Critical
Publication of CN108777100B publication Critical patent/CN108777100B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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
    • G09B23/00Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes
    • G09B23/06Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes for physics
    • G09B23/18Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes for physics for electricity or magnetism
    • G09B23/183Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes for physics for electricity or magnetism for circuits
    • G09B23/185Models for scientific, medical, or mathematical purposes, e.g. full-sized devices for demonstration purposes for physics for electricity or magnetism for circuits for building block systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • Computer Hardware Design (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Toys (AREA)

Abstract

本发明公开了基于有形编程指令积木的编程教育系统,属于编程教育技术领域,本专利让孩子在学习编程时无需使用屏幕,实现无需屏幕就能让孩子学习编程。包括积木端、电脑端和机器端;积木端包括若干个积木,并在每个积木上都分别设有能将任意两个积木进行两两相互可分开式固定对接连接在一起的固定连接机构和能将任意两个积木进行两两相互可分开式数据线对接连接在一起的数据传输接口。电脑端的脑端通信模块和机器端的机端通信模块分别与积木端的木端通信模块无线连接。

Description

基于有形编程指令积木的编程教育系统
技术领域
本发明涉及编程教育技术领域,具体涉及基于有形编程指令积木的编程教育系统。
背景技术
现在主流的编程教育一般都是采用简易编程工具scratch+课程的方式,即采用线上课程和线下课程两种方式。
为了学习编程,现在孩子就必须要依赖一个iPad或者一台电脑运行简易编程工具scratch,由于现在孩子使用屏幕的时间已经越来越不可控制,让孩子学习编程而使用屏幕的时间与控制孩子使用屏幕的时间之间形成了冲突,这让家长较为纠结。因此设计一种可以不看屏幕就能学习编程的编程教育系统就显得非常必要。
发明内容
本发明是为了解决孩子在学习编程时必须使用屏幕,而使用屏幕的时间和要控制孩子使用屏幕的时间之间存在冲突的不足,提供一种孩子在学习编程时无需使用屏幕,采用积木连接方式将要执行的程序写入主控模块中,由主控模块根据写入的程序去控制被控制对象完成相应的指令动作,从而实现无需屏幕就能让孩子学习编程,可靠性高,趣味性好的基于有形编程指令积木的编程教育系统。
以上技术问题是通过下列技术方案解决的:
基于有形编程指令积木的编程教育系统,包括积木端、电脑端和机器端;积木端包括若干个积木,并在每个积木上都分别设有能将任意两个积木进行两两相互可分开式固定对接连接在一起的固定连接机构和能将任意两个积木进行两两相互可分开式数据线对接连接在一起的数据传输接口;在若干个积木中包括一个主控积木、若干个指令积木和若干个参数积木;在主控积木上分别设有主控模块和木端通信模块,木端通信模块和设置在主控积木上的数据传输接口分别与主控模块连接;在每个指令积木上分别设有指令模块,设置在同一个指令积木上的数据传输接口和指令模块连接;在每个参数积木上分别设有参数模块,设置在同一个参数积木上的数据传输接口和参数模块连接;在电脑端上设有脑端通信模块;在机器端上设有机端通信模块和能控制机器端进行各种基本动作的机端控制器,机端通信模块与机端控制器相连接;主控积木上的木端通信模块能同时与机器端上的机端通信模块和电脑端上的脑端通信模块通信连接。
通过积木这种有形模块让孩子边玩边学习编程。制作一个个有形的积木模块代替复杂的计算机代码,有了它就能让小孩都可以学习编程了。通过积木进行有形编程,正是利用孩子们在玩乐当中学习的天性与计算机思维结合在一起,从而让编程变得简单容易。
本发明将scratch里的部分指令搬到了现实中,成为现实中可搭接的积木,孩子能完全脱离屏幕,直接通过指令积木,完成编程,控制被控制对象机器人等。
同时,本发明相比于Google的ProjectBloks这样的有形编程,本发明解决了能在同一个产品里,将有形编程直接过渡到软件编程,实现编程教育的目的,让孩子最终能够学会通过编程语言进行编程。
本发明可实时将积木搭建出的指令同步到iPad或电脑中,实时查看转化成的高级编程语言,如JavaScript或Python,并可执行或单步执行程序,进行debug编程工具。
孩子在学习编程时无需使用屏幕,采用积木连接方式将要执行的程序写入主控模块中,由主控模块根据写入的程序去控制被控制对象完成相应的指令动作,从而实现无需屏幕就能让孩子学习编程,可靠性高,趣味性好。
作为优选,所述木端通信模块、所述脑端通信模块和所述机端通信模块分别包括wifi和或蓝牙。
wifi和或蓝牙易于连接,可靠性高。
作为优选,在机器端上设有分别与机端控制器连接的声音模块、发光模块、传感器模块、扩展模块和能根据指令模块的指令让机器端进行各种基本动作的运动模块。
增加玩积木的乐趣,结构简单,可靠性高。
作为优选,若干个指令积木则有若干个指令模块,并且这若干个指令模块为基础指令集;基础指令集包括执行函数指令、循环控制指令、逻辑判断指令和基本动作指令;若干个参数积木则有若干个参数模块,并且这若干个参数模块是为基础指令集提供指令参数的辅助指令集;所述辅助指令集包括用于执行函数指令的函数名、可调节数字模块、可调节角度模块和可调节是否模块。
基础指令集和辅助指令集的配合能让机器端运行孩子需要的各种动作,大大提高了机器端运行动作的使用范围,便于孩子探索机器端的各种运行动作,增加编程兴趣和玩积木的乐趣。
作为优选,所述机器端包括机器人,所述基本动作指令包括能让机器人执行基本动作的机器人基本动作指令,所述机器人基本动作指令包括前进指令、后退指令、左转指令、右转指令、转圈指令、发声指令、闪光指令、前倾斜指令、后倾斜指令、左倾斜指令、右倾斜指令、抬起指令和放下指令。
针对机器人的机器人基本动作指令大大提高了积木编程的娱乐性和趣味性。
作为优选,所述机器端还包括智能家电,所述基本动作指令还包括能让家电执行基本动作的家电基本动作指令,所述家电基本动作指令包括开关指令、计时指令和选择指令。
通过对智能家电的控制,让孩子在娱乐中理解编程能控制各种对象,让孩子了解编程还能帮助自己干家务活的意义,增强孩子兴趣。
作为优选,在智能家电上还设有控制端与智能家电上的机端控制器连接的摄像头,所述家电基本动作指令还包括摄像指令。
通过摄像头让孩子便于远处查看智能家电当前的时间工作状况,使用方便简单,可靠性高。
作为优选,电脑端包括iPad或基于树莓派的微型电脑。
电脑端还可以是智能手机。电脑端能起到查看程序代码或其他显示或者程序升级等作用。电脑端的多样性为本发明扩大了使用范围,可靠性好,使用方便简单。
作为优选,固定连接机构包括能相互磁性吸住的若干个磁铁;在积木的每个壁面内都分别嵌入有至少一个磁铁;两个积木之间通过设置在这两个积木对应壁面内的磁铁磁性吸住后固定对接连接在一起;
数据传输接口包括若干个插座和与插座匹配的插头,在每个积木的至少一个壁面上设置有插座,在每个积木的至少一个壁面上设置有插头,并且在同一个积木上的插头和插座不在该积木的同一个壁面上;
设置在主控积木上的插头和插座分别与设置在该主控积木上的主控模块连接;设置在同一个指令积木上的插头和插座分别与设置在该个指令积木上的指令模块连接;设置在同一个参数积木上的插头和插座分别与设置在该个参数积木上的参数模块连接。
这种结构易于将两个积木对接连接在一起,并且两个积木对接连接后,这两个积木之间的数据信号传输稳定性好,信号不易中断。
作为优选,在积木内设有木腔,在木腔内设有与该积木上的插头个数相等的支点和与支点个数相等的拉绳,在每个支点上分别设有杠杆;在支点左方的木腔内设有一号定滑轮,在支点右方的木腔内设有二号定滑轮;
在插头处的积木内设有与木腔相连通的头滑孔,插头滑动连接在头滑孔内,并在头滑孔内设有能将插头往头滑孔的木腔端挤压的头挤压弹簧;
在磁铁处的积木内设有与木腔相连通的磁滑孔,磁铁滑动设置在磁滑孔内,并在磁滑孔内设有能将磁铁往磁滑孔的木腔端挤压的磁挤压弹簧;
杠杆的阻力臂端部滑动连接在插头的里端面上;拉绳的一端固定连接在杠杆的动力臂端部,拉绳的另一端依次经过二号定滑轮和一号定滑轮后固定连接在磁铁的里端面上;杠杆的动力臂长度大于杠杆的阻力臂长度。
这种结构可靠性高,在两个积木通过磁铁固定连接在一起后,磁铁的力还能同时让其中一个积木的插头上的金属插条插入连接在另一个积木的插座的插孔内。并在这两个积木分开后,插头上的金属插条缩入到积木内,易于使用,在使用过程中插头上的金属插条不易伤到手,使用简单,安全方便,可靠性好。
本发明能够达到如下效果:
本发明孩子在学习编程时无需使用屏幕,采用积木连接方式将要执行的程序写入主控模块中,由主控模块根据写入的程序去控制被控制对象完成相应的指令动作,从而实现无需屏幕就能让孩子学习编程,可靠性高,趣味性好。
附图说明
图1为本发明实施例电脑端和机器端分别与积木端相连接的一种电路原理连接结构示意框图。
图2为本发明实施例的一种电路原理连接结构示意框图。
图3为本发明实施例主控积木和参数积木都还没有连接在指令积木上时的一种连接结构示意图。
图4为本发明实施例主控积木和参数积木都已经分别连接在指令积木上后的一种连接结构示意图。
图5为本发明实施例参数积木还未连接在指令积木上时的一种连接结构示意图。
图6为本发明实施例参数积木已经连接在指令积木上后的一种连接结构示意图。
图7为本发明实施例执行函数指令的一种流程图。
图8为本发明实施例存储函数定义的一种流程图。
图9为本发明实施例指令积木控制机器人的一种流程图。
图10为本发明实施例指令模块的一种电路原理连接结构示意图。
图11为本发明实施例参数模块的一种电路原理连接结构示意图。
具体实施方式
下面结合附图与实施例对本发明作进一步的说明。
实施例1,基于有形编程指令积木的编程教育系统,参见图1-图6所示,包括积木端47、电脑端38和机器端36;积木端包括若干个积木,并在每个积木上都分别设有能将任意两个积木进行两两相互可分开式固定对接连接在一起的固定连接机构和能将任意两个积木进行两两相互可分开式数据线对接连接在一起的数据传输接口;在若干个积木中包括一个主控积木、若干个指令积木和若干个参数积木;在主控积木26上分别设有主控模块44和木端通信模块43,木端通信模块43和设置在主控积木上的数据传输接口27分别与主控模块44连接;在每个指令积木1上分别设有指令模块45,设置在同一个指令积木1上的数据传输接口30和指令模块连接;在每个参数积木上分别设有参数模块,设置在同一个参数积木21上的数据传输接口22和参数模块46连接;在电脑端上设有脑端通信模块;在机器端上设有机端通信模块和能控制机器端进行各种基本动作的机端控制器,机端通信模块与机端控制器相连接;主控积木上的木端通信模块能同时与机器端上的机端通信模块和电脑端上的脑端通信模块通信连接。
参见图3所示,主控积木26上的固定连接机构29还没固定对接连接在指令积木1上的固定连接机构31上,并且此时指令积木1上的数据传输接口30也没对接连接在主控积木26上的数据传输接口27上,指令积木1上的固定连接机构34也没固定对接连接在参数积木21上的固定连接机构35上,指令积木1上的数据传输接口25也没对接连接在参数积木21上的数据传输接口22上。在指令积木上还设有数据传输接口24。在参数积木上还设有数据传输接口23。在主控积木上还分别设有固定连接机构28、数据传输接口32和数据传输接口33。
参见图4所示,主控积木26上的固定连接机构29已经固定对接连接在指令积木1上的固定连接机构31上,并且此时指令积木1上的数据传输接口30也已经对接连接在主控积木26上的数据传输接口27上,指令积木1上的固定连接机构34也已经固定对接连接在参数积木21上的固定连接机构35上,指令积木1上的数据传输接口25也已经对接连接在参数积木21上的数据传输接口22上。
所述木端通信模块、所述脑端通信模块和所述机端通信模块分别包括wifi和或蓝牙。
在机器端上设有分别与机端控制器连接的声音模块、发光模块、传感器模块、扩展模块和能根据指令模块的指令让机器端进行各种基本动作的运动模块。
若干个指令积木则有若干个指令模块,并且这若干个指令模块为基础指令集;基础指令集包括执行函数指令、循环控制指令、逻辑判断指令和基本动作指令;若干个参数积木则有若干个参数模块,并且这若干个参数模块是为基础指令集提供指令参数的辅助指令集;所述辅助指令集包括用于执行函数指令的函数名、可调节数字模块、可调节角度模块和可调节是否模块。
所述机器端36包括机器人48,所述基本动作指令包括能让机器人执行基本动作的机器人基本动作指令,所述机器人基本动作指令包括前进指令、后退指令、左转指令、右转指令、转圈指令、发声指令、闪光指令、前倾斜指令、后倾斜指令、左倾斜指令、右倾斜指令、抬起指令和放下指令。
参见图2所示,电脑端38包括iPad40或基于树莓派的微型电脑39。微型电脑39通过设置在微型电脑39上的脑端通信模块41与积木端47主控积木26上的木端通信模块43无线连接。iPad40通过设置在iPad40上的脑端通信模块42与积木端47主控积木26上的木端通信模块43无线连接。
参见图2所示,机器端36的机器人48通过设置在机器人48上的机端通信模块37与积木端47主控积木26上的木端通信模块43无线连接。机器人48上的机端控制器51与设置在该机器人48上的机端通信模块51连接。机器人48上的声音模块59、发光模块60、传感器模块61、扩展模块62和运动模块63分别与机器人48上的机端控制器51连接。
固定连接机构包括能相互磁性吸住的若干个磁铁;在积木的每个壁面内都分别嵌入有至少一个磁铁;两个积木之间通过设置在这两个积木对应壁面内的磁铁磁性吸住后固定对接连接在一起;
数据传输接口包括若干个插座和与插座匹配的插头,在每个积木的至少一个壁面上设置有插座,在每个积木的至少一个壁面上设置有插头,并且在同一个积木上的插头和插座不在该积木的同一个壁面上;
设置在主控积木上的插头和插座分别与设置在该主控积木上的主控模块连接;设置在同一个指令积木上的插头和插座分别与设置在该个指令积木上的指令模块连接;设置在同一个参数积木上的插头和插座分别与设置在该个参数积木上的参数模块连接。
参见图5所示,指令积木1上的磁铁14还没被参数积木21上的磁铁18磁性吸住。指令积木1上的插头15的金属插条16还没插入连接在参数积木21上的插座20的插孔19内。
参见图6所示,在积木内设有木腔10,在木腔内设有与该积木上的插头个数相等的支点6和与支点个数相等的拉绳5,在每个支点上分别设有杠杆3;在支点左方的木腔内设有一号定滑轮2,在支点右方的木腔内设有二号定滑轮9;
在插头处的积木内设有与木腔相连通的头滑孔13,插头滑动连接在头滑孔内,并在头滑孔内设有能将插头往头滑孔的木腔端挤压的头挤压弹簧11;
在磁铁处的积木内设有与木腔相连通的磁滑孔17,磁铁滑动设置在磁滑孔内,并在磁滑孔内设有能将磁铁往磁滑孔的木腔端挤压的磁挤压弹簧12;
杠杆的阻力臂4端部设有滚轮8,滚轮滑动连接在插头的里端面上;拉绳的一端固定连接在杠杆的动力臂7端部,拉绳的另一端依次经过二号定滑轮和一号定滑轮后固定连接在磁铁的里端面上;杠杆的动力臂长度大于杠杆的阻力臂长度。
主控模块:基于树莓派,运行nodejs,通过蓝牙模块控制机器端,通过蓝牙模块同步指令到电脑端,通过wifi模块连接电脑端上进行软件升级。
若干指令模块:为基础指令集,包括执行函数指令(Func())、循环控制指令(for循环)、逻辑判断(条件)指令(if/else)、基本动作指令(前进、后退、左转、右转、转圈、发声、LED闪灯等)。指令模块的电路原理示意图如图10所示。
若干参数模块:辅助基础指令,提供指令参数,包括函数名(用于执行函数指令)、可调节数字模块、可调节角度模块、可调节是否模块等。参数模块的电路原理示意图如图11所示。
参见图9所示,指令积木控制机器人的流程为:
主控积木的主控模块启动后,通过蓝牙模块,搜索机器人和iPad,主控模块作为蓝牙主机,机器人和iPad作为蓝牙外设,机器人和iPad随时启动,随时蓝牙连接成功。
孩子开始根据自己的意愿或课程要求,自行设计程序,添加指令模块和参数模块,参数模块上的数字、角度、是否等可以随意调整,参数模块还包含针对传感器状态的判断。
完成指令模块和参数模块的搭建后,打开开关,完成指令。主控模块将指令通过蓝牙同步给iPad。
同时,主控模块基于blockly平台解析指令,生成可执行程序并运行,执行过程中将控制机器人的命令通过蓝牙发送给机器人。
iPad的程序启动后,在蓝牙连接主控模块后,一直监听蓝牙输入。收到主控模块同步的指令后,基于blockly平台解析指令,将指令展示为blockly积木形式,转换成JavaScript和Python语言,并生成可执行程序,开始运行,在iPad上画出机器人的行走路线。
机器人程序启动后,在蓝牙连接主控模块后,一直监听蓝牙输入。机器人上的传感器通过蓝牙不断返回传感器状态,主控模块通过全局变量,记录传感器状态值。收到主控模块发出的命令后,机器人执行命令,完成舞蹈动作或者闯关。
主控积木的主控模块为树莓派(RaspberryPi)的linux操作系统,运行环境为Nodejs,加载googleblockly模块。利用googleblockly平台提供的接口,实现对于指令积木的xml解析,指令积木的功能配置和参数配置。
例如:
1、调用为blockly封装的nodejs模块。
//调用googleblockly模块
varBlockly=require(’node-blockly’)。
2、通过B1ockly的Blocks函数,对指令积木进行定义。
Blockly.Blocks[’bee_moveforward’]={
init:function(){
this.appendDummy Input()
.appendField(″向前走″)
.appendField(newBlockly.FieldNumber(10,1,10000),″moveSteps″)
.appendField(″步″);
this.setPreviousStatement(true,null);
this.setNextStatement(true,null);
this.setColour(255);
this.setTooltip(’letbeemoveforward’);
this.setHelpUrl(”);
}}。
3、通过JavaScript函数,定义指令积木对应的JavaScript函数。
Blockly.JavaScript[’bee_moveforward’]=function(block){
varnumber_movesteps=block.getFieldValue(’moveSteps’);
varcode=″Bee.moveForward″+″(″+number_movesteps+″);\n″;
returncode;
}。
4、定义对应函数需要完成的功能,比如通过蓝牙向机器人发出向前走的指令。
//自定义Blocks的功能,与ble的蓝牙模块进行ajax通信,传递指令
Bee.moveForward=function(number_steps){
console.log(″moveforward″+number_steps);
BLE.runBLECommand(″command″,″moveForward″,number_steps)
}。
5、通过Blockly.Xml.textToDom函数,将主控模块读到的积木指令对应xml转换为blockly可以识别的workspace,然后通过Blockly.JavaScript.workspaceToCode函数把workspace转换为可执行的JavaScript代码:
Bee.workspace=newBlockly.Workspace();
varcommandXml=XML.generateXml(commandString);
try{
varxml=Blockly.Xml.textToDom(commandXml);
}catch(e){console.log(e);
Return
}
Blockly.Xml.domToWorkspace(xml,Bee.workspace);
varcode=Blockly.JavaScript.workspaceToCode(Bee.workspace)。
可自定义函数模块:
当机器人需要完成复杂的动作组合时,指令模块和参数模块就会越积越多,不仅浪费模块,也不能养成好的编程习惯。所以,本项目还支持自定义的函数模块,让孩子学会通过函数来优雅地实现复杂的功能。
定义函数模块需要:
主控模块:用于读取函数定义,并写入函数定义文件;
定义模块:承载函数定义的关键字;
函数模块:承载函数名,如“新动作1”,“新动作2”,硬件同参数模块;
指令模块:用于搭建完成定义函数功能的各个指令;
参数模块:用于搭建完成定义函数功能的指令参数。
定义函数模块的流程为:
指令积木主控模块启动;
将开始模块改为定义模块,后面添加函数模块,函数模块用于承载函数名;
添加该函数功能所需的指令模块和参数模块,比如让机器人跳8字舞所需的所有动作和参数;
主控模块收到指令后,判断是否为函数定义,如果是函数定义,则将该函数定义的指令存储到定义文件里。
函数定义以JSON串的格式存储到文件中。参见图8所示。
执行函数模块需要:
主控模块:用于蓝牙通信,读取指令,解析指令,执行程序;
执行模块:用于触发自定义函数的执行;
函数模块:承载函数名;
指令模块:用于搭建编程的各个指令;
参数模块:用于搭建编程的指令参数。
执行函数模块的流程为:参见图7所示。
主控积木的主控模块启动;
添加执行模块和函数模块;
添加其他需要的指令模块和参数模块;
确认完成指令搭建;
主控模块收到指令后,判断是否有执行模块,如果有,则读取函数定义文件,将函数定义的指令加入到要执行的指令集中;
主控模块解析指令,执行程序。
本发明将scratch里的部分指令搬到了现实中,成为现实中可搭接的积木,孩子能完全脱离屏幕,直接通过指令积木,完成编程,控制被控制对象机器人等。
同时,本发明相比于Google的ProjectBloks这样的有形编程,本发明解决了能在同一个产品里,将有形编程直接过渡到软件编程,实现编程教育的目的,让孩子最终能够学会通过编程语言进行编程。
本发明可实时将积木搭建出的指令同步到iPad或电脑中,实时查看转化成的高级编程语言,如JavaScript或Python,并可执行或单步执行程序,进行debug编程工具。
孩子在学习编程时无需使用屏幕,采用积木连接方式将要执行的程序写入主控模块中,由主控模块根据写入的程序去控制被控制对象完成相应的指令动作,从而实现无需屏幕就能让孩子学习编程,可靠性高,趣味性好。
实施例2与实施例1的不同之处如下:参见图2所示。机器端36还包括智能家电49,所述基本动作指令还包括能让家电执行基本动作的家电基本动作指令,所述家电基本动作指令包括开关指令、计时指令和选择指令。
在智能家电上还设有控制端与智能家电上的机端控制器连接的摄像头5,所述家电基本动作指令还包括摄像指令。
机器端36的智能家电49通过设置在智能家电49上的机端通信模块50与积木端47主控积木26上的木端通信模块43无线连接。智能家电49上的机端控制器52与设置在该智能家电49上的机端通信模块50连接。智能家电49上的声音模块53、发光模块54、传感器模块55、扩展模块56、运动模块57和摄像头58分别与智能家电49上的机端控制器52连接。
实施例2通过对智能家电的控制,让孩子在娱乐中理解编程能控制各种对象,让孩子了解编程还能帮助自己干家务活的意义,增强孩子兴趣。
上面结合附图描述了本发明的实施方式,但实现时不受上述实施例限制,本领域普通技术人员可以在所附权利要求的范围内做出各种变化或修改。

Claims (1)

1.基于有形编程指令积木的编程教育系统,包括积木端、电脑端和机器端;其特征在于,积木端包括若干个积木,并在每个积木上都分别设有能将任意两个积木进行两两相互可分开式固定对接连接在一起的固定连接机构和能将任意两个积木进行两两相互可分开式数据线对接连接在一起的数据传输接口;在若干个积木中包括一个主控积木、若干个指令积木和若干个参数积木;在主控积木上分别设有主控模块和木端通信模块,木端通信模块和设置在主控积木上的数据传输接口分别与主控模块连接;在每个指令积木上分别设有指令模块,设置在同一个指令积木上的数据传输接口和指令模块连接;在每个参数积木上分别设有参数模块,设置在同一个参数积木上的数据传输接口和参数模块连接;在电脑端上设有脑端通信模块;在机器端上设有机端通信模块和能控制机器端进行各种基本动作的机端控制器,机端通信模块与机端控制器相连接;主控积木上的木端通信模块能同时与机器端上的机端通信模块和电脑端上的脑端通信模块通信连接;所述系统还包括自定义的函数模块和执行模块,函数模块承载函数名,硬件同参数模块,执行模块用于触发自定义函数的执行;
定义函数模块的流程为:指令积木主控模块启动;将开始模块改为定义模块,后面添加函数模块,函数模块用于承载函数名;添加该函数功能所需的指令模块和参数模块;主控模块收到指令后,判断是否为函数定义,如果是函数定义,则将该函数定义的指令存储到定义文件里;
执行函数模块的流程为:主控积木的主控模块启动;添加执行模块和函数模块;添加其他需要的指令模块和参数模块;确认完成指令搭建;主控模块收到指令后,判断是否有执行模块,如果有,则读取函数定义文件,将函数定义的指令加入到要执行的指令集中;主控模块解析指令,执行程序;
所述木端通信模块、所述脑端通信模块和所述机端通信模块分别包括wifi和或蓝牙;
在机器端上设有分别与机端控制器连接的声音模块、发光模块、传感器模块、扩展模块和能根据指令模块的指令让机器端进行各种基本动作的运动模块;
若干个指令积木则有若干个指令模块,并且这若干个指令模块为基础指令集;基础指令集包括执行函数指令、循环控制指令、逻辑判断指令和基本动作指令;若干个参数积木则有若干个参数模块,并且这若干个参数模块是为基础指令集提供指令参数的辅助指令集;所述辅助指令集包括用于执行函数指令的函数名、可调节数字模块、可调节角度模块和可调节是否模块;
所述机器端包括机器人,所述基本动作指令包括能让机器人执行基本动作的机器人基本动作指令,所述机器人基本动作指令包括前进指令、后退指令、左转指令、右转指令、转圈指令、发声指令、闪光指令、前倾斜指令、后倾斜指令、左倾斜指令、右倾斜指令、抬起指令和放下指令;
所述机器端还包括智能家电,所述基本动作指令还包括能让家电执行基本动作的家电基本动作指令,所述家电基本动作指令包括开关指令、计时指令和选择指令;
在智能家电上还设有控制端与智能家电上的机端控制器连接的摄像头,所述家电基本动作指令还包括摄像指令;
电脑端包括iPad或基于树莓派的微型电脑;
固定连接机构包括能相互磁性吸住的若干个磁铁;在积木的每个壁面内都分别嵌入有至少一个磁铁;两个积木之间通过设置在这两个积木对应壁面内的磁铁磁性吸住后固定对接连接在一起;
数据传输接口包括若干个插座和与插座匹配的插头,在每个积木的至少一个壁面上设置有插座,在每个积木的至少一个壁面上设置有插头,并且在同一个积木上的插头和插座不在该积木的同一个壁面上;
设置在主控积木上的插头和插座分别与设置在该主控积木上的主控模块连接;设置在同一个指令积木上的插头和插座分别与设置在该个指令积木上的指令模块连接;设置在同一个参数积木上的插头和插座分别与设置在该个参数积木上的参数模块连接;
在积木内设有木腔,在木腔内设有与该积木上的插头个数相等的支点和与支点个数相等的拉绳,在每个支点上分别设有杠杆;在支点左方的木腔内设有一号定滑轮,在支点右方的木腔内设有二号定滑轮;
在插头处的积木内设有与木腔相连通的头滑孔,插头滑动连接在头滑孔内,并在头滑孔内设有能将插头往头滑孔的木腔端挤压的头挤压弹簧;
在磁铁处的积木内设有与木腔相连通的磁滑孔,磁铁滑动设置在磁滑孔内,并在磁滑孔内设有能将磁铁往磁滑孔的木腔端挤压的磁挤压弹簧;
杠杆的阻力臂端部滑动连接在插头的里端面上;拉绳的一端固定连接在杠杆的动力臂端部,拉绳的另一端依次经过二号定滑轮和一号定滑轮后固定连接在磁铁的里端面上;杠杆的动力臂长度大于杠杆的阻力臂长度;
指令积木控制机器人的流程为:
主控积木的主控模块启动后,通过蓝牙模块,搜索机器人和iPad,主控模块作为蓝牙主机,机器人和iPad作为蓝牙外设,机器人和iPad随时启动,随时蓝牙连接成功;
孩子开始根据自己的意愿或课程要求,自行设计程序,添加指令模块和参数模块,参数模块上的数字、角度、是否可以随意调整,参数模块还包含针对传感器状态的判断;
完成指令模块和参数模块的搭建后,打开开关,完成指令;主控模块将指令通过蓝牙同步给iPad;
同时,主控模块基于blockly平台解析指令,生成可执行程序并运行,执行过程中将控制机器人的命令通过蓝牙发送给机器人;
iPad的程序启动后,在蓝牙连接主控模块后,一直监听蓝牙输入;收到主控模块同步的指令后,基于blockly平台解析指令,将指令展示为blockly积木形式,转换成JavaScript和Python语言,并生成可执行程序,开始运行,在iPad上画出机器人的行走路线;
机器人程序启动后,在蓝牙连接主控模块后,一直监听蓝牙输入;机器人上的传感器通过蓝牙不断返回传感器状态,主控模块通过全局变量,记录传感器状态值;收到主控模块发出的命令后,机器人执行命令,完成舞蹈动作或者闯关。
CN201810971316.3A 2018-08-24 2018-08-24 基于有形编程指令积木的编程教育系统 Active CN108777100B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810971316.3A CN108777100B (zh) 2018-08-24 2018-08-24 基于有形编程指令积木的编程教育系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810971316.3A CN108777100B (zh) 2018-08-24 2018-08-24 基于有形编程指令积木的编程教育系统

Publications (2)

Publication Number Publication Date
CN108777100A CN108777100A (zh) 2018-11-09
CN108777100B true CN108777100B (zh) 2021-05-25

Family

ID=64028816

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810971316.3A Active CN108777100B (zh) 2018-08-24 2018-08-24 基于有形编程指令积木的编程教育系统

Country Status (1)

Country Link
CN (1) CN108777100B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109830141A (zh) * 2018-12-29 2019-05-31 柴云山 一种实体指令编程方法及实体指令编程系统
CN109710261A (zh) * 2018-12-29 2019-05-03 深圳点猫科技有限公司 一种将积木代码自动转化为编程代码的方法及电子设备
CN109752962A (zh) * 2019-01-07 2019-05-14 佛山市新里图信息技术有限公司 一种智能设备控制系统
CN110164285A (zh) * 2019-06-19 2019-08-23 上海思依暄机器人科技股份有限公司 一种实验机器人及其实验操控方法和装置
CN111090253A (zh) * 2019-12-30 2020-05-01 龙芯中科(南京)技术有限公司 一种控制方法、装置、系统、电子设备及储存介质
CN111308938A (zh) * 2020-03-04 2020-06-19 九芯智能科技(南通)有限公司 一种用于学习编程的编程装置及其使用方法
CN114832397A (zh) * 2021-02-01 2022-08-02 深圳市芯扬智能科技有限公司 一种用于智能积木身份识别和互连联动的控制系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528142A (zh) * 2016-10-31 2017-03-22 苏州乐派特机器人有限公司 树状组合式指令实物化编程方法、应用和实物化编程模块
CN107171126A (zh) * 2016-03-07 2017-09-15 拉克洛博公司 模块组件和连接器以及电子装置
CN207233254U (zh) * 2017-07-05 2018-04-13 南京阿凡达机器人科技有限公司 一种积木式编程设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104898456B (zh) * 2015-04-02 2018-06-19 苏州乐派特机器人有限公司 实物化编程的方法及其在机器人领域的应用
KR20170056286A (ko) * 2015-11-13 2017-05-23 김완우 프로그래밍 학습용 블록완구
CN106730913A (zh) * 2017-03-20 2017-05-31 深圳市恩孚电子科技有限公司 一种磁性积木
CN106890458A (zh) * 2017-03-24 2017-06-27 李峰 一种磁吸式智能积木、系统、控制方法及使用方法
CN107854849A (zh) * 2017-12-28 2018-03-30 南京乾纬智能科技有限公司 一种智能电子积木结构

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107171126A (zh) * 2016-03-07 2017-09-15 拉克洛博公司 模块组件和连接器以及电子装置
CN106528142A (zh) * 2016-10-31 2017-03-22 苏州乐派特机器人有限公司 树状组合式指令实物化编程方法、应用和实物化编程模块
CN207233254U (zh) * 2017-07-05 2018-04-13 南京阿凡达机器人科技有限公司 一种积木式编程设备

Also Published As

Publication number Publication date
CN108777100A (zh) 2018-11-09

Similar Documents

Publication Publication Date Title
CN108777100B (zh) 基于有形编程指令积木的编程教育系统
CN108766118B (zh) 易于编程教育的有形编程积木
CN108898918B (zh) 易于编程教育的编程教育控制对象装置
US9718185B2 (en) System and method for reinforcing programming education through robotic feedback
US10001843B2 (en) Modular sensing device implementing state machine gesture interpretation
TWI236610B (en) Robotic creature device
US20160346920A1 (en) Robot system and simultaneous performance control method thereof
CN106164562A (zh) 促进定位和定向移动计算设备的托架
CN102448678A (zh) 用于编辑和控制移动机器人的行为的系统和方法
CN106022305A (zh) 一种用于智能机器人的动作对比方法以及机器人
CN109118880B (zh) 基于蓝牙mesh的机器人学习和协作系统
Jdeed et al. Spiderino-a low-cost robot for swarm research and educational purposes
CN102416265A (zh) 变形金刚机器人玩具及方法
KR100738258B1 (ko) 스크립트 생성기를 이용하여 다양한 플랫폼의 로봇 제어를 위한 상용화 저작툴의 활용방법
CN105700481A (zh) 一种智能机器人动作生成方法及系统
KR102171428B1 (ko) 음악과 춤의 상관관계를 학습하여 춤을 추는 로봇
JP7363823B2 (ja) 情報処理装置、および情報処理方法
US11623345B2 (en) Modular robot system
KR20160078678A (ko) 하나의 단말기를 이용해 동작과 음원을 매칭하여 복수의 로봇을 춤추게 하는 방법 및 시스템
CN110370280B (zh) 机器人行为的反馈控制方法、系统和计算机可读存储介质
CN110757448A (zh) 面向于机器人编程的交互实现方法和系统
Pinciroli Object retrieval by a swarm of ground based robots driven by aerial robots
Naya et al. Robobo: The next generation of educational robot
CN209831656U (zh) 一种智能机器人
Vamos et al. Virtual collaboration arena

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
CP02 Change in the address of a patent holder

Address after: 311400 room 607, 6th floor, building 13, Fuchun Park, Zhongguo Zhigu, Yinhu street, Fuyang District, Hangzhou City, Zhejiang Province

Patentee after: HANGZHOU GAODI TECHNOLOGY Co.,Ltd.

Address before: Room 921, 9th floor, no.6, Yinhu innovation center, No.9 Fuxian Road, Yinhu street, Fuyang District, Hangzhou City, Zhejiang Province 311400

Patentee before: HANGZHOU GAODI TECHNOLOGY Co.,Ltd.

CP02 Change in the address of a patent holder
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Programming education system based on tangible programming instruction blocks

Effective date of registration: 20230317

Granted publication date: 20210525

Pledgee: Bank of Jiangsu Limited by Share Ltd. Hangzhou branch

Pledgor: HANGZHOU GAODI TECHNOLOGY Co.,Ltd.

Registration number: Y2023330000548

PE01 Entry into force of the registration of the contract for pledge of patent right