csxcs366的博客--LABVIEW CVI

博客列表

LV宝典与实用工具详解资源下载地址
发表于:2014-12-06 15:28:38 | 分类:labview编程技巧
浏览( ) | 评论( )

 近期有网友反映找不到资源下载地址,请查看下面网址。  http://mit.dozan.cn/labview 

新书《LABVIEW实用工具详解》
发表于:2014-09-29 06:12:39 | 分类:labview编程技巧
浏览( ) | 评论( )

 历经2年多的时间的精心写作,笔者新书《LABVIEW实用工具详解》一书已经出版发行,敬请有兴趣的朋友关注。    

网友问答之如何去除快速表格的重复时间
发表于:2013-07-21 18:04:25 | 分类:网友问答
浏览( ) | 评论( )

 问题:当创建表格快速VI设置为“包含时间“时,时间列会重复显示,如何设置为只显示一列时间? 解答:该问题近期已经有多位读者询问过,仔细查看了创建表格快速VI的属性,没有找到直接解决问题的方法。所有的快速都可以转换为普通VI,通过跟踪创建表格快速VI的具体实现,找到了解决问题的方法,但是不知道是否还有更简洁的方法,如果有的话,望读者能够留言分享。创建表格快速VI内部调用了下面的核心子VI。当include time data输入端子为真时,循环中,对于每一个波形数据都会写入时间信息,所以会出现多列重复时间的问题。找到问题所在,处理是非常简单的问题,只要在首次循环,也就是处理波形数组中第一个波形时,写入时间,其它循环时,禁止写入即可。注意一定要把上面的VI另存,并且选择“未打开的副本”,否则会导致创建快速表格VI本身发生变化。注意上图中,我们只允许I=0(首次循环)时写入时间,其它循环时不写入。用修改另存后的VI替换掉原来的VI,运行的效果如下图所示:问题得到解决。

LABVIEW深入探索之MDB数据库写入速度问题。
发表于:2012-12-22 00:57:07 | 分类:LABVIEW的深入探索
浏览( ) | 评论( )

近日在LABVIEW的群中,看到几次讨论利用队列把采集的数据写入到数据库的问题,讨论非常热烈,但是他们忽略了一个重要的问题,就是数据库的最大写入速度的问题。一旦你每秒采样数超过一定限度时,无论你采用何种编程方式,如何优化你的程序,在超过一定限度后,都是不可能实现的,在这种情况下,讨论如何解决就毫无意义了。队列主要有三方面的用途,并行、解除耦合和解决忙先不均。在高速采集时,队列只是起到了并行的作用。由于采集的速度远大于数据库的写入速度,这种情况下,使用数据库本身就是一个错误的选择,是不可能实现的。下面我利用LABVIEW本身的数据库例程,稍微改动一下,测试数据库的写入速度。LABVIEW数据工具包提供三种不同的写入数据方式。1、自动方式。利用“插入数据”VI。2、利用SQL查询方式。3、利用SQL参数化查询。   这三种方式中,SQL查询方式速度明显是最快的。SQL参数化查询和自动方式非常接近,SQL参数化查询比自动化方式略快一些。在我的计算机中,写入10000条记录,SQL查询方式约为20秒,其它方式约为30秒。也就是说使用MDB数据库,每秒最快写入约50

幽默的LABVIEW编程之自定义格式化时间
发表于:2012-07-06 17:24:19 | 分类:幽默的labview编程
浏览( ) | 评论( )

这是今天在LV群里看到的问题,他的目的是显示XX年XX月XX日XX时XX分....下面是他的程序框图 他觉得这样做非常复杂,因此想找个更好的方法。 显然他没有正确理解格式化字符串的用法,格式化字符串类似于C语言中的printf函数,格式化字符串里是可以包括字符串常量的。下面是正确的用法,如图所示:

无题
发表于:2012-06-05 05:04:47 | 分类:黑色幽默
浏览( ) | 评论( )

今天起的很早,因为昨夜无法入眠。早晨窗外仍然细雨连绵,不知何时能够停下,昨天已经下了一整天了,如泣如诉,时断时续,似乎在讲诉一个逝去的悲情故事。对无数股民来说,昨天的心情必然如同昨天的天气一样,压抑悲愤,上证指数大跌64.89点,大跌早已麻木,但是64.89必然是永远无法忘记的,因为这两个数字如同鱼刺,一直卡在我们的喉咙里,始终无法拔去。 很久没有更新BLOG了,但是今天,无论如何要写点什么。 

LV Nugget之如何计算两个日期经过的天数(小时数、秒数)
发表于:2011-10-16 08:40:52 | 分类:LV Nugget
浏览( ) | 评论( )

 我们经常会遇到给定两个日期,计算两个日期所经历过的天数、小时数、秒数等等,通常给定的日期的格式为字符串,比如某年、某月、某日等等。如果按照通常的思维方式考虑这个问题,将会非常复杂,因为年份涉及到闰年的问题,月份涉及到闰月的问题。如果我们非常了解LABVIEW的时间概念,这个问题非常容易解决了。在LABVIEW中所有的时间日期都可以转换为秒数,这个秒数相对于某个标准的0点(即0秒所代表的时间)。对于两个具体日期时间的差值,实际上就是相对于这个0点的秒数的差值,因此计算日期差值时根本不需要考虑闰年、闰月的问题。参见下面的程序框图。因为LABVIEW的TIMESTAP是LABVIEW专门用于表示时间的控件,因此不需要使用字符串等其它数据格式。86400=60*60*24(1天=86400秒)

网友问答之如何控制电机按照CAD图纸行走
发表于:2011-10-04 22:16:41 | 分类:网友问答
浏览( ) | 评论( )

 这是在VIHOME中看到的问题,不知道什么原因VIHOME无法登录了,无法发帖了。有人建议利用VISIO扫描图纸后生成坐标,这种方法存在两个明显的问题:1、需要相应的硬件和软件支持。2、丧失精度,很难满足加工需要。我最初学习编程就是从AUTOCAD内嵌的LISP语言开始的,因此比较熟悉CAD。记得早期CAD提供了数据交换文件DXF,当然新版本的AUTOCAD可能会有更好的交换方式。DXF文件可以是ASCII文本文件或者是二进制格式文件,包含了DWG文件的所有信息,因此解析DXF文件后就可以获取图形所有的坐标信息。获取坐标信息后就可以利用LABVIEW通过运动卡控制电机运行的轨迹了。 

LABVIEW深入探索之性能与内存管理
发表于:2011-09-19 07:55:05 | 分类:LABVIEW的深入探索
浏览( ) | 评论( )

几个月前,LABVIEW7I老师(高巍)向我推荐了一份PPT,其中主要讨论了性能与内存管理的问题,这是NI公司内部团队写的,因此非常珍贵。LABVIEW对用户屏蔽了内存使用的细节,作为用户很难了解内存是如何使用的以及如何提高程序的运行性能。这份PPT是难得一见的性能与内存管理方面的资料,所以高老师希望我能翻译其中重要的部分,介绍给大家。对于英文资料,在翻译的同时,不可避免地会参杂一些个人的理解,如果对其中的内容有歧义,欢迎大家留言讨论。性能与内存管理目标: 理解LABVIEW执行系统 学习如果通过减少数据拷贝以及减少总的内存使用来改进性能 了解VI的执行特性 LABVIEW执行系统 执行系统是LABVIEW重要的组成部分,负责实际运行我们的代码。 启动自动并行机制 对于LABVIEW来说非常特殊---其它编程语言需要人工进行线程管理。LABVIEW执行系统可以使我们的代码自动并行运行。在其它编程语言中,必须通过人工方式进行多线程管理,但是LABVIEW在可能的情况下,编译器和执行系统共同写作,自动并行运行我们的代码。在大多数情况下,执行系统对我们来说并不是很重要,

LV Nugget之妙用连接字符串函数
发表于:2011-09-11 10:22:23 | 分类:LV Nugget
浏览( ) | 评论( )

连接字符串函数是最常用的字符串操作函数之一,其最常规的应用方法是把各个独立的字符串连接成一个字符串,如下图所示。实际上连接字符串函数支持数组操作,它可以连接多个字符串数组或者字符串数组和字符串混合连接,如下图所示。连接字符串函数默认是两个输入端子,向下拖动可以增加输入端子。可能很多朋友没注意到,连接字符串函数可以只有一个输入端子,并且这个输入端子支持字符串数组,这就是我这次介绍给大家的NUGGET,见下图: