当前位置:首页 > Labview
  • labview网络蜘蛛分析和整理网页

    运用post数据来整理自己在电子发烧友论坛发布过的文章链接,首先获取自己的论坛ID,也可以是别的ID(帮别人整理),然后分析网页规律,收集网页信息,非标准转换,查询关键字,批量处理,存入表格。

    时间:2020-05-26 关键词: LabVIEW 爬虫

  • NI发布免费版旗舰软件:LabVIEW

    NI发布免费版旗舰软件:LabVIEW

    奥斯汀,德克萨斯州—2020年5月11日— NI(Nasdaq:NATI),软件定义平台的领先供应商,致力于加速自动化测试和自动化测量系统的开发进程和性能提升,今日发布了针对个人项目使用的LabVIEW大众版和LabVIEW NXG大众版。 LabVIEW大众版将免费提供给非商业用户使用,该版本提供了与LabVIEW专业版相同的功能。其中包含LINX工具包的更新版本,以帮助工程爱好者将LabVIEW应用程序连接或部署到主流的计算硬件上,例如Arduino、Raspberry Pi和BeagleBoards等。 NI联合创始人兼LabVIEW发明者Jeff Kodosky表示:“我们很激动能够鼓励业余爱好者在家使用LabVIEW开发他们感兴趣的项目,充分激发他们的无限潜力。我们开发了LabVIEW大众版,让工程师可以免费使用该软件,通过编程的方式追求他们的个人兴趣和梦想,同时他们也能够与同行合作开发和分享IP。” LabVIEW大众版还取代了LabVIEW中学生版,并为K-12年级的学生提供了一种更有趣的方式来吸引他们在科学、技术、工程和数学领域进行探索和尝试。 LabVIEW NXG大众版还包括LabVIEW NXG Web模块,即使完全没有学习过Web开发技能的用户也可以借助该模块轻松创建Web应用程序。利用该软件的图形化编程语言,他们可以将开发的LabVIEW应用程序部署到网络中,在网页浏览器中运行,而且无需任何其他软件。此外,软件中包含的SystemLink™Cloud评估版可帮助用户托管和共享Web应用程序。 “ LabVIEW大众版和LabVIEW NXG大众版将会让越来越多的制造商和工程师认识这种直观的图形化语言,” GCentral.org的创始人兼总裁Chris Cilino(同时兼任Composed Systems公司的顾问)表示,“这些版本无疑将充分调动开发人员的主动性和创造力以及促进新的合作方式,我很期待看到未来的变化。” 在过去的几个月中,LabVIEW大众版的Beta版测试用户展示了该软件的许多新应用,包括采用众包模式的机器人、用于控制机械臂的平板电脑用户界面以及为用于仿真测试的实际设备开发数字孪生模型。 自NI 30多年前首次发布LabVIEW至今 ,该软件已经广泛应用于各行各业,为工程师开发测试、测量和控制应用提供了无缝的硬件集成以及深度的数据洞察。多年来,随着行业的发展,软件功能和性能也在不断增强来满足变化的客户需求和市场需求,如今该软件已具有: •    直观的图形化编程语言 •    丰富的IP库 •    广泛的硬件连接 •    庞大的开发者社区

    时间:2020-05-11 关键词: LabVIEW ni

  • 基于NI CompactRIO系统和LabVIEW实现桥梁结构安全监测系统的设计

    基于NI CompactRIO系统和LabVIEW实现桥梁结构安全监测系统的设计

    一. 引言 随着桥梁设计水平和施工技术的日见成熟,桥梁的建设取得了突破性的成就,一批大跨径桥梁应运而生,桥梁建设正朝着规模的大型化、形式的轻柔化、功能的复杂化发展。同时,桥梁结构的安全性与耐久性越来越受到人们的高度重视,有关大型桥梁的结构健康监测、安全评估以及寿命预测等问题已经成为当前桥梁工程界必须解决的问题。目前,随着传感测试技术、计算机信息处理技术、结构分析技术和桥梁工程技术等相关学科的进一步发展,针对特大型桥梁结构的安全监测与安全预警研究和实践成为可能。原本应用于军事领域的先进智能材料与结构技术,也在桥梁结构健康监测领域得到应用,使得对大型桥梁结构进行健康监测的技术总体上正朝着智能化和系统化的方向发展。 二.集美大桥的系统背景与设计原则 厦门集美大桥及接线工程是厦门市城市道路交通网络布局中本岛与大陆腹地跨海通道的重要组成部分,也是厦门市出岛交通路网规划中重要的跨海通道之一。大桥建成后将承担巨大的出入岛交通流,因此,结构安全监测的重要性就显得格外突出。 系统整体监测项目如下: 1)荷载源监测:主要为桥址区域环境荷载监测:① 风荷载监测;② 温度、湿度监测;③ 控制截面温度梯度监测;④ 交通荷载(与计重收费系统共用) 2)结构动、静态响应监测 ①主桥的空间位置变化监测,主要为各跨跨中下挠监测;②主、引桥控制截面静应力监测;③主、引桥体外预应力监测;④主、引桥体内预应力监测;④主、引桥结构动力及振动特性及其变化监测 三.桥梁结构监测安全预警系统的总体设计 根据系统的功能要求本系统包括以下子系统: 1) 自动化传感测试子系统,其包括以下几大模块: ① 传感器子模块 通过传感器将各类监测转换为电(光)信号。 ② 数据采集与传输模块 将监测信号转换为数字信号并完成远程传输。 ③ 数据处理与控制模块 将监测信号进行预处理以向其它子系统提供有效的监测数据,根据需要控制监测参数的采集。 以上3部分构成自动化传感测试子系统。 2) 电子化人工巡检养护管理子系统 3) 综合安全评估子系统 4) 中心数据库子系统 5) 用户界面子系统 其结构示意图如图1所示: 图1桥梁结构安全监测系统结构示意图 接下来将重点介绍监测系统的数据采集、传输、预处理与控制的子系统。 1. 自动化传感测试子系统各类信号采集、处理方案 整个系统共设置3个cRIO采集站。采集站在左右两幅桥各布置一个,BRT桥布置一个。 实现的采集工作包括加速度同步采集压力变送器、温湿度仪、风速仪、振弦式应力计、磁通量索力计信号和串口信号的采集。这些传感器输出信号种类多种多样,大大增加了采集系统构筑的难度。系统针对不同类型的传感器,选用合适的采集设备和方案。系统结构组成如图2所示。 图2 自动化传感子系统结构示意图 cRIO可编程工业I/O系统具有嵌入式控制器和机箱,选配多种功能的信号采集卡,完全工业级的设计。 * 采用的cRIO控制器NI9014为嵌入式控制器。 * 采用的cRIO机箱NI-9104为8槽嵌入式机箱,具有-40-70°C的操作温度范围,3百万可重新配置I/O(RIO),FPGA核心具有高超的处理能力,使用LabVIEW自动生成自定义控制和信号处理电路。 * 采用cRIO的4通道高速同步数据采集卡NI-9215对于单向和三向加速度计进行电压信号采集。 * NI-9401八通道高速数字I/O信号,100ns超高速数字输入输出,用于加速度同步。 * NI-9871标准RS485通讯卡,磁通量传感器采用磁弹仪进行采集,其输出为485信号,接入NI-9871。 * NI-9871标准RS485通讯卡,超声波三向风速仪直接输出485信号,接入标准RS485通讯卡NI-9871。 * NI-9203采用8通道模拟电流采集模块,压力变送器和温湿度仪输出信号分别为4-20mA电流,对于这类输出为标准电流信号的传感器接入NI-9203。 * 光纤光栅温度传感器与应变传感器采用光纤光栅传感网络分析仪进行采集,其输出为以太网信号。 本系统的监测项目梁体振动加速度需要较好的同步性和实时性,我们采用GPS精确授时技术、在每个采集站安装GPS时钟接收机,借助NI-9401 100ns超高速数字同步卡,通过软件方法和采集策略的配置保证加速度数据采集的同步性。 2. 数据采集传输与控制 采集站实现的采集工作于LabVIEW-RT实时系统环境下,在终端硬件的支持下主要完成对信号数据的采集和传输。用户一般不直接与其进行交互,但其提供一系列的标准接口和命令与用户所在的控制终端、监测终端和数据存储终端进行交互。采集站状态与控制如图3所示。 数据处理与控制系统服务器通过向cRIO采集站发送网络命令报文实现数据采集和控制功能: 1) 控制传感器启动、停止数据采集; 2) 查询传感器和采集单元、调理器、其它采集设备的工作状态; 3) 查看、修改采集单元和调理器的参数,标签等信息; 4) 通过修改配置文件上传至采集站实现采集任务、存储任务的配置和更改。 图3 数据采集站状态与控制界面 3. 数据处理与控制模块 采集系统收集到的数据必须经过数据处理与控制模块(子系统)对其进行预处理方能够提交给后续子系统使用。本子系统由数据采集控制模块,数据分类、抽取模块,监测数据库及用户界面4部分组成。系统关系结构如图4所示。 图4 数据采集、处理与控制子系统关系结构图 1) 反映结构状态的特征参数确定及其提取方案 结构状态特征参数是指能够反映结构特征的物理量,比如:挠度,应力,索力等;而传感器-采集系统所获得是传感器的读数,这些读数一般反映的是电信号。将传感器获得的电信号向结构特征参数转换是极其重要的过程。具体流程如图5所示。 a) 传感器电信号向测试物理量的转换 传感器电信号向测试物理量的转换通常利用标定证书提供的曲线或参数可以完成传感器读数向物理量的转换。 b) 测试物理量向结构特征参数的转换 测试物理量向结构特征参数的转换需要其它传感器的配合,需要进行数据的分析处理。 c) 各种参数有效数据的抽取 d) 数字滤波 对于静态数据需要进行活载及风振的过滤,经过过滤后的静态参数将仅包含温度对结构的影响,这种过滤一般可以采用低通滤波的方式,实现的时候可以采用幅值域分析的方式。对于动态参数则应考虑所需要测试的频率范围进行带通滤波。 图5 数据处理与控制软件流程图 2) 数据存储 a) 数据存储引擎将指定的数据按照时间标签存入数据文件。 每个数据包中包含一个测点(对应一个数据采通道)一段时间(定为1秒)连续采集数据的内容。数据文件的文件名包括以下信息:采样数据开始时间(小时-分-秒)、数据存储模式(数据触发说明)、采样率、数据点数、数据最大值、最小值、均值、方差。文件内容包括各点采样数据。 b) 数据文件的存储策略根据数据存储模式的不同而异,具体如下: 间断存储时,每个通道每段连续的信号数据保存为一个文件;触发存储时,被触发的每个通道每段连续的信号数据保存为一个文件;人工连续存储时,如果某通道要保存的连续数据很大,根据数据文件的大小,可以每10分钟自动更换一个文件保存;根据硬盘空间的大小,自动删除部分(一周)以前的数据文件。 四.软件实现与现场成果 1. 系统软件结构 软件系统主要分为两个部分: 1) 数据采集软件(下位机FPGA部分) 作为基于LabVIEW的RT实时系统的FPGA下位机程序,能够实时进行大量数据的采集与存储和控制任务,主要实现加速度、风、温度等信号的采样与降采样和振动特征值计算、GPS对时、定时存储、采集通道设定等功能。该部分程序烧写在FPGA硬件模块上,由FPGA硬件进行实现,经过一系列的转换,最终被编译为比特流文件,并下载到FPGA模块上运行。多个采集站采用统一软件架构,实现采集任务的模块化和规范化,多机箱间的精确的同步采集,同时实现数据的本地存储。 2) 数据处理与控制软件(上位机部分) 数据传输、处理与控制软件是基于LabVIEW8.2平台开发的,数据处理与控制工作站软件平台是基于LabVIEW8.2平台下的状态机机制,通过TCP协议实时接收下位机的原始数据与设备工作站的工作状态,按照指定报文格式进行数据的接收解译与命令的发送。同时,使用LabVIEW自带的信号分析、数字滤波和统计分析等子VI,完成结构状态的特征参数提取工作。数据首先采用自定义结构体包装,通过queue队列形式完成各VI之间的数据交互,队列的先进先出机制有效的解决的数据完整性和稳定性。 3) 电力监控部分软件 软件平台采用可视性强、界面丰富的NI LabVIEW平台和数据分析技术,采用标准的数据接口。电力监测软件为用户提供一个可视化的监测界面,让用户直观、方便、快捷地了解现场传感器、UPS、磁弹仪、采集器的运行状态,并根据数据分析的结果进行运行状态的调整和负荷的控制。用户通过查询历史数据库,可以调出电力设备的历史运行状态曲线,并完成上位机对应的数据管理功能。界面如图6所示。 图6 采集站电力监控界面 2. 数据处理与控制软件界面 数据传输、处理与控制软件主要包括10大功能模块:登录模块、采集站配置模块、存储任务管理模块、采集任务管理模块、传感器状态模块、网络状态识别模块、数据下载与入库模块、电力监控模块、用户管理模块、系统帮助模块。界面如图7所示。 图7 采集站状态及控制模块界面 3. 数据实时展示与预警软件界面 承台地震动监测项目实时显示、预警软件子模块界面如图8。除了上述各个预警软件子模块共有的操作按钮和显示控件外,该模块还有从数据处理与控制服务器传过来的1秒钟数据包波形图、安装截面位置示意图、预警灯和信息,以及当前1秒钟加速度时程曲线和自功率谱曲线图。 图8地震动监测模块 偏位监测项目实时显示、预警软件子模块界面如图9。除了各个预警软件子模块共有的操作按钮和显示控件外,该模块还有从数据处理与控制服务器传过来的1秒钟数据包波形图、安装截面位置示意图、预警灯和信息,以及当前纵横桥向当前的偏位情况实时显示。 图9 偏位子模块界面 4. 现场成果 安装在现场的工作站一共有三个,主要完成就进传感器的数据收集、整理与传输。CRIO采集模块首先对安装在大桥上的各种类型传感器的信号完成必要的预调理后按一定的采样频率进行模数转换(A/D),同时在数据采集站计算机上保存,最后各种类型的传感器的模拟或数字信号经预处理、采集后从现场的数据采集站通过工业以太网有线传送至位于管理监控中心的数据处理与控制计算机上。具体安装如图10所示。 图10 现场工作站实拍图片 五.结论 从技术角度去讲,NI CompactRIO系统和LabVIEW开发环境无缝连接使用户轻松的通过图形化开发环境访问底层硬件,快速建立嵌入式系统控制和数据采集应用,大大降低了系统开发、 生产的技术风险。LabVIEW 强大的数据采集和信号处理功能极大地节省了采集终端软件的开发时间,在LabVIEW RT和LabVIEW FPGA模块的配合下使得采集终端能够实时高质量地完成数据采集、信号处理、数据传送和数据存储的工作,为整个大桥结构安全监测系统提供灵活、强大的底层数据支持。 同时,恶劣的海洋环境及桥面路况影响,对NI CompactRIO系统的环境适应性也提出了很高的要求。事实证明,NI CompactRIO系统设计精巧而坚固,满足苛刻的工业级指标,完全适用于对可靠性有严格要求的复杂恶劣海洋环境中应用。 在国内首次将LabVIEW和NI的分布式数据采集设备cRIO系列引入到桥梁结构安全监测和结构分析中去,结合先进的数据处理和信号分析技术,为大跨径特大型桥梁综合监测系统有关数据采集传输预处理与控制的建立提供了一套完备而系统的方案,在桥梁健康监测的若干问题研究中取得的一些创新性成果,对桥梁综合监测系统的发展有着重要的意义。 NI的分布式数据采集设备cRIO系列在厦门集美大桥结构安全监测系统中的实际应用是cRIO平台在国内结构安全监测领域的首次成功案例,截至目前运行正常,工作稳定,得到业内的一致好评。事实证明,NI cRIO平台是构建该采集终端的理想解决方案之一,对接下来的耗资700亿港珠澳大桥系统实施具有很强的示范性和参考价值。

    时间:2020-05-07 关键词: LabVIEW 监测系统 ni

  • 波形发生器进阶篇,在LabVIEW中控制Analog Discover波形发生器

    波形发生器进阶篇,在LabVIEW中控制Analog Discover波形发生器

    波形发生器的使用已司空见惯,对于波形发生器,想必很多朋友均有所了解。如果你想增进对波形发生器的了解,可以翻阅小编往期带来的波形发生器相关文章。而本文对于波形发生器的讲解,在于介绍如何在LabVIEW中控制Analog Discovery™波形发生器。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。 步骤1:材料 必备条件:您必须已完成上一个项目中的步骤2。必须遵循上一个项目的选件2.1(即安装LabVIEW)。 硬件 模拟发现 软件 WaveForms 2.6.2或更高版本 LabVIEW(到目前为止,已经测试了2013和2014版本可以正常工作) 步骤2:前言 为正确理解该项目的功能,了解Waveforms SDK非常重要。通常,模拟发现是通过免费软件包Waveforms控制的。WaveForms还附带了一个开源开发工具包。通过该SDK,您可以访问C/C++API库,任何人都可以为Analog Discovery编写自己的软件接口。在WaveForms参考手册中可以找到API中所有可用功能的概述。 该LabVIEW项目的核心是简单地调用C/C++API函数。专用VI用于LabVIEW中的每个单独的Waveforms API函数。通过单击项目窗口中的digilent.lvllib,可以查看可用API函数的列表。该列表中的每个VI都有对应的C/C++API函数。有关每个功能如何工作的更多信息,请参考WaveForms参考手册,如上图所示。 步骤3:主GUI代码概述 在GUI Main中,该代码是GUI Main的简化派生,继承自先前的LabForms项目。为了简洁起见,许多Waveforms API调用已组合到了子VI中。在新的GUI Main中,有两个主要部分需要关注,即Device Selection Loop和Run Device Functions部分。 设备选择循环 设备选择循环有两个主要功能。首先,它使用“查找已连接的设备.vi”搜索要连接的兼容设备。添加了刷新按钮选项,因此您可以在启动GUI Main.vi之后连接设备。“查找连接的设备.vi”检查以确保没有其他应用程序正在使用您要打开的设备。如果设备已经在使用中,则对前面板控件进行配置,以便使“确定”按钮呈灰色。这样可以防止您打开已在使用的设备。如果不使用设备,则可以单击“确定”以继续进行打开过程。一旦打开过程结束,设备选择循环将终止,并启动运行设备功能部分。 运行设备功能 本节的第一部分将打开所选设备。该过程是自我解释的,不需要详细解释。有关更多信息,请参考代码中带编号的注释。打开设备后,您设计的任何自定义VI都将开始运行。在此项目中,运行“GUI自定义波形Gen.vi”。如果要调整自定义信号输出的范围,可以在选择设备之前单击“启用范围”按钮。这将从LabForms中打开标准示波器窗口。 步骤4:来自生成代码概述的自定义Wave 自定义波形发生器可以完成一些操作。首次调用时,两个波形通道W1和W2都被启用(请参见循环左上方的代码)。接下来,进行一些计算以将光标在2d框中的位置转换为波形的幅度和频率。有关详细信息,请参考代码中的注释。 从/事件结构生成波形 该项目的核心是生成模拟信号。这是使用“Generate Waveform.vi”在事件结构中完成的。该子VI仅调用了少数控制模拟发现的WaveForms API函数。上面包含了Generate Waveform。vi代码的图片。它描述了哪些API函数用于控制Analog Discovery的信号发生器。有关这些API函数如何工作的更多信息,请参阅WaveForms SDK参考手册。 为使波形生成正常工作,请务必注意调用Generate Waveform.vi的上下文。该VI应在事件结构中调用,因此仅在发生某些事件时才可激活。每次循环调用G 赋能Waveform.vi都会导致性能问题和输出波形中的 不连续。此事件结构包含两种不同的情况。 事件结构案例[0]: 第一拳是一个超时案例。重要的是,通过将一个值连接到事件结构左上方的小沙漏来提供超时持续时间。否则,可能会导致整个项目冻结。 事件结构案例[1]: 此事件案例是调用 Generate Waveform的事件案例。vi设置为在图片边界内单击鼠标,在图片边界内移动或退出图片边界时触发。如果需要,可以通过右键单击事件结构并单击相应的选项卡来编辑案例处理的事件。 在2d图片上绘制光标 如果您对如何在2d图片上绘制光标感到好奇,请查看上面的subVI代码。代码中的注释说明了如何绘制光标。 第5步:运行项目 要使事情运行,请打开LabVIEW项目。打开项目窗口后,双击“GUI Main.vi”。打开该VI的前面板后,执行此gif所示的操作以使波形发生器运行。 WaveGen/示波器的物理接线 如果要在示波器面板中查看正在生成的波形,必须将波形连接到模拟输出,然后模拟输入引脚(请参见上图)。有关引脚的详细信息,请参见Analog Discovery引脚。 正确停止项目 要使整个项目停止,您必须按下停止按钮所有弹出的窗口。GUI主窗口没有停止按钮,并且在您正确关闭其他窗口后将自动停止。 以上便是此次小编带来的“波形发生器”相关内容,通过本文,希望大家对本文讲解的内容具备一定的了解。如果你喜欢本文,不妨持续关注我们网站哦,小编将于后期带来更多精彩内容。最后,十分感谢大家的阅读,have a nice day!

    时间:2020-02-13 关键词: LabVIEW analog 波形发生器 discover

  • 集成LabView和开放式核心工程降低工程成本

    集成LabView和开放式核心工程降低工程成本

     Kraus自动化技术公司(KAT)是一家总部位于德国的OEM,专门从事用于寿命、疲劳和材料测试的定制系统,长期以来一直依靠NI的LabView软件为其工程师创建定制用户界面。LabView的编程图形化方法可帮助KAT工程师在测试机器开发过程中可视化硬件配置、测量数据和调试问题。 但是,由KAT测试机器上的可编程逻辑控制器(PLC)控制的测量和测试应用必须单独设计。在单独的过程中处理这两个过程,系统配置和应用程序编程是耗时的并且需要特定的专业知识。 为简化此流程,KAT使用博世力士乐的开放式核心工程,将KAT测试机器上的所有驱动和控制功能集成,建模并自动化到其工程师熟悉的LabView环境中。这种集成为KAT工程师在一个编程环境中提供了完整的编程控制,而无需创建单独的PLC代码,从而大大降低了工程成本。   工程师能够直接访问力士乐IndraMotion MLC和ILC系统的控制功能,软件环境中为程序员提供了超过550个虚拟仪器和控件。现在,KAT可以处理LabView中的速度测试、定位、传感器和执行器的整个工程功能,而且不需要耗费时间去编程PLC。 在集成LabView和开放式核心工程之前,KAT工程师必须分别查询I/O和对轴运动进行编程,然后在每个开发阶段将它们转换为联合机器程序。除了增加的时间和成本之外,这些额外的编程要求会增加了出错的可能性。 开放核心工程减少了接口数量,可以最大限度地降低错误风险,并有助于使资源规划更加灵活。除了加速KAT的机器开发过程外,整个机器工作流程现在可以在LabView中进行映射,这有助于加快调试阶段。对于KAT而言,这可以节省大量时间,特别是可以在一个而不是两个编程环境中执行故障排除。

    时间:2019-07-25 关键词: LabVIEW plc 核心工程

  • LabVIEW开发基于32位处理器的嵌入式系统指南

    LabVIEW开发基于32位处理器的嵌入式系统指南

    ARMLimited公司所开发的32位元RISC ARM处理器架构,成为多家主要制造商所普遍使用。ARM系列产品已包括75%的32位元RISC处理器市场占有率。针对ARM微控制器的设计作业,使用专为ARM微控制器所设计的NILabVIEW嵌入式(Embedded)模块。 随着32位多核处理器应用逐渐走热,设计者正面临着新的挑战, 业内专家指出面向角色(actor-oriented)的图形化方法是更适合嵌入式软件设计的工具。NI 的LabVIEW嵌入式开发模块是LabVIEW图形化编程环境的一款全新附加模块,通过这个软件和图形化系统设计的理念,原先无法利用到嵌入式编程的工程师们都可以进入32位微处理器的领域之中。通过LabVIEW中附加的状态图、控制图表、信号处理库函数等这一完整的工具来设计它们的应用,以解决各种问题。本文对该开发工具进行了介绍。 随着嵌入式系统变得越来越复杂,设计者正面临着新的挑战:随着基于32位微控制器(MCU)的嵌入式系统的成本向16位系统逐步接近,在许多高级应用中8位和16位微控制器正逐步让位给扩展性更佳,性能更好的32位片上系统(SoC)。此外,由于单纯通过CPU的性能提升来增加整个系统的性能已经不是一种持久的发展趋势了,所以主要的处理器制造商已经转向了多核心架构。从Dell在几个月前推出的多处理器核心的台式计算机,就可以看到这种趋势。从消费者和用户的观点上来看,处理性能的提升是一样的。但是,从一个嵌入式系统开发者的观点来看,设计将变得更加复杂,因为您必须了解如何在多处理器环境下开发和分割您的应用。根据十年前的估计,嵌入式系统的平均代码量为10万行。到2001年,这个数字实际已经超过了100万,而现在的数字估计为500万。 现在我们将视线转移到当前嵌入式系统的开发工具上来,随着复杂度的逐渐上升,现在传统工具很难降低编程工作的复杂度,嵌入式领域需要另一种方法来应对这些挑战。挑战不仅是工具方面的,还有解决问题的途径:基于文本编程的嵌入式应用开发在将来不可能解决这些问题。这已经是许多业内专家的共识;Edward Lee博士是加州大学伯克利分校嵌入式研究方面的领先者,他指出现在嵌入式系统的开发手段如基于文本编程和面向对象的工具都难以用来构建嵌入式实时系统,因为面向对象很难直观地表达时间和平行性(parallelism),而时间和平行性或并行(concurrency)在现在的嵌入式系统中是必不可少的。Lee博士提出面向角色(actor-oriented)的图形化方法是更适合嵌入式软件设计的工具。 虽然嵌入式系统的挑战越来越严峻,但是现在已经有了许多解决的方向。许多供应商采取了将底层工具的设计抽象出来的办法。这种方法每前进一步,都会吸引更多的用户。另一个方向是可以更彻底地解决面临的挑战,也就是向基于平台的工具转移,它能够更好地表达整个系统,而减少与特定硬件的相关性,这使得更多的软件设计容易理解并被重复使用,而从基于文本的工具向图形化工具的转移则可以直观地表达系统,并解决系统的挑战。图形化系统设计(Graphical System Design)的理念就是源于这些趋势。通过简化嵌入式编程的复杂性,它降低了对领域专家在嵌入式设计流程中各个步骤的要求;同时提供了从设计、原型到部署的一条捷径,使得工程师和科学家们可以更快速地进行重复设计。 尽管市场上的工具都在向图形化的方向转变,但由于它们是针对特定领域特定应用的工具,所以仍旧受到自身的限制,而这是不足以解决行业将要面临的挑战的。事实上,现在的嵌入式系统市场与八十年代早期的台式计算机市场有很多相似之处,其中的一个特点就是非常分散。现在市场所需的是一种完全的图形化编程语言,提供足够的灵活性和功能,以满足更广泛应用的需求。因此,图形化系统设计的关键因素是图形化编程。 将设计方法学直接应用于实现 自1986年诞生以来,LabVIEW图形化编程语言已经开始简化了系统的复杂性,并在同一个平台上提供采集、分析和显示等功能,在使用计算能力对处理过程自动化的同时,允许在研发原型,制造和测试过程中对软硬件的重用,弥补了原先因为原型、制造和测试三个步骤间因工具不同而造成的这一鸿沟。在所有涉及到数据采集和控制的领域里,LabVIEW图形化方式都已经成为标准的开发工具。从那时开始,我们就一直向这个编程环境添加功能上的改进,现在LabVIEW在已有的定时循环结构上新加了硬件定时功能,它是一种表示时间和并行的语义。现在,我们就可以通过点击来设置操作系统优先级,延时,循环速率等等;回想在文章前面所提到的向多处理器转移的趋势,现在我们可以憧憬使用可扩展的直观图形化编程,来开发应用,并将处理过程分配到不同的处理器上。 新的NI LabVIEW嵌入式开发模块(LabVIEW Embedded Development Module,)是LabVIEW图形化编程环境的一款全新附加模块,通过这个软件和图形化系统设计的理念,原先无法利用到嵌入式编程的工程师们都可以进入32位微处理器的领域之中。通过LabVIEW中附加的状态图、控制图表、信号处理库函数等这一完整的工具来设计它们的应用,以解决各种问题。 领域专家-在某个科学或工程领域的专家,但不一定是嵌入式的程序员-一般使用不同的模型或工具解决他们学术上或工程上的问题。例如,开发引擎控制单元(ECU)的工程师可能使用状态图来对引擎控制单元的功能进行图形化的描述。这位工程师可能是一个控制理论方面的专家,但是却可能没有任何嵌入式或C编程方面的经验。直到现在,嵌入式应用的实现仍然需要深入了解关于嵌入式编程工具,如C语言等方面的知识。因此,很多领域专家要实现他们的解决方案,甚至只是简单的验证一个概念仍然要依赖专门的嵌入式开发人员。这个存在于领域专家和嵌入式程序员之间的鸿沟,使得开发时间增加,而且容易在系统中引入错误。 LabVIEW嵌入式开发模块在设计和实现间的鸿沟之上架起了一座桥梁。领域的专家现在可以使用相同环境快速地设计算法,对定制的设计进行原型设计,将他们的解决方案在所选的目标上实现,并进行调试——所有这些过程都是通过图形化方式实现的。 开发与目标无关的代码 嵌入式目标本身要求程序员在编写代码之前对目标有深入的了解。程序需要知道板卡上各种关于内存映射和寄存器的信息,才能在板卡上执行他们的代码。另外,大部分代码是专为某一特定目标编写的。这样,在一块板卡上使用不同的微处理器或是不同的外围设备,可能就需要重新编写大部分已有的代码,或是完全从头开始。这意味着最终产品的扩展性方面是有缺陷的。

    时间:2019-07-24 关键词: LabVIEW 嵌入式系统 嵌入式处理器 32位处理器

  • 基于MCS51的低成本LabVIEW实验教学系统

    在此利用廉价的MCS51单片机设计了包含常用传感器、数据采集模块与USB通信接口的LabVIEW 实验教学系统。该系统使用USB接口与上位机通信并提供电源,而上位机编程直接调用VISA驱动USB接口,大大降低了数据采集程序设计的难度。该系统可以满足大学虚拟仪器实验教学的需要,性价比高,具有良好的推广前景。 0 引言 NI 公司于20 世纪70 年代提出了虚拟仪器的概念。虚拟仪器是在以计算机为核心的平台上,由用户设计,具有虚拟面板,由软件实现测试功能的计算机仪器系统,是计算机与测试仪器相结合的产物。虚拟仪器最常用的编程语言为LabVIEW,是NI公司的基于图形化编程语言的虚拟仪器开发工具,利用它可以轻松组建一个测试系统而无需进行繁琐的代码编写。因此虚拟仪器大大突破了传统仪器在灵活性,以及数据处理、显示、存储等方面的不足,其主要优势在于:用户能够根据需求灵活的进行功能修改和扩展;人机界面为视窗界面,形象直观;网络连接简单易行,便于组建测控网络。 目前虚拟仪器在通信、汽车、测控等行业得到了广泛的应用。相应的各大高校也在NI公司的支持下,陆续开设了虚拟仪器课程,组建了相关的实验室,如西安交大利用虚拟仪器讲授信号处理;天津大学开设的智能检测仪器课程。 目前国内高校教授虚拟仪器课程使用的信号采集板多为NI 公司的数据采集板卡,如USB600X,USB92XX,PCI62XX 系列。这类板卡虽然性能优良,配套软件齐备,但是作为高校教学也存在不足之处。首先NI公司只卖板卡不卖技术,这样在教学中教师和学生只能使用板卡,而不能掌握虚拟仪器硬件系统的具体结构和技术细节;其次这类板卡一般价格较贵,普遍在2 000元以上,相对高校而言开课成本太高,这一点对于欠发达地区的一般学校尤为突出。 本文利用廉价的MCS51单片机设计了包含常用传感器、数据采集模块与USB 通信接口的LabVIEW 实验教学系统,并编制了常用的实验案例程序,满足了本科生虚拟仪器实验教学的需要,且成本相对于NI的产品大大降低,针对高校市场具有良好的推广前景。 1 系统结构 整个系统由前端传感器、单片机数据采集以及USB通信接口几部分组成,如图1所示。   1.1 前端传感系统 虚拟仪器实验系统的前端传感器将待测的物理量转换成电量(电流或电压),作为后面采集处理系统的输入信号,是整个测试系统与外界的接口与桥梁。本实验系统集成了温度、光强与电阻传感器,并预留了扩展接口以外接其他传感器。其中温度传感器为数字温敏器件DS18B20,能够在-55~125 ℃的范围内提供9~12 b分辨率的温度数据,具有0.5 ℃的精度,适合于一般场合的应用,其优点在于能够直接提供数字温度值,可以与后端MCU直接接口,省去了调理电路。而电阻测量采用串联分压法,即将待测电阻Rx与已知电阻串联后外加固定电压Vref,将Rx上的分压V作为待测信号,后端采集与处理系统只需测得V 就可以根据比例关系求出Rx.光强传感器则使用光敏电阻,具体电路如图2所示。   1.2 数据采集与通信 数据采集使用12 位ADC 器件TLC2543,该器件具有11位模拟输入端,可通过控制字灵活选择不同输入端口,适合于多传感器输入应用。器件控制字输入和转换数据输出都为串行模式,可以与51单片机以尽可能少的连线接口。51 单片机与上位机使用USB 接口通信。USB接口基于单一的总线接口来满足多种应用领域的需求,其具有的即插即用、支持热插拔、易于扩展等特性极大地方便了用户,已逐渐成为现代数据传输的主流。由于51 单片机自身不拥有USB 接口,所以需要外接USB 控制器。 本系统使用PL2303 来实现USB 和RS 232串行端口之间的转换。PL2303拥有2个独立的大型缓冲进行两种总线的连接。大型数据缓冲器用于USB的批量数据传输,而串行通信可使用自动握手模式,因而可以达到远大于标准UART 控制器的波特率。PL2303 支持USB电源管理和远程唤醒协议,当主机挂起时消耗极小的电能;芯片亦可以安装在电缆线中,用户只需将其连入主机USB 或USB HUB 上,就可以实现与单片机RS232串口的通信。单片机与TLC2543和PL2303的具体接口电路如图3所示。   2 实验程序设计 传统的开发USB 应用系统的步骤是:先用Win-dows DDK(设备驱动程序开发包)或第三方开发工具(如DriverStudio)开发USB驱动程序,然后用Visual C++编写DLL(动态连接库),最后再调用DLL来开发应用程序。显然,这对Windows编程不熟悉的人来说有一定的难度。VISA(Virtual Instrument Software Architecture)是NI公司开发的一种用来与各种仪器总线进行通信的高级应用编程接口。VISA是一个综合软件包,不受平台、总线和环境的限制,可用来对USB、GPIP、串口、VXI、PXI和以太网系统进行配置、编程和调试。LabVIEW通过调用VISA函数来实现USB设备的控制和通信。在这里主要使用了VISA Open,VISA Write,VISA Read,VI-SA Close这4个VISA 函数。与USB 设备的通信过程分为4个步骤: (1)由VISA Open 函数打开VISA resource name 端口指定的USB设备; (2)通过VISA Write函数向USB设备发送控制命令启动设备工作,USB设备接收到控制命令后开始采集数据并将采集到的数据按要求发送到数据缓冲区; (3)通过VISA Read函数将数据读出; (4)通过VISA Close 函数关闭设备。PC 主机与USB 设备进行通信的LabVIEW 程序框图如图4所示,而51单片机的程序结构如图5所示。 3 结语 虚拟仪器实验教学系统是虚拟仪器课程教学中不可或缺的设备,本文针对NI等主流数据采集板卡存在的价格昂贵且技术屏蔽问题,利用廉价的MCS51 单片机设计了包含常用传感器、数据采集模块与USB通信接口的LabVIEW实验教学系统。

    时间:2019-07-18 关键词: LabVIEW mcs51 实验教学系统

  • NI推出LabVIEW新特性和新功能,进一步推动创新加速

    新闻发布—2019年6月17日-NIWeek-NI作为一家软件定义平台供应商,致力于帮助用户加速自动化测试和自动化测量系统的开发及性能,今日宣布推出最新版 LabVIEW 2019和LabVIEW NXG。这些新版本表明NI一直持续投入到下一代 LabVIEW 和系统工程软件的研发中。NI仍将继续致力于优化关键领域的测试和测量流程,这些领域包括测试开发集成、高效自动化测试以及数据和系统访问等。最新版 LabVIEW 2019 提供更好的IDE可视性、强大的调试增强功能以及新的图形化语言数据类型,旨在帮助开发人员进一步提高工作效率。此外,LabVIEW 2019 还解决了工程师的一个关键痛点:采用分散的非标准化方法来克服代码部署过程中的常见挑战——依赖关系管理和版本控制。借助LabVIEW 2019 软件包安装程序的新发布选项,用户现在可以使用软件固有的版本管理和自动依赖关系管理功能,标准化程序发布方法,从而自信地复制和共享系统软件。最新版 LabVIEW NXG 简化了自动化测试和测量应用中最耗时的任务,比如更快速部署和发布代码、导入和导出MATLAB® 数据(.mat)以提高与第三方软件的互操作性,同时新增的Web VI功能使用户能够更好地操作和控制其应用程序。这些增强功能可让工程师快速设置和连接仪器,可与其他编程语言和工具包之间互操作,避免了过去与第三方IP的集成瓶颈,并通过增强网络支持方便了对重要数据的访问。“借助WebVI,我们可以随时随地为用户提供测试管理数据库接口,而且我们只需要使用核心LabVIEW技能就能够开发Web界面。 不仅我们节省了开发时间,而且用户也可以即时查看数据或更改测试标准。”GSystems公司工程团队主管Jeremy Marquis说道。NI已在软件方面持续投入超过30年,未来这些 LabVIEW 版本仍将持续更新,以进一步将其工程能力从设计扩展到测试领域。 无论是第一次购买 LabVIEW,还是多年的老用户,都可以轻松使用 LabVIEW 2019 和 LabVIEW NXG,而且将看到立竿见影的效果。

    时间:2019-06-17 关键词: LabVIEW matlab ide

  • NI ELVIS III 增强版实现了教学解决方案的现代化

     新闻发布—2019 年 5 月 21 日 -  NIWeek  - NI (美国国家仪器公司,National Instruments,简称 NI) , 作为一家致力于提供平台化系统来帮助工程师和科学家应对全球最严峻工程挑战的供应商,今日 宣布推出其高校教学平台,即 NI 教学实验室虚拟仪器套件(NI ELVIS)III 的增强版本。NI ELVIS III 配备新的应用板以及经过升级的软件,为学生提供了一个更简单易用的现代化界面来使用行业标 准硬件更快速地进行测量。NI ELVIS III 新增了四个元素,让工程教育工作者可以: • 使用新的 NI 自动化测量板卡,讲解测量和物联网(IoT)知识 • 对项目进行故障分析和测量 - 无需安装即可完全在线进行测量,而且支持移动设备 • 使用 The MathWorks,Inc. Simulink®软件和 NI ELVIS III Quanser 控制板的强大功能讲解控制 概念 • 使用新的 TI 模拟电子板(今年夏季将推出),讲解模拟和微电子技术知识  为自动化测量和模拟电子技术领域提供现成的硬件和课程进一完善了 NI ELVIS 生态系统。此外, 结合新增的软件更新及附加工具,NI ELVIS III 进一步优化了移动用户体验,让学生可以随时随地 学习课程,最终将完全颠覆传统的实验学习方法。  TI 高校计划市场总监 Doug Phillips 表示:“行业领先供应商携手合作,共同开发院校解决方案,有 助于将行业技术融合到课堂中,缩短高校培养人才与企业需求的差距。NI ELVIS III 融合了 TI 业界 领先的半导体技术以及 NI 在测试和测量方面的专业知识,有助于学生掌握未来创新所需的技术技 能。”  NI 院校营销副总裁 Dave Wilson 表示:“如今的学生都是数字原生代(digital natives),他们希望自己 的学习环境不仅能够满足当前的学习需求,也能够为未来进入职场打下基础。传统的实验室并不 适合教授未来的概念,采用类似于 NI ELVIS III 这样的整体解决方案将可帮助高校吸引和留住最优 秀、最聪明学生,契合行业最新趋势,最终加速工程领域的探索和发现。”  NI ELVIS III 结合 Multisim 和 LabVIEW,提供了最为完善的多功能教学解决方案,帮助工科学生掌握 未来职场上开展工作、进行创新和探索所需的技能。

    时间:2019-05-22 关键词: 物联网 LabVIEW ni multisim elvis

  • 基于LabVIEW的信号输出与数据采集系统

    基于LabVIEW的信号输出与数据采集系统

    作者:高聪杰 李松岩 徐赫1 引言近年来,在国防、汽车、仪表等领域,嵌入式计算机系统的应用越来越广泛。由于目前硬件技术的迅猛发展以及容错技术的广泛应用,因硬件故障而导致的软件失效越来越少,系统故障的主要原因已经从硬件逐步转向软件。因此如何测试嵌入式计算机系统中的软件性能就成为人们关注的焦点,而这其中非常关键的就是如何在仿真环境下由仿真测试平台输出激励信号驱动嵌入式计算机系统运行并同时采集它的输出信号。本文正是基于此设计了一套基于LabVIEW的信号输出与数据采集系统。2 LabVIEW简介LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是目前最为成功、应用最为广泛的虚拟仪器软件开发环境,是由美国国家仪器公司(National InstrumentsTM,简称NI)推出的一种基于图形程序的虚拟仪器仪表开发平台。它不仅提供了与遵从GPIB,VXI,RS-232和RS-485协议的硬件及数据采集卡通讯的全部功能,还内置了支持TCP/IP,ActiveX等软件标准的库函数。与传统编程采取的文本语言相比,LabVIEW使用图形语言 (各种图标、图形符号、连线等)编程,编程简单方便,界面形象直观,都是人们熟悉的开关、旋钮、波形图等,是一种直觉式图形程序语言。LabVIEW编程时,基本不需要编写程序代码,而是“绘制”程序流程图,这样就可以使没有丰富编程经验的工程师从繁重的程序文字编码中解脱出来,把更多的精力放在试验和测试上。LabVIEW程序运行的方式不像传统编程语言那样一条一条语句地往下执行,而是以数据流方式执行程序。也就是说,一个程序节点要在所有数据流都到达时,才开始运行,处理后的数据流同时向后面的各个节点流动,因此可以设计出同时执行多个程序的流程图。3 信号输出与数据采集系统的设计基于LabVIEW的信号输出与数据采集系统由PC机(PC机没有特殊的要求,常用的台式机都可以满足要求)、数据采集卡和信号输出与数据采集程序构成。3.1 数据采集卡简介系统采用NI公司的PCI-MIO-16E-4型数据采集卡。它是NI公司的NI 6040E系列数据采集卡之一,是一种性能优良、适合PC及兼容机的数据采集卡,能够完成模拟信号输入/输出和数字信号输入/输出等功能。它有16个模拟输入通道(对差分输入是8对模拟输入通道)、2个模拟输出通道、8个数字量I/O、2个24位的计数器(用于计时/计数功能)。在使用采集卡之前,首先要进行采集卡的安装,将采集卡插入PC机的PCI插槽。由于是NI公司的数据采集卡,因此不需要再编写采集卡的驱动程序,只需重新启动计算机,放入采集卡的驱动光盘,按照提示就可以自动完成安装。安装完成后对设备号、模拟输入极性、模拟输入模式、模拟输出极性等参数进行设置。另外,选用CB-68LP连接块和R6868带状电缆等附件来连接数据采集卡和嵌入式计算机系统。3.2 硬件连接系统通过数据采集卡把嵌入式计算机系统和PC机连接起来,由PC机输出激励信号驱动嵌入式计算机系统运行,同时由PC机采集嵌入式计算机系统运行的输出信号。硬件连接框图如图1所示。图1信号输出与数据采集系统硬件连接框图3.3 信号输出与数据采集系统的LabVIEW程序系统能够实现同时输出和采集模拟信号,它利用传递error信息的数据线安排并行的执行顺序。其工作流程如下:首先通过AO Config VI设置好输出参数,通过AI Config VI设置好输入参数;然后将准备好的波形数据通过AO Write VI写入输出缓冲区;接着由AO Start VI启动模拟输出,AI Start VI启动模拟输入(要将number of scans to acquire的参数设为0,这样才能连续采集);在While循环中,AI Read VI连续从输入缓冲区读取数据,输出缓冲区中的数据经AO Write VI被送到DAC输入端,经转换后输出,直到用户按下了STOP按钮或程序出错才结束。最后由AO Clear VI清除任务所占用的全部资源。在本程序中,输出和采集并不是同步的,首先AI Start和AO Start没有受同一时钟源的控制,采集卡的模拟输入和模拟输出各有独立的时钟;其次它们并不是被同时启动的,AI Start要稍晚于AO Start,不过两者的启动时间相差非常小(时间差在几微秒内),在要求不是特别严格的场合可以忽略不计。参数设置:输出通道指定从采集卡的那个模拟输出通道输出信号,输入通道指定由采集卡的那个模拟输入通道采集信号;输出通道缓冲区的大小一般为更新速率的两倍;输入通道缓冲区的大小一般为扫描速率的两倍,每次读取的样本数设置为一个小于输入通道缓冲区大小的值,一般为输入通道缓冲区大小的一半。图形化程序如图2所示(本程序输出的是一个正弦波,可根据不同的场合替换成所需的信号)。图2信号输出与数据采集系统的图形化程序4 结束语基于LabVIEW的信号输出与数据采集系统方法简单、可靠适用,能够实现在仿真环境下驱动嵌入式计算机系统运行并采集它的输出信号,为嵌入式软件的测试奠定了基础。同时利用虚拟仪器实现了软件代替硬件,避免了大量专用测试设备的使用,节省了成本,提高了效率,达到了良好的效果。本文作者创新点:用LabVIEW实现了信号输出与数据采集的同时进行,可以在采集数据的同时由数据采集卡输出信号,提高了效率。

    时间:2019-04-17 关键词: 数据 LabVIEW 信号 采集系统 总线与接口

  • 利用LabVIEW和CompactRIO设计一个用于研究飞虫的机器人设备

    利用LabVIEW和CompactRIO设计一个用于研究飞虫的机器人设备

    行业:生命科学, 机器视觉/成像设备, 科研 产品:LabVIEW, CompactRIO, cRIO-9014 挑战:开发一个灵活的高带宽机器人设备,以便测量和仿真有翼昆虫的飞行方式。 解决方案: 利用NI的LabVIEW软件和CompactRIO硬件制造一个快速、模块化、易于使用的仿生机器人平台,它涉及各种工业协议和实时闭环激励信号生成。 "借助于CompactRIO控制器和LabVIEW,我们对于飞虫如何实现出色的飞行控制进行了研究。" 苍蝇能够高速追逐,并精确地降落在盘子的边缘,这其中的机动性令人非常感兴趣。我们可以利用苍蝇作为模型系统研究神经信息处理、空气动力学和遗传学,此外,它们还可以快速、精确地使用它们的生物传感器、控制器和执行机构。人们对它们这样的能力很感兴趣但是难以进行研究。测量和激励装置必须具有高带宽、低延迟,并拥有灵活的界面。同时,易用性和模块化特性也是跨学科和合作研究的关键。 我们利用CompactRIO 控制器和LabVIEW 图形系统设计软件来研究飞虫如何实现出色的飞行控制。我们采用了数字I/O模块来连接一个基于LED的视觉激励场,它具备了时间和空间的精确的分辨率,使得我们可以有效刺激苍蝇的视觉系统。记录昆虫的响应需要一个快速、灵活的采集系统。LabVIEW能够提供记录这些信号所需要的速度和模块化特性,并且能够将它们作为实时反馈来生成刺激信号。这样,我们就能够把将苍蝇作为一个活的传感器,并嵌入到一个科技系统中。 我们开发了一个试验。在试验中,我们把一只果蝇用绳拴住,通过果蝇的动作来控制伊普克(e-puck)机器人。该机器人是一个小型移动机器人,是一个大学的研究项目,它被设计用于通过充满障碍的环境。从绑定在机器人上的照相机和接近传感器可以获得反馈,用来确定向苍蝇展示的视觉刺激、翅振频率和幅度等飞行参数,来控制机器人运动(图1)。苍蝇和机器人之间的传递函数会发生变化,从而实现一系列的试验模式。苍蝇的高速电影:加速的LED视觉场 视觉激励场包括8个绿色LED 面板,它们通过I2C协议连接到定制的控制器。在过去的设计中,所有的飞行都由一条总线进行控制。为了实现更高的帧率,并根据苍蝇的反馈来调节视觉激励,我们必须使用多条并行的总线。最终,我们选择了NI cRIO-9014 实时控制器和一体化NI cRIO-9104可重新配置嵌入式机箱更换了最初的控制器。蝇控机器人:从苍蝇到机器人 在实验装置(图2)中,果蝇被用绳拴在一个环形的LED面板阵列的中心。虽然昆虫不能够移动,但仍可以拍打翅膀并且按照和自由飞行相同的方式飞行。数字振翅分析仪会获得电流频率、振幅、位置均值和苍蝇振翅的相位。这些行为状态矢量通过用户数据协议(UDP)包传输到一台运行LabVIEW的主机上。我们可以在主机上应用自定义传递函数计算出更新的伊普克(e-puck)机器人的轮转速。这些数值再通过蓝牙(Bluetooth)发送到机器人上。从机器人到苍蝇 当我们利用昆虫的行为来操纵机器人时,来自机器人设备的反馈会修改面向昆虫的视觉显示方式。反馈由安装在机器人顶部的三个线性照相机和八个接近传感器给出。照相机以10Hz的频率采集,每帧拥有102像素。接近传感器以20Hz的频率输出标定后的数据。主机会通过蓝牙(Bluetooth)接收这些信号并且应用第二个自定义传递函数,以生成在LED视觉场上显示的下一帧图像。 主机应用程序通过以太网(Ethernet)把新的图像模式发送到实时控制器。然后这一图像模式被划分为8×8像素块,每个像素块将与一个LED面板相对应,并被转换为I2C指令。为了实现最大处理量,这些数据会经由DMA(直接内存存取)的FIFO(先进先出)队列传递到FPGA(现场可编程门阵列)。中断向量可以保证在实时控制器命令生成和FPGA底层硬件通信之间的同步。而后,FPGA背板采用I2C协议控制12条总线,每条总线分别控制五个面板。从而,机器人所看到的环境决定了针对苍蝇的视觉刺激,而苍蝇对视觉刺激的响应也改变了机器人前进的路径。 视觉刺激的帧率大约在30Hz和400Hz之间,这取决于模式的深度和是否垂直对称。控制回路中的累积延迟小于50毫秒并且这主要是由传感器信息是经由蓝牙从机器人传输到主机而造成的。有效地设计:灵活的界面和模块化的结构 借助于LabVIEW和CompactRIO,我们可以通过各种不同的协议连接到一系列的研究工具。NI和LabVIEW的网络用户社区提供的极大的灵活性和许多范例程序,这使得基于LabVIEW设计的应用有效地替代了实验生物学中的定制控制器。我们设计了一种友好的GUI(图形用户界面),它为实验者提供了必要的控制手段和信息,从而简化了多个硬件平台上运行的代码的复杂度(图3)。这一功能在一些跨学科的应用中非常有效,能够增进生物学家、数学家、物理学家和工程师之间的密切合作。此外,LabVIEW代码的模块性和可移植性也使其能够在实验室之间被分享和重复利用。例如,在这一解决方案的定制化版本,运算模式可以被预先生成并且保存在U盘中,然后下载到实时控制器的RAM中,再传输到LED面板,以获得更高的刷新率。一个混合的自适应控制器 由于苍蝇的部分神经回路具有高度的可塑性,它可以被看作一个自适应控制器。通过使用新的仿生机器人平台,我们能够评估控制器在各种外部传递函数下的性能,这些传递函数几乎能够模仿出所有的苍蝇的自然飞行环境,例如根据最靠近机器人的障碍物的位置来确定视觉场中的栅格的上下移动。但令人惊讶地是,最接近于直觉的传递函数并不一定会获得最佳结果。LabVIEW 和 CompactRIO为构造这一包含活体昆虫并且允许我们进行各种实验的控制回路提供了理想解决方案。CompactRIO负责采集并生成各种适用不同工业标准的信号,并扩展了自定制的研究工具。另外,由于我们在计算机、实时控制器和FPGA上分别实现的应用程序是在同一个编程环境和开发语言下完成的,这大大节省了我们的学习时间,提高了效率。此外,大量的附件产品和外接接口还为未来的扩展和适应性提供了巨大潜力。

    时间:2019-04-09 关键词: 设备 LabVIEW 机器人 嵌入式开发 飞虫

  • LabVIEW的远程面板控制

    labview中客户端远程面板控制类似于windows远程桌面连接方式。在服务端打开一个vi面板,然后在客户端通过远程面板工具登录连接到服务器,对服务器端打开的vi进行操作。下面介绍实施远程面板控制时服务器和客户端的具体操作。  ·第1步:在服务器端打开tcpserver.vi前面板窗口。如图1所示。  如图1 服务器端tcpserver.vi前面板  ·第2步:打开客户端远程面板工具。在客户踹labweu程序框图或前面扳窗口主莱单中透择“操作→连接远程前面板 ”,弹出“连抉远翟前面板”对话框,如图2所示。  如图2 “连接远程前面板”对话框  · 第3步:通过远程面板工具连接服务器。服务器地址”设置月艮务器ip地址;“ⅵ名”设置服务器端打开的ⅵ名称;“端田”设置服务器设定的http端口,默认为80;勾选复选框“请求控制”获取控制杈,“连接状态”栏显示连接状态和信息。其中“xxx.xxx.xxx.xxx”为隐去的服务器端ip地址。  注意,使用远程面板控制方式运行ⅵ时,产生的结果数据都保存在服务器端而不是客户端,如果客户端需要得到数据,就要使用通信协议或datasocket传递数据。  

    时间:2019-04-05 关键词: LabVIEW 面板 嵌入式开发

  • 基于STC12C5A60S2的双电源供电智能控制系统设计

    基于STC12C5A60S2的双电源供电智能控制系统设计

    引言随着国民经济的迅速发展,人们对供电连续性、可靠性的要求越来越高,对于不允许断电的重要场合,如医院手术室、高层建筑安全保障系统、热电站、化工企业、银行等,都要求配备至少两路电源来保证供电的连续性。因此,需要一种能在两路电源之间进行自动转换的系统,以保证正在使用中的电源出现故障时能自动转换到另一路正常电源。双电源供电系统的应用场合决定其可靠性尤为重要,若两路电源不能及时进行转换或者转换失败,会给人们的生活和生产带来严重的损害。随着无线通讯技术的发展,本文结合比较实用的GSM无线通讯技术,设计研制了一种工作安全可靠性高、硬件结构简单、成本低廉的双电源供电系统智能控制器。本文研究的控制器对提升该类产品技术水平、推动产品更新换代具有重要意义,且应用前景广阔。1 系统设计本文提出了基于STC12C5A60S2的双电源供电智能控制系统。该系统可实现对常用电和备用电电压的实时监测,并实现两路电源安全可靠切换。同时系统完成对电压数据的采集和传输,现场的显示模块由12864液晶和LED组成,完成简单电压显示和工作模式的指示,有效数据通过GSM模块发送到后台监控主机,便于统一管理,此外,用户可以根据自己的要求实现将相关数据发送到指定手机的功能。该双电源供电智能控制系统包括:电源模块、控制器、信号检测模块、远程无线模块、时钟模块、输出控制模块、键盘、LCD和LED人机交互模块。系统结构如图1所示。图1 系统结构2 硬件电路设计2.1 控制电路本系统的控制部分是以STC12C5A60S2单片为核心机构成的最小系统,此外,为方便程序下载,设计了基于CH340的程序下载接口电路,单片机最小系统和程序下载电路如图2所示。图2 单片机最小系统2.2 检测电路在智能控制系统中,检测部分实现对各路电压信号的采集、调理等功能,主要有三部分组成:交流信号隔离与采集、模拟信号通道选通、交流小信号的抬升与跟随。2.2.1 信号隔离采集及信号的选通为了消除强电回路对弱电回路的影响,保护检测回路,在采集交流信号时选用了变比为1000:1000的交流电流互感器ZMPT101B,主要作用为隔离强电回路;检测信号多路选通的实现则选用了模拟开关CD4051。如图3所示,交流电压信号经过R1限流电阻,将电压信号转化为电流信号,经过电流互感器后,通过运放UA741再将电流信号转化为电压信号。图3 交流信号采集电路2.2.2 交流信号抬升与跟随由于控制器的AD口只允许输入0~5V的电压信号,因此需要将正负半轴均有的交流信号进行抬升,即在原有信号的基础之上增加一个大小为2.5V的直流信号,为了防止负载对检测信号的影响,在此后端添加电压跟随电路。硬件电路如图4所示。2.3 人机交互系统中为方便用户观察电源工作状态和设置相关参数,鉴于输入信息相对简单,因此采用独立式键盘;显示方式为LED和LCD,LED用来指示各电源的工作状态,LCD则用来显示当前工作电压等信息。图4 信号抬升电路图5 无线通信电路2.4 无线通讯模块本系统为了方便用户统一管理和及时有效的得知电源的工作方式,为其配备了无线通讯功能,一方面现场的数据可以实时发送给后台监控,将现场数据实时显示出来;另一方面用户可以通过后台的监控软件实现对现场的控制与操作。此外,本系统中,用户可以将部分手机配置为终端,同时具有接收数据和控制现场设备的功能。3 软件设计本系统的软件设计包括控制器软件设计和后台监控软件设计。3.1 控制器软件设计按照软件设计要求,本系统依然采用模块化程序设计[6,7],主要包括:定时器模块、AD采样模块、LCD显示模块、串口通讯模块等,程序流程图如图6所示。图6 控制器程序框图3.2 后台监控软件设计本系统中,为方便用户实现控制器统一管理和数据的采集,设计了基于LabVIEW的后台监控系统,该系统可以实现对现场控制器的控制与设定,同时将现场的状态与数据进行实时显示。此外,系统具备基本的权限管理、数据库管理等功能。LabVIEW开发的后台监控具有开发周期短、界面美观、界面具备人性化等特点[8],监控主界面如图8所示。图7 监控主界面4 实验在本系统中,信号采集与信号调理是实现控制的重要环节,因此为方便实验,减少器件损耗,运用模拟电路仿真软件MultiSim10进行仿真实验,实验波形与实际测得波形如图8所示。5 总结设计了基于STC12C5A60S2的双电源供电智能控制系统,通过理论分析与实际实验测试证明了系统的可行性和可靠性,该系统可以安全可靠地实现电源的自动切换,并且具备远程无线通讯和控制功能,使用户不仅可以通过后台了解现场信息,还可通过配置将自己的手机作为终端,了解和控制现场各控制器状态。图8 仿真与实验波形

    时间:2019-03-27 关键词: LabVIEW 单片机 电源技术解析 信号调理

  • 基于LabVIEW的电子式互感器校验系统设计

    基于LabVIEW的电子式互感器校验系统设计

    1.前言随着数字化变电站和智能电网建设步伐的加快,电子式互感器得到了迅速的发展。电子式互感器包括电子式电流互感器和电子式电压互感器两种。为了保证电子式互感器的准确度,确保系统安全、稳定,需要对互感器进行校验。电子式互感器校验系统用来对电子式互感器的比差和角差进行校验。与传统互感器相比,电子式互感器在测量原理、结构和输出信号的方式上发生了根本的变化,其校验原理和方法与传统互感器校验原理和方法完全不同,因此传统互感器的校验方法不能应用到电子式互感器的校验中。LabVIEW是一种图形化的编程语言(G语言),区别于传统的文本式的编程语言,它将各种功能封装成函数模块,能够快速建立系统的图形用户界面,具有开发效率高,开发周期短的特点,在测试测量、信号处理中的应用非常广泛。利用LabVIEW开发环境编写的程序称为虚拟仪器程序(VirtualInstrument program),简称VI.本文基于NI公司PCI-4474数据采集板卡以及LabVIEW开发环境建立了电子式互感器的校验系统,结合同步信号卡和数字信号处理实现对互感器的检验。对于校验10~500kV电压等级的电子式电压互感器和额定电流为5~5000A的电子式电流互感器能够达到万分之五的精度,具有精度高、性能稳定可靠的特点,满足对电子式互感器比差和角差校验的要求。现场测试表明了本文所建立的校验系统的有效性。2.系统组成校验系统由硬件和软件两部分组成,系统硬件主要包括以下部分:(1)标准电压、电流(电磁式)互感器(包括升压、升流器)。使用标准互感器的目的是为校验系统提供标准输出信号,且必须可溯源。互感器精度选取0.01级,目的是为了提高系统测量精确度。(2)PCI-4474数据采集板卡。该板卡是从事高精度动态和瞬态测量的动态信号采集卡,具有4路同步采样模拟输入通道,输入信号为-10~10VDC.另外,它具有24位分辨率,最高采样速率达102.4kS/s.(3)取样电阻。选取阻值为80Ω,额定电流为0.05A的取样电阻,精度为100ppm.(4)电压互感器100V(100/√3V)/4V,精度0.01级;电流互感器5A/0.05A,精度0.01级。(5)同步卡:用来同步被试互感器合并单元及标准回路采集卡。(6)合并单元:合并单元的主要功能是同步接收12路电子式互感器输出的数字信号(12路信号按照IEC60044-8标准规定的DATASET数据通道定义),并按照IEC60044-8标准规定帧格式并发送给继电保护,测量及控制设备。合并单元一般提供共12路电流和电压信号(全部光纤传输),包括7路电流信号和5路电压信号,它们按照一定的规则打包并通过以太网输出。合并单元一般由用户提供,遵循GBT-20840-7/8和IEC61580-9标准。合并单元与校验系统的连接主要包括两个部分:一是同步脉冲信号连接,二是以太网的连接。合并单元与校验系统连接框图如图1所示:(7)工控机。工控机通过通信规约为IEEE488.2的PCI-GPIB卡与标准A/D转换器相连。(8)调压器。系统软件是LabVIEW开发环境,它是由前面板、框图程序、图标/连接器三部分组成。(1)前面板是LabVIEW的图形用户界面,能够对系统中的各种参数进行监控,它由输入控件和显示控件组成,如图4所示。(2)框图层序采用图形化的编程语言编写,相当于文本式编程语言的程序语句,能够实现特定的功能。(3)图标/连接器能够将LabVIEW开发环境编写的程序(VI)生成供其它VI调用的子VI,提高了程序的可读性和开发效率。3.校验系统原理本校验系统的工作原理可分为两部分:电子式电流互感器校验原理和电子式电压互感器校验原理。3.1 电子式电流互感器校验原理将标准电磁式电流互感器与被试电子式电流互感器一次串联,由升流器为互感器一次侧提供电流,调节调压器改变升流器输出电流的大小。标准CT的二次侧接标准电流互感器5A/0.05A,其二次侧接标准电阻,取电阻上的电压,并输入到数据采集卡(PCI-4474)。电子式电流互感器二次侧获取的电流信号由光纤送入低压侧的合并单元。计算机通过数据采集卡获取标准CT的测量结果及通过以太网获取电子式电流互感器的测量结果,由计算和提供时钟同步信号对被试电子式电流互感器和数据采集卡进行同步采样。经过数字滤波、DFT运算等信号结果,计算出电子式电流互感器比值误差和相位误差。校验原理如图2所示。3.2 电子式电压互感器校验原理电子式电压互感器校验原理与电子式电流互感器校验原理类似,不同的是标准电磁式电压互感器与被试电子式电压互感器一次侧并联,由升压器为互感器一次侧提供电压,通过调压器来调节输出电压的大小。标准PT的二次侧接标准电压互感器100V(100/√3V)/4V并输入到数据采集卡(PCI-4474)中。原理如图3所示。4.系统特点及性能指标本校验装置适用于符合IEC61850-(9-1,9-2)标准数字输出以及IEC60044-7/8标准输出的电子式互感器的实验室和现场精度校验。4.1 系统特点(1)用户无需了解IEC61850或IEC60044-8,也无需设置MAC地址,即可检定互感器误差。(2)检定非传统互感器(小信号输出)。(3)内置4个通道24Bit sigma-delta AD满足未来可能的出现的大运算量和其他的各种需求。(4)可用八位半高精度数字万用表(Agilent3458A)溯源。4.2 技术指标及性能(如表1所示)#15.基于LabVIEW的校验系统界面设计本校验系统是基于LabVIEW8.6开发环境设计的,软件界面包括三各部分:系统校验界面、详细参数分析界面和系统检定界面。系统检定界面主要完成软件计算后将结果统计显示,如图4所示,该界面是整个系统的核心。在参数配置完成后,点击开始按键系统按照配置参数“一键式”完成整个检验检测,并能够显示标准源幅值百分比,系统速率、比差(最大值、最小值和平均值),相位差、最大值、最小值和平均值,每次比较的详细参数引表(比较次数、幅值百分比、比差、角差、相位差和本次比较数据是否自效等)。6.总结本文针对电子式互感器的工作原理和组成结构,基于NI公司数据采集板卡结合LabVIEW开发环境建立了互感器的校验系统,具有测量精度高、操作简单的特点,具有一定的实用价值。

    时间:2019-03-18 关键词: LabVIEW 电源技术解析 ni

  • 基于LabVIEW的SFP光模块测试平台的设计与实现

    基于LabVIEW的SFP光模块测试平台的设计与实现

    摘 要: 介绍了一种利用LabVIEW构建SFP(Small Form-factor Pluggable)光模块测试平台的方法。测试平台通过读写计算机并口来映射地址上的数据,控制并口端口的逻辑电平实现计算机并口模拟I2C总线。计算机利用模拟的I2C总线与SFP光模块实现通信。分析了生产者/消费者结构队列状态机并用于设计中,该设计模式可以及时响应前面板动作或外部事件,并且使得状态机的状态变换更加灵活多变。关键词: SFP光模块; 生产者/消费者结构队列状态机; 计算机并口模拟I2C总线  随着近几年光通信的迅速发展,光通信接入网对实现光电、电光转换的光收发模块的要求越来越高,光收发模块的测试也越来越复杂。早期一般使用Visual Basic、Visual C++开发测试软件,存在开发周期长、测试效率低等问题,本文提出了使用LabVIEW虚拟仪器技术来完成测试工作的方法,解决了测试成本高、测试效率低、测试系统松散等问题,同时它还具备远程测试以及仪器定制或自制等特点。虚拟仪器技术已经深远地影响着测试测量领域,是企业和科研单位的测试工作的重要解决方案之一。本文正是利用此项技术解决了SFP光模块测试平台开发的几个关键问题。1 SFP光模块测试软件的设计1.1软件结构  软件由四个界面构成,实时监控界面、阈值设置界面、校准界面和光模块信息设置界面。实时监控界面是软件的主界面,它显示数字诊断功能[1]中的五个模拟量与其Alarm和Warning标志;阈值设置界面的功能是设定Alarm与Warning阈值,当实时监控值不在阈值内时会出现工作异常警示;校准界面主要是解决数据漂移,从而保证测得数据准确;模块信息设置界面是完成光模块在出厂前信息设置。软件运行的过程中用到的数据库是由Access数据库构成。如图1所示为软件结构图。1.2计算机并口模拟I2C总线 I2C总线由四种信号组成:开始信号、停止信号、响应信号和数据发送。在计算机并口产生这些信号就要对数据地址、状态地址和控制地址进行程序设计和控制。在LPT1端口中,它们对应的地址分别为0x378、0x379和0x37A。计算机并口中的8个数据端口分别对应0x378中的B7~B0;5个状态端口分别对应0x379中的B7~B3;4个控制端口分别对应0x37A中的B3~B0。如果在以上地址的某一位上写1,计算机并口的对应端口就会产生逻辑电平高。I2C总线的SDA和SCL分别需要并口的两个端口模拟,这是因为计算机并口的特性,对地址中的数据的操作要么一直读操作要么一直写操作。 对LPT1端口地址操作要使用LabVIEW函数库中的Out Port函数和In Port函数。Out Port函数和In Port函数是在指定的16位I/O端口地址读取和写入带符号的整数。读操作要先利用In Port函数读取LPT1端口地址上的整数数据,再转化为无符号数据并求出特定位的布尔量,最后得到该位对应端口的逻辑电平。写操作就是先利用In Port函数读取LPT1端口地址上的整数数据,再转化为无符号数据并修改其中某一位的值,最后利用Out Port函数把修改后的数据转化为整数数据并写入LPT1端口地址,从而改变对应端口的逻辑电平。 I2C总线的四种信号通过SDA和SCL的组合形式如下:(1)开始信号:在SCL高电平期间,SDA由高变为低,将产生一个开始信号;(2)停止信号:在SCL高电平期间,SDA由低变高,将产生一个停止信号;(3)应答信号:传输一个字节后的第9个时钟,若从设备把SDA拉低,表明有应答信号,反之则无;(4)数据传输:数据传输过程中,数据的改变都必须在SCL低电平期间,在SCL为高电平期间必须保持SDA信号的稳定[2]。 按照时序要求依次可以编写出I2C start、I2C send、I2C ack和I2C stop四种I2C总线信号的vi,其中I2C send这个vi既能发送地址又能发送数据。最后由这些vi组成如图2所示的完整I2C总线数据传输。1.3 生产者/消费者结构队列状态机 设计模式是在解决问题的过程中,由一些良好思路的经验集成的。在LabVIEW中,它包括结构、函数、控件和错误处理的布局,它形成了一个通用的结构来完成一些常见的任务。设计模式可实现模块重用,并提高软件生产效率和质量[3]。 生产者/消费者结构是一种常用的设计模式,它主要用于数据采集系统。一般的数据采集系统包括数据采集、数据分析和结果显示三个步骤。如果将这三个步骤按照常规的顺序执行,则数据分析导致的时间延迟会增大数据采集的周期。采用生产者/消费者结构的数据采集系统,它通过并行的方式实现多个循环,可以很好地解决这一问题。一个循环不断地采集数据(生产者),另一个循环不断地处理数据(消费者),这两个循环互相通信,但又不产生干涉。 队列状态机也是一种常用的设计模式,它对经典状态机做了很大的改进。在经典状态机中,移位寄存器的状态转移方式受限于每个循环间隔内一个指定新状态或应用程序的状态。而队列状态机则通过LabVIEW的队列结构缓存一个队列的多状态,使得应用程序的任何状态都可以通过调用Enqueue Element函数在该队列的后端增加任意数量的新状态,这类似于先进先出缓冲器。  生产者/消费者结构队列状态机最早是由Anthony Lukindo提出和改进,它结合以上两种设计模式优点,其结构示意图如图3所示。 从图中可以看出,该设计模式由四部分组成:队列引用、事件循环、主循环和并行子vi。事件循环和并行子vi为生产者,主循环是消费者,生产者和消费者之间的消息与数据的传递是通过队列引用来实现的。事件循环由Event结构和While循环组成。主循环由Case结构和While循环组成,其中Case结构有两个,分别是主Case结构和错误Case结构。队列引用是由LabVIEW中的队列操作中的函数组成,其中最常用的函数为Obtain Queue、Enqueue Element、Dequeue Element和Release Queue等。图中的虚线是指并行子vi可以不通过队列引用而和主循环进行连接。 生产者/消费者结构队列状态机的实现如下:Obtain Queue函数和Enqueue Element函数在While循环左侧初始化队列。枚举类型定义控件端子连接到Obtain Queue函数的数据类型端子,这样就可以指定队列的数据类型。枚举常量由枚举类型创建,并连线到Enqueue Element函数的端子。Initialize状态是添加到队列中的第一项,它是状态机执行的第一个状态。Dequeue Element函数位于主Case结构之外的错误Case结构的NO Error事例中。如果在错误簇中没有出现错误,则下一状态就会从队列移出,并传送到主Case结构的选择器端子;如果发生错误,则有General Error Handle VI来报告错误,并且执行Shutdown状态。Case结构的每个事例中,事件循环和并行子vi都可以使用Enqueue Element函数来增加其他的状态。此外,为了能够立即执行,可以使用Enqueue Element At Opposite End函数在队列的前端增加一个状态。这使得应用程序能够及时响应高优先级的操作或事件。当用户要退出应用程序时,必须利用Release Queue函数释放队列引用,同时释放队列所占用的内存空间。 当队列中需要传递状态和数据时,队列元素数据类型就需要由一个簇组成,这个簇包括一个与变体打包到一起的枚举类型定义。通常,该枚举类型包含了事例选择器中需要的状态。变体用来将数据从时间循环或并行子vi传递给主循环,这些数据的传递体现了生产者/消费者结构。同时,这个变体可以是多种类型的数据,但是必须为其中每个成员指定一种数据类型。  SFP光模块测试程序首先初始化队列引用和主界面中的控件,然后进入检测光模块。如果检测到光模块的插入,则主程序会读取数字诊断功能中电压、温度和偏置电流等。在大部分时间里,主程序都是在轮询地读取这些数据。如果用户在前面板有操作,此时事件循环将利用Flush Queue函数把队列清空,然后加载下几个状态,及时地响应用户的操作并且最后回到读取数字诊断功能中模拟量。2 测试与验证2.1测试环境  测试平台的硬件包括计算机、测试板、并口线、电源以及待测光模块。首先在计算机中安装本文开发的测试软件,其次利用并口线把计算机和测试板连接起来,再次把待测光模块插入到测试版中,并加载电源,最后打开测试软件进行测试。  连接到I2C总线的器件输出端要是漏极开路或集电极开路才能执行传输的功能。因为计算机并口不满足这两种结构,所以本设计中在并口外接2N3906使得SDA和SCL满足集电极开路结构。2.2 I2C总线验证  为了保证光模块测试平台稳定地工作,必须测试I2C总线通信的稳定性。利用 I2C总线对EEPROM进行连续读或者连续写。在图4中,C1和C2信号是对Z1和Z2信号框内部分的放大,这部分是主设备向从设备写数据。 主设备首先发送器件地址0xA0,在第9个时钟,从设备给出了一个拉低SDA的应答信号。主设备然后发送寄存器地址0x00,同样得到了应答信号。最后发送要写入的数据0x55。图中的两个时间标尺测量出写入数据操作距离下一次操作的时间,这个时间要大于等于5 ms。重复此读写过程10 000次,没有错误则证明I2C总线非常稳定。2.3 光模块测试软件的验证 如图5所示,是对一个Maxim DS1856方案的光收发模块的检测结果。 其中5个模拟量的监控值直接反映光模块的工作状态。表1是DS1856方案实测值与软件监控值对比。 在SFF-8472协议中规定了每个模拟量的精度范围:温度误差在±3℃之内;电压误差不超过厂家标称值的3%;偏置电流误差不超过厂家标称值的10%;发射功率误差在±3 dBm之内;接收功率在±3 dBm之内。通过表1结果显示,此测试软件满足SFF-8472协议规定的误差范围。 本文使用LabVIEW设计实现了针对SFP光收发模块的测试平台。重点介绍了测试软件与SFP光模块的I2C总线通信的实现,论述了生产者/消费者结构队列状态机设计模式,提供了对该设计模式的具体实现方法,并把它应用在SFP光模块测试软件。该测试平台已经应用到企业的实际生产过程中,减少了对SFP光模块测试工作量,提高了测试效率,并且保证了所需的测试精度,具有一定的工程应用价值。参考文献[1] SFF-8472 specification for diagnostic monitoring interface for Optical Transceivers Rev 10.4[S]. 2009-01.[2] The I2C-Bus specification version 2.1[S]. 2000-01.[3] Blume, Peter A. The LabVIEW style book[M]. Prentice Hall, 2007-03.[4] 程社成.带数字诊断功能的小封装光模块研究[D].武汉:武汉理工大学,2006.

    时间:2019-03-12 关键词: 测试 模块 LabVIEW 平台 设计教程

  • 基于MCS51的低成本LabVIEW实验教学系统

    在此利用廉价的MCS51单片机设计了包含常用传感器、数据采集模块与USB通信接口的LabVIEW 实验教学系统。该系统使用USB接口与上位机通信并提供电源,而上位机编程直接调用VISA驱动USB接口,大大降低了数据采集程序设计的难度。该系统可以满足大学虚拟仪器实验教学的需要,性价比高,具有良好的推广前景。  0 引言  NI 公司于20 世纪70 年代提出了虚拟仪器的概念。虚拟仪器是在以计算机为核心的平台上,由用户设计,具有虚拟面板,由软件实现测试功能的计算机仪器系统,是计算机与测试仪器相结合的产物。虚拟仪器最常用的编程语言为LabVIEW,是NI公司的基于图形化编程语言的虚拟仪器开发工具,利用它可以轻松组建一个测试系统而无需进行繁琐的代码编写。因此虚拟仪器大大突破了传统仪器在灵活性,以及数据处理、显示、存储等方面的不足,其主要优势在于:用户能够根据需求灵活的进行功能修改和扩展;人机界面为视窗界面,形象直观;网络连接简单易行,便于组建测控网络。  目前虚拟仪器在通信、汽车、测控等行业得到了广泛的应用。相应的各大高校也在NI公司的支持下,陆续开设了虚拟仪器课程,组建了相关的实验室,如西安交大利用虚拟仪器讲授信号处理;天津大学开设的智能检测仪器课程。  目前国内高校教授虚拟仪器课程使用的信号采集板多为NI 公司的数据采集板卡,如USB600X,USB92XX,PCI62XX 系列。这类板卡虽然性能优良,配套软件齐备,但是作为高校教学也存在不足之处。首先NI公司只卖板卡不卖技术,这样在教学中教师和学生只能使用板卡,而不能掌握虚拟仪器硬件系统的具体结构和技术细节;其次这类板卡一般价格较贵,普遍在2 000元以上,相对高校而言开课成本太高,这一点对于欠发达地区的一般学校尤为突出。  本文利用廉价的MCS51单片机设计了包含常用传感器、数据采集模块与USB 通信接口的LabVIEW 实验教学系统,并编制了常用的实验案例程序,满足了本科生虚拟仪器实验教学的需要,且成本相对于NI的产品大大降低,针对高校市场具有良好的推广前景。  1 系统结构  整个系统由前端传感器、单片机数据采集以及USB通信接口几部分组成,如图1所示。  1.1 前端传感系统  虚拟仪器实验系统的前端传感器将待测的物理量转换成电量(电流或电压),作为后面采集处理系统的输入信号,是整个测试系统与外界的接口与桥梁。本实验系统集成了温度、光强与电阻传感器,并预留了扩展接口以外接其他传感器。其中温度传感器为数字温敏器件DS18B20,能够在-55~125 ℃的范围内提供9~12 b分辨率的温度数据,具有0.5 ℃的精度,适合于一般场合的应用,其优点在于能够直接提供数字温度值,可以与后端MCU直接接口,省去了调理电路。而电阻测量采用串联分压法,即将待测电阻Rx与已知电阻串联后外加固定电压Vref,将Rx上的分压V作为待测信号,后端采集与处理系统只需测得V 就可以根据比例关系求出Rx.光强传感器则使用光敏电阻,具体电路如图2所示。  1.2 数据采集与通信  数据采集使用12 位ADC 器件TLC2543,该器件具有11位模拟输入端,可通过控制字灵活选择不同输入端口,适合于多传感器输入应用。器件控制字输入和转换数据输出都为串行模式,可以与51单片机以尽可能少的连线接口。51 单片机与上位机使用USB 接口通信。USB接口基于单一的总线接口来满足多种应用领域的需求,其具有的即插即用、支持热插拔、易于扩展等特性极大地方便了用户,已逐渐成为现代数据传输的主流。由于51 单片机自身不拥有USB 接口,所以需要外接USB 控制器。  本系统使用PL2303 来实现USB 和RS 232串行端口之间的转换。PL2303拥有2个独立的大型缓冲进行两种总线的连接。大型数据缓冲器用于USB的批量数据传输,而串行通信可使用自动握手模式,因而可以达到远大于标准UART 控制器的波特率。PL2303 支持USB电源管理和远程唤醒协议,当主机挂起时消耗极小的电能;芯片亦可以安装在电缆线中,用户只需将其连入主机USB 或USB HUB 上,就可以实现与单片机RS232串口的通信。单片机与TLC2543和PL2303的具体接口电路如图3所示。  2 实验程序设计  传统的开发USB 应用系统的步骤是:先用Win-dows DDK(设备驱动程序开发包)或第三方开发工具(如DriverStudio)开发USB驱动程序,然后用Visual C++编写DLL(动态连接库),最后再调用DLL来开发应用程序。显然,这对Windows编程不熟悉的人来说有一定的难度。VISA(Virtual Instrument Software Architecture)是NI公司开发的一种用来与各种仪器总线进行通信的高级应用编程接口。VISA是一个综合软件包,不受平台、总线和环境的限制,可用来对USB、GPIP、串口、VXI、PXI和以太网系统进行配置、编程和调试。LabVIEW通过调用VISA函数来实现USB设备的控制和通信。在这里主要使用了VISA Open,VISA Write,VISA Read,VI-SA Close这4个VISA 函数。与USB 设备的通信过程分为4个步骤:  (1)由VISA Open 函数打开VISA resource name 端口指定的USB设备;  (2)通过VISA Write函数向USB设备发送控制命令启动设备工作,USB设备接收到控制命令后开始采集数据并将采集到的数据按要求发送到数据缓冲区;  (3)通过VISA Read函数将数据读出;  (4)通过VISA Close 函数关闭设备。PC 主机与USB 设备进行通信的LabVIEW 程序框图如图4所示,而51单片机的程序结构如图5所示。  3 结语  虚拟仪器实验教学系统是虚拟仪器课程教学中不可或缺的设备,本文针对NI等主流数据采集板卡存在的价格昂贵且技术屏蔽问题,利用廉价的MCS51 单片机设计了包含常用传感器、数据采集模块与USB通信接口的LabVIEW实验教学系统。

    时间:2019-01-07 关键词: LabVIEW mcs51 实验教学系统

  • 基于LabView的恒流源电路设计

    基于LabView的恒流源电路设计

      该恒流源电路使用运算放大器以及三极管组成电压-电流转换电路。其中,OPA211的主要功能是实现高精度V/I转换,三极管的主要功能是实现功率放大。如图2所示。  图2 恒流源控制电路  在图2中,电阻Rf是反馈电阻,为运算放大器的输入电压,为流经灯丝负载的电流。根据运算放大器的特性,控制电压:,因而流经负载的电流与负载无关。由于MAX530单极输出0~2.048V,因而其输出分辨率为0.5mV,且Rf=1Ω,故本设计的理论精度可达0.5mA。

    时间:2019-01-01 关键词: LabVIEW 电源技术解析 恒流源电路设计

  • 使用LabVIEW和CompactRIO开发腿轮混合式移动机器人

    使用LabVIEW和CompactRIO开发腿轮混合式移动机器人

    项目背景腿部和车轮这两种方法在地面运动平台上被广泛采用。经过漫长的演变过程,大多数陆地动物的腿部都灵活有力,并能够快速顺畅地在不平坦的天然地形上奔驰。 在另一方面,人类发明了平地上专用的运动车轮,其出色的功率效率和在平地上高速的流畅运行是腿部运动无法比拟的。由此,来自国立台湾大学的仿生机器人实验室(BioRoLa)团队致力于设计一个腿轮混合式机器人,它结合了车轮和腿部的移动性,在平坦和恶劣环境下都能为室内室外行走提供一个移动平台。机械设计大多数混合动力平台上不同的轮子和腿都有不同的装置和激励器,相比这些平台,这款名为Quattroped的腿轮混合式移动机器人采用了一种转换机制,可将自身特定的一部分变形成为一个轮子或一条腿。 从几何角度来说,一个轮子通常有一个圆形轮圈,而旋转轴则位于轮圈中间。轮圈与地面接触,而旋转轴与机器人身体上的一点相连,此点就是“髋关节”。 在一般情况下,轮式移动时轮子在平地上运动并不断旋转,车轮与地面的接触点就位于髋关节下的一定距离处。相对而言,用腿移动时腿部以周期性方式运动,在髋关节和地面接触点之间没有特定的几何配置;因此腿部在运动中的相对位置具有周期性频繁变化的特点。基于这一观察发现,将髋关节移出圆形轮圈中心并将连续运动模式改为其他运动模式,即能达到轮模式向腿模式的转换。这激发了我们去设计一种能直接控制圆形轮圈和髋关节的相对位置的模式,从而它既能进行轮运动又能进行腿运动。由于圆形轮圈是一个二维的对象,实现这一目标的最直接的方法是再增加一个自由度(DOF),沿着运动方向调节髋关节相对圆形轮圈的位置。两个自由度的运动也互相形成直角。此外,无论是轮模式还是腿模式都能有效运行同一组的驱动功率。机电一体化我们采用NICompactRIO控制系统作为机器人控制器,它包括一个400MHz的实时处理器和3M现场可编程门阵列(FPGA)。 FPGA直接连接NI C系列I/O模块,这些模块能从载板传感器和激励器获得数据。对于模拟I/O我们采用NI 9205和NI 9264I/O模块,对于数字I/O采用NI 9401和NI 9403I/O模块。FPGA与实时处理器相连,并通过IEEE 802.11无线方式与电脑进行通讯。机器人传感器包括:马达和功率放大器上用于健康监测的温度传感器;用于电源管理的电压和电流测量传感器;用于腿轮配置校准的霍尔(Hall)效应传感器;用于身体状态测量的6轴惯性制导仪和2轴测斜仪;用于离地间隙测量的3个红外距离传感器。全球定位系统、视觉和激光测距仪等各种传感器也被用于提高机器人的感应能力。机器人上的激励器包含8个用于驱动的直流有刷电机,2个用于前腿车轮转动的高扭矩RC伺服电机,用于轮腿切换的四个小型RC伺服电机和四个小型直流有刷电机。软件三个运行LabVIEW的计算核心(PC,实时系统和FPGA)负责不同的任务。 用户操作PC,将高级指令(如机器人应该以轮模式还是腿模式运行)发送到NI CompactRIO控制器。控制器以1kHz的循环速率运行,将关于机器人健康的重要信息发送回来,并在PC上记录状态数据。 机器人软件架构包括各种状态机,每个状态代表一种机器人行为。其他需要高速信号交换的算法以10 kHz的循环率在FPGA上运行。 包括直流电动机、编码器读数以及基于PWM的RC伺服命令的比例-积分-微分(PID)控制。机器人通电后,我们进行电机校准,定义机器人每条腿轮上两个活跃自由度的完全几何配置。通过匹配安装在机器人身体上的霍尔效应传感器和安装在腿轮内部磁铁的相对位置实现校准。我们可以在腿模式或轮模式下操作经校准过的机器人,这取决于当前RIM配置(即为车轮或半圈腿模式)。 另外,我们也可以通过腿轮转换来改变腿轮配置。机器人轮模式下的行为包括站立、行驶和入座。 站立和入座为两个瞬态状态,用以过度最初地面配置和行驶行为。在行驶行为中,前进速度和转弯速率都连续可调。同样,当机器人在腿模式下运作时,站立和入座行为也属于瞬时状态。站立起来后的机器人可以执行各种行为,包括步行、小跑、跨步、跨越障碍和爬楼梯。NI软硬件的益处在一般情况下,机器人属于高自由度的复杂系统。机器人的成功发展需要花费时间和精力来妥善整合各种机械、电气和计算机系统。来自国立台湾大学BioRoLa团队,主要由拥有机械工程背景的学生组成,他们需要一个可靠、模块化、易于使用及良好集成的平台。经过广泛的研究,我们发现NI产品能为我们的应用程序提供最佳解决方案,原因如下: LabVIEW为非编程背景的学生提供了直观的图形化流程图表示方法,可以让他们轻松建立过程图并作为解决方案,然后再将过程图转化为软件。 能在Windows,RTOS和基于FPGA的目标上使用相同的图形化开发环境也极其有帮助。由于开发控制器软件时我们不必花时间学习底层的编程语法,因而能够花更多的时间专注于我们设计的机械部分。“对于移动机器人的开发来说,其大小,重量及性能都非常重要,因此坚固的模块化CompactRIO系统非常适合用于开发。 LabVIEW和NI硬件之间定义良好的兼容性显著地减少了开发者执行系统集成的时间和精力。”未来计划凭借NI LabVIEW图形化系统设计和NI CompactRIO,一支机械工程学生团队设计出了一个拥有优雅软件构造的复杂机电一体化系统,对于今后的进一步开发扩展也很方便。在硬件方面,我们正在将各种传感器融合到当前的机电化系统中,以提高机器人的感应能力。在动作方面,我们正在完善和开发具有闭环控制功能的腿部行为,以提高机器人在各种具有挑战性的地形上的移动能力,并开发其腿部动态步态。鸣谢作者诚挚感谢NI台湾对于他们在设备支持和技术咨询上的大力支持。 这项工作得到了97-2218-E-002-022和99-2218-E-002-012-合同下国家科学委员会(NSC)台湾以及98R0331合同下国立台湾大学的支持。图1. Quattroped - 腿轮混合式移动平台图2. Quattroped 控制平台结构图3. Quattroped控制FPGA程序框图

    时间:2018-12-17 关键词: LabVIEW 机器人 compactrio 嵌入式开发

  • 基于LabVIEW的通信仿真(图)

    Communication Simulation Based on LabVIEW 摘 要:采用LabVIEW软件对应用于无线信道中的4PSK的数字通信方式和主要通信过程的实际情况进行计算机模拟仿真。主要通信过程为抽样、量化、编码、调制解调、纠错编码等,并给出了几种调制解调的主要特性,为建立实际通信系统提供了基本的依据。关键词:移相键控(PSK);信噪比引言美国NI公司推出的LabVIEW语言是一种优秀的面向对象的图形化编程语言,使用图标代替文本代码创建应用程序,拥有大量与其他应用程序通信的VI库。LabVIEW作为目前国际上应用最广的数据采集和控制开发环境之一,在测试与测量、数据采集、仪器控制、数字信号分析、通信仿真等领域获得了广泛的应用。本文主要研究基于LabVIEW的通信仿真。 LabVIEW程序结构LabVIEW程序主要包括两部分:前面板(即人机界面)和方框图程序。前面板用于模拟真实仪器的面板操作,可设置输入数值、观察输出值以及实现图表、文本等显示。框图程序应用图形编程语言编写,相当于传统程序的源代码。其用于传送前面板输入的命令参数到仪器以执行相应的操作。LabVIEW的强大功能在于层次化结构,用户可以把创建的VI程序当作子程序调用,以创建更复杂的程序,而且,调用阶数可以是任意的。labVIEW编程方法与传统的程序设计方法不同,它拥有流程图程序设计语言的特点,摆脱了传统程序语言线性结构的束缚。labVIEW的执行顺序依方块图间数据的流向决定,而不像一般通用的编程语言逐行执行。在编写方块图程序时,只需从功能模块中选用不同的函数图标,然后再以线条相互连接,即可实现数据的传输。 仿真过程信号源产生的是模拟信号,必须首先对它进行数字处理。在仿真过程中,用100Hz的正弦信号作为信号源。按照一般语音通信的要求,这里采用8kHz速率对100Hz的正弦号进行抽样,得到的是间隔为125μs的离散抽样值。信号的幅度为归一化幅度,最小幅度为-1,最大幅度为1,再进行32级(4bit)PCM量化编码。再将每一个样值转化成4bit的二进制的PCM代码流,其速率为32kbps。对PCM编码的数据流进行汉明编码,得到的是56kbps的纠错编码后的数据流。随后进行调制,在发送端对码流进行4PSK数字编码调制,采用的载波是400kHz的正弦波,然后送上信道进行传输。信道是最常见的高斯加性白噪声信道,信号传输过程中受到高斯噪声的干扰。在接收端对接受到的码流进行数字解调、汉明码解码,最后PCM信号恢复所发送的信号。这里所使用的仿真环境为LabVIEW软件。下文中主要针对4PSK的仿真进行叙述。● 抽样、量化和编码在发送端,源(Source)子VI产生一个100Hz的正弦信号作为信号源,通过量化(Quantify)子VI对它进行抽样和量化。对信号源进行8kHz的抽样,抽样产生的离散抽样值归一化为绝对值小于等于1的数据流。量化器把-1~1的范围等分为32个小区间,每一个区间用0~31之间的一个整数表示,每个样值通过它被量化成32个值中的某一个值,再转化成元素为0、1的矢量,即C端输出的源信息流。这时输出的是长度为4的矢量,进入到编码(Coding)子VI。在信号传输的过程中,为了提高信号的传输效率,降低误码率,采用了纠错编码技术。这里采用的是(4,7)汉明纠错编码技术。对8kSPS的矢量信号中,每个矢量加入3bit的控制位,但所占的时间长度仍为原来4位矢量的时间长度。接着,将7位的矢量信号进行串行化,产生56kbps的0、1数据流输出到A端,如图1所示。 ● 调制、解调和信道传输从A端输出的二进制数据流在调制(Modulation)子VI中进行4PSK数字调制。4PSK是受0~3这4个数据调制的,这四个值是用连续两个二进制位表示的。这里进行的调制是基带调制,调制子VI输出的调制过后的基带信号。采用多个控件实现对调制的一些基本参数的设定,如字符速率、每个字符的采样数、波形形成滤波器的类型及参数。输出的基带信号通过上变频(upconverter)VI实现上变频,把基带信号搬移到400kHz的频率段。对应实际中的信号,就可以直接发射到信道上了。仿真过程中,采用的是一个简单的加性高斯白噪声信道模型。通过对信噪比(Eb/NO)控件的设置,实现对信道信噪比参数的选择。接受端收到一个被信道噪声损伤的信号,通过相逆过程实现解调功能。经过下变频(downconverter)VI程序下变频的基带信号进入到解调(Demodulation)子VI。在解调中进行相位检测,将4个不同的相位检测出来,映射成0~3的4个不同的量值,然后转换为2bit的二进制比特流从B端输出。所述实现了调制解调和高斯白噪声信道的传输,如图2所示。 ● 解码和信号恢复B端输出的二进制比特流进入到解码(Decode)子VI,其完成数据流的汉明码译码的功能。解码VI将比特流组成七维的矢量数组,经汉明距离的判断,再把七维矢量纠错转化为四维矢量,即D端输出的接受信息流,完成纠错译码的功能。四维的矢量数组由To Dw

    时间:2018-12-14 关键词: 通信 LabVIEW 总线与接口

  • LabVIEW的连线板

    若要将VI作为子VI被其他VI调用,需要创建连线板。连线板用于显示VI中所有输入控件和显示控件的线端,集合VI的各个接线端,与VI前面板中的控件相互呼应,类似于文本编程语言中调用函数时使用的参数列表。连线板标明了可以与该VI连接的输入和输出端,以便VI作为子VI调用。  图1图标→连线板  连线板在其输入端接收数据,然后通过前面板的输入控件传输至程序框图的代码中,并从前面板的显示控件中接收运算结果传输至输出端,因此连线板只能在前面板窗口中定义。  在前面板VI图标上单击鼠标右键,从弹出的快捷菜单中选择“显示连线板”,出现连线板,如图1所示。连线板的每个单元格代表一个接线端,使用各单元格分配输入和输出控件。默认的连线板模式为4×2×2×4。  在连线板图标上单击鼠标右键,弹出的快捷菜单如图2所示。此时,连线板的编辑选项(如添加/删除接线端,旋转等)都被激活。  在对连线板进行编辑时,可以先从LabVIEW提供的接线端预设模式中选择一种。LabVIEW提供了36种接线端预设模式,如图3所示,先从预设模式中选择最符合实际接线端的一种模式,如果还不符合要求,再通过“添加/或删除接线瑞”等操作来进行修改。  图1 连线板的右键快捷菜单  图2 接线端预设模式  连线板中最多可设置28个接线端,如果前面板上的控件超过28个,可将其中一些对象组全一个簇,然后将该簇分配至连线板上的一个接线端。但是在编辑子VI连线板时,一般尽量将一个子VI的接线端控制在16个以内,以免接线端太多影响子VI的可读性和可用性。

    时间:2018-11-29 关键词: LabVIEW 连线板

首页  上一页  1 2 3 4 5 6 7 8 9 10 下一页 尾页
发布文章

技术子站

更多

项目外包