虚拟仪器技术课程设计报告书
虚拟仪器课程设计报告_2

基于labview的上位机与下位机之间的通信一、虚拟仪器简介虚拟仪器的构成必须包含三大要素:计算机、应用软件和仪器硬件。
虚拟仪器实质上是一种计算机仪器系统,它是由计算机、功能硬件模块和应用软件等部分组成。
图1.虚拟仪器系统的基本组成1.虚拟仪器硬件平台的构成主要有两部分(1)计算机。
它一般是一台计算机或者工作站,是硬件平台的核心。
(2) I/O接口设备。
I/O接口设备主要完成被测输入信号的采集、放大、模/数转换。
不同的总线形式都有其相应的I/O接口硬件设备,如利用PC总线的数据采集卡/板(简称数采卡/板,DAQ)、GPIB总线仪器、VXI总线仪器模块、串口总线仪器等。
虚拟仪器的构成方式主要有5种类型,无论哪种VI系统,都通过应用软件将仪器硬件与计算机相结合,其中,PC-DAQ测量系统是构成VI的最基本的方式。
2.虚拟仪器的软件系统目前的虚拟仪器软件开发工具有如下两类。
(1)文本式编程语言:如Virstual C++、Virstual Basic、Labwindows/CVI等。
(2)图形化编程语言:如LabVIEW、HPVEE等。
虚拟仪器软件由两部分构成,即应用程序和I/O接口仪器驱动程序。
虚拟仪器的应用程序包含两方面功能的程序:实现虚拟面板功能的软件程序和定义测试功能的流程图软件程序。
I/O接口仪器驱动程序完成特定外部硬件设备的扩展、驱动与通信。
目前,最常用的虚拟仪器软件主要是美国NI公司开发的图形化编程语言LabVIEW。
LabVIEW是一种基于G语言(图形化编程语言)的虚拟仪器软件开发工具,它采用图标代替编程语言来创建应用程序,使用数据流编程方法来描述程序的执行。
LabVIEW环境下开发的程序称为虚拟仪器,由三个部分组成,即前面板、框图和图标/连接器。
现将虚拟仪器与传统仪器相比较特点如下表:表1.虚拟仪器与传统仪器优缺点对比对比可知,虚拟仪器之所以具有传统仪器不可能具备的特点,根本原因就在于虚拟仪器的核心是软件,软件决定了一台虚拟仪器的主要功能。
《虚拟仪器技术》课程设计

目录第1章《虚拟仪器技术》课程设计任务书 (3)1.1课程设计任务 (3)1.2课程设计目的 (3)1.3课程设计要求 (4)1.4课程设计内容 (4)1.5课程设计报告要求 (4)1.6课程设计进度安排 (5)1.7课程设计考核办法 (5)第二章总体设计方案 (6)2.1虚拟仪器 (6)2.1.1虚拟仪器的概述 (6)2.1.2虚拟仪器的概念 (6)2.1.3虚拟仪器的特点 (6)2.1.4虚拟仪器在各方面的应用 (7)2.2 LabVIEW (8)2.2.1 LabVIEW的发展历程 (8)2.2.2 LabVIEW的概念 (8)2.2.3 LABVIEW的操作面板 (9)2.2.4 LABVIEW的应用领域 (10)2.3 多功能数字滤波器 (11)2.3.1滤波器的概念 (11)2.3.2滤波器分类 (11)2.3.2.1根据滤波器的选频作用分类 (11)2.3.2.2根据“最佳逼近特性”标准分类 (11)2.3.2.3理想滤波器 (12)2.3.3实际滤波器 (12)2.3.3.1实际滤波器的基本参数 (12)2.3.4多功能数字滤波器的总体结构图 (14)第三章多功能数字滤波器原理及功能 (15)3.1 多功能数字滤波器原理 (15)3.1.1前面板结构布局 (15)3.3.2、前面板部分功能界面说明 (18)第四章多功能数字滤波器的程序设计及运行调试 (21)4.1流程图 (21)4.2框图程序的设计 (22)4.2.1波形类型选择框 (22)4.2.2 噪声类型选择框 (23)4.2.3滤波器类型选择框图 (25)4.2.4波形显示选择框 (27)4.2.5大致的总程序框图 (27)4.3、运行调试 (29)4.3.1不添加噪声的波形显示 (29)4.3.2加入噪声后的波形显示 (29)4.3.2.1选择IIR滤波器的波形变化 (30)4.3.2.2选择FIR滤波器的波形变化 (30)4.3.2.3选择中值滤波器的波形变化 (31)第五章收获、体会 (32)参考文献 (33)第一章《虚拟仪器技术》课程设计任务书题目:多功能数字滤波器设计1.1课程设计任务数字滤波器是数字信号分析中重要的组成部分,数字滤波器与模拟滤波器相比具有准确度和稳定性高,系统函数容易改变,灵活性高,不存在阻抗匹配问题,便于大规模集成,可实现多位滤波等优点,因而数字滤波器在工程中得到了广泛的应用。
虚拟仪器课程设计报告

虚拟仪器课程设计报告课题:计算器设计学院:电气信息学院专业:测控技术与仪器班级:3班学号:0904010326姓名:郑远时间:2011年12月28日摘要:LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。
利用labview设计一些小项目不仅可以更好的学习虚拟仪器知识,还能方便生活!应用所学知识,实现计算器实现步骤的设计框架,设计计算器!关键字:labview 计算器实现步骤目录(1)设计目的(2)设计思想(3)实现过程(4)总结(5)参考文献(1)设计目的利用所学虚拟仪器知识,应用labview软件设计一个能实现加减乘除以及开方、取倒、取反功能的计算器。
提高使用labview设计项目的能力!(2)设计思路创建3个字符串显示控件num1,num2,num31、第一个输入数据存储在num1中。
2、第二个输入数据存入num2中。
3、将其赋给num3,并使num2为空,以便输入的数据存入num2。
4、所有的运算是在num1和num3间进行。
5、运算结果都赋给result,同时赋给num1,用于下一次的运算。
创建4个布尔开关按钮change,change1,change2,change31、Change的真假用来判断是第一个数据还是第二个数据2、change1的功能是在输入=,运算完后,不需要初始化即可进行下一次运算3、change2用来去掉数据小数末尾的04、change3用来保证backspace键仅对输入的数据有效,对运算结果无效创建2个数值显示控件type1,type2,并分别在其后面板的属性——数据类型——表示法中选择U81、type1用来存储运算符号2、type2用来保证连续“+、-、*、/”的正确性3、所有的运算结果都赋给result4、result经过去零处理后得到result1,将数据显示在前面板上。
虚拟仪器课程设计实验报告

北京邮电大学课程设计报告一.课程设计内容及目的:1.掌握虚拟仪器的概念和系统组成,虚拟仪器系统的基本设计思想;2.认识虚拟仪器的软件开发工具LabVIEW及图形化编程语言;3.掌握虚拟仪器软件的设计方法,能够运用LabVIEW进行数据操作、结构控制、文件读写、信号处理、数学分析、波形分析等;4.独立完成第一阶段的20个虚拟仪器设计;5.小组成员共同完成第二阶段虚拟仪器设计;6.完成虚拟仪器课程设计实验报告。
二.小组成员及分工:组长:王迪(2009211407班,学号09211870),主要负责第二阶段任务的主要设计工作,包括功能设计,程序编写等。
组员:蒲瑞(2009211406班,学号09211847),主要负责第二阶段虚拟仪器设计的界面设计和优化。
周莹(2009211406班,学号09211860),主要负责第二阶段虚拟仪器设计的市场调研。
三.第一阶段设计任务:1.设计任务概述:通过20个简单的小设计,来熟悉LabVIEW的基本操作,了解图形化的编程语言与之前传统编程语言的区别,适应这种全新的编程方式,为第二阶段的设计任务打下基础。
2.第一阶段设计成果:经过四天时间学习和设计,圆满完成了第一阶段的设计任务,每一个小设计均独立完成,具有个人特色,大部分设计在题目要求的基础上增加了额外功能。
由于篇幅有限,20个设计不再一一赘述,在此详细展示3个第一阶段的虚拟仪器设计。
1)第七题:用for循环产生一个长度为5的随机数设计思路:可通过用一个循环五次的for循环,在每一次循环体中产生需要的5位随机数的一位。
具体实现方法为:在循环体中产生一个0到10的随机整数(通过随机数控件乘以10再取整得到),乘以一个每次循环自乘10的变量(利用反馈节点可实现自乘),再将得到的结果在每一次循环中进行自加(利用反馈节点实现自加),即可得到需要的五位随机数。
需要注意的是最高位随机数需要进行判断,使其值不为0或10,以保证随机数的长度。
虚拟仪器课程设计报告

虚拟仪器课程设计报告这是一个多义词词条。
它能够指"为把握某一课程内容所进行的设计",见概念中的课程设计。
虚拟仪器课程设计报告,咱们来看看。
篇一:虚拟仪器课程设计报告实验三十六:1. 温度报警程序,当温度值大于37那么报警,小于-5那么退出运行状态。
前面板:程序框图:程序功能及用途:本程序功能为温度报警,温度值超过37就报警,小于-5就退出运行状态。
程序演示:当温度值大于37°时,红灯亮表示报警。
当温度值小于-5°时,程序退出运行状态。
程序思路和步骤:此题要求温度值超过必然值时就报警,那个地址用指示灯来显示,当温度值低于必然值时就退出运行状态。
由程序框图咱们能够明白:第一由一个随机数函数产生一个0-1之间的双精度浮点数,拿那个数与常量-15相乘能够取得一个范围为0到-15的数;另一方面通过另一个随机数函数产生一个0-1之间的双精度浮点数,拿那个数与常量100相乘能够取得一个范围为0到100的数;最后将这两个数通过“和”函数进行求和得出的结果作为温度计的输入值,并用输出数值控件显示现在的温度值;同时进而将那个值通过“大于”函数或是“小于”函数进行比较,当输出的温度值大于常量37,现在对应的报警指示灯就会由绿灯变成红灯,说明温度值超过预定设置的温度值,达到报警的目的;而当温度值小于常量-5时,小于函数输出为真,最后通过和停止按钮进行或操作,达到退出运行状态的作用。
在本设计中加入时刻延迟函数主若是将程序运行延迟一下时刻,不加延时的话程序运行过快,数据转变过快,无益于观看,本次设计设置延迟时刻为,观看的成效恰好。
至此,该题的所有功能均已实现。
2.成立一个实现计算器功能的 VI。
前面板有数字操纵件用来输入两个数值,有数值显示件用来显示运算结果。
运算方式有加、减、乘、除,可用一个滑动条实现运算方式的设定。
前面板:程序框图:程序演示:当0 当当 5 当10 篇二:虚拟仪器课程设计报告课题:计算器设计学院:工学院专业:自动化班级:自动化101 学号:1xxx5姓名:宋浩财陈宇豪时刻:201x年6月5日杨波摘要:LabVIEW是一种程序开发环境,由美国国家仪器公司研制开发的,类似于C和BASIC开发环境,可是LabVIEW 与其他运算机语言的显著区别是:其他运算机语言都是采纳基于文本的语言产生代码,而LabVIEW利用的是图形化编辑语言G编写程序,产生的程序是框图的形式。
虚拟仪器课程设计报告

虚拟仪器课程设计报告一、课程设计目的掌握虚拟仪器的概念和系统组成,虚拟仪器系统的基本设计思想;认识虚拟仪器的软件开发工具LabVIEW及图形化编程语言;掌握虚拟仪器软件的设计方法,能够运用LabVIEW进行数据操作、结构控制、文件读写、信号处理、数学分析、波形分析等。
二、第一阶段设计1、第一题第一题要求建立一个二维数组,由于没有指定数组的具体数值,所以设计为让用户自行输入数组的元素,并生成一个新的数组,再进行后续的操作。
数组长度是使用数组大小函数来获得,经过数组大小函数后,通过索引数组来的到二维数组的行数与列数,想乘后的到数组的长度,查找元素和替换元素则是直接用已有的函数即可实现。
2、第二题任意创建一个二维数组常量,并定义数组元素后用第一题的方法得到数组的长度,把数组和数组长度输入到重排数组维数函数中,即可得到重新排列后的一维数组。
而后让用户自己设计把最后多少个元素放置到数组前面,经过一维数组循环移位后即可实现功能。
3、第三题首先是创建了个数组输入控件,让用户自己输入一维数组的元素,利用一维数组排序函数即可实现升序排列,然后把升序排列的结果利用反转一维数组函数进行反转,即可得到降序排列的数组。
4、第四题首先建立了一个二维的数组常量,定义数组的元素后显示出来。
利用数组的最大值最小值函数得到数组的最大值最小值以及位置,由于位置是以数组形式表示的,则用数组索引把行数列数提取出来并显示。
但这个方法的问题在于,数组的最大值最小值函数并不能把数组中所有的最值的位置都输出出来,它只输出第一个找到的最值的位置。
5、第五题建立一个簇然后在簇里添加题目要求的内容后,把顺序设置好,接着按顺序把相应的输入控件捆绑到簇中。
6、第六题首先求阶乘要分为3种情况,一是等于零,而是大于零,还有就是小于零。
让用户输入n的值后,马上进行判断,如果等于零,则直接输出1,如果小于零则输出0(表示出错),如果大于零则进入循环进行运算。
For循环中,以n为总循环次数,建立反馈节点(初值为1),i加1后再与自身相乘,得到结果;while循环中,以i加1后的值是否大于n为循环结束条件,其余与for循环相似。
虚拟仪器课程设计报告

目录1.课程设计题目的确定2.课程设计的目的和设计的任务3.课程设计的要求及技术指标4.总方案的确定并画出原理框图。
5.各基本单元原理及设计 (结合设计图写)。
6.总原理图,工作原理、工作特性(结合框图及前面版讲解)。
7.电路安装、调试步骤方法,调试中遇到的问题及分析解决方法。
8.实验结果分析,改进意见及收获。
9.体会。
一、课程设计题目的确定虚拟热水器水位水温控制系统设计二、课程设计的目的和设计的任务课程设计的目的:1)掌握LabVIEW软件编程方法2)掌握LabVIEW硬件的应用3)培养综合应用所学知识来指导实践的能力设计的任务:虚拟热水器水位水温控制系统设计温度控制系统是自动化系统中最常见的一类。
虚拟仪器是一种全新结构概念的仪器,其设计应用已经成为测试与仪器技术发展的一个重要方向。
本课题将结合一个虚拟热水器水位水温控制系统的设计开发过程,掌握使用基于图形化编程语言LabVIEW进行虚拟仪器编程的方法与实现技术,具有一定的实用价值。
三、课程设计的要求课程设计的要求:该设计要求用仿真的形式,模拟实际的水位水温变化。
具体做到如下几点:(1)前面板画面要形象逼真,要求有水箱、进水管道、出水管道、加热炉等;(2)水位有最高和最低限制及报警设置;(3)温度有最高和最低限制及报警设置;(4)实时显示水箱内的水位和温度,并用波形显示其变化情况;(5)仿照真实情况自由添加一些功能。
四、总方案的确定并画出原理框图。
原理框图:五、各基本单元原理及设计 (结合设计图写)。
第一个框图原理:实现进水箱进水功能,设定一个最大值,当进水箱水位达到最大值时停止进水。
第二个框图原理:实现电阻丝加热功能,设定一个最高温度值,当进水箱水温达到最大值时停止对进水箱中的水加热。
第三个框图原理:实现对储水箱的储水功能,同时进水箱的水位随储水箱水位的上升而下降。
六、总原理图,工作原理、工作特性(结合框图及前面版讲解)。
工作原理本系统工作原理为:由前面板的双位控制参数设定设定温度的上限和下限,在实际运行中,当温度小于设定的温度下限时,加热丝开始工作,直到温度大于设定的温度上限时,加热棒停止工作,当温度降到温度下限的时候,加热棒再次开始工作。
虚拟仪器课程设计实验报告

一、程序名称:信号分析平台二、设计目的:通过注册,登录信号分析平台,对信号进行边界测试、滤波处理、加窗处理以及利用直方图统计各个幅值的百分比。
本系统对信号进行了一系列分析与处理,包括各种窗函数的比较、脉冲序列、信号采样、频谱测量、瞬态测量、FIR滤波器和IIR 滤波器,借助LabView强大的信号分析和处理能力和虚拟仪器功能,对信号方便而快速的进行了处理,简化了操作过程,直观展现了信号分析的结果,减少了传统仪器复杂操作,可以作为学生学习的虚拟实验平台。
三、程序设计特点:1、已经注册的用户正确填上用户名和密码直接登录,而未注册的用户需经过注册才能使用此系统。
2、通过对电子表格的写入和读取,实现用户的注册和登录过程。
3、此系统操作过程简单清晰,从此系统不仅可以直观的得到信号的分析结果而且还可以通过“帮助”按钮获得理论知识,对于学生学习十分有助。
4、此程序可扩展性强,可以对信号进行更多的分析。
四、程序前面板:1、登录界面:填入正确的用户名和密码,用户就可以进入此系统;否则需要首先注册然后再登录进入。
2、登录成功后就进入了图二所示的平台主界面,通过点击每个操作图形按钮,就可以对信号进行图示所示的分析。
各个信号分析界面如图三(1~7)所示。
图一 登录界面图二 平台主界面图三(1) 窗函数比较图三(2) 脉冲序列3、在各个信号分析面板上通过点击“帮助”按钮,可以调出详细帮图三(3)频谱测量图三(4) 信号采样图三(5) FIR 滤波器图三(6) IIR 滤波器助子函数对话框,如图四所示,用户可以通过点击按钮改变字号和是否加粗。
图三(7)瞬态测量五、部分程序框图:图五登录程序面板图六注册程序面板图七(1)窗函数比较框图图七(2)脉冲序列框图图七(3)频谱测量框图图七(4) 信号采样框图图七(5)FIR滤波器框图图七(6)IIR滤波器程序面板图七(7)频谱测量框图六、设计总结:这次课程设计中设计的信号分析平台,在继续虚拟仪器课堂作业的基础上进行了改进,利用LabVIEW 对信号进行了更多更全面的分析和处理,并用生动的图像表现出来,使我们在掌握虚拟仪器开发技术的同时,加深了对信号分析的理解,培养了创新的意识,锻炼了实际动手的能力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
虚拟仪器技术课程设计题目:基于LabVIEW的自动化控制和编程设计院(系、部): _____ 电控学院班级:测控06-2班___________姓名:________ 徐宁_______________学号:0605070218 ____________指导教师: ___________ 宏志_______________工程技术大学课程设计成绩评定表指导教师:宏志教研室主任:宏志时间:2009年6月15日摘要随着人类社会的进步与科学技术的发展, 计算机技术在民用和工业控制领域的作用愈显示出其魅力。
特别是串行通信技术, 已成为实现生产自动化, 提高生产力, 减轻劳动强度的有效手段。
串口通信是一种在计算机与计算机之间或计算机与外围设备之间传送数据的常用方法。
串行通信使用计算机建的串口, 用户无需再购买任何特殊硬件, 只要一根串口线就可以达到发送或接收数据的目的, 而且不失测试的准确性。
但传统的串口调试采用高级语言, 程序代码冗长, 不便,进行功能拓展。
如果对串口数据进行分析, 则需推翻原有程序结构,重新编制代码。
图形化编程语言LabVIEW的出现为串口调试与数据分析带来了极大方便。
本文开发了基于LabVIEW的串口调试软件,并给出了在该软件基础上扩展串口数据分析模块。
系统以ATM5係列单片机为核心,主要由CCD摄像头、信号调理电路(包括低通滤波电路和电荷放大电路、RS-232通信电路等几部分组成。
在本系统中,利用单片机部的ADC把经过放大调理后模拟量转换为数字量, 利用串口传送到上位机。
在上位机可以方便的对采样数据进行分析记录。
上位机采用软件LABVIEW图形化的语言编写,具有友好的人机界面。
利用Labview 软件进行双机串行通信系统可分为以下 3 个模块:(1) 端口配置模块: 负责串口的开关、端口的选择、波特率、数据位、停止位、校验位的选择等。
(2) 数据发送模块: 负责实现发送数据的处理与数据的多种发送方式, 具有选择手动发送或自动发送、选择发送数据的类型、设置自动发送时间间隔、读取要发送的文本、清空发送区域等功能。
(3) 接收显示模块: 负责实现接收数据的处理与数据的多种显示方式, 具有自动接收和结束接收的功能, 能够保存接收的数据和清空显示区域。
串口通信方式简单、可靠、稳定, 具有很好的可移植性、实时性, 且具有使用线路少、成本低,特别在远程传输时,能够避免多条线路特性的不一致而被广泛采用。
LabVIEW作为一个具有良好开放性的虚拟仪器开发平台, 为面向仪器的编程提供了强有力的支持, 在LabVIEW环境下能够开发出各种功能强大、开放性好的虚拟仪器软件,构造出实用的计算机辅助测试、分析与控制系统。
事实表明,与传统方法相比,基于LABVIEW的串口调试与数据分析效率高、功能全、操作简单、功能强大, 具有良好的可移植性和可扩展性, 能够很好地满足用户要求。
关键字:串口通信单片机CCD摄像头文献综述在基于PC 机的测控领域中, 虚拟仪器技术的应用越来越广泛,由于大多数PC 机都有1〜2个RS2232串行通信接口,因此,串行通信非常流行。
串行通信是一种古老但目前仍常用的数据传输方法,它用于PC机与其他仪器(例如MCS251单片机、变频器等可编程仪器)或者与另外一台计算机之间的通信。
通信最终目的是将发送端发送的数据正确无误地传到接收端, 由于种种因素的影响, 接收端可能会收到错误的数据, 甚至数据根本就没有收到。
在进行异步通信时, 为了避免这种差错, 目前大多采用检错重发的方法加以改正。
随着高性能处理器的出现, 在实际应用中已越来越多地运用软件方式对传输的数据进行检错。
其中较常用的方法有异或和、校验和、循环冗余码校验(CRC)等方法。
对于一般的测控系统采用较多是前两种方法,本文着重讨论基于LabVIEW的串口通信数据校验和的实现方法。
在弹体硬目标侵彻试验中, 对高冲击信号的提取最常用的是压电加速度传感器, 由于压电加速度传感器产生的电荷量很小,为了记录弹体高速侵彻硬目标过程中的加速度—时间曲线很重要的一步就是实时采集数据并对其进行显示、存储和总结测试结果。
在传统的测试系统中, 通常只能对静态参数或极缓慢变化的参量进行测量, 对动态参量, 特别是快速过程或单次猝发过程只能借助于图形记录分析仪。
与传统仪器相比, 虚拟仪器提高了仪器资源的可再用性、系统可靠性、测量精度和测量可重复性。
LabVIEW是美国国家仪器公司(Nationailnstrument) 开发的一种虚拟仪器平台,它提供了丰富的数据采集、分析和存储库函数以及包括DAQ、GPIB、PXI、VXI、RS-232/485 在的各种仪器通信总线标准的所有功能函数。
本文正是利用基于LabVIEW 的虚拟仪器技术对传感器的信号进行采集。
过程较为复杂, 编程工作量较大, 周期长, 效率低。
如果将单片机为核心的小系统作为前端的数据。
LabVIEW 程序由三部分构成, 即前面板、程序框图和接口板。
前面板实现的是程序的输入输出功能, 它包括旋钮、按钮、图形和其他控制元件与显示元件以完成用鼠标、键盘向程序输入数据或从计算机显示器上观测数据, 图4 是条码扫描器控制的主程序界面。
程序框图是图形化编程,是VI 图形化的源代码,对前面板上的各种控件对象进行控制,是VI 测试功能软件的图形化表示。
接口板为函数模板, 它包括编程所涉及到的VI 程序和函数,VI 程序使用接口板来替代文本编程的函数参数表, 每个输入和输出的参数都有自己的连接端口。
LabVIEW串口子VI是通过RS-232串口总线与PC实现数据通信。
LabVIEW串口子VI共有 6 个串行通信节点, 主要完成对串口的设置和读写操作等功能。
(1) 串口参数设置节点(VISAConfigureSerialPort.vi): 用于对串口进行参数设置, 包括串口号、波特率、数据位、停止位、奇偶校验、数据流量控制等。
(2) 串口写节点(VISAWrite): 向发送缓冲器写入数据或命令。
(3) 串口读节点(VISARead): 从串口缓存中读出所传送的数据。
(4) 读串口缓存节点(VISABytesatSerialPort): 读串口所有排队等待的数据。
(5) 串口中断节点(VISABreak.vi): 向串口延时发送数据, 延时时间可以设置。
(6) 串口关闭(VISAClose): 将打开的串口关闭。
在LabVIEW中,进行串口通讯的基本步骤分为3步:第一:串口初始化,利用VISAConfigureSerialPort.vi 节点设定串口的端口号、波特率、停止位、校验位、数据位,需要注意的是在LabVIEW中串口号是从0开始编号的。
第二:读写串口,利用VISARead节点和VISAWrite节点对串口进行读写。
第三:关闭串口, 停止所有读写操作。
本系统以单片机和CCD摄像头传感器为主的前端采集系统来代替数据采集卡,单片机具有体积小、功耗低、性价比高等特点。
但开发据采集系统,将采集到的数据利用串口传送到PC 主系统,在LabVIEW环境下对数据进行显示、处理与分析,既充分利用了LabVIEW 的强大功能,又降低了系统的开发成本,提高了效率。
摄像头的主要工作原理具体而言,摄像头连续地扫描图像上的一行,则输出就是一段连续的电压视频信号,该电压信号的高低起伏正反映了该行图像的灰度变化情况。
当扫描完一行,视频信号端就输出低于最低视频信号电压的电平(如0.3V),并保持一段时间。
这样相当于,紧接着每行图像对应的电压信号之后会有一个电压“凹槽”,此“凹槽”叫做行同步脉冲,它是扫描换行的标志。
然后,跳过一行后(因为摄像头是隔行扫描的方式),开始扫描新的一行,如此下去,直到扫描完该场的视频信号,接着就会出现一段场消隐区。
此区中有若干个复合消隐脉冲,其中有个脉冲远宽于(即持续时间长于)其他的消隐脉冲,该消隐脉冲又称为场同步脉冲,它是扫描换场的标志。
场同步脉冲标志着新的一场的到来,不过,场消隐区恰好跨在上一场的结尾部分和下一场的开始部分,得等场消隐区过去,下一场的视频信号才真正到来。
摄像头每秒扫描25 幅图像,每幅又分奇、偶两场,先奇场后偶场,故每秒扫描50 场图像。
奇场时只扫描图像中的奇数行,偶场时则只扫描偶数行。
1 Labview部分设计1.1 visa 简介Labview提供了强大的VISA库°VIS 虚拟仪器软件规,是用于仪器编程的标准I/O函数库及其相关规的总称。
VISA库驻留于计算机系统中,完成计算机与仪器之间的连接,用以实现对仪器的程序控制,其实质是用于虚拟仪器系统的标准的API。
VISA本身不具备编程能力,他是一个高层API,通过调用底层驱动程序来实现对仪器的编程,如图1, VISA 是采用VPP标准的I/O接口软件,其软件结构包含三部分,如图2。
图1 visa 结构图图2实际接口图与其它现存的I/O接口软件相比,VISA的I/O控制功能具有如下几个特点:适用于各种仪器类型(如VXI仪器,GPIB仪器,RS-232串行仪器,消息基器件,寄存器器件,存储器器件等仪器);适用于各种硬件接口类型;适用于单、双处理器结构或分布式网络结构;适用于多种网络机制VISA的I /O软件库的源程序是唯一的,其与操作系统及编程语言无关,只是提供了标准形式的API文件作为系统的输出。
1.2发送端程序设计1. 2. 1 设置顺序框架启动LabVIEW,在其框图程序中加入顺序框架(sequenee structure), 在顺序框架的右键快捷菜单中选择Add Frame After,再添加两个顺序框架。
这样就形成了0、1、2逐步执行的三个顺序框架,它们分别对应串口的参数设置、发送数据、接收数据。
1. 2. 2 设置串口参数LabVIEW共有5个串行通信节点,分别实现串口设置、写串口、读串口、检测串口缓存、中断等功能,这些节点位于功能模板—Instrument I/O 子模板—Serial子模板中。
在0号顺序框架中,按图3所示设置串口,其中在此顺序框架中引入了本地结果变量,利用此变量将端口号传递给后面的顺序框架。
刁口匚|口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口;;端口号:口口口口口口口口口口口口口口口口匸口口口口口□□ 口口口口口口口口::图3设置串口参数图1. 2. 3 校验和的计算并发送数据在1号顺序框架中,通过For循环将5组十六进制字符转换为二进制数并相加(丢弃进位),然后取反加1。
将此结果再转换为十六进制字符,与原5组十六进制字符利用Build Array 节点组成发送数据块数组,通过写串口节点分6次发送至串口。
1. 2. 4 接收返回信息接收端收到数据后经过检错,若无误就接收数据而不返回任何信息;若有错就发送“数据有误,请重新发送!”信息。