Tải bản đầy đủ (.docx) (11 trang)

Báo cáo thực hành cảm biến trong điều khiển cảm biến lực loadcell

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (427.1 KB, 11 trang )

GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC NÔNG LÂM THÀNH PHỐ HỒ CHÍ MINH

KHOA CƠ KHÍ – CÔNG NGHỆ
—–¯—–

BÁO CÁO THỰC HÀNH CẢM BIẾN TRONG ĐIỀU KHIỂN
CẢM BIẾN LỰC LOADCELL


GVHD : Ths. LÊ VĂN BẠN
SVTH : Trần Đức Bảo
LỚP

: DH12TD

MSSV : 12138017

Tháng 6 năm 2015

I.

SƠ ĐỒ KHỐI MẠCH:

CẢM BIẾN
LOADCELL

II.

MẠCH


KHUẾCH ĐẠI

SƠ ĐỒ MẠCH NGUYÊN LÝ:

MẠCH ĐIỀU
KHIỂN
ARDUINO

HIỂN THỊ
LCD




NHỮNG THÔNG SỐ CƠ BẢN CỦA BỘ KHUẾCH ĐẠI:
• IC INA128P




III.

THÔNG SỐ ICL7660:

LẬP TRÌNH VỚI VI ĐIỀU KHIỂN:




CODE CHƯƠNG TRÌNH:


#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int G = 0;
int out = 7;
int button1 = 8;
int button2 = 9;
int LoadCell = A0;


float analog =0;
float kl = 0;
int scale = 1;

void setup()
{
pinMode(button1, INPUT);
pinMode(out, OUTPUT);
lcd.clear();
lcd.begin(16,2);
analogReference(EXTERNAL);
lcd.print(G);
}

void kylogam(){
analog=analogRead(LoadCell);


delay(1000);
kl=analog * 97.65625/1000;

lcd.setCursor(0,0);
lcd.print("KL =");
lcd.setCursor(5,0);
lcd.println(kl,2);
lcd.print(" Kg ");
delay(100);
}

void introduce()
{
lcd.clear();
lcd.setCursor(0,0);
lcd.print("BAO CAO CAM BIEN");
lcd.setCursor(1,1);


lcd.print("TRAN DUC BAO");
delay (1000);
for(int x=0; x < 3; x++) {
lcd.noDisplay(); //tat hien thi
delay(300);
lcd.display(); // bat hien thi
delay(300);
}
}

void loop()
{
introduce();
delay(100);

lcd.clear();
kylogam();


lcd.clear();
lcd.setCursor(0,1);
lcd.print("KL = ");
lcd.setCursor(5,0);
lcd.print(kl,2);
lcd.print("Kg ");
delay(100000);
}
 GIẢI THÍCH CHƯƠNG TRÌNH:

Bắt đầu chương trình ta khai báo thư viện Lcd và định nghĩa chân
cũng như các biến cần dùng cho toàn bộ chương trình.
+ #include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // dinh nghia chan cho LCD
int scale = 1;
int buttonPin=8;// chan ket noi voi phim nhan

+ Trong hàm setup() chúng ta cần quan tâm tới câu lệnh:


analogReference(EXTERNAL);



Khai báo điện áp tham chiếu cho bộ chuyển đổi ADC bên trong Arduino
Uno là EXTERNAL: điện áp áp dụng cho pin Aref ( 0 đến chỉ 5V ) được

sử dụng làm tài liệu tham khảo.

Để tính toán đúng giá trị khối lượng chúng ta cần lưu ý những điểm
sau:
Bộ chuyển đổi ADC gồm 10 bit tức là 1024 mức.

+ Điện áp tham chiếu cho bộ chuyển đổi ADC là 3V.
Đối với INA128P thì điện áp ngõ ra tuyến tính với giá trị đo.
Hệ số chuyển đổi điện áp sang nhiệt độ là 30mV/100kg = 0,03V/1kg.
Xây dựng công thức tính nhiệt độ.

Ta biết:
+ 3 volt (3000 mV) có 1024 mực biểu diễn, vậy 1 mức sẽ là 3/1024
(volt),


để chuyển đổi từ điện áp sang nhiệt độ thì ta chia tiếp cho 0,03V. Từ đây
ta thấy cứ 1 mức chuyển đổi của ADC tương ứng với



×