H2003032038_陈玉英_人机接口设备—示波器的仿真实现.doc
【精品】VC++人机接口设备—示波器的仿真实现(源代码+论文)
收藏
资源目录
压缩包内文档预览:(预览前20页/共33页)
编号:1639496
类型:共享资源
大小:551.40KB
格式:RAR
上传时间:2017-08-30
上传人:机****料
认证信息
个人认证
高**(实名认证)
河南
IP属地:河南
50
积分
- 关 键 词:
-
精品
vc
人机
接口
设备
装备
示波器
仿真
实现
源代码
论文
- 资源描述:
-
【精品】VC++人机接口设备—示波器的仿真实现(源代码+论文),精品,vc,人机,接口,设备,装备,示波器,仿真,实现,源代码,论文
- 内容简介:
-
分类号: U D C: 007)6121 级:公 开 编 号: 2003032038 成 都 信 息 工 程 学 院 学 位 论 文 人机 接口 设备 示波器的 仿真实现 论 文 作 者 姓 名 : 陈玉英 申 请 学 位 专 业 : 网络工程 申 请 学 位 类 别 : 工学 学士 指导教师姓名(职称): 羊裔高 (讲师) 论 文 提 交 日 期 : 2007 年 06 月 10 日 人机 接口 设备 示波器的 仿真实现 摘 要 仿真 是 求 解随机问题的技术 。 随着具有存储功能的计算机的出现,计算机仿真技术越来越受到重视,现已被应用于各个领域。本系统主要用于教育领域,形象了演示了示波器的功能,方便了老师的教学。 本文主要描述了仿真技术的基本概念以及仿真技术 ,介绍 仿真技术在现实生活中的应用实例,讨论了仿真理论目前的发展状况 、 前景以及论文研究的目的和意义。 本文所设计实现的基于仿真技术的示波器仿真实验系统是在 +用 库和 +提供的高度可视的应用程序开发工具,在其开发的小型应用程序平台 上实现示波器控制面板的绘制、位图资源的加载,可以分别选择单踪波和双踪波的通道来实现不同波形的动态演示,以及实现双踪波幅值分离的设计实现和波形周期的增加和减小。本文的最后对设计研究工作进行了总结,指出了研究上的不足和系统需要改进的地方,说明了需要进一步深入讨论的内容 。 关键词: 模拟仿真; 随机问题 ; 库; 可视化 is a to of in is of s of in it of as as of in on in is + + FC + + a of of s of of of of of of of 目 录 论文总页数: 29 页 1 引言 . 1 真理论的发展 . 1 算机仿真技术 . 1 算机仿真应用实例 . 2 文的目的及意义 . 2 2 系统的总体设计 . 3 统功能说明 . 3 发运行平台选择及分析 . 3 现系统的硬件环境 . 3 现系统的软件环境 . 4 现系统的理论基础 . 4 3 示波器仿真系统的实现 . 4 用程序平台基本框架的建立 . 4 加消息处理函数 . 6 加成员变量 . 8 加 源 . 9 时器成员函数 . 10 道的选择 . 10 击事件的设计 . 11 线面板的设计 . 14 图资源及其应用 . 14 形刷新 . 16 取设备环境 . 18 射模式 . 19 图工具 . 21 章小节 . 23 4 系统运行结果及工作总结 . 23 统运行结果 . 23 到的问题及解决方法 . 25 统改进方法 . 26 结 论 . 26 参考文献 . 26 致 谢 . 27 声 明 . 28 第 1 页 共 29 页 1 引言 真 理论 的发展 仿真技术最早可以追溯到 1773年法国自然学家 的值 而采用随机数做实验来求解随机问题 。仿真又称做蒙特卡罗方法。比较早而且著 名的蒙特卡罗方法使用者是 在 1908 年以“ 笔名发表论文时,使用了蒙特卡罗方法来证明他的 管蒙特卡罗方法起源于 1876年,但是直到 75年之后才被命名。现代化的具有程序储存功能的计算机使冗长的计算成为可能,而这种计算正式蒙特卡罗所要求的 。 如今计算机仿真技术被广泛运用于众多的领域之中。在国外, 1876 年,美国统计学家第一次使用仿真模拟方法做随机实验。进入 20世纪 80年代,仿真模拟技术在高科技中所处的地位日益提高。一些发达国家非常重视仿真模拟技术的开发利用,在科学 研究 、 工业 、 交通 、 军事 、 教育等领域得到大量应用 。 算机仿真技术 所谓计算机仿真是指在实体尚不存在、或者不易在实体上进行实验的情况下,先通过对考察对象进行建模,用数学方程式表达出其物理特性,然后编制计算机程序,并通过计算机运算出考察对象在系统参数以及内外环境条件改变的情况下,其主要参数如何变化,从而达到全面了解和掌握考察对象特性的目的。 计算机仿真技术是作为分析和研究系统运行行为、揭示系统动态过程和运动规律的一种重要手段和方法。近年来,随着系统科学研究的深入、控制理论、计算技术、计算机科学与技术的发展,计算 机仿真技术已发展成一门新的学科。信息处理技术的突飞猛进,更使得仿真技术得到迅速发展。 一、 计算机仿真的特点 1. 模型参数任意调整 模型参数可根据要求通过计算机程序随时进行调整,修改或补充,使人们能够掌握各种可能的仿真结果,为进一步完善研究方案提供了极大的方便。 2. 系统模型快速求解 借助于先进的计算机系统,人们在较短时间内就能知道仿真运算的结果 (数据或图像 ),从而为人们的实践活动提供强有力的指导。这是通常的数学模型方法所无法实现的。 3. 运算结果准确可靠 只要系统模型、仿真模型和仿真程序是科学合理的,那么计算机的运算结果一 定准确无误 (除非机器有故障 )。因此,人们可毫无顾虑地应用计算机仿真的结果 。 4. 实物仿真形象直观 第 2 页 共 29 页 只要系统模型、仿真模型和仿真程序是科学合理的,那么计算机的运算结果一定准确无误 (除非机器有故障 )。因此,人们可毫无顾虑地应用计算机仿真的结果。 算机仿真应用实例 因工作需要,要求一油缸保持稳定的工作压力,具体参数如下:油缸设定压力 10力允许误差为 15%,蓄能器体积 气压力 2它参数如电机转速、泵排量、缸径、泄露量等皆为已知,图一为该系统的仿真模型,其保压原理是通过检测液压缸内的工作压力 并与设定的压力进行比较从而决定是否启动电机带动泵运行。当对仿真模型中的每个图形模块设置我们所期望的参数值后,运行该仿真模型便可得出多种仿真结果。 1. 压力对比 为了比较采用保压控制和不保压控制这两个方案,仿真的结果告诉我们,由于没有采用保压控制,在泄漏的影响下,系统的压力一直在下降,经过一段时间后,缸内的压力就达不到压力要求了,而采用了保压系统的方案,缸内的压力可以一直维持在要求的压力上。 2. 仿真结果 通过仿真计算,还可以直接做出采用保压控制方案后缸内压力随时间的变化,可以知道:缸内压力建立需要的时间是 25 秒 ,进一步放大图中直线部分,我们可以清楚地看到缸内压力的波动情况,压力波动的振幅为 外我们也可以将电机启动停止情况和压力波动情况绘在一张图上,电机在 100秒的仿真时间内起停了三次。 3. 参数优化 如果需要考察气囊式蓄能器预充气压力对压力波动、压力建立时间及其保压时间等参数的影响,可以利用 真运行模式,分别将预充气压力设定为 图七中可以明显看出:充气压力小时,压力波动值较小,但是压力建立时间长,保压时间短;充气压力高时,压力虽可迅速建立,保压时 间也较长,但是压力波动也较大。因此在产品设计阶段我们可以根据要求在压 力波动、压力建立时间及其保压时间之间折衷以确定最佳的预充气压力 。 文的目的及意义 本系统的目的是利用 进行简单仿真实现的人机交互设备,完成了一个小型的应用程序及 简单示波器仿真系统。论文主要涉及到仿真模拟技术,通过对次系设计开发 对仿真理论的发展及 主要内容有了基本的认识与了解。 通过对仿真系统的设计与实现,笔者熟悉了 的 发模式流程,掌 第 3 页 共 29 页 握了 仿真技术的思想,完成了简单的示波器仿真系统,验证了仿真在连续系统仿真下的可行性。 2 系统 的总体设计 系统设计的基本思想是以 示波器的工作原理为基础,通过 +语言设计 实现完成一个小型的示波器仿真系统。 统功能说明 本系 统是利用 的 库设计搭建的应用程序基本框架,在 其基础上添加一些相关的类和消息处理机制。本系统在运行以后,就可以点击相关的按钮来选择单踪波和双踪波的演示。并在此基础上可以点击相应的按钮来调节波形幅度和波形 周期 ,另外,如果选择的是双踪波的演示,我们可以点击相应的按钮来实现 双踪波的分离, 使两个波的幅度差越来越大。直观上充分的说明了示波器的工作原理 。 功能模块划分 如下 : 图 1 功能模块图 发运行平台选择及分析 本系统是以 合图形可视化 的思想作为系统的开发环境 。 现系统的硬件环境 实现本系统的硬件配置 如表 1 所示 : 表 1 硬件配置 2200+ 内存 12 M 显卡 X 440 第 4 页 共 29 页 笔者所搭建的仅是一个小型的实验模拟系统,因此一般的用户 都可畅通无阻的运行本程序。 现系统的软件环境 +自诞生以来,一直是 +不仅是 C+语言的集成开发环境,而且与 用 +开发系统,可以完成各种各样的应用程序开发,从底层软件直到上层直接面向用户的软件。而且, +强大的调试功能也为大型复杂软件的开发提供了有效的排错手段。 进入 20实际 90 年代以来,随着多媒体技术和图形图像 技术的不断发展,可视化( 术得到广泛的重视,越来越多的计算机专业人员都开始研究并应用可视化技术。 +是一个很好的可视化编程工具,使 用 +环境来开发基于 应用程序大大缩短了开发时间,而且它的界面更友好,便于程序员操作。 现系统的理论基础 +是一个很好的可视化编程工具,使用 +环境来开发基于 且它的界面更友好,便于操作。开发环境是编程者同 +的交互界面,通过它可以访问 C+源代码编辑器、资源编辑器、使用内部调试器,还可以创建项目文件 。 3 示波器仿真 系统 的实现 用程序平台基本框架的建立 笔者使用 合图形 可视化技术实现了 示波器的仿真试验系统。打开+立工程类型为 的对话框文档的新工程 ,系统自动为用户创建 个类 。 创建过程如图所示 : 第 5 页 共 29 页 图 2 创建工程的界面 图 3 选择工程类型的界面 图 4 创建好的工程信息界面 在 的 件目录下有两个对话框,分别为下图所示: 第 6 页 共 29 页 图 5 话框中进行设置,在对话框中添加一个 件和四个 件,然后再在每个 件中添加相应的 纽,结果如图所示: 图 6 添加消息处理函数 为每个按纽创建类向导,右键单击,选择“ 就会出现如图所示的对话框: 第 7 页 共 29 页 图 7 此对话框主要是用来为每个用 志的按纽添加消息处理函数,如对应的 按扭,有两个相应的消息处理函数,如 我们在此工程中用到的是 击有边的添加消息处理函数就可以了,双击相应的消息处理函数名就可以进入 相应的消息处理函数的编辑,如对应的幅值增加按扭的消息处理函数为: ) 对应的幅值减小的按扭 ): ) 在相应的 H 文件中的 声明 ); ; ; ; ; 第 8 页 共 29 页 ; ; ; ; ; ; ; ; ; /) 加成员变量 同样右键 单击“ ,在弹出来的对话框中点击“ ,就可对相应的控件添加相应的成员变量,如图所示 : 图 8 添加成员变量的界面 在相应的 / ; 第 9 页 共 29 页 添加 源 在“ ,展开“ 录,右键单击,选择“ 项,则会弹出以下对话框: 图 9 导入位图资源界面 选择你所要导入的图标所在文件的目 录及相应的图标,然后在“ 录下就会显示刚刚导入的图标,导入之后并设置相应的属性如“ 。添加相应的图标之后,在 件中的 函数中添加以下代码为每个按扭加载图标 /为“幅值增加” /为“幅值减小”按扭设置图标 /为“时间增加” /为“时间减少”按扭设置图标 同时对 象 置标题和度量单位显示的设置 第 10 页 共 29 页 虚拟示波器 );/显示标题 电压 ,伏 );/设置波形显示时的幅值单位 1, 20, 时器 成员 函数 在 件中添加定时器函数 在定时器函数中实现正弦波和余弦波 以及方波的 的波形实现函数 方波的波形实现 : 首先要定义一个 型的变量 用系统提供的一个全局函数 :来获取系统当前的时间,然后把获取的系统当前时间赋值给 因为方波的只有两个逻辑值,那就是低电平和高电平的显示 。所以本文作者在本系统中申明了一个 型的变量 过 取余,即可实现只有 0和 1两种值的功能完整的代码实现: : )/;/对“ 型进行强制类型转换 = 4*();/实现只取逻辑值 0和 1的表达式 余弦波的波形实现 : 余弦波的波形实现与 方 波的实现有些类似,但是在实现正 弦波的时候 ,本文作者需要用到数学中的一个 函数,因此在 文件。但是 ) 函数中的参数是直接获取的系统当前时间 。 完整的代码实现: : )/1 = 5*;/实现余弦波的表达式 上面两个函数的实现中有用到的 和 是作者在数中定义的存放方波和弦波值的一个一 维数组 道的选择 在本系统中,作者用到了三个通道来分别实现单踪波 以及双踪波的选择,在 作者设置了三个 以在实现通道选择的时候,本文作者使用 函数来获取按下的是哪一个按扭, D, D,然后我们再判断 分代码如下: 第 11 页 共 29 页 ; /删除正弦波相关函数,释放内存 ); /随波形的变化增加波形的末断端点 ); /在对话框中产生一个从 变化的 数值 )与 )两个函数的具体实现都可以在 中找到 击事件的设计 在本系统的对话框中设置了 8 个 在本文的前章节中已经讲过了如何为这 8个 加消息处理函数,分别为 , , , , , ,但是在前章节中并没有写如何对消息处理的,点击相应的按扭,都会触使 象中的波形的改变,因此在本系统中,作者 在每个 消息处理函数中都调用了 i)。部分代码如下: ) 0); ) 1); 省略部分 消息处理函数 ) 6); ) 7); 第 12 页 共 29 页 在 i)中 ,用 句来判断按下的是哪个按扭,并写出相应的消息处理 。 部分代码如下: i ) i) :/如果按下的是“ 按 扭,则调节波形的幅值 1&0&00&000) 1000; 0&000; /则 : : +i*10,0,0,0, +i*10,0,0,0,。 形刷新 徒刑刷新是绘图过程中必须考虑的问题,图形刷新包括刷新的请求,系 统对刷新请求的响应以及具体的刷新方法。 第 17 页 共 29 页 1. 刷新请求 首先考虑一种实际情况,应用程序在窗口的用户区绘制了一个椭圆,然后显示一个颜色列表框,用户在列表框上选择椭圆内部的颜色。但是,显示的列表框覆盖了椭圆的一部分。现在的问题是,当用户结束颜色选择操作并关闭对话框后,应用程序将如何恢复椭圆被覆盖部分的颜色和形状 。 此上述情况 可能频繁出现,在窗口大小调整 ,窗口移动或其他对象覆盖后 ,都必须刷新窗口内的内容 ,以恢复用户区内应有的显示形态。但是, 统并不总是记录 窗口内需保存的内容,这样做即不现实又没有必要,系统只能在有限的几种情况下自动刷新。因此应用程序必须具有及时处理刷新请求和刷新响应的功能。 统通常通过发送 息将刷新请求传递给应用程序。当用户区的内容刷新时,系统在应用程序的消息队列中加入该消息,以通知窗口函数执行刷 新处理。 2. 系统对刷新请求的响应 1. 窗口移动后的刷新 窗口移动后的刷新可以理解为下列事件的发生,这时系统将向应用程序发送 用户区移动或显示。 用户窗口大小改变。 程序通过滚动条滚动窗口。 2. 被覆盖区域的刷新 当下面的事件发生时, 备以后刷新。此后如果系统不能有效刷新,则向应用程序发送 下拉式菜单关闭,并需要恢复被覆盖的部分。 因为清除对话框或消息框等对象而需要恢复被覆盖的部分。 对于这种情况,笔者有效的组织应用程序,使其能够 在系统刷新失效时利用窗口处理函数刷新。 窗口被另一个窗口覆盖的区域被称为无效区域。用户区中无效的产生可能导致系统向应用程序发送一条消息。 构,该结构中包含了包围无效区域的一个最小矩形的结构 个矩形称为无效矩形。应用程序可以根据这个无效矩形执行刷新操作。 对象穿越后的刷新 对于下面的对象穿越后的情况, 统自动完成刷新任务,应用程序 第 18 页 共 29 页 不必考虑: 光标穿过用户区。 图标拖过用户区。 因此,为了执行有效的刷新,应用程序必须全面分析 系统可能发送的刷新请求,并根据不同的情况分别处理。 3. 刷新方法 常用的 用程序刷新窗口的方法如下: 在内存中保持 一个显示输出的副本,当需要重绘窗口时,将副本复制到相应的窗口中该方法适用于刷新位图等复杂图形 记录曾经发生的事件,在窗口需要刷新时重新调用窗口执行这个事件 重新绘制图形,一般对于简单图形常采用重新绘制图形方法执行刷新在应用程序中,将图形绘制处理程序放在消息 应模块中,一旦程序接受到刷新请求即可重绘图形 在本系统中 主要是图形的绘制和刷新结合在一起,本系统中的一个 相关例子的代码: dc( ;/重画画面进行刷新 取设备环境 获取设备环境是应用程序输出图形的先决条件,常用的三种获取设备环境的方法是调用函数 a) 调用 数 应用程序响应 息进行突袭功能刷新时,主要通过 调用 形式为: ,定义方式为: 其 定义为如下: /设备环境句柄 第 19 页 共 29 页 / 般取真值,表示擦除无效矩形的背景 /无效矩形标识 /系统保留 /系统保留 2 /系统保留 标准的 据结构,其作用是标识无效矩形,该结构中 包含了无效矩形的左上角和右下角的坐标。 系统调用 数获取设备环境的同时,填写 标识需要刷新的无效矩形区 ,提供给后续过程进一步处理。 由 数获取的设备环境必须用 原型为: b) 调用 数 如果 用程序的绘图工作并非由 息驱动,则需调用形式为: 由 数获取的设备环境必须用 数释放,其原型为 :c) 调用 数 数返回指向特定窗口的客户区域或整个窗口的句柄,它是 扩展,但提供更灵活的操作。它的释放也是用 射模式 映射模式是设备描述表的内容之一,其优点是可以不必考虑输出设备的 坐标系情况,而在一个统一的逻辑坐标系中组成图形的饿绘制与操作,映射模式定义了将逻辑单位转化为设备的度量单位以及设备的 方向。 1. 坐标系统 在 它们大致可以分为两大类 :设备 坐标系统和逻辑坐标系统。 在设备坐标系统中又有三种相互 独立的坐标系统:屏幕坐标系统、窗口坐标系统和拥护坐标系统。这些设备坐标系统均以像素点来表示度量单位。 变像素点只是改变相关的视频模式,而改变度量单位将改变相关的设备描述表。 屏幕 坐标系统使用了整个屏幕作为坐标区域,原点为屏幕原点。 第 20 页 共
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
2:不支持迅雷下载,请使用浏览器下载
3:不支持QQ浏览器下载,请用其他浏览器
4:下载后的文档和图纸-无水印
5:文档经过压缩,下载后原文更清晰
|