原创 LabVIEW与通讯接口

2008-5-23 16:51 2496 5 6 分类: 测试测量

LabVIEW与通讯接口


现在有一个系统,其数据已经采集到一块单片机上并经过处理,想通过工业以太网用网线将单片机板子上的数据传到上位机上并进行界面组态,比如说分别显示温度,液位等等,现在就是单片机的它发送数据的形式是socket形式,将各个变量一起送入的是缓存区,试问单片机和我上位机应该怎么通讯(注意他那边只是单片机,提供端口)?然后怎样才能将比如温度,液位等分别从缓存中取出来并实时变化?
firstly, your device must have "rabbit" network connect confer, SCM writed a solid command ( program )for your device, example, a string,


As LV listens a IP port read its sending command, SCM read the command from LV sent, SCM would compare the 
receive string.


and take the action itself corresponding. and I suggest that LV is server, and your device is client. lease note SCM 
device's response time is not fast. LV should give much delay time for it. 


串口调试助手另外一个应用程序,可以监视串口接受倒地数据,通过它你可以知道串口的数据。
然后在lv中处理,这样做比较方便。



我用NI帮助菜单里的Find Example中的hardware Input and Output\serial\Basic 2Port Serial Write and Read.vi例子,通过RS-232口与我的仪器进行通讯,将read string的显示窗口属性改为16进制的显示方式就可以看到数字了,如EB90 5E3B 1E,D1—EB(同步字)、D2—90(同步字)、D3—显示值低字节、D4—显示值高字节(最高位为符号位)、D5—D1 xor D2 xor D3 xor D4(校验字节),我用截取字符及翻转位置的控件成功将D3、D4字节取出,如上边的EB90 5E3B 1E中的5E3B取出并转换位置3B5E,我将这16进制换算成十进制和仪器显示数据相同。现在我想将这字符串转换成十进制数字显示在NI面板上怎么实现


在Numeric/Conversion中有一些vi可以用
其次在Advanced/Data Manipulation中的Type cast 这个也可以用来做类型转换

affix.gif20065283315461.rar
我最近在做一个界面,从串口读取数据后,先放到缓存里面,我缓存用的是一个一微长200的簇数组,前100个满了后存到数据库,同时后100个缓存数据,满了后存到数据库,再使用前100个,不知这样设计是否合理,恳请大家指导  大家有没有更好的办法,能使数据库高效的运作
就是人为的做一个FIFO到一定长度处理或者存储,这可以实现
我在做相关测速的时候也用到这种方法
不过串口的话速度是要好好考虑的是否能符合你的要求
前面板刷新间隔太大也不好
我觉得使用 队列 来实现缓存的功能应该更合适一些
polling是对某一对象,对某种条件进行查询
在event结构出现以前,常用于对前面板操作的监视
对于这里来说,就是每加入一个数组成员就检测一次数组大小,是否满足存储条件
用队列确实可以达到不用软件查询,直接用队列大小信息查询,节省了系统占用的时间
首先创建一个队列,在一段写,在另一端读,查询整个队列信息如果到一定数值
全部读出,可以作为两个线程。实现起来要考虑一下,你觉得适合就可以了
you can use Queue from Advanced >> Synchronization >> Queue Operations.
There are some examples come with LV. It is quite easy to use. 
PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户1626707 2009-7-5 22:24

你好,我拜读了你的LV日志 对我帮助挺大的 其中你所说的“我用截取字符及翻转位置的控件成功将D3、D4字节取出”,正是我目前调试串口时,没有弄很明白的一个问题! 请问你,能否提供给我一个例程让我学习一下呢? 我的邮箱是sssskyo.o@163.com 不胜感激!!
相关推荐阅读
用户78714 2008-05-23 16:53
LabVIEW数据实时显示与存储
LabVIEW数据实时显示与存储      曾见到有朋友找数据实时显示与存储的资料,在此我贴一些关于自己所作项目的内容。由于某些原因,不能够将程序完整贴出,只给出了主VI关键部分的框图,sub vi ...
用户78714 2008-05-23 16:48
全球通用测试测量市场趋势分析
根据测试测量世界(www.tmworld.com )与Frost & Sullivan的联合调查,全球通用仪器市场的大部分份额仍然由示波器、频谱分析仪、信号发生器、万用表四种仪器把持。如图(1...
用户78714 2008-05-23 16:44
我的学习LV的经验介绍!
我的学习LV的经验介绍!大家好,初学者版刚成立,我首先介绍一下我初学的时候的经历和一些经验,希望对大家有所帮助!首先可以到我们网站上下载三本书,我看到有三本比较好的书网站http://www.cpub...
用户78714 2008-05-23 16:44
基于LabVIEW8.2的数据采集程序
基于LabVIEW8.2的数据采集程序(毕设受气请教大家)大家好,我是一个LabVIEW8.2的初学者,我的学习不好,前几天刚刚忙完两门专业课最后一次机会的考试,还弄不到LabVIEW方面的资料。学校...
用户78714 2008-05-09 17:14
数模混合模拟IC学习建议
下面是我关于数模混合IC学习的一点体会,不对之处,欢迎大家指正!一.        SCF(Switch Capacitor Filter)1.先看信号与系统,建议奥本海姆的。主要对抽样数据系统的概念...
我要评论
1
5
关闭 站长推荐上一条 /3 下一条