




已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
虚拟仪器开发与实践虚拟仪器开发与实践 课程设计课程设计 题目名称 题目名称 基于基于 LABVIEWLABVIEW 的的 TCP IPTCP IP 通讯设计通讯设计 学生专业 学生专业 测控技术与仪器测控技术与仪器 学生姓名 学生姓名 贾科琼贾科琼 成绩 评语 指导老师签名 日期 目录目录 1 设计背景设计背景 1 2 虚拟仪器概述虚拟仪器概述 1 2 1 虚拟仪器概念 1 2 2 虚拟仪器的优势 2 2 3 虚拟仪器的构成 2 2 4 虚拟仪器开发软件 3 3 LabVIEW 软件的概述软件的概述 4 3 1 LabVIEW 编辑界面 4 3 2 LabVIEW 的特点 5 3 3 LabVIEW 的应用领域 6 4 LABVIEW 的的 TCP IPD 通讯设计通讯设计 6 4 1 TCP IP 概述 6 4 2 LabVIEW 中的 TCP 通讯总流程图 7 4 3 LabVIEW 中的 TCP 功能函数 8 4 4 LabVIEW 中的 TCP 通讯程序图 13 5 软件调试软件调试 15 设计心得设计心得 19 参考文献参考文献 20 0 1 设计背景设计背景 随着电子技术 计算机技术和数字信号处理技术的飞速发展 以及这些技术在 测量领域中的广泛应用 仪器技术领域发生了巨大的变化 从最初的模拟仪器到现 在的数字化仪器 嵌入式仪器以及智能仪器 新的测试理论 测试方法不断的应用 于实践 仪器技术领域的各种创新积累使现代测量仪器的性能发生了质的飞跃 从 而使仪器的概念和形式发生了巨大的变化 测量仪器发展至今 大体经历了四代历程 即模拟仪器 分立元件式仪器 数 字化仪器和智能仪器 由于微电子技术 计算机技术 通信技术 网络技术的高度 发展及其在电子测量技术与仪器上的应用 新的测试理论 新的测试方法 新的测 试领域以及新的仪器结构不断出现 在许多方面已经突破了传统仪器的概念 电子 测量仪器的功能和作用已经发生了质的变化 其中计算机处于核心地位 计算机软 件技术和测试系统更紧密地结合成一个有机整体 导致仪器的结构 概念和设计观 点等也发生了突破性的变化 在这种背景下 美国国家仪器公司在 20 世纪 80 年代 最早提出虚拟仪的概念 同时推出了用于虚拟仪器开发的工程软件包 LabVIEW NI 公司宣称 The Software is the Instrument 即 软件就是仪器 在这里 计算机是虚拟仪器的核心设备 该仪器的功能是通过软件仿真实现的 它将传统仪器由硬件电路实现的数据分析处理与显示功能 改由功能强大的计算机 来执行 所以计算机是其核心 当计算机与适当的 I O 接口设备配置完毕 虚拟仪 器的硬件平台就被确定 此后软件就成为仪器的关键部分 这也是 软件就是仪器 之说的来由 这意味着只要按照测量原理 采用适当的信号分析技术与处理技术 编制某种测量功能的软件就可构成该种功能的测量仪器 2 虚拟仪器概述虚拟仪器概述 2 1 虚拟仪器概念 虚拟仪器技就是利用高性能的模块化硬件 结合高效灵活的软件来完成各种 测试 测量和自动化的应用 自 1986 年问世以来 世界各国的工程师和科学家们 都已将 NI LabVIEW 图形化开发工具用于产品设计周期的各个环节 从而改善了产 1 品质量 缩短了产品投放市场的时间 并提高了产品开发和生产效率 使用集成化 的虚拟仪器环境与现实世界的信号相连 分析数据以获取实用信息 共享信息成果 有助于在较大范围内提高生产效率 虚拟仪器提供的各种工具能满足我们任何项目 需要 2 2 虚拟仪器的优势 1 性能高 虚拟仪器技术是在 PC 技术的基础上发展起来的 所以完全 继承 了 以现成即用的 PC 技术为主导的最新商业技术的优点 包括功能超卓的处理器和文 件 I O 使您在数据高速导入磁盘的同时就能实时地进行复杂的分析 此外 不断 发展的因特网和越来越快的计算机网络使得虚拟仪器技术展现其更强大的优势 2 扩展性强 NI 的软硬件工具使得我们不再受限于当前的技术中 这得益于 NI 软件的灵活性 只需更新计算机或测量硬件 就能以最少的硬件投资和极少的 甚 至无需软件上的升级即可改进整个系统 在利用最新科技的时候 我们可以把它们 集成到现有的测量设备 最终以较少的成本加速产品上市的时间 3 节约时间 在驱动和应用两个层面上 NI 高效的软件构架能与计算机 仪器 仪表和通讯方面的最新技术结合在一起 NI 设计这一软件构架的初衷就是为了方 便用户的操作 同时还提供了灵活性和强大的功能 使我们轻松地配置 创建 发 布 维护和修改高性能 低成本的测量和控制解决方案 4 无缝集成 虚拟仪器技术从本质上说是一个集成的软硬件概念 随着产品在 功能上不断地趋于复杂 工程师们通常需要集成多个测量设备来满足完整的测试需 求 而连接和集成这些不同设备总是要耗费大量的时间 NI 的虚拟仪器软件平台 为所有的 I O 设备提供了标准的接口 帮助我们轻松地将多个测量设备集成到单个 系统 减少了任务的复杂性 2 3 虚拟仪器的构成 2 3 1 虚拟仪器系统的构成 虚拟仪器由硬件设备与接口 设备驱动软件和虚拟仪器面板组成 其中 硬件 设备与接口可以是各种以 PC 为基础的内置功能插卡 通用接口总线接口卡 串行 2 口 VXI 总线仪器接口等设备 或者是其它各种可程控的外置测试设备 设备驱动 软件是直接控制各种硬件接口的驱动程序 虚拟仪器通过底层设备驱动软件与真实 的仪器系统进行通讯 并以虚拟仪器面板的形式在计算机屏幕上显示与真实仪器面 板操作元素相对应的各种控件 用户用鼠标操作虚拟仪器的面板就如同操作真实仪 器一样真实与方便 2 3 2 虚拟仪器系统的硬件构成 虚拟仪器的硬件系统一般分为计算机硬件平台和测控功能硬件 计算机硬件平 台可以是各种类型的计算机 如台式计算机 便携式计算机 工作站 嵌入式计算 机等 它管理着虚拟仪器的软件资源 是虚拟仪器的硬件基础 因此 计算机技术 在显示 存储能力 处理器性能 网络 总线标准等方面的发展 导致了虚拟仪器 系统的快速发展 2 3 3 虚拟仪器系统的软件构成 测试软件是虚拟仪器的主心骨 NI 公司在提出虚拟仪器概念并推出第一批实 用成果时 就用软件就是仪器来表达虚拟仪器的特征 强调软件在虚拟仪器中的重 要位置 NI 公司从一开始就推出丰富而又简洁的虚拟仪器开发软件 使用者可以 根据不同的测试任务 在虚拟仪器开发软件的提示下编制不同的测试软件 来实现 当代科学技术复杂的测试任务 在虚拟仪器系统中用灵活强大的计算机软件代替传 统仪器的某些硬件 特别是系统中应用计算机直接参与测试信号的产生和测量特性 的分析 使仪器中的一些硬件甚至整个仪器从系统中消失 而由计算机的软硬件资 源来完成它们的功能 虚拟仪器测试系统的软件主要分为以下四部分 2 4 虚拟仪器开发软件 虚拟应用软件开发环境是设计虚拟仪器所必需的软件工具 应用软件开发环 境的选择 是以开发环境人员的喜好不同而不同 但最终都必须提供给用户一个界 面友好 功能强大的应用程序 软件在虚拟仪器中处于重要的地位 他担负着对数 据进行分析处理的任务 如数字滤波 频谱变换等 在很大的程度上 虚拟仪器能 否运行成功 就取决于软件 因此美国 NI 公司提出了 软件就是仪器 的口号 目前已有多种虚拟仪器的软件开发工具 主要分为以下两类 3 1 传统的文本式编辑方法 如 C VisualC Visual Basic LabWindows CVI 等 2 图形化编辑方法 如 NI 公司的 LabVIEW 软件 HP 公司的 VEE 等 使用 图形化软件编程的优势是软件开发周期短 编程容易 特别适合于不具有专业编程 水平的工程技术人员 下面会介绍一下 LabVIEW 软件的具体概述 3 LabVIEW 软件的概述软件的概述 LabVIEW 是一种用图标代替文本行创建应用程序的图形化编程语言 传统文本 编程语言根据语句和指令的先后顺序决定程序执行顺序 而 LabVIEW 则采用数据 流编程方式 程序框图中节点之间的数据流向决定了 VI 及函数的执行顺序 VI 指 虚拟仪器 是 LabVIEW 的程序模块 3 1 LabVIEW 编辑界面 Labview 编程环境主要由启动窗口 控件选板 函数选板 工具选板 菜单栏 工具栏 项目浏览器窗口构成 如图 3 1 为 LabVIEW 的启动界面 图 3 1 LabVIEW 的启动界面 如图 3 2 为 LabVIEW 软件的前面板和编辑面板以及各种函数结构 4 图 3 2 LabVIEW 前面板和编辑面板 3 2 LabVIEW 的特点 1 LabVIEW Laboratory Virtual instrument Engineering Workbench 是一 种图形化的编程语言的开发环境 它广泛地被工业界 学术界和研究实验室所接受 视为一个标准的数据采集和仪器控制软件 LabVIEW 集成了与满足 GPIB VXI RS 232 和 RS 485 协议的硬件及数据采集卡通讯的全部功能 它还内 置了便于应用 TCP IP ActiveX 等软件标准的库函数 这是一个功能强大且灵活的 软件 利用它可以方便地建立自己的虚拟仪器 其图形化的界面使得编程及使用过 程都生动有趣 2 图形化的程序语言 又称为 G 语言 使用这种语言编程时 基本上不写 程序代码 取而代之的是流程图或框图 它尽可能利用了技术人员 科学家 工程 师所熟悉的术语 图标和概念 因此 LabVIEW 是一个面向最终用户的工具 它可 以增强你构建自己的科学和工程系统的能力 提供了实现仪器编程和数据采集系统 的便捷途径 使用它进行原理研究 设计 测试并实现仪器系统时 可以大大提高 工作效率 3 它主要的方便就是 一个硬件的情况下 可以通过改变软件 就可以实现 不同的仪器仪表的功能 非常方便 是相当于软件即硬件 利用 LabVIEW 可产生 独立运行的可执行文件 它是一个真正的 32 位 64 位编译器 像许多重要的软件 5 一样 LabVIEW 提供了 Windows UNIX Linux Macintosh 的多种版本 3 3 LabVIEW 的应用领域 1 LabVIEW 是一种图形化的编程语言的开发环境 它广泛地被工业界 学术界 和研究实验室所接受 视为一个标准的数据采集和仪器控制软件 LabVIEW 集成了 与满足 GPIB VXI RS 232 和 RS 485 协议的硬件及数据采集卡通讯的全部功能 它还内置了便于应用 TCP IP ActiveX 等软件标准的库函数 这是一个功能强大且 灵活的软件 利用它可以方便地建立自己的虚拟仪器 其图形化的界面使得编程及 使用过程都生动有趣 2 图形化的程序语言 又称为 G 语言 使用这种语言编程时 基本上不写 程序代码 取而代之的是流程图或框图 它尽可能利用了技术人员 科学家 工程 师所熟悉的术语 图标和概念 因此 LabVIEW 是一个面向最终用户的工具 它可 以增强你构建自己的科学和工程系统的能力 提供了实现仪器编程和数据采集系统 的便捷途径 使用它进行原理研究 设计 测试并实现仪器系统时 可以大大提高 工作效率 3 它主要的方便就是 一个硬件的情况下 可以通过改变软件 就可以实现 不同的仪器仪表的功能 非常方便 是相当于软件即硬件 利用 LabVIEW 可产生 独立运行的可执行文件 它是一个真正的 32 位 64 位编译器 像许多重要的软件 一样 LabVIEW 提供了 Windows UNIX Linux Macintosh 的多种版本 4 LABVIEW 的的 TCP IPD 通讯设计通讯设计 4 1 TCP IP 概述 Internet 中使用最为广泛的网络协议为 TCP IP 协议集 TCP 是 TCP IP 协议集中的隶属于传输层的传输控制协议 IP 是 Internet 网络 中隶属于网络层的基础协议 由 IP 控制传输协议的协议单元称为 IP 数据 IP 数 据中含有发送或接收方的 IP 地址 IP 提供可靠的 无连接的 具有时间限制的自 动重试机制的数据投递服务 构成了 Internet 网络数据传输的基础 TCP 以此为 基础增加了连接管理和确认重发等机制 向更高层的应用程序提供面包连接的 可 6 靠的传输服务 TCP IP 协议族共分为四层 链路层 网络层 传输层和应用层 TCP IP 协议的传输层 包括 TCP UDP 协议 可以被 LabVIEW 直接应用 TCP IP 通常被认为四层协议系统 1 链路层 通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡 2 网络层 处理分组在网络中的活动 例如分组的选路 IP ICMP 和 IGMP 3 运输层 主要为两台主机上的应用程序提供端到端的通信 TCP 和 UDP 4 应用层 Telnet 远程登录 FTP 文件传输协议 SMTP 简单邮件传输协议 SNMP 简单网络管理协议 构造互联网最简单的办法就是把两个或多个网络通过路 由器进行连接 路由器的好处是为不同类型的物理网络提供连接 如图 4 1 为 TCP IP 分层结构 图 4 1 TCP IP 分层结构 4 2 LabVIEW 中的 TCP 通讯总流程图 服务器程序和客户端程序可以在两台联网的计算机上运行 当然也可以同时 在一台计算机上运行 本次课程设计实现的就是在一台计算机上同时运行的情况 另外 在运行的时候必须先启动服务器 待服务器初始化完成 在运行客户机 如 图为 TCP 通讯总流程图 7 图 4 2 TCP 通讯总流程图 4 3 LabVIEW 中的 TCP 功能函数 在 Labview 中可以利用 TCP 进行网络通信 并且 Labview 对 TCP 的编程进行 了高度集 成 用户通过简单的编程就可以在 Labview 中实现网络通信 3 3 1 TCP 侦听 该函数的功能是创建一个侦听器并在指定端口等待 TCP 连接的请求 该函数节 点只能在作为服务器的主机上使用 开始侦听某个指定端口时 不能再使用其他 TCP 侦听 VI 侦听该窗口 图 4 3 TCP 侦听函数 8 图 4 4 TCP 侦听函数端口界面 网络地址 指定侦听的网络地址 如不指定网络地址 LabVIEW 将侦听所有的网络 地址 通过字符串至 IP 地址转换函数可获取当前计算机的 IP 网络地址 端口 是要侦听连接的端口号 连接 ID 是唯一标识 TCP 连接的网络连接引用句柄 该连接句柄用于在以后的 VI 调用中引用连接 3 3 3 打开 TCP 连接 该函数的功能是用指定的计算机名称和远程端口或服务名称来打开一个 TCP 连 接 该节点只能在作为客户机的主机上使用 该函数节点主要接线端定义如下 图 4 5 打开 TCP 连接函数 9 图 4 6 打开 TCP 连接函数端口 地址 是要与其建立连接的地址 该地址可以为 IP 句点符号格式或主机名 远程端口或服务名称 可以接受数字或字符串输入 是要与其确立连接的端口或服 务的名称 连接 ID 是唯一标识 TCP 连接的网络连接引用句柄 该连接句柄用于在以后的 VI 调用中引用连接 3 3 4 读取 TCP 数据 该函数从指定的 TCP 连接中读取数据 该函数节点主要接线端定义如下 图 4 7 读取 TCP 数据函数 10 图 4 8 读取 TCP 数据函数端口 连接 ID 是唯一标识 TCP 连接的网络连接引用句柄 读取的字节 是要读取的字节数 连接 ID 输出 返回值与连接 ID 相同 数据输出 包含从 TCP 连接读取的数据 3 3 4 写入 TCP 数据 该函数通过数据输入端口将数据写入到指定的 TCP 连接中 该函数节点主要接 线端定义如下 图 4 9 写入 TCP 数据函数 11 图 4 10 写入 TCP 数据函数端口 连接 ID 唯一标识 TCP 连接的网络连接引用句柄 数据输入 包含要写入连接的数据 连接 ID 输出 返回值与连接 ID 相同 写入的字节 VI 写入连接的字节数 3 3 5 关闭 TCP 连接 该函数的功能是关闭指定的 TCP 连接 该函数节点主要接线端定义如下 图 4 11 关闭 TCP 数据函数 12 图 4 12 关闭 TCP 数据函数端口 连接 ID 是唯一标识要关闭的网络连接的网络句柄 中止 保留以便今后使用 连接 ID 输出 其值值与连接 ID 相同 不要将该输出端与其它 TCP 函数相连 4 4 LabVIEW 中的 TCP 通讯程序图 4 4 1 如图为 TCP 服务器的完整流程框图 图 4 13 TCP 服务器程序框图 如图为 TCP 服务器的完整流程框图前面板 13 图 4 14 TCP 服务器前面板 4 4 2 如图为 TCP 客户端的完整流程框图 图 4 15 TCP 客户端程序框图 如图为 TCP 客户端的完整流程框图 14 图 4 16 TCP 客户端前面板 5 软件调试软件调试 1 当客户端 ip 地址刚好为服务器的 ip 地址 且客户端端口刚好与服务器相对 应时 这时 TCP 服务器 在运行 TCP 客户端也在运行同时接收到服务器的数据 如下图所示 图 5 1 显示的为服务器发出矩形波 打开客户端同时客户端接收到矩 形波 通过调节频率 相位以及幅值来不断的改变波形的形状 图 5 2 显示的为服务器发出正弦波 匹配端口与 ip 地址之后 打开客户端同 时客户端接收到矩形波 通过调节频率和相位以及幅值来不断的改变波形的形状 图 5 3 显示的为服务器发出三角波 匹配端口与 ip 地址之后 打开客户端同 时客户端接收到三角波 通过调节频率和相位以及幅值来不断的改变波形的形状 15 图 5 1 矩形波 图 5 2 正弦波 图 5 3 三角波 2 客户端 ip 地址为服务器的 ip 地址 当 端口 不对应时 即使 TCP 服务 器 在运行 TCP 客户端也接收不到任何的数据 如图所示 16 图 5 4 调试三角波 3 因为必须先进行初始化服务器 待服务器完成初始化之后才启动客户端 当 端口 对应时 此时 ip 地址也正确 如果对于客户端与服务器所执行的先后 顺序不相同 则此时客户端接收不到数据 与此同时也会报错 如图所示 图 5 5 调试三角波 4 在一台计算机上进行操作此通讯时 此时客户端中所对应的 ip 地址一定要为 服务器的 ip 地址完全相同 否则此时客户端接收不到数据 与此同时也会报错 如图 5 6 所示 17 图 5 6 调试三角波 5 当 端口 对应时 即 TCP 服务器 停止运行 TCP 客户端 也不可以 运行 会报错 如图 5 7 所示 图 5 7 调试波 18 设计心得设计心得 这次 LabVIEW 课程设计历时一周的时间 在加上之前的实验课 时间汇总起来 熟悉这个软件有了将近半个月的时间 经过这些天的上机课 虽然最终课设任务基 本上达到老师的要求 但我对这次课程设计的收获却不是很满意 刚开始上课接触这个软件时 听老师讲的津津有味 感觉这个 LabVIEW 应该会 很有趣 我个人比较喜欢单片机这类的小型 嵌入式的东西 因为这些东西在一定 程度上
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年关于网络约车驾驶员劳动合同的规定
- 水解酵母干燥工岗前考核试卷及答案
- 2025建筑材料采购合同
- 工程地质调查员三级安全教育(班组级)考核试卷及答案
- 糖果成型工成本控制考核试卷及答案
- 岗位竞聘风格模板12
- 炉外精炼工理论知识考核试卷及答案
- 2025合作合同范本国际商务合同
- 印花机挡车工工艺创新考核试卷及答案
- 防安全培训考核试题及答案
- 2025年中级注册安全工程师《安全生产法律法规》十年真题考点
- 2025年秋季小学三年级上册语文教学计划
- 2025未签合同劳动争议仲裁申请书
- 2025年职业指导师考试试卷:实践操作
- 幼儿园2025师德师风应知应会知识测试试题(附答案)
- 2025年北京中考真题英语试题及答案
- 搬运工具管理办法
- 撤资协议范本(2025版)
- 2025年浙江省中考社会试题卷(含答案)
- 2025广西公需科目考试答案(3套涵盖95-试题)一区两地一园一通道建设人工智能时代的机遇与挑战
- 2025年公需课考试题库(附答案)
评论
0/150
提交评论