Arduino HX711和cc2541蓝牙模块的测量不正确

时间:2019-01-29 17:36:28

标签: arduino bluetooth-lowenergy

我正在使用具有HX711秤模块和cc2541蓝牙模块(Bluetooth 4.0)的Arduino Nano将数据发送到Android设备。

#define RX 11
#define TX 10

#include "HX711.h"

HX711 scale(A1, A0);

float scale_calibration = -13.5;
float mass,massround;
float units;

int out;

#include <SoftwareSerial.h>
SoftwareSerial bluetooth(TX, RX);

void setup()
{
  bluetooth.begin(9600);

  scale.set_scale();
  scale.tare();
  scale.set_scale(scale_calibration);
}

void loop()
{

  for(int i = 0;i < 10; i ++) units =+ scale.get_units(), 1;

  units / 10;
  mass = units * 0.035274; 
  massround=mass;
  out = round(massround);
  out = abs(out);

  if(out<0)
  {
    out=0;
    scale.tare();
  }
  bluetooth.println(out);

}

如果我使用连接到PC的USB运行Arduino,则电子秤可以完美工作并通过蓝牙给出正确的结果。但是,当我使用电池(未连接到PC)运行Arduino时,我得到0到3克的重量,而秤上没有任何东西。因此,所有测量均不正确。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

当您的Arduino由USB供电时,它和HX711的VCC和VDD可能都在+5伏特,因此“参考”电压(VDD)为5伏特。 用完电池时,硬件会接收约3伏特的电压,如果HX711上的VCC和VDD一起短路,它可能会“正常工作”,但会产生虚假的结果。

在arduino和称重传感器上可能都有跨接器或桥接器来设置VCC和VDD。警告!我只是在这里猜测,在更改电压设置之前,请务必先阅读技术文档,通过很小的电压变化即可轻松烹饪这些小电路。

这可能可以更好地以硬件或电气工程信道要求。