重量測定のためにロードセルとHX711をArduinoとインターフェイスする方法

How to Interface a Load Cell & HX711 with Arduino for Weight Measurement

デジタルスケールから産業用アプリケーションまで、さまざまなプロジェクトで重量を正確に測定することが不可欠です。ロードセルにHX711アンプとArduinoとインターフェースすることにより、正確で信頼性の高い重量測定システムを作成できます。このガイドでは、独自の重量測定システムをセットアップするために必要なコンポーネント、配線、コーディング、およびキャリブレーションをご覧ください。

必要な材料

  • Arduino委員会(例:UNO、NANO)
  • ロードセル(通常5kgまたは10kgの容量)
  • HX711ロードセルアンプモジュール
  • ブレッドボードとジャンパーワイヤ
  • ArduinoをプログラミングするためのUSBケーブル
  • オプション:重量測定値を表示するためのLCDディスプレイ

コンポーネントの配線

ロードセルをHX711に接続してからArduinoに接続するのは簡単です。荷重セルには通常、赤(VCC)、黒(GND)、白(データ)、緑(データ+)の4つのワイヤがあります。配線のために次の手順に従ってください。

  1. ロードセルをHX711に接続します。
    • HX711でE+に赤いワイヤー
    • hx711でのe-への黒いワイヤー
    • hx711上の白いワイヤー
    • hx711でa+へのグリーンワイヤ
  2. HX711をArduinoに接続します:
    • ArduinoのHX711から5VのVCC
    • ArduinoでHX711からGNDへのGND
    • hx711のarduinoのデジタルピン2へのDT(データ)
    • HX711のSCK(時計)からArduinoのデジタルピン3へ

Arduinoのコーディング

HX711と通信するには、相互作用を簡素化するライブラリを使用する必要があります。 HX711 Bogdan Neculaのライブラリは人気のある選択肢です。先に進む前に、Arduino Library Managerを介してインストールしてください。

これがあなたを開始するためのサンプルコードです:


#include <HX711.h>

// Define HX711 circuit connections
const int LOADCELL_DOUT_PIN = 2;
const int LOADCELL_SCK_PIN = 3;

HX711 scale;

void setup() {
  Serial.begin(9600);
  scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);
  Serial.println("HX711 Calibration");
  
  // Optional: tare the scale to zero
  scale.tare();
}

void loop() {
  if (scale.is_ready()) {
    long reading = scale.read();
    Serial.print("Raw reading: ");
    Serial.println(reading);

    // Convert reading to weight
    float weight = scale.get_units(10); // 10 readings averaged
    Serial.print("Weight: ");
    Serial.print(weight);
    Serial.println(" kg");
  } else {
    Serial.println("HX711 not found.");
  }
  delay(500);
}

較正

正確な測定では、矛盾を説明するためにスケールを校正する必要があります。ロードセルを較正する方法は次のとおりです。

  1. 上記のコードをArduinoにアップロードし、シリアルモニターを開きます。
  2. 負荷セルに重みがない場合、生の読み取りに注意してください。これはあなたです なんでも 価値。
  3. ロードセルに既知の重量を配置し、新しい生の読み取りに注意してください。
  4. 式を使用してキャリブレーション係数を計算します。

Calibration Factor = (Raw Reading - Tare) / Known Weight

キャリブレーション係数ができたら、コードを更新して使用します。


#define CALIBRATION_FACTOR  -7050 // Example value

void setup() {
  Serial.begin(9600);
  scale.begin(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);
  scale.set_scale(CALIBRATION_FACTOR);
  scale.tare();
  Serial.println("HX711 Calibration");
}

void loop() {
  if (scale.is_ready()) {
    float weight = scale.get_units(10);
    Serial.print("Weight: ");
    Serial.print(weight);
    Serial.println(" kg");
  } else {
    Serial.println("HX711 not found.");
  }
  delay(500);
}

セットアップをテストします

キャリブレーション後、異なる既知のウェイトでいくつかのテストを実行して、精度を確保します。不一致が存在する場合は、それに応じてキャリブレーション係数を調整します。荷重セルが安定した表面に配置され、測定値の変動を防ぐために配線が安全であることを保証することが不可欠です。

あなたのプロジェクトを強化します

体重測定システムをよりユーザーフレンドリーにするには、LCDディスプレイを追加して重量をリアルタイムで表示することを検討してください。また、より包括的な測定のために、データロギング、ワイヤレス送信、他のセンサーとのインターフェースなどの機能を統合することもできます。

結論

ロードセルとHX711をArduinoとインターフェースすることは、さまざまなアプリケーションに適した正確な重量測定値を生成する管理可能なプロジェクトです。このガイドで概説されている手順に従って、独自のデジタルスケールをセットアップするか、より複雑なプロジェクトにウェイトセンシングを統合することができます。適切なキャリブレーションと安定した接続により、システムはニーズに合わせて信頼できるデータを提供します。

コメントを残す

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.