Làm cân điện tử với Loadcell và HX711

Làm cân điện tử với Loadcell và HX711

Nội dung bài viết sẽ giúp cho các bạn tự chế cân điện tử sử dụng loadcell và module HX711

Thiết bị cần có:

  • Loadcell thanh, trong bài sử dụng loadcell 1kg, tuy nhiên bạn có thể sử dụng loadcell 3kg, 5kg, 10kg, 20kg…
  • KIT Arduino (trong bài này sử dụng UNO)
  • Nguồn 12V 1A (tùy chọn, không nhất thiết phải có)

Thực hiện:

Bước 1: Gá loadcell vào đế cố định để có thể sử dụng (tham khảo thêm từ video)

Bước 2: Gắn loadcell vào mạch HX711 và kết nối HX711 vào Arduino  như hình bên dưới:

Bước 3: Tải code về và giải nén, copy thư viện để sử dụng

https://drive.google.com/open?id=1mt_OdjIFvQagWlPGai5DXm3-mme0ecWu

Bước 4: Nạp code

Mặc định trong trương trình mình sử dụng 2 chân A0 và A1 để đọc HX711, nếu bạn xài chân khác phải đổi lại

// HX711.DOUT    – pin #A1

// HX711.PD_SCK – pin #A0

HX711 scale(A1, A0);                       // Khai báo chân sử dụng cho module HX711

Bước 5: Cân chỉnh để có kết quả đo chính xác

scale.set_scale(2280.f);                      // Chỉnh tỉ lệ để có kết quả đo chính xác, giá trị mặc định: 2280

Vì sao phải cân chỉnh?

Bản chất của việc đo khối lượng với loadcell là dùng tỉ lệ chênh lệch điện áp để suy ra chêch lệch khối lượng (tức nó coi khi mới bật loadcell lên lúc đó là 0kg), nên tỉ lệ này sẽ giúp cho đo khối lượng đúng hơn.

7 thoughts on “Làm cân điện tử với Loadcell và HX711”

  1. Anh ơi cho em hỏi ở bước 2 khi em muốn lắp dây của loadcell vào mạch HX711, để cố định dây thì phải hàn lại hay sao ạ ? Vì dây của load cell ban đầu nó là dây rời chứ ko gắn với jack cắm

  2. hi bạn mình test thì bị lỗi này bạn có thể giúp mình không 🙁
    Arduino: 1.8.9 (Windows Store 1.8.21.0) (Windows 10), Board: “Arduino/Genuino Uno”

    TKMD_Loadcell_HX711:13:19: error: no matching function for call to ‘HX711::HX711(const uint8_t&, const uint8_t&)’

    HX711 scale(A1, A0); // Khai báo chân sử dụng cho module HX711

    ^

    In file included from C:\Users\TRUNG HOANG\Desktop\arduino_project\TKMD_Loadcell_HX711\TKMD_Loadcell_HX711.ino:1:0:

    C:\Users\TRUNG HOANG\Documents\Arduino\libraries\HX711-master\src/HX711.h:30:3: note: candidate: HX711::HX711()

    HX711();

    ^

    C:\Users\TRUNG HOANG\Documents\Arduino\libraries\HX711-master\src/HX711.h:30:3: note: candidate expects 0 arguments, 2 provided

    C:\Users\TRUNG HOANG\Documents\Arduino\libraries\HX711-master\src/HX711.h:19:7: note: candidate: constexpr HX711::HX711(const HX711&)

    class HX711

    ^

    C:\Users\TRUNG HOANG\Documents\Arduino\libraries\HX711-master\src/HX711.h:19:7: note: candidate expects 1 argument, 2 provided

    exit status 1
    no matching function for call to ‘HX711::HX711(const uint8_t&, const uint8_t&)’

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.

  3. Hi AD,

    cho mình hỏi vậy nếu mình muốn hiển thị giá trị can lên LCD thì mình phải kết nối LCD như thế nào? và có cần nạp code lại để giá trị hiển thị được không? nhờ ad hỗ trợ giúp

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *