labview java_基于Arduino+LabVIEW的多路数据采集系统

本文介绍了一个利用Arduino Leonardo作为下位机,LabVIEW作为上位机的多路数据采集系统。下位机通过串口接收上位机命令,采集模拟量和数字量数据,然后回传至上位机。上位机使用LabVIEW进行串口通信,读取并显示数据。该系统适用于传感器数据采集,具有一定的扩展性。
摘要由CSDN通过智能技术生成

【注】一般认为上位机为主机,下位机为从机,上位机领导下位机按照上位机的意愿为上位机服务;同时下位机也可以主动向上位机发出请求,上位机响应下位机并配合完成某个请求。

数据采集,是指从传感器和其它待测设备等模拟和数字被测单元中自动采集信息的过程。相应能够完成数据采集的系统被称为数据采集系统。

数据采集系统的任务,就是采集传感器输出的模拟信号转换成计算机能识别的信号,并送入计算机,然后将计算得到的数据进行显示或打印,以便实现对某些物理量的监测,其中一些数据还将被生产过程中的计算机控制系统用来控制某些物理量。 【文献1】

一、Arduino下位机部分

数据采集系统中的Arduino下位机部分采用Arduino Leonardo实验板,如图1所示。

70baf1f5dd7c7e3196bdfb1eaff8f883.png

图1 Arduino Leonardo控制板

Arduino下位机部分需要完成两个功能:数据采集和数据传输,Arduino Leonardo控制板通过串口接受上位机命令,完成相应的数据采集,并将数据回传至上位机。

数据采集分为模拟量采集和数字量采集,设置采集路数各为2路,分别采用Arduino UNO上具有模拟量输入的管脚A0、A1和具有数字量输入的管脚2、3来实现。模拟量采用接至GND、3.3V和5V来实现不同电压值,数字量采用接至5V和GND实现高电平与低电平。【注】

【注】如果有电位器,可以用来测量分压值。由于手头没有电位器,我这里只是简单的实现。

Arduino Leonardo代码清单:

1

#define A0_COMMAND  0x10   //A0采集命令字

2

#define A1_COMMAND  0x11   //A1采集命令字

3

#define D0_COMMAND  0x20   //D0采集命令字

4

#define D1_COMMAND  0x21   //D1采集命令字

1

byte comdata[3]={0};//定义数组数据,存放串口接收数据

1

int LED = 13;//定义LED连接的管脚

1

int A0_mar

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值