用labview设计一个计算器(虚拟仪器)
用LABVIEW实现简单计算器的设计

计算机虚拟仪器技术设计综合报告题目: 简单计算器设计学生姓名:学院:自动化学院专业及班级:__________________________课程设计任务书学生姓名:_______ 专业班级:电气1206班__________ 指导教师:刘金根工作单位:信息工程学院题目:简单计算器设计要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)用LABVIEV实现简单计算器的设计,能够实现简单的加减乘除运时间安排:指导教师签名:系主任(或责任教师)签名:计算器的设计设计内容形如WINDOWS 带的标准型计算器。
一、设计思路完成标准型计算器的一般功能。
输入第一个数,进行存储并显示 输入运算的类型并存储 k 输 入第二个数,存储并显示按“=”或则按其它运算符号“ +、-、*、/”进行连续的运算,最后显示运算结果。
二、具体的实现过程 1、键入感应数字键,1个小数点键,4个“ +、-、*、/”运算键,1个等号键,1个开方键, 1个符号转换键,1个倒数键,1个求百分数键,1个清零键,1个退格键,1个 退出键。
如下图所示:然后通过二L 将簇中元素按产生的顺序组成一个一维数组, 这样就实现了每 个键与数字(1--23)之间的对应。
每次按下一个键时,通过 并把其"后对应的数字连接到一个case 结构,然后执行对应case 结构中的程 序,至此就完成了对一个键的感应过程。
如下图所示:23个布尔量,其中包括0--9十个首先建立一个簇然后在簇中建立运算变量的初始化在运行程序之前,首先对需要用到的变量进行初始化,如图所示无操作时的默认输出fi rstiun运耳袴号Display敬值当键盘上的键没有任何一个按下时,系统默认输出,其中等待时间为2、数字1--9的输入以数字“ 1”为例,当第一次输入数字“ T 后,波尔量为真,进入case 结 构,将1输出到display 中,波尔量变为假。
(图1.4.1 )若再次输入1,为避 免出现01这样的字符串,先判断之前显示的数据是否为 0,若为0,则直接输出 1,(图1.4.2 )若不为0,则将这两次输入的数据通过连接字符串 匚也连接到一 起,在display 中输出。
虚拟计算器labview课程设计

虚拟计算器labview课程设计一、课程目标知识目标:1. 学生能理解LabVIEW虚拟计算器的基本原理和使用方法。
2. 学生能掌握使用LabVIEW进行基础数学运算,如加、减、乘、除和幂运算。
3. 学生能掌握LabVIEW中的条件语句和循环结构,用于复杂计算。
技能目标:1. 学生能运用LabVIEW软件设计并搭建一个具备基本计算功能的虚拟计算器。
2. 学生能通过LabVIEW编程实现对计算器输入输出界面的设计和优化。
3. 学生能运用调试和排错技巧,确保虚拟计算器的稳定运行。
情感态度价值观目标:1. 学生培养对计算机编程和虚拟仪器的兴趣,激发创新意识和探索精神。
2. 学生在团队协作中学会相互尊重、沟通和解决问题,培养合作精神和集体荣誉感。
3. 学生通过解决实际问题,认识到科技对社会发展的作用,增强社会责任感和使命感。
本课程针对高年级学生,结合LabVIEW虚拟计算器的设计与实现,注重理论知识与实践技能的结合。
课程目标旨在帮助学生掌握LabVIEW编程基础,提高解决实际问题的能力,同时培养积极的学习态度和价值观。
通过具体的学习成果分解,教师可进行有针对性的教学设计和评估,确保课程目标的达成。
二、教学内容1. LabVIEW基础入门- LabVIEW软件界面及基本操作- 前面板与程序框图的基本概念- 控件与 indicators 的使用2. 算术运算功能实现- 基础数学运算节点:加、减、乘、除、幂运算- 数值数据类型及其转换- 算术运算程序框图设计3. 控制结构- 条件结构:选择与分支- 循环结构:For 循环与 While 循环- 控制结构在计算器中的应用4. 界面设计及优化- 前面板设计原则与技巧- 输入输出控件的布局与美化- 界面交互性提升5. 程序调试与排错- 程序调试工具的使用- 常见错误类型及解决方法- 程序性能优化教学内容依据课程目标进行选择和组织,确保学生能够系统掌握LabVIEW虚拟计算器的制作。
labview简易计算器课程设计

labview简易计算器课程设计一、课程目标知识目标:1. 学生能理解LabVIEW编程基础,掌握创建虚拟仪器的基本步骤。
2. 学生能运用LabVIEW中的数学运算节点,实现简易计算器的加、减、乘、除功能。
3. 学生了解LabVIEW中的数据类型及其在计算中的应用。
技能目标:1. 学生能够独立设计并搭建简易计算器的LabVIEW程序,实现基础运算功能。
2. 学生通过实践操作,提高问题分析、程序设计和调试的能力。
3. 学生能够运用所学知识解决实际问题,形成计算思维。
情感态度价值观目标:1. 学生培养对计算机编程的兴趣,认识到编程在生活中的应用价值。
2. 学生通过团队协作,培养沟通与协作能力,形成良好的团队精神。
3. 学生在解决问题的过程中,培养勇于尝试、不断探索的精神,增强自信心。
课程性质:本课程为信息技术课程,以实践操作为主,注重培养学生的动手能力和计算思维。
学生特点:学生为初中年级,具备一定的计算机操作基础,对新鲜事物充满好奇,喜欢动手实践。
教学要求:教师应结合学生特点,以引导为主,让学生在实践中掌握知识,提高技能,培养情感态度价值观。
教学过程中,注重分层教学,关注每个学生的学习进度,确保课程目标的实现。
通过课程目标的分解,使学生在完成具体学习成果的过程中,达到课程目标的要求。
二、教学内容1. LabVIEW基本概念与操作- 虚拟仪器与LabVIEW简介- LabVIEW编程环境熟悉- 前面板与后面板的基本操作2. 简易计算器程序设计- 数据类型与数学运算节点介绍- 加、减、乘、除功能的设计与实现- 程序调试与优化3. 实践操作与案例分析- 设计并搭建简易计算器程序- 分析实际案例,了解LabVIEW在计算器中的应用- 课堂讨论与问题解决教学大纲安排:第一课时:LabVIEW基本概念与操作- 导入新课,介绍虚拟仪器与LabVIEW- 学生熟悉LabVIEW编程环境,了解前面板与后面板操作第二课时:简易计算器程序设计(一)- 讲解数据类型与数学运算节点- 学生学习加、减功能的设计与实现第三课时:简易计算器程序设计(二)- 学生学习乘、除功能的设计与实现- 程序调试与优化第四课时:实践操作与案例分析- 学生设计并搭建简易计算器程序- 分析案例,课堂讨论,问题解决教学内容与进度按照上述大纲进行,确保学生能够循序渐进地掌握LabVIEW 简易计算器的程序设计。
基于LABVIEW的简易计算器设计

基于LABVIEW的简易计算器设计1.引言计算器是一种用于进行基本数学运算的设备或程序。
在本文中,将使用LABVIEW软件设计一个简单的计算器。
在这个计算器中,我们将实现加法、减法、乘法和除法运算,并且能够进行小数和负数的计算。
2.设计框图首先,我们将使用LABVIEW软件创建一个新的项目。
在项目中,我们将创建一个前面板和一个图表用于计算器的图形化表达。
在前面板中,我们将使用几个数字输入控件和一个字符串显示控件。
数字输入控件用于输入操作数和运算符,而字符串显示控件用于显示结果。
3.功能模块计算器的功能可以被分成几个独立的模块,包括数字输入、运算符输入和计算结果。
让我们详细了解每个模块的实现。
3.1.数字输入数字输入模块负责接收用户输入的操作数。
我们可以使用数字输入控件来获取用户输入的操作数并将其存储在内存变量中。
3.2.运算符输入运算符输入模块负责接收用户输入的运算符。
我们可以使用数字输入控件来获取用户输入的运算符并将其存储在内存变量中。
3.3.计算结果计算结果模块负责执行数学运算并将结果显示在字符串显示控件中。
我们可以使用数字输入变量和运算符变量来执行相应的计算操作。
4.程序实现在LABVIEW中,我们可以使用块图对上述功能模块进行编程。
以下是一个简单的程序实现示例:4.1.数字输入模块实现数字输入模块的实现非常简单。
我们只需要创建一个数字输入控件,并将其连接到数字输入变量。
这将使用户能够输入操作数。
4.2.运算符输入模块实现运算符输入模块的实现也很简单。
我们只需要创建一个数字输入控件,并将其连接到运算符输入变量。
这将使用户能够输入运算符。
4.3.计算结果模块实现计算结果模块的实现需要一些数学运算。
我们可以使用分支结构来根据用户输入的运算符执行相应的运算。
-如果运算符是加法,则将两个操作数相加。
-如果运算符是减法,则将第一个操作数减去第二个操作数。
-如果运算符是乘法,则将两个操作数相乘。
-如果运算符是除法,则将第一个操作数除以第二个操作数。
如何利用LabVIEW进行虚拟仪器设计和仿真

如何利用LabVIEW进行虚拟仪器设计和仿真利用LabVIEW进行虚拟仪器设计和仿真LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种集数据采集、信号处理、仪器控制和虚拟仪器设计于一身的集成开发环境,广泛应用于各个领域的工程实验和测试中。
本文将介绍如何利用LabVIEW进行虚拟仪器设计和仿真,并提供一些实际案例来说明其应用价值。
一、LabVIEW介绍LabVIEW是由美国国家仪器公司(National Instruments, NI)于1986年推出的一种图形化编程语言。
与传统的文本编程语言相比,LabVIEW通过将函数块拖拽到界面上并进行连接来组成程序,使得程序的开发更加直观、易于理解。
LabVIEW提供了丰富的工具箱和函数库,可用于数据采集、信号处理、仪器控制和用户界面设计等方面。
二、虚拟仪器设计虚拟仪器是指利用计算机软件和硬件模拟真实仪器的功能。
利用LabVIEW可以轻松地设计各种虚拟仪器,如示波器、信号发生器、频谱分析仪等,用于实现数据采集和信号处理等功能。
LabVIEW提供了众多的仪器模拟器和控件,用户只需简单地拖拽和配置这些组件,即可实现一个功能完备的虚拟仪器。
三、虚拟仪器仿真利用LabVIEW进行虚拟仪器仿真可以帮助用户在设计阶段快速验证算法和性能,并且可以方便地进行多种参数的调整和测试。
LabVIEW提供了灵活且强大的仿真工具,用户可以根据需要配置仿真场景、定义仿真信号和操作流程,并通过动态调整参数和监测仿真结果来完成虚拟仪器的性能评估。
四、LabVIEW在工程实践中的应用1. 数据采集和处理利用LabVIEW可以方便地搭建数据采集系统,并通过各种传感器和硬件设备获取实时数据。
同时,LabVIEW提供了丰富的信号处理函数和算法,可以对采集的数据进行滤波、降噪、频谱分析等处理,从而提取出有效信息。
2. 仪器控制和自动化LabVIEW支持与各类仪器设备的通讯和控制,可以通过GPIB、USB、Ethernet等接口与仪器进行连接,并通过LabVIEW编写程序来实现仪器的自动化控制。
LabVIEW实验简易计算器

虚拟仪器实验--简易计算器设计一、实验目的1. 熟悉LabVIEW的编程环境,了解其特点。
2. 学会用LabVIEW实现简单的程序设计,了解图形化编程的方法和步骤。
3. 掌握数据对象类型、数组、簇的概念和其他基本函数,以及它们之间如何进行相互转化。
4. 掌握LabVIEW中一些函数和结构的用法。
二、实验要求编写标准计算器,实现基本的加、减、乘、除等功能,能进行简单的计算,完成源程序的编写和功能测试。
三、实验设备安装LabVIEW的计算机。
四、实验内容4.1计算器功能介绍1. 可以实现加、减、乘、除、求倒、开根、正弦等运算。
2. 可以实现连续运算。
3. 对错误输入可以借助Backspace键进行删除;运算完成后可以借助C键释放内存。
4. 对误操作进行屏蔽,如在一个数中只可能输入一个小数点。
5. 运算结果可以精确到小数点后第6位。
4.2程序变量设置及说明进入主程序,首先判断输入是数字、运算符、等号还是撤销(或清除)。
1.输入为数字。
将输入数字转换为字符并连接到原数据后显示组合后的字符串,保存该字符串。
2.输入为运算符。
判断运算符的类型,当运算符为“+”、“-”、“*”、“/”时,调用上一运算符,并保存此次输入的运算符,同时显示运算结果并保存相应的结果数据;当运算符为“1/x”、“sqrt”、“sin”时,直接对此时输入的数据进行相应的倒数、开方、正弦运算。
3.输入为等号。
执行之前保存的运算符,显示运算结果,同时结束该运算,返回初始状态。
4.输入为Backspace或C键。
Backspace键可以删除前一输入数据或运算符;C键可以清除数据并释放内存。
简易计算器程序设计框图见图1。
图1 程序设计框图4.2.1 主要程序编写及说明:1. 输入0处理显示程序模块判断Display是否是0,如果是则显示“0”,如果不是则用连接字符串函数输出显示,并相应的赋给input1或input2。
2. 小数点处理显示程序模块利用全局变量(布尔型)zeroflag作为小数点指示标志,默认为F。
基于labview虚拟计算器的设计与实现

拟真实计算器而进行运算 。 使用虚拟仪器技术 , 工程师可 以利用 图 形化开发软件l a b v i e w方便、 高效的创建完全 自定义 的解决方案, 以 满足灵活多变的需求趋势 。 设计的虚拟计算器是利用虚拟仪器l a b v i e w技术 而完成 的, 可 以完成利用计算 器可 以进行简单 的四则运算 、 可 以进行平方 、 开根 号和倒数运 算、 计算器可以进行清零 和关闭计算器操作 、 在输入数 据时不慎将某个数字输错可 以运用B a c k s p a c e  ̄除该值 等一些基本 简单的运算 , [ 2 1 3 ] [ 4 1 另外 , 通 过特殊运 算模 块为计算器 添加特殊运算
两个输入数据的加、 减、 乘、 除运算和一些特殊运算 。 若某次运算完 参 考文献 成, 计算器则停止运算 。 当计算器运算结果 出现错误 时, 例如1 / 0 没 [ 1 ]郑对 元 精通 L a b V I E W 虚拟仪器程序设计[ M ] . 清华大学 出版 社, 有 意义 , 这 时出现错误 , 计 算器 会输 出“ I n f ” 提示用户 输出错误 , 并 2 0 1 2 0 5 : 3 8 8 . 将 错误代码显示在 前面板上 。 [ 2 ]任凯 基于 J A V A的简单计算器 的设计 与实现[ J ] . 电脑知识 与技
Ke y W o r ds: l a bv i e w vi r t ua l c a l c la u t or VI
虚拟 计算 器是 一种在 计算 机上 实 现各种 工具 , 它 能 完 成 对 功能 : l o g 、 I n 、 立方, 以及基本 的三 角运 算等。 输 入量 的一 些简 单计算 和 显示 , 是 生 活 中和 工 业 应 用 中 的 方 便 1设计 思路 工具。 f 1 ] 虚拟计算器 是通过界 面上 的输入按钮或计算机键盘上 的数 据 基于l a b v t e w利用虚拟仪器技 术而设计 的计算器 , 可以用来模
用labview设计一个计算器(虚拟仪器).-共15页

科目:姓名:学号:院系:类别:(学术、专业)实验一Labview 计算器一、实验目的通过利用labview设计一个简易计算器熟练的掌握labview基本功能和基本操作方法。
二、实验要求利用设计的计算器可以进行简单的四则运算、可以进行平方、开根号和倒数运算、计算器可以进行清零和关闭计算器操作、在输入数据时不慎将某个数字输错可以运用BackSpace清除该值等一些基本简单的运算。
三、实验原理和框图1、前面板设计前面板是LabVIEW的图形用户界面,在LabVIEW环境中可以对这些对象的外观和属性进行设计,LabVIEW提供了非常丰富的界面对象,可以方便地设计出生动、直观、操作方便的用户界面。
本系统中前面板显示程序的输入和输出对象,即,控件和显示器。
本程序中控件主要是按钮,显示器主要是文本显示。
在前面板设计过程中先在前面板整齐排列放置22个确定按钮,将这22按钮的标签隐藏,然后修改这22个确定按钮的名字分别为:0~9十个数字、小数点、正负号、加、减、乘、除、等号、倒数、根号、清零、退格和X的Y次方。
前面板还包括一个文本显示控件用于显示计算的结果和计算器的某些提示,通过改变显示控件的大小使之于计算器的大小相适应。
计算器的前面板还有程序框图中while循环的停止按钮,当按钮按下时计算器停止工作退出到LabVIEW的编辑界面。
为了前面板的美观和防止按钮的移动,分别将前面板的各个按钮和文字进行组合和对前面板进行装饰,装饰采用修饰中的平面框。
如下图所示:2.后面板设计程序框图对象包括接线端和节点,将各个对象连线连接便创建了程序框图,接线端的颜色和符号表明了相应输入控件或显示控件的数据类型。
程序框图是程序的核心,程序要实现的功能都是通过程序框图反应出来的。
本课程设计的程序框图主要运用了while循环、时间结构、条件结构和平铺顺序等结构。
通过上图可以看出当小数点按钮按下时,0.和存临时数据通过字符串连接控件将两者连接到一起;小数点按钮没有按下时,临时数据和小数点通过字符串连接按钮也将两者连接在一起,将连接到一起的数据送到显示控件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
虚拟仪器实验报告科目:姓名:学号:院系:类别:(学术、专业)实验一Labview 计算器一、实验目的通过利用labview设计一个简易计算器熟练的掌握labview基本功能和基本操作方法。
二、实验要求利用设计的计算器可以进行简单的四则运算、可以进行平方、开根号和倒数运算、计算器可以进行清零和关闭计算器操作、在输入数据时不慎将某个数字输错可以运用BackSpace清除该值等一些基本简单的运算。
三、实验原理和框图1、前面板设计前面板是LabVIEW的图形用户界面,在LabVIEW环境中可以对这些对象的外观和属性进行设计,LabVIEW提供了非常丰富的界面对象,可以方便地设计出生动、直观、操作方便的用户界面。
本系统中前面板显示程序的输入和输出对象,即,控件和显示器。
本程序中控件主要是按钮,显示器主要是文本显示。
在前面板设计过程中先在前面板整齐排列放置22个确定按钮,将这22按钮的标签隐藏,然后修改这22个确定按钮的名字分别为:0~9十个数字、小数点、正负号、加、减、乘、除、等号、倒数、根号、清零、退格和X的Y次方。
前面板还包括一个文本显示控件用于显示计算的结果和计算器的某些提示,通过改变显示控件的大小使之于计算器的大小相适应。
计算器的前面板还有程序框图中while循环的停止按钮,当按钮按下时计算器停止工作退出到LabVIEW的编辑界面。
为了前面板的美观和防止按钮的移动,分别将前面板的各个按钮和文字进行组合和对前面板进行装饰,装饰采用修饰中的平面框。
如下图所示:2.后面板设计程序框图对象包括接线端和节点,将各个对象连线连接便创建了程序框图,接线端的颜色和符号表明了相应输入控件或显示控件的数据类型。
程序框图是程序的核心,程序要实现的功能都是通过程序框图反应出来的。
本课程设计的程序框图主要运用了while循环、时间结构、条件结构和平铺顺序等结构。
通过上图可以看出当小数点按钮按下时,0.和存临时数据通过字符串连接控件将两者连接到一起;小数点按钮没有按下时,临时数据和小数点通过字符串连接按钮也将两者连接在一起,将连接到一起的数据送到显示控件。
数值控件与运算按钮没有直接的连线,这就需要对控件进行引用,将引用后的结果经过属性节点和字符串至十进制转换将按下的按钮扫描到临时数据进行临时保存。
图3-3四则运算的除法运算在四则运算的过程中,通过运算符按钮对四则运算进行控制,在进行除法运算当除数为零时,会出现错误的提示。
当除数不为零时,除法运算跟加减乘的运算是一样的。
图3-4清零操作清零操作就是将运算符、小数点、显示和操作等控件的局部变量返回到计算前的设定值,以便于进行下一步的运算。
图3-5退格操作当输入的数据较大或者在进行连续运算时,不慎将某个数输入错误如果进行清零操作就会导致以前的工作全部功亏于溃,这是只需进行退格操作将输入错误的数值清除即可,不过计算后的结果不能进行退格操作。
图3-6开根号运算开根号是计算器最基本的功能,在进行开根号运算之前应该先对开根号的数值进行判断是否满足开根号的条件。
当根号下的数值小于零时,会显示出“错误:被开放数小于零!”;根号下的数值大于等于零时,会通过计算显示出正确的结果。
图3-7x的y次幂运算在进X的Y次幂操作时,先输入的为底数后输入的为幂数。
X的Y次幂运算已经在前面定义过了,在这里只需调用就可以了。
图3-8倒数运算倒数运算跟除法运算非常相似,只需将除法运算中的被除数改为固定数1就可以了,同时还必须考虑除数为零的情况,这按除法运算的设计方法就可以了。
四、系统调试:1.四则运算。
此运算利用+、—、×、÷可以进行一些基本简单的混合运算;2.开平方(Sqrt)。
此按键的功能是对某个数进行开方运算;3.清除按键(Backspace)。
此按键的功能是当输入有误时,用此按键可以清楚错误输入;4.清零按键(CE)。
此按键的功能是直接将显示数据清零,从新开始新的运算;5.x的y次方运算(x∧y)。
此按键的功能是进行x的y次方运算;6.取倒数(1/x)。
此按键的功能是求x的倒数。
五、总结利用本次计算器课程设计实验,我对虚拟仪器技术有了更加一步的了解,在全球数据采集(DAQ)市场中长期保持领先地位的NI数据采集系列产品专门针对绝对精度、高速性能、易用性和安全性等方面进行优化设计。
通过创造性地将模拟和数字设计相结合,NI数据采集设备可以帮助工程师们轻松满足各种测量要求。
实验二模拟输入一、实验目的1了解LabVIEW中进行数据采集的过程;2掌握基本的数据采集模块的使用;3学会使用中级数据采集模块进行编程;4学会用软件触发显示实时波形。
二、实验要求通过BNC-2120连接器和P6014E采集卡,实现单通道多点采集,用软件触发显示实时波形。
三、实验原理及框图1单通道连续数据采集本程序需调用Intermediate VI中的AI Config VI、AI Strat VI及AI Read VI 等来实现,其程序如图1所示,首先在AI Config VI中需要指定缓冲区长度Buffer size,其余参数可采用默认值。
在AI Start VI中需要设置扫描速率scan rate,即指定采样频率;此外,需将通道列表扫描的次数number of scans to acquire设为0,以实现连续采集。
程序中设置了一个While循环,开始采集后,在循环中不断读取缓冲区中数据,并送往示波器加以显示。
用AI Clear VI来清除模拟输入操作和缓冲区的配置,并释放DAQ卡上的资源。
图1 单通道连续数据采集程序2软件触发数据采集软件触发是在数据采集时,对A/D转化的信号进行比较监测,当满足软件触发的条件时开始将采集数据读取到数据缓冲区,并在采集结束后将数据传输到计算机。
即信号采集一直在进行,但只对满足条件的数据进行处理。
其程序如图2所示,主要需要对AI Read VI的conditional retrieval进行配置,包括触发电平、触发方式等。
图2 软件触发数据采集程序四实验结果1单通道连续数据采集以1kHz为采样频率,对正弦波信号源进行连续采样,所得结果如图3所示。
2软件触发数据采集以1V 为触发电平,在上升沿和下降沿到来时进行数据采集,所得结果如图4图3 单通道连续数据采集结果图4 软件触发数据采集结果五实验总结通过本次实验,我初步了解了虚拟仪器的数据采集功能,学会了在LabVIEW 中编写简单的数据采集程序,基本达到了实验目的,为以后学习和实验打下了基础。
实验三、模拟输出一、实验目的在数据采集的基础上,进一步熟悉数据输出的各种模块了解它们的作用和接方式能够正确运用DDS 原理产生单通道的正弦波信号,并能够对频率和幅度进行调节。
二、实验要求输出频率f 可调,且频率分辨率f ∆可调的正弦波。
以固定100KS/s 采样率采集并实时显示输出波形。
三 实验原理及框图1DDS 原理介绍DDS 就是直接数字合成技术。
在数据输出中,先产生一系列的正弦波数据,存储到buffer 中,然后通过参数的配置,输出不同频率和幅度的正弦波,如图1所示:图1 DDS 原理框图首先产生N 个的正弦波的值存储到buffer 中,n 表示这N 个正弦波值采集了多少个正弦波的周期。
输出波形的频率为:n NFs F = (1)NF f s=∆ (2) 其中:F 表示输出信号的频率,s F 表示DA 的update rate ,f ∆表示步长,n 表示buffer 里面存储的正弦波值的周期,N 表示buffer 的大小。
2、波形输出配置DDS 是整个程序的主要部分,接下来将产生的DDS 数组输入到write 模块中,具体模块如图2所示:图2波形输出配置框图config模块中对通道以及buffer的大小进行配置,接着write模块中将上一步产生的DDS数组输入,该模块的作用就是将输入DDS数组写入到采集卡的buffer 中,为下一步的数据输出做准备。
Start模块主要有2个参数配置,如上图所示。
该模块则是将在buffer中的数据不停的输出,0表示不停的连续输出,而30000则是update rate就是在DDS中提到的Fs。
这是一个比较重要的参数,对输出信号波形的好坏有很大的影响。
比如用30K的的update rate输出一个频率为2K的信号,那么一个周期内就有15个点,基本上能比较完整的表示一个正弦波,而通过实验表明本采集卡的最大update rate略大于30K,在产生3K信号的时候效果不是太好。
3)实时参数更改实验要求能够对输出的波形实时的更改其频率以及幅度。
因此在程序中加入了一个while循环,如图3所示。
图3 while循环设置循环左面的局部变量是为了判断频率或者步长是否发生变化,如果发生了变化就产生新的DDS信号,重新对buffer写入。
在进入write模块以前可以对幅度进行调节。
如果没有变化,就不对buffer进行操作。
一直循环到按下stop 键。
要注意步长的更改,因为在设计上将Fs固定,所以在改变步长以后N也发生了变化,也就是buffer的大小发生了变化,所以必须对采集卡重新进行配置。
四实验结果调频率分辨率为2000,调频率为20,采样率f s的值为1000,所以计算得t=0.1s,即f=10Hz,下图为输出波形图,改变输入参数,使得调频率分辨率为2000,调频率K为40,采样率f s的值为1000,所以计算得t=0.05s,即f=20Hz,下图为输出波形图,符合。
五实验总结通过本次实验,我初步了解了虚拟仪器的数据输出功能,学会了在LabVIEW 中编写简单的数据输出程序,基本达到了实验目的,为以后学习和实验打下了基础。