-
-
-
Tổng tiền thanh toán:
-
Mã sản phẩm: 1705006
Thương hiệu: Loại: Cảm biến
Khối lượng: 50
Cách lắp ráp với các phụ kiện khác:
3. Hướng dẫn sử dụng cảm biến loadcell với arduino để làm một cân điện tử đơn giản
Như các bạn đã biết các loại cân điện tử hiện nay thường dùng các cảm biến loadcell để đo khối lượng, với độ chính xác, độ ổn định cao, nên được ứng dụng nhiều trong đời sống.
Hôm nay, mình sẽ hướng dẫn các bạn làm một cái cân điện tử đơn giản với Arduino và màn hình LCD.
Để làm theo hướng dẫn này bạn phải chuẩn bị một mạch Arduino Uno, một màn hình LCD 1602 kèm I2C, một cảm biến loadcell 20kg (bạn có thể chọn loại cân nặng cao hơn hoặc thấp hơn tùy nhu cầu), một mạch chuyển đổi ADC HX711, một nút nhấn và dây nối. Các bạn có thể mua tại link sau:
Arduino UNO R3 DIP (kèm cáp):
Bộ Cảm Biến Cân Nặng Loadcell 20kg + Khung Bàn Cân Mica
LCD 1602 kèm module I2C màu xanh lá
Kết nối theo sơ đồ sau:
Sau khi kết nối xong, tiến hành nạp code cho arduino:
Code hiệu chỉnh giá trị cho loadcell:
#include "HX711.h"
#define DOUT 4
#define CLK 5
HX711 scale;
float calibration_factor = -366875;
//=============================================================================================
// SETUP
//=============================================================================================
void setup() {
scale.begin(DOUT, CLK);
Serial.begin(9600);
Serial.println("HX711 Calibration");
Serial.println("Remove all weight from scale");
Serial.println("After readings begin, place known weight on scale");
Serial.println("Press a,s,d,f to increase calibration factor by 10,100,1000,10000 respectively");
Serial.println("Press z,x,c,v to decrease calibration factor by 10,100,1000,10000 respectively");
Serial.println("Press t for tare");
scale.set_scale();
scale.tare(); //Reset the scale to 0
long zero_factor = scale.read_average();
Serial.print("Zero factor: ");
Serial.println(zero_factor);
}
//=============================================================================================
// LOOP
//=============================================================================================
void loop() {
scale.set_scale(calibration_factor);
Serial.print("Reading: ");
Serial.print(scale.get_units(), 3);
Serial.print(" kg");
Serial.print(" calibration_factor: ");
Serial.print(calibration_factor);
Serial.println();
if(Serial.available())
{
char temp = Serial.read();
if(temp == '+' || temp == 'a')
calibration_factor += 10;
else if(temp == '-' || temp == 'z')
calibration_factor -= 10;
else if(temp == 's')
calibration_factor += 100;
else if(temp == 'x')
calibration_factor -= 100;
else if(temp == 'd')
calibration_factor += 1000;
else if(temp == 'c')
calibration_factor -= 1000;
else if(temp == 'f')
calibration_factor += 10000;
else if(temp == 'v')
calibration_factor -= 10000;
else if(temp == 'l')
calibration_factor -= 100000;
else if(temp == 'k')
calibration_factor -= 1000000;
else if(temp == 't')
scale.tare(); //Reset the scale to zero
}
delay(200);
}
Sau khi nạp code các bạn cần hiệu chỉnh bằng cách dùng quả cân chuẩn hoặc một vật mà bạn đã biết đúng khối lượng đặt lên bàn cân => Mở cửa sổ Serial Monitor của Arduino IDE=> Gõ “a, s, d ,f” rồi Enter để tăng giá trị đo được, “z, x, c, v” rồi Enter để giảm giá trị đo được sao cho bằng với giá trị quả cân chuẩn => Ghi lại giá trị calibration_factor làm giá trị hiệu chỉnh để cho vào code full.
Code full hiển thị giá trị cân nặng lên lcd:
#include "HX711.h"
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
#define DOUT 4
#define CLK 5
HX711 scale;
int rbutton = 8; // this button will be used to reset the scale to 0.
float weight;
float nang;
float a;
float b;
float e;
int c;
float calibration_factor = -255865; //259225 // 255825 // for me this vlaue works just perfect 419640
void setup()
{
delay(700);
scale.begin(DOUT, CLK);
Serial.begin(9600);
pinMode(rbutton, INPUT_PULLUP);
scale.set_scale();
scale.tare(); //Reset the scale to 0
long zero_factor = scale.read_average(); //Get a baseline reading
lcd.init();
lcd.backlight();
}
void loop()
{
e =0;
scale.set_scale(calibration_factor); //Adjust to this calibration factor
weight = scale.get_units(10);
nang = weight * 1000;
a = nang * 1;
b = weight * 1;
if (a<0)
{
a =0;
}
if (b<0)
{
b=0;
}
c = round(a);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("KHOI");
lcd.setCursor(8, 0);
lcd.print(b);
lcd.print(" KG");
lcd.setCursor(0, 1);
lcd.print("LUONG");
lcd.setCursor(8, 1);
lcd.print(c);
lcd.print(" G");
delay(500);
Serial.print("Weight: ");
Serial.print(weight);
Serial.println(" KG");
Serial.println();
if ( digitalRead(rbutton) == LOW)
{
scale.set_scale();
scale.tare(); //Reset the scale to 0
}
}
Sau khi nạp code xong là bạn đã có một cái cân điện tử hoàn thiện. Các bạn có thể chế thêm nguồn pin để tiện lợi hơn khi sử dụng.
Liên hệ:
Đ/c: 18/655 Nguyễn Văn Linh-P.Vĩnh Niệm-Lê Chân-Hải Phòng
Email: giaiphapchung68@gmail.com
Hotline: 0936824969
Bước 1: Truy cập website và lựa chọn sản phẩm cần mua để mua hàng
Bước 2: Bấm chọn biểu tượng giỏ hàng để thanh toán
Trong mục này bạn có thể thay đổi số lượng, chủng loại sản phẩm và chọn mua thêm sản phẩm khác
Bước 3: Lựa chọn Thanh toán
Bạn vui lòng nhập thông tin:
Email, Họ tên, Số điện thoại và các thông tin cần thiết khác để nhận đơn hàng của mình.
Nếu bạn đã có tài khoản và muốn đăng ký tài khoản vui lòng vào mục Đăng nhập hoặc Đăng ký tài khoản. Khi có tài khoản bạn sẽ dễ dàng theo dõi được đơn hàng của mình
Bước 4: Xem lại thông tin đặt hàng, điền chú thích và gửi đơn hàng
Bước 5: Sau khi nhận được đơn hàng bạn gửi chúng tôi sẽ liên hệ bằng cách gọi điện hoặc gửi vào email đơn hàng của bạn để xác nhận lại đơn hàng và địa chỉ của bạn.
Trân trọng cảm ơn.