发 帖  
原厂入驻New
申请华秋企业认证 多层板首单免费打样!
30s提交资料,10分钟通过审核(免费赔付+顺丰包邮)>>立即报名
[讨论] 【高手问答】徐工解答:LabVIEW编程技巧及MySQL数据库连接设计
2019-12-11 13:58:35  11828 labview mysql FPGA 传感器
分享
编者导读:
本期我们邀请了labview徐工@蜗牛的大衣 ,来解答大家在labview设计上遇到的问题,活动时间是12月11日—12月30日。

高手简 介:
徐工,软件开发工程师,从事汽车传感器测试测量工作,利用LabVIEW开发上位机测量软件,在数据采集FPGA测量,以及MySQL数据库方面有一定积累,长时间专注于产线非标测试设备开发,对传感器测试和软件的开发有一定经验。

熟练使用LabVIEW和MySQL,主要做过汽车发动机、变速箱上的传感器的项目。相关问答回答截图如下:
1.png
若有相关
LabVIEW的编程技巧以及和MySQL数据库的连接设计问题,你都可以在本帖下面,跟帖+并@蜗牛的大衣
说不定你的问题在下个楼层或是下一页的楼层会有一个指引方向给你,或者是问题被解决了。
Elecfans高手问答,根据主题回帖提问,解答你的疑惑。



社区高手招募
不限专业领域、不限技术方向,只要你是一个有活力并乐于分享的开发者,只要你愿意把自己的经验收获分享给大家,帮助众多从业者共同学习、共同进步,我们就欢迎你来做客社区高手问答。

联系方式:liuyong@elecfans.com快来联系编者吧!


往期回顾



9
2019-12-11 13:58:35   2 评论 分享淘帖
2 条评论
36 个讨论
本帖最后由 蜗牛的大衣 于 2019-12-11 14:37 编辑

欢迎徐工@蜗牛的大衣



请问labview中怎么将一维数组用多列列表框进行显示,求程序框图。
利用多列列表框的属性节点中的ItemNames属性,注意输入是二维数组
1.PNG





2019-12-11 14:15:36 评论

举报

本帖最后由 蜗牛的大衣 于 2019-12-11 15:13 编辑

我用表格控件显示采集数据的次数和数据值,怎么设置表格只显示四舍五入的两位小数,前面采集的次数无小数,怎样使数据居中显示于表格中,怎么使滚动条随数据的增加滚动条跟着下移。问题较多,求帮下忙,谢谢了!


一个一个来:
数据居中显示:
2.PNG



2019-12-11 14:18:00 评论

举报

申请labview程序的软件著作权,怎么将程序转化成源代码呀 ,有没有申请过的大神教教我这个萌新呀
2019-12-11 14:22:28 2 评论

举报

2 条评论
请问一台主机,同时接收100个扫描设备的信息,怎么搭建软件架构

最近遇到的情况:
(1)有100个带有网口的扫描设备,各个独立,实时扫描产品信息;
(2)扫描设备更新的速率大约为500ms;
(3)一台主机,需要把这些扫描到的信息存储起来。

问题
(1)labview 可以同时打开多少个TCP/IP连接,
(2)有没有好点的程序架构。
2019-12-11 14:30:56 2 评论

举报

2 条评论
  • 蜗牛的大衣 2019-12-11 16:19

    这么多个我没有试过,不过看IP设置,100个应该够
    1.你这个单位时间内的数据量是很大的,如果长时间扫描数据,建议保存至数据库,否则你会出现和我一样的情况,保存为常规的windows系统下的文件(txt,tdms,excel等等),都会出现最后数据太大,打不开文件的情况
    2.程序框架:生产者-消费者框架,可以参见labview文件-新建-模板,这是基于队列的,相当于一个消费者扫描一个设备,像你这么多的,第一次遇到,你可以在这个模板的基础上添加多个队列实现

    ximu6174 回复 蜗牛的大衣: 2020-1-16 11:18

    请问如何保证消费者的数据处理速度大于生产者产生数据的速度,队列长度一般设多大合适?

关于labview生成安装程序的问题,提示本次安装需要windows 7 service pack 1或更高版本

问题:在windows7 上使用32位的labview2015生成installer安装程序,拿到装XP系统的电脑上安装时出现如图1所示的问题,按道理我在生成安装程序时是使用的如图2所示的设置,不应该出现这样的问题。PS:这个问题是刚遇到的,我以前一直这样做,都是能运行的,不知道这次是怎么一回事


2.png 1.png

2019-12-11 14:34:39 评论

举报

采集的数据曲线波动很大,怎么进行滤波处理后,曲线看起来比较光顺
通过编码器采集到电机的转速,计算出运动件速度,不知道什么原因速度波动有点大,怎么滤波都不行,Y轴是处理后的速度,采集频率时0.01S,X轴是计算的运行距离,详细见下图:
194841otuwnqw2v7fdboaj.png.thumb.png 194840g6duattl894lcu9t.png.thumb.png
LA.rar (41.94 KB, 下载次数: 13)
2019-12-11 14:41:57 1 评论

举报

1 条评论
  • 蜗牛的大衣 2019-12-11 20:48

    附件是你采集后的数据,我需要知道你是怎么采集的
    1.用的是什么采集硬件?编码器接的是什么端口?
    2.采集软件用的是什么VI?做了什么处理?
    建议先从硬件着手,点击运转时,将信号接入示波器,看一下实际采集的信号是什么样的,编码器一般是0~5V方波信号,随着电机不同速度,频率也不一样,如果示波器信号干扰就很大,你需要做一些硬件上的屏蔽处理

编写程序,实现对采集数据的自动归类存盘。采集数据可以使用多个随机数据源模拟(模拟两个通道),将采集的数据进行实时显示,并将曲线进行分格显示。来自不同通道的数据自动存放于不同的文件夹下,每通道采集100个点即进行一次存盘,存储为一个以存盘日期和时间为文件名的文本文件。
新手没有什么头绪,徐工可以提供一些思路吗,谢谢
2019-12-11 14:44:19 1 评论

举报

1 条评论
  • 蜗牛的大衣 2019-12-11 16:01

    你这个需要多了解一下LabVIEW的基础:
    1.数据源模拟:使用labview数值中的随机数
    2.曲线分割显示:波形图标右键属性中的-分格显示曲线
    3.每通道采集100点进行一次存盘:如果数据用数组,当数组达到100个点,就存一次
    4.不同通道数据自动保存不同文件夹下:需要设定保存文件的路径,其中路径以你的系统时间命名(这些函数在文件IO中)

本帖最后由 蜗牛的大衣 于 2019-12-11 15:06 编辑

请问徐工如何用labview与第三方蓝牙设备联通
你好,
我平常工作中没有用到蓝牙设备,不过你可以查看一下labview自带的蓝牙范例程序
labview\examples\Data Communication\Protocols\Bluetooth\Simple Bluetooth中的Simple Bluetooth.lvproj
蓝牙函数位于程序面板-数据通信-协议-蓝牙
2019-12-11 14:44:39 评论

举报



请问labview中怎么将一维数组用多列列表框进行显示,求程序框图。
请见如下框图,利用多列列表框的属性节点中的ItemNames属性,注意输入是二维字符串数组
如果你是数值,需要进行转换
1.PNG

2019-12-11 14:47:01 评论

举报

请教一下徐工,卡尔曼滤波在labview上如何实现?
2019-12-11 14:49:05 1 评论

举报

1 条评论
  • 蜗牛的大衣 2019-12-11 15:19

    不好意思,卡尔曼滤波没有用过,不过可以参考我们论坛如下帖子,有回复
    http://bbs.elecfans.com/jishu_298381_1_1.html

Labview测量数据变化的时间间隔。如图,电流值显示的是接收到的数据,其值随时间变化,如何测量每一次变化的时间间隔?


1.png
2019-12-11 14:50:52 1 评论

举报

1 条评论
  • 蜗牛的大衣 2019-12-11 15:23

    因为你这个电流值是一个DBL数值,是不包含时间信息的,不像波形数据包含时间信息的,如果你是连续采集,需要确定你这个程序放在while循环中的循环间隔时间,这个时间,就是你获取数据的时间间隔

请问徐工,LabVIEW可否作为控制系统开发工具
2019-12-11 14:52:06 1 评论

举报

1 条评论
labview生成安装文件时报计算机上找不到已选定的安装程序“NI mx LabVIEW Control Installer”
应该就是NI-DAQmx的原因,如果附加安装程序里不选择NI-DAQmx运行引擎就不会报这个错误,换了好几个版本的NI-DAQmx都不行,请问一下是什么原因呢?
130218bhovhvzrvvx7000h.png.thumb.png
2019-12-11 14:53:34 1 评论

举报

1 条评论
  • 蜗牛的大衣 2019-12-11 15:47

    你这种问题,我还真没有碰到过,以下链接是NI官方回复
    https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z000000g0l1SAA&l=zh-CN
    大致意思是:需要使用离线安装工具安装对应的DAQmx,而不是在线安装

本帖最后由 蜗牛的大衣 于 2019-12-11 15:34 编辑

Labview 读取串口数据时电脑蓝屏或死机

  在labview中,通过串口连续读一台仪器的测量数据,数据为37字节,连续发送。读取程序如图所示,读出的数据正确无误,但在运行几分钟后总会导致电脑蓝屏或死机(在2台台式机上试过,WinXP,Labview2009),加不加“VISA设置缓冲区大小”,都一样;在循环内加“VISA清空缓冲区”死得更快;在循环内的“VISA读取”前后试加过“VISA打开”、“VISA关闭”,也不行。但在笔记本电脑(Win10,Labview2018)上运行正常,不会死机。请各位指点一下,是什么原因?如何解决?谢谢!


1.png
建议加个读取字节判断
1.PNG
另外,附件是另外一个大神写的专门关于串口通信的详细流程,希望会对你有所帮助

小草手把手教你LabVIEW仪器控制.pdf

下载积分: 积分 -1 分

4.34 MB, 下载次数: 23, 下载积分: 积分 -1 分

2019-12-11 14:55:45 评论

举报

请问徐工,如何实现LabVIEW双通道输出?程序如图,在测试采集卡输出时,只有一个口有电压输出,如何实现双通道信号输出。
1.png
2019-12-11 15:02:23 评论

举报

@sszx2007 @RedJ 李工、杨工,也可以来交流
2019-12-11 15:04:57 评论

举报

请问labview怎么调用halcon的库函数
1.png
2019-12-11 15:22:32 1 评论

举报

1 条评论
本帖最后由 蜗牛的大衣 于 2019-12-11 21:36 编辑

徐工,请教一下,我需要将采集的数据写入MySQL,使用自带的DATABASE函数写入时一直报错,且数据写不进去,查资料后使用了国外大神的labSQL通过ODBC写入的。主要是自带的DATABASE写入如ACCESS,在ODBC可以不建立连接,拿到客户的新电脑上可以直接运行。
问题1、除了LabSQL还要其它方式实现吗?

问题2、MySQL可以不通过ODBC建立连接吗?

这两个问题我和着一起回答:MySQL通过ODBC数据源进行连接,通过LabVIEW自带的DB函数即可实现数据库的操作。
实际步骤:
准备工作:在你装的32bit或者64bit的ODBC中创建数据源名称,否则你在打开连接时,会提示未发现数据源名称
1.PNG
2.PNG
注意数据源名称:123和Database:test会在后面的程序中用到,然后按照如下步骤创建程序:
1.打开连接
2.创建表格
3.插入数据
4.关闭连接
程序框图如下:
3.PNG
前面板控件
5.PNG
MySQL中的显示:
4.PNG





LabSQL方式

LabSQL方式
2019-12-11 16:25:02 1 评论

举报

1 条评论
  • 蜗牛的大衣 2019-12-11 22:49

    不过还是要提醒一下:
    通过DB中的低级别函数,不通过SQL语句,你会发现你只能在ODBC中选择的数据库下创建表格,其他数据库下是创建不了的;若想在其他数据库下创建表格,需要用到DB函数库中的高级函数和SQL语句,才能在指定数据库中创建指定的表格,即步骤为:
    1.打开连接
    2.创建数据库
    3.选择数据库
    4.创建表格
    5.插入数据
    6.关闭连接
    这样才是一个完整的创建表格的步骤

回复上一楼mysql的问题,在指定数据库创建表格并插入数据
7.PNG

2019-12-11 22:52:40 评论

举报

撰写讨论

你正在撰写讨论

如果你是对讨论或其他讨论精选点评或询问,请使用“评论”功能。

高级模式
您需要登录后才可以回帖 登录 | 注册

12下一页
发讨论
关闭

站长推荐 上一条 /6 下一条

快速回复 返回顶部 返回列表