APP下载

图形化编程系统设计探究

2020-05-18刘立勋姜晨波

科技视界 2020年7期
关键词:泡沫板简易程序图形化

刘立勋 姜晨波

摘 要

针对日益受重视的少儿编程问题,本文提出了一种图形化编程系统的设计方案,并介绍了此系统的核心算法,即卷积神经网络(Convolutional neural net-works, CNN)。此设计适合8~14的儿童和青少年,以少儿用户的特点为核心,坚持简单易懂、激发兴趣的原则,对少儿编程思想的启蒙具有重大的意义。

关键词

少儿编程;图形化编程系统;卷积神经网络(CNN)

中图分类号: TP391.44;TN929.5          文献标识码: A

DOI:10.19694/j.cnki.issn2095-2457.2020.07.039

Abstract

Aiming at the problem of children's programming,this paper puts forward a design scheme of graphic programming system,and introduces the core algorithm of this system,that is,convolutional neural network(CNN).This design is suitable for 8-14 children and teenagers.It takes the characteristics of children's users as the core,adheres to the principle of easy to understand and arouses interest,and has great significance for the Enlightenment of children's programming thought.

Key Words

Children's programming;Graphical programming system;Convolutional neural network(CNN)

随着科技的不断进步和发展,人工智能逐渐进入人们的视野,计算机技能的地位日益提升。目前,国内青少年的编程教育还停留在初起阶段,而国外在少儿时就十分注重编程思想的启蒙。在计算机领域,编程逻辑和算法是决定程序质量高低的关键。而儿童时期的悟性可以让我们养成更好的编程思维和算法逻辑。实体化编程更可以帮助使用者形成良好的编程逻辑和算法思维,帮助他们更好地融入人工智能社会。

从2007年麻省理工学院专门为青少年开发scratch软件开始,以色列和英国紧随其后在青少年的必修课内纳入编程,随后2017年我国国务院发文,建议实施全民智能教育项目[1]。在过去的几年中,围绕少儿编程教育的问题持续升温,少儿编程的可视化、游戏化发展风向愈发明显,少儿编程的机遇已经到来。

1 方案

首先,我们设计了简易程序模块,综合考虑泡沫板的形状、大小,并制作泡沫板;其次,把设计的简易程序模块印刷在泡沫板上,使用者只需根据需要拼接泡沫板,也就是简易程序模块;在使用者确定泡沫板完成拼接后,调用视觉系统来完成泡沫板图像信息的采集,并将采集的图像上载到图像识别与图像分析模块;然后运用模式识别技术把采集到的图像信息翻译成源程序代码,最后,待源程序代码编译完成后,下载到目标小车或机器人上,完成指定动作。系统运行流程如图1。

2 模块说明

图形化编程系统主要包括以下几个模块:

(1)泡沫板程序模块。首先,我们提前设计了简易程序模块,并把所有的简易程序模块分别印刷在各不同颜色的泡沫板上,每一块泡沫板上的程序都可以看作编程软件中所对应的简易程序。

(2)泡沫板拼接。使用者可以直接根据自己的需求将泡沫板进行拼接、增加和减少,类似于积木的搭接。由于是实物,使用者可以随时变动泡沫板,改变模块程序的连接关系,或添加、删减泡沫板来达到修改程序,改变功能的目的。

(3)图像信息采集模块。完成泡沫板拼接后,我们的图形化编程软件可通过图形化控件库调用视觉模块,对各简易程序模塊组成的逻辑块进行信息采集。然后上传到图像识别和图像分析模块,完成图像信息的采集。

(4)运用图像识别和图像分析技术翻译成源程序。采集完成的图像是二维空间的图形对象,图形对象之间按照一定的逻辑顺序连接,组成了整个逻辑块程序。我们的视觉系统会自动识别、提取和解析图像信息,并将提取的信息译为源程序代码,即类c语言代码。

(5)类c语言程序编译、上载模块。在生成类c语言代码后,对其进行编译。编译过程为选择编译事件,从该事件所对应程序的类c语言代码中读取字符,产生对应的可执行代码,进行保存,完成编译。上载过程是由我们的第三方库将源程序代码与校验码进行校验及解析,校验成功后将下载到目标小车、目标机器人等,令其完成由程序指定的动作。系统整体技术路线框架如图2。

3 算法

本系统图像的识别与分析采用卷积神经网络算法。其在模式识别领域表现突出,可以得到更深层的特征,拥有更高的识别率。CNN层次结构如图3。

4 结语

少儿编程本是属于STEAM教育的一部分,但随着其逐步的发展,出现了专注于此领域的项目和公司,促进了少儿编程成为一个相对独立的领域。我们如今处于一个编程的时代,学习编程,这有利于我们了解这个世界正在发生什么,将会发生什么。语言是自然社会必不可少的构成因素,而编程是互联网形成的基础。程序已经不再是只有互联网人才会谈论的话题,我们的衣、食、住、行几乎被互联网包围,而编程这门看似枯燥、深奥的技能正是构成这一切的基础。让下一代提早学习编程,有利于他们更清晰地理解他们当前所处的时代。少儿编程教育并不是培养未来的程序员,而是让孩子学会熟练地用科技表达自己,由科技时代的消费者转变为创造者。因此,少儿编程的研究具有重大意义。

参考文献

[1]王婷婷,王丹力,路璐,何亮,王宏安,戴国忠.面向儿童的图形化编程语言和工具[J].计算机辅助设计与图形学学报,2013,25(04):584-591.

猜你喜欢

泡沫板简易程序图形化
LKJ自动化测试系统图形化技术研究
运用图形化听写式复习,构建高效地理课堂
基层“打非”多试试简易程序
图形化地区电网无功优化软件开发与应用
图形化仪表控制系统上位机软件的设计与开发
我国刑事简易程序的现状及存在的问题
直肠癌术后放疗应用有孔泡沫板对小肠照射剂量和体积的影响