如何在LabVIEW中阅读Adafruit INA 219?如何使用LabVIEW从Arduino获取串行数据?

如何在LabVIEW中阅读Adafruit INA 219?如何使用LabVIEW从Arduino获取串行数据?,arduino,labview,adafruit,Arduino,Labview,Adafruit,我试着用Arduino读取Adafruit INA 219传感器的电压和电流,得到了正确的结果。问题是我需要分析结果,我需要在LabVIEW中读取传感器的值,或者将结果从Arduino发送到LabVIEW Arduino代码: #include <Wire.h> #include <Adafruit_INA219.h> Adafruit_INA219 ina219; void setup(void) { Serial.begin(115200); whil

我试着用Arduino读取Adafruit INA 219传感器的电压和电流,得到了正确的结果。问题是我需要分析结果,我需要在LabVIEW中读取传感器的值,或者将结果从Arduino发送到LabVIEW

Arduino代码:

#include <Wire.h>
#include <Adafruit_INA219.h>

Adafruit_INA219 ina219;


void setup(void) 
{
  Serial.begin(115200);
  while (!Serial) {
      // will pause Zero, Leonardo, etc until serial console opens
      delay(1);
  }

  uint32_t currentFrequency;

  Serial.println("Hello!");

  // Initialize the INA219.
  // By default the initialization will use the largest range (32V, 2A).  However
  // you can call a setCalibration function to change this range (see comments).
  ina219.begin();
  // To use a slightly lower 32V, 1A range (higher precision on amps):
  //ina219.setCalibration_32V_1A();
  // Or to use a lower 16V, 400mA range (higher precision on volts and amps):
  //ina219.setCalibration_16V_400mA();

  Serial.println("Measuring voltage and current with INA219 ...");
}

void loop(void) 
{
  float shuntvoltage = 0;
  float busvoltage = 0;
  float current_mA = 0;
  float loadvoltage = 0;

  shuntvoltage = ina219.getShuntVoltage_mV();
  busvoltage = ina219.getBusVoltage_V();
  current_mA = ina219.getCurrent_mA();
  loadvoltage = busvoltage + (shuntvoltage / 1000);

  Serial.print("Bus Voltage:   "); Serial.print(busvoltage); Serial.println(" V");
  //Serial.print("Shunt Voltage: "); Serial.print(shuntvoltage); Serial.println(" mV");
  Serial.print("Load Voltage:  "); Serial.print(loadvoltage); Serial.println(" V");
  Serial.print("Current:       "); Serial.print(current_mA); Serial.println(" mA");
  Serial.println("");

  delay(500);
}
#包括

#包含当前Arduino正在读取您的值,并将其作为字符串发送到串行端口

如果您想使用该格式与LabVIEW通信,则不需要使用LINX工具包-您只需通过VISA节点使用串行端口即可

然后,您需要将字符串转换为数值,以便能够使用它们做一些“有用”的事情。你可以试着用或之类的东西

像这样的东西可能就是你想要的:


顺便说一句,虽然我一般喜欢StackOverflow,但是对于与LabVIEW相关的问题,您可能会在forums.ni.com上得到更快的响应(并且不太可能因为与讨论相关或重复而关闭)。

我修改了您的代码,并使用了“从字符串扫描”,效果非常好。非常感谢。