欢迎来到天天文库
浏览记录
ID:21494658
大小:24.50 KB
页数:4页
时间:2018-10-22
《zlrobide机器人图形化编程软件的设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、ZLRobIde机器人图形化编程软件的设计 摘要针对信息化教育的需要,设计了ZLRobIde图形化编程软件,该软件以易字为先的原则设计,引入了流程图、函数式编程等思想,软件由图形化引擎、代码生成模块、代码下载模块等构成,具有简单易用、功能全面,非常适合在教学中使用和推广。 【关键词】图形化编程创客信息化教育机器人 1什么是图形化编程? 首先什么是图形化编程,图形化编程是通过图形化进行编程的一种编程方式,图形化编程和代码编程的本质是一样的。那又为什么会产生图形化编程呢?是人类对图形感知能力相对文字容易接受和理解而产生的,图形化方式编程具有对专业知识要求低、适应群体广等特点,让编程变为
2、人人所能的事情。 相对代码编程,图形化编程其实一直存在,工业领域有两个代表分支,一个是NI(美国家仪器)的labview编程软件,该软件可以帮助设计者解决问题、提高生产力,还有一个分支是PLC的图形化编程软件,其中以梯形图为代表,当然后面又扩展到了功能模块图等编程方式,它们都被标准化组织规范在IEC1131-3中。在教学教育领域的代表是google的blockly,还有以其思想进化而来的scratch等,scratch在blockly的基础上加强了对多媒体教学,互动教学等方面的开发,使其图形化编程在创客教育信息化教育中占了一个比较大的比例。 2ZLRobIde图形化编程软件的设计思想
3、 图形化开发软件在辅助教学,想法快速实现等方面都起着越来越重要的作用,我们吸收了现有的图形化编程思想,再融入自有的一些新想法设计了ZLRobIde图形化编程软件。 ZLRobIde?O计的核心理念是易字为先,融入了以下几个基本思想: 2.1流程图编程思想 程序本身是一个流程思维的实现,以流程图作为我们的图形化编程框架,核心流程一目了然,无需任何背景知识,非常适合在教学使用。 2.2函数式编程思想 函数代表一个通用方法的归类,一般函数实现中有输入和输出,我们以此为基础,将其成为我们编程软件的模块基础。 2.3一物一块的原则 在第二点的基础上我们将实际物件也做了一个归类,让实际物
4、件对应一个图形单元块,实现一一对应原装,结合硬件独立编码,在ZLRobIde端我们实现了自动识别模块的能力,给使用者带来更易用的编程环境。 3ZLRobIde图形化编程软件技术实现过程 ZLRobIde图形化编程环境,要达到图形化程序编写、修改和下载等功能,整个构架包括如下,树状功能模块、图形引擎模块、图形到中间代码的转换模块、中间代码编程环境、链接编译模块和下载模块,其中图形引擎部分为技术为难点,这里择重介绍下该部分的实现过程。 整个软件建立在java的swing图形库基础上,按照MVC方式配置窗口,Model负责数据,View负责界面展示,Control负责M/V之间的协调。
5、基本拓扑元件和结构,Cell代表基本的图形模块,Line表示模块之间的连接,复杂ifelse/while/for循环模块由Cell和Line组合构成,Cell中有成员,通过List构成树状结构。 鼠标监听要点,通过重载对象classmyGraphControl的paintComponent(Graphicsg)方法直接在控件上画出根节点cell实现类GraphHandler,在myGraphControl上增加侦听addMouseListener和addMouseMotionListener侦听各种鼠标事件,鼠标操作的支持整个画布的移动,通过记录鼠标的移动差,来设置setViewPosi
6、tion。 4ZLRobIde图形化编程软件介绍 如图1为整个软件的界面,左侧部分为模块选择区,与实际软硬件配合,根据实际硬件选择性的显示需要的模块,中间为图形化显示编辑区,右侧为代码显示区显示图形化对应生成的中间代码,最右侧为工具条包含基本的新建、保存、另存、系统状态刷新、回退、下载和切换等操作。 模块的放置,可以将左侧的模块拖放到程序去的流程图上,也可以通过点放方式放置,在模块部分具备添加子程序块的功能,中间模块我们可以通过右键添加注释,另外也支持模块的折叠和复制等操作。 图1中代码程序部分描述的是蜂鸣器鸣响3次,每次鸣响时间40毫秒,每次间隔时间1秒的一个例子程序,其中的定值
7、部分都是可以拖入(或者点放)的方式放入,相当于函数的参数。 5综述 以上是对ZLRobIde图形化编程软件从设计思想、具体实现和到最终使用的基本描述,我们完成了该软件的设计,图形化编程软件针对教学、快速实现是非常理想的选择,就复杂功能实现方面不如直接代码实现来的方便,我们将继续思考如何将图形化编程软件做的更加易用。 参考文献 [1]ZLTech.http://www.chgckj.com/,2017. [2]F
此文档下载收益归作者所有