ĐẠI HỌC BÁCH KHOA HÀ NỘI TRƯỜNG ĐIỆN – ĐIỆN TỬ KHOA TỰ ĐỘNG HÓABÁO CÁO BÀI TẬP LỚN HỌC PHẦN MÔ HÌNH HÓA & MÔ PHỎNG HỆ THỐNG ĐIỀU KHIỂN ĐỀ BÀI: Mô hình hóa và mô phỏng hệ thống điều khiển
Trang 1ĐẠI HỌC BÁCH KHOA HÀ NỘI TRƯỜNG ĐIỆN – ĐIỆN TỬ KHOA TỰ ĐỘNG HÓA
BÁO CÁO BÀI TẬP LỚN HỌC PHẦN MÔ HÌNH HÓA & MÔ PHỎNG HỆ THỐNG ĐIỀU
KHIỂN
ĐỀ BÀI: Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot
loại 3 bánh
GVHD: Ts Vũ Thị Thúy Nga
Nguyễn Khánh Châu 20186310
Trương Hải Đăng 20181381
Hà Nội, 2022
Trang 2Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
Mục lục
1.2 Một số loại Wheeled Mobile Robot 1
Phần 3: Các phương án điều khiển đối tượng Mobile Robot 13
3.2.1 Điều khiển hướng và điều khiển tịnh tiến 143.2.2 Các hướng tiếp cận cơ bản 15
3.3.1 Bám quỹ đạo sử dụng các hướng tiếp cận cơ bản 183.3.2 Phân tích thành phần feedforward và thành phần feedback 18
3.3.4 Phát triển mô hình sai lệch theo dõi quỹ đạo động học 20
Phần 4: Thiết kế bộ điều khiển cho đối tượng Mobile robot 3 bánh 244.1 Thiết kế bộ điều khiển động học vòng ngoài 244.2 Thiết kế bộ điểu khiển động lực học vòng trong 26Phần 5: Mô phỏng hệ thống điều khiển trên Matlab Simulink 28
Trang 3Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
5.3 Bộ điều khiển vòng ngoài Kynematic Controller 305.4 Bộ điều khiển vòng trong Dynamic Controller 31
5.5.1 Kết quả mô phỏng với kịch bản thứ nhất 325.5.2 Kết quả mô phỏng mới kịch bản thứ hai 335.5.3 Kết quả mô phỏng với kịch bản thứ ba 355.5.4 Kết quả mô phỏng với kịch bản thứ tư 36
Trang 4Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
Phần 1: Giới thiệu chung
1.1 Wheeled Mobile Robot
Wheeled Mobile Robot (WMR) là một loại robot có có khả năng di chuyểnbằng bánh xe trong môi trường xung quanh WMR có thể “tự động”, nghĩa là nó cókhả năng tự điều chỉnh hướng di chuyển trong môi trường mà không cần đến thiết
bị dẫn hướng vật lý hay cơ điện
Thành phần chính của một WMR bao gồm bộ điều khiển, các cảm biến, cơcấu chấp hanh (động cơ, bánh xe) và hệ thống điện
1.2 Một số loại Wheeled Mobile Robot
1.2.1 Differential Drive
Differrential Dive là một loại WMR có
2 bánh với 2 bánh được bố trí đồng trục và cả
2 đều là bánh chủ động có thể điều khiển
được, tức là chúng được gắn với 2 cơ cấu
chấp hanh (động cơ) riêng biệt để điều khiển
riêng từng bánh
Ở loại xe này thông thường nó rất khó
để có thể đứng được ở trạng thái cân bằng tự
nhiên nên khá ít được sử dụng trong thực tế
một bánh có thể điều khiển được góc lái, cấu
tạo giống như một chiếc xe đạp
Loại robot này rất hiếm gặp do tính
ứng dụng trong thực tiễn không cao
1.2.3 Tricycle Drive
Tricycle Drive là sự kết hợp giữa 2 loại WMR đã nêu ở trên, nó có 3 bánh xe
và trong đó 2 bánh sau được bố trí đồng trục, và một bánh trước làm bánh lái; 2trong
Trang 5Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
3 bánh xe đó sẽ được gắn với cơ cấu chấp hanh để điều khiển
và bánh còn lại để tự do hoặc cũng có thể sử dụng cơ cấu chấphành để điều khiển chỉ một bánh lái phía trước với tốc độ vàgóc lái mong muốn
Ngoài những loại WMR vừa nêu ở trên, còn rất nhiều loại WMR khác nữa,trên đây chỉ là một số ví dụ điển hình về WMR
Trang 6Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
1.3 Lựa chọn mô hình WMR 3 bánh
Như đã giới thiệu ở trên, WMR loại 3 bánh có 2 loại chính là Tricycle Drive(hay Nonholonomic) và Omni Robot, trong đó Tricyle Drive có thể được chia tiếpthành các loại nhỏ hơn tùy thuộc vào việc bánh nào được gắn cơ cấu chấp hành
Trang 7Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
Phần 2: Mô hình hóa đối tượng Mobile Robot 3
ω : Tốc độ góc của xe quanh tâm ICR
xe r : bán kính bánh xe
α : góc bánh lái so với trục O m X m
Mô hình xe được đặt trong một hệ trục tọa độ tổng quát ( X g ,Y g), và hệ trụctọa độ chuyển động gắn với xe ( X m ,Y m) Vector trạng thái của xe trong hệ tọa độ
Trang 8Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
tổng quát là:
Trang 9Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
Trang 10Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
Trang 11Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
Trang 12Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
Như vậy với đầu vào điều khiển là vector vận tốc v = [v ω]T, ta có ma trận S với các cột của S là các trường vector thể hiện các hướng di chuyển khả dĩ của xe:
Trang 13Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
Trang 14Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
⎢⎣ϕ ⎥⎦ ⎢⎣ 0 1⎥⎦
Tuy vậy, như đã nói xe chỉ có thể chuyển động dọc theo bánh xe, và khôngthể chuyển động trượt sang của bánh Do đó chuyển động của xe chịu các ràngbuộc sau:
Trong đó:
( x2, y2): là tọa
độ của bánh trước.
Trang 15Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
Trang 16Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
Mô hình xe 3 bánh đang xét là mô hình có 2 bánh sau là bánh chủ động đượcđiều khiển bằng 2 động cơ, bánh trước là bánh tự do Hai cơ cấu chấp hành này lầnlượt sẽ sinh ra các momenτRvàτL
Mô hình động lực học chuyển động của xe được mô tả bởi công thức
Lagrange như sau:
: là hiệu giữa động năng và thế năng của hệ thống
Trang 17Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
V (q,q) : Vector lực Coriolis và lực ly tâm
Trang 18Mô hình hóa và mô phỏng hệ thống điều khiển đối tượng Mobile Robot loại 3 bánh
Trang 19Nhân cả 2 vế 2.18 với STthu
Trang 21⎣ ⎦ ⎢ ⎥
⎢ ⎥
⎢⎣ω⎥⎦
Xét cụ thể đối với mô hình động lực học của xe 3 bánh Với m, J lần lượt là
khối lượng của xe, moment quán tính của xe quanh tâm ICR đồng thời bỏ qua thànhphần nhiễuτ
k
trong công thức 2.15
Đồng thời ta xét bài toán đơn giản rằng xe chỉ chạy trên mặt phẳng, nghĩa làthế năng của nó là không đổi, hay ta có thể coi mặt đất là mốc thế năng và do đó thế
năng W t của xe là 0 và thành phần g kcũng biến mất khỏi công thức 2.15
Động năng chuyển động của xe là:
W d
= 1 m x2 + y2+ 1 Jϕ2
Hàm Lagrangian tính bởi:
Trang 23Trong điều kiện lý tưởng, bỏ qua ma sát gây cản trở chuyển động của xe, tức
là coi công suất tổn hao P=0.
Để 2 bánh sau của xe có thể chạy
được với tốc độ dài (v R ;v L)
moment của bánh quanh trục quay và trục
Trang 24) ; xét lực
Trang 25Xét trên hệ trục tọa độ di động gắn trên xe, lực kéo do 2 bánh tác động lên
xe có xu hướng làm xe quay quanh trục của nó với moment M xác định bởi:
+τ
Trang 29Từ đó, không gian trạng thái ở 2.22
0⎤ ⎡ v ⎤
0 = S.v
Trang 31Phần 3: Các phương án điều khiển đối tượng Mobile
Robot
3.1 Tổng quan về điều khiển
Như đã trình bày ở trên, để thuận tiện cho việc thiết kế điều khiển ta thườngchia mô hình trạng thái của xe thành 2 mô hình thành phần là động học và động lựchọc Do đó việc xây dựng các phương án điều khiển cũng dựa trên 2 mô hình này
Thông thường để thiết kế điều khiển cho đối tượng mobile robot dạng này, ta
sẽ sử dụng tới phương án điều khiển kinh điển hay gặp trong các bài toán điềukhiển, đó là sử dụng cấu trúc 2 vòng điều khiển, đây là 1 dạng sách lược điều khiểntầng Trong đó vòng ngoài là vòng điều khiển tốc độ (hay chính là vòng điều khiểnđộng học) và vòng trong là vòng điều khiển moment (vòng điều khiển động lựchọc) Bộ điều khiển động học ở vòng ngoài sẽ tính toán xác định giá trị tốc độ làtrở thành giá trị đặt cho bộ điều khiển động lực học ở vòng trong Sơ đồi khối của
hệ thống được miêu tả như sau:
Ngoài ra, hệ thống điều khiển trên còn có thể biểu diễn theo một cách kháctheo phương pháp EMR như sau:
Trang 323.2 Các hướng tiếp cận cơ bản
3.2.1 Điều khiển hướng và điều khiển tịnh tiến
Gọi góc hướng của robot ở thời điểm t là φ(t) và góc hướng mong muốn là
φref(t), sai lệch góc hướng điều khiển là:
𝑒𝜑(𝑡) = 𝜑𝑟𝑒𝑓(𝑡) − 𝜑(𝑡)Trong trường hợp này, biến cần điều khiển là φ(t) và để điều khiển φ(t) đạtđược tới giá trị mong muốn ta cần điều khiển sai lệch 𝑒𝜑(𝑡) về 0
Góc hướng của robot được thể hiện qua hệ phương trình vi phân của góchướng như sau:
Trang 33Song để xe bám được theo 1 quỹ đạo cho trước hoặc 1 trạng thái cho trước,
ta cần điều khiển tịnh tiến, tức là điều khiển tốc độ dài của xe Ý tưởng thiết kếđiều khiển hợp lý nhất là điều khiển tỷ lệ với sai lệch khoảng cách từ vị trí hiện tạitới vị trí tham chiếu:
𝑣(𝑡) = 𝐾2√(𝑥𝑟𝑒𝑓(𝑡) − 𝑥(𝑡))2+ (𝑦𝑟𝑒𝑓(𝑡) − 𝑦(𝑡))2
Trang 343.2.2 Các hướng tiếp cận cơ bản
Ở phần này, bằng cách kết hợp việc điều khiển góc hướng và điều khiển tịnhtiến đã nói đến ở phần trước, ta sẽ có một số hướng tiếp cận cơ bản trong thực tế đểđiều khiển robot tới một trạng thái tham chiếu
a Điều khiển đến một vị trí đặt
Trong trường hợp này, robot được yêu cầu đi đến một vị trí tham chiếu, nơi
mà không yêu cầu góc hướng cuối cùng Góc hướng của robot được điều khiển liêntục theo hướng của điểm tham chiếu, tức là hướng từ vị trí hiện tại của robot tớiđiểm tham chiếu, gọi là gócϕr, được xác định bởi:
Vận tốc dài và góc lái của bánh trước được điều khiển như sau:
⎧α(t) = K1(ϕref(t) −ϕ (t) )
⎪
⎨
⎪⎩v s(t ) =
Trang 35Trong đó: v(t) vàω (t) được xác định như phần trên
Tuy vậy luật điều khiển như trên sẽ gặp phải một số vấn đề Cụ thể, giá trịtốc độ như trên là luôn dương, do đó robot có thể vô tình đi qua điểm tham chiếu,
và điều này sẽ khiến cho tốc độ lại tiếp tục tăng lên (do khoảng cách tới điểm tham
Trang 36chiếu lại tiếp tục tăng) Mặt khác khi đi qua điểm tham chiếu , vô tình góc hướngtham chiếu sẽ đột ngột quay ngược lại Giải pháp được đề ra bằng cách thay đổicông thức tính vận tốc và góc lái như sau:
có thể áp dụng lại các luật điều khiển ở phần trên
Ý tưởng của phương pháp này là sử một điểm trung gian( x t , y t) được đặt
cách điểm tham chiếu một khoảng r sao cho hướng từ điểm trung gian về phía
điểm tham chiếu trùng với hướng tham chiếu:
Trang 37Thuật toán điều khiển robot sẽ được chia làm 2 giai đoạn: Ở giai đoạn 1,robot được điều khiển đi tới điểm trung gian Khi khoảng cách từ vị trí của robottới điểm trung gian đủ nhỏ ( ) thì robot sẽ chuyểnsang giai đoạn 2, điều khiển robot về điểm tham chiếu.
Trang 38c Từ trạng thái tham chiếu tới quỹ đạo tham chiếu
Hướng tiếp cận vấn đề này khá đơn giản, nó hoàn toàn dựa trên tinh thần củađiều khiển tới 1 trạng thái tham chiếu Ở đây quỹ đạo sẽ được chia thành nhiềuđoạn thẳng nhỏ và đầu mút của các đoạn thẳng sẽ là các trạng thái tham chiếu Nói
cách khác một quỹ đạo tham chiếu sẽ gồm một chuỗi trạng tham chiếu Ti với i = 1, 2,3 n
Robot sẽ phải di chuyển lần lượt từ T1tới T2,… cho tới Tn
Trang 393.3 Điều khiển bám quỹ đạo
3.3.1 Bám quỹ đạo sử dụng các hướng tiếp cận cơ bản
Tương tự như phần 3.2.2.c, ta có thể hình dung quỹ đạo tham chiếu như một
vị trí chuyển động tham chiếu Mỗi thời điểm trích mẫu, điểm tham chiếu lại được
xác định bằng điểm hiện tại của quỹ đạo tham chiếu theo thời gian (x ref (t), y ref (t) )
Việc điều khiển tới điểm tham chiếu này được áp dụng luật điều khiển như công thức(3.2)
⎧α(t) = K1(ϕref(t) −ϕ (t) )
⎨
⎪⎩v s(t) =
3.3.2 Phân tích thành phần feedforward và thành phần feedback
Cách tiếp cận nêu ở phần 3.3.1 rất dễ thực hiện nhưng nó lại có nhược điểm
là rất dễ bị nhiễu trong các vòng điều khiển, do đó cần có thành phần bù nhiễufeedforward
Trước tiên, ta xét tới một hệ thống vi phân phẳng Một hệ thống được gọi là
vi phân phẳng nếu có một tập các đầu ra phẳng và tất cả các trạng thái và đầu vào
hệ thống có thể được viết lại như các hàm của các đầu ra phẳng và một số hữu hạnđạo hàm theo thời gian của nó Hệ quả là, nếu một hệ thống là vi phân phẳng thìmọi biến hệ thống đều có thể tính toàn được từ các đầu ra phẳng mà không cần tíchphân Nghĩa là từ quỹ đạo tham chiếu ta có thể tính toán ra các đầu vào điều khiển
Ta có thể dễ dàng nhận thấy đối tượng mobile robot 3 bánh đang xét là một
hệ thống vi phân phẳng Thật vậy:
Trang 41Như vậy công thức (3.3) chính là công thức tính toán các đầu vào tham chiếuứng với một quỹ đạo tham chiếu Đây cũng chính là một bộ điều khiển vòng hởcho mô hình động học nhằm đảm bảo cho robot bám theo quỹ đạo đặt.
3.3.3 Tuyến tính hóa phản hồi
Ý tưởng của phương pháp này là thực hiện các biến đổi nhằm tuyến tính hóađầu vào hệ thống làm cho hệ thống giữa đầu vào mới và đầu ra tuyến tính Từ đócác việc thiết kế các bộ điều khiển tuyến tính cho hệ thống trở nên khả thi Quytrình thiết kế tuyến tính hóa phản hồi như sau:
− Chọn các đầu ra phẳng thích hợp, số lượng đầu ra phải bằng số lượngđầu vào
− Lấy vi phân các đầu ra và kiểm tra sự xuất hiện của các đầu vào, lặp lạiđến khi tất cả đầu vào đều xuất hiện
− Hệ phương trình được giải cho đạo hàm bậc cao nhất của từng đầu vào
Trong trường hợp của mobile robot 3 bánh, như đã chứng minh từ phần
trước, nó là một hệ thống vi phân phẳng Đầu ra phẳng của hệ thống là x(t) và y(t).
Đạo hàm bậc nhất của các đầu vào phẳng là:
Từ hệ trên ta nhận thấy mới chỉ có
sự xuất hiện của đầu vào tục lấy đạo hàm
Trang 42Như vậy với phép biến đổi này đầu vào của hệ thống đã trở thành
[u1 u2] =[x y]Tvà mô hình trạng
thái
tả như sau:
Trang 43Hay: z = Az + Bu
Tiếp theo ta cần thiết kế bộ điều khiển cho hệ thống tuyến tính mới này Quỹ
đạo tham chiếu được cho bởi (x ref (t), y ref (t) ) , từ đó dễ dàng tính được trạng thái
3.3.4 Phát triển mô hình sai lệch theo dõi quỹ đạo động học
Sai lệch vị trí của robot trong hệ tọa độ toàn cục (hệ tọa độ cố định) với vị trí
Trang 45Đạo hàm của sai lệch:
Trong đó vrefvà wreflà vận tốc tham chiếu tuyến tính
vfb và wfb là các tín hiệu được xác định sau tùy thuộc vào luật điều khiển mà
ta chọn Phương trình sai lệch được viết lại
3.3.5 Bộ điều khiển tuyến tính
Nhận thấy điểm zero-error ( e x = e y = eϕ=0) là 1 điểm cân bằng khi cả 2 thành
fb=ωfb =0 Từ mô hình sai lệch phituyến ở 3.3.4, ta tuyến tính hóaquanh điểm zero-error:
Trang 47với ωn 0, 0 ζ 1 Dựa vào đa thức đặc
trưng của hệ kín:
Và đa thức mong muốn:(s
Ta được các hệ số điều khiển
Trang 49Bộ điều khiển thiết kế dựa trên mô hình tuyến tính 1 mô hình tuyến tính chỉhợp lệ ở lân cận của những điểm như điểm zero- error và hiệu suất sẽ kém hơnmong đợi khi mà sai lệch lớn
Kể cả tuyến tính nhưng hệ vẫn phụ thuộc thời gian, có thể thấy, nếu tất cảđiểm cực đều nằm ở nửa mặt phẳng bờ bên trái của miền s thì hệ sẽ không ổn định
Mặc dù vậy, luật điều khiển tuyến tính vẫn thường được sử dụng bởi nó đơngiản, dễ dàng điều chỉnh trong thực tế và hiệu suất có thể chấp nhận được
Trang 50Phần 4: Thiết kế bộ điều khiển cho đối tượng Mobile
robot 3 bánh
4.1 Thiết kế bộ điều khiển động học vòng ngoài
Dựa theo những nội dung đã trình bày tại phần 3, ta thiết kế bộ điều khiểnvòng ngoài cho Mobile robot dựa theo hàm ứng viên Lyapunov
Mục đích điều khiển :(q − q ref) → 0 khi t →∞
Quỹ đạo đặt của robot là(x ref (t); y ref (t) )
Trang 52⎡e x⎤ ⎡ cosϕ sinϕ 0⎤ ⎡ x − xref⎤
⎧e x= −ϕ.sinϕ(x − x ref) + cosϕ (x − x ref) +ϕ.cosϕ( y − y ref) + sinϕ( y − y ref
Trang 55⎧e =ω.e + v(cos2 ϕ+ sin2 ϕ )
Trang 574.2 Thiết kế bộ điểu khiển động lực học vòng trong
Mục tiêu điều khiển:
Trang 58⎢ ⎥ ⎟
⎣ ⎦ ⎠
Trang 61Chọn luật điều khiển: u = E−1.M.(C.v + v)
Trong đó ma trận C là ma trận điều khiển 2x2 xác định dương
Trang 62Chọn C = ⎡200 0 ⎤
⎢
0 100⎥
Trang 63Phần 5: Mô phỏng hệ thống điều khiển trên Matlab
Simulink
5.1 Mô phỏng mô hình Knematic
Sử dụng khối Matlab function trong Simulink
Trang 645.2 Mô phỏng mô hình Dynamic
Sử dụng khối Matlab function trong Simulink
% Cac thong so cua xe
Trang 655.3 Bộ điều khiển vòng ngoài Kynematic Controller
Đầu vào của bộ điều khiển là tư thế tham chiếu và tư thế phản hồi vê từ đốitượng; đầu ra của bộ điều khiển là giá trị tốc độ dài và tốc độ góc điều khiển cho bộđiều khiển vòng trong