软件可视化(精选8篇)
软件可视化 篇1
引言
随着PLC在我国各行业的大力应用和快速发展, 作为煤矿行业技师学院, 承担了煤矿工人的培训工作, 其中PLC的设计、安装、维护的培训日益显出其重要性。
PLC是一门实验性很强的课程, 实验是辅助课堂教学的重要环节, PLC实验要让学生了解各种工业控制流程, 针对各种控制对象, 验证学生所编制的PLC程序是否正确, 但是, 由于受到场地, 经费等诸多客观条件的限制, 不可能在实验室中配置完备的工业控制对象, 因此制约了PLC实验的数量和质量。为了解决这些问题, 可以充分利用计算机技术, 在计算机中构造虚拟控制对象, 通过计算机实现PLC虚拟实验。
本文采用计算机技术和多媒体技术, 建立虚拟工业控制环境, 开发一个PLC虚拟可视化实验系统, 该系统利用多媒体技术建立工业控制环境, 使用串口通讯技术连接PC控制虚拟设备运动, 使用一台PC就可以模拟各种工业控制设备。该系统的另外一个特点是通过逼真的工业控制对象和丰富的交互操作使学生具有更强的真实感和沉浸感。
这种基于多媒体技术的可视化的实验平台能直观、逼真地贴近工业控制实践, 有利于提升学生的实践能力, 同时大大降低PLC实验的费用。
1 系统总体框架
本系统以三菱FX1N系列PLC为基础, 采用计算机技术和多媒体技术, 创建虚拟工业控制对象和设备环境, 通过真实PLC运行程序, 将控制信号发送到虚拟控制环境中, 虚拟控制环境根据控制信号控制虚拟工业控制对象运动, 通过观察运动结果来调试程序, 从而达到PLC实验教学的目的, 本系统的总体框架和解决方案如图1所示。
由图1可知, 整个系统分为以下三个功能模块。
(1) 真实PLC模块。以三菱FX1N系列的PLC为基础, 运行各种控制程序。
(2) 仿真实验模块。用二维图形代表被控工业对象, 通过图形的变化显示控制程序的运行结果。
(3) 通讯模块。实现PLC和虚拟控制对象之间的通讯, 使虚拟PLC的控制信号能够准确、快速地传递给虚拟控制对象。
2 通讯模块
通讯模块实现虚拟PLC与虚拟环境间的信息传递, 这个过程主要是使用VC++编程语言编写的串行口通讯程序实现同硬件PLC的编程口进行通讯。
2.1 PLC编程口命令操作
(1) PLC串口设置。三菱PLC默认的串口通信设置为:数据位7位, 停止位1位, 波特率9600b/s, 偶校检。
(2) PLC通讯命令。在与PLC通讯时, 十六进制数02H为STX代表报文开始, 03H为ETX代表报文结束, O5H为ENQ代表请求, 06H为ACK代表PLC正确响应, 15H为NAK代表PLC错误响应。对PLC操作命令主要有四个, 分别为“读”、“写”、“强制ON”、“强制OFF”。其命令代码如下所示
读:45H 30H
写:45H 31H
强制ON:45H 37H
强制OFF:45H 38H
(3) 握手连络。在每进行上述四种操作命令前, 还要进行“握手连络”, 即PC对PLC发送请求通信信号FNQ (代码为05H) , 等待约0.1s (根据计算机具体情况设置) , 然后读PLC返回的响应信号, 如果读到的响应信号为ACK (代码为06H) , 则表示PLC已经准备就绪, 等待接收通信数据, 否则收到NACK (代码为15H) , PLC没有正确响应, 则终止本次通信。
(4) 通信实例。通信报文的构成由请求、开始、数据、停止、和校验组成, 其中数据部分由命令、操作元件地址、数目、数据四部分组成, 根据命令不同, 具体报文组成有所差异, “强制ON”和“强制OFF”数据部分只由命令和操作元件地址组成, “写”命令数据部分由命令、操作元件地址、数目、数据组成, “读”命令数据部分由命令、操作元件地址、数目组成。
和校验是取报文中的数据部分与停止相累加, 取其和最低两位转化为ASCII码, 高位先发, 低位后发。
现通过一个实例简要介绍通信报文的构成, 例如:强制Y01为ON, 命令的十六进制代码如下所示:
30H 31H 30H 43H操作元件地址, 其中输出寄存器Y01的寄存器地址:0C01H, 转化为ASCII码为30H、43H、30H、31H, 对于2B的寄存器地址采取低字节先发, 高字节后发, 所有最后操作元件地址为30H、31H、30H、43H。
0 3 H代码为ETX结束
5H 33H为和校验, 45H+37H+30H+31H+30H+43H+03H=0153H, 高字节溢出, 低字节为53H, 转化为ASCII码为35H、33H。
3仿真实验模块
仿真实验模块采用多媒体技术, 主要使用FLASH制作软件制作相应的工业设备控制对象和虚拟生产环境, 利用变量的变化控制工业设备的工作状态。充分利用FLASH软件的多媒体制作和显示交互功能, 可以制作逼真的工作环境, 模拟工业设备的控制状态。在VC++平台下使用shockwave flash object控件同FLASH动画交互。
在虚拟工业环境动画中, 所有虚拟工业设备都被设计为动画元件, 工业设备的不同状态由变量值控制。主场景文件设计为三帧动画。第一帧初始化各种变量, 并使用External Interface.add Callback函数把能被外部函数调用函数注册并跳转至第二帧停止。第二帧为主场景, 虚拟工业环境和虚拟工业设备都放置在此帧上。第三帧为结束帧释放各种变量, 显示结束标志并结束程序运行。
Shockwave flash控件可以在Windows平台下播放FLASH动画, 同FLASH动画进行信息交互。在VC++平台下操作如下所示:
(1) 添加Shockwave flash控件类, 在对话框界面上添加Shockwave flash控件, 定义Shockwave flash控件变量。
(2) 在对话框的Init Dialog函数中使用Shockwave flash控件的Load Movie函数和Play函数播放工业环境动画。
(3) 使用Shockwave flash的FSCommand消息函数实现虚拟工业设备控制PLC状态。
(4) 使用Shockwave flash控件的Call Function函数实现PLC状态向虚拟工业设备的状态的传递。
4 结束语
计算机信息技术和多媒体技术应用于可视化虚拟PLC实验教学中, 其特色和创新点如下:
(1) 利用多媒体技术, 实现对工业控制过程的可视化仿真, 使可视化PLC实验系统具有很强的真实感和沉浸感;
(2) 在虚拟环境中, 实现PLC和虚拟控制对象之间的通讯和控制, 使可视化PLC实验具有实时的人机交互。
参考文献
[1]张学军、唐久磊.基于Flash3D的中学化学虚拟实验平台的设计与实现电化教育研究2014.1.
[2]秦兵、何汉武.可视化虚拟PLC实验系统的研究现代制造工程2009.1.
[3]孙鑫、余安萍.VC++深入详解[M].北京:电子工业出版社, 2006.
[4]严蔚敏, 吴伟民.数据结构[M].北京:清华大学出版社, 1997.
不同维度看应用软件可视性 篇2
应用系统的可视性要求以多种方式记录系统正常运行的信息,包括已经执行的步骤并提供一定程度上的运行预测,以使用户确信它是正常运行,称为常态可视性。同时在系统运行出现异常的情况下提供现场信息,并提供问题可能原因分析或问题解决思路提示,为异常情况的解决提供支持,称为异常可视性,类似于飞机的黑匣子。这就要求可视性在软件的构架、设计、实现过程中要比软件业务需求功能部件具有更高的稳定性,绝不应该出现业务功能还在正常运行或刚出现异常而可视性功能却已经失效这样的情况。
2.静态可视性和动态可视性
静态可视性是指在系统已经启动,随时可以提供服务,但暂没有业务处理进行的状态。在应用系统上线之初这种情况特别突出。如果应用系统具有自检功能,可以给出明确的“I AM READY”这样的信号,将会给用户以极大的信心、并得到用户的充分信任;动态可视性指系统在运行过程中始终保持可视,是可视性要求的最基本内容。
3. 运行环境下的可测试性
运行环境下的可测试性是指处在生产状态下的应用系统,为了验证某些功能或问题,按正常的业务操作输入或导入非生产数据(测试或验证数据),以查看系统的处理流程和处理结果是否正常。此处的非生产数据指通过某个特定的标志同生产数据进行区分,例如投保单号的某一位的特定值表示此投保单为测试投保单。系统内部对测试数据的处理完全同普通数据,但是在系统处理出口处会进行屏蔽或专门处理,例如业务统计时会将其过滤;发票和保单打印时可能会使用普通打印纸;在数据流向不具备生产环境可测试性的系统之前将测试数据自动拦截。
4.可视性的时效性要求
根据所展示的信息的时效性要求软件系统可视性可分为实时可视性、前瞻可视性和历史可视性三大类。
实时可视性:实时记录系统运行信息。记录粒度需要进行规划,既要保证最细粒度(如每一个程序变量值的变化)的信息跟踪完整性和效率,同时要保证对主机资源消耗的可控。
前瞻可视性:指对还未执行的操作进行预测或对异常情况进行初步自动分析。从这个角度上可以说应用系统某种程度上具有智能特性。
历史可视性:指对系统已经完成的运行情况进行展示和跟踪、典型的是对程序的运行日志进行管理,例如存储策略、权限管理、查询方式、分析工具等。
软件可视化 篇3
巡航导弹作为一种远程精确制导的高技术武器装备, 已成为以“非接触远程精确打击”为主要特点的新作战思想的重要支柱, 它的出现使战争变得更加复杂。某巡航导弹 (Tomahawk cruise missile) 是一种长程, 全天候, 具有短翼, 以次音速巡航飞行的导弹。1970年由通用动力公司推出服役。某巡航导弹设计上是一种中到远距离, 低空飞行, 并且以模组化设计, 能够自陆地, 船舰, 空中与水面下发射。
本文正是以导弹的攻防作为研究背景, 探讨了在计算机建模中导弹和战场环境的模型建立并得到仿真的战场地形, 为虚拟仿真在军事对抗中的应用提供了参考。
2、Multigen Creator简介
Multigen Creator是Multigen—Paradigm公司的业界领先的软件工具集, 用于产生高优化, 高精度的事实3D内容, 用在视景仿真、交互式游戏、城市仿真和其他的应用。Multigen Creator是一个功能强大、交互的三维模型。Creator强大的建模功能可为众多不同类型的图像生成器提供建模系统及工具, OpenFlight格式在实时三维领域中成为最流行的图像生成格式, 并成为实景仿真领域事实上的行业标准。利用Creator交互式、直观的用户界面进行多边形建模和纹理贴图, 能够很快生成一个高逼真的模型, 并且所创建的三维模型能够在实时过程中随意进行优化。Creator提供的转换工具能够将多种CAD, 3D或动画软件转换成Creator所支持的Open Flight格式。
3、导弹、炮阵及战场环境的Creator建模
3.1导弹的建模
“某”导弹模型的创建过程, 步骤如下:
(1) 在Creator中单击菜单栏上的File/New命令建立一个文件夹zhanfu.flt,
(2) 打开Info/preferences面板, 点击“Flight Tab”按钮, 将默认的单位设置为“Meters”, 所有单位都变为米, 如图1所示。
(3) 先创建某的弹头部。在Object模式下, 选择Face面板中的Ellipsoid按钮 (导弹直径0.52m, 头部长度为0.4m) 设置相关参数, 如图2所示。
(4) 在选择Mod Geom中的Slice命令对生成的椭圆进行切割, 留下其中的一个作为导弹的头部。
(5) 在Object模式下, 选择Face命令面板中的Cylinder按钮并设置一些相关数据 (弹体长5.25m, 单体直径0.52m) , 创建导弹的弹体部分。
(6) 制作导弹进气口:选择Face工具箱中的Polygon Toll命令, 在图中分别点击 (0, 0.2) , (0.2, 0.2) , (0.7, 0) 确定, 用Wall工具将绘制的平面升起20cm。
将绘制的零件拼装, 完成最后的导弹模型。首先将zhanfu节点设置为父节点, 在选择feixingyi节点, 点击Eyepoint Menu命令中的Bottom, 将视角调整到飞行翼的底部。在Maneuver工具箱中选择Put命令, 分别对Origin、Alignment、Third Point三点进行选择, 然后在弹体上为相应的位置进行粘贴, 将飞行翼粘贴到弹体上。再点击feixingyi节点, 使用Duplicate工具箱中的Duplicate命令, 弹出Duplicate对话框, 选择From Point命令点击OK, 复制出一个新的飞行翼及相应的feixingyi节点。在View/Grid Controls视窗中点击按钮调整网格位置。选择新的feixingyi节点, 使用Modleom中的Mirror命令进行镜像。
尾翼的粘贴与飞行翼的粘贴过程相似, 选择Put命令, 分别对Origin、Alignment、Third Point三点进行选择。然后在弹尾上为三点选择相应的位置进行粘贴, 粘贴后的尾翼。
导弹的尾翼是4个呈十字, 因此使用将粘贴好的尾翼用Duplicate命令复制。选择复制的节点“weiyi”, 点击Maneuver工具箱中的Rotate About Point按钮, 弹出对话框。在Rotate About Point对话框中center选择网格中心, angle调整为90点击OK, 复制的尾翼移到其相应的位置。
打开纹理工具箱, 单击3点映射工具按钮弹出的映射工具窗口。设置Origin、Alignment、Third Point三个参考点。完成导弹模型。
3.2高炮的建模
95式自行弹炮合一系统采用了坦克底盘, 上装一个单人炮塔, 炮塔上装备了4门25m m机关炮和4枚“发射后不管”防空导弹。在炮塔两边较低位置处各安装了4个电控烟雾发射榴弹器用以自我保护。机关炮和导弹安装在炮塔外侧。炮塔顶部装有一台CLC-1型脉冲多普勒探测雷达, 最大搜索距离11公里, 据称对武装直升机和低空飞行的飞机有着极强的探测能力。在行军时, 雷达天线可以可以折起倒向前方以减小车身的高度。
首先是基于Creator对95式高炮系统模型的建立, 主要分底盘、炮塔及雷达三部分来建模。在建好高炮模型后, 要对其进行DOF (自由度, Degree-of-Freedom) 节点进行设置, 然后对模型进行纹理映射等处理, 使所建模型更具有真实感, 如下图所示。
3.3战场环境建模的实现
地形可视化仿真应用是一个复杂的系统工程, 从最初确定仿真目标、评估运行平台图形处理能力到最后的仿真系统发布, 中间要经过原始数据的采集、整理和加工、不同数据格式的转换、处理和整合, 三维地形建模数据库的创建、试验和优化、仿真应用程序的设计、调试和测试等许多中间过程。而三维地形模型数据库的创建有是其核心内容, 事实上从最底层看, 三维地形数据库就是一个多边形的集合, 这些多边形能够近似表示部分地球表面状况。
对于一定的地形范围来说, 建立一个组织有序、效率较高、实用性强的地形数据库可以说是一个反复实验的过程,
4、结语
随着信息技术的飞速发展, 三维可视化仿真技术的应用越来越广泛。而由于“最先进”的技术最先在军事上使用, 所以可视化仿真建模技术越来越多的运用在军事领域。无论是日常的模拟军事训练还是对于未来国防建设、国防科技、武器装备的研制等方面, 直观的仿真建模技术将会发挥越来越重要的作用。
摘要:随着信息技术的飞速发展, 三维可视化仿真技术的应用越来越广泛。Creator是一种实时可视化三维建模软件系统, 是实现动态系统建模、仿真的一个集成环境。应用三维建模软件Multigen Creator建立了模仿导弹、飞机、作战地形等的三维模型。在此基础上, 应用Creator实现模拟高炮拦截导弹的建模。
关键词:Creator,导弹拦截,地形建模
参考文献
[1]王乘, 周均清, 李利军.Creator可视化仿真建模技术.2005.TP.552.
[2]王瑞良.“战斧式”巡航导弹.飞航导弹.2003, 8.
[3]罗秋鹏, 高晓光, 杨建国.空战三维视景仿真设计与实现.电光与控制, 2008, 15 (10) :33-36.
可视化软件在物理教学中的应用 篇4
关键词:可视化教学,物理教学,虚拟实验
1 可视化与可视化教学
1987年1月美国科学基金会 (NSF) 组织召开的“科学计算可视化”专题研讨会, 以及会后Mc Cormick等人所发表的“科学计算可视化” (Visualization in Scientific Computing, Vi SC) 报告, 为可视化这一交叉学科的形成奠定了基础。可视化 (Visualization) 亦称科学计算可视化, 即将科学计算的输入过程和计算过程拟人化和形象化, 再采用计算机图形和图像处理技术将计算结果直观形象地显示出来并进行交互处理, 使研究人员能以更直观和客观的方式发现隐藏在数据中的科学规律。它涉及到计算机图形学、图像处理、计算机视觉、计算机辅助设计等多个领域, 成为研究数据表示、数据处理、决策分析等一系列问题的综合技术。科学计算可视化能够把科学数据, 包括测量获得的数值、图像或是计算中涉及、产生的数字信息变为直观的、以图形图像信息表示的、随时间和空间变化的物理现象或物理量呈现在研究者面前, 使他们能够观察、模拟和计算。
可视化教学就是将可视化技术应用于教学, 通常指用科学模拟的方法将抽象的概念直观地表达出来, 把体现本质的现象从纷繁复杂的自然表象中提炼出来, 把难以观察的自然世界模拟出来, 有助于学生直观地感知世界。可视化教学不仅可以呈现客观世界已经存在的现象, 而且能表现人们在现实生活中很难观察到的现象。
2 物理可视化教学的优越性
物理学作为自然科学的基础学科, 在自然科学体系中占有极为重要的地位。由于物理学是一门实验学科, 许多实验过程的发生和进行是人们不便控制的, 内在的物理量变化规律不一定能直观地“看到”;一些有害的、很耗时间的实验在教学过程中很难演示;同时由于实验经费的不足, 使得学生不能接触一些反映先进技术的实验。以上这些现状制约了物理教学的开展。将可视化技术运用到物理学科的教学中, 不但能很好地解决以上问题, 而且还具有很多潜在的优势。
(1) 教师在物理课堂教学中可利用可视化教学辅助抽象概念的讲解, 可利用计算机模拟物理教学中难以用语言描述清楚的教学内容, 使抽象的理论直观化、形象化。
(2) 教师还可以利用可视化的仿真功能组织情境式教学、启发式教学等, 促使教学手段科学化, 推动实验教学的改革。
(3) 与真实情境中的观察、操作相比, 物理可视化教学更为安全、经济, 而且它可以为学生提供现实世界中难以获得的经验, 可以控制模拟过程的进展速度和情境的复杂程度等等。
(4) 物理可视化教学更能激发学习者的学习动机, 使他们投入到积极主动的学习活动中。
3 可视化软件在物理教学上的应用
目前物理教学中常用的可视化软件有Flash、VRML、Java以及Matlab四种。归纳而言, 它们在物理教学中有以下几方面的应用。
3.1 课堂演示
物理课程中涉及的抽象概念一直是学生理解上的难点, 在课堂教学中教师可利用可视化软件模拟教学中难以用语言描述清楚的教学内容, 使抽象的理论直观化、形象化。基于Flash技术开发的可视化教学软件具有界面美观、体积小、可以直接在浏览器中进行操作、图形无极放大不失真、开发周期短、交互性强等特点。但是它生成的实验环境是二维图形, 现实感不强, 数据处理能力较弱, 因此比较适合构建演示型和交互型可视化教学课件, 辅助课堂教学中知识点的演示。目前很多研究者对在物理教学中使用Flash软件开发物理多媒体课件、物理素材库等进行了研究, 出现了众多成熟的产品。
3.2 实验数据处理
在实验教学过程中, 学生实验报告数据的误差普遍较大, 主要存在两方面的原因:一是在物理实验过程中, 通常对数据采用手工处理的方法, 如列表法、作图法、逐差法等。这些方法依靠人的主观因素来完成, 往往随意性强, 因此会引入人为误差。二是有些学生为了完成实验报告, 对实验数据随意改动, 作图时又人为改变绘图比例, 缺乏对数据进一步分析和处理。在实验数据处理中使用Matlab软件, 利用Matlab的计算和模拟功能进行实验结果的处理, 不但能够改变传统的手工处理数据方式, 减少计算工作量, 得到准确的拟合曲线, 而且图形显示结果可以直观地判断计算的准确性。
3.3 构建虚拟实验平台
运用可视化软件可以构建虚拟实验平台, 学生通过该平台可以对实验内容进行预习, 在上课时进行实际操作, 有助于熟悉实验仪器和实验过程, 节省时间, 提高学习效率。在课下重新观察某些忘记了或者没有看清楚的实验内容, 在交互环境中重复尝试, 在试错中学习, 这有助于解决在真实实验中遗留的疑问, 巩固知识, 提高复习效率。同时学生可以通过虚拟实验平台进行理论设计和实践, 多层次、多角度对实验设计和结果进行分析, 然后再回到实验室进行实践检验。这样既节省了实验时间, 解决了实验设备紧张的问题, 又提高了实验效率, 促进了学生创造性思维的发展。
运用可视化软件VRML可以模拟各种实验仪器, 便于学生了解复杂的实验仪器。使用该软件构建的三维实验仪器和场景能够激发学生的学习兴趣, 为学生提供生动逼真的学习环境, 丰富了媒体表现形式, 增强了现实感。但是它的运行需要在Web浏览器或VRML浏览器中, 而且很难通过VRML对实验数据进行处理, 用此技术构建的教学课件仍处于介绍性层次, 学生的参与程度不高。北京师范大学现代教育技术研究所研制的EVlab系统, 是一个基于虚拟空间的三维电子线路实验环境, 目前已初步完成了自激振荡等几个电路模型的设计和编码工作。通过EVlab系统, 学生可以掌握电子线路实验中常见的仪器操作方法, 并对基本实验电路有更加深入的理解。在实现EVlab系统的过程中, 采用了QTVR和VRML两种技术相结合的方法。
基于可视化软件Java开发的虚拟实验平台可以做到操作系统无关性, 同时很多功能可以免开发或实现起来比较容易, 但是平台局限在浏览器中运行。虽然Java技术现在支持三维场景的创建, 但是使用Java3D创建虚拟场景并不容易。和VRML相比, 它的开发周期较长, 也没有VRML技术那么成熟。尽管如此, 用Java开发的虚拟实验平台凭供其网络功能强大、简单、高效的特点, 运用非常广泛, 如2004年美国巴尔的摩的约翰霍普金斯大学教育资源中心发起的基于Java技术的虚拟物理实验室项目。学生通过调节实验参数来观察各种实验现象和实验结果。该实验室的实验程序基于Java Applet技术实现实验界面与仿真算法, 并将其嵌入到网页中, 客户端只需一个集成Java虚拟机的浏览器即可运行仿真。
目前由于Matlab本身功能的强大, 基于Matlab开发的网络虚拟实验平台在实验数据处理和分析方面表现出极强的优势。主要是使用Matlab Web Server组件构建, 服务器端接受客户端发送的实验请求, 分析和处理实验参数, 经过计算后将结果返回客户端;而且, 客户端无需安装实验运行所需的庞大的软件。但是在浏览器端用户不能看到物理现象的动态过程, 实验结果也只能以静态图形呈现, 因此适合构建需要大型计算、对实验结果图形呈现要求很高的可视化教学软件。
4 结束语
在现代教学中, 采用何种可视化软件辅助物理教学, 取决于教师的计算机水平和教学内容。对于计算机水平不高的教师来说, 可以选择Flash软件来制作可视化课件;编程能力较强的教师则可以选择使用Matlab、VRML、Java来辅助教学。不同的教学内容也需要不同的可视化软件, 主要看教学的侧重点在哪里。例如, 有些物理过程强调与学生互动, 制作这类可视化课件时, 可以选择用Flash来制作;如果需要构建网络课件或远程虚拟实验平台, 选用Flash和Java则具有较强优势;有的物理过程需要模拟三维虚拟场景, 可以选择VRML软件来制作;有些实验需要很复杂的计算, 可以选用Matlab软件来编程。可视化软件的选择不应该追求技术的难度, 而是应该根据具体课程的特点, 选择合适的技术。当然, 对于一个优秀的可视化平台不可能只采用一种技术, 只有将多种技术混合开发, 发挥各自的优势, 才能使系统更完善, 更受欢迎。笔者相信, 随着计算机与网络技术的不断发展, 可视化教学的前景会更加灿烂, 必将为深化教学改革发挥不可替代的作用。
参考文献
[1]钟登华, 郑家祥, 刘东海, 等.可视化仿真技术及其应用[M].北京:中国水利水电出版社, 2002.
[2]周明东, 贾敏, 梁敏.物理多媒体课件中Flash动画的使用[J].物理教学探讨, 2006 (15) .
[3]陈传超, 左进红.用Flash构建物理素材库[J].物理教师, 2005 (7) .
[4]程俊静.用Flash制作物理网络课件[J].信息技术教育, 2004 (11) .
[5]李凌云, 王海军, 韩之乃.利用Matlab对物理实验数据进行处理[J].南京晓庄学院学报, 2005 (5) .
[6]车皓阳, 余胜泉, 何克抗.构建基于Web的虚拟实验室[EB/OL].http://www.etc.edu.cn/academist/ysq/design-web.htm, 2005-11-18.
软件可视化 篇5
随着机器人技术教育的蓬勃发展,各地的重点中小学均已开展了机器人兴趣小组活动,有条件的地方甚至已经开始在学生中全面开展机器人教育[1]。与此同时,教育机器人基础开发平台的研究也得到了迅速发展。然而,由于市场上已经出现的各种各样的教育机器人基础开发平台都需要中小学生具有一定的编程基础,而且其界面的操作比较抽象、不易理解,并不完全适合于中小学生使用,给机器人技术的普及教育带来了很多的限制[2]。
针对以上现状,本文利用Visual Basic 6.0软件开发研制了一种开放的、特别适用于中小学生的新型教育机器人辅助开发平台———可视化编程软件。它拥有完全的图形化编程方法[3],只要将编程思路用结构化的流程图搭建起来,软件平台会自动将流程图转化为程序代码,使得用户在设计程序时真正做到不需要了解任何编程语言规范,不用编写一句程序代码,即可实现编程,避免了中小学生要使用开发平台就必须学习高级编程语言的尴尬。程序的下载也很简单,只要在设计完成后点击编译下载的图标就可以完成下载,使软件更易操作。另外,它还拥有动画演示窗口,通过对所编程序的动画仿真,使其编程学习更生动。
2 教育机器人可视化编程软件的界面及应用
教育机器人可视化编程软件的主界面如图1所示,主要由菜单栏、工具条、模块库、流程图编辑区和代码编译区五大部分组成[4]。
本软件主要具有流程图设计、修改和存储、代码编译、动画演示及下载等功能,这些功能都能通过主界面的各种控制来实现。
下面以机器人“先以0.3m/s的速度匀速直线前进5s,再顺时针走弧度为π/2的圆曲线(其半径为1.5m)”为例,简单说明该软件的应用方法和步骤:
2.1 新建应用程序
打开可视化编程软件,选择“文件”菜单中的“新建”项,就会新建一个应用程序。
2.2 流程图的编写
根据机器人要完成的功能,通过添加模块、移动模块、删除模块和连线等操作,编辑好机器人流程图框架“开始—前进—顺1/4圆—结束”(如图1流程图编辑区所示),然后对各模块进行属性设置。
(1)前进模块的属性设置:双击“前进”模块,会弹出属性设置对话框,设置运行时间为5s、速度为0.3m/s。
(2)曲线模块的属性设置:用鼠标右键单击“顺1/4圆”模块,会弹出曲线模块属性设置对话框,设置曲线半径为1.5m、弧度为π/2、速度为0.3m/s。
2.3 转化为汇编语言程序代码
选择“工具”菜单中的“汇编”项,即可自动生成与流程图相对应的汇编语言程序代码(如图1代码编译区所示)。
2.4 动画演示
选择“工具”菜单中的“演示”项,会打开动画演示窗口,其中的车型体机器人会按照流程图的设置进行动画仿真,并描绘出运动轨迹,如图2所示是仿真完毕之后的画面。先睹为快后,如果不满意原来的设计,无需硬件调试即可进行修改。
2.5 编译
选择“工具”菜单中的“编译”项,即可进行程序代码编译。
2.6 保存
编译成功后,选择“文件”菜单中的“保存”项,在弹出的对话框中设置应用程序名,点击“确定”即可。
2.7 程序下载、调试
首先,正确连接计算机与机器人之间的串口线,打开机器人的电源开关。其次,选择“工具”菜单中的“下载”项,点击“发送”就可以将程序代码传入机器人的控制器中。最后,关闭机器人电源开关,断开计算机与机器人之间的串口线,再打开机器人电源开关,调试程序。
3 可视化编程软件动画仿真的实现方法
动画仿真主要包括机器人直线移动的动画仿真和机器人曲线移动的动画仿真。
3.1 机器人直线移动动画仿真的实现方法
机器人直线移动的动画仿真设计中主要利用了图片框PictureBox控件的“显示图像”功能,因此,在动画演示的开发窗体中添加一个图片框控件,相关的属性设置如下:
控件属性Name AutoSize BorderStyle Visible Picture,
属性值Pic1True 0-None True车型体机器人图像。
基于图片框Pic1的AutoSize属性为True的初始设置,可判断Pic1的大小与车型体机器人源图像的实际大小一致,则实现机器人直线移动的动画仿真即可转化为图片框Pic1的直线移动。程序代码如下:
3.2 机器人曲线移动动画仿真的实现方法
机器人曲线移动动画仿真的实现主要涉及两个关键问题:一是机器人每一瞬时位置的确定;一是机器人每一瞬时图像旋转的实现。
由于在VB6.0中没有一种控件能够直接实现图像的旋转,所以本文采取了画点的方法。设计中主要用到了图片框PictureBox控件的“绘图”功能。在绘图时,它的坐标系是以其自身控件的(Left,Top)为坐标原点的,而与窗体无关。另外,设计中主要利用Pset方法(将一个像素点设置为指定颜色)和Point方法(读取指定点颜色)来实现图像任意角度的旋转。下面以机器人“顺时针走π/2圆弧曲线”的动画仿真为例具体介绍其实现方法。
3.2.1 对象属性的初始设置
在机器人直线移动动画仿真开发窗体的基础上,再添加一个图片框控件,相关的属性设置如下:
控件属性Name AutoSize BackColor BorderStyle Visible属性值Pic2 False与窗体背景颜色相同0-None True另外,其Height属性和Width属性都要设置为比Pic1图像框对角线尺寸大的数值,以保证在Pic2图像框中可以描绘旋转任意角度后的图像。
3.2.2 程序设计
为了实现机器人“顺时针走π/2圆弧曲线”的动画仿真,首先使机器人的中心点沿着曲线的轨迹移动,同时保证每一瞬时机器人的移动方向和曲线半径方向垂直,即当机器人中心点沿着曲线走过α弧度时,机器人图像也应绕其自身中心点旋转α弧度(如图3所示)。
(1)机器人每一瞬时位置的确定:如图3所示,设曲线半径为r,起点坐标为(x0,y0),机器人移动了α弧度时曲线上点的坐标为(xi,yi),则:
确定图片框Pic2此时的位置,使其中心点坐标为(xi,yi),即:
(2)机器人每一瞬时图像旋转的实现:假设两图片框的中心点位置重合,其中Pic1为源图片框,用于存放源图像;Pic2为目标图片框,用于存放旋转后的图像。则实现图像旋转的原理图如图4所示。设置图片框Pic1和Pic2坐标系的度量单位都为最小单位———像素。即:
图4中,xoy是以两图片框的中心点O为原点的坐标系,x′o1y′是图片框Pic1的独立坐标系,x″o2y″是图片框Pic2的独立坐标系。点N是图片框Pic1中任意一点,绕其中心点O顺时针旋转α弧度,得到图片框Pic2中的点M,设ON=ρ,则OM=ON=ρ。设(xM,yM)、(xM2,yM2)是点M分别在xoy坐标系和x″o2y″坐标系下的坐标,(xN,yN)、(xN1,yN1)是点N分别在xoy坐标系和x′o1y′坐标系下的坐标。
根据设计原理“将源图片框中图像上全部像素点旋转α弧度后画入目标图片框相应的位置即可实现图像的旋转”,设计机器人每一瞬时图像旋转动画仿真的程序流程图(如图5所示),编写程序代码如下:
4 总结
该教育机器人可视化编程软件中曲线移动动画仿真的实现关键在于:图片框中心点的曲线移动原理和图像旋转的实现。图片框中心点曲线移动的实现关键在于确定每一瞬时曲线上所对应点的坐标;而图像旋转的实现,首先在构建时应预先设置好图像点的坐标变量和旋转角度,再通过坐标系的转换以及极坐标系的应用确定各关键点的坐标值,然后用绘图方法对图像逐点处理,将源图像各像素点逐一复制到旋转后图像相对应的位置。
摘要:本文利用Visual Basic 6.0软件开发研制了一种面向中小学生的新型教育机器人辅助开发平台软件,简单介绍了它的用户界面及应用。采用了基于图片框PictureBox控件“显示图像”和“绘图”的设计策略、Pset方法(将一个像素点设置为指定颜色)和Point方法(读取指定点颜色),实现了图像的移动和旋转,完成了动画仿真的设计。
关键词:教育机器人,可视化编程软件,动画仿真,图像旋转
参考文献
[1]教育部文件.关于在中小学普及信息技术教育的通知[Z].教基[2000]33号.
[2]王吉岱,李维赞,孙爱芹,谢永.教育机器人的研制与发展综述[J].现代制造技术与装备,2007,(2):10-12,31.
[3]郑洪静,王宜怀,刘雪兰.智能小车辅助平台的设计与实现[J].科技信息,2006,(4):4-7.
[4]王吉岱,李庆,李维赞,孙爱芹.教育机器人的可视化编程系统研究与开发[C].第三界全国先进制造装备与机器人技术高峰论坛,2007,10.
[5]王国荣.Visual Basic6.0实战讲座[M].北京:人民邮电出版社,1999.
软件可视化 篇6
参数化Solid Works与非参数化rhino的异同
产品造型中经常使用的3d软件Rhinoceros并不具有参数化功能。它的每一步建模命令都是独立的, 递进的, 不可逆的。它在可视化领域的优势在于所见即所得如图1所示。设计师可以用光标点击生成的模型直接进行编辑。修改某一步中生成的模型, 不会对后续建模和整个模型造成影响。与此之外, rhino软件生成的模型多不含有精确尺寸信息, 尽管模型经过数据处理后也可以用于快速制造。
Solidworks作为一款参数化软件, 是一款精确建模的软件。在建模的过程中, 每一步生成的物体, 都要对它的生成方式 (复制, 阵列, 拔模等) 进行具体规定, 并且输入确定的尺寸参数, 如图2 所示。前后两个步骤所产生的模型存在逻辑关系, 建模的整个过程会被记录下来, 设计师可以通过直接点击模型或点击每个步骤的记录修改参数如图3 所示, 进而改变建模, 修改一个步骤可以影响到其他步骤甚至整个模型。
我们不难发现solidworks作为参数化的建模软件, 对每一步建模命令都有记录和修改的功能。由于它的这些特性, 我们可以在产品迭代时候使用它, 观察改动产品局部参数而对整体产生的影响, 这个过程是可视的, 直观的。于此同时, 也可以用来模拟真实产品的测试分析, 验证产品在装配, 尺寸, 设计方面的缺陷如图4 所示。一旦发现错误, 在相应步骤进行更改, 其结果也应用于后续步骤, 十分方便。
不同方向的参数化solidworks与grasshopper
Grasshopper是rhino中的参数化建模插件。它与solidwork在参数化方面的操作和目的都有不同。通过把各种可视化的命令控件按照逻辑顺序用线链接起来, 并添加参数, 从而生成符合条件的造型如图5 所示。通过滑动可视化的滑块改变模型变量, 可观察它对整体造型的影响。对于工业设计来说, grasshopper可以通过修改变量在短时间内生成大量的, 连续的, 有规律的奇特的造型如图6 所示。
与solidworks相同的是, grasshopper在完成建模后也会留下完整的记录以供调整修改, 而且之中记录是可视化, 图形化的如图7 所示, 我们称之为电池图。通过修改电池图上的电线改变各命令之间的关系, 代替了之前一些软件输入代码或者编程的操作。
结语
Solidworks的应用使得设计师在进行具体的设计时精确控制每一个步骤。 实现了设计过程修改和迭代, 产品虚拟装配测试的可视化。
Glasshopper可以通过滑动滑块, 输入数值的方式, 实现了自动化的建模, 避免了很多重复命令。同时可以生成大量连续的, 不可预测的造型, 为设计师提供了新的创造形态的方法。
软件可视化 篇7
一、可视化技术概述
可视化是一种在屏幕上通过图形图像处理技术,将数据转为图像的手段。它是集计算机图形图像处理、计算机视觉、辅助设计等多个计算机领域的综合技术。可视化技术主要可视化的编程,可视化技术将软件开发过程中的所有操作用计算机图标表示,这样设计人员可以直接点击图标就能完成相应的数据处理,极大的减轻了工作量[3]。
二、计算机图像处理可视化软件设计
在进行计算图像处理可视化软件的设计时,根据计算机软件工程和面向对象的程序设计规则的要求,采用可视化程度相对较高的VC++语言进行编程,编写相互独立的类以及功能代码。下面进行详细介绍。
(一)文档管理
计算机图像处理可视化软件设计中的文档管理需要具备如下四个功能:文档打开,能够打开计算机系统中相关的所有类型数据源,以独立文档的形式打开图像,并确保不会因为图像格式的不同而导致集合问题;文档存贮,必须经过相应的图像结构或格式转换后再存贮文档;文档关闭,能够同时关闭多个图像程序;近期文档,能够方便快捷的对图像文件进行操作。
(二)图像预处理
图像预处理主要是针对各种遥感影像进行预处理,处理后的图像便于后续的研究,具体步骤如下:1)首先对遥感影像进行二值化处理,关键是双阈值二值化和固定阈值。确定阈值后,用计算机可视化软件对处理数据进行统计,再由用户根据其经验来判断。2)对图像可视化的调整,根据用户所要求的对比度与明度,利用VC++的对话框或是特性界面对需要进行处理的图像做可视化调整。同时采用灰度规范、图像直方图和生成直方图来提高图片的处理质量。3)平滑处理,包含三部分:5×5均值模块、3×3均值模块以及3×3中值模块。平滑处理通过控制平滑部位参数来减少平滑噪声对其他区域带来的影响。4)锐化处理。采用微分或算子增强图像边缘跳变部分,让图像变得清晰。5)黑区处理。通过二值处理算法对图像进行收缩膨胀,对区域标记和小区域的消除。
(三)线面目标提取
线面目标提取主要包含面域提取、边缘提取和线条处理三个模块。其中,面域提取是为了对连续外部轮廓的结构和灰度等进行跟踪与处理;边缘提取是按照用户的经验来选择图片,然后用可视化软件提取的结果进行处理,最后用线条处理对图片进行修正;线条处理,采用算子等方法提取目标中心骨架。
(四)在线联机帮助
在线联机帮助主要是为用户提供与可视化软件操作的步骤和功能算法介绍,并通过连接访问阅读获取相关的信息资源,从而帮助用户更好更快的了解到图像处理中的关键内容,并能够对这些内容进行操作,从而加深用户对图像处理的掌握与熟练程度。
三、计算机图像处理可视化软件实现
(一)文档管理的实现
计算机图像处理可视化软件中提供了较为常用的文档管理功能,在利用VC++进行编程设计时,需要选择设置项。
(二)图像预处理的实现
计算机图像处理可视化软件中提供了图像预处理功能,能对选择的阈值做二值化处理,并通过对话框调整图像的明度与饱和度。计算机图像预处理的功能并且目的性强。
(三)线面目标提取的实现
线面目标的提取在计算机图像处理领域研究中得到了广泛的关注。在图像处理过程中,受到成像和空间条件复杂性的影响,想要自动并完整的提取线面目标是比较困难的。因此,计算机图像处理可视化软件中提供了提取线面目标的功能,里面包含多种方法和途径,比如首先可以利用边缘算子找出目标的边缘特性,根据边缘特性做连接处理,从而得到了完整的目标特征。
(四)在线联机帮助的实现
为了方便用户能够更好的了解计算机图像处理可视化软件,为了实现在线联机的帮助,首先必须要利用文本和图形相互结合组织求助主题,并在求助框中显示。求助主题不管是采用文本形式还是图形的形式,它涵盖了跳转特性和标识特性两个外观特性。在求助时可以利用word编辑文本编程或是插入图形文件。如,能在RTF文中插入的文件类型有:具有扩展名.bmp或lib的Windows位图文件;具有扩展名为.wmf的windows元文件;具有扩展名.shg的超图形文件。
四、结论
随着可视化技术的广泛应用,基于可视化的计算机图像处理技术不仅能够直观的展现出地形地貌特征以及植物特征,也能够将自然现象、物理过程或是产品外形模拟出来,拥有此功能的可视化软件具有很大的市场应用前景。
摘要:对计算机图像的可视化处理,可以让人们更为容易的理解复杂度高、深奥难懂的图像处理技术,从而提高对图像处理的能力。本文首先介绍了可视化技术的概念,并在计算机图像理论和算法的基础上,具体阐述了对可视化软件的设计与实现。
关键词:计算机,图像处理,可视化软件
参考文献
[1]闫晓明.解析计算机图像处理可视化软件设计与实现[J].电子制作,2016(4).
[2]田蓉.关于计算机图形图像处理课程教学方法的点滴思考[J].成才之路,2011(32).
软件可视化 篇8
1 Surpac Vision软件的主要特点
1.1 三维图形系统。
Surpac Vision包括了整套三维立体的块体建模工具, 自动绘图功能可以三维方式创建图形, 也可以从旋转的二维图形中得到, 用户可以多角度观察图形。
1.2 二次开发。
Surpac Vision软件中宏命令/脚本语言是整个功能系统的基础, 以Surpac Vision为开发基础, 用户可以开发自己的应用程序, 脚本语言是公共的TCL语言。
1.3 资源共享。
Surpac Vision具有客户服务器结构, 客户就可以在世界上任何地方通过网络来使用这个软件。Surpac Vision的资源共享功能也使得不同地点的多用户可以通过网络和单一用户部门取得联系, 用户可以更方便地获得有关技术专家的技术帮助。
2 Surpac Vision软件与地理信息系统 (GIS)
GIS是反映各类空间数据及描述这些空间数据特征的属性, 在计算机软件和硬件的支持下, 以一定的格式输入、存储、检索、显示和综合分析应用的技术系统。它的基础是地图可视化、数据库系统以及空间分析三者有机的结合, 其核心是利用计算机技术建立图形元素的拓扑关系与建立空间数据库及属性数据库的联动关系[2]。
地理信息系统 (GIS) 的基本功能包括: (1) 准备。收集、数字化、编辑数据; (2) 分析。检验数据, 数据更新, 即产生信息; (3) 管理。永久性的文字、数字式数据、地理数据的管理; (4) 显示。各种图形、报告、报表的输出或屏幕显示。
与传统的GIS软件建模软件相比具有如下优势: (1) 三维可视化矿山工程软件Surpac Vision具有传统GIS建模软件的基本功能。 (2) Surpac Vision软件比传统的GIS二次开发环境:如Arc/Info的AML语言通用语言;Map Info的Map X等, Surpac Vision软件利用TCL语言进行二次开发更简单。 (3) Surpac Vision具有结合专业实际的应用特点, 在矿山开采设计的实用性方面具有很大优势, 如钻孔编录和炮眼设计、矿坑设计、地下开采设计和掘进工程等等。 (4) 软件数据存放、管理都是采用文件方式。
3 Surpac Vision软件在地质建模中的应用
3.1 数据库表的建立。
数据库表是地质数字建模应用的基础。将原始地质编录资料转换成数据库表信息, 包括四个数据库表:钻孔 (孔口) 定位表 (Coller Table) , 钻孔测斜表 (Surey Table) , 岩性编录表 (Geology Table) , 样品分析结果表 (Sample Table) 。四个数据库表相互独立, 但均通过钻孔编号关联。数据库建立后Surpac会自动创建三个基本表Coller, Surey和translation, 这三个表是强制性的, 其中translation表是转换表, Surpac会自动创建和维护, 不需要用户导入数据。用户可以直接查看、编辑、更新数据, 对数据库进行管理。
数据库表建立的技术要求: (1) 坑道或坑探编录转化为线性编录资料, 相当于钻孔资料; (2) 数据格式采用文本或电子表格 (csv带逗号分隔) ; (3) 可以直接与许多流行的数据库相连接, 诸如Access、SQL Server、Oracle、Paradax等任何一种方式来存储和管理地质信息; (4) 建立的四个数据库表均采用英语大小写进行识别。
3.2 实体建模。
实体模型从地理信息系统角度讲属于三维数据的三角网。它用来描述三维空间的物体, 是三维模型的基础。可以快速的描述物体的轮廓、计算物体体积和表面积、任意方位的切割剖面、空间约束、体之间和体与面之间的交差运算等等。
实体模型是根据勘探线剖面中的数据化的矿体边界, 将一系列勘探线上对应矿体的剖面线连成三角网, 封闭两端或尖灭矿体, 即成矿体的三维实体模型 (见图1) 。
在Surpac Vision软件环境下, 矿体的三维实体模型实际上是由许多相互不交叉、不重叠的三角面构成。因此, 组成实体的各三角面不存在自相交、无相邻边、重复边、无效边, 否则必出现重复连接或未封闭等问题。反复验证符合约定条件后, 才能称得上有效实体, 进行实体表面积和体积计算。
进行实体建模时应注意以下几个方面的问题: (1) 同一矿体必须是统一的三角网号和统一体号; (2) 矿体形态不规则的借助辅助线连接矿体可以大大节省工作时间; (3) 所连实体不能存在开放边, 可以通过显示功能找到开放边, 借助辅助线进行实体封闭; (4) 复杂的矿体将其分解, 对贫矿、富矿、表外矿石进行分解, 降低实体的复杂程度; (5) 对CAD图件进行处理时坐标一致, 转换时注意空间位置和方向与相邻的矿体围岩方向一致。
3.3 块体建模。
在Surpac Vision软件环境中, 块体模型是块体与地质统计学相结合, 应用数学方法对品位分布进行建模, 即实现三维地学模型 (3-Dimension Geoscience Modeling, 简称3DGM) 。三维地学模型建设就是为了解决地学领域中遇到的三维问题而提出来的[3]。它实际是地质数据库的一种形式, 可以存储和操作数据, 还能修补来自数据中的信息, 这和传统的数据库有所不同, 存储的数据更像内插替换一个值, 而不是度量一个值。
块模型的组成部分是块体单元, 每一个块体单元都和一个记录相联, 这个记录以空间作为参照。通过建立块体模型可以为每个块体赋值品位、储量、岩性等地质信息, 通过为块体赋予属性来实现显示矿体品位特征、单元块体体积、密度等, 并达到建立矿体属性相关性分析的目的。
在建立块体模型的过程中, 需要建立块体约束条件, 即在一个范围内 (矿体编号、矿石化学分析元素符号、字符、固定值等) 对模型进行估值, 把其控制在圈定的矿体边界内, 实现块体与数据库中的化验数据结合的目的, 最终实现对单元块的赋值, 这样就基本建成矿体数字块体模型, 显示矿体三维空间品位的变化、富集规律。在块体模型中, 我们可以按不同的边界品位绘制任意方位的剖面图和任意中段的平面图, 也可以按不同的品位分色显示贫富矿体的分布位置和形态 (见图2) 。此外, 应用块体模型, 我们也可以分标高、分矿块、分采场、分矿石类型、分品位等级的报告矿床资源量、矿床品位、金属量, 输出相关地质储量资料, 为传统地质储量估算提供依据。
4 结论
通过Surpac Vision软件矿山企业可以建立自己的矿山原始地质资料数据库, 根据需要随时进行数据的编辑和查询, 建立三维可视化实体模型和块体模型达到对矿体的变化性进行了分析研究, 实现对矿山生产的动态管理。实现矿产的综合开发利用, 为提高矿产资源开发的社会经济消息提供了科学依据, 给企业今后的发展构建了一个综合信息平台。
参考文献
[1]李海华, 张瑞新.应用Surpac软件进行露天矿采矿工程的可视化[J].中国矿业, 2004, 13 (1) :64-65.
[2]吴立新, 张瑞新等.三维地学模拟与虚拟矿山系统[J].测绘学, 2002, 31 (1) :28-33.