CN111613116A - 基于ArduBlock的实体化积木、编程方法及系统 - Google Patents
基于ArduBlock的实体化积木、编程方法及系统 Download PDFInfo
- Publication number
- CN111613116A CN111613116A CN202010385374.5A CN202010385374A CN111613116A CN 111613116 A CN111613116 A CN 111613116A CN 202010385374 A CN202010385374 A CN 202010385374A CN 111613116 A CN111613116 A CN 111613116A
- Authority
- CN
- China
- Prior art keywords
- building block
- module
- type building
- ardublock
- program type
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000004891 communication Methods 0.000 claims abstract description 44
- 230000006870 function Effects 0.000 claims description 27
- 230000000875 corresponding effect Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 230000008859 change Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007373 indentation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B19/00—Teaching not covered by other main groups of this subclass
- G09B19/0053—Computers, e.g. programming
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Hardware Design (AREA)
- Entrepreneurship & Innovation (AREA)
- Physics & Mathematics (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种基于ArduBlock的实体化积木、编程方法及系统,该实体化积木包括主控型积木和第一程序型积木,所述主控型积木与所述第一程序型积木可拆卸式连接,所述主控型积木包括第一微处理器模块、第一通信模块、电源模块和第一按键模块,所述第一程序型积木包括第一CD4051芯片、第二微处理器模块和第二通信模块;该系统包括机器人和所述的积木;本申请中基于该实体化积木的编程方法,可以方便人们进行编程的学习,同时各个积木又可以多次拆卸安装,提高了编程的简易度,可重复利用,能够提高编程学习的兴趣和效率。本申请可广泛应用于编程教育技术领域。
Description
技术领域
本申请涉及编程教育技术领域,尤其是一种基于ArduBlock的实体化积木、编程方法及系统。
背景技术
21世纪,基于电脑运行的各类软件已经成为人们日常生活、工作所离不开的工具,其方便地了人们的各式各样的需求。与之相适应的,现在很多面向少儿的编程教育,可以轻松地让孩子们掌握程序语言的逻辑,培养计算思维和对编程的兴趣。
但是目前的编程教育,大部分采用scratch+的方式进行线上教育,绝大部分的编程教育需要依赖电脑端或者ipad,程序完成后搭建的机器人大部分用于竞赛和娱乐。这种编程方式对参数模块的利用率很低,而且难以真正引起孩子的兴趣,使用的效果并不好。
发明内容
本申请实施例提供一种基于ArduBlock的实体化积木、编程方法及系统,支持通过实体化的积木来组建编程项目,提高了编程的简易度,方便了使用者的学习。
根据本申请实施例的第一方面,提供一种基于ArduBlock的实体化积木,包括:
主控型积木和第一程序型积木,所述主控型积木与所述第一程序型积木可拆卸式连接;
所述主控型积木包括第一微处理器模块、第一通信模块、电源模块和第一按键模块;
所述第一微处理器模块连接于所述第一通信模块,所述电源模块通过所述第一按键模块连接于所述第一微处理器模块;
所述第一程序型积木包括第一CD4051芯片、第二微处理器模块和第二通信模块;
所述第一CD4051芯片包括第一输入端口、第二输入端口、第一输出端口,所述第一输入端口连接于所述第一微处理器模块,所述第二输入端口连接于第二微处理器模块,所述第一输出端口连接于所述第二微处理器模块,所述第二微处理器模块连接于所述第二通信模块;
所述第一通信模块和所述第二通信模块可通讯式连接。
另外,根据本申请上述实施例的基于ArduBlock的实体化积木,还可以具有以下附加的技术特征:
可选地,在本申请的一个实施例中,所述积木还包括:
第二程序型积木;
所述第二程序型积木与所述第一程序型积木可拆卸式连接;
所述第二程序型积木包括第二CD4051芯片、第三微处理器模块和第三通信模块;
所述第一CD4051芯片还包括第二输出端口,所述第二CD4051芯片包括第三输入端口、第四输入端口和第三输出端口,所述第三输入端口连接于所述第二输出端口,所述第四输入端口连接于第三微处理器模块,所述第三输出端口连接于所述第三微处理器模块,所述第三微处理器模块连接于所述第三通信模块;
所述第一通信模块和所述第三通信模块可通讯式连接。
可选地,在本申请的一个实施例中,所述第一程序型积木和/或所述第二程序型积木为判断型积木、定义型积木、结束型积木或者函数型积木中的任意一种。
可选地,在本申请的一个实施例中,所述第一程序型积木和/或所述第二程序型积木还包括:指示模块,用于显示所述第一程序型积木和/或所述第二程序型积木中预先存储的程序的编译结果是否正确。
可选地,在本申请的一个实施例中,所述判断型积木具体包括:
第二按键模块,用于调整参数类型;
滑动变阻器,用于调整所述参数的变量值;
OLED显示器,用于显示所述判断型积木的判断条件。
根据本申请实施例的第二方面,提供一种基于ArduBlock的实体化积木的编程方法,用于通过所述的积木进行编程,包括以下步骤:
通过第一通信模块接收代码数据;
按照接收顺序,对所述代码数据进行整合得到txt文件;
基于预设的shell脚本建立包括初始化函数的工程文件,并将所述txt文件插入到所述工程文件;
对所述工程文件进行编译,并输出编译结果。
另外,根据本申请上述实施例的基于ArduBlock的实体化积木的编程方法,还可以具有以下附加的技术特征:
可选地,在本申请的一个实施例中,还包括以下步骤:判断是否在第一时间间隔内未接收到所述代码数据,若是则执行所述基于预设的shell脚本建立包括初始化函数的工程文件的步骤。
可选地,在本申请的一个实施例中,还包括以下步骤:根据编译结果的报错信息,通过指示模块在对应的所述第一程序型积木和/或所述第二程序型积木显示。
根据本申请实施例的第三方面,提供一种基于ArduBlock的实体化积木的编程系统,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如第二方面所述的方法。
根据本申请实施例的第四方面,还提供另一种基于ArduBlock的实体化积木的编程系统,包括机器人和如第一方面所述的积木。
本申请实施例的优点和有益效果将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请实施例的实践了解到:
本申请实施例提供的一种基于ArduBlock的实体化积木、编程方法及系统,该积木包括主控型积木和第一程序型积木,所述主控型积木与所述第一程序型积木可拆卸式连接,所述主控型积木包括第一微处理器模块、第一通信模块、电源模块和第一按键模块,所述第一程序型积木包括第一CD4051芯片、第二微处理器模块和第二通信模块;该编程方法基于上述实体化的可编程积木,能够方便人们进行编程的学习,同时各个积木又可以多次拆卸安装,提高了编程的简易度,可重复利用,参数可以拓展,可以提高编程学习的效率。
附图说明
为了更清楚地说明本申请实施例或者现有技术中的技术方案,下面对本申请实施例或者现有技术中的相关技术方案附图作以下介绍,应当理解的是,下面介绍中的附图仅仅为了方便清晰表述本申请的技术方案中的部分实施例,对于本领域的技术人员来说,在无需付出创造性劳动的前提下,还可以根据这些附图获取到其他附图。
图1是本申请实施例中提供的一种基于ArduBlock的实体化积木的电路结构示意图;
图2是本申请实施例中提供的一种基于ArduBlock的实体化积木的组装结构示意图;
图3是本申请实施例中提供的一种基于ArduBlock的实体化积木的主控型积木结构示意图;
图4是本申请实施例中提供的一种基于ArduBlock的实体化积木的电源电路示意图;
图5是本申请实施例中提供的一种基于ArduBlock的实体化积木的指示模块示意图;
图6是本申请实施例中提供的一种基于ArduBlock的实体化积木的编程系统结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。对于以下实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
在本申请实施例的描述中,需要理解的是,术语“长度”、“上”、“下”、“前”、“后”、“左”、“右”、“顶”、“内”、“外”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请实施例和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请实施例的限制。此外,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本申请实施例的描述中,需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请实施例中的具体含义。
参照图1,本申请实施例提供的一种基于ArduBlock的实体化积木的电路结构示意图,该实体化积木主要包括:
主控型积木110和第一程序型积木120,所述主控型积木110与所述第一程序型积木120可拆卸式连接;
具体地,参照图2,本申请实施例提供了一种主控型积木110和第一程序型积木120的外部结构设置示意图,图2所示出的是主控型积木110和第一程序型积木120拼接在一起的示意图。参照图3,对于主控型积木110来说,其可以包括内部的电路结构和外部的积木结构,在和第一程序型积木120的接口处,主控型积木110可以设置至少一个插口1,用于实现电路或者电源的连接,即当第一程序型积木120通过插口1和主控型积木110连接时,一方面其形成一个可拆卸式的一体结构,另一方面两者内部的部分电路也实现了连接。作为优选的实施方式,在主控型积木110和第一程序型积木120接口处的内部,还可以分别设置一些永磁体,用于方便二者贴合紧密,使得积木的连接更稳固。当然,图2、图3示出的仅为本申请提供的一种积木示例,本领域的技术人员可以根据需要设置不同形状、大小的积木,只需保证二者在连接时相应的电路结构能够接通即可,例如,一种可选的实施方式中,积木还可以设置为某些卡通的形状,从而更能够吸引孩子们的兴趣。
所述主控型积木110包括第一微处理器模块1103、第一通信模块1104、电源模块1101和第一按键模块1102;
所述第一微处理器模块1103连接于所述第一通信模块1104,所述电源模块1101通过所述第一按键模块1102连接于所述第一微处理器模块1103;
所述第一程序型积木120包括第一CD4051芯片1201、第二微处理器模块1202和第二通信模块1203;
所述第一CD4051芯片1201包括第一输入端口、第二输入端口、第一输出端口,所述第一输入端口连接于所述第一微处理器模块1103,所述第二输入端口连接于第二微处理器模块1202,所述第一输出端口连接于所述第二微处理器模块1202,所述第二微处理器模块1202连接于所述第二通信模块1203;
所述第一通信模块1104和所述第二通信模块1203可通讯式连接。
本申请实施例中提供的积木,主要应用于编程教育技术领域,具体是一种基于ArduBlock的实体化积木,ArduBlock是一款开源的Arduino图形化编程产品。本申请实施例中的实体化积木,能使编程的可视化和交互性大大加强,使得编程项目更加简便,门槛更低,即使没有编程经验的人也可以很快学习到其中的逻辑和原理,非常适合小孩子的入门教育。本申请实施例中的积木,采用拼接的方式进行搭建,在拼接完成后上电,程序型积木会将内部存储的代码数据都发送给主控型积木,主控型积木转化形成文档,该文档可以编译烧写到机器人中供机器人执行相应的动作指令。
下面结合附图来说明本申请实施例中提供的基于ArduBlock的实体化积木的工作原理:
本申请实施例提供了一种基于ArduBlock的实体化积木的编程方法,包括以下步骤:
S1、通过第一通信模块接收代码数据;
S2、按照接收顺序,对所述代码数据进行整合得到txt文件;
S3、基于预设的shell脚本建立包括初始化函数的工程文件,并将所述txt文件插入到所述工程文件;
S4、对所述工程文件进行编译,并输出编译结果。
首先,参照图1,本申请实施例中的积木最终输出和控制上电的部分功能在主控型积木110,主控型积木110包括一个由rk3399型号芯片组成的第一微处理器模块1103,该芯片内部带有安装好的基于python命令行工具ino的Linux系统,linux系统可以监听第一通信模块1104接收到的代码数据,并根据接收的前后顺序整合后写入到一个新的txt文件中,通过预设的shell脚本可以形成一个包括初始化函数的工程文件ino文件,将所述txt文件插入到所述工程文件,然后可以通过主控型积木110上的第一按键模块1102中的编译上传按键2来触发输出接口3,从而输出到机器人使其执行对应的程序指令。具体地,本申请实施例中,还可以设置在接收代码数据的过程中,一段时间后未有接收到代码数据时,则认为数据传输完毕,可以执行整合上传编译的工作。
本申请实施例中的电源模块1101通过所述第一按键模块1102连接于所述第一微处理器模块1103,即电源模块1101通过相应的按键来选择积木是否整体上电,电源模块1101还可以为其他拼接好的积木供电。具体地,参照图4,本申请实施例提供了一种通过电源模块1101为积木整体供电的设置方式,在这种结构下,电源模块1101通过第一按键模块1102中的开关K1能够实现在积木拼接状态下的统一供电。应当理解的是,本申请实施例只是示出了微处理器模块的供电示意图,其他模块的供电可以参考上述的方式设置。具体地,参照图3,可以在主控型积木110的表面设置电源按键4,当电源按键4被按下时,开关K1闭合,积木得电。同理,也可以设置相应的复位按键进行复位刷新记录,同时防止程序卡死。
本申请实施例中,当积木得电后,以只有第一程序型积木120和主控型积木110拼接为例:第一CD4051芯片1201的第一输入端口连接于所述第一微处理器模块1103,此时第一微处理器模块1103将通过第一输入端口发送触发脉冲至第一CD4051芯片1201,第一CD4051芯片1201是一个单端8通道多路开关,其可以根据3个引脚A、B、C输入的高低电平控制8个引脚IO0~IO7的输出电平。本申请实施例中,第一CD4051芯片1201的第二输入端口是引脚A、B、C,其连接于第二微处理器模块1202,其第一输出端口则是任意一个IO口,也连接于第二微处理器模块1202。第二微处理器模块1202初始化时,第二微处理器模块1202连接至引脚A、B、C输出的电平正好使得第一输出端口输出高电平,因此,当上电后,第二微处理器模块1202将从第一输出端口得到高电平信号,以使其内部存储的代码数据通过第二通信模块1203和第一通信模块1104传输到主控型积木110,第二微处理器模块1202发送完毕将动作改变第一CD4051芯片1201的A、B、C引脚的电平,使得输出信号从其他引脚输出。而实际运用中,积木很可能会包括很多,因此,参照图1,本申请实施例中的实体化积木还包括:
第二程序型积木130;
所述第二程序型积木130与所述第一程序型积木120可拆卸式连接;
所述第二程序型积木130包括第二CD4051芯片1301、第三微处理器模块1302和第三通信模块1303;
所述第一CD4051芯片1201还包括第二输出端口,所述第二CD4051芯片1301包括第三输入端口、第四输入端口和第三输出端口,所述第三输入端口连接于所述第二输出端口,所述第四输入端口连接于第三微处理器模块1302,所述第三输出端口连接于所述第三微处理器模块1302,所述第三微处理器模块1302连接于所述第三通信模块1303;
所述第一通信模块1104和所述第三通信模块1303可通讯式连接。
本申请实施例中,一般不仅仅包括程序型积木和主控型积木110相拼接的方式,更多的可能是程序型积木和程序型积木相拼接的方式,因此,本申请实施例中以第一程序型积木120和第二程序型积木130拼接下的电路关系来说明积木的工作原理。具体地,参考上述只有第一程序型积木120和主控型积木110拼接的例子,此时,本申请实施例中第二微处理器模块1202发送完毕将动作改变第一CD4051芯片1201的A、B、C引脚的电平,输出信号从第二输出端口输出,以使得第三微处理器模块1302从第三输出端口得到高电平信号,以使其内部存储的代码数据通过第三通信模块1303和第一通信模块1104传输到主控型积木110。基于以上的工作原理,本领域内的技术人员可以理解,本申请实施例中的积木可以拓展多个程序型积木,例如图2中的积木组合包括主控型积木110、第一程序型积木120、第二程序型积木130、第三程序型积木140和第四程序型积木150,最终所有程序型积木预先存储的程序都会发送到主控型积木110。采用以上这种层级式的电路结构,可以保证主控型积木110对于其他程序型积木发送的代码数据进行先后顺序的存储,不会使一个程序型积木所代表的代码在特定位置重复出现。
具体地,在本申请实施例中,所述第一程序型积木和/或所述第二程序型积木是基于Ardublock图形化编程界面里的图形积木基础上进行形状、功能、参数集成改动并实体化的,程序型积木具体可以包括判断型积木、定义型积木、结束型积木或者函数型积木中的任意一种。
其中,所述的判断型积木所代表的是Ardublock中已添加好条件的if型积木,判断型积木包括两种:已经设置好判断条件的积木和可改变条件的判断型积木。可改变条件的判断型积木上有第二按键模块和可调的滑动变阻器以及一个OLED液晶显示器。其中所述第二按键模块可以设置三个按键,一个按键用来决定是什么类型的参数条件,例如大于,大于等于,等于,小于等于,小于等等,另外两个按键用来改变条件对应侧的参数。按键可选决定参数是哪个变量名或者数值,当选择为数值时,旋转滑动变阻器便可以改变对应参数数值的大小,最终的判断条件可以在OLED液晶显示器中显示。
所述结束型积木主要代表着“}”代码,用来表示判断型积木和结束型积木之间的其他积木代码是放在由判断型积木所代表的条件所控制,从而实现积木之间的缩进,实现同一级的积木在同一层次上。
所述定义型积木主要包括设定某个变量为多少,例如电机为某个初速度值,或者设定某个变量自增加一,自减减1等等。在原理上,所述结束型积木与定义型积木基本一样,只是结束型积木所发送的有效数据是“}”。
所述的函数型积木可以是已经定义好的函数积木即时函数型积木发送的内容已经固定,也可以给函数体积木重新定义。
进一步作为优选的实施方式,本申请实施例中所述第一程序型积木和/或所述第二程序型积木还包括:指示模块,具体地,参照图5,本申请实施例提供的指示模块包括第一电阻R1、第二电阻R2、指示灯L1和第一三极管Q1;
所述第一电阻R1的一端连接于所述电源模块1101,所述第一电阻R1的另一端连接于所述第一三极管Q1的基极,所述第一三极管Q1的发射极接地,所述第一三极管Q1的集电极连接至所述指示灯L1的负极,所述指示灯L1的正极通过所述第二电阻连接于所述电源模块1101。
本申请实施例中,还可以在主控型积木110或者其他的程序型积木上设置指示模块,一方面能够用于指示积木是否正常得电,可以方便清楚地通过指示灯看到,从而排除某些因积木接触不良引起的编程错误;另一方面,在程序最终通过主控型积木上的输出接口3和机器人烧写线把代码烧写给机器人时,若是编译无法通过,出现报错信息,则可以通过一个进程检测编译状态输出界面,找到对应输出错误的语句,通过python简单语法将输出错误的语句和不同积木发送的数据进行匹配并且返回信息给相应积木,使对应的积木的指示模块显示出报错的信息,一种可选的实施方式为:出现编译报错信息的积木在指示模块led彩带亮起红色,其他积木则在指示模块led彩带亮起绿色,从而方便地获知程序在哪里可能逻辑出现了问题。
本申请实施例中的各个微处理器模块,可以由包括MCU单片机、FPGA、CPLD、DSP、ARM等在内的任一种或多种处理器芯片构成,其中,优选的可以设置为STC12C5A60S2系列单片机芯片或者STM32系列单片机芯片;通信模块可以是基于WIFI通信的;指示灯可以采用LED灯,更加节能环保。
本申请实施例还提供一种基于ArduBlock的实体化编程系统,包括:机器人和所述的基于ArduBlock的实体化积木。
本申请实施例中,提供的机器人和积木让孩子可以在任何地方学习编程,并且方便携带,能够提高积木的利用率,用尽量少的积木学习编程,并保留一定的代码缩进形式,提高学习编程的效率。通过上述积木实施例可以理解,本申请实施例中的系统可以包括几个类型的积木,部分积木带有可修改、设定参数的功能,每块积木都分别设有能将任意两块积木进行相互可分开式固定对接结构和提供电源的接口,控制发送顺序的引脚接口和控制数据发送到函数型积木还是发送到主控型积木的引脚,以及复位引脚。所有的程序型积木可以按照积木排列CD4051接通顺序一一将存储的程序发送给主控型积木,主控型积木对接收到的代码数据进行转化,插入到初始化的ino文件,最终可以通过主控型积木上的编译上传按键,烧写到机器人,从而控制机器人执行对应的指令。
可以理解到,上述积木实施例中的内容均适用于本系统实施例中,本系统实施例所具体实现的功能与上述积木实施例相同,并且达到的有益效果与上述积木实施例所达到的有益效果也相同。
参照图6,本发明实施例提供了另一种基于ArduBlock的实体化积木的编程系统,包括:
至少一个处理器201;
至少一个存储器202,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器201执行时,使得所述至少一个处理器201实现所述的方法。
本申请实施例还可以对应提供一种存储介质,用于存储上述实现所述方法的程序。
同理,上述方法实施例中的内容均适用于本系统实施例中,本系统实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或所述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,所述的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的上述描述中,参考术语“一个实施方式/实施例”、“另一实施方式/实施例”或“某些实施方式/实施例”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施方式,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
Claims (10)
1.一种基于ArduBlock的实体化积木,其特征在于,包括:
主控型积木和第一程序型积木,所述主控型积木与所述第一程序型积木可拆卸式连接;
所述主控型积木包括第一微处理器模块、第一通信模块、电源模块和第一按键模块;
所述第一微处理器模块连接于所述第一通信模块,所述电源模块通过所述第一按键模块连接于所述第一微处理器模块;
所述第一程序型积木包括第一CD4051芯片、第二微处理器模块和第二通信模块;
所述第一CD4051芯片包括第一输入端口、第二输入端口、第一输出端口,所述第一输入端口连接于所述第一微处理器模块,所述第二输入端口连接于第二微处理器模块,所述第一输出端口连接于所述第二微处理器模块,所述第二微处理器模块连接于所述第二通信模块;
所述第一通信模块和所述第二通信模块可通讯式连接。
2.根据权利要求1所述的一种基于ArduBlock的实体化积木,其特征在于,还包括:
第二程序型积木;
所述第二程序型积木与所述第一程序型积木可拆卸式连接;
所述第二程序型积木包括第二CD4051芯片、第三微处理器模块和第三通信模块;
所述第一CD4051芯片还包括第二输出端口,所述第二CD4051芯片包括第三输入端口、第四输入端口和第三输出端口,所述第三输入端口连接于所述第二输出端口,所述第四输入端口连接于第三微处理器模块,所述第三输出端口连接于所述第三微处理器模块,所述第三微处理器模块连接于所述第三通信模块;
所述第一通信模块和所述第三通信模块可通讯式连接。
3.根据权利要求2所述的一种基于ArduBlock的实体化积木,其特征在于:所述第一程序型积木和/或所述第二程序型积木为判断型积木、定义型积木、结束型积木或者函数型积木中的任意一种。
4.根据权利要求3所述的一种基于ArduBlock的实体化积木,其特征在于,所述第一程序型积木和/或所述第二程序型积木还包括:指示模块,用于显示所述第一程序型积木和/或所述第二程序型积木中预先存储的程序的编译结果是否正确。
5.根据权利要求4所述的一种基于ArduBlock的实体化积木,其特征在于,所述判断型积木具体包括:
第二按键模块,用于调整参数类型;
滑动变阻器,用于调整所述参数的变量值;
OLED显示器,用于显示所述判断型积木的判断条件。
6.一种基于ArduBlock的实体化积木的编程方法,用于通过如权利要求4-5中任一项所述的积木进行编程,其特征在于,包括以下步骤:
通过第一通信模块接收代码数据;
按照接收顺序,对所述代码数据进行整合得到txt文件;
基于预设的shell脚本建立包括初始化函数的工程文件,并将所述txt文件插入到所述工程文件;
对所述工程文件进行编译,并输出编译结果。
7.根据权利要求6所述的一种基于ArduBlock的实体化积木的编程方法,其特征在于,还包括以下步骤:判断是否在第一时间间隔内未接收到所述代码数据,若是则执行所述基于预设的shell脚本建立包括初始化函数的工程文件的步骤。
8.根据权利要求6所述的一种基于ArduBlock的实体化积木的编程方法,其特征在于,还包括以下步骤:根据编译结果的报错信息,通过指示模块在对应的所述第一程序型积木和/或所述第二程序型积木显示。
9.一种基于ArduBlock的实体化编程系统,其特征在于,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如权利要求6-8中任一项所述的方法。
10.一种基于ArduBlock的实体化编程系统,其特征在于:包括机器人和如权利要求1-5中任一项所述的积木。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010385374.5A CN111613116A (zh) | 2020-05-09 | 2020-05-09 | 基于ArduBlock的实体化积木、编程方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010385374.5A CN111613116A (zh) | 2020-05-09 | 2020-05-09 | 基于ArduBlock的实体化积木、编程方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111613116A true CN111613116A (zh) | 2020-09-01 |
Family
ID=72201491
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010385374.5A Pending CN111613116A (zh) | 2020-05-09 | 2020-05-09 | 基于ArduBlock的实体化积木、编程方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111613116A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112530248A (zh) * | 2020-12-07 | 2021-03-19 | 杭州海亮优教教育科技有限公司 | 一种智能逻辑硬件教学装置及其操作方法 |
CN113963083A (zh) * | 2021-11-04 | 2022-01-21 | 北京思明启创科技有限公司 | 编程积木块绘制方法、积木搭建方法、装置及电子设备 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101576393A (zh) * | 2009-06-22 | 2009-11-11 | 哈尔滨工程大学 | 一种船用计程仪故障检测装置 |
CN102136208A (zh) * | 2011-03-30 | 2011-07-27 | 中国科学院软件研究所 | 一种实物编程方法和系统 |
CN102789713A (zh) * | 2012-07-19 | 2012-11-21 | 中国科学院软件研究所 | 一种基于红外和无线传输技术的实物编程方法和系统 |
CN103456203A (zh) * | 2013-09-12 | 2013-12-18 | 中国科学院软件研究所 | 一种便携式实物编程方法及系统 |
CN104408170A (zh) * | 2014-12-09 | 2015-03-11 | 广州大乘信息科技有限公司 | 一种业务数据分析系统 |
CN108022486A (zh) * | 2016-11-03 | 2018-05-11 | 梦孚(上海)教育科技有限公司 | 可编程自由拼接电子积木模块 |
CN109189687A (zh) * | 2018-08-31 | 2019-01-11 | 成都品果科技有限公司 | 一种获取Android日志的方法和装置 |
CN109359012A (zh) * | 2018-10-23 | 2019-02-19 | 四川长虹电器股份有限公司 | 检测Android系统重启并生成测试用例的方法 |
CN109460359A (zh) * | 2018-10-26 | 2019-03-12 | 深圳市鼎阳科技有限公司 | 一种用于嵌入式设备的软件版本测试方法及系统 |
CN110538469A (zh) * | 2019-09-25 | 2019-12-06 | 杭州高低科技有限公司 | 可实现指令切换的有形编程指令积木 |
CN110706556A (zh) * | 2019-11-14 | 2020-01-17 | 深圳少年创客科技有限公司 | 幼儿机器人编程教育用的智能硬件编程器及电路和控制系统 |
CN110780877A (zh) * | 2019-09-17 | 2020-02-11 | 秦皇岛米格教育科技有限公司 | 基于程序积木的编程系统及其配置装置 |
CN111104151A (zh) * | 2019-11-26 | 2020-05-05 | 深圳市华卓智能科技有限公司 | 一种基于Shell脚本的Git代码简化的管理方法 |
-
2020
- 2020-05-09 CN CN202010385374.5A patent/CN111613116A/zh active Pending
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101576393A (zh) * | 2009-06-22 | 2009-11-11 | 哈尔滨工程大学 | 一种船用计程仪故障检测装置 |
CN102136208A (zh) * | 2011-03-30 | 2011-07-27 | 中国科学院软件研究所 | 一种实物编程方法和系统 |
CN102789713A (zh) * | 2012-07-19 | 2012-11-21 | 中国科学院软件研究所 | 一种基于红外和无线传输技术的实物编程方法和系统 |
CN103456203A (zh) * | 2013-09-12 | 2013-12-18 | 中国科学院软件研究所 | 一种便携式实物编程方法及系统 |
CN104408170A (zh) * | 2014-12-09 | 2015-03-11 | 广州大乘信息科技有限公司 | 一种业务数据分析系统 |
CN108022486A (zh) * | 2016-11-03 | 2018-05-11 | 梦孚(上海)教育科技有限公司 | 可编程自由拼接电子积木模块 |
CN109189687A (zh) * | 2018-08-31 | 2019-01-11 | 成都品果科技有限公司 | 一种获取Android日志的方法和装置 |
CN109359012A (zh) * | 2018-10-23 | 2019-02-19 | 四川长虹电器股份有限公司 | 检测Android系统重启并生成测试用例的方法 |
CN109460359A (zh) * | 2018-10-26 | 2019-03-12 | 深圳市鼎阳科技有限公司 | 一种用于嵌入式设备的软件版本测试方法及系统 |
CN110780877A (zh) * | 2019-09-17 | 2020-02-11 | 秦皇岛米格教育科技有限公司 | 基于程序积木的编程系统及其配置装置 |
CN110538469A (zh) * | 2019-09-25 | 2019-12-06 | 杭州高低科技有限公司 | 可实现指令切换的有形编程指令积木 |
CN110706556A (zh) * | 2019-11-14 | 2020-01-17 | 深圳少年创客科技有限公司 | 幼儿机器人编程教育用的智能硬件编程器及电路和控制系统 |
CN111104151A (zh) * | 2019-11-26 | 2020-05-05 | 深圳市华卓智能科技有限公司 | 一种基于Shell脚本的Git代码简化的管理方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112530248A (zh) * | 2020-12-07 | 2021-03-19 | 杭州海亮优教教育科技有限公司 | 一种智能逻辑硬件教学装置及其操作方法 |
CN113963083A (zh) * | 2021-11-04 | 2022-01-21 | 北京思明启创科技有限公司 | 编程积木块绘制方法、积木搭建方法、装置及电子设备 |
CN113963083B (zh) * | 2021-11-04 | 2023-11-24 | 北京思明启创科技有限公司 | 编程积木块绘制方法、积木搭建方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111613116A (zh) | 基于ArduBlock的实体化积木、编程方法及系统 | |
CN209591134U (zh) | 一种可用于教学的兼容型硬件编程电子积木系统 | |
KR101933597B1 (ko) | 코딩 툴 키트 | |
JP2013517077A (ja) | 可動モジュールを用いたビルディングブロックシステム | |
KR100679634B1 (ko) | 아이콘 기반 로봇제어 프로그램 작성 교육시스템 및 그 방법 | |
KR101676676B1 (ko) | 저항과 자석이 내장된 카드키 및 보드를 이용한 로봇 프로그래밍 교육용 키트 및 방법 | |
KR20170135481A (ko) | 코딩 툴 키트 | |
Jdeed et al. | Spiderino-a low-cost robot for swarm research and educational purposes | |
CN110134382A (zh) | 一种实物化编程方法 | |
Pajankar | Arduino Made Simple: With Interactive Projects | |
CN202171892U (zh) | 数字系统设计教学平台 | |
KR102186719B1 (ko) | 블록형 무선 코딩 명령어 입력 장치 및 방법 | |
CN103354053A (zh) | 一种分离式fpga实验箱 | |
CN113990158B (zh) | 一种积木式数电实验装置 | |
CN203397577U (zh) | 分离式fpga实验箱 | |
CN110706556A (zh) | 幼儿机器人编程教育用的智能硬件编程器及电路和控制系统 | |
CN102298955B (zh) | 一种报警音芯片、内部电路及其应用电路 | |
WO2019169664A1 (zh) | 一种智能互动学习方法 | |
CN214504765U (zh) | 数制转换演示装置 | |
CN202258050U (zh) | 一种新型数字电子技术与单片机综合实验箱 | |
Monk | Make: action: Movement, light, and sound with Arduino and Raspberry Pi | |
Grimmett | Arduino robotic projects | |
Hoffman | Mastering Arduino: A project-based approach to electronics, circuits, and programming | |
Saini et al. | Arduino Solutions Handbook: Design interesting DIY projects using Arduino Uno, C and C++ (English Edition) | |
CN110032107B (zh) | 由3个继电器控制4路信号通断的逻辑系统及控制方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200901 |
|
RJ01 | Rejection of invention patent application after publication |