版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
声明本课件供《虚拟仪器技术》、《自动测试技术》等相关课程教师授课使用与参考.教师可根据课程需要和实际情况在此课件基础上增删内容本课件版权属NI(中国)公司所有,供中国大陆地区高校教师无偿使用或在课程中引用,但使用或引用之前请联系NI(中国)公司高校市场部获得免费使用授权(联系方式)本课件不得用于公开出版或其他商业用途.如需在公开出版物中引用其中部分内容,请与NI(中国)公司高校市场部联系获得授权现在是1页\一共有66页\编辑于星期一第三讲
LabVIEW开发环境及程序设计基础现在是2页\一共有66页\编辑于星期一课程章节LabVIEW简介LabVIEW基本开发环境介绍基本单元–
VI前面板&程序框图LabVIEW程序设计基础基本数据类型数据流基本结构子VI
&延时基本程序架构现在是3页\一共有66页\编辑于星期一LabVIEW的出现1986年诞生,革命性地简化了仪器控制的复杂度针对测量应用的界面控件符合工程思维方式的数据流编程现在是4页\一共有66页\编辑于星期一LabVIEW的出现推动了测试技术的发展从手工测试迈向自动化测试使仪器和PC得以有效连接有效降低了仪器控制的复杂程度从此以后,软件在测控系统中发挥的作用越来越大现在是5页\一共有66页\编辑于星期一LabVIEW的发展功能不断增加,效率不断提升不断融合各种最新的技术发展,简化工程师在测控系统中利用新技术的复杂度200520062003199820001993199719901986LabVIEW1.0MacintoshLabVIEW2.0编译语言程序LabVIEW3.0多平台LabVIEW4.0专业化开发LabVIEW6i网络技术LabVIEW5.0实时技术LabVIEW7ExpressPDA和FPGALabVIEW8.2020周年纪念版简体中文版LabVIEW8分布式智能2008LabVIEW8.6多核、FPGA、无线2009LabVIEW2009更高效率,机器人2010LabVIEW2010FPGA云编译现在是6页\一共有66页\编辑于星期一LabVIEW的本质是什么?首先是一种编程语言只不过是图形化的而已是一种针对工程师和科学家所设计的开发环境内置许多简化编程复杂度的功能和函数不仅仅是纯软件,能够控制并部署到硬件当中现在是7页\一共有66页\编辑于星期一LabVIEW作为编程语言的优势DataflowC/HDLCodeTextualMathSimulationStatechartPersonalComputersPXISystemsCompactRIOCustomDesignSingle-BoardRIOLabVIEW``Real-TimeLabVIEWDesktopLabVIEWFPGALabVIEWMPU/MCU支持连接各种硬件,而且支持发布到多种Target基于数据流的自然思维方式,但同时也支持调用文本语言的代码现在是8页\一共有66页\编辑于星期一一个简单而典型的LabVIEW应用采集分析表达第4讲数据采集与信号调理第5讲LabVIEW中的信号处理第3讲LabVIEW开发环境及程序设计基础第6讲LabVIEW程序设计进阶现在是9页\一共有66页\编辑于星期一LabVIEW基本开发环境介绍现在是10页\一共有66页\编辑于星期一VI——LabVIEW程序文件的基本单位VI(VirtualInstruments的缩写)由三部分组成前面板、程序框图(后面板)、图标/连线板现在是11页\一共有66页\编辑于星期一前面板相当于界面每个VI都有前面板输入控件Control,相当于输入显示控件Indicator,相当于输出控件选板现在是12页\一共有66页\编辑于星期一程序框图图形化的程序代码决定程序运行行为可能包含元素终端子VI函数常数结构连线函数选板现在是13页\一共有66页\编辑于星期一程序框图中的连线通过颜色、类型、粗细来表示不同的数据类型不同数据类型之间的连线会产生错误Ctrl+B可清楚所有错误连线LabVIEW8.6之后具有整理连线功能Scalar1DArray2DArrayDBLNumeric IntegerNumeric String现在是14页\一共有66页\编辑于星期一前面板和程序框图的工具栏LabVIEW程序的基本调试查看编译错误单步执行布置探针设置断点现在是15页\一共有66页\编辑于星期一工具选板一般LabVIEW会自动选择当前工具连线、拖拽、文字…利用工具选板可以强制选择工具着色、设置断点…现在是16页\一共有66页\编辑于星期一总结基本单元-
VI前面板–仪器的交互程序框图–仪器的功能工具栏现在是17页\一共有66页\编辑于星期一LabVIEW程序设计基础现在是18页\一共有66页\编辑于星期一基本数据类型1数值型整型有些数据类型的本质也是整形,如枚举型浮点型可以更改数据表达方式决定其占用的存储字节数及数值表达方式现在是19页\一共有66页\编辑于星期一强制数据类型转换通常,函数返回占用字节数较多的数据类型为提高程序执行效率,尽量避免自动强制转换强制转换点现在是20页\一共有66页\编辑于星期一基本数据类型2布尔型注意:前面板对应的布尔控件有六种机械动作可选可通过范例区别六种机械动作的不同现在是21页\一共有66页\编辑于星期一基本数据类型3字符串前面板控件可现实不同的显示方式Normal,‘\’Codes,Password以及Hex字符串操作函数选板现在是22页\一共有66页\编辑于星期一基本数据类型4枚举型本质上也可以认为是整型,不过取值范围有限常与条件结构共同使用某枚举型变量的配置对话框枚举型变量作为条件结构的分支选择依据现在是23页\一共有66页\编辑于星期一动态数据类型主要是与ExpressVI结合使用的如果与普通VI或函数共同使用,需要先进行类型转换如果连接至数值、波形、或布尔型终端(输入控件或显示控件),可自动转换现在是24页\一共有66页\编辑于星期一数组LabVIEW中的数组可以是1维的,也可以是多维的每一维元素从0开始索引数组元素当前显示的第一个元素所对应的索引现在是25页\一共有66页\编辑于星期一数组在LabVIEW的前面板/程序框图中创建数组在程序中对数组进行操作现在是26页\一共有66页\编辑于星期一簇类似与C语言中的结构体现在是27页\一共有66页\编辑于星期一簇创建簇需注意元素顺序现在是28页\一共有66页\编辑于星期一LabVIEW执行顺序-数据流原则1:只有当一个节点(函数或子VI)的所有输入端的数据全部准备好才会执行原则2:一个节点(函数或子VI)只有执行完成后才会向后输出数据现在是29页\一共有66页\编辑于星期一理解数据流哪个节点先执行?A)加法B)减法C)随机数D)除法E)正弦现在是30页\一共有66页\编辑于星期一理解数据流(没有固定答案)哪个节点先执行?A)加法–可能B)减法–不可能C)随机数–可能D)除法–可能E)正弦–不可能现在是31页\一共有66页\编辑于星期一一个简单的VI:采集、分析、表达现在是32页\一共有66页\编辑于星期一LabVIEW中的“采集”ExpressVIDAQAssistantExpressVI数据采集助手InstrumentI/OAssistantExpressVI仪器I/O助手(用于仪器控制)SimulateSignalExpressVIReadfromMeasurementFileExpressVI33现在是33页\一共有66页\编辑于星期一LabVIEW中的“分析”ExpressVIAmplitudeandLevelMeasurementsExpressVI幅值和电平StatisticsExpressVI统计SpectralMeasurementsExpressVI频谱测量ToneMeasurementsExpressVI单频测量FilterExpressVI滤波器…现在是34页\一共有66页\编辑于星期一数据“表达”显示控件波形图、波形图标、XY图…ExpressVIWritetoMeasurementFileExpressVI…其他功能函数数据库、网络通信…现在是35页\一共有66页\编辑于星期一LabVIEW中的结构条件结构While循环For循环隧道寄存器For循环的条件终止现在是36页\一共有66页\编辑于星期一可以有多个分支,可以设置默认分支类似于文本语言的case或if…elseif…else结构条件结构分支选择端分支标签现在是37页\一共有66页\编辑于星期一条件结构的输入和输出通道输入通道可以只传递到某些分支但各个分支的输出通道必须赋值现在是38页\一共有66页\编辑于星期一While循环LabVIEWWhileLoop Flowchart PseudoCodeRepeat(code);UntilConditionmet;End;现在是39页\一共有66页\编辑于星期一While循环返回执行次数(从0开始)终止条件(也可以是继续条件)隧道(Tunnel)现在是40页\一共有66页\编辑于星期一For循环LabVIEWForLoop Flowchart PseudoCodeN=100;i=0;Untili=N: Repeat(code;i=i+1);End;现在是41页\一共有66页\编辑于星期一For循环可增加条件终止端现在是42页\一共有66页\编辑于星期一While循环和For循环的比较ForLoop按照约定的次数执行(除非增加了条件终止端)可以一次也不执行默认情况下,隧道输出的是一个数组(需要禁用索引才能输出值)WhileLoop循环终止执行由终止条件决定至少会执行一次默认情况下,隧道输出的是一个值(需要开启索引才能输出数组)现在是43页\一共有66页\编辑于星期一使用数组作为索引输入可不定义循环次数,循环次数自动设置为数组大小现在是44页\一共有66页\编辑于星期一例:利用For循环自动索引对数组赋值一维数组二维数组现在是45页\一共有66页\编辑于星期一移位寄存器通过右键菜单可以对循环添加移位寄存器可以“记住”上一次循环执行后的数据右边的移位寄存器记录的是循环当此执行后的数据左边的移位寄存器记录的是循环上次执行后的数据现在是46页\一共有66页\编辑于星期一移位寄存器的初始化程序框图首次执行再次执行有初始化Output=5Output=5无初始化Output=4Output=8现在是47页\一共有66页\编辑于星期一移位寄存器的堆栈可以“记住”前若干次循环的数据现在是48页\一共有66页\编辑于星期一延时为何需要延时?控制循环执行的频率使处理器有资源处理其他任务(如界面刷新等)LabVIEW中常用的软件定时VI注意:软件定时的精度通常为1ms左右现在是49页\一共有66页\编辑于星期一波形图表、波形图、XY图现在是50页\一共有66页\编辑于星期一子VI当程序中有些部分的内聚度较高时,可利用子VI使主程序结构更清晰简洁(类似于文本语言的子函数)现在是51页\一共有66页\编辑于星期一创建并调用子VI方法一:定义子VI图标和连线板连线板决定了子VI的参数输入与输出通过图标或函数选板调用子VI现在是52页\一共有66页\编辑于星期一创建并调用子VI方法二:在主程序中直接圈出一块程序,通过右键菜单直接创建子VI现在是53页\一共有66页\编辑于星期一程序架构程序架构的重要性好的程序架构可以简化编程和调试的复杂度便于增加、扩展程序功能代码更清晰,增强程序的可读性就像盖房子,规划和框架设计非常重要现在是54页\一共有66页\编辑于星期一常用的一种LabVIEW程序架构:状态机典型用途界面响应:在程序运行的不同阶段响应不同的用户输入状态控制:控制测控系统在各种不同状态下的行为和状态转移现在是55页\一共有66页\编辑于星期一举例:可存储示波器现在是56页\一共有66页\编辑
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版淋浴房定制设计与安装全流程服务合同3篇
- 河南省周口市郸城县2024-2025学年九年级上学期期末考试英语试题(含答案含听力原文无音频)
- 2025版土地承包经营权入股合作合同示范文本6篇
- 宗教音乐与音像制品的和谐共生考核试卷
- 二零二五年度物流装备租赁合同模板
- “超级全能生”全国卷26省联考高考语文试题(甲卷)(含答案)
- 二零二五年度木地板品牌授权区域代理合同4篇
- 2025年企业信息保密协议格式
- 2025年学校体育活动协议
- 2025年学校食堂租赁协议
- 2024年社区警务规范考试题库
- 2024年食用牛脂项目可行性研究报告
- 消防安全隐患等级
- 温室气体(二氧化碳和甲烷)走航监测技术规范
- 部编版一年级语文下册第一单元大单元教学设计
- 《保单检视专题》课件
- 北京地铁13号线
- 2023山东春季高考数学真题(含答案)
- 职业卫生法律法规和标准培训课件
- 高二下学期英语阅读提升练习(二)
- 民事诉讼证据清单模板
评论
0/150
提交评论