




已阅读5页,还剩82页未读, 继续免费阅读
(测试计量技术及仪器专业论文)基于vc与opengl数控仿真系统的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南京邮电学院 硕士学位论文摘要 学科 专业 工学测试计量技术及仪器 研究方向 迹这二塾性塑 达 作 题目 基于v c 与o p e n g l 数控仿真系统的设计与实现 英文题目 d e s i g na n di m p l e m e n t a t i o no fn cs i m u l a t i o ns y s t e m b a s e do nv ca n do p e n g l 主题词 v c o p e n g l 数控仿真 海量数据 k e yw o r d s v c o p e n g l n cs i m u l a t i o n m a s s i v e d a t a 南京邮电大学硕士研究生学位论文摘要 摘要 近年来 随着生活水平的提高 人们对满足审美要求的各种复杂工艺品的需求出现前 所未有的增长 传统的工艺品生产 设计与制造 是一种手工技艺 存在很多不足 例如 劳动强度大 n i 周期长 生产效率低 总体成本高 制作精度差 不能批量生产 受操 作者的主观因素影响较大等 不能满足人们对工艺制造行业提出的新需求 而计算机仿真 技术的迅猛发展为这一难题带来了极大的便利 本文基于数控技术的理论 应用面向对象 的v i s u a lc 作为前台开发工具 基于o p e n g l 的几何图形平台 重点设计研发了可以应 用于数控领域的扫描仿真软件系统 在完成扫描仿真基本功能的基础上 结合本课题中扫描数据的特征分析 针对海量数 据读取问题的解决办法进行了相关的研究 提出了海量数据快速读取和管理的几种方法 为系统提高了数据导入的效率 增加了该系统广泛运用的可行性 本课题开发的软件仿真平台全部在m i c r o s o f t 公司的v i s u a lc 抖6 0 平台上编译通过 并且已经投入了市场的生产过程中 并取得了令人满意的成效 同时也验证了本文中所采 用的方法的可行性 关键词 v c o p e n g l 数控仿真 海量数据 气 南京邮电大学硕士研究生学位论文 a b s t r a c t i i i i l o o o a b s t r a c t i nr e c e n ty e a r s w i t ht h ei m p r o v e m e n to fl i v i n gs t a n d a r d s p e o p l e sr e q u i r e m e n t so f m a n y k i n d so ft h ec o m p l e xa r t sa n da 蕊t h a tm e e tt h e a e s t h e t i cn e e dh a v eb e e n g r o w i n g u n p r e c e d e n t e d l yg r o w t h b e c a u s eo ft h a tr a d i t i o n a l a r t sa n dc r a f t sp r o d u c t i o n d e s i g na n d m a n u f a c t u r i n g i sam a n u a ls k i l l t h e r ea r em a n ys h o r t c o m i n g s s u c hf i t sl a b o r i n t e n s i v e l o n g p r o c e s s i n gc y c l e l o wp r o d u c t i v i t y h i g l lo v e r a l lc o s t s l o wp r o d u c t i o na c c u r a c y n o tm a s s p r o d u c t i o n h a v i n gag r e a t e ri m p a c tb yt h eo p e r a t o r ss u b j e c t i v ef a c t o r s a n ds o0 1 1 f o rt h e s h o r t c o m i n g sa b o v e i tc a nn o ts a t i s f yp e o p l e sn e wr e q u i r e m e n t sa c c o r d i n gt o t h ep r o c e s s m a n u f a c t u r i n gi n d u s t r y t h er a p i dd e v e l o p m e n to fc o m p u t e rs i m u l a t i o nt e c h n o l o g yb r i n g sg r e a t c o n v e n i e n c ef o rt h i sp r o b l e m t h i sp a p e rf o c u so nd e s i g n i n ga n dr dt h es c a n n i n gs i m u l a t i o n s y s t e mt h a tc a nb ea p p l i e dt on c n u m e r i c a lc o n t r 0 1 a r e a b a s e do nt h et h e o r yo fn ct e c h n o l o g y a n dt h eo p e n g lg e n o m e t r yp l a t f o r m t a k i n gt h eo b j e c t o r i e n t e dm e t h o da n dv i s u a lc d e v e l o p m e n tt o o la saf r o n t u p o nt h ec o m p l e t i o no ft h eb a s i cf u n c t i o n so fs c a n n i n gs i m u l a t i o n b a s e do nt h ea n a l y s i so f t h ec h a r a c t e r i s t i c so fs c a n n e rd a t a t h es o l u t i o n st ot h ep r o b l e mo ft h em a s s i v ed a t aa c c e s s i n g w a sr e s e a r c h e di nt h i sp a p e r a n di ts u b m i t t e ds e v e r a lm e t h o d sf o rq u i c kr e a d i n ga n d m a n a g e m e n tt h em a s s i v ed a t a i no r d e rt oi m p r o v et h ee f f i c i e n c yo fd a t ai m p o r tf o rt h i ss y s t e m a n di n c r e a s ei t sf e a s i b i l i t yf o rw i d e l yu s e d t h i ss o f t w a r es i m u l a t i o np l a t f o r md e v e l o p e di nt h i sp a p e ra r ea l lc o m p i l e ds u c c e s s f u l l yo n v i s u a lc 6 0p l a t f o r mb ym i c r o s o r a n di t g e n e r a t e das a t i s f i e dr e s u l t v a l i d a t i n gt h e f e a s i b i l i t yo ft h em e t h o du s e di nt h i sp a p e ra f t e rp u t t i n gi n t ot h ep r o d u c t i o np r o c e s s i n go nt h e m a r k e t k e yw o r d s v c o p e n g l n cs i m u l a t i o n m a s s i v ed a t a i i 南京邮电大学硕士研究生学位论文目录 目录 摘要 i a b s t r a c t i i 目萄乏 i u 第一章绪论 1 1 1 选题背景及研究意义 1 1 1 1 选题背景 1 1 1 2 研究意义 2 1 2 国内外研究现状 2 1 3 论文的主要工作和结构安排 3 第二章数控仿真系统的总体设计 5 2 1 引言 5 2 2 系统需求分析 5 2 3 系统开发工具的选择 7 2 3 1 面向对象编程 7 2 3 2 开发软件和几何平台的选择 8 2 3 3 运动控制芯片p c l 6 0 4 5 9 2 4 系统总体框架结构 1 1 2 5 本章小结 1 3 第三章海量数据读取方法的关键技术研究 1 4 3 1 引言 14 3 2 三维数据获取方法 1 4 3 3 海量数据的快速读取的解决方法 1 6 3 3 1 内存映射文件技术 1 6 3 3 2 虚拟内存技术 18 3 3 3 多线程技术 1 8 3 3 4 基于o p e n g l 的显示机制 1 9 3 4 海量数据的管理方法 2 1 3 4 1 带状和块状划分 2 2 3 4 2 三维划分 2 2 3 4 3 八叉树模型 2 4 3 5 数据分块算法分析 2 5 3 6 本章小结 2 8 第四章o p e n g l 三维图形编程 2 8 4 1 引言 2 8 4 2 0 p e n g li 作流程 2 8 4 3 0 p e n g l 建模 3 0 4 4 0 p e n g l 变换 31 4 4 1 几何变换 3 2 4 4 2 投影变换 3 5 4 4 3 视口变换 3 6 4 5 用v c 6 实现o p e n g l 编程 3 6 4 5 1 v c 与o p e n g l 的接口建立 3 7 4 5 2 像素格式的设置 3 7 4 5 3 绘制描述表的创建 一4 0 i i i 南京邮电大学硕士研究生学位论文目录 4 5 4 背景清除 4 1 4 5 5 删除绘制描述表 4 1 4 6 本章小结 4 2 第五章三维数控仿真系统的开发及实现 4 3 5 1 弓i 言 4 3 5 2 数据的接收和存储 4 3 5 3 文件子菜单模块 4 7 5 4 操作子菜单模块 4 9 5 3 1 常见参数设置 5 0 5 3 2 基本参数设置 5 1 5 3 3 间隙补偿设置 5 4 5 3 4 扫描的启动与停止 5 5 5 5 视图子菜单模块 5 7 5 5 1 数据解析功能 5 7 5 5 2 绘制显示功能 5 8 5 5 3 视图变换和定位功能 6 0 5 6 手动窗口设置模块 6 5 5 7 仿真实例 6 6 5 8 本章小结 6 8 第六章总结与展望 7 0 6 1 论文总结 7 0 6 2 今后展望 7 0 参考文献 7 2 j l 定谢 7 5 在学期间发表的学术论文 7 6 i v 南京邮电大学硕士研究生学位论文第一章绪论 1 1 选题背景及研究意义 1 1 1 选题背景 第一章绪论 数控仿真是指数控在虚拟环境中的映射 它集数控理论 计算机辅助设计 c a d 计 算机辅助制造 c a m 和建模与仿真技术于一体 人能够凭直觉感知计算机产生的三维仿真 模型的虚拟环境 在设计新的方案时能够在真实制造之前在虚拟环境中进行零件的数控加 工 检查数控程序的正确性 合理性 对加工方案的优劣做出评估与优化 从而最终能够 缩短产品开发周期 降低生产成本 提高产品质量和生产效率 数控加工仿真过程就是借助计算机 利用系统模型对实际加工系统进行实验研究的过 程 数控加工仿真的过程可通过图1 1 所示的要素间的三个基本活动来描述 图l 一1 要素l 司的三个基本活动 建模活动是通过对实际系统的观测或检测 在忽略次要因素及不可检测变量的基础 上 利用物理或数学的方法进行描述 从而获得实际系统的简化近似模型 这里的模型同 实际系统的功能与参数之间应具有相似性和对应性 仿真模型是对系统的数学模型 简化 模型 进行一定的算法处理 使其成为合适的形式 如将数值积分变为迭代运算模型 之后 成为能被计算机接受的 可计算模型 仿真实验是指将系统的仿真模型在计算机上运行 的过程 l 2 随着计算机技术的进步 仿真技术也得到迅速发展 其应用领域日益广泛 尤其在航 空 航天 国防等领域的大规模复杂系统的研制开发过程中 计算机仿真一直是不可缺少 的工具 在从产品的设计到制造以至测试维护的整个生命周期中 计算机仿真技术贯穿始 终 另外在减少损失 节约经费 缩短开发周期 提高产品质量等方面 计算机仿真技术 也发挥了巨大的作用 从发展的历程来看 仿真技术应用的领域从传统的制造领域 生产 计划制定 加工 装配 测试 正向产品设计开发和销售领域扩展 南京邮电大学硕士研究生学位论文 第一章绪论 1 1 2 研究意义 在数控仿真的理论基础上 本文将重点研究开发三维扫描的仿真实现 其目的最终将 运用到数控加工的市场运作当中 实现对象主要针对复杂的手工艺品 中国博大精深的文 化造就了许许多多精美的手工艺品 而这些手工艺品都是经过手工雕刻而制成 传统的工 艺品生产 设计与制造 是一种手工技艺 存在很多不足 例如劳动强度大 加工周期长 生产效率低 总体成本高 不能批量生产 受操作者的主观因素影响较大等 不能满足人 们对工艺制造行业提出的新需求 伴随着人们生活水平和精神文化追求的提高 仅仅依靠手工雕刻生产 无论从精度或 是效率上都已不能满足社会的需求 国内外有很多c a d c o m p u t e r a i d e dd e s i g n 计算机辅 助设计 4 软件无法设计出中国精美的工艺品 因此只能靠将手工艺者雕刻出来的成品 进 行扫描 得到手工艺品的三维坐标 然后在c a m c o m p u t e r a i d e dm a n u f a c t u r i n g 计算机 辅助制造 4 1 软件中将三维坐标生成需要的代码 进而再通过c n c c o m p u t e rn u m e r i c a l c o n t r o l 计算机数字控制机床 系统 3 进行加工 得到所需要的成品 通过计算机仿真技术对这些复杂工艺品进行设计与生产 不仅可以使生产效率和产品 的加工质量得到提高 而且可以扩大需求 发扬中国文化 有利于社会的进步和发展 1 2 国内外研究现状 c a d 技术在6 0 年代末随着计算机及外设的发展而产生 从最初的2 d 绘图系统 经 历了3 d 线框 曲面模型和实体模型 直到现在的参数化特征模型 在这期间 产品模型 的真实感 工程分析和特征计算等也得到了迅速发展 随着信息与通信技术 多媒体技术 和人工智能专家系统的实用化 随着c a d c a m 技术的普及应用越来越广泛和深入 c a d c a m 技术正朝着开放 集成 并行 智能化和标准化的方向发展 国外c a d c a m 技术经历了三十多年的发展 已经广泛应用于机械 电子 航空 汽 车等众多行业 也出现了不少商品化c a d c a m 软件 这些国外的软件占据了c a d 软件 市场的7 0 以上的份额 每年的销售额数百亿美元 较著名的有美国的p t c 公司的 p r o e n g i n e r e d s 公司的u n i g r a p h i c s c a t i a u g i d e a s e u c l i d 等 然而 c a t i a p r o e n g i n e r u g 等几个国际上最流行的c a d 软件 都无法对海量数据直接进 行处理 而测量得到的网格数据由于产品尺寸 拓扑等各种原因在绝大多数情况下都是经 2 南京邮电大学硕士研究生学位论文 第一章绪论 过多次测量拼接后得到的海量数据 因此 对于广大的c a d 软件的使用者 需要能对海 量数据进行相应的处理 5 1 国外三维扫描设备目前己有较多的产品广泛应用于机械加工 数字城市建模等领域 根据扫描仪使用方式和应用领域又分为手持式 台式 地面以及机载扫描仪等 欧美精度 最高的台式扫描仪扫描精度可以达到十几个微米 得到的点云密度甚至超过人眼的分辨 率 工作时同时使用三色激光扫描得到真彩色点云数据 美国c y r a x 系统就是较为典型 的3 d 扫描系统 其集成了数据采集 管理和建模 为方便c a d 数据的导入 德国已研制 出p o i n tc l o u d 管理海量数据 然而对于对复杂工艺品加工的仿真系统来说 普通的c a d c a m 软件并不能满足需求 目前来说市场上比较流行的商业化数控雕刻c a d c a m 软件主要有法国的t y p e 3 英国的 a r t c a m 美国的m a s t e r e a m a r t 这些软件都支持复杂工艺品的设计 加工和仿真 其优秀 的处理效果和对雕刻领域各种功能的广泛支持 使这些软件拥有广阔的市场 其他国外的 数控雕刻c a d c a m 软件还有c a s m a t e g r a v o s t y l e v c a v e e n r o u t e a r t c u t 等 国产 数控雕刻c a d c a m 软件屈指可数 主要有文泰雕刻 j d p a i n t c a x a 雕刻1 6 1 7 1 这些 软件和国外同类产品相比较 无论在功能上还是通用 易用性上均存在一定的差距 1 3 论文的主要工作和结构安排 本课题来源企业合作项目 结合工程实际需要 主要从数据读取方法和三维扫描仿真 工程应用两方面展开工作 在算法方面 针对点云数据处理中海量数据的特征 研究了如 何快速读取数据 以解决数据导入效率的问题 这里的点云数据本身只包含空间点坐标 没有其它信息 在工程应用方面先使用三维扫描仪完成数据采集 再结合相关v i s u a l c 6 0 开发工具和基于o p e n g l 图形平台的计算机仿真技术 研发出了三维数控扫描仿真系统 论文的主要结构框架如下 1 第一章绪论 阐述了选题的背景和研究意义 介绍了国内外研究现状 最后给出了论文的主要内容 和完成的工作 2 第二章数控仿真系统的总体设计 根据系统的需求分析 介绍了该仿真系统的总体框架结构 为后面详细阐述奠定基础 3 第三章海量数据读取方法的关键技术研究 针对扫描数据量庞大的问题 对其解决方法进行了相关的研究 如内存映射文件技术 虚拟内存技术以及多线程技术 旨在提高数据导入的效率 3 堕邮电大学硕士研究生学位论文 第一章绪论 4 第四章o p c n g l 维图形编程 介绍y c p e n g l 的基本工作流程和三维图形编程原理 5 第五章三维数控仿真系统的开发及实现 依据v i s u a l c 的基本原理 数据解析绘制的基本原理和基于o p c n g l 的显示理论 结合具体的实现代码说明仿真过程 6 第六章总结与展望 对本论文所作工作进行了总结 并就系统会出现的不足之处提出了可能的解决方案 对该项设计作了展望 4 南京邮电大学硕士研究生学位论文第二章数控仿真系统的总体设计 第二章数控仿真系统的总体设计 2 1 引言 对于像数控仿真系统这样复杂系统的研究 传统的面向过程的方法 如结构化方法 功能分解方法等 以很难满足其要求 将面向对象技术引入数控仿真系统的研究与开发中 将提高数控加工过程仿真系统研究的质量 现代仿真技术的发展趋势之一就是面向对象 本系统是以v i s u a l c 6 o 8 开发环境为支撑 运用可视性和面向对象的程序设计方法开发 的一个具有w i n d o w s 界面支持的三维扫描仿真系统 其外围硬件组成如图2 1 所示 图2 l 扫描仿真系统的外围硬件组成 图2 1 中 机床主要负责机械运动 此机床为3 轴运动 即由x 轴 y 轴和z 轴组成 实际扫描时通过移动这些轴来满足扫描所需的条件 扫描头主要负责采集模拟量 即根据 物体表面高度的不同反馈不同的电压 然后把采集得到的电压送到系统主板进行处理 系 统主板通过接受上位机的命令 来执行相应的程序 这些程序包括控制机床移动 接收扫 描头来的数据 转换数据及发送数据到上位机 上位机和系统之间通过串口连接 用于收 发数据 上位机 计算机 有专门的软件系统 用来发送不同的命令 使机床完成不同的 操作 该软件系统便是本文中的扫描仿真系统 2 2 系统需求分析 需求分析是该扫描仿真系统设计的第一阶段 这一阶段的目标是 对数控机床中扫描 头的相关参数 以及所要扫描的对象进行进行详细的调查 分析和归类 在了解系统的总 体概况 确定各模块的功能的过程中 收集支持系统目标的数据及其处理的流程 为以后 进一步设计打下基础 通过对扫描对象的分析 需求分析主要解决三个问题 5 南京邮电大学硕士研究生学位论文第二章数控仿真系统的总体设计 1 对象特征 本课题中所要用到的对象均为一些复杂的工艺品 例如浮雕等 若要对 其进行扫描仿真 首先为其建立在计算机平台上的模型 为了在扫描仿真时突出其结构特 点 就需要在扫描时获取其三维数据信息 并针对其数据特征进行分析处理 2 内容要求 除了仿真对象本身的数据 本系统中还包括用户所需要操作的数据 这 些数据包括扫描头扫描物体时在各个方向上的速度设置 不同视图方向上的变换设置 背 景颜色设置以及扫描的方法选择设置等 3 处理要求 调查应用系统用户要求对数据进行什么样的处理 理清各种数据之间的 关系 用户要求提供友好的界面和工具 对扫描的各个参数可以进行直观的管理与设置 包括文件的添加 删除 保存等 用户可以通过界面自定义不同的视图变换方向 扫描速 度 以及背景颜色 仿真出自己想要的图形 综合上述两个方面的问题 在需求分析后 在设计框架方面所做的工作有 1 上 下位机之间的命令传送 这里的上位机指的就是计算机 下位机指的是机床控 制系统 它们二者之间的命令传送问题也就是界面上的参数设置如何发送到下位机 并控 制机床按照用户的设置进行操作 反之亦然 2 系统主要类的划分 系统用v c 在w i n d o w s 2 0 0 0 平台上开发 系统的主要框架继 承了m f c 类结构体系 采用v c 的a p p w i z a r d 自动生成系统的基本框架 根据数控仿 真系统的情况 我们选用的是基于单文档单子窗口的框架结构 v c 抖自动生成的类主要 包括有应用程序类 框架窗口类 文档类和视图类 在开发过程中主要对自动生成的框架 窗口类和视图类进行修改和扩充 以及对工程中添加自定义的类 大致包括以下几种 用 v i s u a lc 6 0 实现o p e n g l 编程的接口类 c o l 实现串口通信的串口控件类 c m s c o m m 实现手动设置的手动窗1 3 类 c d l g m a n u l l n f o 基本参数设置的对话框类 c t e s t d l g 扫描 参数设置的对话框类 c s e t t i n g d l g 等 在以上的基本功能已被定义了的基础上 还需要考虑到一些性能上的需求 主要包括 以下几个方面 1 稳定性 本系统涉及到扫描数据量的问题 因此尽可能优化数据读取和存储方案 提高运行效率 减少诸如死机之类的问题产生 2 易使用性 在系统界面设计时 必须以友好的界面呈现给用户 考虑增加各项常用 功能工具条 要求界面设计美观 通用性强 并为系统使用用户提供详尽的帮助文档 6 堕室坚皇查兰堡主堡壅竺兰篁笙奎兰三童望篓堡壅墨堕箜璺签丝盐 3 准确性 在仿真出来的图形涉及到与原图形是否吻合的问题 因此需要尽可能的去 优化绘制显示的算法 提高扫描精度 2 3 系统开发工具的选择 2 3 1 面向对象编程 本系统拟采用c 9 1 语言开发 它是一种面向对象的编程技术 c 语言功能强大 它通过提供类的方式来支持o o p 类是一种结合了数据及算法的数据类型 对于各种复杂 应用功能提供全面支持 故被广泛采用 面向对象的程序设计 o b j e c t o r i e n t e dp r o g r a m m i n g o o p 1 是当今流行的一种功能强 大的编程技术 所谓对象就是一个或一组数据及处理这些数据的方法和过程的集合 面向 对象程序设计的主要特点是抽象性 封装性 继承性和多态性 抽象性允许忽略实施细节 而从更高的等级上考虑一个实体 对过程的抽象形成对象的方法 对数据的抽象形成对象 的属性 封装性实际上是把数据和处理这些数据的方法和过程集中到一个相对封闭的集合 筝 中 只有通过对象自身的函数才能访问这些数据 继承性是在类 子类和对象之间自动共 享函数和数据的一种机制 使程序可以在已有对象基础上发展出新的功能更强的新对象 t 多态性指对于同一个过程 可以在不同的地方 不同的对象等级中 使用不同的代码实现 允许相关对象对同一消息做出不同但适宜的反应 这些特性增强了代码的可重用性并使其 易于维护 更能适应变化的商业要求 面向对象的编程采用了结构化的编程思想 并把它们与几个以新的方式达到编程任务 的新概念相结合 面向对象编程的特点在于突破了原来的过程式编程模式 提出了对象这 样一个集合概念 而将被操作的数据和操作函数作为它的属性和行为 在面向对象的程序 中 对象的属性不能由外部直接存取 而是由对象的行为直接操纵 当对象接受一个信息 时 就引用对象的行为 动作 这样一个应用程序乃至整个计算机都成为一个对象的集合 体 对象彼此之间通过消息相互作用 程序具有良好的模块化结构 维护更具方便性 在 分析阶段 编程人员主要考虑如何定义程序中的各种数据类 怎样利用类的继承使类的定 义中冗余代码量最少 怎样利用类的封装性 使数据得到保护 而不是像以往传统的结构 化设计那样 系统分析阶段主要考虑如何划分功能模块 各个模块完成什么工作 南京邮电大学硕士研究生学位论文第二章数控仿真系统的总体设计 2 3 2 开发软件和几何平台的选择 本系统在开发平台的选择上主要基于v i s u a lc 6 0 软件开发工具和o p e n g l 开源的 图形开发平台 1 v i s u a lc 开发平台 v i s u a lc 6 0 是m i c r o s o f t 公司推出的目前使用极为广泛的 基于w i n d o w s 平台的可 视化编程环境 采用了全新的平面化操作界面 它集界面设计 代码编辑 编译 连接和 调试等功能于一体 可以快速简洁地开发出功能强大的 充分满足用户需要的应用软件 v i s u a lc 作为一种程序设计语言 它同时也是一个集成开发工具 提供了软件代码 自动生成和可视化的资源编辑功能 在使用v i s u a lc 卜十开发应用程序的过程中 系统为我 们生成了大量的各种类型的文件 m i c r o s o f t 的基本类库m f c 使得开发w i n d o w s 应用程序 比以往任何时候都要容易 可在v i s u a lc 环境下 利用微软的基本类库m f c 开发出功 能强大的w i n d o w s 应用程序 v i s u a lc 中引入了微软定义的基本类库 m f c 后 使 w i n d o w s 程序设计彻底实现了模块化 从而大大降低了程序设计的复杂性 m f c 的英文全称是m i c r o s o f tf o u n d a t i o nc l a s s e s 即微软的基本类库 虽然我们要编 写的程序在功能上是千差万别的 但从本质上来讲 都可以化归为用户界面的设计 对文 件的操作 多媒体的使用 数据库的访问等等一些最主要的方面 这一点正是微软提供m f c 类库最重要的原因 在这个类库中包含了一百多个程序开发过程中最常用到的对象 在进 行程序设计的时候 如果类库中的某个对象能完成所需要的功能 这时我们只要简单地调 用已有对象的方法就可以了 除此之外 还可以利用面向对象技术中很重要的 继承 方 法 从类库中的已有对象派生出我们自己的对象 这时派生出来的对象除了具有类库中的 对象的特性和功能之外 还可以由我们t l 己根据需要加上所需的特性和方法 产生一个更 专门的 功能更为强大的对象 当然 你也可以在程序中创建全新的对象 并根据需要不 断完善对象的功能 正是由于m f c 编程方法充分利用了面向对象技术的优点 它使得我 们在编程时极少需要关心对象方法的实现细节 同时类库中的各种对象的强大功能足以完 成我们程序中的绝大部分所需功能 这使得应用程序中程序员所需要编写的代码大为减 少 有力地保证了程序的良好的可调试性 最后要指出的是m f c 类库在提供的对象的各种 属性和方法都是经过谨慎编写和严格测试的 可靠性很高 这就保证了使用m f c 类库不会 影响程序的可靠性和正确性e 1 0 2 系统的图形开发平台 8 妻室坚皇奎堂堡主塑窒生堂垡堡奎墨三兰鍪笙堕墨墨竺箜璺堡丝盐 o p e n g l 是近几年发展起来的一个性能卓越的三维图形标准 它是在s g i 等多家世界 闻名的计算机公司的倡导下 以s g i 的g l 三维图形库为基础制定的一个通用共享的开放 式三维图形标准 目前 包括m i c r o s o f t s g i m m d e c s u n h p 等大公司都采用了 o p e n g l 做为三维图形标准 许多软件厂商也纷纷以o p e n g l 为基础开发出自己的产品 其中比较著名的产品包括动画制作软件s o f ti m a g e 和3 ds t u d i om a x 仿真软件o p e n i n v e n t o r v r 软件w o r l dt o o lk i t c a m 软件p r o e n g i n e e r g i s 软a r c i n f o 等等 最为 重要的是o p e n g l 可基于v i s u a lc 6 0 或其它开发平台 根据实际的功能需要单独连接 相关的库 开发出适合中小企业 又专又简 高效的c a d c a m 系统 o p e n g l 的优点有以下几个方面1 1 1 1 图形质量高 性能好 在c a d c a m 医学图像娱乐 虚拟现实等不同的领域中 开发人员可以利用o p e n g l 的这些功能自由发挥自己的创造性 2 标准化 o p e n g l 是唯一的一个真正开放的跨平台的图形标准 3 稳定性 o p e n g l 具有明确而控制良好的规范 并具有向后兼容性 使现有的程序 不会失效 4 可靠性和可移植性 在o p e n g l 兼容的任何硬件上 不管使用什么操作系统 同一 个应用程序的显示结果均相同 可以采用c c 等多种语言进行开发 并以其为基础的 应用程序可十分方便地在各种平台间移植 5 可扩展性 通过o p e n g l 扩展机制 可以利用a p i 进行功能的扩充 6 可缩放性 基于o p e n g la p i 的应用程序可以在各种系统上运行 其范围从家用电 器到p c 机 从工作站到超级计算机 也就是说 o p e n g l 应用程序可以适应开发人员选择 的各种目标平台 7 易用性 o p e n g l 具有良好的结构逻辑命令 与其他图形程序包相比 o p e n g l 程序 包的代码行少 此外o p e n g l 封装了有关基本硬件的信息 使开发人员无需针对具体的硬 件进行专门的设计 2 3 3 运动控制芯片p c l 6 0 4 5 运动控制芯片主要用于在上位机控制下位机也就是扫描头各种运动过程中进行数据 命令的转换 p c l 6 0 4 5 是p c l 系列中功能最强大的专用d p s 运动控制芯片 它能够从总 线接口接受命令或支持手动输入进行实时运动控制 包括匀速和变速脉冲发射 升降速规 划 直线或圆弧插补等 芯片输出脉冲频率最高6 5 m h z 芯片能够控制四轴 并实现两 9 南京邮电大学硕士研究生学位论文第二章数控仿真系统的总体设计 轴到四轴直线差补 两轴圆弧差补 1 6 1 p c l 6 0 4 5 能实现控制端的各种复杂运动 在其内部 每一轴都对应几十个寄存器用于描述该轴的运动特征和运动状态 表2 1 列出了部分主要 的寄存器 表2 1p c l 6 0 4 5 主要寄存器列表 名称读 写 描述 r m v 读 写 运动量 目标位置 l 强l 读 写初始速度 i 强h 读 写运动速度 r u r 读 写加速度 r d r 读 写 减速度 r m d 读 写运动模式 r c u n l 读 写计数器1 命令位置计数器 r c i 肘2 读 写计数器2 机械位置计数器 r e s t 读错误状态 r i s t 读事件状态 r i p s 读插补状态 在整个系统设计过程中 运动控制芯片需要主控c p u 来配合才能实现运动控制功能 除此之外 运动控制端与上位机的通讯也需要主控c p u 来实现 可以通过嵌入式微处理器 s 3 c 4 4 b o x 来实现 s 3 c 4 4 b o x 作为主控c p u 在它上面运行的程序将负责对整个控制端 的管理 首先它要控制接口芯片 把上位机输入的控制指令接收并存放到内存中 接着要 对内存中的指令进行解释 最后根据指令对运动控制芯片进行操作 使它输出相应的脉冲 信号或电压信号 实现用户所希望的控制过程 总线写操作过程有以下几步 1 往参数缓冲地址写入运动参数低1 6 位 2 往参数缓冲地址写入运动参数高1 6 位 3 往命令地址写入命令代码 当命令代码被写入命令地址 值 把运动参数写入相对应的寄存器 如目标位置 初始速度 参数寄存器赋值都需如上写一次 4 写入开始运动命令 当所有运动参数都写入后 往命令 片开始产生脉冲 开始运动控制 而总线读操作过程与写操作过程相反 1 写入运动命令 1 0 南京邮电大学硕士研究生学位论文 第二苹数控仿真系统的总体设计 2 读运动参数低1 6 位 3 读运动参数高1 6 位 依据上面两条规则 在系统的实现程序中分别编写了两个寄存器读写函数 r e a d 6 0 4 5 u 8a x i s u 8f l a g u 8a d d r 函数和w r i t e 6 0 4 5 u 8a x i s u 8f l a g u 3 2d a t a u 8a d d r 函数 后续的控制操作主要由这两个功能函数来实现 上面两个函数中的具体参数的代表 意义如下 a x i s 数控机床的各个不同方向的轴 f l a g 1 表示读主状态寄存器 写入控制指令 2 表示读 写通用输入输出口 3 表示读子状态 写入寄存器 4 表示读输入输出缓冲区 只有在读时用到 a d d r 寄存器的地址 主要用在读 写数据出错时 d a t a 写入寄存器的数据 2 4 系统总体框架结构 根据前面的需求分析 设计该扫描仿真系统的主要思想有以下三个方面 第一 将扫描物体所得的数据导入到系统中 要将生成的加工轨迹图形显示到仿真系 统的平台之上 首要解决的问题是如何接收和存储扫描物体所得的数据 这里主要运用了 串行接口通信的基本知识 扫描头所获得的数据均为表现为脉冲电压形式的模拟物理量 由于该仿真系统建立在三维的基础上 因此需要获得扫描对象的三维坐标信息 并且需要 解决的问题是数据读取问题 第二 仿真系统在能够根据所接收到的数据进行绘制显示图像之后 同样也需要能够 做到控制扫描的一些具体参数设置的功能 这些参数的设置在软件界面中会以对话框或手 动窗口的方式来实现 而在控制端上则是以扫描头和计算机之间的协议命令来完成 相关 的命令传输就需要运动控制芯片来实现 第三 为了更加实现仿真操作的合理化和软件界面的友好化 会对单一的绘制显示增 加视图变换和视图定位的功能 包括旋转 平移等 这部分的功能主要是为了让用户从各 个角度和视角 对仿真操作有个更直观的认识 系统总体框架如图2 2 所示 系统主要有两个大功能 包括对扫描端参数的读取和控 制 以及图形绘制显示等扩展功能 对扫描参数的读取和控制依靠v c 软件平台和运动控 制芯片p c l 6 0 4 5 来实现 而图形的绘制结合需要v c 和o p e n g l 的接口的相结合来实现 南京邮电大学硕士研究生学位论文 第二章数控仿真系统的总体设计 系统的具体流程图如图2 3 所示 图2 2 系统框架原理图 南京邮电大学硕士研究生学位论文第二苹数控仿真系统的总体设计 2 5 本章小结 在对整个数控仿真理论进行了总体描述和研究的基础上 本章重点对整个扫描仿真系 统的总体设计方案和架构进行了详细的阐述 主要介绍了该仿真系统的需求分析 对系统 开发的工具 编程技术以及平台的选择进行了分析 最后设计了整个系统的总体框架结构 1 3 南京邮电大学硕士研究生学位论文第三章海量数据读取方法的关键技术研究 第三章海量数据读取方法的关键技术研究 3 1 引言 在对前面所提到的总体框架有了一定的了解后 本系统的主要目的对实际生活中各式 各样的工艺品进行扫描仿真 工艺品大小体积不同 会直接导致扫描数据量庞大的问题 这些海量数据导入计算机屏幕上往往需要较长时间 也加重了计算机处理的负担 一个简 单的操作 如旋转或缩放计算机屏幕上的模型 每帧之间通常都会有数秒甚至数十秒的间 隔 降低了操作性能 甚至有可能导致机器瘫痪 本章就海量数据读取问题的解决办法上 进行相关研究 旨在解决海量数据读取的效率问题 3 2 三维数据获取方法 由于整个真实的图像是建立的立体效果之上 如何快速 精确的获取物体的三维信息 是该扫描仿真系统中需要解决的一个关键问题 长期以来研究人员对这一问题进行了的大 量研究 涌现出很多实现方法 常见方法基本可分为接触式和非接触式两大类 接触式中 主要有坐标测量 非接触式主要包括激光测量 超声波测量 数字照相系统和c t 测量法 等 下面对可能在本系统中用到的三维数据获取方法的原理 优缺点进行分析介绍 1 坐标测量机 传统的坐标测量机多采用机械探针等触发式测量头 可通过编程规划扫描路径进行点 位测量 每一次获取被测形面上一点的x y z 坐标值 这种测量速度很慢 测量头可 以在工件上进行滑动测量 连续获取表面的坐标信息 坐标测量机的特点是测量精度高 对被测物的材质和色泽无特殊要求 对不具有复杂内部型腔 特征几何尺寸多 只有少量 特征曲面的零件 c m m 是一种非常有效可靠的三维数字化手段 但不能对软物体进行精 密测量 三坐标测量仪价格昂贵 对使用环境要求高 测量速度慢 测量数据密度低 测 量过程需人工干预 还需要对测量结果进行探头损伤及探头半径补偿 这些不足限制了它 在快速反求领域中的应用 2 激光线结构光扫描 激光线结构光扫描测量法是一种基于三角测量原理的主动式结构光编码测量技术 亦 称为光切法 l i g h t s e c t i o r i n g 通过将一激光线结构光投射到三维物体上 利用c c d 摄取 物面上的二维变形线图象 即可解算出相应的三维坐标 相对于激光点扫描法和投影光栅 法 光切法在测量精度和速度两方面都较理想 1 4 壹室塑皇盔兰堡主塑壅生堂垡丝奎至三里塑量墼塑堡娶查鎏竺茎堡垫查堑壅 3 数字照相系统 相当长的一段时间 三维信息的获取是基于图像分析的方法 主要应用领域是航空测 量 卫星遥感 机器人视觉等 典型的被动法是立体视差 s t e r o d i s p a r i t y 法 所谓视差就 是物体表面同一个点在左右图像中成像点的位置差异 根据左右图像成像点位置就可解算 出物体上对应点的空间坐标 这种测量方法的主要问题是多幅图象上同名点的搜索及自动 匹配较为困难 基于以上的分析 本系统拟定采用三维激光扫描技术进行数据的采集和获取 三维激 光扫描仪是利用某种与物体表面发生相互作用的物理现象来获取三维信息 其采用的原理 主要是基于脉冲飞行时间测距原理 基于激光三角形原理和基于相位差测距原理等 虽然 采用原理不同 但它们利用几何关系最终均可获得待测点到扫描中心的距离s 和横向扫描 角度观测值口和纵向扫描角度观测值口 通过这一个线元素和两个角元素计算出相对于测 站直角坐标系的x y z 坐标 激光测量机扫描物体所得到的数据保存在 i s o 文件中 般结构特征为 每个点单独 占一行 每行类似于 x 5 9 0 3 2y 5 3 4 0 0z 1 9 0 3 5 如图3 1 所示便是本文中所要处理的 扫描蝙蝠浮雕所得到的数据文件格式 这种文件也被称之为g 代码 因此每行都以 g 0 1 为开头 该文件大小为4 3 7 m 琵赢凌翅编辑嘿 格式q 查看她 帮 b 0 1x 1 3 2 5 5 0y 0 2 0 0z 3 2 4 1 8 c 0 1x 1 3 2 5 5 0y i d 2 0 0z 3 2 2 8 日 g 0 1x 1 3 2 5 k 8y 0 2 0 0z 3 2 2 8 0 g 0 1x 1 3 2 5 3 7y 0 2 0 0z 3 2 2 9 s g 0 1x 1 3 2 5 2 2y 0 2 0 0z 3 2 3 1 1 g 日1x 1 3 2 5 日7y 0 2 0 0z 3 2 2 9 5 g 日1x 1 3 2 4 8 8y 0 2 8 0z 一3 2 3 2 6 b b lx 1 3 2 4 6 2y 0 2 0 0z 3 2 2 9 5 g 0 1x 1 3 2 4 3 8y 0 2 0 0z 3 2 2 6 5 g b lx 1 3 2 4 0 8y 0 2 0 0z 一3 2 3 2 6 b 0 1x 1 3 2 3 7 2y 0 2 8 0z 一3 2 2 8 0 b 日1x 1 3 2 3 3 7y 0 2 0 bz 一3 2 2 8 0 g 口1x 1 3 2 2 9 8y 0 2 0 0z 一3 2 2 5 0 b 日1x 1 3 2 2 5 5y 0 2 0 日z 一3 2 8 4 1 g 0 1x 1 3 2 2 0 8v 0 2 日0z 3 2 2 8 日 g 0 1x 1 3 2 1 5 8v 0 2 0 日z 3 2 2 9 5 图3 i 扫描数据文件格式 就扫描所得的数据本身来说 数据包含了物体表面上一系列点的三维空间位置关系 或者说是这一系列点在某一参考坐标系下的三维空间坐标 图3 1 中包含了1 5 2 9 9 1 个三维坐 标点 该仿真系统首先要将这些三维坐标数据导入到软件中进而进行绘制显示 扫描对象 不同 会导致导入的数据量不同 这里就需要考虑到当数据量达到很大的时候 例如数据 1 5 南京邮电大学硕士研究生学位论文 第三章海量数据读
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年教师招聘之《小学教师招聘》通关提分题库附答案详解(夺分金卷)
- 智能电力政策分析创新创业项目商业计划书
- 电商数据分析超算创新创业项目商业计划书
- 内蒙古呼伦贝尔农垦牙克石莫拐免渡河农牧场有限公司招聘笔试题库及答案详解1套
- 报社考试题及答案
- 2025年四川旺苍县上半年部分事业单位考核招聘15人笔试备考题库及答案详解一套
- 2025年四川省计算机研究院考核招聘工作人员1人考试含答案
- 教师招聘之《幼儿教师招聘》考前冲刺测试卷讲解含答案详解【轻巧夺冠】
- 2025年罗田县辅警考试练习题库
- 2025年海上风电场建设与风能资源评估与产业链发展报告
- 2024年急危重症患者鼻空肠营养管管理专家共识
- 医学教材 《中国高尿酸血症相关疾病诊疗多学科专家共识(2023年版)》解读课件
- 公转私借款合同书模板
- 2024版债务处理咨询服务协议
- 《我们走在大路上》 课件 2024-2025学年湘教版初中美术七年级上册
- 法学论文开题报告模板范文
- 2024年八年级物理上册必背考点113条背记手册
- 供应链安全风险评估
- 2024年国家义务教育质量监测体育与健康学科成绩提升培训会
- 移动公司个人求职简历模板
- 创伤中心基层医院培训课件
评论
0/150
提交评论