Professional Documents
Culture Documents
Luận Văn Thạc Sĩ Kỹ Thuật Cơ Điện Tử - Điều Khiển Con Lắc Ngược Quay - 1355922
Luận Văn Thạc Sĩ Kỹ Thuật Cơ Điện Tử - Điều Khiển Con Lắc Ngược Quay - 1355922
q
BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP.HCM
-------------------------------
Luận văn Thạc sĩ được bảo vệ tại Trường Đại Học Công Nghệ Tp.HCM
Thành phần Hội đồng đánh giá Luận văn Thạc sĩ gồm :
Xác nhận của Chủ tịch Hội đồng đánh giá Luận văn sau khi Luận văn đã được
• Nghiên cứu mô hình con lắc ngược quay: các thông số của hệ như hệ số ma
sát, moment quán tính…
• Tìm hiểu về điều khiển trượt.
• Xây dựng thuật toán điều khiển trượt tối ưu.
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi.
Các số liệu, kết quả trong luận văn là trung thực, một số được tham khảo và trích dẫn
từ các công trình công bố trên các tạp chí khoa học chuyên ngành có uy tín và trong
các kỷ yếu hội nghị quốc tế.
i
LỜI CẢM ƠN
Luận văn được thực hiện theo chương trình đào tạo thạc sĩ tại Trường Đại Học
Công Nghệ Thành Phố Hồ Chí Minh ( HUTECH ). Học viên xin chân thành gửi lời tri
ân sâu sắc đến quý thầy cô, bạn bè và gia đình.
Đến Thầy PGS.TS Nguyễn Thanh Phương đã tận tình hướng dẫn, giúp đỡ và
đóng góp những ý kiến quý báo để học viên hoàn thiện Luận văn.
Đến quý thầy cô Khoa Cơ – Điện – Điện tử Trường Đại Học Công Nghệ Thành
Phố Hồ Chí Minh đã trang bị cho học viên những kiến thức bổ ích.
Đến các bạn học viên lớp cao học Cơ – Điện – Tử niên khóa 2014.
Đến gia đình và người thân đã luôn tạo điều kiện, ủng hộ, động viên trong suốt
quá trình học tập và trong thời gian thực hiện luận văn này.
Học viên.
ii
TÓM TẮT
Hệ con lắc ngược quay là một đối tượng điều khiển phi tuyến thường được sử
dụng trong các phòng điều khiển tự động. Nhiều giải thuật được thử nghiệm trên đối
tượng này. Luận văn này sẽ trình bày việc thiết kế luật điều khiển trên cơ sở của kỹ
thuật điều khiển trượt cho hệ con lắc ngược quay. Mô hình toán học của hệ con lắc
ngược quay được xây dựng làm nền tảng cho việc thiết kế luật điều khiển. Luận điều
khiển trượt được thiết kế để thực hiện mục tiêu cân bằng và ổn định cho hệ con lắc
ngược. Luật điều khiển được kiểm chứng thông qua kết quả mô phỏng trên phần mềm
Matlab – Simulink. Mô hình vật lý của hệ con lắc ngược được xây dựng để kiểm chứng
giải thuật đã thiết kế.
iii
ABSTRACT
iv
MỤC LỤC
.......................................................................................................................................
.......................................................................................................................................
.......................................................................................................................................
Abstract ...................................................................................................................... iv
Danh mục các từ viết tắt và thuật ngữ đối chiếu .......................................................... ix
1.1 Tổng quan chung về lĩnh vực nghiên cứu, các kết quả nghiên cứu trong và
1.1.2 Các kết quả nghiên cứu trong và ngoài nước đã công bố. .......................... 2
v
1.3.1 Nhiệm vụ của đề tài................................................................................... 3
2.2.2.2 Xây dựng phương trình Filippov cho hệ động học ................................ 13
2.2.3 Luật điều khiển chuyển mạch xấp xỉ liên tục. .......................................... 18
3.2 Thiết lập mô hình toán học hệ thống con lắc ngược quay. .............................. 25
vi
Chương 4. MÔ PHỎNG HỆ THỐNG ĐIỀU KHIỂN. ........................................... 37
4.1 Xây dựng mô hình mô phỏng hệ thống con lắc ngược quay............................ 37
4.3 Xây dựng mô hình khối điều khiển trượt ( SMC = Sliding Mode Control ). ... 40
4.3.1 Phương trình tín hiệu điều khiển u ( theo phương trình 3.24 ).................. 40
4.4 Mô phỏng con lắc ngược quay dùng thuật toán LQR. ..................................... 48
4.4.1 Mô hình khối RIP dùng thuật toán LQR trong Matlab/Simulink. ............. 48
4.6 Mô phỏng con lắc ngược quay dùng Swing up. .............................................. 52
vii
a. Mạch nguồn ................................................................................................ 56
viii
DANH MỤC CÁC TỪ VIẾT TẮT VÀ THUẬT NGỮ ĐỐI CHIẾU
LQR = Linear Quadratic Regulator : Bộ điều khiển toàn phương tuyến tính.
MINO = Multiple Input – Multioutput : Nhiều ngõ vào – Nhiều ngõ ra.
SIMO = Single Input – Multiple Output : Một ngõ vào – Nhiều ngõ ra.
Encoder : Bộ mã hóa.
ix
DANH SÁCH CÁC BẢNG
Bảng 3 : Mô tả các thông số sử dụng trong mô hình hệ thống. .................................... 27
Bảng 4 : Các thông số mô phỏng được chọn. .............................................................. 42
x
DANH SÁCH CÁC HÌNH
Hình 2.5 : Xây dựng Filippov của hệ thống động lực cân bằng trong sliding model .... 14
Hình 2.6.b : Điều khiển nội suy trong lớp biên ........................................................... 19
Hình 2.7 : Ngõ vào điều khiển và thực thi bám ........................................................... 20
Hình 2.8 : Ngõ vào tín hiệu điều khiển và thực thi bám . ............................................ 20
Hình 2.10 : Cấu trúc vòng kín của sai lệch hệ thống. .................................................. 22
Hình 2.11 : Quỹ đạo S với lớp biên thay đổi theo thời gian......................................... 23
Hình 2.12 : Tín hiệu điều khiển ngõ vào và thực thi bám. ........................................... 24
Hình 3.2 : Minh họa toán học hệ con lắc ngược quay.................................................. 26
Hình 3.3 : Phân tích lực tác dụng lên cánh tay và con lắc. ........................................... 27
xi
Hình 3.4 : Đồ thị hàm Sign và hàm Sat. ...................................................................... 34
Hình 4.2 : Các khối chức năng trong khối RIP trong Simulink. .................................. 38
Hình 4.3 : Đáp ứng góc con lắc và góc cánh tay ở vị trí thẳng hướng lên ( TH1 ). ...... 38
Hình 4.4 : Đáp ứng góc con lắc và góc cánh tay ở vị trí thẳng hướng lên ( TH2 ). ...... 39
Hình 4.5 : Đáp ứng góc con lắc và góc cánh tay ở vị trí thẳng hướng lên. ( TH3 ) ...... 39
Hình 4.7 : Các khối chức năng bên trong khối SMC trong Simulink. .......................... 41
Hình 4.9 : Đáp ứng góc con lắc và tín hiệu điện áp điều khiển ( TH1 ). ...................... 43
Hình 4.10 : Đáp ứng góc cánh tay và tín hiệu điện áp điều khiển ( TH1 ) . ................. 44
Hình 4.14 : Đáp ứng góc con lắc và tín hiệu điện áp điều khiển ( TH2 ) .................... 47
Hình 4.16 : Đáp ứng góc quay con lắc với bộ điều khiển LQR .. ................................ 49
xii
Hình 4.17 : Đáp ứng góc quay cánh tay với bộ điều khiển LQR ................................. 50
Hình 4.18 : So sánh đáp ứng góc quay con lắc ............................................................ 51
Hình 4.19 : So sánh đáp ứng góc quay cánh tay ......................................................... 51
Hình 4.21 : Đáp ứng khi điều khiển Swing – up. ........................................................ 53
Hình 5.1 : Mô hình tổng thể con lắc ngược quay ........................................................ 54
Hình 5.6 : Sơ đồ các linh kiện của Arduino Mega 2560 ............................................. 59
xiii
1
Chương 1
TỔNG QUAN
Chương này trình bày những nội dung tổng quan liên quan đến đề tài nói
chung, hệ thống con lắc ngược quay và ứng dụng trong thực tế, các kết quả nghiên
cứu trong và ngoài nước. Trên cơ sở đó học viên đưa ra mục tiêu của đề tài, kết quả
dự kiến và phương pháp nghiên cứu.
1.1 Tổng quan chung về lĩnh vực nghiên cứu, các kết quả nghiên cứu trong và
ngoài nước đã công bố
Con lắc ngược là một vấn đề kinh điển trong điều khiển hệ thống phi tuyến
bởi những đặc tính không ổn định tại điểm cân bằng, được sử dụng trong các
Trường đại học trên khắp thế giới. Đây là một hệ thống SIMO điển hình ( một ngõ
vào nhiều ngõ ra ) và là mô hình lý tưởng thường được dùng để kiểm tra các thuật
toán điều khiển ( như LQR, PID, fuzzy logic, điều khiển mờ, mạng nơron …).
Mô hình con lắc ngược quay là một hệ thống máy gồm hai khâu : cánh tay
( arm ) và con lắc ( pendulum ). Cánh tay gắn vào động cơ DC quay quanh trục
thẳng đứng, con lắc gắn vào trục encoder ở cuối cánh tay tự do trong mặt phẳng
vuông góc với cánh tay.
Hệ thống con lắc ngược có hai điểm cân bằng : ổn định và không ổn định. Ở
trạng thái cân bằng ổn định con lắc sẽ hướng xuống phía dưới và khi không có lực
nào tác động thì hệ thống mặc nhiên ở trạng thái này. Ở trạng thái cân bằng không
ổn định vị trí của con lắc sẽ hướng lên và vì thế cần một lực tác động để duy trì
trạng thái này. Vì vậy mục tiêu điều khiển con lắc ngược quay là duy trì trạng thái
đứng cân bằng hướng lên của con lắc. Đây là vấn đề cần nghiên cứu trong luận văn.
1.1.2 Các kết quả nghiên cứu trong và ngoài nước đã công bố
– Bài báo “ Điều Khiển Hệ Thống Con Lắc Ngược Quay ” của các tác giả : Vũ
Chấn Hưng, Đặng Thành Phu, Hoàng Văn Tuấn đã trình bày khái quát về cấu trúc
vật lý, mô hình động học của hệ thống con lắc ngược. Tác giả đã thiết kế hệ thống
điều khiển phản hồi trạng thái cụ thể cho hệ thống con lắc ngược quay. [4]
– Bài báo “ Điều khiển Cân Bằng Con Lắc Ngược Sử Dụng Thuật Toán PD
Mờ ” của các tác giả Nguyễn Văn Khanh, Nguyễn Ngô Phong, Đặng Hải Đăng đã
trình bày phương pháp điều khiển thời gian thực cho hệ thống con lắc ngược với bộ
điều khiển Fuzzy PD với kết quả đáp ứng tốt hơn so với bộ điều khiển PID. [5]
– Bài báo “ Điều khiển con lắc ngược hai bậc xoay tự do dùng mạng nơ – rôn”
của các tác giả Nguyễn Đức Minh, Dương Hoài Nghĩa, Nguyễn Đức Thành đã trình
bày điều khiển thích nghi để hiệu chỉnh sự sai số mô hình nhận dạng và mô hình
thật thông qua đó thiết kế bộ điều khiển trực tiếp không qua nhận dạng dựa trên cơ
sở luật mờ, giải thuật di truyền. Tuy nhiên phương pháp này tốn nhiều thời gian,
hiệu quả không cao khi đối tượng là các hệ thống phi tuyến cao và có độ bất ổn lớn.
[6]
3
– Trong [8] Khalil Sultan đã nghiên cứu điều khiển con lắc đơn trên xe bằng
phương pháp PID kết hợp với mô phỏng Matlab để mô phỏng và giữ con lắc ở vị trí
cân bằng thẳng đứng với thời gian ổn định của con lắc khoảng 4.5s nhưng mới chỉ ở
trong phòng thí nghiệm.
– Bài báo “ Thiết kế và so sánh hiệu năng của bộ điều khiển LQR và LQR dựa
trên logic mờ ” của tác giả Narinder Singh Bhangal – đã thiết kế thành công bộ điều
khiển LQR dựa trên logic mờ và bộ điều khiển cho con lắc ngược kép, kết quả thiết
kế cho phép điều khiển các góc của con lắc ngược kép và vị trí xe. Tác giả cũng chỉ
ra được hiệu năng của bộ điều khiển mờ tốt hơn nhiều so với bộ điều khiển LQR.
[10]
Từ các kết quả nghiên cứu ở trên dựa trên lý thuyết điều khiển trượt, tác giả
chọn phương pháp điều khiển trượt để ổn định cho hệ con lắc ngược quay.
Mục tiêu của đề tài là nghiên cứu điều khiển trượt để điều khiển các đối
tượng phi tuyến mà cụ thể là hệ thống con lắc ngược quay. Từ đó có cái nhìn
tổng quan về điều khiển trượt so với các phương pháp điều khiển khác.
– Xác định mô hình toán học của hệ thống con lắc ngược quay.
Đề tài chỉ thực hiện trong thời gian ngắn chỉ mang tính chất nghiên cứu và
kiểm tra thuật toán điều khiển và tính bền vững của bộ điều khiển trượt trong việc
điều khiển hệ thống con lắc ngược quay.
– Nghiên cứu điều khiển trượt thông qua các sách và các bài báo trong và ngoài
nước.
– Tiến hành nghiên cứu các tài liệu để hiểu về hệ thống con lắc ngược.
– Tìm hiểu các đề tài đã thực hiện về hệ thống con lắc ngược, nhận dạng các vấn đề
cần giải quyết phục vụ cho việc thiết kế bộ điều khiển.
– Xây dựng mô hình toán học của hệ thống con lắc ngược quay.
Chương 2
CƠ SỞ LÝ THUYẾT
Vấn đề của điều khiển phi tuyến là giải quyết việc phân tích và thiết kế hệ
thống điều khiển phi tuyến [3]. Chẳn hạn như hệ thống bao gồm ít nhất một thành
phần phi tuyến. Trong phân tích, một hệ thống vòng lặp phi tuyến giả định được
thiết kế và chúng ta mong muốn xác định được đặc tính trạng thái của hệ thống.
Trong việc thiết kế chúng ta phải có đối tượng điều khiển và một vài đặc tính trạng
thái vòng lặp kín của hệ thống, và nhiệm vụ của chúng ta là xây dựng bộ điều khiển
để hệ thống vòng lặp kín đi đến các đặc tính mong muốn. Trong thực tế kết quả của
việc phân tích và thiết kế có mối quan hệ chặt chẽ với nhau, bởi vì thiết kế hệ thống
điều khiển phi tuyến thường bao gồm xử lý lặp lại của việc phân tích và thiết kế.
Điều khiển tuyến tính là một chủ đề hoàn thiện với nhiều phương pháp khác
nhau và có thành công với nhiều ứng dụng công nghiệp trong lịch sử. Do đó nhiều
nhà nghiên cứu và thiết kế trong các lĩnh vực điều khiển, robot, xử lý quá trình và
kỹ thuật y sinh…..gần đây đã quan tâm tích cực đến phát triển và ứng dụng các
phương pháp điều khiển phi tuyến với những lý do sau :
– Cải tiến các hệ thống đã tồn tại : phương pháp điều khiển phi tuyến dựa
vào giả thuyết của các vùng hoạt động nhỏ của mô hình tuyến tính. Khi yêu cầu
vùng hoạt động lớn, điều khiển tuyến tính trở nên khó khăn hay không ổn định, bởi
vì đặc tính phi tuyến trong hệ thống không được bù chính xác. Những bộ điều khiển
phi tuyến có thể điều khiển những đặc tính phi tuyến trong vùng hoạt động lớn một
cách chính xác. Điểm này dễ dàng được minh họa trong điều khiển chuyển động
của robot. Khi một bộ điều khiển tuyến tính được sử dụng để điều khiển chuyển
động của robot, nó không quan tâm đến những lực liên kết phi tuyến với chuyển
6
động các liên kết robot. Độ chính xác của bộ điều khiển giảm nhanh khi tốc độ
chuyển động tăng lên, bởi vì các thành phần lực tác động phức tạp như lực Coriolis
và lực hướng tâm thay đổi theo bình phương của tốc độ. Vì vậy để đạt được độ
chính xác định trước trong các tác vụ của robot như là cầm và đặt, hàn hình cung và
cắt bằng tia laser, tốc độ di chuyển của robot như thế phải giữ ở tốc độ thấp. Mặc
khác quan niệm đơn giản về bộ điều khiển phi tuyến, thông thường được gọi tính
toán momen của bộ điều khiển, có thể bù đầy các thành phần lực phi tuyến trong
chuyển động của robot và làm cho robot được điều khiển với độ chính xác cao cho
tốc độ cao và không gian làm việc lớn.
– Phân tích đặc tính phi tuyến : một giả thiết khác của điều khiển phi tuyến là
tính mô hình hệ thống đó là được thực sự tuyến tính hóa. Tuy nhiên trong hệ thống
điều khiển có nhiều thành phần phi tuyến gián đoạn tự nhiên không cho phép tuyến
tính hóa gần đúng. Những điều này được gọi là “ đặc tuyến phi tuyến cứng ” bao
gồm ma sát Coulomb, bảo hòa, những vùng chết, phản xung, và hiện tượng trễ, và
thường thấy trong kỹ thuật điều khiển. Những tác động không được suy ra từ những
phương pháp tuyến tính và những kỹ thuật điều khiển phi tuyến phải được phát triển
để dự đoán hiệu suất của hệ thống trong sự có mặt của các đặc tính phi tuyến. Bởi vì
các đặc tính phi tuyến thường là nguyên nhân sinh ra các trạng thái không mong
muốn của hệ thống điều khiển, như là tính không ổn định hay những chu trình
không xác định giới hạn, ảnh hưởng của chúng phải được dự đoán trước và được bù
một cách chính xác.
– Giải quyết tính không ổn định của mô hình: trong việc thiết kế những bộ
điều khiển tuyến tính, chúng ta giả thiết rằng các thông số của mô hình hệ thống
được biết một cách hợp lý. Tuy nhiên nhiều vấn đề điều khiển bao gồm tính bất
định trong những thông số của mô hình. Điều này có thể do sự thay đổi chậm theo
thời gian của các thông số ( như áp suất không khí trong lúc máy bay đang bay ),
hay sự thay đổi đột ngột trong các thông số ( như là các thông số quán tính của
robot khi một đối tượng mới được nắm giữ ). Một bộ điều khiển tuyến tính dựa trên
7
những giá trị cũ hay các giá trị không đúng của các thông số mô hình có thể dẫn đến
giảm hiệu suất hay thậm chí không ổn định. Đặc tính phi tuyến có thể được giới
thiệu trong bộ điều khiển để điều khiển hệ thống để mà mô hình không ổn định có
thể được chấp nhận. Hai loại của những bộ điều khiển phi tuyến cho mục đích là bộ
điều khiển mạnh và bộ điều khiển thích nghi.
– Tính đơn giản trong thiết kế : những việc thiết kế bộ điều khiển phi tuyến
tốt có thể được đơn giản và trực giác hơn các phần tuyến tính tương ứng. Việc thiết
kế bộ điều khiển là gắn liền với tính chất vật lý của đối tượng. Lấy một ví dụ đơn
giản, thảo luận về Swing – up con lắc được gắn vào khớp, theo phương thẳng đứng
trên bề mặt nhẵn. Bắt đầu từ một vài góc ban đầu, con lắc sẽ dao động và tăng lên
rồi dừng lại theo chiều dọc. Thông qua trạng thái của con lắc ngược có thể được
phân tích trạng thái cân bằng bởi tuyến tính hóa hệ thống, bản thân việc ổn định có
mối quan hệ với nhiều trị số đặc trưng của hệ thống ma trận tuyến tính. Tổng năng
lượng cơ học của hệ thống bị tiêu tan tăng lên bởi những lực ma sát khác nhau ( ví
dụ như : khớp nối ) để mà con lắc đến vị trí nơi năng lượng nhỏ nhất.
Có những lý do liên quan hoặc không liên quan để sử dụng kỹ thuật điều
khiển phi tuyến như là tiêu tốn và hiệu suất tối ưu. Trong thiết lập công nghiệp, sự
mở rộng của kỹ thuật tuyến tính để diều khiển những máy móc cấp cao với những
gợi ý về các đặc tính phi tuyến có thể dẫn đến tiêu tốn nhiều chi phí cao và qua
những giai đoạn dài. Điều khiển tuyến tính có thể đòi hỏi các cảm biến và cơ cấu
chấp hành có chất lượng cao để tạo ra trạng thái tuyến tính trong vùng hoạt động
theo lý thuyết, trong khi điều khiển phi tuyến có thể cho phép sử dụng các thành
phần ít tốn kém hơn những đặc tính phi tuyến. Để tối ưu hóa hiệu suất, chúng ta có
thể theo các bộ điều khiển dạng bang – bang, có thể tạo ra đáp ứng nhanh, nhưng
vốn đã phi tuyến.
Vì vậy đối tượng của điều khiển phi tuyến là một phạm vi quan trọng trong
điều khiển tự động. Nghiên cứu kỹ thuật cơ bản của việc phân tích và thiết kế điều
khiển phi tuyến có thể nâng cao đáng kể năng lực của một kỹ sư điều khiển để mà
8
thực thi các vấn đề điều khiển một cách hiệu quả. Nó cũng cung cấp sự hiểu biết về
thế giới thực mọi thứ vốn đã phi tuyến. Trong quá khứ ứng dụng những phương
pháp của điều khiển phi tuyến bị giới hạn bởi của việc tính toán khó khăn kết hợp
với việc phân tích và thiết kế điều khiển phi tuyến. Trong những năm gần đây, các
máy tính với công nghệ tiên tiến giải quyết tốt các vấn đề này. Vì thế, có nhiều sự
nghiên cứu và ứng dụng các phương pháp điều khiển phi tuyến. Chủ đề của việc
thiết kế bộ điều khiển phi tuyến cho tầm hoạt động lớn thu hút sự chú ý đặc biệt bởi
vì sự phát triển vượt bậc của các bộ vi xử lý đã làm cho thực thi của những bộ điều
khiển phi tuyến trở nên đơn giản hơn, ngoài ra còn có công nghệ hiện đại như là
những robot có tốc độ và độ chính xác cao hay máy bay có hiệu suất cao. Điều
khiển phi tuyến chiếm giữ một vị trí quan trọng trong kỹ thuật điều khiển thông qua
việc ngày càng tăng số lượng bài báo và bài báo cáo về nghiên cứu và ứng dụng
điều khiển phi tuyến.
Điều khiển cấu trúc động với điều khiển trượt đề xuất và soạn thảo bởi vài
nhà nghiên cứu thuộc Liên xô cũ, bắt đầu từ những năm 60 ( Emel’yanov và Taran,
1962; Emel’yanov, 1970; Utkin, 1974. Những ý tưởng này không xuất hiện ngoài
nước Nga cho tới những thập niên 70 khi một quyển sách của Itkis ( Itkis, 1976 ) và
một bài báo tổng quan của Utkin ( Utkin, 1977 ) được suất bản tại nước Anh. Kể từ
đó điều khiển trượt được phát triển và được áp dụng thiết kế các bộ điều khiển cho
các hệ thống bao gồm những hệ thống phi tuyến, hệ thống MIMO, mô hình rời rạc
theo thời gian, những hệ thống có kích thước lớn.
Về cơ bản, điều khiển trượt sử dụng luật điều khiển hồi tiếp gián đoạn để thi
hành ổn định cho hệ thống, một bề mặt đặc biệt bên trong không gian trạng thái. Hệ
thống động khi giới hạn bởi mặt trượt thì được mô tả như là ý tưởng chuyển động
trượt và đại diện cho hệ thống điều khiển hành vi.
9
Thuận lợi đối với một sự chuyển động được nhân đôi : đầu tiên hệ thống vận
hành như là một hệ thống được giảm bậc so với đối tượng gốc. Thứ hai sự di
chuyển trên mặt trượt của hệ thống làm cho hệ thống không nhạy với nhiễu và sự
không ổn định của mô hình.
Xét hệ thống động học phi tuyến có phương trình toán học mô tả như (2.1) :
𝑦=𝑥
Trong đó :
f(x) : là hàm chưa biết, nhưng bị chặn bởi hàm phi tuyến.
Điều khiển đối tượng : để đạt được trạng thái x bám theo các trạng thái thay
(𝑛−1)
đổi theo thời gian 𝑥 = [𝑥𝑑 , 𝑥̇ 𝑑 … 𝑥𝑑 ] của mô hình không chính xác theo f(x) và
b(x).
Điều kiện : để đạt được nhiệm vụ điều khiển bám sử dụng tín hiệu điều khiển
hữu hạn u, trạng thái mong muốn ban đầu phải thỏa :
𝑥� = 𝑥 − 𝑥𝑑
10
– Mặt trượt biến đổi theo thời gian S(t) trong không gian trạng thái R(n) bởi biểu
thức vô hướng s(x;t) = 0, trong đó :
𝑑 𝑛−1
𝑠(𝑥; 𝑡) = � + λ� . 𝑥� (2.3)
𝑑𝑡
Với λ là hằng số
n = 3 → 𝑠 = 𝑥�̈ + 2λ𝑥�̇ + λ2 𝑥�
Điều kiện ban đầu (2.2), vấn đề bám x=x d tương đương với các giá trị còn lại
trên mặt trượt S(t)cho tất cả các giá trị t >0 ; thực vậy s =0 đại diện cho một phương
trình vi phân tuyến tính mà các nghiệm của nó là 𝑥� = 0, thỏa điều kiện ban đầu
(2.2) ⇒ Vấn đề bám của vector x d kích thước n có thể được giảm để mà giữ s tại
không.
Đường biên của s có thể được tịnh tiến trực tiếp sang đường biên của vector
sai lệch bám 𝑥� và vì thế giá trị vô hướng s đặc trưng cho việc đo lường đúng của
việc thực hiện điều khiển bám. Giả thiết rằng 𝑥� (0) = 0
Chúng ta có : ∀t ≥ 0, |𝑠(𝑡)| ≤ ∅
Trong đó : 𝜀 = ∅⁄λ𝑛−1
Từ định nghĩa (2.3), sai lệch 𝑥� đạt được từ s thông qua một chuỗi bộ lọc
thông thấp bậc nhất được biểu diễn như trong Hình 2.1a, trong đó 𝑝 = (𝑑 ⁄𝑑𝑡) là
toán tử Laplace.
11
s 1 y1 1 1 𝑥�
….
𝑝+λ 𝑝+λ 𝑝+λ
n – 1 khối
Hình 2.1a : Tính toán giới hạn biên trên 𝑥�
𝑡
y 1 là ngõ ra bộ lọc thứ nhất 𝑦1 = ∫0 𝑒 −λ𝑡(𝑡−𝑇) 𝑠(𝑇) 𝑡ừ |𝑠| ≤ ∅ chúng ta đạt được :
𝑡
|𝑦1 (𝑡)| = ∅ � 𝑒 −λ(𝑡−𝑇) 𝑠(𝑇)𝑑𝑇 = (∅⁄λ)(1 − 𝑒 −λ𝑡 ) ≤ ∅⁄λ
0
Giống như 𝑥� (𝑖) có thể được thông qua chuỗi trong Hình 2.1b
s 1 1 z1 1 1 𝑥� (𝑖)
…. ….
𝑝+λ 𝑝+λ 𝑝+λ 𝑝+λ
n – i −1 khối n – 1 khối
Từ kết quả ở trên, |𝑧| ≤ 𝜑⁄λ𝑛−1−𝑖 , trong đó z 1 là ngõ ra thứ i của bộ lọc ( n−1−i ).
𝑝 λ ∅ λ 𝑖
Ngoài ra chú ý rằng : =1− ⇒�𝑥� 𝑖 � ≤ � 𝑛−1−𝑖
� �1 + � = (2λ)𝑖 là đường
𝑝+λ 𝑝+λ 𝑥 λ
biên. Trong trường hợp 𝑥�(0) ≠ 0 , đường biên (2.4) đạt được một cách tiệm cận, ví
dụ trong một khoảng thời gian ngắn (𝑛 − 1)⁄λ . Phương trình bậc nhất đã rút gọn
giữ cho s tại không bây giờ có thể đạt được bởi chọn luật điều khiển u của (2.1)
cũng như bên ngoài S(t)
1 𝑑
𝑠 2 ≤ −𝛾|𝑠| (2.5)
2 𝑑𝑡
Trong đó γ là một hằng số dương. Trạng thái (2.5) là bình phương khoảng
cách tới mặt trượt, giảm quỹ đạo của hệ thống, vì thế quỹ đạo bị ràng buộc đến mặt
trượt S(t), như hình minh họa trong Hình 2.2
12
Điều kiện (2.5) được gọi là điều kiện trượt. S(t) theo (2.5) được gọi là bề mặt
trượt. Hệ thống có trạng thái như vậy trên bề mặt trượt được gọi là chế độ trượt hay
kiểu trượt. Thỏa mãn (2.5) đảm bảo rằng nếu điều kiện (2.2) không chính xác thì
mặt S(t) sẽ đạt được trong một khoảng thời gian nhỏ hơn |𝑠(𝑡 = 0)|⁄𝛾 .
Hệ thống có trạng thái điển hình bao gồm điều kiện trượt thỏa (2.5) được
minh họa trong Hình 2.3 với n = 2
Khi điều khiển chuyển mạch không hoàn hảo, xảy ra hiện tượng chattering
được biểu diễn như Hình 2.4
Hệ động lực học trong kiểu trượt có thể được viết như sau : 𝑠̇ = 0 (2.6)
Qua việc giải quyết (2.6), chúng ta đạt được một biểu thức u được gọi là điều khiển
cân bằng u eq , có thể được giải thích khi luật điều khiển liên tục để duy trì 𝑠̇ = 0 nếu
R R
𝑢𝑒𝑞 → 𝑢 = −𝑓 + 𝑥̈ = −𝑓 + (𝑥̈ 𝑑 + 𝑥̈ )
Về mặt hình học, điều khiển cân bằng có thể được xây dựng như sau :
Ví dụ, khi kết hợp một trong những giá trị của u trên cả hai mặt của S(t). giá trị α có
thể đạt được từ (2.6) phù hợp với yêu cầu quỹ đạo hệ thống tiếp tuyến với mặt trượt.
Hình 2.5 : Xây dựng Filippov của hệ thống động lực cân bằng trong sliding mode
𝑓 = −𝑎 (𝑡)𝑥̇ 2 𝑐𝑜𝑠3𝑥 là hàm tuyến tính chưa biết với 1 ≤ a ≤ 2. 𝑓̂ là giá trị ước lượng
của f , giả sử rằng ước lượng sai lệch được giới hạn bởi hàm chưa biết 𝐹 = 𝐹(𝑥, 𝑥̇ )
như sau : �𝑓̂ − 𝑓� ≤ 𝐹
𝑑
𝑠 = � + λ� 𝑥� = 𝑥�̇ + λ𝑥� (2.11)
𝑑𝑡
𝑢 → 𝑢� = 𝑓̂ − 𝑥̈ 𝑑 + λ𝑥�̇ (2.13)
15
𝑢� có thể được xem như là phần điều khiển cân bằng tốt nhất. Để phân tầng điều
khiển trượt (2.5), mặc dù f không chính xác, chúng ta cộng 𝑢� một phần không liên
tục thông qua s=0
𝑢 = 𝑢� − 𝑘. 𝑠𝑔𝑛(𝑠) (2.14)
Việc chọn 𝑘 = 𝑘(𝑥, 𝑥̇ ) trong (2.14) đủ lớn, chúng ta có thể chắc chắn rằng (2.5)
được kiểm định lại. Thực vậy, từ (2.12) và (2.14) :
1 𝑑
𝑠 2 = 𝑠̇ 𝑠 = �𝑓 − 𝑓̂ − 𝑘𝑠𝑔𝑛(𝑠)�𝑠 = �𝑓 − 𝑓̂�𝑠 − 𝑘|𝑠|
2 𝑑𝑡
1 𝑑
Chúng ta đạt được từ (2.5) 𝑠 2 ≤ −𝛾|𝑠| như mong muốn.
2 𝑑𝑡
Chú ý :
- Từ (2.15) tín hiệu điều khiển gián đoạn k đi qua mặt trượt s=0 tăng lên với
sự mở rộng của các tham số dễ biến đổi.
- 𝑓̂ và F cần không chỉ phụ thuộc vào x hay 𝑥̇ . Chúng có thể là hàm được
với nhiều biến bên ngoài (2.8), và có thể phụ thuộc vào thời gian.
- Với hệ thống bậc nhất, kiểu trượt có thể được giải thích rằng “Nếu sai lệch
âm, đưa nhanh sai lệch về phía chiều dương, và ngược lại”. Nó không đúng cho hệ
thống có bậc cao.
Một kết quả tương tự sẽ đạt được bằng cách sử dụng điều khiển tích phân, ví
𝑡
dụ ∫0 𝑥� (𝑟)𝑑𝑟 được chú ý đến. Hệ thống (2.8) bây giờ là hệ bậc 3 và (2.3) là :
16
2 𝑡 𝑡
𝑑
𝑠 = � + λ� �� 𝑥�𝑑𝑟� = 𝑥�̇ + 2λ𝑥� + λ � 𝑥�𝑑𝑟
2
𝑑𝑡 0 0
𝑡
𝑠 = 𝑥�̇ + 2λ𝑥� + λ2 ∫0 𝑥�𝑑𝑟 − 𝑥�̇ (0) − 2λ𝑥�(0) (2.16)
Trong đó phần khuếch đại b chưa được biết, nhưng biết giới hạn
Từ đó tín hiệu điều khiển đưa vào được nhân lên nhiều lần, ước lượng 𝑏� của độ
khuếch đại b thỏa 𝑏� = �𝑏𝑚𝑖𝑛 𝑏𝑚𝑎𝑥 đường biên (2.18) có thể được viết lại như sau :
𝑏�
𝛽 −1 ≤ ≤ 𝛽 (2.19)
𝑏
Trong đó, 𝛽 = �𝑏𝑚𝑖𝑛 /𝑏𝑚𝑎𝑥 từ đó luật điều khiển sẽ được thiết kế để đưa đến
phần biên nhanh gấp nhiều lần (2.19), chúng ta gọi β là hệ số khuếch đại biên, với s
và 𝑢� được định nghĩa trước đó. Chúng ta có thể dễ dàng có được luật điều khiển :
Thỏa mãn điều kiện trượt. Thực vậy, sử dụng (2.20) trong biểu thức của 𝑠̇ ta được :
Điều kiện (2.5) có thể được viết lại 𝑠𝑠̇ ≤ −𝛾|𝑠| = −𝛾𝑠𝑠𝑔𝑛(𝑠) vì vậy chúng ta có :
hay :
��𝑓 − 𝑏𝑏� −1𝑓̂� + �1 − 𝑏𝑏� −1 ��−𝑥̈ 𝑑 + λ𝑥�̇ �� 𝑠 + 𝛾𝑠𝑠𝑔𝑛 (𝑠) ≤ �𝑏𝑏� −1 𝑘𝑠𝑔𝑛(𝑠)� 𝑠
𝑘 ≥ 𝑏𝑏� −1𝐹 + 𝛾𝑏𝑏� −1 + �𝑏𝑏� −1 − 1�. �𝑓̂ − 𝑥̈ 𝑑 + λ𝑥�̇ � tới (2.21). Chú ý rằng việc điều
khiển không liên tục được tăng để đưa vào phần tính toán độ khuếch đại b.
Ví dụ 1: Một mô hình đơn giản của một thiết bị chuyển động dưới nước có thể được
viết lại như sau : 𝑚𝑥̈ + 𝑐𝑥̇ |𝑥̇ | = 𝑢 (2.22)
trong thực tế m và c không được biết chính xác, bởi vì chỉ mô tả sơ sài về tác động
của hệ thống động lực học về chuyển động. Từ (2.3) ta có :
và luật điều khiển thỏa điều kiện trượt có thể được nhận từ :
Với k là hệ số từ (2.21) :
Chú ý rằng biểu thức (2.24) ngắn gọn hơn dạng tổng quát (2.21), ngược lại
cấu trúc đơn giản hơn và u có thể bù trực tiếp cho 𝑐̂ 𝑥̇ |𝑥̇ | , không kể đến sự thay đổi
của m trong dạng tổng quát có thể nhận thấy được vấn đề này.
Các ứng dụng chính của bộ điều khiển chuyển mạch ở trên bao gồm việc
điều khiển các động cơ điện và sử dụng các rung động để giảm tác động của ma sát
Trong dạng tổng quát, hiện tượng chattering phải được loại trừ để cho bộ
điều khiển làm việc chính xác. Điều này có thể đạt được bởi việc san bằng điều
khiển không liên tục trong lớp biên gần với bề mặt chuyển mạch
Trong đó ∅ là độ dày của đường biên và 𝜀 = ∅/λ𝑛−1 là độ dày của đường biên.
- Biên ngoài của B(t), chọn luật điều khiển u như trên (2.5)
- Biên trong B(t), nội suy để đạt được u- thay thế biểu thức của u thành phần
sgn(s) bởi 𝑠/∅
Nhận được kết quả từ (2.25), điều này đảm bảo độ chinh xác ε, và dạng đảm
bảo cho tất cả các quỹ đạo nằm bên trong B(t=0)
Ví dụ 2: Xét hệ thống (2.10) : 𝑥̈ = −𝑎(𝑡 )𝑥̇ 2 𝑐𝑜𝑠3𝑥 + 𝑢 , và giả thiết rằng quỹ đạo
mong muốn là 𝑥𝑑 = sin(𝜋𝑡/2). Hằng số được chọn là λ=20, γ =0.1 , thời gian lấy
mẫu dt = 0.001 giây
𝑢 = 𝑢� − 𝑘𝑠𝑔𝑛(𝑠)
𝑢 = 𝑢� − 𝑘𝑠𝑎𝑡(𝑠/ϕ)
Thực thi điều khiển bám với luật chuyển mạch nhận được như Hình 2.7 với luật
điều khiển phẳng hóa trong Hình 2.8
Hình 2.8: Ngõ vào tín hiệu điều khiển san bằng và thực thi bám
21
Chú ý :
– Độ phẳng tín hiệu điều khiển liên tục bên trong B(t) về cơ bản ấn định cấu
trúc bộ lọc thông thấp tới mặt trượt thay đổi s, vì vậy loại trừ hiện tượng chattering.
Cấu trúc bộ lọc này sau đó cho phép chúng ta hiệu chỉnh luật điều khiển để đạt được
sự cân bằng độ chính xác bám và tính bền vững.
– Độ dày đường biên ϕ có thể được chọn thay đổi theo thời gian và có thể
được giám sát để khai thác tốt băng thông điều khiển có thể.
𝑑
𝑠≥𝜑 ⇒ (𝑠 − 𝜑) ≤ −𝛾
𝑑𝑡
𝑑
𝑠 ≤ −𝜑 ⇒ (𝑠 − 𝜑) ≥ −𝛾
𝑑𝑡
Vì vậy, để thay vào yêu cầu (2.5) thỏa mãn lớp biên bên ngoài chúng ta đòi hỏi phải
1 𝑑
|𝑠| ≥ 𝜑 ⇒ 𝑠 2 ≤ (𝜑̇ − 𝛾)|𝑠| (2.27)
2 𝑑𝑡
Thành phần cộng thêm 𝜑̇ |𝑠| thực ra làm cho điều kiện trên lớp biên trở nên
chính xác hơn bằng cách thu hẹp lớp biên (𝜑̇ < 0) và giảm chính xác trong biểu
thức lớp biên (𝜑̇ > 0). Để thỏa mãn (2.27), một lượng 𝜑̇ được cộng vào để điều
khiển hệ số khuếch đại không liên tục k(x). Ví dụ trong thực thi trượt thành phần
k(x)sgn(s) đạt được từ luật chuyển mạch u thực ra được thay thế bởi 𝑘 (𝑥 ). 𝑠𝑎𝑡(𝑠/𝜑)
trong đó :
𝑘 (𝑥 ) = 𝑘 (𝑥 ) − 𝜑
𝑦 𝑛ế𝑢|𝑦| ≤ 1
Và hàm sat là hàm bảo hòa : 𝑠𝑎𝑡 (𝑦) = �
𝑠𝑔𝑛(𝑦) 𝑡𝑟ườ𝑛𝑔 ℎợ𝑝 𝑘ℎá𝑐
22
Theo luật điều khiển u trở thành 𝑢 = 𝑢� − 𝑘 (𝑥 )𝑠𝑎𝑡(𝑠/𝜑). Bây giờ chúng ta
thảo luận về quỹ đạo của hệ thống bên trong đường biên. Chúng có thể được nói rõ
trực tiếp trong phần biến s như sau :
𝑘(𝑥)𝑠
𝑠̇ = − − ∆𝑓(𝑥) (2.29)
𝜑
Trong đó ∆𝑓 = 𝑓̂ − 𝑓 . Từ 𝑘 và ∆𝑓 liên tục tại x, sử dụng (2.4) ghi lại cho (2.29)
dưới dạng :
𝑘(𝑥)𝑠
𝑠̇ = − + (−∆𝑓(𝑥 ) + 0(𝜀 )) (2.30)
𝜑
Từ (2.30) chúng ta có thể thấy rằng biến s ( là khoảng cách đại số tới mặt
trượt S(t)) có thể được như là ngõ ra đầu tiên của mạch lọc, chỉ phụ thuộc vào trạng
thái mong muốn và yếu tố ngõ vào.
Vì thế hiện tượng chattering bị loại trừ, cho tới khi mô hình động học không
tác động bởi tần số cao
Hình 2.10 : Cấu trúc vòng kín của sai lệch hệ thống
Điều khiển hoạt động là một hàm của x và x d . Khi λ là tần số ngắt của bộ lọc
R R
(2.3), nó phải được chọn nhỏ với việc chú ý đến mô hình động ở tần số cao. Xa hơn
23
chúng ta có thể tránh độ dày của lớp biên ϕ để mà (2.30) có mặt bộ lọc bậc nhất với
băng thông λ.
𝑘(𝑥𝑑 )
=λ (2.31)
ϕ
ϕ̇ + λϕ = 𝑘(𝑥𝑑 ) (2.32)
𝑘 (𝑥 ) = 𝑘 (𝑥 ) − 𝑘(𝑥𝑑 ) + λϕ (2.33)
Chú ý rằng :
– Quỹ đạo của s là một sự mô tả vòng lặp kín : hoạt động điều khiển phụ
thuộc trực tiếp vào s, trong khi sai lệch bám 𝑥� đơn thuần chỉ là dạng được chọn lọc
của s.
– Quỹ đạo của s đại diện một sự đo lường thay đổi theo thời gian của các giá
trị giả định trên mô hình có tính thay đổi.
– Độ dày của lớp biên ϕ mô tả sự thay đổi của mô hình động không ổn định
với thời gian. Nó được thể hiện riêng biệt trên đồ thị s(t), ϕ(t), và -ϕ(t), trên từng
biểu đồ riêng biệt được mô tả như trong Hình 2.11
Hình 2.11 : Quỹ đạo s với lớp biên thay đổi theo thời gian
24
Ví dụ 3: Một lần nữa xét hệ thống được mô tả (2.10) 𝑥̈ = −𝑎(𝑡)𝑥̇ 2 𝑐𝑜𝑠3𝑥 + 𝑢 . Giả
thiết rằng ϕ(0) = γ/λ với γ = 0.1, λ = 20 . Từ (2.32) và (2.33) :
̇
𝑘 (𝑥 ) = (0.5𝑥̇ 2 |𝑐𝑜𝑠3𝑥| + 𝛾) − (0.5𝑥̇ 𝑑2 |𝑐𝑜𝑠3𝑥𝑑 | + 𝛾) + λϕ = 0.5𝑥̇ 2 |𝑐𝑜𝑠3𝑥| + 𝛾 − 𝜑̇
𝑢 = 𝑢� − 𝑘 (𝑥 )𝑠𝑎𝑡(𝑠/𝜑)
20𝑥�
= 𝑥̈ 𝑑 − λ𝑥�̇ + 1.5𝑥̇ 2 cos(3𝑥 ) − (0.5𝑥̇ 2 |cos(3𝑥)| + 𝛾 − ϕ̇ )𝑠𝑎𝑡[�𝑥�̇ + �]
𝜑
Chú ý :
- Hằng số γ tùy ý được chọn nhỏ để so sánh với giá trị trung bình k(x d ), sử
dụng cấu trúc tham số không bền vững.
- Giá trị λ được chọn dựa trên vùng tần số không ổn định của hệ thống.
Hình 2.12 : Tín hiệu điều khiển ngõ vào và kết quả thực thi bám
25
Chương 3
Chương này sẽ trình bày cách xây dựng mô hình toán học của hệ con lắc ngược
và cơ sở giải thuật áp dụng để điều khiển đối tượng trong đề tài.
Mô hình hệ thống con lắc ngược quay gồm hai phần : cánh tay gắn vào động cơ
DC quay quanh trục thẳng đứng và con lắc ( khớp quay tự do ), gắn vào trục encoder ở
cuối cánh tay quay tự do, trong mặt phẳng vuông góc với cánh tay được thể hiện như
Hình 3.1
3.2 Thiết lập mô hình toán học hệ thống con lắc ngược quay
Hệ thống con lắc ngược quay bao gồm : con lắc có khối lượng m, chiều dài 2L,
góc của con lắc so với phương thẳng là α, con lắc được gắn với một thanh nằm ngang
có chiều dài r . Động cơ DC servo dùng để di chuyển thanh nằm ngang ( theo hai
hướng thuận – ngược ) với một góc θ.
26
Hình 3.2 : Minh họa toán học hệ con lắc ngược quay
Giả sử A là giao điểm của tọa độ xyz được đặt trên cách tay, trọng lực của con
lắc đặt tại điểm giữa B, như vậy B sẽ quay quanh A với vận tốc :
𝑥̇𝐴𝐵 = −𝐿𝑐𝑜𝑠(𝛼)𝛼̇
� (3.1)
𝑦̇𝐴𝐵 = −𝐿𝑠𝑖𝑛 (𝛼)𝛼̇
Đồng thời với chuyển động quay quanh điểm A thì con lắc còn thực hiện
chuyển động quay quanh điểm O với vận tốc 𝑟𝜃̇ . Do vậy, vận tốc của điểm B so với
điểm O cố định có thể được mô tả bởi phương trình :
𝑥̇ 𝐵 = 𝑟𝜃̇ − 𝐿𝑐𝑜𝑠(𝛼)𝛼̇
� (3.2)
𝑦̇ 𝐵 = −𝐿𝑠𝑖𝑛 (𝛼)𝛼̇
27
Ký hiệu Mô tả
L Chiều dài từ trục quay con lắc đến trọng tâm con lắc
h Khoảng cách từ trọng tâm con lắc đến mặt sàn
r Chiều dài cánh tay
θ Góc quay lệch cánh tay
α Góc quay lệch con lắc
J CM
R Momen quán tính của con lắc
Vx R Vận tốc con lắc theo phương x
Vy R Vận tốc con lắc theo phương y
Kt R Hằng số momen của động cơ
Km R Hằng số sức điện động ( Back EMF constant)
Rm R Điện trở nội phần ứng
Jm R Quán tính của động cơ
ηg R
Hệ số truyền động
ηm R Hiệu suất động cơ
J eq R Mô men quán tính tương đương
B eq R Hệ số ma sát giữa cách tay và trục động cơ
Hình 3.3 : Phân tích lực tác dụng lên cánh tay và con lắc
28
Sử dụng công thức Euler – Lagrange, thế năng và động năng của hệ thống như sau [9]:
1
𝐽𝐶𝑀 = 𝑚𝑟 2 (3.5)
12
1
𝐽𝐶𝑀 = 𝑚𝐿2 (3.6)
3
1 1 1 2 2 1
𝑇 = 𝐽𝑒𝑞 𝜃̇ 2 + 𝑚 �𝑟𝜃̇ − 𝐿𝑐𝑜𝑠𝛼(𝛼̇ )� + 𝑚�𝐿𝑠𝑖𝑛𝛼(𝛼)̇ � + 𝐽𝐶𝑀 𝛼 2 (3.7)
2 2 2 2
L=T–V
1 2 1
𝐿= 𝐽𝑒𝑞 𝜃̇ 2 + 𝑚𝐿2 𝛼̇ 2 − 𝑚𝐿𝑟𝑐𝑜𝑠𝛼𝛼̇ 𝜃̇ + 𝑚𝑟 2 𝜃̇ 2 − 𝑚𝑔𝐿𝑐𝑜𝑠𝛼 (3.8)
2 3 2
29
𝛿 𝛿𝐿 𝛿𝐿
� ̇� − = 𝑇𝑜𝑢𝑡𝑝𝑢𝑡 − 𝐵𝑒𝑞 𝜃̇ (3.9)
𝛿𝑡 𝛿𝜃 𝛿𝜃
𝛿 𝛿𝐿 𝛿𝐿
� �− =0
𝛿𝑡 𝛿𝛼̇ 𝛿𝛼
Phân tích hệ phương (3.9), ta được hệ phương trình mô hình phi tuyến như sau :
η η 𝐾 𝐾𝑔
𝑚 𝑔 𝑡
𝑎𝜃̈ + 𝑏𝑐𝑜𝑠(𝛼 )𝛼̈ + 𝑏𝑠𝑖𝑛 (𝛼 )𝛼̇ 2 + 𝐺𝜃̇ = 𝑉𝑚
� 𝑅𝑚 (3.11)
̈
−𝑏𝑐𝑜𝑠(𝛼 )𝜃 + 𝑐𝛼̈ − 𝑑𝑠𝑖𝑛 (𝛼) = 0
Hay
4
𝑎 = 𝐽𝑒𝑞 + 𝑚𝑟 2 𝑏 = 𝑚𝐿𝑟 𝑐 = 𝑚𝐿2
3
η𝑚 η𝑔 𝐾𝑡 𝐾𝑔
𝑑 = 𝑚𝑔𝐿 𝑓=
𝑅𝑚
30
η𝑚 η𝑔 𝐾𝑡 𝐾𝑚 𝐾𝑔2 +𝐵𝑒𝑞𝑅𝑚
𝐺=
𝑅𝑚
x 1 = α ; x 2 =𝛼̇ là góc lệch và vận tốc góc lệch của con lắc ( rad/s ).
x 3 = θ ; x 4 = 𝜃̇ là góc quay và vận tốc góc quay của cánh tay ( rad/s ).
Giải hệ (3.11) ta được phương trình trạng thái của hệ thống có dạng :
𝑥̇1 = 𝑥2
𝑥̇ = 𝐹1 (𝑥 ) + 𝐺1 (𝑥 )𝑢
� 2 (3.13)
𝑥̇ 3 = 𝑥4
𝑥̇ 4 = 𝐹2 (𝑥 ) + 𝐺2 (𝑥 )𝑢
Với
𝑥1 0 𝑥2
𝑥2 𝐹 𝐺1
𝑥 = �𝑥 � ; 𝑓 (𝑥 ) = � 1 � ; 𝑔(𝑥 ) = � 𝑥 �
3 0 4
𝑥4 𝐹2 𝐺 2
𝑏2
− 𝑠𝑖𝑛2𝑥1 𝑥22 −𝐺𝑏𝑥4 𝑐𝑜𝑠𝑥1 +𝑎𝑑𝑠𝑖𝑛𝑥1
𝐹1 (𝑥 ) = 2
𝑎𝑐−𝑏2 𝑐𝑜𝑠 2 𝑥1
η𝑚 η𝑔 𝐾𝑡 𝐾𝑔 𝑏
𝐺1 (𝑥 ) = 𝑐𝑜𝑠𝑥1
𝑅𝑚 (𝑎𝑐−𝑏2 𝑐𝑜𝑠 2 𝑥1 )
𝑐𝐹1 (𝑥)−𝑑𝑠𝑖𝑛𝑥1
𝐹2 (𝑥 ) =
𝑏𝑐𝑜𝑠𝑥1
31
η𝑚 η𝑔 𝐾𝑡 𝐾𝑔 𝑐
𝐺2 (𝑥 ) =
𝑅𝑚 (𝑎𝑐−𝑏2 𝑐𝑜𝑠 2 𝑥1 )
Theo tài liệu [1], xét hệ thống phi tuyến biểu diển bởi phương vi phân :
𝑥̇1 = 𝑥2
⎧𝑥̇ = 𝑥
⎪ 2 3
…. (3.16)
⎨𝑥̇ 𝑛−1 = 𝑥𝑛
⎪
⎩𝑥̇ 𝑛 = 𝑓(𝑥 ) + 𝑔(𝑥)𝑢
Với ngõ ra là : 𝑦 = 𝑥1
Vấn đề : xác định tín hiệu điều khiển u sao cho tín hiệu ra y bám theo tín hiệu đặt r
trong đó, a0 , a1 , a2 … an − 2 là các hệ số được chọn trước sao cho đa thức đặc trưng của
phương trình vi phân sau Hurwitz (có tất cả các nghiệm với phần thực âm).
Phương trình S = 0 xác định một mặt cong trong không gian n chiều gọi là mặt trượt.
Trong đó α là một hằng số dương chọn trước. Luật điều khiển được xác định bởi :
1
𝑢=− �𝑓 (𝑥 ) + 𝑎(𝑛−2)(𝑥𝑛 − 𝑟 (𝑛−1)) + ⋯ + 𝑎1 (𝑥3 − 𝑟)̈ + 𝑎0 (𝑥2 − 𝑟̇ ) + 𝛼𝑠𝑖𝑔𝑛(𝑆)�
𝑔(𝑥)
Theo tài liệu [7], ta chọn các mặt trượt thành phần như sau :
𝑠1 = 𝑥2 + λ1 𝑥1
𝑠2 = 𝑥4 + λ3 𝑥3
Hàm Lyapunov chọn để đảm bảo ổn định cho toàn hệ thống như sau :
Như vậy nếu ta chọn u sao cho thỏa mãn 𝑉𝑉̇ < 0 thì lúc này :
- Nếu 𝑉 < 0 thì 𝑉̇ > 0 tức khi V âm thì V sẽ bị kéo về dương ( hướng về vị trí 0 )
vì 𝑉̇ > 0
- Nếu 𝑉 > 0 thì 𝑉̇ < 0 tức khi V dương thì V sẽ bị kéo về âm ( hướng về vị trí 0 )
vì 𝑉̇ < 0
Tức V luôn hướng về giá trị 0, hay 𝑉 = |𝑠1 | + λ2 |𝑠2 | luông hướng về 0 tức là S 1 →0 và
S 2 →0 hay x 1 , x 2 , x 3 , x 4 tiến về 0 tức là hệ thống ổn định tại vị trí cân bằng.
Ở đây, giá trị λ2 được chọn là một số dương nằm trong khoảng từ 0 đến 1. Nó
quyết định thành phần nào được ưu tiên ổn định trong quá trình điều khiển : góc con
lắc hay góc cánh tay. Ngoài ra, tín hiệu điều khiển u phải được lái sao cho :
𝑉
𝑉̇ = −𝛼𝑠𝑎𝑡 � � (3.25)
Ø
𝑉
𝑉𝑉̇ = −𝑉𝛼𝑠𝑎𝑡 � � < 0
Ø
𝑉
Do : 𝑉𝑠𝑎𝑡 � � > 0
Ø
34
𝑉
𝑉 𝑛ế𝑢 Ø < |𝑉|
𝑠𝑎𝑡 � � = � Ø (3.26)
Ø
𝑠𝑔𝑛(𝑉 ) 𝑡𝑟ườ𝑛𝑔 ℎợ𝑝 𝑘ℎá𝑐
Ở đây, ta chọn hàm Sat để khoảng thay đổi dấu của V không quá đột ngột, theo
như hình vẽ sau :
y = sign(V) y = sat(V/Ø)
Với hàm sat, mức độ thay đổi dấu của điều khiển trượt không quá lớn, giúp
giảm hiện tượng Chattering.
α là một số dương để xác định tốc độ V tiến về 0. Chọn đúng hàm Lyapunov thì
tín hiệu điều khiển sẽ có dạng sau :
𝑉
𝐻 (𝑥 ) + 𝐼(𝑥 )×u = −𝛼𝑠𝑎𝑡 � � (3.27)
Ø
35
Vậy tín hiệu điều khiển để cân bằng hệ thống theo giải thuật trượt là :
𝑉
−𝐻(𝑥)−𝛼𝑠𝑎𝑡� Ø �
𝑢=
𝐼(𝑥)
𝑉
−�[𝐹1 (𝑥)+λ1 𝑥2 ]𝑠𝑔𝑛(𝑠1 )+λ2 [𝐹2 (𝑥)+λ3 𝑥4]𝑠𝑔𝑛(𝑠2 )�−𝛼𝑠𝑎𝑡� �
Ø
Hay :𝑢= 𝐺1 (𝑥) 𝑠𝑔𝑛(𝑠1 )+λ2 𝐺2 (𝑥) 𝑠𝑔𝑛(𝑠2 )
(3.28)
Bộ điều khiển lật ngược được sử dụng để đưa con lắc từ vị trí thẳng đứng hướng
xuống lúc ban đầu đến vị trí thẳng đứng hướng lên. Tác giả thiết kế bộ điều khiển lật
ngược dựa theo bộ điều khiển Swing up của Vũ Chấn Hưng [4].
Thuật toán điều khiển dựng ngược con lắc được tiến hành trên cơ sở phân tích quỹ
đạo chuyển động của con lắc trong miền không gian trạng thái. Mối quan hệ giữa trạng
36
thái của vị trí góc con lắc θ , 𝜃̇ với θ = β − π , và trạng thái vị trí góc của cánh tay
𝜋
> 𝜃 > 0. Có thể thấy nếu gia tốc cánh tay bằng 0, tức khi cánh tay quay đều chậm
2
hoặc đứng yên thì quỹ đạo chuyển động của con lắc có xu hướng đi về góc tọa độ
( θ = 0, 𝜃̇ = 0 ). Để con lắc có thể lắc ngược lên vị trí ±π cần gia tốc chuyển động của
𝜋
cánh tay. Nếu con lắc ở vị trí > 𝜃 > 0 , tốc độ góc 𝜃̇ ≥ 0 và đang giảm thì cần gia tốc
2
cánh tay theo hướng thuận chiều kim đồng hồ nhờ tín hiệu điều khiển u = u 0 . Nếu con
𝜋
lắc ở vị trí 0 > 𝜃 > tốc độ góc 𝜃̇ ≤ 0 và đang giảm thì cần gia tốc cánh tay theo
2
hướng ngược chiều kim đồng hồ nhờ tín hiệu điều khiển u = u 0 .
Từ đây có thể thấy thao tác điều khiển gia tốc quay cánh tay chỉ được thực hiện
trên hai vùng A và B của mặt phẳng quỹ đạo. Khi con lắc rời khỏi hai vùng A và B nó
sẽ có tốc độ góc �𝜃̇ � và vị trí góc |𝜃| lớn hơn. Sau vài chu kỳ lắc vị trí góc của con lắc
sẽ đạt đến ±π với vận tốc thấp.
Chương 4
MÔ PHỎNG HỆ THỐNG ĐIỀU KHIỂN
Chương này sẽ trình bày cách đưa mô hình toán học của hệ con lắc ngược vào
Matlab – Simulink để mô phỏng, kết quả hoạt động điều khiển hệ thống của các bộ
điều khiển được đưa ra và phân tích.
4.1 Xây dựng mô hình mô phỏng hệ thống con lắc ngược quay
Mô hình phi tuyến mô phỏng hệ thống con lắc ngược quay được thiết kế trên Matlab
Simulink dựa trên mô hình toán đã được thiết lập ( theo công thức 3.12 ) :
1
𝜃̈ = �𝑏𝑐𝑜𝑠(𝛼)𝛼̈ − 𝑏𝑠𝑖𝑛(𝛼)𝛼̇ 2 − 𝐺𝜃̇ + 𝑓𝑉𝑚 �
𝑎
1
𝛼̈ = �𝑏𝑐𝑜𝑠(𝛼)𝜃̈ − 𝑑𝑠𝑖𝑛(𝛼)�
𝑐
Ta có mô hình :
Hình 4.2 : Các khối chức năng trong khối RIP trong Simulink
Hình 4.3 : Đáp ứng góc con lắc và góc cánh tay ở vị trí thẳng hướng lên
Nhận xét : Vị trí con lắc và cánh tay không thay đổi với vị trí ban đầu.
39
Hình 4.4 : Đáp ứng góc con lắc và góc cánh tay ở vị trí thẳng hướng lên
Nhận xét :
Con lắc dao động quanh góc 1800 và sau khoảng 7s vận tốc giảm dần và con lắc
P P
dừng lại.
Góc và vận tốc cánh tay dao động quanh góc 00 và sau 9s thì dừng lại.
P P
Hình 4.5 : Đáp ứng góc con lắc và góc cánh tay ở vị trí thẳng hướng lên
40
Nhận xét :
Con lắc dao động quanh góc 1800 và sau khoảng 7s vận tốc giảm dần và con lắc
dừng lại.
Cánh tay bị quay vòng tròn theo chiều dương góc θ .
4.3 Xây dựng mô hình khối điều khiển trượt ( SMC = Sliding Mode Control ).
4.3.1 Phương trình tín hiệu điều khiển u ( theo phương trình 3.24 )
𝑉
−�[𝐹1 (𝑥) + λ1 𝑥2 ]𝑠𝑔𝑛(𝑠1 ) + λ2[𝐹2 (𝑥 ) + λ3 𝑥4 ]𝑠𝑔𝑛(𝑠2 )� − 𝛼𝑠𝑎𝑡 � �
Ø
𝑢=
𝐺1 (𝑥) 𝑠𝑔𝑛(𝑠1 ) + λ2𝐺2 (𝑥) 𝑠𝑔𝑛(𝑠2 )
𝑉
−𝐾. 𝑠𝑔𝑛(𝑠) → −𝛼𝑠𝑎𝑡 � �
Φ
Hình 4.7 : Các khối chức năng bên trong khối SMC trong Simulink
42
Trường hợp 1 :
Hình 4.9 : Đáp ứng góc con lắc và tín hiệu điện áp điều khiển
Nhận xét :
Vị trí ban đầu của con lắc là α = 50 , sau 2s con lắc cân bằng tại vị trí góc có giá
trị bằng không ( α = 00 ).
Trong khoảng 0,2s đầu giá trị vận tốc con lắc khoảng 8,6 rad/s, sau 2s vận tốc
con lắc bằng không – con lắc cân bằng.
Con lắc cân bằng sau 2s.
44
Hình 4.10 : Đáp ứng góc cánh tay và tín hiệu điện áp điều khiển
Nhận xét :
Cánh tay bị kéo về phía hướng cùng chiều kim đồng hồ ( chiều âm so với chiều
chọn ) khoảng 2,50 và sau 0,8s con lắc được đưa về vị trí 0,50 . Con lắc ổn định
P P P P
Trường hợp 2 :
Hình 4.14 : Đáp ứng góc con lắc và tín hiệu điện áp điều khiển
Nhận xét :
Tại thời điểm t=0,084s hệ thống mất ổn định, không đáp ứng hệ thống.
Con lắc không cân bằng.
48
4.4 Mô phỏng con lắc ngược quay dùng thuật toán LQR.
4.4.1 Mô hình khối RIP dùng thuật toán LQR trong Matlab/Simulink
Q = diag(100,1,1,1) R=1
Hình 4.16 : Đáp ứng góc quay con lắc với bộ điều khiển LQR
Nhận xét :
Vị trí ban đầu của con lắc là α = 50 , sau 1,2s con lắc cân bằng tại vị trí góc có
giá trị bằng không ( α = 00 ).
Trong khoảng 0,1s đầu giá trị vận tốc con lắc khoảng 2 rad/s, sau 0,6s vận tốc
con lắc bằng không – con lắc cân bằng.
Con lắc cân bằng sau 1,2s
50
Hình 4.17 : Đáp ứng góc quay cánh tay với bộ điều khiển LQR
Nhận xét :
Sau 1s cánh tay được đưa về vị trí 00 và ổn định tại vị trí này.
P P
Điện áp điều khiển tiến về vị trí ban đầu. Sau 0,8s cánh tay về vị trí cân bằng
51
a) Góc quay con lắc với bộ SMC b) Góc quay con lắc với bộ LQR
a) Góc quay cánh tay với bộ SMC b) Góc quay cánh tay với bộ LQR
Nhận xét :
Với bộ điều khiển SMC góc con lắc và góc cánh tay sau khoảng thời gian lần
lượt là 2s và 0,8s thì đạt giá trị gần như ổn định quanh điểm làm việc (0,0).
Không có độ vọt lố.
Với bộ điều khiển LQR góc con lắc và góc cánh tay sau khoảng thời gian lần
lượt là 1,2s và 1s thì đạt giá trị gần như ổn định quanh điểm làm việc (0,0). Có
độ vọt lố qua điểm cân bằng.
Chương 5
Chương này trình bày mô hình phần cứng hệ con lắc ngược quay. Giới thiệu sơ
lược các phần cơ khí, điện và chương trình mà học viên đã làm.
Mô hình con lắc ngược quay bao gồm một khung cố định dùng để gắn động cơ.
16T
Con lắc gắn trực tiếp với encoder được điều khiển bởi một cánh tay được gắn trực tiếp
16T 16T
với trục động cơ. Ưu điểm của mô hình là dễ thiết kế, không bị giới hạn về không gian
16T 16T
chuyển động của cánh tay nằm ngang, nhỏ gọn, chiếm không gian ít. Các dây tín hiệu
16T 16T
trong hệ thống đi dây khá phức tạp là nhược điểm chính của mô hình.
16T 16T
Trong đó :
Mô hình cơ khí hệ thống con lắc ngược phải đảm bảo chắc chắn, có các thông số hợp
lý cũng như mang tính thẩm mỹ.
– Khối sử lý MCU có nhiệm vụ nhận tín hiệu từ các encorder, xử lý thuật toán
điều khiển và xuất tín hiệu điều khiển.
5.1.2.2 Sơ đồ nguyên lí
a. Mạch nguồn :
Chuyển từ nguồn 12Vdc sang 5Vdc cấp cho mạch vi điều khiển và mạch công suất.
Mạch sử dụng IC LM2576T.
Chân 5 : Cho phép cắt hoặc mở nguồn (nếu nối về cực âm thì nguồn được mở
liên tục cho tải, nếu để hở mạch hoặc nối lên cực dương thì nguồn cấp cho tải sẽ bị cắt
tức là không có điện áp ra).
Mạch công suất sử dụng L298N để điều khiển động cơ DC với mạch cầu H sử
dụng 4 diode 1N5822.
Mạch cầu H có thể đảo chiều dòng điện qua tải nên thế nó hay được dùng trong
các mạch điều khiển động cơ DC và các mạch băm áp.
Ưu điểm : Mạch cầu H làm cho mạch trở nên đơn giản và tiết kiệm chi phí.
Nhược điểm : Nếu như mạch điều khiển thì cùng bật 2 công tắc ở cùng 1 nữa
cầu thì sẽ mạch động lực bị ngắn mạch nguồn. Nếu hiện tượng xảy ra trong 1 thời gian
ngắn (quá độ) sẽ xuất hiện dòng trùng dẫn qua van công suất làm tăng công suất tiêu
58
tán trên van. Nếu thời gian trùng dẫn đủ dài, dòng trùng dẫn sẽ lớn làm cháy van công
suất. Tức là mạch không có bảo vệ dòng và áp.
Thông số IC L298N : IC L298N là mạch tích hợp đơn chip gồm 15 chân được
tích hợp 2 mạch cầu H có khả năng hoạt động ở điện áp cao, dòng cao. Điện áp cấp lên
đến 46V, dòng chịu đựng lên đến 4A, chức năng bảo vệ quá nhiệt, điện áp logic từ
1.5V trở xuống.
Arduino Mega 2560 là một vi điều khiển bằng cách sử dụng Atmega 2560 gồm :
54 chân digital (15 có thể được sử dụng như các chân PWM)
59
1 đầu ICSP,
1 nút reset.
Nó chứa tất cả mọi thứ cần thiết để hỗ trợ các vi điều khiển.
Arduino Mega 2560 khác với tất cả các vi xử lý trước giờ vì không sử dụng
FTDI chip điều khiển chuyển tín hiệu từ USB để xử lý. Thay vào đó, nó sử dụng
ATmega16U2 lập trình như là một công cụ chuyển đổi tín hiệu từ USB. Ngoài ra,
Arduino Mega 2560 cơ bản vẫn giống Arduino Uno R3, chỉ khác số lượng chân và
nhiều tính năng mạnh mẽ hơn, nên các bạn vẫn có thể lập trình cho con vi điều khiển
này bằng chương trình lập trình cho Arduino Uno R3.
Encoder :
Pha A → pin 20 Arduino Mega 2560
Pha A → pin 21 Arduino Mega 2560
Encoder DC Motor :
Pha A → pin 2 Arduino Mega 2560
Pha A → pin 3 Arduino Mega 2560
Module L298 :
EN → pin 6 Arduino Mega 2560
61
Con lắc là một thanh nhôm đồng chất dài 197mm gắn vuông góc với trục encoder 2.
Encoder 2 loại : OMRON E6B – CWZ, có giá trị 1440 xung/vòng, nguồn 5VDC, hai
pha A,B , đường kính trục 6mm.
Cánh tay là một thanh nhôm đồng chất, rộng 31mm, dầy 3mm, dài 122mm gắn vuông
góc với trục encoder 1 có giá trị 1200xung/vòng – đồng trục với trục động cơ.
63
Qua việc mô phỏng và kiểm chứng kết quả, chúng ta thấy rằng kết quả mô
phỏng tương đồng với lý thuyết đã trình bày trong chương 2 và quá trình thiết kế
trong chương 3.
Điều khiển cân bằng ổn định cho hệ con lắc ngược quay bằng phương pháp
SMC – là bộ điều khiển vòng kín với năng lượng cung cấp cho hệ thống nhỏ. Hệ thống
hoạt động tương đối với bộ điều khiển trượt, con lắc có thể ổn định quanh điểm làm
việc, thời gian đáp ứng nhanh 2s, không có độ vọt lố và mức dao động không đáng kể.
Với mô hình thực tế con lắc vẫn chưa đáp ứng tốt ở vị trí cân bằng do trong quá
trình sử dụng các thông số có sai số hoặc các thông số không chính xác rõ ràng, và ảnh
hưởng bởi phần thi công cơ khí.
64
Chương 6
Trong luận văn này học viên đã hoàn thành những kết quả :
− Nghiên cứu chi tiết về hệ con lắc ngược quay, xây dựng mô hình toán học và
nắm vững các đặc tính động học của hệ con lắc ngược quay.
− Nghiên cứu các giải thuật của lý thuyết điều khiển hiện đại.
− Nghiên cứu thiết kế giải thuật điều khiển SMC và mô phỏng đáp ứng trên
Matlab – Simulink.
− Thiết kế giải thuật điều khiển cho hệ có xét đến tác động nhiễu ngoài.
− Thiết kế và điều khiển thời gian thực mô hình con lắc ngược quay.
65
[1] Dương Hoài Nghĩa, Điều khiển hệ thống đa biến, NXB ĐHQG TP.HCM, 2007.
[2] Nguyễn Thị Phương Hà, Lý thuyết điều khiển hiện đại, NXB ĐHQG TP.HCM,
2009.
[3] Nguyễn Doãn Phước, Phan xuân Minh và Hán Thành Trung, Lý thuyết điều khiển
phi tuyến, NXB Khoa Học và Kỹ Thuật, Hà Nội 2006.
[4] Vũ Chấn Hưng, Đặng Thành Phu, Hoàng Văn Tuấn, “ Điều Khiển Hệ Thống Con
Lắc Ngược Quay”, tạp chí khoa học và công nghệ, 2005
[5] Nguyễn Văn Khanh, Nguyễn Ngô Phong và Đặng văn Hải, “ Điều khiển Cân Bằng
Con Lắc Ngược Sử Dụng Thuật Toán PD mờ ”, Tạp chí khoa học Trường Đại Học Cần
Thơ. 2009
[6] Nguyễn Đức Minh, Dương Hoài Nghĩa, Nguyễn Đức Thành, “ Điều khiển con lắc
ngược hai bậc xoay tự do dùng mạng nơ –rôn”, in Hội thảo Công nghệ Thông Tin Đại
Học Đà Lạt 2010, 2010
[7] Mojtaba Ahmadieh Khanesar “Sliding Mode Control of Rotary Inverted Pendulum”
Control & Automation, July 27 – 29, 2007, Athens – Greece.
[8] Khalil sultan, “Inverter pendulum – Analysis, design and implementation”, IIEE
Visionnaries-document version 1.0
[10] Narinder Singh Bhangal, Design and performance of LQR and LQR based Fuzzy
Controller for Double Inverted Pendulum System, 2013
66
[12] Fu-Kuei Tsai and Jung – Shan Lin, “ Nonlinear Control Design of 360-Degree
Inverted Pendulum Systems, “ in The Fourth International Conference on Control and
Automation, pp.634–638, 2003
[13] X.Chen and H.Zhou and et al, “ Linear Motor Driven Inverted Pendulum and LQR
Controller Design”,in Proceedings of The IEEE International Conference on
Automation and Logistics, 2007, pp 1750–1754
[14] Felix Grasser, Aldo D’Arrigo, Silvio Colombi ( 2002 ), JOE : A Mobile, Inverted
Pendulum, IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS, VOL 49,
No 1, February 2002
[15] Jinkuliu, XihuaWang, “Advanced sliding mode control for mechanical systems”
[17] Jean – Jacques E.Slotine, Weiping Li, Applied Nonlinear Control, Massachusetts
Institue of Technology, Prentice Hall, 1991