You are on page 1of 6

TRƯỜNG ĐẠI HỌC

BÁCH KHOA TPHCM

-----oOo-----

BÀI CHUẨN BỊ THÍ NGHIỆM


LÝ THUYẾT ĐIỀU KHIỂN NÂNG CAO

Bài 1:
ĐIỀU KHIỂN HỆ PHI TUYẾN
CON LẮC NGƯỢC QUAY

Giảng viên : Trần Hoàng Khôi Nguyên


Lớp : A03
Sinh viên : Huỳnh Đức Dũng
MSSV : 1710052

IV. CHUẨN BỊ TRƯỚC KHI THÍ NGHIỆM


4.1 Xây dựng mô hình toán mô tả hệ thống con lắc ngược quay

- Kết quả sau khi chạy file pend_dynamics1.m:


Ftheta1 =

J1*d2th1 - Tm + c1*dth1 + d2th1*l1^2*m2 + (d2th1*l2^2*m2)/2 +


(d2th1*l2^2*m2*(2*sin(th2)^2 - 1))/2 + dth2^2*l1*l2*m2*sin(th2) +
d2th2*l1*l2*m2*(2*sin(th2/2)^2 - 1) + dth1*dth2*l2^2*m2*sin(2*th2)

Ftheta2 =

J2*d2th2 + c2*dth2 + d2th2*l2^2*m2 - g*l2*m2*sin(th2) -


dth1^2*l2^2*m2*cos(th2)*sin(th2) - d2th1*l1*l2*m2*cos(th2)

→ Kết quả thu được giống với công thức (8)

- Sử dụng file pend_dynamics2.m để giải phương trình, ta được kết quả:

A=
[ c*sin(th2)^2 + a , -b*cos(th2)]
[ -b*cos(th2) , f]

B = - b*sin(th2)*dth2^2 - c*dth1*sin(2*th2)*dth2 - d*dth1 + e*vol


(c*sin(2*th2)*dth1^2)/2 - c2*dth2 + h*sin(th2)
X = (- b*c*sin(2*th2)*cos(th2)*dth1^2 + 2*c*f*sin(2*th2)*dth1*dth2 +
2*d*f*dth1 + 2*b*f*sin(th2)*dth2^2 + 2*b*c2*cos(th2)*dth2 - 2*e*f*vol -
2*b*h*cos(th2)*sin(th2))/(b^2*cos(2*th2) - c*f - 2*a*f + b^2 +
c*f*cos(2*th2))
(2*b*cos(th2)*(b*sin(th2)*dth2^2 + c*dth1*sin(2*th2)*dth2 + d*dth1 -
e*vol))/(b^2*cos(2*th2) - c*f - 2*a*f + b^2 + c*f*cos(2*th2)) -
(((c*sin(2*th2)*dth1^2)/2 - c2*dth2 + h*sin(th2))*(2*a + c - c*cos(2*th2)))/
(b^2*cos(2*th2) - c*f - 2*a*f + b^2 + c*f*cos(2*th2))

→ Vector X vừa tìm được chính là phương trình toán mô tả hệ thống


(công thức (32)) với các biến trạng thái đã cho, tín hiệu điều khiển là
điện áp cấp cho động cơ DC u.

4.2 Xây dựng mô hình mô phỏng hệ thống với MATLAB Simulink


Khảo sát đáp ứng đầu ra của các trạng thái trong các trường hợp góc lệch ban đầu
được cho như bên dưới và kiểm chứng tính đúng đắn của mô hình dựa vào suy
luận
vật lý cơ bản.
Giá trị khởi tạo Giá trị khởi tạo
Lần chạy
của θ1 của θ2
1 0 0
2 90 0
3 180 0
4 0 10
5 90 45
6 180 90
→ khi các góc lệch θ1 và θ2 càng lớn thì thời gian xác lập để con lắc trở nên
cân bằng càng lớn. Khi giá trị khởi tạo của θ1 lớn thì Theta1 phải lớn để có
thể cho ra đáp ứng nhanh hơn.

4.3 Tuyến tính hóa tại điểm cân bằng trên


- Kết quả sau khi chạy file pend_linear.m:
A=
[ (7576077791072511*sin(th2)^2)/4611686018427387904 + 2119/80000, -
(59987947036575*cos(th2))/36028797018963968]
[ -(59987947036575*cos(th2))/36028797018963968,
6344296455550557/1152921504606846976]

B=
- (59987947036575*sin(th2)*dth2^2)/36028797018963968 -
(7576077791072511*dth1*sin(2*th2)*dth2)/4611686018427387904 -
(43*dth1)/8125 + (3*vol)/52

(7576077791072511*sin(2*th2)*dth1^2)/9223372036854775808 - (7*dth2)/2500
+ (5439*sin(th2))/50000

4.4 Điều khiển hồi tiếp tuyến tính hóa và điều khiển trượt.

You might also like