LabVIEW程序设计-课程设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

LabVIEW程序设计-课程设计
成绩评定表
学生姓名班级学号
基于UDP的点对点专业通信工程课程设计题目
和广播通信


组长签字:
成绩
20 年月日日期
沈阳理工大学信息科学与工程
课程设计任务书
学院信息科学与工程学院专业通信工程学生姓名班级学号课程设计题目基于UDP的点对点和广播通信实践教学要求与任务:
1,学习LabVIEW的虚拟仪器原理、设计方法和实现技巧,
2(掌握简单LabVIEW程序的编程实现,
3(掌握简单通信系统设计和分析方法,
4(采用Labview语言,实现点对点和广播通信。

,1,通过检索、查资料、调查研究、确定方案、画出组成系统结构方框图,,2,采用LabVIEW实现点对点和广播通信系统,
,3,系统调试与改进,调整系统参数,分析系统运行结果,
,4,写出设计总结报告。

工作计划与进度安排:
17周学习LabVIEW虚拟仪器原理、设计方法和实现技巧,掌握简单LabVIEW程序的编程实现,掌握简单通信系统设计和分析方法。

19周采用LabVIEW语言,实现点对点和广播通信,并对系统进行性能分析。

指导教师: 专业负责人: 学院教学副院长:
201 年月日 201 年月日 201 年月日
2
沈阳理工大学信息科学与工程
目录
1(概述 ........................................... 4 1.1 LABVIEW简
介 ......................................... 4 2.2 UDP协议简
介 ........................................ 4 2.基于UDP的点对点和广播通信的设计原理 ............ 5 3(基于UDP的点对点和广播通信的程序设
计 ........... 5 3.1 前面板设计 .........................................
5 3.2 程序框图(后面板)设计 (7)
3.2.1 后面板设计概述 (7)
3.2.2 打开/关闭本地UDP端口功能 (8)
3.2.3 选择广播或者点对点方式发送数据功能设计 (9)
3.2.4 发送数据功能设计 (9)
3.2.5 接受数据功能设计 ........................... 10
4.程序调
试 ....................................... 10 5.总
结 ........................................... 12 6.参考文
献 (13)
3
沈阳理工大学信息科学与工程
1(概述
1.1 Labview简介
虚拟仪器技术就是利用高性能的模块化硬件,结合高效灵活的软件来完成各种测试、测量和自动化的应用。

灵活高效的软件能帮助您创建完全自定义的用户界面,模块化的硬件能方便地提供全方位的系统集成,标准的软硬件平台能满足对同步和定时应用的需求。

这也正是NI近30年来始终引领测试测量行业发展趋势的原因所在。

只有同时拥有高效的软件、模块化I/O硬件和用于集成的软硬件平台这三大组成部分,才能充分发挥虚拟仪器技术性能高、扩展性强、开发时间少,以及出色的集成这四大优势。

LabVIEW(Laboratory Virtual Instrument Engineering Workbench,实验室虚拟仪器集成环境)是一种图形化的编程语言(又称G语言),它是由美国NI公司推出的虚拟仪器开发平台,也是目前应用最广、发展最快、功能最强的图形化软件集成开发环境。

使用这种语言编程时,基本上不用写程序代码,取而代之的是程序框图。

LabVIEW的特点如下: , 编程简单;
, 开发周期短;
, 高效性;
, 开放性;
, 自定义性;
, 性价比高,能一机多用。

2.2 UDP协议简介
UDP(User Datagram Protocol,用户数据报协议)提供尽量传递的无连接数据报服务,这意味着UDP无法保证任何数据报的传递或验证数据报的顺序。

某些程序使用UDP来代替TCP,以便在TCP/IP主机之间快速、轻量、但不可靠地传输数据。

UDP端口提供了发送和接受UDP消息的位置。

UDP端口作为单独消息队列工作,接受由每个协议端口号所指定的程序想要的所有数据报。

这意味着基于UDP的程序每次可以接受多个消息。

Labview开发环境已经封装好了有关UDP的函数,大大简化了UDP编程,使得用户无需考虑如何建立连接、分配端口号、地址转换等复杂的问题。

4
沈阳理工大学信息科学与工程
2.基于UDP的点对点和广播通信的设计原理
本程序是利用Labview中关于UDP的函数实现点到点通信和广播通信。

将UDP 通信两端分别称为发送端(Sender)和接收端(Receiver)。

发送端的通信方式可是仅向某个远程主机发送或是向子网中所有的机器广播发送。

其程序前面板如图1.1所示。

首先通过UDP Open函数打开本地UDP端口,然后通过UDP write函数向远程端口发送。

若远程IP地位0xFFFFFFFF即255.255.255.255时,UDP Write函数以广播的形式发送数据。

否则只想指定的远程主机发送数据。

在Windows下,UDP传输的最大数据长度为548。

接收端程序如图1.2所示。

也是首先通过UDP Open函数打开本地UDP端口,该UDP端口应与发送端的远程端口一致;打开UDP端口后通过UDP Read函数从该端口读回数据,由于并不是每次都能读回数据,因此忽略掉Timeout错误。

UDP的发送端和接收端是对等的,不存在服务器端和客户端。

一个VI可以是发送端,也可以是接收端。

3(基于UDP的点对点和广播通信的程序设计 3.1 前面板设计
Labview的前面板是图形化的人机界面,利用前面板提供的控件选板可以设置基本的输入数据和显示输出数据,也可以在基本控件的基础上创建自定义控件模拟真实仪器或生产过程。

本程序的前面板总体设计如图3.1(a)和图3.2(b)所示,分别为发送端前面板和接收端前面板。

前面板中各控件说明如下:
, 本地端口和远程端口:数值输入控件,数据类型为16位无符号整数。

用于配置用于进程间通信的端口号。

发送端的远程端口号必须和接收端的
本地端口号保持一致,否则将无法进行通信。

, 远程主机:字符串输入控件,数据类型为字符串型。

用于输入接收端的
IP地址,默认值为localhost,即通信目的主机为本地。

, 广播/仅向远程主机发送:布尔型垂直摇杆开关。

用于选择是以广播方式发送数据还是以点对点方式发送数据。

, Message:字符串型输入控件。

用于输入通信内容。

按Send键发送。

, Data Received:字符串型显示控件。

用于显示来自发送方的数据。

, Stop:布尔型体制按钮控件。

用于停止程序运行。

5
沈阳理工大学信息科学与工程
图3.1(a) 发送端前面板
图3.1(b) 接收端前面板
6
沈阳理工大学信息科学与工程
3.2 程序框图(后面板)设计
3.2.1 后面板设计概述
在前面板中添加控件后,必须还要创建程序框图(即后面板)才能对前面板中的对象进行控制。

程序框图是图形化源代码的集合,这种图形化的编程语言也称为G 语言。

程序框图中的控件对象实际上市前面板相应的控件的接线端,当在前面板创建控件后Labview在程序框图中自动添加该对象的接线端。

程序框图中接线端以不同的颜色代表不同的数据类型,默认情况下接线端是以图标方式显示的,但为了节省空间,本程序后面板中各控件均以数据类型来显示,如图3.2(a)和图3.2(b)。

图3.2(a) 发送端后面板
图3.2(b)接收端后面板
7
沈阳理工大学信息科学与工程
一个Labview程序若只有控件是不完整的,若需完成更复杂的功能还需在后面板中添加各种函数,再进行对象连线以完成所需功能。

本程序中,主要通过各种有关UDP协议的函数进而完成点对点和广播通信的功能的。

UDP编程的VI函数位于函数的数据通信/协议/UDP面板下,如图3.2(c)所示。

图3.2(c) UDP函数
下面就本程序中各部分的功能及所使用到的函数进行说明。

3.2.2 打开/关闭本地UDP端口功能
该部分功能在发送端和接收端均有,用“打开UDP”函数和“关闭UDP函数”完成。

打开UDP函数完成打开本地UDP端口功能。

关闭UDP函数实现通信完毕后关闭本地UDP端口功能。

“打开UDP”函数和“关闭UDP函数”的各个接线端说明如图3.2.2。

图3.2.2(a) “UDP open”函数接线端说明
图3.2.2(b)“关闭UDP”函数接线端说明
8
沈阳理工大学信息科学与工程
所使用到的主要UDP函数接线端说明如下:
端口接线端与本地端口输入控件相连接,从该控件获取通信中本地所使用的端口号。

连接ID是唯一标识UDP套接字的网络连接引用句柄。

该连接句柄可用于在以后的VI调用中引用套接字。

该接线端与下一UDP函数的连接ID接线端相连。

错误输出包含错误信息,为下一UDP函数提供错误信息功能。

与下一UDP函数错误输入相连。

3.2.3 选择广播或者点对点方式发送数据功能设计
该部分功能主要由选择函数完成。

该函数的功能为依据s的值,返回连线至t 输入或f输入的值。

s为TRUE时,函数返回连线至t的值。

s为FALSE时,函数返回连线至f的值。

如图3.2.2。

图3.2.2 选择函数接线端说明
本程序中选择函数的t端连接一个32为全1数,表示IP地址为
255.255.255.255,这是用于广播的IP地址。

当摇杆控件的值为true时选择函数输出广播地址255.255.255.255至写入UDP函数的地址端,表明此时选择了广播方式;当值为false时,选择函数输出远程主机控件中输入的字符串到UDP写入函数的地址,表明此时选择了点对点发送方式。

3.2.4 发送数据功能设计
该部分功能主要通过UDP Write函数来实现。

UDP Write函数的接线端说明如图3.2.3所示。

图3.2.3 UDP Write函数接线端说明
所使用到的主要UDP函数接线端说明如下:
端口或服务名称接线端与发送端的远程端口输入控件相连,从该控件中获取
9
沈阳理工大学信息科学与工程
通信过程中所使用的端口号,进而可以向该远程端口发送数据。

地址接线端与选择函数的输出端相连接,从该函数获得通信接收端的IP地址。

数据输入接线端连接Message字符串输入控件,从该控件中获取通信内容。

接受数据功能设计 3.2.5
该部分功能由UDP Read函数来完成。

UDP Read函数的接线端说明如图3.2.4所示。

图3.2.4 UDP Read函数接线端说明
数据输出接线端与接收端面板的Data Received字符型输出窗口相连接,将通信内容传输至显示控件上。

4.程序调试
打开发送端和接收端程序,发送端和接收端的各控件初始值如图4.1和图4.2所示,无需做其他修改,运行程序。

在发送端Message窗口中输入“沈阳理工大学信息科学与工程学院”,点击send按钮,与此同时,在接收端Data Received的显示了同样的文字。

程序运行成功。

拨动垂直摇杆可切换点对点和广播通信方式,满足不同的通信需求。

若要修改通信所使用的端口则必须保持发送端远程端口号与接收端本地端口号相一致。

在广播方式下,所有接收端都可接受来自发送端的数据。

在点对点模式下,只有与在远程主机控件中输入的IP地址相一致的地址的主机才能接受数据。

10
沈阳理工大学信息科学与工程
图4.1 发送端运行图
图4.2 接收端运行图
11
沈阳理工大学信息科学与工程
5.总结
通过本次课程设计,是我了解到Labview是一个非常强大的编程开发软件。

使用Labview可以开发出各式各样的虚拟仪器,并且非常轻易的就实现诸如UDP通信这样的程序设计。

在课程设计的过程中遇到困难时不可避免的,要想做成一个让人满意的作品必须对程序框图中的程序反复测试和修改。

由于老师为了培养我们独立解决问题的能力,因此一般不参与设计。

在同学的帮助下,最后终于把问题都解决了。

有时侯我们也会遇到自己确实不能解决的问题,老师还是会提出解决问题的建议,或是指点应该改进的方向。

课程设计是对所学知识的综合理解与应用,它不仅要求我们对Labview软件特别熟悉,而且还要求我们能够熟练运用各个【编程】中的各种函数结构。

通过设计函数信号发生器,让我懂得发现问题,分析问题,并解决问题可以提高自己的能
力。

同时通过分析解决问题,加深对所学知识的理解与掌握。

通过这次课程设计我学到了很多书本上永远都学不到得东西,
经过这次课程设计,虚拟仪器的强大作用和它巨大的发展潜力让我很振奋。

原来人类的技术进步得那么快,为了让损失最小,通过这种特殊的软件来创造出更好的作品。

对该信号发生器所产生的信号进行测试,结果表明该信号源输出正弦信号性能优于普通传统信号源产生的信号。

虚拟仪器不是计算机功能简单的扩展,也不单纯是传统智能仪器的替代品,虚拟仪器有着广阔的发展前景。

同时这次课设的主要目的就是让我们通过不断的练习,并利用它来解决实际的问题。

实践是检验真理的最佳途径。

通过这周的课设和学习,我知道了自己的不足。

本次的课程设计虽然结束了,但是努力学习并没有结束。

我也收获了很多,也学会了团队精神的重要性,个人的能力是有限的,团结才能有力量,我们都尽自己所能来完成这次课程设计。

这是对我们所学的课本知识的测验,也是对是否能快速吸收新的知识的一种考验。

通过这次课设,我的知识面又得到了扩展
12
沈阳理工大学信息科学与工程
6.参考文献
[1]陈锡辉,张银鸿. Labview 8.20程序设计从入门到精通. 清华大学出版社,2007
[2]杨乐平,李海涛,杨磊(LabVIEW课程设计与应用(电子工业出版社,2005
13。

相关文档
最新文档