Tải bản đầy đủ (.pdf) (84 trang)

điều khiển con lắc ngược sử dụng mạng neural trên chip dsp

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 (4.1 MB, 84 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH

LUẬN VĂN THẠC SĨ
NGUYỄN ĐỨC QUYỀN

ĐIỀU KHIỂN CON LẮC NGƯỢC SỬ DỤNG
MẠNG NEURAL TRÊN CHIP DSP

NGÀNH: KỸ THUẬT ĐIỆN TỬ - 605270

S KC 0 0 4 1 4 3

Tp. Hồ Chí Minh, tháng 09 năm 2013


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH

LUẬN VĂN THẠC SĨ

NGUYỄN ĐỨC QUYỀN

ĐIỀU KHIỂN CON LẮC NGƯỢC
SỬ DỤNG MẠNG NEURAL TRÊN CHIP DSP
NGÀNH: KỸ THUẬT ĐIỆN TỬ - 605270

Tp. Hồ Chí Minh, tháng 09 năm 2013



BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH

LUẬN VĂN THẠC SĨ

NGUYỄN ĐỨC QUYỀN

ĐIỀU KHIỂN CON LẮC NGƯỢC
SỬ DỤNG MẠNG NEURAL TRÊN CHIP DSP

NGÀNH: KỸ THUẬT ĐIỆN TỬ - 605270
Hướng dẫn khoa học:
TS NGÔ VĂN THUYÊN

Tp. Hồ Chí Minh, tháng 09 năm 2013


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc

LÝ LỊCH KHOA HỌC
I. LÝ LỊCH SƠ LƢỢC:
Họ & tên: Nguyên Đức Quyền

Giới tính: Nam

Ngày, tháng, năm sinh: 15/07/1985
Nơi sinh: Đăk Lăk

Quê quán: Hà Tĩnh
Dân tộc: Kinh
Địa chỉ liên lạc: 1/6/12/4 đƣờng số 4, phƣờng Trƣờng Thọ, quận Thủ Đức, TP HCM.
Điện thoại nhà riêng: 0907.707.959, 086.680.3242
E-mail:
II. QUÁ TRÌNH ĐÀO TẠO:
1.Đại học:
Hệ đào tạo: Chính quy.
Thời gian đào tạo từ 09/2007 đến 05/2009
Nơi học: Trƣờng Đại Học Sƣ Phạm Kỹ Thuật Tp. Hồ Chí Minh
Ngành học: Kỹ thuật Điện – Điện Tử
2. Cao học:
Hệ đào tạo: Chính quy.

Thời gian đào tạo từ 09/2010 đến 06/2012

Nơi học: Trƣờng Đại Học Sƣ Phạm Kỹ Thuật Tp. Hồ Chí Minh
Ngành học: Kỹ thuật Điện Tử
Tên đề tài: Điều khiển con lắc ngƣợc sử dụng mạng neural trên chip dsp
Ngày & nơi bảo vệ: Tháng 10/2013, tại Trƣờng Đại Học Sƣ Phạm Kỹ Thuật Tp. Hồ Chí
Minh
Ngƣời hƣớng dẫn: TS. Ngô Văn Thuyên

i


III. QUÁ TRÌNH CÔNG TÁC CHUYÊN MÔN KỂ TỪ KHI TỐT NGHIỆP ĐẠI
HỌC:
Thời gian
Từ 09/2009 đến

05/2010
Từ tháng 09/2010 đến
tháng 05/2011
Từ tháng 05/201 đến
tháng 010/2013

Nơi công tác
Cao Đẳng Nghề Thanh Niên Dân Tộc
Tây Nguyên

Nhiệm vụ

Đại Học Sƣ Phạm Kỹ Thuật TP HCM

Giáo viên

Công Ty SONION Việt Nam

Kỹ sƣ

Giáo viên

IV. QUÁ TRÌNH NGHIÊN CỨU KHOA HỌC
Các công trình khoa học đã công bố:
TT

01

02


03

Tên công trình

Năm
công
bố
2012

Rotary inverted pendulum and control of
rotary inverted pendulum by artificial
neural network
Thermodynamic properties of molecular
2012
cryocrystals of nitrogen type with fcc
structure: contribution from lattice
vibrations and molecular rotational motion
Molar heat capacity under constant
2012
volume of molecular cryocrystals of
nitrogen type with hcp structure:
contribution from lattice vibrations and
molecular rotational motion

Tên tạp chí

Proc. Natl. Conf.
Theor. Phys. 37 (2012),
pp. 243-249
Proc. Natl. Conf.

Theor. Phys. 37 (2012),
pp. 150-156
Proc. Natl. Conf.
Theor. Phys. 37 (2012),
pp. 180-186

TP HCM, ngày 11 tháng 09 năm 2013
Ngƣời khai ký tên

Nguyễn Đức Quyền

ii


Lời Cam Đoan
Tôi cam đoan đây là công trình nghiên cứu của tôi.
Các số liệu, kết quả nêu trong luận văn là trung thực và chƣa từng đƣợc ai
công bố trong bất kỳ công trình nào khác.
Tp. Hồ Chí Minh,ngày 11 tháng 09 năm 2013
(Ký tên và ghi rõ họ tên)

Nguyễn Đức Quyền

iii


Lời Cảm Ơn
- - -  - - -

Em xin gửi lời cảm ơn chân thành nhất tới thầy TS. Ngô Văn Thuyên, ngƣời

đã tận tình hƣớng dẫn và truyền đạt kiến thức giúp em hoàn thành luận văn này. Và
quan trọng hơn hết, thầy là ngƣời đã gợi mở cho em một hƣớng nghiên cứu mà em
cảm thấy quan tâm và mong muốn theo đuổi.
Bên cạnh đó, em cũng xin gửi lời cảm ơn sâu sắc tới tất cả qúy Thầy Cô
trƣờng Đại Học Sƣ Phạm Kỹ Thuật Tp. Hồ Chí Minh đã trang bị cho em những
kiến thức bổ ích, đặc biệt em xin chân thành cảm ơn thầy TS. Nguyễn Minh Tâm
đã tạo điều kiện thuận lợi và hỗ trợ cho em rất nhiều trong quá trình học tập cũng
nhƣ trong thời gian làm luận văn này.
Cuối cùng, con xin chân thành cảm ơn sự quan tâm, hỗ trợ, tạo điều kiện và
động viên về vật chất lẫn tinh thần của các thành viên trong gia đình, đặc biệt là Mẹ
trong suốt thời gian qua.

Nguyễn Đức Quyền

iv


Tóm Tắt Luận Văn
Hệ thống con lắc ngƣợc là hệ thống không ổn định, phi tuyến ở mức cao. Nó
đƣợc sử dụng nhƣ một mô hình phổ biến cho các ứng dụng trong kỹ thuật điều
khiển tuyến tính và phi tuyến. Mô hình con lắc đƣợc dùng để kiểm chứng lại các
thuật toán điều khiển nhƣ: điều khiển trƣợt, đặt cực, LQR, PID, logic mờ, mạng
neural... Điều khiển con lắc ngƣợc gồm hai quá trình: điều khiển lật ngƣợc con lắc
và điều khiển cân bằng con lắc quanh vị trí lật ngƣợc.
Trong các phƣơng pháp điều khiển hiện hành đối với hệ phi tuyến, mạng
neural là phƣơng pháp không mới. Tuy nhiên, mạng neural còn nhiều vấn đề cần
quan tâm. Những kết quả nghiên cứu trƣớc đây đã cho thấy mạng neural điều khiển
tốt hơn các phƣơng pháp khác đối với hệ phi tuyến.
Trong công trình này, tác giả sử dụng mạng neural truyền thẳng khớp quan hệ
vào ra (fitting neural network) huấn luyện theo luật học lan truyền ngƣợc Bayesian

để xây dựng bộ điều khiển cân bằng. Bộ điều khiển cân bằng đƣợc huấn luyện để
mô phỏng theo bộ điều khiển của hệ thống. Bộ điều khiển cân bằng này hoạt động
giống bộ điều khiển của hệ thống nhƣng nó có thể thích nghi khi thông số của hệ
thống thay đổi.
Tác giả sử dụng thuật toán logic mờ để xây dựng bộ điều khiển lật ngƣợc con
lắc. Dựa trên vị trí và vận tốc con lắc, bộ điều khiển lật ngƣợc sẽ tính toán và quyết
định điện áp điều khiển nhằm đƣa con lắc lên vị trí dựng ngƣợc sao cho vận tốc tại
đó là nhỏ nhất, sau đó chuyển sang bộ điều khiển cân bằng để giữ con lắc ổn định
tại vị trí này.
Kết quả thực nghiệm đạt đƣợc: Bộ điều khiển lật ngƣợc dùng logic mờ đã đƣa
con lắc từ vị trí buông thõng lên vị trí lật ngƣợc, sau đó hệ thống điều khiển chuyển
sang bộ điều khiển cân bằng để giữ con lắc ổn định tại vị trí này. Bộ điều khiển cân
bằng con lắc dùng mạng neural truyền thẳng khớp quan hệ vào ra đạt đƣợc đáp ứng
sai số của hệ thống rất nhỏ và duy trì con lắc ổn định tốt ở vị trí lật ngƣợc.

v


Abstract
Inverted pendulum system is unstable, highly nonlinear. It is used as a
common model for engineering applications in linear and nonlinear control.
Pendulum model is used to test control algorithms such as: slide control, LQR, PID,
fuzzy logic, neural networks ... Inverted pendulum controller consists two unit:
swing-up controller and balance controller.
In the current control method for nonlinear systems, neural network isn‟t a
new method. However, neural network has a few interesting questions, and some
research results have shown that it is better than the other methods for nonlinear
systems.
In this project, the authors use fitting neural networks trained by Bayesian
back-propagation learning rule to build the balance controller. The balance

controller is trained to simulate the system controller. This controller works like
controller of system, but it can be adapted if parameters of the system change.
The author uses fuzzy logic algorithm to build the swing-up controller. Based
on the location and velocity of the pendulum, the controller will calculate and
decide control voltage to swing up pendulum to inverted position, at the smallest
velocity, then switch to the balance controller to keep the pendulum stability at this
position.
The experimental results obtained: Swing-up controller brought the pendulum
to inverted position and switch to the balance controller to keep the pendulum
stability at this position. With the balance controller using fitting neural network,
the error response of the system is very small and pendulum stable at inverted
position.

vi


Mục lục
Trang tựa

trang

Quyết định giao đề tài
LÝ LỊCH KHOA HỌC ............................................................................................. i
Lời Cam Đoan ......................................................................................................... iii
Lời Cảm Ơn ............................................................................................................. iv
Tóm Tắt Luận Văn ................................................................................................... v
Mục lục ................................................................................................................... vii
Danh Sách Các Chữ Viết Tắt ................................................................................... x
Danh Sách Các Hình ............................................................................................... xi
Danh Sách Các Bảng ............................................................................................. xiv

Chƣơng 1 Tổng Quan ............................................................................................ 1
1.1. Đặt vấn đề ..................................................................................................... 1
1.2. Lịch sử nghiên cứu ........................................................................................ 3
1.3. Mục tiêu và giới hạn của đề tài ..................................................................... 6
1.4. Phƣơng pháp nghiên cứu............................................................................... 7
1.5. Nội dung luận văn ......................................................................................... 7
Chƣơng 2 Mô Hình Toán Học............................................................................... 9
2.1. Xây dựng mô hình toán học [8], [9].............................................................. 9
2.2. Mô phỏng con lắc ngƣợc quay trên matlab ................................................. 13
2.1.1.

Khảo sát đáp ứng của con lắc tuyến tính .............................................. 15

2.1.2.

Khảo sát đáp ứng góc của con lắc với bộ điều khiển PID một biến ..... 16

2.1.3.

Khảo sát đáp ứng góc của con lắc với bộ điều khiển PID hai biến ...... 17

2.1.4.

Khảo sát đáp ứng của con lắc phi tuyến ............................................... 21

vii


Chƣơng 3 Điều Khiển Cân Bằng Dùng Mạng Neural (Ann) ........................... 24
3.1. Mạng neural truyền thẳng nhiều lớp (Multilayer Feed-forward Neural

Network) [15], [16] ............................................................................................. 24
3.1.1.

Vấn đề thiết kế cấu trúc mạng............................................................... 25

3.1.2.

Số lớp ẩn ............................................................................................... 26

3.1.3.

Số neural trong lớp ẩn ........................................................................... 27

3.2. Luật học lan truyền ngƣợc [16] ................................................................... 28
3.3. Lựa chọn và huấn luyện mạng .................................................................... 33
3.3.1.

Mạng truyền thẳng (feedforwardnet) .................................................... 34

3.3.2.

Mạng truyền thẳng ghép cascade (Cascade-forward neural

network) .............................................................................................................. 35
3.3.3.

Mạng truyền thẳng khớp quan hệ vào ra (fitting neural network) ........ 37

3.4. Điều khiển con lắc bằng mạng fitting neural network ................................ 38
Chƣơng 4 Điều Khiển Swing-Up Dùng Logic Mờ ............................................ 39

4.1. Tổng quan về điều khiển mờ [14] ............................................................... 39
4.1.1.

Tiền xử lý .............................................................................................. 39

4.1.2.

Mờ hóa .................................................................................................. 39

4.1.3.

Hệ qui tắc mờ ........................................................................................ 40

4.1.4.

Các phép toán trên tập mờ .................................................................... 41

4.2. Điều khiển Swing-up [14], [15] .................................................................. 42
4.3. Áp dụng điều khiển mờ trong Swing-up con lắc ........................................ 44
Chƣơng 5 Kết Quả Thực Nghiệm ....................................................................... 46
5.1. Điều khiển con lắc ngƣợc dùng mạng fitting neural network..................... 46
5.1.1.

Đáp ứng của con lắc khi chƣa thay đổi thông số mô hình .................... 47

viii


5.1.2.


Đáp ứng của con lắc khi thêm m = 0.31kg tại 2L=16cm ..................... 49

5.1.3.

Đáp ứng của con lắc khi thêm m = 0.31kg tại 2L=30cm ..................... 51

5.2. Điều khiển Swing-up sử dụng logic mờ ..................................................... 54
Nhận xét: ............................................................................................................. 56
Chƣơng 6 Kết Luận Và Hƣớng Phát Triển Đề Tài .......................................... 56
6.1. Kết luận ....................................................................................................... 56
6.2. Hƣớng phát triển của đề tài ......................................................................... 56
TÀI LIỆU THAM KHẢO ................................................................................... 59
Phụ Lục ................................................................................................................. 62
A. Giới thiệu phần cứng hệ thống con lắc ngƣợc quay ................................... 62
a.

Phần cơ khí: .......................................................................................... 62

b.

Phần mạch điện tử: ............................................................................... 63

c.

Các sơ đồ nguyên lý của mạch điện trên hệ thống thực ....................... 65

ix


Danh Sách Các Chữ Viết Tắt

1. PID: Proportional Integral Derivative
2. PWM: Pulse-Width Modulation
3. SIMO: Single Input Multi Outputs
4. SISO: Single Input Single Outputs
5. MIMO: Multi Input Multi Outputs
6. DSP: Digital Signal Processing
7. PCI: Peripheral Component Interconnect
8. QEP: Quadrature Encoder Pulse
9. ANN: Artificial Neural Network
10. SSE: Sum Suquared Error
11. MSE: Mean Square Error

x


Danh Sách Các Hình
Hình

trang

Hình 1.1 Hệ Pendubot ...........................................................................................................3
Hình 1.1 Hệ con lắc ngƣợc xe ...............................................................................................3
Hình 1.3 Hệ con lắc ngƣợc quay ..........................................................................................4
Hình 1.4 Hệ con lắc một bậc .................................................................................................4
Hình 2. 1 Mô hình cánh tay quay của con lắc .......................................................................9
Hình 2. 2 Phân tích chuyển động của con lắc ngƣợc quay ...................................................10
Hình 2. 3 Sơ đồ khối mô hình mô phỏng con lắc tuyến tính ................................................14
Hình 2. 4 Sơ đồ khối mô hình mô phỏng con lắc phi tuyến .................................................14
Hình 2. 5 Sơ đồ khối mô tả con lắc khi chƣa có bộ điều khiển ............................................15
Hình 2. 6 Góc alpha của con lắc khi chƣa có bộ điều khiển .................................................15

Hình 2. 7 Sơ đồ khối điều khiển con lắc hồi tiếp góc alpha .................................................16
Hình 2.8. Đáp ứng góc lệch con lắc khi hồi tiếp góc alpha ..................................................17
Hình 2.9 Đáp ứng góc lệch cánh tay khi hồi tiếp góc theta ..................................................17
Hình 2.10. Điều khiển con lắc hồi tiếp cả hai góc alpha và theta .........................................18
Hình 2.11. Đáp ứng góc alpha khi hồi tiếp cả hai góc alpha và theta ...................................18
Hình 2.12. Đáp ứng góc theta khi hồi tiếp cả hai góc alpha và theta ...................................19
Hình 2.13. Điều khiển con lắc hồi tiếp cả hai góc alpha và theta khi thay đổi m .................20
Hình 2.14. Điều khiển con lắc không ổn định khi khối lƣợng m = 0.65kg ..........................20
Hình 2.15. Điều khiển con lắc hồi tiếp cả hai góc alpha và theta khi thay đổi chiều dài .....21
Hình 2.16. Điều khiển con lắc không ổn định khi chiều dài bằng L=0.4194 m ...................21
Hình 2.17. Điều khiển con lắc hồi tiếp cả hai góc alpha và theta với tín hiệu nhiễu ..........22
Hình 2.18. Góc alpha của con lắc khi ngõ vào là tín hiệu nhiễu ngẫu nhiên ........................22
Hình 2.19. Điều khiển con lắc ổn định khi khối lƣợng m = 0.62kg .....................................23
Hình 2.20. Điều khiển con lắc ổn định khi chiều dài bằng 0.4145m ....................................23
Hình 3.1 Mạng neural truyền thẳng nhiều lớp ......................................................................24
Hình 3.2: Hiệu năng huấn luyện của mạng feedforwardnet .................................................32
Hình 3.3: Trạng thái quá trình huấn luyện của mạng feedforwardnet ..................................33
Hình 3.4: Histogram huấn luyện của mạng feedforwardnet .................................................33
Hình 3.5: Hiệu năng huấn luyện của mạng Cascade-forward neural network .....................34

xi


Hình 3.6: Trạng thái quá trình huấn luyện của mạng Cascade-forward neural network ......34
Hình 3.7: Histogram huấn luyện của mạng Cascade-forward neural network .....................35
Hình 3.8 Hiệu năng huấn luyện của mạng fitting neural network ........................................35
Hình 3.9: Trạng thái quá trình huấn luyện của mạng fitting neural network .......................36
Hình 3.10: Histogram huấn luyện của mạng fitting neural network ....................................36
Hình 3.11 Sơ đồ khối bộ điều khiển cân bằng sử dụng mạng fitting neural network .........37
Hình 4.1 Sơ đồ khối bộ điều khiển mờ ................................................................................39

Hình 4.2. Tập mờ ở ngõ ra của khâu mờ hóa .......................................................................40
Hình 4.3 Miền không gian trạng thái con lắc ........................................................................43
Hình 4.4 Mô hình bộ điều khiển con lắc cân bằng và lật ngƣợc ..........................................43
Hình 4.5 Sơ đồ mờ hóa ngõ vào ...........................................................................................44
Hình 4.6 Sơ đồ giải mờ ngõ ra ..............................................................................................44
Hình 4.7 Vùng tác động điều khiển con lắc ngƣợc ...............................................................45
Hình 5.1. Sơ đồ khối thu thập dữ liệu ...................................................................................46
Hình 5.2. Sơ đồ khối bộ điều khiển cân bằng sử dụng mạng fitting neural network ...........47
Hình 5.3. Đáp ứng góc alpha với mạng fitting neural network ............................................48
Hình 5.4. Đáp ứng góc alpha với mạng truyền thẳng [9] .....................................................48
Hình 5.5. Đáp ứng góc theta với mạng fitting neural network .............................................49
Hình 5.6. Đáp ứng góc theta với mạng truyền thẳng [9] ......................................................49
Hình 5.7. Đáp ứng góc alpha với mạng fitting neural network khi thêm m tại L=16cm .....50
Hình 5.8. Đáp ứng góc alpha với mạng truyền thẳng [9] khi thêm m tại L=16cm ..............50
Hình 5.9. Đáp ứng góc theta với mạng fitting neural network khi thêm m tại L=16cm ......51
Hình 5.10. Đáp ứng góc theta với mạng truyền thẳng [9] khi thêm m tại L=16cm .............51
Hình 5.11. Đáp ứng góc alpha với mạng fitting neural network khi thêm m tại L=30cm ...52
Hình 5.12. Đáp ứng góc alpha với mạng truyền thẳng [9] khi thêm m tại L=30cm ............52
Hình 5.13. Đáp ứng góc theta với mạng fitting neural network khi thêm m tại L=30cm ....53
Hình 5.14. Đáp ứng góc theta với mạng truyền thẳng [9] khi thêm m tại L=30cm .............53
Hình 5.15. Vùng tác động điều khiển Swing- up ..................................................................54
Hình 5.16: Lƣu đồ giải thuật điều khiển Swing-up ..............................................................54
Hình 5.17 Góc con lắc khi điều khiển swing-up ...................................................................55
Hình 7.1. Sơ đồ hệ thống điều khiển con lắc ngƣợc quay ....................................................59
Hình 7.2. Hệ thống thực nghiệm ...........................................................................................59

xii


Hình 7.3. Phần cơ khí của mô hình con lắc ngƣợc ...............................................................60

Hình 7.4 Mạch điện tử điều khiển của mô hình con lắc ngƣợc ............................................61
Hình 7.5 Mạch giao tiếp Encorder với 2 ngõ QEP của DSP .................................................62
Hình 7.6 Mạch cách ly giữa phần điều khiển và phần động lực ............................................62
Hình 7.7 Mạch động lực điều khiển động cơ 24V .................................................................63
Hình 7.8 Mạch giao tiếp SCI ................................................................................................63

xiii


Danh Sách Các Bảng
Bảng 2.1. Các thông số của mô hình ............................................................. 15
Bảng 3.2 So sánh kết quả huấn luyện các loại mạng .................................. 40
Bảng 7.1. Thông số thực của hệ thống con lắc ngƣợc thực ......................... 65

xiv


1 – Tổng Quan

Chƣơng 1

Tổng Quan
1.1. Đặt vấn đề
Ngày nay các lý thuyết điều khiển tuyến tính đã phát triển hoàn chỉnh và đƣợc
áp dụng rất thành công trong các quá trình công nghiệp cũng nhƣ trong các thiết bị
dân dụng. Tuy nhiên, các lý thuyết này không hiệu quả đối với các hệ thống phi
tuyến mà không thể hoặc khó xác định chính xác mô hình toán học, nhất là đối với
những hệ thống có mô hình toán học thay đổi và chịu tác động của nhiễu. Bên cạnh
đó, lý thuyết điều khiển phi tuyến cũng đã có những bƣớc phát triển đáng kể. Từ đó
chúng ta có nền tảng toán học cần thiết để thiết kế những bộ điều khiển đạt chất

lƣợng.
Các lý thuyết đƣợc áp dụng thành công để điều khiển các hệ phi tuyến đƣợc
chia thành hai nhóm chính: lý thuyết điều khiển kinh điển và lý thuyết điều khiển
hiện đại. Nhóm phƣơng pháp điều khiển kinh điển dựa vào việc tuyến tính hóa đặc
tuyến của hệ thống xung quanh điểm làm việc, sau đó áp dụng các phƣơng pháp
điều khiển cho hệ tuyến tính. Lý thuyết điều khiển kinh điển đã bộc lộ ra những yếu
điểm về chất lƣợng cũng nhƣ độ tin cậy khi đối tƣợng điều khiển là hệ phi tuyến, và
nhất là những đối tƣợng không rõ hoặc khó xác định chính xác mô hình toán học,
cũng nhƣ chịu tác động của nhiễu.
Nhóm phƣơng pháp điều khiển hiện đại bao gồm điều khiển dùng giải thuật
mờ, điều khiển dùng giải thuật di truyền, điều khiển dùng mạng thần kinh nhân tạo
(Artificial Neural Network, trong đề tài này gọi tắt là mạng neural) … Điều khiển
mờ dựa vào việc xấp xĩ thông số của đối tƣợng dùng mô hình mờ. Các thông số này
sẽ đƣợc cập nhật liên tục trong quá trình điều khiển dựa vào sai số hồi tiếp. Phƣơng
pháp này vận dụng tính xấp xĩ hàm của hệ mờ và dùng luật thích nghi để cập nhật
thông số của hệ mờ theo tiêu chuẩn ổn định Lyapunov. Mạng neural khi mới hình
thành còn chƣa có tri thức về hệ thống, tri thức của mạng hình thành dần sau một
quá trình huấn luyện. Mạng neural đƣợc huấn luyện bằng tập dữ liệu, bao gồm kích

1


1 – Tổng Quan

thích ngõ vào và đáp ứng ngõ ra của hệ thống. Ta đƣa vào đầu vào mạng neural
những kích thích, mạng neural sẽ hình thành những đáp ứng tƣơng ứng ở ngõ ra,
đáp ứng phù hợp với từng loại kích thích sẽ đƣợc lƣu giữ, giai đoạn này đƣợc gọi là
giai đoạn học của mạng. Khi đã hình thành tri thức, chúng ta có thể dùng mạng
neural để điều khiển hệ thống mà nó đƣợc học.
Hệ con lắc ngƣợc quay là một hệ thống không ổn định và có ít ngõ vào điều

khiển hơn số bậc tự do. Đây là một hệ phi tuyến có hai điểm cân bằng: Điểm cân
bằng thẳng đứng hƣớng lên (vị trí lật ngƣợc) và điểm cân bằng thẳng đứng hƣớng
xuống dƣới (vị trí buông thõng), trong đó vị trí lật ngƣợc là điểm cân bằng không
ổn định. Bài toán đặt ra là thiết kế hệ thống điều khiển gồm hai phần: bộ điều khiển
lật ngƣợc (swing-up) có nhiệm vụ đƣa con lắc từ vị trí buông thõng lên vị trí lật
ngƣợc và bộ điều khiển cân bằng có nhiệm vụ giữ con lắc ổn định tại vị trí lật
ngƣợc.
Con lắc ngƣợc là đối tƣợng đại diện cho lớp các đối tƣợng có độ phi tuyến
cao và không ổn định. Con lắc ngƣợc quay một bậc tự do có ƣu điểm là hệ thống cơ
khí không quá phức tạp (so với con lắc ngƣợc xe), nó đƣợc sử dụng rộng rãi trong
việc giảng dạy và nghiên cứu lý thuyết điều khiển tự động cũng nhƣ xây dựng các
bộ điều khiển.
Con lắc ngƣợc quay một bậc tự do bao gồm 3 phần chính: phần cơ khí, phần
điện tử và phần chƣơng trình. Phần cơ khí bao gồm một thanh kim loại (con lắc)
quay quanh một trục thẳng đứng. Thanh kim loại đƣợc gắn gián tiếp với đầu của
một cánh tay nằm ngang thông qua một cảm biến để đo góc, đầu còn lại của cánh
tay đƣợc gắn vào trục quay của một động cơ DC. Động cơ DC đặt thẳng đứng để
cánh tay có thể quay trong một mặt phẳng nằm ngang. Do trong quá trình vận hành
cánh tay sẽ quay với tốc độ cao nên phần cơ khí cần phải đƣợc tính toán thiết kế
chính xác, chắc chắn nhằm tránh rung gây nhiễu và hƣ hỏng trong quá trình vận
hành. Phần điện tử gồm 3 phần nhỏ là: cảm biến đo góc cánh tay và con lắc, mạch
khuyếch đại công suất và mạch điều khiển. Phần cảm biến đóng vai trò hết sức
quan trọng, nó sẽ cung cấp cho bộ điều khiển: vị trí, hƣớng của cánh tay và con lắc.

2


1 – Tổng Quan

Có nhiều loại cảm biến đƣợc sử dụng để đo góc, trong đề tài này tác giả sử dụng Bộ

mã hóa vòng quay (Rotary Encorder) có độ phân giải 4096 xung/vòng. Tín hiệu từ
bộ mã hóa vòng quay đƣợc khuyếch đại, lọc nhiễu rồi kết nối vào module ngoai vi
eQEP (Enhanced Quadrature Encorder Pulse) của DSP. Tùy thuộc vào tín hiệu từ
các Bộ mã hóa vòng quay mà DSP đƣợc lập trình để xuất tín hiệu ngõ ra điều khiển
động cơ DC qua một mạch khuyếch đại công suất. Phần chƣơng trình: Chƣơng
trình điều khiển con lắc tác giả không viết trực tiếp trên Code Composer Studio mà
kết hợp với Matlab2012a để tận dụng các hàm tính toán rất mạnh, có sẵn trong
Matlab. Cách viết này về lý thuyết sẽ giúp ngƣời sử dụng tiết kiệm đƣợc thời gian
vì không cần phải nắm vững cấu trúc phần cứng của DSP và tập lệnh C của CCS
nhƣng thực tế do mã C sinh ra bởi Matlab sẽ không tối ƣu nên để chƣơng trình hoạt
động tốt đòi hỏi ngƣời lập trình phải nắm thật vững cách lập trình bằng Matlab, cấu
trúc mã C do Matlab sinh ra, cấu trúc phần cứng của DSP để có thể can thiệp và
hiệu chỉnh trực tiếp vào mã C này.
1.2. Lịch sử nghiên cứu
Hệ con lắc ngƣợc có cấu trúc đơn giản nhƣng mang đầy đủ dặc tính phi tuyến.
Do đó, hệ thống trên đƣợc sử dụng rất rộng rãi trong các thí nghiệm kiểm chứng lý
thuyết điều khiển. Một số dạng mô hình con lắc ngƣợc đƣợc sử dụng nhiều nhƣ:
pendubot, hệ con lắc ngƣợc xe, hệ con lắc ngƣợc quay…

Hình 1.1 Hệ Pendubot

Hình 1.2 Hệ con lắc ngược xe

3


1 – Tổng Quan

Hình 1.3 Hệ con lắc ngược quay


Hình 1.4 Hệ con lắc một bậc

Trong các mô hình trên, hệ pendubot và hệ con lắc ngƣợc xe có khuyết điểm
là khoảng hoạt động bị giới hạn vì cấu tạo phần cứng. Hệ con lắc một bậc là hệ
SISO nên mô hình còn mang tính đơn giản. Hệ con lắc ngƣợc quay không bị giới
hạn về không gian hoạt động và là một hệ SIMO nên giải thuật điều khiển phải đòi
hỏi phức tạp hơn, phù hợp cho các giải thuật điều khiển chuyên sâu. Quá trình điều
khiển con lắc ngƣợc quay gồm hai giai đoạn: điều khiển swing-up và điều khiển
cân bằng.
Đối với điều khiển cân bằng cho con lắc, các giải thuật phi tuyến đã đƣợc sử
dụng thành công nhƣ back-stepping [1], trƣợt [2], đặt cực [3]... Tuy nhiên, khuyết
điểm chung của của các giải thuật điều khiển trên là ta phải biết đƣợc mô hình toán
đối tƣợng và các thông số mô hình tƣơng ứng.
Theo hƣớng nghiên cứu của nhóm MA và BT [4] thiết kế bộ điều khiển Logic
mờ (Fuzzy) để điều khiển ổn định hệ thống con lắc ngƣợc. Kết quả đáp ứng của hệ
thống khi sử dụng bộ điều khiển Fuzzy hiệu quả hơn bộ điều khiển PID. Tuy nhiên
bộ điều khiển mờ hoạt động chủ yếu phụ thuộc vào kinh nghiệm và phƣơng pháp

4


1 – Tổng Quan

rút ra kết luận theo tƣ duy con ngƣời, sau đó đƣợc cài đặt vào máy tính dựa trên cơ
sở logic mờ.
Theo hƣớng nghiên cứu của MAK [2] sử dụng bộ điều khiển trƣợt để điều
khiển con lắc ngƣợc quay. Kết quả của nghiên cứu này là tác giả đã xác định đƣợc
hai mặt trƣợt theo định nghĩa đúng đắn của hàm Lyapunov, kết hợp hai mặt trƣợt
này để điều khiển con lắc ổn định. Tuy nhiên trong phƣơng pháp điều khiển trƣợt
việc tìm kiếm bề mặt trƣợt của hệ thống là không dễ dàng.

Theo hƣớng nghiên cứu của nhóm ANKN, RMTRI, MAA [6] thiết kế bộ điều
khiển trƣợt và bộ điều khiển PID để điều khiển cho con lắc ngƣợc. Mục tiêu của bài
báo này là so sánh chất lƣợng đáp ứng của hệ thống khi sử dụng hai bộ điều khiển
này để điều khiển ổn định cho con lắc ngƣợc. Cả hai bộ điều khiển này đƣợc mô
phỏng trên môi trƣờng Simulink Matlab và cho thấy đều có khả năng điều khiển
thành công mô hình con lắc. Kết quả cho thấy rằng khi sử dụng bộ điều khiển trƣợt
thì cho đáp ứng tốt hơn so với bộ điều khiển PID. Tuy nhiên, khi sử dụng hai bộ
điều khiển này để điều khiển con lắc thì vị trí góc lệch con lắc tƣơng đối lớn.
Để khắc phục các khuyết điểm trên của điều khiển phi tuyến cũng nhƣ tuyến
tính, một số tác giả sử dụng các giải thuật điều khiển thông minh nhƣ điều khiển
mờ [7], điều khiển dùng mạng neural [8], [9]. Việc sử dụng mạng neural [8], [9] đã
mô phỏng thành công một giải thuật điều khiển trƣớc đó (bộ điều khiển PID) để
điều khiển tốt đối tƣợng con lắc ngƣợc quay thực tế. Tuy nhiên, có nhiều loại mạng
neural đƣợc sử dụng trong thực tế. Vấn đề chọn mạng neural nào để sử dụng trong
điều khiển là một vấn đề cần đƣợc quan tâm.
Các kết quả trong [10] cho thấy cấu trúc mạng neural truyền thẳng khớp quan
hệ vào ra (fitting neural network) tốt hơn mạng truyền thẳng ghép liên tầng (casdefeed forward) và mạng truyền thẳng chuẩn (feed-forward). Đồng thời các nghiên
cứu trong [11] và [12] đã khắc phục đƣợc những nhƣợc điểm của thuật toán huấn
luyện lan truyền ngƣợc chuẩn (standard back-propagation) bằng các sử dụng thuật
toán lan truyền ngƣợc Levenberg-Marquardt (Levenberg-Marquardt back-

5


1 – Tổng Quan

propagation) và thuật toán lan truyền ngƣợc quy tắc hóa Bayesian (Bayesian
regularization backpropagation).
Đối với điều khiển swing-up cho con lắc thì một số tác giả dùng kinh nghiệm
để kích các xung có độ rộng khác nhau tùy vị trí con lắc để đƣa con lắc dần lên vị

trí cân bằng đã đạt đƣợc thành công trong thực tế [3], cũng nhƣ mô phỏng [16]. Khi
con lắc đến đƣợc vị trí gần với vị trí cân bằng thì giải thuật cân bằng mới đƣợc thực
hiện. Việc điều khiển nhƣ thế sẽ không áp dụng đƣợc các hiểu biết của chuyên gia
vào giải thuật cũng nhƣ làm giải thuật điều khiển không đƣợc mềm dẻo trong các
trạng thái hoạt động khác nhau của hệ con lắc ngƣợc quay. Do đó, việc áp dụng các
giải thuật thông minh cho điều khiển swing-up là cần thiết. Từ suy nghĩ đó, một số
tác giả nƣớc ngoài [16] cũng đã mô phỏng thành công việc điều khiển swing-up
cho con lắc ngƣợc dùng điều khiển mờ nhƣng kết quả thực tế lại không đƣợc đề
cập đến.
Furura K., Yamakita M [14] đã xây dựng thành công bộ điều khiển swing-up
hồi tiếp thành công. Tuy nhiên giải thuật này chỉ tác động lật ngƣợc trong 2 miền
không gian trạng thái nên chƣa tối ƣu đƣợc thời gian quá trình điều khiển lật
ngƣợc. Từ ý tƣởng này, tác giả đã xây dựng bộ điều khiển swing-up tác động trên
cả 4 miền không gian trạng thái, đƣợc trình bày ở chƣơng 5.
1.3. Mục tiêu và giới hạn của đề tài
Mục tiêu của đề tài là xây dựng hệ thống điều khiển con lắc ngƣợc, bao gồm 2
phần: Bộ điều khiển Swing-up dùng thuật toán logic mờ để đƣa con lắc từ vị trí
buông thõng lên vị trí lật ngƣợc và bộ điều khiển cân bằng dùng mạng neural
truyền thẳng khớp quan hệ vào ra để giữ con lắc ổn định tại vị trí này. Trƣớc tiên
cần xây dựng mô hình toán học của hệ thống con lắc ngƣợc, sử dụng Simulink của
Matlab mô phỏng hệ thống con lắc tuyến tính và phi tuyến. Khảo sát đáp ứng của
hệ thống với bộ điều khiển cân bằng dùng PID.
Tiếp theo là xây dựng bộ điều khiển cân bằng con lắc dùng mạng neural
truyền thẳng khớp quan hệ vào ra, đƣợc huấn luyện mạng bằng luật học lan truyền
ngƣợc Bayesian. Bộ điều khiển lật ngƣợc con lắc sẽ đƣợc xây dựng bằng giải thuật

6


1 – Tổng Quan


logic mờ để đƣa con lắc lên vị trí lật ngƣợc. Sau đó kết hợp bộ điều khiển lật ngƣợc
và bộ điều khiển cân bằng để có hệ thống điều khiển hoàn chỉnh.
Giới hạn của đề tài chỉ thiết kế và điều khiển mô hình con lắc ngƣợc quay giữ
cân bằng dùng mạng neural offline, chƣa xây dựng mạng neural online (mạng có
khả năng tự điều chỉnh trọng số trong quá trình điều khiển-tự học).
1.4. Phƣơng pháp nghiên cứu
Các phƣơng pháp nghiên cứu đƣợc sử dụng trong luận văn bao gồm:
 Khảo sát, phân tích tổng hợp
 Mô phỏng trên máy tính bằng phần mềm Matlab phiên bản 2012a
 Thí nghiệm trên mô hình thực và thu dữ liệu qua cổng com bằng phần mềm
Terminal. Sau đó tác giả xử lý dữ liệu và vẽ hình trên phần mềm Matlab. Các thí
nghiệm trên mô hình thực nghiệm đã đƣợc tác giả thực hiện tại xƣởng điện 4A,
trƣờng Đại Học Sƣ Phạm Kỹ Thuật TP HCM.
 Đánh giá kết quả dựa trên kết quả mô phỏng và thực nghiệm.
1.5. Nội dung luận văn
Phần còn lại của nội dung luận văn bao gồm:
Chƣơng 2. Mô hình toán học của hệ thống con lắc ngƣợc quay:
Phần đầu chƣơng này trình bày các bƣớc xây dựng phƣơng trình hệ thống
động lực học (tuyến tính và phi tuyến). Phần cuối của chƣơng thể hiện kết quả khảo
sát đáp ứng của hệ thống con lắc ngƣợc với bộ điều khiển PID trên mô phỏng
Matlab.
Chƣơng 3. Điều khiển cân bằng sử dụng mạng thần kinh nhân tạo
(ANN):
Phần đầu chƣơng này trình bày về mạng neural nhân tạo truyền thẳng nhiều
lớp. Phần này còn nêu lên các vấn đề: cấu trúc mạng, số lớp ẩn, số neural trong lớp
ẩn và phƣơng pháp chọn cấu trúc trong các ứng dụng cụ thể.
Phần giữa chƣơng, tác giả so sánh kết quả huấn luyện các loại mạng truyền
thẳng: truyền thẳng (feedforward), truyền thẳng ghép liên tầng (cascade
feedforward), truyền thẳng khớp quan hệ vào ra (fitting- neural network). Đông


7


1 – Tổng Quan

thời tác giả cũng trình bày phƣơng pháp điều khiển mạng neural theo kiểu học có
giám sát, luật học lan truyền ngƣợc. Phần cuối chƣơng trình bày bộ điều khiển cân
bằng con lắc sử dụng mạng neural truyền thẳng khớp quan hệ vào ra.
Chƣơng 4. Điều khiển lật ngƣợc sử dụng logic mờ (Fuzzy logic):
Trong chƣơng này, tác giả trình bày lý thuyết về điều khiển mờ có liên quan
tới ứng dụng trong đề tài này. Tiếp theo tác giả nêu lên giải thuật điều khiển lật
ngƣợc con lắc sử dụng để xây dựng bộ điều khiển swing-up. Phần cuối chƣơng thể
hiện kết quả áp dụng logic mờ trong điều khiển lật ngƣợc con lắc.
Chƣơng 5: Kết quả thực nghiệm:
Chƣơng này trình bày kết quả thực nghiệm điều khiển lật ngƣợc con lắc và
điều khiển cân bằng con lắc sử dụng hai bộ điều khiển đã trình bày trong chƣơng 4.
Đồng thời tác giả so sánh kết quả điều khiển cân bằng trong nghiên cứu này và kết
quả trong công trình [9].
Chƣơng 6. Kết luận và hƣớng phát triển của đề tài:
Trong chƣơng này, tác giả tóm tắt kết quả đạt đƣợc trong luận văn và hƣớng
phát triển của đề tài.

8


×