《计算机科学与工程导论:基于IoT和机器人的可视化编程实践方法第2版》一2.2.1 VIPLE的工程设计过程

简介: 本节书摘来华章计算机《计算机科学与工程导论:基于IoT和机器人的可视化编程实践方法第2版》一书中的第2章 ,第2.2.1节,陈以农 陈文智 韩德强 著 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2.2.1 VIPLE的工程设计过程

我们来看一下整个工程设计过程:
1)明确问题和需求;
2)研究;
3)草拟解决方案;
4)建模(画流程图);
5)分析;
6)模拟;
7)建立原型;
8)最终选定方案;
9)实现以及测试。
我们把整个设计过程应用到软件开发过程中。在传统的软件开发中,流程图是一种概念模型,使得开发者更好地理解问题。在使用VIPLE的面向服务的可视化开发过程中,流程图成为一个数学或者逻辑模型并可被编译成可执行文件,从而去除或者减轻了实现(编程)步骤中将流程图转译成文字形式编码的负担。这种方法不仅可以用于机器人应用,还可用于通用软件开发。现有的几个基于工作流的通用软件可视化编程的开发环境,包括IBM的WebSphere、Microsoft的基于Visual Studio的Workflow Foundation以及Oracle的SOA Suite,帮助开发者绘制各种应用程序的流程图。比如,一个在线的银行系统、一个电子商务系统或者一个图像验证系统。编译器能够直接把流程图编译成可执行文件。与VIPLE工作流类似,链接http://neptune.fulton.ad.asu.edu/WSRepository/Services/WFImage给了一个使用Workflow Foundation的简单图像验证器。
软件工程师的职责是理解问题并开发一个解决方案。编码实现并不是软件工程师的主要职责。高级开发工具并不会减少对软件工程师的需求,但是它减少了对程序员的需求。因为编码(实现)工作可以由高级软件工具自动化实现,但是问题的定义、需求撰写、建模以及分析的工作是无法被工具或者机器替代的。
此外,VIPLE还包含一个基于Unity游戏引擎的3D模拟器以及一个基于HTML5的Web 2D和Web 3D模拟器,使得用户可以在他们的程序加载到硬件平台(机器人)之前进行测试。在模拟环境中开发者可以在软硬件问题混合到一起之前单独测试软件问题。图2-8显示了一个3D Unity模拟器和一个机器人迷宫导航的Web 2D和Web 3D模拟器。Unity模拟器中的红色光线是测距传感器在测量距离。迷宫的墙壁可以通过点击来修改(添加或移除)。在Web 2D和Web 3D模拟器中,迷宫可以在线下准备好并在执行迷宫导航程序之前加载到模拟环境里。
image

VIPLE是一个基于数据编程模型的应用程序开发环境,而不是典型的用于传统编程语言(如C++、Java)的控制流模型,后者会串行执行命令语句。数据流程序更像生产线上的工人,当材料到达时工人就做指定的工作。因此VIPLE很适合机器人应用程序的编程,同样,它也适合各种并发分布式应用。在我们的实验中,将会使用VIPLE来设计电路。
VIPLE可以让初级程序员对变量、数据类型、If/Else语句、循环和逻辑思维等概念有一个基本的理解。但是,VIPLE并不仅限于新手,其编程语言的组成方法可能会吸引更多的高级程序员进行快速原型开发或代码开发。此外,虽然VIPLE的工具箱是为开发机器人应用程序特别定制的,但其底层的体系结构并不局限于机器人编程。比如,VIPLE可应用于游戏、复杂制造过程、控制智能家居设备以及其他设计过程。VIPLE的模拟环境可将现实系统虚拟化,用于物理实现前的测试。因此,VIPLE对于广大的用户都具有吸引力,包括高中生、大学生、兴趣爱好者、研究者,以及Web开发者和职业程序员。
VIPLE是免费的,可从http://neptune.fulton.ad.asu.edu/VIPLE/下载。

相关文章
|
人工智能 算法 IDE
智能化测试新趋势:手淘 AI+IoT 机器人泛终端测试实战
“为模拟真实用户”,Robot-XT 极测机器人提供了为用户体验度量评测的能力,不仅可以最大程度地模拟用户真实操作,还实现了多设备跨终端的功能自动化和用户体验度量。同时,Robot-XT 极测机器人通过 IoT+AI 的智能化技术搭建一套支持多机操作并具备高稳定性的的 UEE 自动化解决方案,实现了覆盖从线上 App 到线下智能门店场景的端到端自动化测试,赋能行业,为软件绿色联盟的加盟 App 提供用户体验评测服务。
641 0
智能化测试新趋势:手淘 AI+IoT 机器人泛终端测试实战
|
机器学习/深度学习 JavaScript 物联网
温湿度计设备通过阿里云IoT物联网套件上报数据到钉钉群机器人实践
温湿度计通过MQTT协议连接到IoT套件,规则引擎针对数据上报Topic配置转发到函数计算(FunctionComputer)中编写好的函数pushData2DingTalk,Nodejs脚本函数处理数据,post到钉钉群机器人
4451 0
|
人工智能 机器人
《中国人工智能学会通讯》——7.33 丰心工程 为情感机器人安上“心脑”
本节书摘来自CCAI《中国人工智能学会通讯》一书中的第7章,第7.33节, 更多章节内容可以访问云栖社区“CCAI”公众号查看。
1020 0
|
数据可视化 机器人 物联网
《计算机科学与工程导论:基于IoT和机器人的可视化编程实践方法第2版》一3.3 在VIPLE中创建计算机系统部件
本节书摘来华章计算机《计算机科学与工程导论:基于IoT和机器人的可视化编程实践方法第2版》一书中的第3章 ,第3.3节,陈以农 陈文智 韩德强 著 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
3171 0
|
存储 数据可视化 机器人
《计算机科学与工程导论:基于IoT和机器人的可视化编程实践方法第2版》一3.2 计算机系统
本节书摘来华章计算机《计算机科学与工程导论:基于IoT和机器人的可视化编程实践方法第2版》一书中的第3章 ,第3.2节,陈以农 陈文智 韩德强 著 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
2256 0
|
2月前
|
传感器 人工智能 监控
智能耕耘机器人
智能耕耘机器人
42 3
|
6月前
|
人工智能 自然语言处理 机器人
智能电话机器人核心技术:自然语言处理
什么是自然语言处理? 自然语言处理是计算机科学领域与人工智能领域中的一个重要方向.它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法.自然语言处理是一门融语言学、计算机科学、数学于一体的科学.因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系,但又有重要的区别. 自然语言处理并不是一般地研究自然语言,而在于研制能有效地实现自然语言通信的计算机系统,特别是其中的软件系统.因而它是计算机科学的一部分. 自然语言处理(NLP)是计算机科学,人工智能,语言学关注计算机和人类(自然)语言之间的相互作用的领域.
|
1月前
|
传感器 人工智能 自然语言处理
智能咖啡厅助手:人形机器人 +融合大模型,行为驱动的智能咖啡厅机器人
智能咖啡厅助手:人形机器人 +融合大模型,行为驱动的智能咖啡厅机器人
智能咖啡厅助手:人形机器人 +融合大模型,行为驱动的智能咖啡厅机器人

热门文章

最新文章