003用LabVIEW和Arduino开发一个温度采集系统

来源:互联网 发布:台湾进口知乎 编辑:程序博客网 时间:2024/04/28 14:48

1背景

其实满打满算,今天是自己接触LabVIEW的第四天,只是是由于国庆节之前报名参加了一个比赛,国庆节期间又没有引起足够的重视,所以当比赛只剩下四天的时候才开始研究LabVIEW。虽然赶在截止时间几个钟头前完成了预期任务,虽然加班加点、废寝忘食的状态甚是酸爽,但是不得不承认在这么短的时间内以一己之力(虽然是三人组对报名)完成这么一个任务还是太消耗精力了。四天过来,损失的是睡眠和学习的效率以及落下一堆作业,但是看到自己经过四天高强度的学习能拿出一个东西还是万分欣慰,几度觉得自己要完蛋了,但是终究还是坚持下来了,尤其是周三,貌似除了晚上去上了个选修课就一直在学,终于在最后一天升华了,不容易啊。很多时候,打败你的不是困难,而是你的懒惰和随着年龄增长日趋销蚀的耐性啊!

2介绍

1、LabVIEW:LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。 LabVIEW软件是NI设计平台的核心,也是开发测量或控制系统的理想选择。 LabVIEW开发环境集成了工程师和科学家快速构建各种应用所需的所有工具,旨在帮助工程师和科学家解决问题、提高生产力和不断创新。
2、Arduino:Arduino是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。由一个欧洲开发团队最早于2005年冬季开发。

3功能预期

1实时显示温度;
2显示温度在一定时期内的变化;
3用户能设置一些相关参数;
4报警功能;
5将历史温度存储到excel表格中;

4开发流程

1更具要求的功能设计前面板(具体如何提高美观程度可自行探索),这是我设计的前面板:

可能对新手难一点的是设置控件透明和加入图片。
值得一提的是设计LabVIEW时,一般先根据要达到的功能把前面板上的控件选择好,然后再进行程序框图的设计(关于LabVIEW前面板和程序框图的实用知识可以网上学习,推荐谷歌搜索)。
前面板设计好后不要急于美化,因为编程序框图时可能会有改动。
现在还只是有了个外壳,想要让它投入使用还要对程序图进行编程。编程用到的主要是VISA和LIFA,这两个工具都要自己用VIPM配置,具体如何配置也可以找到大量教程。编好后大概如下图



画完程序框图还是不能投入使用!!因为我们只是编好了上位机,下位机的问题还没有解决。一般情况下下位机要自己根据需要自己用C语言编写,但这里NI已经帮我们全部编好了,我们要做的就是把它烧录到Arduino开发板中,这个LIFA_Base.ino文件在路径....LabVIEW 2014\vi.lib\LabVIEW Interface for Arduino\Firmware\LIFA_Base中,烧录进Arduino就可以了。
至此,这个温度采集系统的上位机和下位机已经全部写好了。我用的是LM35 DZ这个温度传感器,用什么常感器其实不重要,只要阅读技术手册就可以以不变应万变了。
最后看看采集的温度excel表格。


5总结

1科学的使用搜索引擎,否则你会得到一大堆无用的信息(比如YouTube能直接收到相关视频);
2不要熬夜,早做准备,曾经熬得夜都是今后受的罪(我这两天就高烧不止、浑身酸痛);
3擅长阅读软件自带的帮助文档,逐渐习惯在相关社区提问,不要在大量冗杂信息中迷失了;
4自己的硬件知识学的确实不过关,这个采集系统还要依靠“调节电阻”来修正,默认电阻是10k欧姆,但是这个系统设置为1000欧姆左右就行了,对LM35的特性能够理解,但具体到开发板中就凌乱了。而且自己今天已经决定退出基地,因为自己下午去“互联网+”工作室,发现自己还是跟喜欢那些东西,也想学硬件,奈何时间和精力都不允许,而且模电和电路分析也还学的模模糊糊,还是应该重视学习。这次比大一顺利多了,用了一个多月已经确定了自己喜欢的方向,一年之后,期待成为web方面的大神,当然退出基地也让自己有更多的自由支配时间,可以做自己喜欢的事,期待明天感冒能好,期待大二的成长。(2015-10-17)

0 0
原创粉丝点击