You are on page 1of 35

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH

KHOA CƠ KHÍ ĐỘNG LỰC

ĐỒ ÁN CUỐI KỲ
DC MOTOR CONTROL: SPEED CONTROL

SVTH: TRƯƠNG CÔNG HUY


MSSV: 20145228
SVTH: TRÌNH PHƯƠNG VŨ
MSSV: 20145745
SVTH: DIỀU QUỐC KHÁNH
MSSV: 20145285
SVTH: LÊ NHẬT TÂN
MSSV: 20145244
SVTH: TẠ HỮU PHƯỚC
MSSV: 20145378
GVHD: ThS. NGUYỄN TRUNG HIẾU

Thành phố Hồ Chí Minh, tháng 11 năm 2022


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH
KHOA CƠ KHÍ ĐỘNG LỰC

ĐỒ ÁN CUỐI KỲ
Môn học: Hệ thống điều khiển tự động ô tô

Tên đề tài:
DC MOTOR CONTROL: SPEED CONTROL

SVTH: TRƯƠNG CÔNG HUY


MSSV: 20145228
SVTH: TRÌNH PHƯƠNG VŨ
MSSV: 20145745
SVTH: DIỀU QUỐC KHÁNH
MSSV: 20145285
SVTH: LÊ NHẬT TÂN
MSSV: 20145244
SVTH: TẠ HỮU PHƯỚC
MSSV: 20145378
GVHD: ThS. NGUYỄN TRUNG HIẾU

Thành phố Hồ Chí Minh, tháng 11 năm 2022


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HCM CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
KHOA CƠ KHÍ ĐỘNG LỰC Độc lập - Tự do – Hạnh phúc

PHIẾU NHẬN XÉT ĐỒ ÁN CUỐI KỲ


Họ và tên sinh viên: Trương Công Huy MSSV: 20145228
Họ và tên sinh viên: Trình Phương Vũ MSSV: 20145745
Họ và tên sinh viên: Tạ Hữu Phước MSSV: 20145378
Họ và tên sinh viên: Diều Quốc Khánh MSSV: 20145285
Họ và tên sinh viên: Lê Nhật Tân MSSV: 20145244
Tên đề tài: DC Motor Control: Speed Control
Ngành đào tạo: Công nghệ Kỹ thuật Ôtô
Họ và tên giảng viên hướng dẫn: ThS. Nguyễn Trung Hiếu

Ý KIẾN NHẬN XÉT


1. Nhận xét về tinh thần, thái độ làm việc của sinh viên
.....................................................................................................................................................................................
.....................................................................................................................................................................................
.....................................................................................................................................................................................
.....................................................................................................................................................................................

2. Nhận xét về kết quả thực hiện của đồ án


2.1. Kết cấu, cách thức trình bày đồ án
.....................................................................................................................................................................................
.....................................................................................................................................................................................
.....................................................................................................................................................................................
.....................................................................................................................................................................................

2.2. Nội dung đồ án


.....................................................................................................................................................................................
.....................................................................................................................................................................................
.....................................................................................................................................................................................
.....................................................................................................................................................................................
.....................................................................................................................................................................................
.....................................................................................................................................................................................

2.3. Kết quả đạt được


.....................................................................................................................................................................................
.....................................................................................................................................................................................
.....................................................................................................................................................................................
.....................................................................................................................................................................................

2.4. Những tồn tại (nếu có)


.....................................................................................................................................................................................
.....................................................................................................................................................................................
.....................................................................................................................................................................................
.....................................................................................................................................................................................

3. Đánh giá

Điểm Điểm
TT Mục đánh giá
tối đa đạt được
1. Hình thức và kết cấu đồ án 30
Đúng format với đầy đủ cả hình thức và nội dung của các mục 10
Mục tiêu, nhiệm vụ, tổng quan của đề tài 10
Tính cấp thiết của đề tài 10
2. Nội dung đồ án 50
Khả năng ứng dụng kiến thức toán học, khoa học và kỹ thuật, khoa học 5
xã hội…
Khả năng thực hiện/phân tích/tổng hợp/đánh giá 10
Khả năng thiết kế chế tạo một hệ thống, thành phần, hoặc quy trình 15
đáp ứng yêu cầu đưa ra với những ràng buộc thực tế.
Khả năng cải tiến và phát triển 15
Khả năng sử dụng công cụ kỹ thuật, phần mềm chuyên ngành… 5
3. Đánh giá về khả năng ứng dụng của đề tài 10
4. Sản phẩm cụ thể của đồ án 10
Tổng điểm 100

4. Kết luận
...........................................................................................................................................................................................
.....................................................................................................................................................................................

TP. Hồ Chí Minh, ngày tháng năm 2022


Giảng viên hướng dẫn
(Ký và ghi rõ họ tên)
LỜI CẢM ƠN
Đầu tiên, nhóm chúng em xin giải lời cảm ơn chân thành đến Trường Đại học Sư
phạm Kỹ thuật Tp.Hồ Chí Minh đã đưa môn học Hệ thống điều khiển tự động ô tô vào
chương trình giảng dạy.
Đặc biệt, em xin gửi lời cảm ơn sâu sắc đến giảng viên bộ môn – ThS. Nguyễn
Trung Hiếu đã dạy dỗ, truyền đạt những kiến thức quý báu cho chúng em trong suốt thời
gian học tập. Trong thời gian tham gia lớp học Hệ thống điều khiển tự động ô tô của thầy,
chúng em đã có thêm cho mình nhiều kiến thức bổ ích, tinh thần học tập hiệu quả, nghiêm
túc. Đây chắc chắn sẽ là những kiến thức quý báu, là hành trang để chúng em có thể vững
bước sau này.
Hệ thống điều khiển tự động ô tô là môn học vô cùng thú vị, bổ ích và có tính thực tế
cao, đảm bảo cung cấp đủ kiến thức, gắn liền với nhu cầu thực tiễn của sinh viên. Tuy
nhiên, do vốn kiến thức còn nhiều hạn chế và khả năng tiếp thu thực tế còn nhiều bỡ ngỡ,
mặc dù nhóm chúng em đã có gắng hết sức nhưng chắc chắn bài báo cáo khó có thể tránh
khỏi những thiếu sót và nhiều chỗ còn chưa chính xác, kính mong thầy xem xét và góp ý để
bài báo cáo của nhóm em được hoàn thiện hơn.
Xin kính chúc thầy mạnh khỏe, hạnh phúc và thành công trong sự nghiệp trồng người
vinh quang.
Nhóm chúng em xin chân thành cảm ơn!
TP. Hồ Chí Minh, ngày 17 tháng 11 năm 2022
Nhóm sinh viên thực hiện
Nhóm 10

i
DANH MỤC HÌNH
Hình 2.1. Sơ đồ khối hệ thống điều khiển vòng hở..................................................................5
Hình 2.2. Sơ đồ khối hệ thống điều khiển vòng lặp kín...........................................................5
Hình 2.3. Sơ đồ thuật toán PID.................................................................................................7

Hình 3.1. Sơ đồ điện tương đương của DC motor....................................................................9
Hình 3.2. Sơ đồ tương đương chia làm 2 phần......................................................................10
Hình 3.3. Đưa thông số vào Matlab........................................................................................11
Hình 3.4. Sơ đồ khối mô phỏng DC motor.............................................................................12
Hình 3.5. Đồ thị đáp ứng của motor khi đặt các giá trị điện áp đầu vào khác nhau...............12
Hình 3.6. Sơ đồ khối hệ thống điều khiển hồi tiếp PID..........................................................13
Hình 3.7. Đồ thị đáp ứng của hệ thống với bộ điều khiển P...................................................13
Hình 3.8. Đồ thị đáp ứng của hệ thống với bộ điều khiển PI.................................................14
Hình 3.9. Đồ thị đáp ứng của hệ thống với bộ điều khiển PID..............................................15
Hình 3.10. Đáp ứng của hệ thống với bộ điều khiển PID (KP = 50, KI = 4, KD = 1)..............17

Hình 4.1. Sơ đồ nối dây..........................................................................................................18
Hình 4.2. Arduino Uno...........................................................................................................18
Hình 4.3. Driver L298N..........................................................................................................20
Hình 4.4. DC motor GA25-370..............................................................................................20
Hình 4.5. Biến trở 5KΩ..........................................................................................................21
Hình 4.6. Pin 9V.....................................................................................................................21

ii
DANH MỤC BẢNG
Bảng 3.1. Đáp ứng của hệ thống với bộ điều khiển P............................................................14
Bảng 3.2. Đáp ứng của hệ thống với bộ điều khiển PI...........................................................15
Bảng 3.3. Đáp ứng của hệ thống với bộ điều khiển PID........................................................16

iii
MỤC LỤC
Trang
LỜI CẢM ƠN..........................................................................................................................i
DANH MỤC HÌNH................................................................................................................ii
DANH MỤC BẢNG..............................................................................................................iii
MỤC LỤC..............................................................................................................................iv
Chương 1: TỔNG QUAN.......................................................................................................1
1.1. Lý do chọn đề tài............................................................................................................1
1.2. Mục tiêu của đề tài.........................................................................................................1
1.3. Phạm vi nghiên cứu........................................................................................................2
1.4. Phương pháp nghiên cứu................................................................................................2
1.5. Kế hoạch thực hiện.........................................................................................................2
Chương 2: CƠ SỞ LÝ THUYẾT..........................................................................................3
2.1. Cấu tạo và nguyên lý hoạt động của DC motor.................................................................3
2.1.1. Cấu tạo.....................................................................................................................3
2.1.2. Nguyên lý hoạt động................................................................................................3
2.2. Sơ lược về hệ thống điều khiển.........................................................................................5
2.2.1. Hệ thống điều khiển vòng hở...................................................................................5
2.2.2. Hệ thống điều khiển vòng lặp kín............................................................................5
2.3. Hàm truyền........................................................................................................................6
2.4. Mô hình hóa hệ thống........................................................................................................6
2.5. Bộ điều khiển PID..............................................................................................................6
Chương 3: MÔ HÌNH HÓA HỆ THỐNG............................................................................9
3.1. DC motor........................................................................................................................9
3.2. Thiết lập hàm truyền.....................................................................................................10
3.3. Mô phỏng DC motor trên Matlab/Simulink.................................................................11
3.4. Xây dựng bộ điều khiển hồi tiếp PID...........................................................................13
3.5. Khảo sát bộ điều khiển PID..........................................................................................13
3.5.1. Khảo sát hệ thống với bộ điều khiển P (KI = KD = 0)............................................13
3.5.2. Khảo sát hệ thống với bộ điều khiển PI (KP = 50, KD = 0)....................................14

iv
3.5.3. Khảo sát hệ thống với bộ điều khiển PID (KP = 50, KI = 4)..................................15
3.5.4. Kết luận..................................................................................................................16
Chương 4: THỰC NGHIỆM...............................................................................................18
4.1. Sơ đồ nối dây................................................................................................................18
4.2. Linh kiện.......................................................................................................................18
4.2.1. Board mạch Arduino Uno......................................................................................18
4.2.2. Driver L298N có tích hợp mạch cầu H..................................................................19
4.2.3. DC motor GA25-370.............................................................................................20
4.2.4. Biến trở...................................................................................................................21
4.2.5. Nguồn.....................................................................................................................21
4.3. Chương trình điều khiển...............................................................................................22
4.4. Điều khiển....................................................................................................................24
TÀI LIỆU THAM KHẢO....................................................................................................25

v
Chương 1: TỔNG QUAN
1.1. Lý do chọn đề tài
Với ưu điểm là điều khiển tốc độ độ dễ dàng, độ ổn định tốc độ cao nên DC motor đã
được sử dụng khá phổ biến như: động cơ nhỏ dùng trong lò vi sóng giúp chuyển động đĩa
quay, máy bơm thủy lực có động cơ DC được sử dụng để cung cấp năng lượng cho các máy
bơm này vì khả năng điều khiển tốc độ thay đổi dễ dàng và phản ứng tuyệt vời khi di
chuyển, động cơ DC sử dụng trong ôtô điện dẫn động 4 bánh của ô tô điện, quạt trần dùng
động cơ DC được sản xuất nhiều…
Một trong những yêu cầu cần được đáp ứng là điều khiển được tốc độ động cơ một cách
ổn định, đáp ứng nhanh, vận hành trơn tru khi xác lập và khi thay đổi trạng thái.
Việc ứng dụng những thuật toán kinh điển vào vấn đề điều khiển tốc độ động cơ đã đạt
được nhiều kết quả khả quan. Ví dụ như sử dụng bộ điều khiển PI, PID cho kết quả tốt ở một
số đối tượng động cơ. Chỉnh định tham số cho bộ điều khiển PID kinh điển cũng có nhiều
phương pháp. Tuy nhiên, với các thuật toán, phương pháp kinh điển, ta phải biết chính xác
về đối tượng, hoặc mô hình hóa tương đối chỉ tiết đối tượng. Một điểm nữa là trong quá
trình vận hành, nếu như đối tượng thay đổi thì hệ thống có thể mất ổn định hoặc chất lượng
điều khiển không còn đáp ứng được yêu cầu.
Và đó là lý do nhóm em chọn đề tài “DC Motor Control: Speed Control” cho báo cáo
môn học này.
1.2. Mục tiêu của đề tài
- Hiểu rõ cấu tạo và nguyên lý hoạt động của động cơ DC motor.
- Dùng được phần mềm mô phỏng Matlab-Simulink để mô phỏng hệ thống điều khiển, từ
đó đánh giá sơ bộ kết quả thu được đối với đối tượng.
- Biết được nguyên lý hoạt động của hệ thống điều khiển PID làm thay đổi vận tốc góc
của DC motor.
- Xây dựng giải thuật và viết chương trình điều khiển, ứng dụng các thuật toán điều khiển
lên vi điều khiển.
- Thiết kế, thi công mạch phần cứng điều khiển được tốc độ DC motor.

1
1.3. Phạm vi nghiên cứu
- Nghiên cứu, tìm hiểu về cấu tạo và nguyên lý hoạt động của DC motor.
- Dùng được phần mềm Matlab/Simulink để mô phỏng hệ thống điều khiển, từ đó đánh
giá sơ bộ kết quả thu được đối với đối tượng điều khiển. Xây dựng giải thuật điều khiển, ứng
dụng các thuật toán điều khiển lên vi điều khiển, trực tiếp điều khiển động cơ.
- Tìm hiểu nguyên lý họat động của hệ thống điều khiển PID làm thay đổi vận tốc góc
của trục quay.
- Thiết kế, thi công mạch phần cứng điều khiển DC motor.
1.4. Phương pháp nghiên cứu
- Nghiên cứu cơ sở lý thuyết thông qua các bài giảng trên lớp.
- Tìm kiếm và thu thập thông tin qua sách tham khảo, tài liệu chuyên ngành, các video
tham khảo trên các trang web.
- Sử dụng phần mềm Matlab/Simulink để mô phỏng DC motor và hệ thống điều khiển,
kiểm tra thông số và kết quả đầu ra. Từ đó, xây dựng mô hình thực nghiệm.
1.5. Kế hoạch thực hiện
- Tìm hiểu nguyên lý hoạt động của DC motor.
- Thiết lập phương trình động học, hàm truyền.
- Mô phỏng DC motor trên Matlab/ Simulink.
- Thiết kế bộ điều khiển, phân tích kết quả.
- Lựa chọn linh kiện và thực nghiệm .

2
Chương 2: CƠ SỞ LÝ THUYẾT
2.1. Cấu tạo và nguyên lý hoạt động của DC motor
2.1.1. Cấu tạo
Cấu tạo của động cơ DC gồm 3 phần chính là rotor, stator, bộ phận chỉnh lưu.
- Stator: Động cơ điện 1 chiều thường sẽ là 1 hay nhiều cặp nam châm vĩnh cửu, hoặc
là nam châm điện.
- Rotor: Gồm nhiều cuộn dây quấn được nối với những nguồn điện 1 chiều.
- Bộ phận chỉnh lưu gồm một bộ cổ góp và một bộ chổi than để tiếp xúc với cổ góp
có nhiệm vụ đổi chiều dòng điện trong khi chuyển động quay của rotor.
2.1.2. Nguyên lý hoạt động
Stator là nam châm tạo ra 1 từ trường không đổi. Rotor hay phần ứng là cuộn dây.

Hình 1.1. Động cơ DC đơn giản


Phần ứng được kết nối với một nguồn điện một chiều thông qua cổ góp. Khi có dòng
điện chạy trong cuộn dây thì một lực điện từ được tạo ra theo định luật Lorentz. Do đó cuộn
dây bắt đầu quay. Lực điện từ gây ra do dòng điện được đặt trong từ trường được đánh đấu
màu đỏ như hình 1.2.

Hình 1.2. Lực điện từ sinh ra trên cuộn dây


3
Khi cuộn dây quay, cổ góp được kết nối với nguồn bắt đầu đổi cực tính. Kết quả là ở bên
trái luôn là cực dương và ở bên phải luôn là cực âm. Điều này đảm bảo rằng momen quay
luôn cùng một hướng trong suốt quá trình chuyển động. Vì vậy cuộn dây sẽ tiếp tục quay.

Hình 1.3. Cổ góp giúp cho chiều cuộn dây luôn chạy theo một hướng
Khi cuộn dây vuông góc với từ thông, moment gần như bằng 0. Đây là nguyên nhân gây
ra chuyển động bất thường của rotor.

Hình 1.4. Cuộn dây vuông góc từ thông


Để khắc phục vấn đề này chỉ cần thêm vào rotor một cuộn dây nữa, cùng với một cặp cổ
góp riêng của nó. Với cách sắp xếp này, khi cuộn dây thứ nhất vuông góc thì cuộn dây thứ
hai kết nối với nguồn điện, nên lực từ sẽ luôn xuất hiện trong hệ thống. Càng có nhiều cuộn
dây thì động cơ quay càng mượt mà hơn.

Hình 1.5. Thêm cuộn dây vào rotor

4
2.2. Sơ lược về hệ thống điều khiển
2.2.1. Hệ thống điều khiển vòng hở
Hệ thống điều khiển vòng hở (Open-loop control system) là hệ thống mà tín hiệu vào
không phụ thuộc vào tín hiệu ra. Những thành phần của hệ điều khiển vòng hở thường có thể
chia làm hai bộ phận: bộ điều khiển (Controller), cơ cấu chấp hành (Actuator) và đối tượng
điều khiển (Process).

Hình 2.1. Sơ đồ khối hệ thống điều khiển vòng hở


2.2.2. Hệ thống điều khiển vòng lặp kín
Hệ thống điều khiển vòng lặp kín (closed-loop control system) là hệ thống điều khiển sử
dụng tín hiệu phản hồi để tạo ra đầu ra. Sự ổn định của hệ thống này có thể được kiểm soát
bởi một hệ thống phản hồi. Vì vậy, bằng cách xây dựng một hệ thống phản hồi, bất kỳ hệ
thống điều khiển vòng hở nào cũng có thể được thay đổi thành vòng kín.

Hình 2.2. Sơ đồ khối hệ thống điều khiển vòng lặp kín


Tín hiệu phản hồi này có thể nhận được từ các phần tử của phản hồi trong hệ thống điều
khiển bằng cách coi đầu ra của hệ thống là đầu vào. Là một thay thế cho đầu vào, tín hiệu lỗi
này có thể được đưa ra làm đầu vào của bộ điều khiển. Do đó, hệ thống này còn có tên là hệ
thống điều khiển tự động.
Ưu điểm hệ thống điều khiển vòng lặp kín:
- Các hệ thống này có độ chính xác cao và ít lỗi hơn.
- Các lỗi có thể được sửa chữa thông qua tín hiệu phản hồi.
- Hỗ trợ tự động hóa tốt hơn.

5
- Băng tần cao, không bị ảnh hưởng bởi nhiễu.
Nhược điểm của hệ thống điều khiển vòng lặp kín:
- Việc thiết kế hệ thống phức tạp.
- Cần nhiều thời gian trong thiết kế và thử nghiệm hệ thống.
- Chi phí đầu tư xây dựng hệ thống đắt.
- Hệ thống điều khiển dao động đôi khi do tín hiệu phản hồi.
- Bảo trì khó hơn.
2.3. Hàm truyền
Trong kỹ thuật, hàm truyền (Transfer function) là một hàm toán học mô hình hóa lý
thuyết đầu ra của thiết bị cho mỗi đầu vào. Ở dạng đơn giản nhất, hàm này là một đồ thị hai
chiều của đầu vào vô hướng độc lập so với đầu ra vô hướng phụ thuộc, được gọi là đường
cong truyền hoặc đường đặc tính. Các hàm truyền cho các thành phần được sử dụng để thiết
kế và phân tích các hệ thống được lắp ráp từ các thành phần, đặc biệt là sử dụng kỹ thuật sơ
đồ khối, trong lý thuyết điều khiển và điện tử.
2.4. Mô hình hóa hệ thống
Để tiến hành mô hình hoá hệ thống phải thông qua các bước như sau:
Bước 1: Lập các phương trình vi phân.
Bước 2: Dùng phép biến đổi Laplace để đưa các phương trình vi phân trên thành
phương trình dạng F(s).
Bước 3: Sau khi có các phương trình dạng F(s) đã được tìm ra ở phần xây dựng
phương trình toán học, ta cần tìm hàm truyền cho hệ thống bằng cách lấy hàm số đầu ra chia
cho hàm số đầu vào.
Bước 4: Bắt đầu mô phỏng trên Matlab/Simulink.
2.5. Bộ điều khiển PID
- Bộ điều khiển PID hay chỉ đơn giản là PID là một giải thuật điều khiển quá trình tham
gia vào các hành động xử lý về “tỉ lệ, tích phân và vi phân”. Nghĩa là các tín hiệu sai số xảy
ra sẽ được làm giảm đến mức tối thiểu nhất bởi ảnh hưởng của tác động tỉ lệ, ảnh hưởng của
tác động tích phân và được làm rõ bởi một tốc độ đạt được với tác động vi phân số liệu trước
đó. Người ta có thể chỉ áp dụng điều khiển P, PI, hay PID.

6
Hình 2.3. Sơ đồ thuật toán PID
- Nếu u(t) là tín hiệu điều khiển gửi tới hệ thống, y(t) là đầu ra đo được và r(t) là đầu ra
mong muốn, và sai số theo dõi e(t) = r(t) - y(t), một bộ điều khiển PID có dạng tổng quát
như sau:
de (t)
u(t )=K P . e ( t ) + K D . + K I .∫ e (t)dt
dt
- Thành phần Tỷ lệ (Proportional)
u ( t )=K P . e (t)
Tác động của thành phần tích phân đơn giản là tín hiệu điều khiển tỉ lệ tuyến tính với
sai lệch điều khiển. Ban đầu, khi sai lệch lớn thì tín hiệu điều khiển lớn. Sai lệch giảm dần
thì tín hiệu điều khiển cũng giảm dần. Khi sai lệch e (t) = 0 thì u (t) = 0. Khi sai lệch đổi dấu
thì tín hiệu điều khiển cũng đổi dấu. Thành phần P có ưu điểm là tác động nhanh và đơn giản
. Hệ số tỉ lệ Kp càng lớn thì tốc độ đáp ứng càng nhanh, do đó thành phần P có vai trò lớn
trong giai đoạn đầu của quá trình quá độ. Tuy nhiên, khi hệ số tỉ lệ Kp càng lớn thì sự thay
đổi của tín hiệu điều khiển càng mạnh dẫn đến dao động lớn. Hơn nữa đối với đối tượng
không có đặc tính tích phân thì sử dụng bộ P vẫn tồn tại sai lệch tĩnh.
- Thành phần tích phân (Integral)
u ( t )=K I . ∫ e (t) dt

Với thành phần tích phân, khi tồn tại một sai lệch điều khiển dương, luôn làm tăng tín
hiệu điều khiển, và khi sai lệch là âm thì luôn làm giảm tín hiệu điều khiển, bất kể sai lệch
đó là nhỏ hay lớn. Do đó, ở trạng thái xác lập, sai lệch bị triệt tiêu e (t) = 0. Đây cũng là ưu
7
điểm của thành phần tích phân. Nhược điểm của thành phần tích phân là do phải mất một
khoảng thời gian để đợi e (t) về 0 nên đặc tính tác động của bộ điều khiển sẽ chậm. Người ta
thường sử dụng bộ PI hoặc PID thay vì bộ I đơn thuần vừa để cải thiện tốc độ đáp ứng, vừa
đảm bảo yêu cầu động học của hệ thống.
- Thành phần vi phân (Derivative)
de (t)
u ( t )=K D .
dt
Mục đích của thành phần vi phân là cải thiện sự ổn định của hệ kín. Thành phần vi
phân đóng vai trò dự đoán đầu ra của quá trình và đưa ra phản ứng thích hợp dựa trên chiều
hướng và tốc độ thay đổi của sai lệch e (t), làm tăng tốc độ đáp ứng của hệ. Thành phần vi
phân giúp ổn định một số quá trình mà bình thường không ổn định được với các bộ P hay PI.
Nhược điểm của thành phần vi phân là rất nhạy với nhiễu đo hay của giá trị đặt do tính đáp
ứng nhanh nêu ở trên.
- Có 2 cách xác định thông số PID, chính là bằng tính toán và bằng thử sai.
+ Về cách tính toán, ta có thể dùng giải thuật Ziegler – Nichols, phương pháp này sẽ
cho ra các thông số tương đối chính xác trong khoảng thời gian ngắn.
+ Về cách thử sai, có thể thử sai bằng phương pháp thực nghiệm như thay đổi
K P , K I , K D cho đến khi hệ thống ổn định Đây không phải là việc dễ dàng vì nó phụ thuộc vào

nhiều yếu tố. Tóm tắt một kinh nghiệm cơ bản khi chọn các hệ số cho PID như sau:
 Chọn Kp trước: thử bộ điều khiển P với đối tượng thật (hoặc mô phỏng), điều
chỉnh Kp sao cho thời gian đáp ứng đủ nhanh, chấp nhận overshot nhỏ.
 Thêm thành phần D để loại overshot, tăng Kd từ từ, thử nghiệm và chọn giá trị
thích hợp. Steady state error có thể sẽ xuất hiện.
 Thêm thành phần I để giảm steady state error. Nên tăng Ki từ bé đến lớn để
giảm steady state error đồng thời không để cho overshot xuất hiện trở lại.

8
Chương 3: MÔ HÌNH HÓA HỆ THỐNG
3.1. DC motor
Một cơ cấu chấp hành phổ biến trong hệ thống điều khiển là động cơ DC. Nó trực tiếp
cung cấp chuyển động quay và cùng với bánh xe hoặc tang trống và dây cáp, có thể cung cấp
chuyển động tịnh tiến. Sơ đồ điện tương đương của phần ứng và sơ đồ thân tự do của rôto
được biểu diễn trong hình sau.

Hình 3.1. Sơ đồ điện tương đương của DC motor


Giả sử rằng đầu vào của hệ thống là điện áp (V) cấp cho phần ứng của động cơ, còn đầu
ra là tốc độ quay của trục (θ̇). Rôto và trục được giả định là cứng.
Giả định các giá trị sau cho các tham số vật lý. (Các giá trị này được tham khảo tại địa chỉ
https://ctms.engin.umich.edu)
2
J : Mômen quán tính của rôto 0 , 01 kg . m
b : Hằng số ma sát nhớt động cơ 0,1N .m.s
K e : Hằng số sức điện động 0.01 V /rad / s
K t : Hằng số mô-men xoắn của động cơ 0 , 01 N . m/ Amp
R : Điện trở 1Ω
L : Độ tự cảm 0,5 H

9
3.2. Thiết lập hàm truyền
Ta sẽ chia ra làm 2 phần điện và cơ

Hình 3.2. Sơ đồ tương đương chia làm 2 phần


- Phần điện:
Sức phản điện động e tỉ lệ với vận tốc góc bởi một hằng số là Ke

e=K e =K e . θ̇
dt
Theo định luật Kirchhoff :
di
V =Ri + L +e
dt
di
¿ Ri+ L + K e . θ̇
dt
di
=> Ri+ L =V −K e . θ̇ (1)
dt
- Phần cơ:
Mômen tạo ra bởi động cơ điện một chiều tỷ lệ với dòng điện phần ứng và cường độ
của từ trường. Giả sử rằng từ trường là không đổi và do đó, mômen động cơ chỉ tỷ lệ với
dòng điện phần ứng i theo một hệ số không đổi Kt
T =K t . i

Theo định luật II Newton về chuyển động quay:


∑ M =J . θ̈
=> T −b θ̇=J . θ̈
=> K t . i−b θ̇=J . θ̈ (2)
Trong hệ SI, hằng momen xoắn động cơ và hằng số sức phản điện động là bằng nhau

10
K=K e =K t (3)
Từ (1), (2) và (3) ta được hệ phương trình:

{
K . i−b θ̇=J . θ̈
di
Ri+ L =V −K . θ̇
dt

Sử dụng phép biến đổi Laplace ta được:

{ s . θ ( s ) . ( J . s+b )=K . I ( s )
L. s . I ( s ) + R . I (s)=V (s)−K . s . θ ( s )
Hàm truyền của hệ thống là tỉ số giữa đầu ra và đầu vào theo biến s
θ̇(s) K
H ( s )= = 2 ¿)
V (s) K + ( L . s + R ) . ( J . s +b )

3.3. Mô phỏng DC motor trên Matlab/Simulink


Đưa các thông số giả định vào Matlab ta có được hàm truyền sau:

Hình 3.3. Đưa thông số vào Matlab


Với hàm truyền đã được xác định, sử dụng các khối trên Simulink để mô phỏng:
+ Constant để đưa giá trị điệp áp đầu vào.
+ Transfer function để nhập hàm truyền.
+ Gain để quy đổi đầu ra từ giá trị tốc độ góc (rad/s) sang giá trị số vòng quay (rpm).
+ Scope để xuất ra đồ thị áp ứng của hệ thống.
+ Display để xuất giá trị đầu ra của hệ thống sau thời gian chạy t.

11
Hình 3.4. Sơ đồ khối mô phỏng DC motor
Ta lần lượt thay đổi giá trị điện áp đầu vào bằng các giá trị khác nhau để xem sự đáp ứng
ở đầu ra.

Hình 3.5. Đồ thị đáp ứng của motor khi đặt các giá trị điện áp đầu vào khác nhau
Nhận xét: Với mỗi giá trị điệp áp ở đầu vào ta nhận được một giá trị vận tốc nhất định ở
đầu ra và mất hơn 2s để motor đạt được trạng thái ổn định.

12
3.4. Xây dựng bộ điều khiển hồi tiếp PID

Hình 3.6. Sơ đồ khối hệ thống điều khiển hồi tiếp PID


Dùng khối Step để đưa tín hiệu đặt vào hệ thống, tín hiệu đặt được so sánh với giá trị
đầu ra của hệ thống thông qua khối Add từ đó cung cấp giá trị đầu vào cho khối PID. Khối
PID sẽ thực hiện tính toán để đưa ra một giá trị điện áp thích hợp cung cấp cho DC motor và
giá trị này được giới hạn bới khối Saturation.
3.5. Khảo sát bộ điều khiển PID
3.5.1. Khảo sát hệ thống với bộ điều khiển P (KI = KD = 0)

Hình 3.7. Đồ thị đáp ứng của hệ thống với bộ điều khiển P
13
Bảng 3.1. Đáp ứng của hệ thống với bộ điều khiển P
KP 10 25 50 100
POT (%) 0 1,1 2,95 3,75
Ts (s) 0,730 0,785 0,769 0,794
Ess (rpm) 1,14 0,48 0,25 0,12
Nhận xét: Khi tăng KP ta thấy:
- Độ vọt lố tăng.
- Thời gian xác lập thay đổi không đáng kể.
- Sai số xác lập giảm.
Khi Kp tăng làm giảm sai số xác lập nên sẽ cải thiện được chất lượng hệ thống. Tuy
nhiên nếu KP quá lớn sẽ làm hệ thống xuất hiện dao động dẫn đến kém ổn định hơn.
3.5.2. Khảo sát hệ thống với bộ điều khiển PI (KP = 50, KD = 0)

Hình 3.8. Đồ thị đáp ứng của hệ thống với bộ điều khiển PI

Bảng 3.2. Đáp ứng của hệ thống với bộ điều khiển PI


14
KI 1 2 3 4
POT (%) 3,4 3,83 4,3 4,75
Ts (s) 0,973 0,802 0,793 0,781
Ess (rpm) 0,15 0,09 0,04 0,01
Nhận xét: Với KP đã được chọn từ trước, khi tăng KI ta thấy:
- Độ vọt lố tăng.
- Thời gian xác lập giảm.
- Sai số xác lập giảm.
Khi tăng KI thời gian xác lập giảm nhưng độ vọt lố tăng, dẫn đến chất lượng của hệ
thống cũng giảm xuống. So với với bộ điều khiển P thì bộ điều khiển PI với hệ số K I thích
hợp sẽ cho chất lượng tốt hơn.
3.5.3. Khảo sát hệ thống với bộ điều khiển PID (KP = 50, KI = 4)

Hình 3.9. Đồ thị đáp ứng của hệ thống với bộ điều khiển PID

15
Bảng 3.3. Đáp ứng của hệ thống với bộ điều khiển PID
KD 0,1 0,2 0,5 1
POT (%) 4,41 4,12 3,1 1,5
Ts (s) 0,692 0,687 0,668 0,571
Ess (rpm) 0,01 0,01 0,01 0
Nhận xét: Với KP, KI đã được chọn từ trước, khi tăng KD ta thấy:
- Độ vọt lố giảm.
- Thời gian xác lập giảm.
- Sai số xác lập gần như không đổi.
Khi tăng KD (KD < 1), chất lượng hệ thống được nâng cao vì có độ vọt lố và thời gian
xác lập giảm xuống nhưng không ảnh hưởng đến sai ố xác lập. So với với bộ điều khiển P và
PI thì bộ điều khiển PID có chất lượng tốt hơn.
3.5.4. Kết luận
- Kết luận về vai trò của các khâu P,I,D:
+ Khâu tỉ lệ P: Làm giảm sai số xác lập, tuy nhiên nếu K P tăng quá cao lại làm hệ có
dao động.
+ Khâu tích phân I: Làm giảm sai số xác lập, tăng độ vọt lố .
+ Khâu vi phân D: Làm giảm độ vọt lố, giảm thời gian xác lập (KD < 1).
- Từ các khảo sát ta thấy, với các thông số giả định ban đầu thì thệ thống dùng bộ điều
khiển PID với các thông số KP = 50, KI = 4, KD = 1 là tối ưu nhất.

16
Hình 3.10. Đáp ứng của hệ thống với bộ điều khiển PID (KP = 50, KI = 4, KD = 1)

17
Chương 4: THỰC NGHIỆM
4.1. Sơ đồ nối dây

Hình 4.1. Sơ đồ nối dây


4.2. Linh kiện
4.2.1. Board mạch Arduino Uno
Board mạch Arduino Uno đảm nhiệm chức năng là controller của hệ thống điều khiển,
là trung tâm xử lý của hệ thống. Board mạch nhận tín hiệu từ encoder trả về và xử lý, cấp
xung cho L298N để điều khiển tốc độ động cơ.

Hình 4.2. Arduino Uno

18
Các chân của board mạch Arduino Uno:
- VIN: Chân này dùng để cấp nguồn ngoài (điện áp cấp từ 7-12VDC).
- 5V: Điện áp ra 5V (dòng điện trên mỗi chân này tối đa là 500mA).
- 3V3: Điện áp ra 3.3V (dòng điện trên mỗi chân này tối đa là 50mA).
- GND: Là chân mang điện cực âm trên board.
- RESET: việc nhấn nút Reset trên board để reset vi điều khiển tương đương với việc
chân RESET được nối với GND qua 1 điện trở 10KΩ.
- Board Arduino Uno có 14 chân Digital được sử dụng để làm chân đầu vào và đầu ra
và chúng sử dụng các hàm pinMode(), digitalWrite(), digitalRead(). Giá trị điện áp trên mỗi
chân là 5V, dòng trên mỗi chân là 20mA và bên trong có điện trở kéo lên là 20-50 ohm.
Dòng tối đa trên mỗi chân I/O không vượt quá 40mA để tránh trường hợp gây hỏng board
mạch.
- Uno có 6 chân Input analog (A0 – A5), độ phân giải mỗi chân là 10 bit (0 – 1023 ).
Các chân này dùng để đọc tín hiệu điện áp 0 – 5V (mặc định) tương ứng với 1024 giá trị, sử
dụng hàm analogRead().
4.2.2. Driver L298N có tích hợp mạch cầu H
Driver L298N có tích hợp mạch cầu H để điều khiển tốc độ động cơ. Thiết bị này đóng
vai trò là cơ cấu chấp hành của hệ thống điều khiển.
Thông số kỹ thuật:
- Điện áp điều khiển: +5 V ~ +12 V
- Dòng tối đa cho mỗi cầu H là: 2A (=>2A cho mỗi motor)
- Điện áp của tín hiệu điều khiển: +5 V ~ +7 V
- Dòng của tín hiệu điều khiển: 0 ~ 36mA
- Công suất hao phí: 20W (khi nhiệt độ T = 75 ℃)
- Nhiệt độ bảo quản: -25 ℃ ~ +130 ℃

19
Hình 4.3. Driver L298N
Các chân của L298N :
- 12V power, 5V power. Đây là 2 chân cấp nguồn trực tiếp đến động cơ.
- Power GND chân này là GND của nguồn cấp cho Động cơ. Chân này nối với GND
của Arduino
- 2 Jump A enable và B enable
- Gồm có 4 chân Input. IN1, IN2, IN3, IN4
- Output A và B: có thể cùng lúc 2 động cơ DC từ các cổng outA cho động cơ thứ
nhất và outB cho động cơ thứ hai, chú ý chân (+), (-). Nếu nối ngược thì động cơ sẽ
chạy ngược.
4.2.3. DC motor GA25-370
DC motor GA25-370 có tích hợp hộp số giảm tốc và encoder. Động cơ này có tốc độ tối
đa 280rpm, tỉ số truyền 21.3 và đọc được 234 xung.

Hình 4.4. DC motor GA25-370


DC motor GA25-370 bao gồm có 6 dây :
20
- Dây đỏ: Dây nguồn cấp cho động cơ
- Dây đen: Nguồn encoder GND
- Dây vàng: Kênh trả xung A
- Dây xanh lá cây: Kênh trả xung B
- Dây xanh dương: Nguồn encoder 3.3 V
- Dây trắng: Dây nguồn cấp cho động cơ
4.2.4. Biến trở
Biến trở chỉ đơn giản chỉ là một điện trở có thể thay đổi được trị số. Trong hệ thống, biến
trở dùng để set giá trị mong muốn. Mạch Arduino không đọc trực tiếp điện trở này mà đọc
gián tiếp qua điện áp mà biến trở gây ra. Trong trường hợp này ta lựa chọn biến trở 5KΩ.

Hình 4.5. Biến trở 5KΩ


4.2.5. Nguồn
9V là giá trị điện áp mà board mạch arduino có thể hoạt động tốt nhất và ổn định nhất
nên ta sử dụng pin có giá trị 9V để làm nguồn cho hệ thống này.

Hình 4.6. Pin 9V

4.3. Chương trình điều khiển

21
#include <util/atomic.h>
#define ENCA 2
#define ENCB 3
#define PWM 5
#define IN2 6
#define IN1 7
volatile int posi = 0;
long prevT = 0;
long tgtd = 0;
long tght = 0;
float eprev = 0;
float eintegral = 0;
float ts =0;
float u = 0;
float deltat = 0;
int b = 0;
void setup() {
Serial.begin(9600);
pinMode(ENCA,INPUT);
pinMode(ENCB,INPUT);
attachInterrupt(digitalPinToInterrupt(ENCA),readEncoder,RISING);
pinMode(PWM,OUTPUT);
pinMode(IN1,OUTPUT);
pinMode(IN2,OUTPUT);
}
void loop() {
int y = analogRead(0);
int target = map(y, 0, 1023, 0, 115);
float kp = 1.2;
float kd = 0.0035;
float ki = 0.001;
long currT = micros();
float deltaT = ((float) (currT - prevT))/( 1.0e6 );
prevT = currT;
float td = ts/506*60;
int e = target - td;
float dedt = (e-eprev)/(deltaT);
eintegral = eintegral + e*deltaT;
u = u + kp*e + kd*dedt + ki*eintegral;
float pwr = fabs(u);
if( pwr > 255 ){
pwr = 255;
}

22
int dir = 1;
if(u<0){
dir = -1;
}
setMotor(dir,pwr,PWM,IN1,IN2);
eprev = e;
Serial.print(td);
Serial.print(" ");
Serial.print(target);
Serial.println();
}
void setMotor(int dir, int pwmVal, int pwm, int in1, int in2){
analogWrite(pwm,pwmVal);
if(dir == 1){
digitalWrite(in1,LOW);
digitalWrite(in2,HIGH);
}
else if(dir == -1){
digitalWrite(in1,HIGH);
digitalWrite(in2,LOW);
}
else{
digitalWrite(in1,LOW);
digitalWrite(in2,LOW);
}
}
void readEncoder(){
tght = micros();
deltat = ((float) (tght - tgtd))/( 1.0e6 );
tgtd = tght ;
b = digitalRead(ENCB);
if (b > 0)
{ ts = 1/deltat;
}
else
{ ts = -1/deltat;
}
}

4.4. Điều khiển

23
Sau khi đã nạp code thành công ta thực hiện các bước sau:
- Bước 1: Chọn giá trị tốc độ đặt bằng ½ giá trị max.
Với điện áp cấp cho hệ thống thì tốc độ max của motor là 140 rpm. Điều chỉnh biển
trở để giá trị tốc độ đặt là 70rpm.
- Bước 2: Xác định KP, KI, KD bằng phương pháp thử sai.
Bằng phương pháp thử sai ta thấy với các giá trị K P, KI, KD lần lượt là 1.2; 0.0035;
0.001 thì hệ thống đáp ứng tốt nhất.
- Bước 3: Giữ nguyên KP, KI, KD, thay đổi các giá trị đặt và nhận xét.
Với các giá trị KP, KI, KD đã tìm được ở bước 2 ta tiến hành điều chỉnh biến trở để
thay đổi giá trị đặt cho hệ thống với các kiểu đầu vào step, sin,…thì thấy hệ thống đáp
ứng tương đối tốt.
Kết luận: Thực nghiệm thành công.

24
TÀI LIỆU THAM KHẢO
[1] CTV Thụy Cọt (EBOOKBKMT) (13/10/2017), “Nguyên lý hoạt động của động cơ điện
một chiều DC Motor”
Link: https://www.ebookbkmt.com/2017/10/nguyen-ly-hoat-ong-cua-ong-co-ien-mot.html
[2] Khuyết danh (15/06/2021), “Hàm truyền”
Link: https://vi.wikipedia.org/wiki/H%C3%A0m_truy%E1%BB%81n
[3] OpenStax (29/07/2009), “Nhập môn cơ sở tự động học”
Link: https://www.jobilize.com/course/section/h-i-u-khi-n-vong-h-open-loop-control-
system-by-openstax
[4] Điện tử Hello (30/07/2020), “Bộ điều khiển PID trong vi điều khiển”
Link: https://www.dientuhello.com/bo-dieu-khien-pid-trong-vi-dieu-khien/
[5] Khuyết danh (13/01/2013), “DC Motor Speed: System Modeling”
Link: https://ctms.engin.umich.edu/CTMS/index.php?
example=MotorSpeed&section=SystemModeling
[6] S Kaed Bey (22/04/2022), “Project-Arduino Based PID Angular Speed Controller Using
the Trial and Error Method”
Link: https://www.youtube.com/watch?app=desktop&v=pOFakaTQDXM

25

You might also like