1. Trang chủ
  2. » Luận Văn - Báo Cáo

Điều khiển cân bằng con lắc ngược sử dụng bộ điều khiển lqr và bộ lọc kalman

95 62 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 95
Dung lượng 2,9 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Luận văn trình bày việc thiết kế bộ điều khiển cân bằng con lắc ngược sử dụng bộ điều khiển lqr kết hợp với bộ lọc Kalman Kết quả thực nghiệm của phương pháp đề xuất được so sánh với bộ điều khiển hồi tiếp trạng thái LQR để đánh giá chất lượng điều khiển Hệ thống con lắc ngược được xây dựng mô phỏng và đánh giá kết quả bằng phần mềm Matlab Simulink Dựa vào kết quả mô phỏng thu được từ phần mềm Matlab – Simulink tiến hành xây dựng lưu đồ lập trình và điều khiển trên mô hình thực nghiệm được giám sát thông qua phần mềm Labview kết hợp cùng với board mạch vi xử lý Arduino Kết quả thực nghiệm trên mô hình cho thấy đáp ứng của hệ thống với bộ điều khiển đề xuất cho kết quả tốt hơn phương pháp điều khiển LQR Với bộ điều khiển lqr kết hợp với bộ lọc kalman con lắc có khả năng được điểu khiển cân bằng tại một vị trí xác định trong điều kiện có nhiễu đo lường trong khi đó hệ con lắc bị dao động quanh điểm đặt với giải thuật điều khiển LQR

Trang 1

CAOăXUỂNăC NG

S D NG B ăĐI UăKHI N LQR VĨ B ăL CăKALMAN

LU NăVĔNăTH CăSƾăK ăTHU T

ĐƠăNẵngăậ Nĕmă2018

Trang 2

CAOăXUỂNăC NG

S D NG B ăĐI U KHI NăLQRăVĨăB ăL CăKALMAN

ChuyênăngƠnh:ăK ăthu tăđi uăkhi năvƠăt ăđ ngăhóa

Mưăs :ă8520216

LU NăVĔNăTH CăSƾăK ăTHU T

Ng iăh ngăd năkhoaăh c:

TS.ăTR NăĐỊNHăKHỌIăQU C

ĐƠăNẵngăậ Nĕmă2018

Trang 3

Ngoài các thông tin được sử dụng và trích dẫn trong các tài liệu tham khảo, các kết quả nghiên cứu khác nêu trong luận văn này là trung thực và chưa từng ai công bố trong bất kỳ công trình nào

Tác giả luận văn

CaoăXuơnăC ng

Trang 4

VĨăB ăL CăKALMAN

H c viên: Cao Xuân C ng Chuyên ngành: Kỹ thuật điều khiển và tự động hóa

Mư số: 8520216 Khóa: K33 Tr ng Đ i h c Bách khoa - ĐHĐN

Tómăt tăậ Luận văn trình bày việc thiết kế bộ điều khiển cân bằng con lắc ng ợc sử dụng bộ

điều khiển lqr kết hợp với bộ l c Kalman Kết quả thực nghiệm của ph ơng pháp đề xuất đ ợc so sánh với bộ điều khiển h i tiếp tr ng thái LQR để đánh giá chất l ợng điều khiển Hệ thống con lắc

ng ợc đ ợc xây dựng, mô phỏng và đánh giá kết quả bằng phần mềm Matlab - Simulink Dựa vào kết quả mô phỏng thu đ ợc từ phần mềm Matlab – Simulink tiến hành xây dựng l u đ , lập trình

và điều khiển trên mô hình thực nghiệm đ ợc giám sát thông qua phần mềm Labview kết hợp cùng với board m ch vi xử lý Arduino Kết quả thực nghiệm trên mô hình cho thấy, đáp ứng của hệ thống với bộ điều khiển đề xuất cho kết quả tốt hơn ph ơng pháp điều khiển LQR Với bộ điều khiển lqr kết hợp với bộ l c kalman, con lắc có khả năng đ ợc điểu khiển cân bằng t i một v trí xác đ nh trong điều kiện có nhiễu đo l ng trong khi đó hệ con lắc b dao động quanh điểm đặt với giải thuật điều khiển LQR

T ăkhóaă- Con lắc ng ợc, bộ điều khiển LQR, bộ l c Kalman, phản h i v trí, bo m ch

arduino

BALANCE CONTROL OF AN INVERTED PENDULUM USING LQR AND

KALMAN FILTER Abstract - This thesispresents the design of balance control for an inverted pendulum system using the Linear-Quadratic Regulator method (LQR) control law conbine with Kalman filter

Experimental results of the proposed method was compared with LQR method to assess the quality

of control Inverted pendulum system is designed, simulated and supervised by Matlab – Simulink software Based on simulation results obtained from Matlab – Simulink conducts programmatic, programming and control on experimental model by Labview software conbined with the Arduino single-board microcontrollers Experiments of stabilizing the inverted pendulum show that the proposed controller produces better response than the LQR controller The inverted pendulum can

be stabilized at the predetermined position in the condition of noise measurement using the LQR controller combined with Kalman filter while The inverted pendulum fluctuates around the set point using the LQR controlalgorithm

Key words - Inverted pendulum, LQR, Kalman filter, position feedback, arduino card

Trang 5

Trang phụ bìa Trang

L i cam đoan

Mục lục

Danh mục các từ viết tắt

Danh mục các hình

Danh mục các bảng

Danh mục các kí hiệu

PH NăM ăĐ U

I Đặt vấn đề 1

II Đ nh h ớng của đề tài 2

III Nhiệm vụ của luận văn 2

IV Kết quả mong muốn đ t đ ợc 2

PH NăN IăDUNG

CH NGă1: GI IăTHI UăBĨIăTOÁNăCONăL CăNG C

1.1 Lý thuyết về con lắc ng ợc 3

1.2 Mô hình toán h c cho hệ con lắc ng ợc 4

1.2.1 Mô hình toán h c của con lắc ng ợc 4

1.2.2 Mô hình toán h c của động cơ DC 6

1.2.3 Mô hình toán h c t ng hợp cho hệ con lắc ng ợc 8

1.3 Mô phỏng con lắc ng ợc trên matlab 8

CH NG 2: PH NGăPHÁPăĐI UăKHI N

2.1 Ph ơng pháp điều khiển PID 12

2.2 Ph ơng pháp điều khiển LQR 13

2.2.1 Điều khiển tối u 13

2.2.2 Thiết kế bộ điều khiển LQR 14

2.2.2.1 Điều khiển LQR liên tục 14

2.2.2.2 Thiết kế bộ điều khiển LQR liên tục 16

2.3 Thiết kế bộ điều khiển số 17

2.3.1 Xây dựng mô hình gián đo n cho hệ con lắc ng ợc 17

Trang 6

2.4.1 Bộ l c Kalman r i r c 22

2.4.2 Bộ l c Kalman liên tục 23

2.5 Điều khiển swing-up 24

CH NGă3: THI TăK ăB ăĐI UăKHI NăCỂNăB NGăCONăL CăNG C

3.1 Thiết kế bộ điều khiển LQR 26

3.1.1 Hệ ph ơng trình tr ng thái của con lắc ng ợc 26

3.1.2 Bộ điều khiển LQR 27

3.2 Thiết kế bộ điều khiển LQR kết hợp bộ l c Kalman 33

3.3 Mô phỏng và đánh giá kết quả 38

CH NGă4: XỂYăD NGăB ăĐI UăKHI N CONăL CăNG CăVĨăK TăQU ă TH CăNGHI M

4.1 Mô hình con lắc ng ợc 48

4.1.1 Giới thiệu về bo m ch điều khiển Arduino UNO R3 50

4.1.2 Động cơ truyền động 51

4.1.3 Hệ thống cảm biến và bộ l c sử dụng cho cảm biến 52

4.1.3.1 Cảm biến Encoder 52

4.1.3.2 Ph ơng pháp l c tín hiệu từ cảm biến dùng bộ l c Kalman gián đo n (Discrete Kalman) 54

4.1.4 Thiết kế bộ điều khiển LQR gián đo n 58

4.1.5 Điều khiển swing-up 60

4.1.6 Sơ đ kết nối thiết b 60

4.1.7 Thuật toán điều khiển con lắc ng ợc dùng Arduino UNO R3 61

4.2 Giám sát mô hình con lắc ng ợc bằng phần mềm LabVIEW 64

4.3 Kết quả thực nghiệm 66

4.3.1 Con lắc ho t động không sự tác động bên ngoài 66

4.3.2 Con lắc ho t động có sự tác động bên ngoài 67

PH NăK TăLU Nầầầầầầầầầầầầầầầầầầầầầầầầầầ 69

TĨIăLI U THAMăKH Oầầầầầầầầầầầầầầầầầầầầầầầầ70 PH ăL Cầầầầầầầầầầầầầầầầầầầầầầầầầầầầầầ 71

Trang 7

1. PID : PROPOTIONAL INTEGRAL DERIVATIVE

2. LQR : LINEAR QUADRATIC REGULATOR

Trang 8

STT Tênăhình Trang

Đáp ứng v trí x của hệ thống khi Q(1,1)=3000 và Q(3,3)=3000 34

Trang 9

28 Hìnhă3.11ă: Đáp ứng góc θ của hệ thống khi Q(1,1)=10 và Q(3,3)=1000 38

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR

(với nhiễu � = 0.001, nhiễu xc = 0.01)

41

34

Hìnhă3.17ă:

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR + Kalman

(với nhiễu � = 0.001, nhiễu xc = 0.01)

42

35

Hìnhă3.18ă:

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR

(với nhiễu � = 0.001, nhiễu xc = 0.1)

42

36

Hìnhă3.19ă:

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR + Kalman

(với nhiễu � = 0.001, nhiễu xc = 0.01)

43

37

Hìnhă3.20ă:

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR

(với nhiễu � = 0.001, nhiễu xc = 0.1)

43

38

Hìnhă3.21ă:

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR + Kalman

(với nhiễu � = 0.001, nhiễu xc = 0.1)

44

39

Hìnhă3.22ă:

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR

(với nhiễu � = 0.001, nhiễu xc = 0.1)

44

Trang 10

41

Hìnhă3.24ă:

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR

(với nhiễu � = 0.01, nhiễu xc = 0.01)

45

42

Hìnhă3.25ă:

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR + Kalman

(với nhiễu � = 0.01, nhiễu xc = 0.01)

46

43

Hìnhă3.26ă:

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR

(với nhiễu � = 0.01, nhiễu xc = 0.01)

46

44

Hìnhă3.27ă:

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR + Kalman

(với nhiễu � = 0.01, nhiễu xc = 0.01)

47

45

Hìnhă3.28ă:

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR

(với nhiễu � = 0.1, nhiễu xc = 0.0)

47

46

Hìnhă3.29ă:

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR + Kalman

(với nhiễu � = 0.1, nhiễu xc = 0.0)

48

48

Hìnhă3.30ă:

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR

(với nhiễu � = 0.1, nhiễu xc = 0.0)

48

48

Hìnhă3.31ă:

Đáp ứng của hệ thống khi sử dụng bộ điều khiển LQR + Kalman

(với nhiễu � = 0.1, nhiễu xc = 0.0)

49

Trang 11

56 Hìnhă4.8: Cấu t o Encoder OMRON E6B2-CWZ6C 54

64 H ìnhă4.16: L u đ quá trình thu thập và tính toán các thông số từ encoder 63

70 Hìnhă4.22: Con lắc b tác động bên ngoài với lực tác động nhỏ làm d ch

71 Hìnhă4.23: Con lắc b tác động bên ngoài với lực tác động lớn làm xoay

Trang 12

STT Tênăb ng Trang

3 B ngă3.1 Thông số của hệ thống con lắc ng ợc đ ợc thiết kế 28

4 B ngă4.1 Thông số của hệ thống con lắc ng ợc đ ợc thiết kế 49

5 B ng 4.2 Thông số kỹ thuật của Arduino UNO R3 50

Trang 13

Kíăhi u ụănghƿa Đ năv

3 l Khoảng cách từ tâm con lắc đến điểm gốc m

5 θ Góc lệch giữa con lắc và ph ơng th ng đứng rad

15 Im Dòng điện ch y trong dây quấn phần ứng A

17 Ф Từ thông t ng trong máy điện một chiều Wb

Trang 14

PH NăM ăĐ U

I Đặtăv năđ ă

Ngày nay, với sự phát triển m nh mẽ của khoa h c kỹ thuật trong thiết kế và điều khiển hệ thống, việc tự động hóa quá trình sản xuất đang ngày đ ợc đẩy m nh trong các hệ thống công nghiệp trên toàn thế giới Nhiều sản phẩm công nghệ mới

đ ợc t o ra để đáp ứng nhu cầu ngày càng cao của th tr ng Một xu thế mới của

th i đ i là t o ra các hệ thống điều khiển thông minh có khả năng t duy nh nưo bộ của con ng i, có khả năng giải quyết các bài toán khó, có khả năng xử lý nhiều

lo i tín hiệu mập m , thiếu chính xác Hay nói cách khác là có khả năng h c hỏi, tự chỉnh đ nh l i sao cho phù hợp với sự thay đ i không l ng đ ợc của đối t ợng điều khiển [5] Với yêu cầu đó, hàng lo t các ph ơng pháp điều khiển hiện đ i có

độ tin cậy và chính xác cao nh PID[4], LQR[4], Fuzzy[6], Neural Network[6]…

đư ra đ i nhằm đáp ứng yêu cầu trên

Các ph ơng pháp đ ợc đề xuất trên đều đ ợc kiểm chứng thông qua mô hình con lắc ng ợc và đư thu đ ợc một số thành công đáng kể Có thể kể đến nh :

 Việc thiết kế hai bộ điều khiển PID riêng biệt đư cho khả năng điều khiển đ ợc cân bằng con lắc ng ợc, nh ng con lắc vẫn còn dao động dẫn đến v trí của xe không n đ nh

 Với giải thuật điều khiển tối u LQR, hệ con lắc ng ợc b dao động rất m nh, v trí xe gần nh không thể điều khiển quanh điểm đặt

 Ngoài các giải thuật kinh điển kể trên, một số nghiên cứu đư áp dụng các giải thuật điều khiển thông minh vào việc điều khiển th i gian thực hệ con lắc ng ợc Các thông số đáp ứng của hệ thống với giải thuật này tốt hơn so với các giải thuật điều khiển kinh điển khi con lắc không còn b dao động và v trí xe đ ợc giữ n đ nh, khắc phục đ ợc vấn đề đòi hỏi sự chính xác của các thông số trong mô hình toán gặp phải trong việc xây dựng các bộ điều khiển với giải thuật PID hay LQR

Trang 15

Tuy nhiên, các bộ điều khiển trên đơn thuần là các bộ điều khiển tĩnh nên việc tinh chỉnh đáp ứng của hệ thống sẽ gặp nhiều khó khăn

Với những lý do trên, tôi đư ch n đề tài: “ĐI UăKHI NăCỂNăB NGăCONă

II Đ nhăh ngăcủaăđ ătƠi

Đề tài tập trung nghiên cứu các vấn đề chính sau :

o Xây dựng mô hình toán h c con lắc ng ợc

o Điều khiển cân bằng hệ thống bằng bộ điều khiển LQR kết hợp bộ l c Kalman

o Mô phỏng hệ thống bằng phần mềm Matlab - Simulink, đánh giá kết quả

o Mô phỏng và giám sát hệ thống bằng LabView

III Nhi măv ăcủaălu năvĕn

Đề tài tập trung nghiên cứu mô hình toán h c cho hệ con lắc ng ợc , tiến hành khảo sát, thiết kế hệ thống điều khiển và xây dựng các mô hình mô phỏng của giải thuật điều khiển cho hệ con lắc ng ợc Đánh giá các kết quả thu đ ợc trên mô hình mô phỏng về đặc tuyến làm việc, th i gian đáp ứng xác lập, sự n đ nh của hệ thống r i ứng dụng ph ơng pháp vào ch y thực tế trên mô hình con lắc So sánh kết quả mô phỏng và kết quả thực tế, phân tích đ ợc những mặt u điểm và khuyết điểm, từ đó rút ra ph ơng pháp điều khiển hợp lý cho hệ con lắc ng ợc

IV K tăqu ămongămu năđ tăđ c

 Xây dựng đ ợc mô hình mô phỏng hệ con lắc ng ợc bằng phần mềm MATLAB để nghiên cứu đặc tính về đặc tính làm việc, th i gian xác lập của giải thuật

 Xây dựng đ ợc mô hình giám sát hệ thống bằng LabView

 Điều khiển cân bằng cho hệ con lắc ng ợc

 So sánh đánh giá u khuyết điển của các giải thuật đư sử dụng trong luận văn

từ đó cải thiện thêm ph ơng pháp điều khiển mô hình con lắc ng ợc

Trang 16

CH NGă1:ăGI IăTHI UăBĨIăTOÁNăCONăL CăNG C

1.1 L ýăthuy tăv ăconăl căng c

Hệ thống con lắc ng ợc là một đối t ợng nghiên cứu rất ph biến từ những năm 1950 [6] Nó vốn là một hệ thống không n đ nh th ng đ ợc sử dụng để kiểm tra sự thực thi và hiệu quả của các thuật toán điều khiển

Cấu trúc động h c của mô hình con lắc ng ợc hai bậc tụ do bao g m một con lắc là một thanh đ ng chất có chiều dài l có một đầu tự do có thể chuyển động theo trục ngang x , đầu còn l i của con lắc đ ợc gắn cố đ nh vào trục quay cố đ nh trên xe Xe đ ợc truyền động b i một động cơ điện có h i tiếp, thông qua hệ thống Puly và dây đai để có thể di chuyển d c trục trên đ ng ray ph ng trong ph m vi chuyển động giới h n Việc di chuyển của hệ thống con lắc phụ thuộc vào hệ thống điều khiển thông minh, có nhiệm vụ giúp xe di chuyển và giữ cho hệ thống đ ợc cân bằng

Hìnhă1.1: Mô hình con lắc ng ợc

Có nhiều lý thuyết và ph ơng pháp thiết kế cân bằng hệ thống con lắc ng ợc trong các công bố của các thập niên qua nh : PID, Điều khiển tr ợt, LQR, Fuzzy, Neural Network…Với đề tài này, ph ơng pháp điều khiển đ ợc lựa ch n là ph ơng pháp điều khiển LQR Đây là ph ơng pháp điều khiển t ơng đối đơn giản song l i mang l i tính đáp ứng nhanh và n đ nh cho hệ thống

Trang 17

1.2.ăMôăhìnhătoánăh căchoăh ăconăl căng c.ă

1.2.1.ăMôăhìnhătoánăh căcủaăconăl căng că[10]

Mô hình con lắc ng ợc sử dụng trong đề tài có d ng nh hình 1.2

Hìnhă1.2: Hình ảnh con lắc ng ợc thực tế

Mô hình toán h c của hệ thống đ ợc xây dựng dựa trên cơ s các đ nh luật vật lý cơ h c của Newton Mô hình toán h c cần thiết, để tính toán thông số bộ điều khiển và mô phỏng hệ thống

Giả sử con lắc ng ợc đ ng chất và có tr ng tâm t i tâm của thanh, giải phóng liên kết, phân tích lực tác động ta đ ợc các lực tác động vào hệ nh hình 1.3

Hìnhă1.3: Các lực tác động vào hệ con lắc

Trong đó, các thông số trong mô hình đ ợc cho trong bảng 1.1

P

g

P g

Trang 18

B ngă1.1ă: Thông số và đơn v của mô hình con lắc ng ợc

l Khoảng cách từ tâm con lắc đến điểm gốc m

J Mômen quán tính của con lắc kg/m2

θ Góc lệch giữa con lắc và ph ơng th ng đứng rad

Trang 19

Từ hai ph ơng trình (1.3) và (1.6) ta có hệ ph ơng trình mô tả đặc tính động

h c phi tuyến của hệ thống con lắc ng ợc:

.

2

2

c

c c

x ml l

g m ml

J

F Sin ml Cos ml x b x m M

(1.7)

Biến đ i hai ph ơng trình (1.3) và (1.6) ta có:

m M

Sin ml Cos ml x b F

ml J

mgl x

2

2 2

2 2

cos

sin sin

cos

cos

sin cos

sin

ml J m M ml

mgl m M ml

x b F ml

ml ml

J m M

mgl mgl

ml x b F ml J x

1.2.2.ăMôăhìnhătoánăh căcủaăđ ngăc ăDC.ă[9]

Xét động cơ điện một chiều có sơ đ nh sau:

Hìnhă1.4: Sơ đ m ch điện t ơng đ ơng động cơ điện một chiều

Áp dụng đ nh luật Kirchhoffs 2 cho sơ đ hình 1.3 ta đ ợc :

Trang 20

 Rm: Điện tr phần ứng

 Lm: độ tự cảm của cuộn dây phần ứng

 Im: Dòng điện ch y trong dây quấn phần ứng

 Km: Hệ số kết cấu máy

a

N p

 Ф : Từ thông t ng trong máy điện một chiều

Đặt Km.Ф = K ta có moment của động cơ:

m m m

Giả sử ảnh h ng của thành phần cảm kháng trong cuộn dây là không đáng

kể, khi động cơ một chiều có công suất bé Ta có, ph ơng trình (1.11) đ ợc viết l i

m

m m

m

R

KVKT

KKVm

FrR

r

xKKV

2 2

xKVrR

KF

m c m

Trang 21

r R K

r R K

2

2

c

c c

c

x ml mgl

ml J

x V Sin

ml Cos ml x b x m M

.

x ml l

g m ml

J

V Sin

ml Cos ml x b x m M

1 Cos θ

0 sin θ

x ml mgl

ml J

V ml

x b x m M

1.3ăMôăph ngăconăl căng cătrênăMatlab

Từ các ph ơng trình (1.10) ta xây dựng đ ợc mô hình con lắc ng ợc trong Matlab Simulink nh sau :

Trang 22

Hìnhă1.5 : Mô hình mô phỏng của con lắc ng ợc

Trong đó khối mô hình mô phỏng con lắc ng ợc đ ợc xây dựng thỏa công thức (1.10) và đ ợc xây dựng trong Matlab nh hình 1.6

Hìnhă1.6ă: Cấu trúc bên trong của khối Mô hình mô phỏng con lắc ng ợc

Các khối tính F, tính góc lệch, tính v trí xe là các ph ơng trình toán đư đ ợc xây dựng trong các phần trên Cụ thể nh sau:

 Khối tính góc lệch θ :

Trang 23

Hình 1.7 : Sơ đ mô tả góc lệch của con lắc ng ợc

T ơng tự nh vậy, sơ đ thể hiện v trí xe goong đ ợc xây dựng từ công thức (1.9) và đ ợc thể hiện trong Matlab nh hình 1.8

Hìnhă1.8ă: Sơ đ mô tả v trí xe

Sau khi xây dựng hệ con lắc ng ợc, ta tiến hành mô phỏng trên Matlab Simulik, với các giá tr của hệ nh bảng 1.2 :

B ngă1.2: Giá tr các thông số của hệ con lắc ng ợc

l Khoảng cách từ tâm con lắc đến điểm gốc 0,33/2 m

J Mômen quán tính của con lắc 0,002 kg/m2

Trang 24

Khi không có bộ điều khiển, với các thông số ban đầu:

u 2 , 0

0

Với hệ con lắc đ ợc thả tự do, ta thấy đáp ứng của hệ qua Matlab Simulink

đ ợc thể hiện nh hình 1.9

Hìnhă1.9 : Đáp ứng góc θ của hệ con lắc ng ợc khi không có bộ điều khiển

Nh vây, với tín hiệu điều khiển u=0, quan sát góc θ, ta thấy:

 Con lắc rơi xuống v trí phía d ới, dao động tự do tắc dần

 Kết quả mô phỏng cho thấy đặc tính mô hình đúng với thực tế quy luật vật lý của hệ thống thật

 Hệ thống không n đ nh nếu không có bộ điều khiển

Trang 25

CH NGă2:ăPH NGăPHÁPăĐI UăKHI N

2.1.ăPh ngăphápăđi uăkhi năPID

Bộ điều khiển PID ( Propotional Integral Derivative) là một bộ điều khiển

h i tiếp vòng kín đ ợc sử dụng rộng rưi trong các hệ thống điều khiển công nghiệp,

có u điểm là độ chính xác cao, đáp ứng nhanh và n đ nh

Bộ điều khiển PID là sự kết hợp của 3 khâu điều khiển riêng biệt :

o Điều chỉnh tỉ lệ (P _ Propotional): t o ra tín hiệu điều chỉnh tỷ lệ với sai lệch đầu vào Khâu này nhằm giúp tăng sự n đ nh cho quá trình điều khiển

o Điều chỉnh tích phân (I _ Integral): xác đ nh tác động của t ng các sai

số và t o ra tín hiệu điều chỉnh sao cho độ lệch giảm tới 0.Từ đó cho phép lo i bỏ nhiễu trong quá trình điều khiển

o Điều chỉnh vi phân (D _ Derivative): xác đ nh tác động của tốc độ biến đ i sai số, t o ra tín hiệu điều chỉnh sao cho tỉ lệ với tốc độ thay

đ i sai lệch đầu vào Từ đó thay đ i tốc độ đáp ứng của hệ thống điều khiển

Nếu g i Kp, KI, KDlần l ợt là độ lợi tỉ lệ, độ lợi tích phân, độ lợi vi phân Ta

có cấu trúc của một bộ điều khiển PID sẽ nh hình 2.1

Hìnhă2.1 Cấu trúc bộ điều khiển PID

Trang 26

Bộ điều khiển PID chỉ có thể điều khiển đ ng th i một thông số của hệ thống, để điều khiển đ ợc góc con lắc và v trí của xe t i cùng một th i điểm thì chúng ta cần hai bộ điều khiển PID Trong đó một thông số đ ợc xem nh là thông

số chính và đ ợc dung để điều khiển trực tiếp momen của động cơ trong khi đó thông số còn l i đ ợc sử dụng nh điểm tham chiếu của thông số chính Từ đó, ta

có một là góc của con lắc, hai là v trí xe của con lắc đ ợc dùng làm thông số chính của con lắc Hai tín hiệu đầu vào đ ợc đ a vào bộ điều khiển PID và đầu ra là tín hiệu lực tác động vào xe

u điểm của bộ điều khiển PID là dễ dàng thiết kế không phụ thuộc nhiều vào mô hình toán của đối t ợng Bộ điều khiển sẽ thực hiện giảm tối đa sai số bằng cách điều chỉnh giá tr điều khiển đầu vào Trong tr ng hợp không có kiến thức cơ bản về quá trình thì bộ điều khiển PID là tốt nhất

H n chế các bộ điều khiển PID có thể dùng nhiều cho bài toán điều khiển và

th ng đ t đ ợc kết quả nh ý mà không dùng bất kỳ cải tiến hay điều chỉnh nào và

th ng không cho ta điều khiển tối u Khó khăn cơ bản của bộ điều khiển PID là phản h i với hệ số không đ i

2.2ăPh ngăphápăđi uăkhi năLQR

2.2.1ăĐi uăkhi năt iă u

Điều khiển tối u là ph ơng pháp điều khiển hệ thống sao cho đ t đ ợc một chỉ tiêu chất l ợng cho tr ớc là tốt nhất Đây là một ph ơng pháp điều khiển hiện dang đ ợc sử dụng rộng rưi trong nhiều lĩnh vực : không gian, điều khiển quá trình, Robot, kỹ thuật sinh h c… Ph ơng pháp này có thể phân lo i nh sau:

 Điều khiển tối u tĩnh: Đây là ph ơng thức điều khiển mà chỉ tiêu

chất l ợng không phụ thuộc vào th i gian

 Điều khiển tối u động : Đây là ph ơng thức điều khiển mà chỉ tiêu chất l ợng phụ thuộc vào th i gian, đ ợc đặc tr ng b i các bài toán :

o Điều khiển toàn ph ơng tuyển tính LQR

o Điều khiển tối u chỉ tiêu H2

o …

Trang 27

2.2.2 B ăđi uăkhi năLQR

Ph ơng pháp điều khiển LQR là một ph ơng pháp điều khiển m nh để điều khiển hệ thống tuyến tính đ ợc mô tả bằng ph ơng trình tr ng thái Kỹ thuật LQR

t o ra bộ điều khiển vòng kín n đ nh với năng l ợng cung cấp cho hệ thống là nhỏ nhất

Xét đối t ợng tuyến tính hóa đ ợc mô tả b i ph ơng trình tr ng thái:

 t Ax t Bu t

x  

Thông th ng nếu hệ n đ nh thì khi không b kích thích hệ luôn có xu

h ớng tiến về điểm tr ng thái cân bằng, tức là điểm mà khi không có tác động từ bên ngoài ( u = 0) hệ sẽ nằm luôn t i đó ( 0

 luôn chỉ có một điểm cân bằng

Ph ơng pháp điều khiển LQR đ ợc dùng cho mô hình của hệ đư tuyến tính hóa t i v trí cân bằng Bộ điều khiển phản h i tr ng thái đ ợc xác đ nh thông qua việc giải ph ơng trình Ricatti để có đ ợc ma trận phản h i tr ng thái K, nhằm kéo

hệ từ điểm b nhiễu tác động x0 về l i v trí cân bằng sao cho quá trình này tiêu tốn năng l ợng là thấp nhất

2.2.2.1 Đi uăkhi năLQRăliênăt că[1]

Xét đối t ợng tuyến tính hóa đ ợc mô tả b i ph ơng trình tr ng thái:

x  1 , 2 , , : Vecto tr ng thái

m t u t u t u t

u  1 , 2 , , : Vecto tin hiệu điều khiển

Trang 28

Hìnhă2.2: Ph ơng pháp điều khiển LQR

Ph ơng pháp điều khiển LQR là một trong các ph ơng pháp điều khiển tối

u thông dụng, ph ơng pháp nhằm đi tìm tín hiệu điều khiển u(t) để điều chỉnh hệ thống từ tr ng thái ban đầu x(0) = x0 bất kỳ về tr ng thái cuối x(tf) = 0 sao cho tối thiểu hàm chỉ tiêu chất l ợng d ng toàn ph ơng :

 u x    t Mxt x        t Qxt u t Rut dtJ

f t

t

T T

f f T

2

1

Trang 29

Giải ph ơng trình vi phân (2.9) ta tìm đ ợc x(t) và λ(t) Thay λ(t) vào (2.7)

ta tìm tín hiệu điều khiển tối u :

P A PA

P   T   1 T

 t M

P f 

2.2.2.2 Thi tăk ăb ăđi uăkhi năLQRăliênăt c [9]

Dựa vào lý thuyết về kỹ thuật điều khiển LQR đ ợc trình bày phần trên, ta tiến hành thiết kế bộ điều khiển LQR điều khiển cân bằng cho hệ con lắc ng ợc Để đơn giản hóa cũng nh tăng độ chính xác cho việc thiết kế ta sử dụng phần mềm Matlab h trợ tính toán

Các b ớc thiết kế có thể đ ợc trình bày nh sau:

a Kiểm nghiệm khả năng thiết kế

b Ch n ma trận Q và ma trận R để tối u hóa hàm chỉ tiêu chất l ợng

 u x    t Mx t x    t Qx t u    t Ru t dt J

f t

t

T T

f f T

Ru t

Ch n R = 1, để J → Jminthì xT   t Qx t phải tiến đến giá tr nhỏ nhất

Trang 30

Do ma trận Q đối xứng và không xác đ nh âm, nên ta có thể tìm đ ợc một ma trận C, sao cho: Q  CTC để xT   t Qx t → 0

c Tính ma trận h i tiếp tr ng thái K

d Mô phỏng và kiêm tra kết quả, đ ng th i thay đ i thông số ma trận Q

và R để hệ thống đ t đ ợc tr ng thái điều khiển tối u nhất

o Muốn giảm năng l ợng ta tăng R

2.3ăThi tăk ăb ăđi uăkhi năs

Chúng ta đư thiết kế đ ợc bộ điều khiển theo ph ơng pháp t a độ cực và LQR cho đáp ứng điều khiển tốt Tuy nhiên để có thể lập trình trên vi điều khiển Arduino Uno thì chúng ta cần thiết kế bộ điều khiển số mô hình gián đo n

2.3.1ăXơyăd ngămôăhìnhăgiánăđo năchoăh ăconăl căng că[6]

Mô hình gián đo n của hệ con lắc ng ợc đ ợc trình bày nh hình 2.3, trong

đó khâu trích mẫu và khâu giữ chậm thành phần bậc 0 là khâu ZOH

Hìnhă2.3: Mô hình gián đo n hệ thống con lắc ng ợc với khâu ZOH

Ma trận A, B, C là các ma trận tr ng thái đ nh nghĩa hệ thống Các ma trận này đ ợc xây dựng dựa trên các thông số kết cấu của hệ thống T là chu kỳ lấy mẫu

Trong đó các b ớc gián đo n hóa đ ợc tính toán nh sau:

 Tính toán ma trận quá độ :

Trang 31

Ma trận quá độ trong miền Lapales:

)(1

kTuDkTxCkTy

kTuBkTxATkx

d d

d d

C C

Bd B

A

d d

T d

T d

0

Hìnhă2.4: Mô hình gián đo n hóa t ơng đ ơng của hệ con lắc ng ợc

Hàm truyền của khâu ZOH đ ợc xây dựng từ hệ ph ơng trình tuyến tính của

c

xmlmgl

mlI

Vml

xb

xmM

2

)(

2

2 2

.

) (

s mlX mgl

s ml I

U s

ml s X b s X m M

s s

s

s s

s s

Từ hệ ph ơng trình trên ta có:

Trang 32

s s

X mgl s

ml I mls mls

mgl s

ml I X

2 2 2 2

2 2

ml I s b s m M

).

)

mls

mgls

mlIsbsmM

s q

mgl m M s q

ml I b s

s q ml

Us

s

) ( )

( )

s q

mgl m M s q

ml I b s

q

mgl s

q

ml I

( )

(

.

2 3

2 4

2 2

 Và ma trận quá độ s sI  A 1

2.3.2ăThi tăk ăb ăđi uăkhi năLQRăgiánăđo nă[1]

Mô hình gián đo n t ơng đ ơng của hệ thống:

Trang 33

Hìnhă2.5: Mô hình gián đo n t ơng đ ơng của hệ thống

Xét đối t ợng tuyến tính r i r c đ ợc mô tả b i ph ơng trình tr ng thái:

x  1 , 2 , , : Vecto tr ng thái

m k u k u k u k

u  1 , 2 , , : Vecto tin hiệu điều khiển

Ta đi tìm tín hiệu điều khiển u(k) để điều chỉnh hệ thống từ tr ng thái ban đầu x(0) = x0 bất kỳ về tr ng thái cuối x(N) = 0 sao cho tối thiểu hàm chỉ tiêu chất

k

T T

T

k Ru k u k Qx k x N

Mx N x u

T

d P k B R B P k A B

k

 P t là nghiệm bán xác đ nh d ơng của ph ơng trình vi phân Ricatti

Trang 34

2.4ăB ăl căKalmană[5]

Nh đư phân tích mục trên, ta thấy để có thể điều khiển đ ợc hệ thống cân bằng thì việc đầu tiên quan tr ng phải làm là xác đ nh đ ợc chính xác góc nghiêng của con lắc Trong đề tài, ta sử dụng Encoder để đo góc Tuy nhiên khi sử dụng Encoder, nh ợc điểm là mỗi lần có những rung động nào đó mà ta không quản lý

đ ợc, encoder sẽ b sai một xung Đối với ứng dụng điều khiển con lắc ng ợc cân bằng khi động cơ ho t động sẽ b rung rất nhiều nên giá tr góc nghiêng ớc l ợng

g m nhiều những giá tr không mong muốn Để khắc phục vấn đề đó, ta sử dụng bộ

l c Kalman

Lý thuyết l c Kalman đ ợc đề xuất từ năm 1960 b i R.E.Kalman mô tả một giải thuật truy h i để giải quyết bài toán l c thông tin r i r c tuyến tính (discrete data linear filtering) Một cách khái quát, bộ l c Kalman là tập hợp các ph ơng trình truy h i cho phép ta ớc l ợng tr ng thái của môt quá trình theo tiêu chuẩn bình ph ơng nhỏ nhất Bộ l c Kalman rất hiệu quả trong việc ớc l ợng các tr ng thái trong quá khứ, hiện t i và t ơng lai ngay cả khi mô hình của hệ thống không

đ ợc biết chính xác Sơ đ của bộ l c Kalman có thể đ ợc trình bày nh hình 2.6

Hìnhă2.6 : Sơ đ khối bộ l c Kalman

Trang 35

Đối với bộ l c Kalman, thuật ngữ “l c” không đ ợc hiểu giống nh các bộ

l c thông th ng Bộ l c Kalman là một giải thuật tính toán dựa vào tất cả các thông tin nhận đ ợc đầu vào để đ a ra thông tin đầu ra đáng tin cậy nhất Bộ l c Kalman có khả năng lo i bỏ các nhiễu trắng mà nó nhận đ ợc đầu vào dựa vào các thống kê tr ớc đó và hiệu chỉnh l i bằng các giá tr đo hiện t i Nh có cơ chế cập nhật sai lệch bias t i mỗi th i điểm tính toán nên giá tr góc nghiêng ớc l ợng

kwkuBkxAk

 v(k) là giá tr nhiễu đo l ng t i th i điểm k

Giả sử nhiễu hệ thống và nhiễu đo l ng là nhiễu Gauss, không t ơng quan, có trung bình bằng 0 và ph ơng sai là:

R vv E

Q ww E

kyk

yLkuBkxAk

x

d

d d

ˆˆ

1ˆ1ˆ

T d

d P k C C P k C R A

N T d d

N T d

dP k A Q AP kC R C P k AA

k

Sơ đ khối của bộ l c Kalman r i r c đ ợc mô tả nh hình 2.9

Trang 36

Hìnhă2.7: Sơ đ khối bộ l c Kalman r i r c[5]

2.4.2ăB ăl căKalmanăliênăt c.[5]

y

twtBut

Axt

Trong đó :

 w(t)là nhiễu hệ thống (th ng là nhiễu Gaussian)

 v(t) là giá tr nhiễu đo l ng

Giả sử nhiễu hệ thống và nhiễu đo l ng là nhiễu Gauss, không t ơng quan, có trung bình bằng 0 và ph ơng sai là:

R vv E

Q ww E

tytyLtButxAtx

ˆˆ

ˆˆ

T T

QCPRPCPA

Sơ đ khối của bộ l c Kalman liên tục đ ợc mô tả nh hình 2.8

Trang 37

Hìnhă2.8: Sơ đ khối bộ l c Kalman liên tục[5]

2.5ăĐi uăkhi năSwingăậ Up.[6]

Tr ng tâm của việc điều khiển con lắc ng ợc là giử con lắc n đ nh v trí

cân bằng Tuy nhiên ban đầu con lắc v trí bên d ới, ta cần một bộ điều khiển xoay con lắc lên v trí th ng đứng Quá trình trên đ ợc g i là quá trình swing-up Khi con lắc lên gần tới v trí th ng đứng, ch ơng trình điều khiển LQR đ ợc kích

ho t giử cân bằng cho con lắc v trí th ng đứng

Có nhiều ph ơng pháp điều khiển quá trình swing-up đ ợc đ a ra: Điều khiển theo kinh nghiệm( Heuristic control), Điều khiển dựa trên năng l ơng( Energy control), Điều khiển năng l ợng tối thiểu Với yêu cầu th i gian điều khiển ngắn nhất cũng nh sự chắc chắc trong quá trình swing-up nên chúng ta chon

ph ơng pháp điều khiển dựa trên năng l ơng ( Energy control)[6]

Ph ơng pháp điều khiển dựa trên năng l ợng đ ợc đ a ra từ rất sớm, năm

1996, bới hai nhà khoa h c K J Åström và K Furuta

Ph ơng trình năng l ợng của con lắc:

Π θ

0 θ

năng l ợng En  0 (2.41)

Trang 38

Vậy năng l ợng cần cho quá trình Swing – Up là:

m.g.l 2

J2

1dt

θ

xml0

 xvà Cos  trái dấu

Nh vậy luật điều khiển thỏa ph ơng trình:

0θCosθ khi θ

Cosθsign

Trang 39

CH NGă3:ăTHI TăK ăB ăĐI UăKHI NăCỂNăB NGăCONă

Cấu trúc động h c của mô hình con lắc ng ợc đ ợc sử dụng bao g m một con lắc là một thanh đ ng chất có chiều dài l có một đầu tự do có thể chuyển động theo trục ngang x , đầu còn l i của con lắc đ ợc gắn cố đ nh vào trục quay cố đ nh trên xe Xe đ ợc truyền động b i một động cơ điện có h i tiếp, thông qua hệ thống Puly và dây đai để có thể di chuyển d c trục trên đ ng ray ph ng trong ph m vi chuyển động giới h n Cảm biến góc nghiêng gắn đ ng trục Puly của cơ cấu chuyển động nhằm xác đ nh góc quay của con lắc Từ đó, tín hiệu sẽ đ ợc đ a về hệ thống điều khiển thông minh nhằm đảm bảo con lắc di chuyển và đ ợc giữ cân bằng

B ngă3.1 Thông số của hệ thống con lắc ng ợc đ ợc thiết kế

3.1.ăThi tăk ăb ăđi uăkhi năLQR

3 1.1ăH ăph ngătrìnhătr ngătháiăcủaăconăl căng c

Mô hình tr ng thái của hệ con lắc ng ợc có d ng :

) ( ) ( ) ( t Ax t Bu t

lmJ

lgmx

lmJ

lm

VmM

xmM

bm

M

lmx

c

c c

(3.2)

Trang 40

blmq

mMlgm

Vq

lmJxq

lmJb

q

lmg

xxxx

Vu

4 3 2

l m

x x x x

q

l m J b q

l g m

q

l m b

q

l g m m M

0

0

0

0

.

1 0

0 0

0

0

0

2 4

3 2 1

2 2

JmM

3.1.2ăB ăđi uăkhi năLQR

Dựa vào lý thuyết về kỹ thuật điều khiển LQR đ ợc trình bày phần trên, ta tiến hành thiết kế bộ điều khiển LQR điều khiển cân bằng cho hệ con lắc ng ợc Sử dụng phần mềm Matlab để tính toán và mô phỏng đáp ứng của hệ thống Mô hình điều khiển con lắc ng ợc bằng thuật toán LQR đ ợc xây dựng nh hình 3.1

Ngày đăng: 24/04/2021, 09:17

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm