Tải bản đầy đủ (.docx) (12 trang)

Bộ điều khiển mờ cho robot hai bánh vi sai

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (350.22 KB, 12 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>BỘ ĐIỀU KHIỂN DỰA TRÊN LOGIC MỜ CHO ROBOT HAIBÁNH VI SAI</b>

Nguyễn Văn DươngMSV: 21000001

Khoa Điện tử Viễn thơng, Trường Cơng nghệ

<i><b>Tóm tắt – Báo cáo đề xuất xây dựng bộ điều khiển dựa</b></i>

<b>trên logic mờ cho robot hai bánh vi sai. Qua đó áp dụngđiều khiển cho robot bám quỹ đạo mà khơng cần biếtchính xác công thức liên hệ giữa sai số giữa vị trí hiện tạicủa robot và vị trí tham chiếu. Việc mô phỏng và đánhgiá hiệu quả sẽ được thực hiện thông qua phần mềmMatlab.</b>

<i><b>Từ khóa – robot hai bánh vi sai, logic mờ, điều khiểnmờ.</b></i>

I. Giới thiệu

Thiết kế bộ điều khiển là một phần quan trọng trong việc chếtạo robot. Bộ điều khiển liên quan đến việc điều khiển robot đểgiải quyết vấn đề xác định lực và mô-men xoắn mà bộ truyềnđộng rô-bốt phải phát triển để robot đi đến vị trí mong muốn,theo dõi quỹ đạo mong muốn và nói chung, thực hiện một sốnhiệm vụ với yêu cầu hiệu suất mong muốn. Các bộ điều khiểngiải quyết vấn đề về theo dõi vị trí (tư thế), theo dõi quỹ đạo,đỗ xe và theo sau người dẫn đầu. Trong mọi trường hợp, thiếtkế điều khiển bao gồm hai giai đoạn, đó là điều khiển động học(chỉ sử dụng các mơ hình động học) và điều khiển động học(trong đó động lực học và cơ cấu chấp hành của robot cũngđược tính đến) [1]. Ở báo cáo này chúng ta sẽ thiết kế bộ điềukhiển logic mờ cho robot di động hai bánh vi sai bám quỹ đạo.Bộ điều khiển mờ được thiết kế dựa trên lý thuyết tập mờ, giúphệ thống xử lý các thông tin mơ hồ, không rõ ràng điều mà hệthống truyền thống khó thực hiện được [2 - 4]. Robot di độnghai bánh vi sai có cấu trúc đơn giản với hai bánh xe đặt songsong mỗi bánh gắn với một động cơ độc lập kết hợp với mộtbánh đa hướng để cân bằng và giúp chuyển động mượt mà [5].Có thể thực hiện điều khiển chuyển động của robot di động cóbánh xe trong mơi trường khơng có chướng ngại vật bằng cách

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

điều khiển chuyển động từ tư thế bắt đầu này đến tư thế mụctiêu nào đó (điều khiển cổ điển, trong đó quỹ đạo trạng tháitrung gian không được quy định) hoặc bằng cách theo dõi quỹđạo tham chiếu. Đối với rô-bốt di động có bánh xe có các ràngbuộc phi giao diện, việc điều khiển tư thế tham chiếu khó hơnviệc đi theo quỹ đạo tham chiếu nối tư thế chỉ số và tư thế mụctiêu. Để kiểm soát tư thế tham chiếu hoặc theo dõi quỹ đạothành công, cần phải áp dụng bộ điều khiển không trơn hoặcthay đổi theo thời gian vì hệ thống được điều khiển là phi tuyếntính và thay đổi theo thời gian. Khi di chuyển robot, cần phảixem xét các ràng buộc phi chính trị để đường đi của nó khơngthể tùy ý. Một lý do nữa ủng hộ các phương pháp điều khiểntheo dõi quỹ đạo cũng là do rô-bốt thường lái xe trong các môitrường có nhiều hạn chế, chướng ngại vật khác nhau và một sốyêu cầu bằng cách nào đó xác định đường đi mong muốn dẫnrô-bốt đến mục tiêu đặt ra [6 - 8]. Việc thiết kế này sẽ đượctrình bày trong các phần tiếp theo của báo cáo.

Báo cáo này sẽ được trình bày theo các phần sau. Phần 2 mơhình động học robot hai bánh vi sai. Phần 3 xây dựng bộ điềukhiển dựa trên logic mờ. Phần 4 mô phỏng và đánh giá. Cuốicùng, Phần 5 đưa ra một số kết luận và hướng phát triển.

II. Mơ hình động học robot hai bánh vi sai

Phần này trình bày mơ hình động học liên tục và rời rạc củarobot di động hai bánh vi sai với ràng buộc không khả tích tronghệ tọa độ Đềcac.

<i>A. Mơ hình động học của robot</i>

Chúng ta sẽ xem xét robot di động hai bánh vi sai với ràngbuộc khơng khả tích có cấu hình và tham số được thể hiện trên

<i>Hình 1.</i>

<i>Hình 1: Mơ hình robot di động hai bánh vi sai</i>

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

Trong đó, (<i><small>X</small><sub>G</sub><small>,Y</small><sub>G</sub></i>) biểu diễn hệ tọa độ toàn cục, (<i><small>X</small><sub>R</sub><small>, Y</small><sub>R</sub></i>) biểu diễnhệ tọa độ cục bộ gắn liền với robot, <i><small>R</small></i> ký hiệu là bán kính bánhxe và <i><small>L</small></i> là khoảng cách giữa hai bánh. Phương trình vận tốc củarobot được mơ tả như sau [6 - 8]:

Trong Eq. 1, <i><small>v</small><sub>R</sub></i> là vận tốc của robot trong hệ tọa độ cục bộ,(<small>´</small><i><small>x</small><sub>R</sub><small>, ´y</small><sub>R</sub></i><sub>) là vận tốc theo hai phương </sub><i><small>x , y</small></i>. Do robot không trượt sanghai bên nên vận tốc theo phương <i><small>y</small></i> là 0. Còn vận tốc của robottrong hệ tọa độ tồn cục là <i><small>v</small><sub>G</sub></i> được tính bằng ma trận xoay <i><small>R</small><sub>θ</sub></i>

nhân với vận tốc <i><small>v</small><sub>R</sub></i>. Cịn vận tốc góc trong hệ tọa độ tồn cụcchính là <i><small>ω</small></i>. Từ đó ta thu được mơ hình động học của robot trongEq. 4:

<i><small>´θ</small></i>

]

<small>=</small>

[

<i><sup>cosθ 0</sup><small>sin θ</small></i>

<i>B. Mơ hình rời rạc</i>

Để điều khiển được robot trong thực tế đi đến điểm đích taphải chia nhỏ quãng đường đi của robot và cứ sau khoảng thờigian <i><small>Δtt</small></i> ta lại tính tốn lại. Dựa trên quy luật đó ta có biểu thứcsau:

<i><small>q</small><sub>t</sub></i><small>=</small>

[

<i><small>x</small><sub>t</sub><small>y</small><sub>t</sub><small>θ</small><sub>t</sub></i>

]

<i><sup>T</sup><sub>Eq. 5</sub></i>

<i><small>q</small><sub>t</sub><sub>k+ 1</sub><small>≈ q</small><sub>t</sub><sub>k</sub></i><small>+ ´</small><i><small>q</small><sub>t</sub><sub>k</sub></i><sub>(</sub><i><small>t</small><sub>k +1</sub></i><small>−</small><i><small>t</small><sub>k</sub></i><sub>)</sub> <i>Eq. 6</i>

với <i><small>q</small><sub>t</sub></i> là vị trí tại thời điểm <i><small>t</small></i> bất kỳ của robot ta xét tại vị trí <i><small>t</small><sub>k</sub></i> taxấp xỉ được vị trí của robot tại thời điểm <i><small>t</small><sub>k+1</sub></i> như Eq. 6, <i><small>Δtt</small></i> ở đâychính là hiệu của <i><small>t</small><sub>k+1</sub><small>, t</small><sub>k</sub></i>. Thay <i><small>q</small></i><small>´</small><i><sub>t</sub></i> tính được ở Eq. 4 vào Eq. 6 ta

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

thu được Eq. 7 và biểu thức này sẽ được dùng để điều khiểnrobot ở phần sau [8]:

<i><small>x</small><sub>t</sub><sub>k+ 1</sub><small>≈ x</small><sub>t</sub><sub>k</sub></i><small>+</small><i><small>v cosθ</small><sub>k</sub><small>Δtt</small></i>

<i>Eq. 7<small>y</small><sub>t</sub><sub>k+1</sub><small>≈ y</small><sub>t</sub><sub>k</sub></i><small>+</small><i><small>v sin θ</small><sub>k</sub><small>Δtt</small></i>

<i><small>θ</small><sub>t</sub><sub>k+ 1</sub><small>≈ θ</small><sub>k</sub></i><small>+</small><i><small>ω Δtt</small></i>

III. Thiết kế bộ điều khiển logic mờ

Ở phần này chúng ta sẽ tìm hiểu những kiến thức cơ bản vềlogic mờ và từ đó xây dựng bộ điều khiển logic mờ cho robot diđộng hai bánh vi sai.

<i>A. Kiến thức cơ bản về logic mờ</i>

Logic mờ, một phương pháp nhằm hình thức hóa năng lực lýluận khơng chính xác hoặc lý luận gần đúng của con người. Lýluận như vậy thể hiện khả năng suy luận gần đúng và đánh giásự không chắc chắn mơ hồ của con người. Trong logic mờ, tấtcả các sự thật đều là một phần hoặc gần đúng. Không giốngnhư logic thơng thường chỉ có hai giá trị như True/ False, 1/ 0mà logic mờ nằm trong khoảng liên tục [<small>0 1</small>] và đặc trưng củalogic mờ là hàm thành viên. Cấu trúc chung của bộ điều khiểnlogic mờ (FLC), hay gọi tắt là bộ điều khiển mờ (FC), bao gồmba phần cơ bản: bộ phận mờ hóa (Fuzzification) ở đầu vào, bộmáy suy luận (Inference) được xây dựng trên cơ sở quy tắc điềukhiển logic mờ trong lõi, và bộ giải mờ (Defuzzification) ở đầura. Cấu trúc chung của bộ FLC như Hình 2:

<i>Hình 2: Bộ điều khiển logic mờ</i>

<i>1) Fuzzification: Mờ hóa là một khái niệm quan trọng trong lý</i>

thuyết logic mờ. Mờ hóa là q trình trong đó các đại lượng sắcnét (Crisp) được chuyển đổi thành mờ (crisp to fuzzy). Mờ hóachuyển đổi các giá trị vật lý của tín hiệu xử lý hiện tại, tín hiệulỗi là đầu vào của bộ điều khiển logic mờ, thành một tập hợpcon mờ chuẩn hóa bao gồm một tập hợp con (khoảng) cho

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

phạm vi các giá trị đầu vào và một tập hợp con kết hợp. hàmthành viên mô tả mức độ tin cậy của đầu vào thuộc phạm vinày. Mục đích của bước mờ hóa này là làm cho tín hiệu vật lýđầu vào tương thích với cơ sở quy tắc điều khiển mờ trong lõicủa bộ điều khiển. Ở đây, giữa tín hiệu đầu vào vật lý và tậpcon mờ trong đơn vị mờ hóa, có thể cần một đơn vị tiền xử lýánh xạ tín hiệu vật lý tới một số giá trị thực rõ nét và theo từngđiểm (mà tập con mờ có thể chấp nhận), tùy thuộc vào bảnchất của tín hiệu vật lý. Tập con mờ, cả tập con và hàm thànhviên, phải được người thiết kế lựa chọn theo ứng dụng cụ thể.Nói cách khác, tùy thuộc vào tính chất và đặc điểm của nhàmáy và tín hiệu tham chiếu nhất định, FLC phải được thiết kếphù hợp với nhu cầu, để làm cho hệ thống điều khiển mờ vịngkín hoạt động cho ứng dụng cụ thể đó. Tình huống này giốngnhư việc thiết kế một bộ điều khiển thông thường cho một hệthống cụ thể, trong đó khơng có bộ điều khiển chung trongthiết kế thực tế [2, 3].

<i>2) Inference: suy luận, Vai trị của cơng cụ suy luận trong FLC</i>

là chìa khóa giúp bộ điều khiển hoạt động và hoạt động hiệuquả. Công việc của “động cơ” là tạo ra các hành động điềukhiển, theo thuật ngữ mờ, theo thông tin được cung cấp bởikhối mờ hóa. Một cơ sở luật IF - THEN điển hình của logic mờthực hiện suy luận có dạng tổng quát ở Hình 3 [2, 3]:

<i>Hình 3: Dạng tổng quát của cơ sở luật IF-THEN</i>

<i>3) Defuzification: giải mờ hóa, khối giải mờ là kết nối giữa cơ</i>

sở quy tắc điều khiển và đối tượng vật lý cần điều khiển, đóngvai trị như một máy biến áp ánh xạ các đầu ra của bộ điềukhiển (được tạo bởi cơ sở quy tắc điều khiển theo thuật ngữmờ) trở lại các giá trị sắc nét mà đối tương có thể chấp nhận.Do đó, theo một nghĩa nào đó, giải mờ là nghịch đảo của mờhóa. các đầu ra của bộ điều khiển được tạo bởi cơ sở quy tắc

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

trên, lần lượt là các tín hiệu mờ thuộc các tập con mờ. Côngviệc của giải mờ là chuyển đổi các đầu ra của bộ điều khiển mờnày thành tín hiệu thực rõ nét và theo điểm, sau đó gửi nó đếnđối tượng vật lý như một hành động điều khiển để theo dõi.Giữa bước giải mờ và hệ thống vật lý, có thể cần một đơn vị xửlý hậu kỳ ánh xạ tín hiệu theo điểm thành tín hiệu vật lý (mà hệthống có thể chấp nhận). Những gì phải được xác định tronggiai đoạn này về cơ bản là một công thức giải mờ. Công thứcđược sử dụng phổ biến là các cơng thức trung bình có trọng sốở nhiều dạng khác nhau [2, 3].

B. Xây dựng bộ điều khiển

<i>1) Hàm thành viên: chúng ta cần xây dựng hàm thành viên</i>

cho cả tín hiệu đầu vào và đầu ra của bộ điều khiển. Tín hiệuđầu vào là sai số giữa vị trí tham chiếu và vị trí hiện và vị trítham chiếu gồm hai thành phần lỗi: sai số khoảng cách giữa vịtrí hiện tại và vị trí tham chiếu <i><small>Δtd (m)</small></i> và lỗi góc giữa hướng hiệntại của robot và hướng tham chiếu <i><small>Δt ω(rad )</small></i> . Tín hiệu ra khỏi khốiđiều khiển là vận tốc dài <i><small>v (m/s)</small></i> và vận tốc góc <i><small>ω(rad/s )</small></i> [9].

<i>Bảng 1: Khoảng giá trị của tín hiệu vào và ra của bộ điều khiển</i>

Khoảng giátrịDistance

error <small>(</small><i><small>Δtd)</small></i>

[<small>0 6</small>]

Angle error <small>(</small><i><small>Δt ω)</small></i>

[<small>−</small><i><small>pi pi</small></i>]

Velocity <small>(</small><i><small>v)</small></i> [<small>0 2</small>]

Angle speed<small>(</small><i><small>ω)</small></i>

[<small>−10 10</small>]

Chúng ta chọn hàm thành viên dạng tam giác để xây dựng cácbộ mờ hóa và giải mờ hóa dưới dây là bảng các giá trị khai báo.

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<i>Bảng 2: Biến đầu vào bộ điều khiển <small>Δtd</small></i>

Distance error <small>(</small><i><small>Δtd)</small></i>

Giá trịVery

VC [<small>0 0 1.5</small>]

Close C [<small>0 1.5 3</small>]

M [<small>0 3 4.5</small>]

Far F [<small>3 4.5 6</small>]

BN [<small>−</small><i><small>π ,−π ,−π /2</small></i>]

N [<small>−</small><i><small>π ,−π /2 , 0</small></i>]

Zero Z [<small>−</small><i><small>π /2,0, π /2</small></i>]

P [<i><small>0, π /2 , π</small></i>]

m vel

MV [<small>0. 51 1.5</small>]

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

FV [<small>11 .5 2</small>]

Veryfast vel

BNS [<small>−1 0,−10,−5</small>]

NS [<small>−1 0,−5, 0</small>]

ZS [<small>−5 , 0,5</small>]

PS [<small>0, 5,1 0</small>]

BPS [<small>5,10, 1 0</small>]

<i>2) Luật IF-THEN cho khối suy luận: Bây giờ chúng ta sẽ thiết</i>

kế luật IF-THEN, luật sẽ được trình bày dưới dạng bảng như sau:

<i>Bảng 6: Luật IF-THEN cho output <small>v</small></i>

PS BPS

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

C BNS

PS BPS

PS BPSF BN

PS BPSVF BN

PS BPSIV. Mơ phỏng

<i>A. Cài đặt mơ phỏng</i>

Chương trình mơ phỏng được thực hiện để đánh giá hiệu quảcủa bộ điều khiển với cấu hình robot như sau:

 Đường kính của bánh xe: <i><small>R=0,05 m</small></i>

 Khoảng cách giữa hai bánh xe: <i><small>L=0,5m</small></i>

 Vận tốc cực đại của robot: <i><small>v</small><sub>max</sub></i><small>=2 m/s</small>

 Thời gian lấy mẫu của hệ thống: <i><small>Ts=100 ms</small></i>

 Quỹ đạo hình trịn tham chiếu thứ nhất:

[

<i><small>x</small><sub>r</sub><small>, y</small><sub>r</sub></i>

]

<small>=</small>[<i><small>cos (π /5∗t ), sin ( π /5∗t)</small></i>]

 Quỹ đạo hình trịn tham chiếu thứ hai:

[

<i><small>x</small><sub>r</sub><small>, y</small><sub>r</sub></i>

]

<small>=</small>[<i><small>4∗cos( π /5∗t) , 4∗sin ( π /5∗t)</small></i>]

<i>B. Mô phỏng và đánh giá kết quả</i>

Trong Hình 3 là mơ hình điều khiển robot hai bánh vi sai vớibộ điều khiển logic mờ. Các Hình 5, 6, 7, 8 là dạng hàm thànhviên của các tín hiệu vào và ra của bộ điều khiển mờ. Tiếp theolà kết quả mô phỏng bám quỹ đạo của robot trong hai trườnghợp khi khoảng cách ban đầu giữa robot và quỹ đạo ở khoảngcách ngắn Hình 8, 10 và lớn Hình 9, 11. Có thể thấy sai số <i><small>Δtd</small></i>

trong quỹ đạo thứ nhất ổn định ở mức <i><small>0,03 m</small></i> còn trong quỹ đạothứ hai dạo động liên tục từ <i><small>0,03 m</small></i> đến <i><small>0,1 m</small></i>. Tương tự với sai sốvề góc <i><small>Δt ω</small></i> ở quỹ đạo thứ nhất cũng hội tụ dần còn quỹ đạo thứhai thì dao động liên tục. Điều này cho thấy bộ điều khiển hoạtđộng chưa hiệu quả. Có một số lý do chính gây ra điều này nhưlà: kinh nghiệm chọn hàm thành viên, các luật IF-THEN chưaphù hợp, mơ hình robot chưa chính xác. Các hình ảnh kết quảđược đặt ở cuối bài báo cáo.

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

V. Kết luận

Báo cáo đã trình bày cơ sở và cách thức thiết kế bộ điềukhiển logic mờ cho robot hai bánh vi sai. Bên cạnh đó là các kếtquả mơ phỏng bám quỹ đạo cho robot. Tuy nhiên kết quả chưathực sự tốt, để khắc phục điều này có một số đề xuất phát triểnnhư sau: xây dựng lại hàm thành viên, xây dựng lại các luật IF-THEN cho bộ suy luận, ứng dụng mạng neural để có thể tự xâydựng và tối ưu hàm thành viên và các luật IF-THEN.

VI. Tài liệu tham khảo

[1] Tzafestas, S. G. (2014b). Mobile Robot Control i. In ElseviereBooks (pp. 137–183). -/10.1016/b978-0-12-417049-0.00005-5.

[2] Hooda, D.S. & Raich, Vivek & St, Cahyono. (2022). FuzzyLogic Models and Fuzzy Control. An Introduction.

[3] Mohan, Chander. (2018). AN INTRODUCTION TO FUZZY SETTHEORY AND FUZZY LOGIC (Second Edition).

[4] Intelligent control : fuzzy logic applications : De Silva,Clarence W : Free Download, Borrow, and Streaming: InternetArchive (1995).Internet Archiv.

[5] Fahimi, F. (2008). Mobile robots. In Springer eBooks (pp. 1–58).

[6] Mihelj, M., Bajd, T., Ude, A., Lenarčič, J., Stanovnik, A.,Munih, M., Rejc, J., & Šlajpah, S. (2018a). Robot Control. InSpringer eBooks (pp. 133–152).

[7] Škrjanc, Igor. (2017). Wheeled Mobile Robotics: FromFundamentals Towards Autonomous Systems. (pp. 61–83).

[8] Corke, P., 2011. Robotics, Vision and Control: FundamentalAlgorithms in MATLAB. 1st Edn., Springer, Berlin HeidelbergSpringer, ISBN-10: 3642201431, pp: 570.

[9] Stefek, Alexandr & Pham, Van & Krivanek, Vaclav & Pham,Khac. (2021). Optimization of Fuzzy Logic Controller Used for aDifferential Drive Wheeled Mobile Robot. Applied Sciences. 11.6023. 10.3390/app11136023.

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<i><small>Hình 3: Mơ hình điều khiển khi triển khai trong simulink</small></i>

<i><small>Hình 8: Kết quả lỗi Δtd khi dùng quỹđạo 1</small></i>

<i><small>Hình 9: Kết quả lỗi Δtd khi dùng quỹđạo 2</small></i>

<i><small>Hình 10: Kết quả lỗi Δt ω khi dùng quỹđạo 1</small></i>

<i><small>đạo 2</small></i>

</div>

×