BỘ GIAO THÔNG VẬN TẢI ĐẠI HỌC GIAO THÔNG VẬN TẢI THÀNH PHỐ HỒ CHÍ MINH KHOA ĐIỆN – ĐIỆN TỬ VIỄN THÔNG BÁO CÁO BÀI TẬP LỚN MÔN HỌC ĐO LƯỜNG VÀ ĐIỀU KHIỂN BẰNG MÁY TÍNH ĐỀ TÀI:GIÁM SÁT-ĐI
Trang 1BỘ GIAO THÔNG VẬN TẢI ĐẠI HỌC GIAO THÔNG VẬN TẢI THÀNH PHỐ HỒ CHÍ MINH
KHOA ĐIỆN – ĐIỆN TỬ VIỄN THÔNG
BÁO CÁO BÀI TẬP LỚN MÔN HỌC
ĐO LƯỜNG VÀ ĐIỀU KHIỂN BẰNG MÁY
TÍNH
ĐỀ TÀI:GIÁM SÁT-ĐIỀU KHIỂN NHIỆT ĐỘ TRONG
NHÀ MÁY GVHD: Th.S Lê Thị Ngọc Quyên Nhóm thực hiện:Nhóm 3
Trang 2Danh sách thành viên Nhóm:
5 Nguyễn Phạm Tùng Duy 1851050017 TD18
Trang 3NHẬN XÉT GIÁO VIÊN
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 4MỤC LỤC
PHẦN MỞ ĐẦU 1
1 Lý do chọn đề tài 1
2 Giới thiệu đề tài 1
CHƯƠNG I: GIỚI THIỆU CÁC LINH KIỆN CHÍNH 2
1 Board Arduino Uno R3 2
2 Cảm biến nhiệt độ LM35 3
3.Tip 122 4
4.Motor quạt 775 4
5 Đèn sợi đốt 12VDC 5
6 Bộ nguồn 12VDC 5
CHƯƠNG II:XÂY DỰNG MÔ HÌNH 7
1.Sơ đồ khối 7
2.Sơ đồ nguyên lí mô phỏng trên proteus 7
3 Arduino 8
3.1 Giới thiệu arduino 8
3.2 Code arduino 9
4.Giao diện thiết kế trên C# 11
5 PID 11
5.1 Giới thiệu về PID 11
5.2 Đặc tính bộ điều khiển PID 12
Trang 5PHẦN MỞ ĐẦU
1 Lý do chọn đề tài
Ngày nay, các bộ vi điều khiển đang có ứng dụng ngày càng rộng rãi trong các lĩnh vực kỹ thuật và đời sống xã hội, đặc biệt là trong kĩ thuật tự động hóa và điều khiển từ xa Giờ đây, với nhu cầu chuyên dụng hóa, tối ưu (thời gian, không gian, giá thành), tính bảo mật, tính chủ động trong công việc ngày càng đòi hỏi khắt khe Việc đưa ra công nghệ mới trong lĩnh vực chế tạo mạch điện
tử để đáp ứng những yêu cầu trên là hoàn toàn cấp thiết mang tính thực tế cao
Nền kinh tế nhà máy công nghiệp đô thị đang được đẩy mạnh phát triển Việc chọn đề tài thiết kế mạch giám sát- điều khiển nhiệt độ trong nhà máy với mục đích góp phần vào nghiên cứu phát triển ngành nghề đang được sử dụng khá phổ biến
Một trong những cách tốt nhất để hạn chế thời gian ngừng hoạt động của thiết bị ngoài dự kiến là phải lên kế hoạch, cách thức nhà máy được kiểm tra để bảo dưỡng và sửa chữa, kiểm soát năng suất hoạt động Nếu thực hiên` tốt điều này, các nhà quản lb có thể chắc chắn rằng tất cả các thiết bị đều đang hoạt động môt`cách hiệu quả nhất
Đề tài gần gũi với đời sống và có đóng góp lớn cho việc phát triển kinh tế xã hội đặc biệt là nền kinh tế
2 Giới thiệu đề tài
Đề tài thiết kế mạch sử dụng vi điều khiển điều chỉnh nhiệt
độ trong nhà máy là một trong những ứng dụng phổ biến của đời sống được đưa ra qua quá trình tìm hiểu thực tế
Mạch bao gồm khối cảm biến nhiệt biến đổi thành tín hiệu điện, sau đó báo về cho khối xử lb tự dộng thu nhận tín hiệu điện,
xử lb tín hiệu này rồi so sánh, từ đó điều chỉnh nhiệt độ trong nhà máy được giữ ở một mức nhiệt độ nhất định cần thiết
Đề tài góp phần trong việc giảm công sức lao động và mang lại hiệu quả kinh tế cao
Trang 6CHƯƠNG I: GIỚI THIỆU CÁC LINH KIỆN CHÍNH
1 Board Arduino Uno R3
Một trong những board thông dụng, được sử dụng nhiều nhất là board Arduino Uno Dòng này đã phát triển tới thế hệ thứ 3 với tên gọi là Arduino Uno Revision 3 (Arduino Uno R3)
Hình 2.1 Board Arduino Uno R3
Vi điều khiển Atmega328P( họ 8 bit)
Digital I/O pin 14 (trong đó 6 chân PWM)
Analog Input Pins 6 (độ phân giải 10 bit) Cường độ dòng điện trên mỗi 20mA
Trang 7Cường độ dòng điện trên mỗi 50mA
3.3V pin
32 KB (ATmega328P) Flash Memory
0.5 KB được sử dụng bởi bootloader
Bảng 1 Thông số cơ bản của Board Arduino Uno R3
Nhiệm vụ chính: Là trung tâm của hệ thống Thực hiện tiếp nhận tính toán, xử lb tín hiệu đến và truyền đi
Trang 82 Cảm biến nhiệt độ LM35
a LM35 có 3 chân: 1 Vcc, 1 GND, 1 Analog
b Nhiệt độ LM35 thay đổi tuyến tính:10mV/°C
c Độ chính xác thực tế: 1/4°C ở nhiệt độ phòng và 3/4°C ngoài khoảng 2°C tới 150°C
d LM35 có hiệu năng cao, công suất tiêu thụ là 60uA
e LM35 hiệu điện thế 3,3-5V
3.Tip 122
a Tip 112 có 3 chân: chân B, C, E
b Transistor TIP122 là darlington transistor thuộc loại transistor NPN
c TIP122 có Uc cực đại = 60V, dòng Ic cực đại = 5A
d Hệ số khuếch đại hFE của darlington transistor TIP122 thấp nhất là 1000
e Chức năng: dùng để băm xung điều khiển đèn và quạt
Trang 94.Motor quạt 775
Motor 775 gắn quạt tạo gió giảm nhiệt độ
a Nguồn sử dụng: 12-24VDC
b Công suất: 288W
c Vòng quay: 21000RPM
d Momen xoắn: 125mN.m
e Chiều dài: 10,6cm
f Chiều rộng: 4.3cm
g Kích thước trục: phi 5
h Độ dài trục: 17 mm
i Khoảng cách lỗ bắt vít: M4-29mm
j Khối lượng: 350g
Trang 10a Nguồn cấp: 110-220VAC
b Ngõ ra DC: 12VDC
c Dòng điện: 05A
d Công suất ngõ ra: 125W
e Có biến trở điều chỉnh ngõ ra
f Nhiệt độ hoạt động: -40~71 độ C
g Độ ẩm: 20~95%
h Khối lượng: 480g
i Cấp chính xác ngõ ra: cộng – trừ 1%
j Vỏ ngoài: Kim loại
k Cấp bảo vệ: IP20
l Cấp nguồn 220V vào 2 chân L & N, nếu có thể nên nối đất chân
GND
m Nguồn có 2 đầu ra +12V và 2 đầu ra 0V
Trang 11CHƯƠNG II:XÂY DỰNG MÔ
HÌNH 1.Sơ đồ khối
2.Sơ đồ nguyên lí mô phỏng trên proteus
Trang 123 Arduino
3.1 Giới thiệu arduino
Arduino là một nền tảng mã nguồn mở được sử dụng để xây dựng các ứng dụng điện tử Arduino gồm có board mạch có thể lập trình được (thường gọi là vi điều khiển) và các phần mềm hỗ trợ phát triển tích hợp IDE (Integrated Development Environment) dùng để soạn thảo, biên dịch code và nạp chương trình cho board
Arduino ngày nay rất phổ biến cho những người mới bắt đầu tìm hiểu về điện tử vì nó đơn giản, hiệu quả và dễ tiếp cận Không giống như các loại vi điều khiển khác, Arduino không cần phải có các công
cụ chuyên biệt để phụ vụ việc nạp code, ví dụ để nạp code cho PIC cần phải có Pic Kit Đối với Arduino rất đơn giản, ta có thể kết nối với máy tính bằng cáp USB Thêm vào đó việc lập trình cho Arduino rất dễ dàng, trình biên dịch Arduino IDE sử dụng phiên bản đơn giản hóa của ngôn ngữ C++
Trang 133.2 Code arduino
#define Fan1 6
#define Fan2 5
float ND_do, reading;
float err, err_old, PW1, PW2;
volatile float DUTY;
int sensorPin = A0;//
int state, i;
float ND_DAT =30;//khởi tạo nhiệt dộ ban đầu 300 C
float kp=7.8, Ki=0.005, Kd=5.9, P, I, D;//cài đặt hệ số Kp,Ki,Kd
void setup ()
{
Serial.begin(9600);// Khởi động Serial ở mức baudrate 9600
pinMode (Fan1, OUTPUT); pinMode (Fan2,
OUTPUT);
/ pinMode (10,OUTPUT); PW1=0;
PW2=0;
}
void loop()
{
if ( Serial.availabel() > 0)
chân analog kết nối đến cảm biến LM35
Trang 14state = Serial.read();
ND_DAT = state ;
}
for (i=0 ; i<150 ; i++ ) // lệnh lặp 150 lần
{
reading = reading + analogRead (sesorPin);// đọc giá trị từ LM35
delay(1) ;
}
reading = reding/150;// lấy giá trị trung bình 150 lần đọc để giảm sai số
float voltange = reading*5.0 /1024.0;
ND_do =voltage * 100.0;
Serial.println (ND_do) ;//Gửi giá trị trung ND do lên máy tính
Delay (50);
// thiết lập thuật toán điều khiển PID
err = ND_DAT – ND_do;
P=Kp*err;
I=Ki * (err +err_old)*100/1000;
D=Kd*(err-err_old)*10;
err_old =err;
DUTY = P+I+D;
Delay (5);
PW1 =PW1 + DUTY ;
Trang 15PW2 =PW2- DUTY;
PW1 = constrain (PW1, 0,025);// xung PWM điều khiển quạt máy
PW2 = constrain (PW2, 0,025);// xung PWM điều khiển quạt sưởi
analogWrite (Fan1, 0,025);// chân 6
analogWrite (Fan2, 0,025);// chân 5
}
4.Giao diện thiết kế trên C#
5 PID
5.1 Giới thiệu về PID
Bộ điều khiển PID (A proportional integral derivative controller)
là bộ điều khiển sử dụng kỹ thuật điều khiển theo vòng lặp dụng kỹ thuật điều khiển theo vòng lặp có hồi tiếp được sử dụng rộng rãi trong các hệ thống điều khiển tự động
Trang 16Một bộ điều khiển PID cố gắng hiệu chỉnh sai lệch giữa tín hiệu ngõ ra và ngõ vào sau đó đưa ra một một tín hiệu điều khiển để điều chỉnh quá trình cho phù hợp
Bộ điều khiển kinh điển PID đã và đang được sử dụng rộng rãi để điều khiển các đối tượng SISO bởi vì tính đơn giản của nó cả về cấu trúc lẫn nguyên lb làm việc Bộ điều chỉnh này làm việc rất tốt trong các hệ thống có quán tính lớn như điều khiển tốc độ, điều khiển mức, và trong các hệ điều khiển tuyến tính hay có mức độ phi tuyến thấp
PID là một trong những lb thuyết cổ điển và cũ nhất dùng cho điều khiển tuy nhiên nó vẫn ứng dụng rộng rãi cho đến ngày nay
Sơ đồ khối của bộ điều khiển PID:
5.2 Đặc tính bộ điều khiển PID
- Thành phần tỉ lệ (Kp) có tác dụng làm tăng tốc độ đáp ứng của hệ,
và làm giảm chứ không triệt tiêu sai số xác lập của hệ (steady-state error)
- Thành phần tích phân (Ki) có tác dụng triệt tiêu sai số xác lập nhưng có thể làm giảm tốc độ đáp ứng của hệ - Thành phần vi phân
Trang 17(Kd) làm tăng độ ổn định hệ thống, giảm độ vọt lố và cải thiện tốc độ đáp ứng của hệ
- Lưu b rằng quan hệ này không phải chính xác tuyệt đối vì Kp, Ki
và Kd còn phụ thuộc vào nhau Trên thực tế, thay đổi một thành phần có thể ảnh hưởng đến hai thành phần còn lại Vì vậy bảng trên chỉ có tác dụng tham khảo khi chọn Kp, Ki, Kd
5.3 Xây dựng simulink tìm Kp, Ki, Kd
Hàm truyền hệ thống rời rạc
Trang 18- là hàm truyền với hệ thống với ngõ vào là điện áp cấp cho động cơ và ngõ ra là tốc độ động cơ
Đáp ứng Thời gian Độ vọt lố Thời gian Sai số xác vòng kín lên
nhỏ
Bảng này chỉ đúng 70%-80% trường hợp Sai số xác lập:
Điều khiển P thì hệ thống luôn ổn định.
Trang 19- PID rời rạc:
- Chọn
Hệ thống ổn định