de tai xe hai banh tu hanh - dhbk hcm

109
ĐẠI HC QUC GIA TP HCHÍ MINH TRƯỜNG ĐẠI HC BÁCH KHOA KHOA CƠ KHÍ LUN VĂN TT NGHIP ĐẠI HC XE HAI BÁNH TCÂN BNG DI CHUYN TRÊN ĐỊA HÌNH PHNG MÃ NGÀNH: 128 SVTH :MAI TUN ĐẠT CBHD :KS. VÕ TƯỜNG QUÂN CHƯƠNG TRÌNH ĐÀO TO KSƯ CHT LƯỢNG CAO KHÓA 2: 2000 – 2005 TP. HCHÍ MINH, 07/2005

Upload: nhatdt0301

Post on 30-Dec-2015

101 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA

KHOA CƠ KHÍ

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC

XE HAI BÁNH TỰ CÂN BẰNG DI CHUYỂN

TRÊN ĐỊA HÌNH PHẲNG

MÃ NGÀNH: 128

SVTH :MAI TUẤN ĐẠT CBHD :KS. VÕ TƯỜNG QUÂN CHƯƠNG TRÌNH ĐÀO TẠO KỸ SƯ CHẤT LƯỢNG CAO

KHÓA 2: 2000 – 2005 TP. HỒ CHÍ MINH, 07/2005

Page 2: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CƠ KHÍ

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC

XE HAI BÁNH TỰ CÂN BẰNG DI CHUYỂN

TRÊN ĐỊA HÌNH PHẲNG

MÃ NGÀNH:128

SVTH :MAI TUẤN ĐẠT MSSV :P0000016 CBHD :KS. VÕ TƯỜNG QUÂN CHƯƠNG TRÌNH ĐÀO TẠO KỸ SƯ CHẤT LƯỢNG CAO

KHÓA 2: 2000 – 2005 TP. HỒ CHÍ MINH, 07/2005

Page 3: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

Lôøi caûm ôn

Tôi không thể theo đuổi và hoàn thành đề tài của luận văn trong vòng 16 tuần nếu không có sự giúp đỡ của những người thân và người bạn xung quanh. Do vậy, với sự trân trọng và cảm kích, tôi xin gửi lời cảm ơn đến ông bà và cha mẹ, những người thân trong gia đình hết lòng chăm sóc, an ủi khi gặp trở ngại và động viên tôi trong thời gian thực hiện luận văn, xin cảm ơn TS. Nguyễn Văn Giáp và giáo viên trực tiếp hướng dẫn luận văn, thầy Võ Tường Quân đã cho phép tôi theo đuổi đề tài và cho những lời khuyên xác đáng, kịp thời những lúc gặp khó khăn khi thực hiện trong suốt quá trình làm luận văn tốt nghiệp đại học. Ngoài ra, tôi cũng xin chân thành cảm ơn anh Quân và anh Kiên ở công ty máy tính Bách Khoa đã hỗ trợ một phần kinh phí và thiết bị để thực hiện đề tài; cảm ơn người anh – Th.S Trần Công Binh, giảng viên bộ môn Thiết bị Điện – nhiệt tình giúp đỡ về mặt lý thuyết để hoàn thành phần điện động cơ công suất cao, một phần khá hóc búa của đề tài. Ngoài ra, cũng xin cảm ơn Thy và Tâm, hai người bạn thân thiết nhất đã giúp tôi hoàn thành bản thuyết minh mà chúng ta đang có trên tay.

Cuối cùng em xin cảm ơn tất cả quý Thầy Cô tham gia giảng

dạy chương trình Kỹ sư chất lượng cao Việt Pháp khóa 2000-2005, và Khoa Cơ Khí, bộ môn Cơ Điện tử, Trường Đại Học Bách Khoa TP.HCM đã trang bị cho em những kiến thức cơ sở cũng như đã giúp đỡ tôi trong thời gian làm Luận văn tốt nghiệp.

Tp. Hồ Chí Minh, ngày 03 tháng 07 năm 2005 Mai Tuấn Đạt

Page 4: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt

MUÏC LUÏC

Lời cảm ơn Mục lục .......................................................................................................................... i Tóm tắt đề tài ............................................................................................................... iv Abstract..........................................................................................................................v CHƯƠNG 1 TỔNG QUAN........................................................................................1

1.1 Lời nói đầu ........................................................................................................1 1.2 Thế nào là xe hai bánh tự cân bằng (two wheels self balancing) .................2 1.3 Tại sao phải thiết kế xe hai bánh tự cân bằng ...............................................3 1.4 Ưu nhược điểm của xe hai bánh tự cân bằng ................................................4

1.4.1 Ưu điểm của xe scooter tự cân bằng trên hai bánh...................................4 1.4.2 Nhược điểm của xe.....................................................................................4

1.5 Khả năng ứng dụng ..........................................................................................5 1.6 Tình hình nghiên cứu trong và ngoài nước....................................................5

1.6.1 Một số dạng xe hai bánh tự cân bằng dùng trên robot .............................5 1.6.2 Một số dạng scooter hai bánh tự cân bằng ...............................................9

1.7 Nhu cầu thực tế ...............................................................................................14 CHƯƠNG 2 NHIỆM VỤ LUẬN VĂN...................................................................15

2.1 Mục tiêu đề tài.................................................................................................15 2.2 Phương pháp nghiên cứu ...............................................................................15

CHƯƠNG 3 LÝ THUYẾT TIẾP CẬN ....................................................................17

3.1 Phương pháp tính động lực học ....................................................................17 3.2 Thuật toán điều khiển - Kỹ thuật điều khiển hiện đại ................................24 3.3 Các phương pháp xử lý tín hiệu từ cảm biến...............................................29

3.3.1 Lọc bổ phụ thông tần (complementaty filter) ..........................................29 3.3.2 Lọc thích nghi - Bộ lọc Kalman ...............................................................32 3.3.3 So sánh các bộ lọc với bộ lọc Kalman.....................................................40

3.4 Mô hinh lý thuyết động cơ DC ......................................................................43 CHƯƠNG 4 TÍNH TOÁN MÔ PHỎNG .................................................................45

4.1 Các thông số trong mô hình mô phỏng được xây dựng ..............................45

i

Page 5: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt

4.2 Mô phỏng MatLAB ........................................................................................46 4.2.1 Giới thiệu về phần mềm MatLAB, công cụ Simulink ...............................46 4.2.2 Kết quả tính bằng MatLAB ......................................................................46

4.3 Mô phỏng VisualNastran và Simulink .........................................................48 4.3.1 Giới thiệu về phần mềm VisualNastran ...................................................48 4.3.2 Cách thực hiện mô phỏng bằng vN Desktop 4D......................................49 4.3.4 Kết quả mô phỏng ....................................................................................50

CHƯƠNG 5 THỰC HIỆN ........................................................................................54

5.1 Thiết kế cơ khí.................................................................................................54 5.1.1 Tóm tắt thiết kế ........................................................................................54 5.1.2 Tính toán sức bền.....................................................................................54

5.2 Mạch điện tử ...................................................................................................59 5.2.1 Nguồn điện ...............................................................................................60 5.2.2 Mạch công suất điều khiển động cơ ........................................................61

5.2.2.1 Bộ đệm (MOSFET driver) ................................................................61 5.2.2.2 MOSFET công suất – mắc bổ phụ ....................................................63 5.2.2.3 Mạch Snubber ...................................................................................66 5.2.2.4 MOSFET thắng .................................................................................66

5.2.3 Cảm biến ..................................................................................................66 5.2.3.1 Thiết bị đo góc gyro Murata ENC-03 ...............................................67 5.2.3.2 ADXL202A.......................................................................................68 5.2.3.3 Cảm biến đo vị trí- encoder...............................................................73 5.2.3.4 Cảm biến đo dòng hồi tiếp (Điện trở shunt)......................................75

5.2.4 Bộ xử lý trung tâm - vi điều khiển PIC 18F452.......................................76 5.2.4.1 Các khả năng của vi điều khiển Microchip PIC 18F452: .................76 5.2.4.2 Mạch điều khiển trung tâm................................................................79

5.2.5 Bảng điều khiển và hiển thị......................................................................80 5.2.6 Động cơ....................................................................................................80 5.2.7 Hình chụp các mạch điện tử ....................................................................85

5.3 Giải thuật - Lưu đồ chương trình .................................................................88 5.3.1 Chương trình chính..................................................................................88 5.3.2 Chương trình ngắt....................................................................................89 5.3.3 Cập nhật encoder.....................................................................................91 5.3.4 Điều khiển động cơ ..................................................................................92

5.4 Kết quả.............................................................................................................94 CHƯƠNG 6 CÁCH VẬN HÀNH ..........................................................................95

6.1 Cách sử dụng...................................................................................................95 6.2 Bảo dưỡng........................................................................................................97

CHƯƠNG 7 KẾT LUẬN .........................................................................................98

ii

Page 6: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt

7.1 Những kết quả đạt được ................................................................................98 7.2 Những kết quả chưa đạt được .......................................................................98 7.3 Những vấn đề chưa giải quyết .......................................................................99 7.4 Hướng phát triển ............................................................................................99

TÀI LIỆU THAM KHẢO .........................................................................................100 PHỤ LỤC .................................................................................................................102

1. GIỚI THIỆU PHẦN MỀM VISUALNASTRAN ...........................................102 2. LỌC THÍCH NGHI – BỘ LỌC KALMAN ....................................................105 3. GYRO MURATA ENC-03..............................................................................118 4. CẢM BIẾN GIA TỐC ACCELEROMETER ADXL202 ...............................122 5. CHUẨN TRỰC CÁC CẢM BIẾN ĐO GÓC..................................................128 6. TÍNH NĂNG VI ĐIỀU KHIỂN PIC 18FXX2 ................................................131

iii

Page 7: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt

TÓM TẮT ĐỀ TÀI Đề tài này có thể xem là một cầu nối kinh nghiệm từ mô hình thăng bằng con

lắc ngược đến việc nghiên cứu và chế tạo các loại robot hai chân và robot người (humanoid robot) trong tương lai. Mục tiêu của đề tài là thiết kế và chế tạo một xe hai bánh tự cân bằng, dựa trên lý thuyết cân bằng con lắc ngược. Không giống như các xe scooter hay xe 2 bánh thông thường có hai bánh xe nằm trước sau, xe scooter trong đề tài có hai bánh nằm song song với nhau, giúp nó trở nên cực kỳ gọn gàng để di chuyển bằng những bánh xe trong những khoảng chật hẹp mà thường chỉ có thể đi bộ.

Đề tài này được quan tâm từ việc tính toán các thông số đầu vào và ra, dựa trên đó để xây dựng các mô phỏng, đến việc thiết kế mô hình, thực hiện phần điện tử và điều khiển, viết các chương trình điều khiển với mục đích cuối cùng là tạo ra một mô hình xe di chuyển cân bằng trên hai bánh xe đồng trục được lắp trên hai động cơ dựa theo các định luật cơ học Newton và cơ học vật rắn: điều khiển để luôn duy trì bề mặt chân đế (hai bánh xe) ở vị trí ngay dưới trọng tâm của xe khi đứng yên, và tạo một sai số nhỏ về góc nghiêng của thân xe với nền khi muốn xe chuyển động.

Sư cân bằng được tính toán và mô phỏng bằng 2 phần mềm MatLAB-SIMULINK và Visual Nastran, để chứng minh rằng hoàn toàn có khả năng để điều khiển một mô hình xe tự cân bằng chỉ nhờ một hệ thống điều khiển hoạt động của động cơ điện gắn trên mỗi bánh xe.

Mô hình bao gồm một thân mang hai động cơ DC được tích hợp trong mỗi bánh xe đạp điện 400 mm phổ biến trong thời gian gần đây tại Việt Nam, bo mạch sử dụng bộ điều khiển trung tâm PIC18Fxxx của hãng Microchip để điều khiển những mạch khuếch đại công suất, lái công suất (MOSFET driver) cho những động cơ, điều khiển những cảm biến cần thiết để đo các giá trị góc và quãng đường đi. Các tín hiệu đo góc từ hai cảm biến accelerometer và gyro được thông qua một bộ lọc Kalman được lập trình trên vi điều khiển PIC để có các thông số đo góc chính xác. Bảng điện kiểm soát và hiển thị chức năng hoạt động của xe. Bình điện được lắp dưới sàn xe bằng nhôm để cung cấp toàn bộ năng lượng cho xe hoạt động.

iv

Page 8: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt

ABSTRACT

This project can be an useful experiment to the research and manufacture in balancing robot and humanoid robot in future. The main purposes of my project are designing and manufacturing a self-balancing scooter, based on the theory of the balancing inverted pendulum. It is unlike the popular scooter or bicycle, which have two wheels being in a same surface (the wheel’s axes are parallel). Its parallel wheels configuration make it compact enough to be maneuvered through most pedestrian spaces that accommodate wheelchairs.

Calculating parameters of the model to construct the simulation, designing the model, making electronic boards and controller, and programming the microcontroller are the missions in the project, to reach the main goal of building a scooter that could balance in its two coaxial wheels driven by two intergrated motors. The method analysing the auto-balancing scooter’s dynamic is roughly based on Newton’s laws and mechanics of solid. To keep the scooter remains balanced when scooter don’t move, it must drive the wheels staying under the scooter’s gravity, and making a small error in tilt angle (angle of the chassis with respect to the ground) when the scooter moves.

The balance of scooter is also calculated and simulated by MatLAB-SIMULINK and Visual Nastran, to show that it is clearly possible to control such a system using an electric motor mounted on each of the two wheels.

The self-balancing scooter is structured of a chassis carrying two wheels coupled a DC motors for each. The wheel which is used in my final project is a wheel of electric bicycle (400 mm of diameter), lately popular in Viet Nam. PIC18Fxxx, a micro-controller of Microchip’s family is used to implement as the main controller of scooter’s system, manages the works of the electric power amplifiers, MOSFET driver for the motors and of the necessary sensors to measure the vehicle’s states. To have the exact information of angle received from the noisy accelerometer and piezo-electric gyro, a discrete Kalman filter is implemented in PIC microcontroller. A control board is used to display the state of sensors, operation of scooter and to control the speed and steering. Batteries are bolted under the chassis of scooter, supply electric energies for scooter’s operation.

v

Page 9: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 1 Tổng quan

Chương 1 TỔNG QUAN

1.1 Lời nói đầu Bài luận văn xuất phát từ ý tưởng đã được thương mại hóa của công ty Segway:

kết hợp ý tưởng về cách giữ thăng bằng của con người trên đôi chân và độ cơ động trong di chuyển của các loại xe di chuyển bằng bánh. Thông qua bài nghiên cứu, ta có thể phần nào nắm bắt những ý tưởng giữ thăng bằng cho các loại humanoid robot (robot dạng người), cách phối hợp và xử lý tín hiệu tốt nhất từ cảm biến. Tuy vậy, giá thành của sản phẩm Segway không rẻ (khoảng 5000USD/xe) do chi phí rất cao từ các cảm biến đã được tích hợp và xử lý với độ chính xác và tin cậy cao (khoảng 900USD/bộ). Do vậy, chúng ta sẽ tìm cách kết hợp các cảm biến riêng lẻ với giá thành thấp (4 - 40USD/cảm biến) và xử lý tín hiệu cảm biến của chúng để có được các tín hiệu tinh khiết và chính xác như mong muốn với giá thành không cao.

Mô hình là một chiếc xe có hai bánh được đặt dọc trục với nhau (khác với xe đạp là trục của hai bánh xe song song). Trên mô hình sử dụng các cảm biến để đo góc nghiêng của thân xe, vận tốc quay (lật) của sàn xe quanh trục bánh và vận tốc di chuyển của xe so với mặt đất. Nhờ các cảm biến này, xe sẽ có thể tự giữ thăng bằng và di chuyển. Với cấu trúc này, trọng tâm của mô hình phải luôn nằm trong vùng đỡ của bánh xe (supporting area) để có thể thăng bằng khi di chuyển ở mọi bề mặt từ đơn giản đến phức tạp.

Trong hệ thống các cảm biến, để loại trừ các tín hiệu nhiễu từ hệ thống và nhiễu từ tín hiệu đo, sai số của ngõ ra, đồng thời có thể ước lượng chính xác giá trị đo trong tương lai của cảm biến cũng như kết hợp các tín hiệu, bộ lọc Kalman được nghiên cứu và sử dụng nhằm cho một kết quả tối ưu về tình trạng của xe gồm góc nghiêng, vận tốc quay của xe từ mô hình và các cảm biến thành phần. Nói cách khác, hệ thống xử lý tín hiệu và lọc Kalman là công cụ để biến các cảm biến đơn giản, giá rẻ thành tập hợp cảm biến có giá trị trong hệ thống. Từ các tín hiệu đo, thông qua một số đại lượng đặc trưng của mô hình (khối lượng, chiều dài, chiều cao vật, đường kính bánh…) ta sẽ tính được momen quán tính nghiêng (lật của mô hình), từ đó đưa ra các giá trị điều khiển phù hợp cho các bánh xe để giữ cho mô hình luôn đứng vững hoặc di chuyển với một vận tốc ổn định.

Toàn bộ mô hình được điều khiển bằng một vi điều khiển PIC 18F452. Đây là thế hệ tương đối cao cấp của họ PIC có thể xử lý và thực thi chương trình ở tốc độ cao (đạt đến 10MIPs) trong việc tính toán các giá trị cảm biến và đưa ra bộ truyền động (động cơ điện). Bộ vi điều khiển đóng vai trò thứ nhất trong đề tài như một bộ lọc Kalman với tín hiệu vào từ thiết bị inclinometer và gyro. Với các dữ liệu về góc đã xử

Trang 1

Page 10: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 1 Tổng quan

lý và tín hiệu hồi tiếp về vị trí đo encoder đưa về (incremental encoder), vai trò thứ hai của vi điều khiển trong đề tài sẽ tính toán và đưa ra tín hiệu điều khiển bộ truyền động, đến bánh xe để giữ thăng bằng/di chuyển, đi thẳng, quay, quẹo.

Đây là một phương tiện vận chuyển mới tại các thành phố trong tương lai với nhiều ưu điểm: gọn, nhẹ, ít chiếm diện tích đường phố, dễ mang vác, tháo lắp và vận chuyển, nhiên liệu sạch, dễ điều khiển cho người lớn và trẻ em, đi được trên một số địa hình phức tạp.

1.2 Thế nào là xe hai bánh tự cân bằng (two wheels self balancing)

Bị nghiêng Cân bằng

Hình 1.1 Mô tả nguyên lý giữ thăng bằng

Đối với các xe ba hay bốn bánh, việc thăng bằng và ổn định của chúng là nhờ trọng tâm của chúng nằm trong bề mặt chân đế do các bánh xe tạo ra. Đối với các xe 2 bánh có cấu trúc như xe đạp, việc thăng bằng khi không di chuyển là hoàn toàn không thể, vì việc thăng bằng của xe dựa trên tính chất con quay hồi chuyển ở hai bánh xe khi đang quay. Còn đối với xe hai bánh tự cân bằng, là loại xe chỉ có hai bánh với trục của hai bánh xe trùng nhau, để cho xe cân bằng, trọng tâm của xe (bao gồm cả người sử dụng chúng) cần được giữ nằm ngay giữa các bánh xe. Điều này giống như ta giữ một cây gậy dựng thẳng đứng cân bằng trong lòng bàn tay.

Thực ra, trọng tâm của toàn bộ scooter không được biết nằm ở vị trí nào, cũng không có cách nào tìm ra nó, và có thể không có khả năng di chuyển bánh xe đủ nhanh để giữ nó luôn ở dưới toàn bộ trọng tâm.

Về mặt kỹ thuật, góc giữa sàn scooter và chiều trọng lực có thể biết được. Do vậy, thay vì tìm cách xác định trọng tâm nằm giữa các bánh xe, tay lái cần được giữ thẳng đứng, vuông góc với sàn xe (góc cân bằng khi ấy là zero).

Hình 1.2 Mô tả cách bắt đầu di chuyển

Trang 2

Page 11: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 1 Tổng quan

Nếu tay lái được đẩy hơi nghiêng tới trước, scooter sẽ chạy tới trước và khi nó được đẩy nghiêng ra sau, scooter sẽ chạy lùi. Đây là một phân tích lý tính. Hầu hết mọi người đều có thể kiểm soát tay lái trong vòng vài giây để giữ lấy nó.

Để dừng lại, chỉ cần kéo trọng tâm xe nghiêng ngược hướng đang di chuyển thì tốc độ xe giảm xuống. Do tốc độ cảm nhận và phản ứng thăng bằng của mỗi người là khác nhau, nên xe scooter hai bánh tự cân bằng chỉ được thiết kế cho một người sử dụng.

1.3 Tại sao phải thiết kế xe hai bánh tự cân bằng Những mobile robot xây dựng hầu hết robot là những robot di chuyển bằng ba

bánh xe, với hai bánh lái được lắp ráp đồng trục, và một bánh đuôi nhỏ. Có nhiều kiểu khác nhau, nhưng đây là kiểu thông dụng nhất. Còn đối với các xe 4 bánh, thường một đầu xe có hai bánh truyền động và đầu xe còn lại được gắn một hoặc hai bánh lái.

Việc thiết kế ba hay bốn bánh làm cho xe/mobile robot được thăng bằng ổn định nhờ trọng lượng của nó được chia cho hai bánh lái chính và bánh đuôi, hay bất kỳ cái gì khác để đỡ trọng lượng của xe. Nếu trọng lượng được đặt nhiều vào bánh lái thì xe/robot sẽ không ổn định dễ bị ngã, còn nếu đặt nhiều vào bánh đuôi thì hai bánh chính sẽ mất khả năng bám. Nhiều thiết kế xe/robot có thể di chuyển tốt trên địa hình phẳng, nhưng không thể di chuyển lên xuống trên địa hình lồi lõm (mặt phẳng nghiêng). Khi di chuyển lên đồi, trọng lượng xe/robot dồn vào đuôi xe làm bánh lái mất khả năng bám và trượt ngã, đối với những bậc thang, thậm chí nó dừng hoạt động và chỉ quay tròn bánh xe.

Khi di chuyển xuống đồi, sự việc còn tệ hơn, trọng tâm thay đổi về phía trước và thậm chí làm xe/robot bị lật úp khi di chuyển trên bậc thang. Hầu hết những xe/robot này có thể leo lên những dốc ít hơn là khi chúng di chuyển xuống, bị lật úp khi độ dốc chỉ 15o hay 20o. Việc bố trí bốn bánh xe, giống như xe hơi đồ chơi hay các loại xe bốn bánh hiện đang sử dụng trong giao thông không gặp vấn đề nhưng điều này sẽ làm các mobile robot không gọn gàng và thiết kế bộ phận lái (cua quẹo) gặp một chút phiền toái để có thể xác định chính xác quãng đường đã đi [16].

Ngược lại, các xe dạng hai bánh đồng trục lại thăng bằng rất linh động khi di chuyển trên địa hình phức tạp, mặc dù bản thân là một hệ thống không ổn định. Khi nó leo sườn dốc, nó tự động nghiêng ra trước và giữ cho trọng lượng dồn về hai bánh lái

Hình 1.3 Trạng thái xe ba bánh khi di chuyển trên địa hình bằng phẳng, dốc [16]

Trang 3

Page 12: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 1 Tổng quan

chính. Tương tự vậy, khi bước xuống dốc, nó nghiêng ra sau và giữ trọng tâm rơi vào các bánh lái. Chính vì vậy, không bao giờ có hiện tượng trọng tâm của xe rơi ra ngoài vùng đỡ của các bánh xe để có thể gây ra sự lật úp.

Hình 1.4 Trạng thái xe hai bánh đồng trục khi di chuyển trên địa hình bằng phẳng, dốc[16]

Đối với những địa hình lồi lõm và những ứng dụng thực tế, sự thăng bằng của xe

hai bánh có thể sẽ mang lại nhiều ý nghĩa thực tiễn trong giới hạn ổn định hơn là đối với xe ba bánh truyền thống.

1.4 Ưu nhược điểm của xe hai bánh tự cân bằng 1.4.1 Ưu điểm của xe scooter tự cân bằng trên hai bánh

− Không ô nhiễm, sử dụng bình điện, và có thể sạc điện.

− Sử dụng không gian hiệu quả, đa năng (sử dụng trong nhà và ngoài phố).

− Dễ dàng lái xuống đường, dừng lại và trò chuyện với bạn bè. Scooter tự cân bằng này khác hẳn với các loại xe đạp hay xe đẩy bình thường, vì chúng dễ kéo đẩy và không gây khó khăn khi dừng lại.

− Khá dễ để lái vòng quanh trong văn phòng, chạy ngang qua cửa ra vào do tốc độ thấp. Ngoài ra, nó còn có thể xuống các bậc thềm/ bậc thang thấp.

− Chiếm ít diện tích (chỉ hơn một con người) nên nó không gây tắt nghẽn giao thông như các loại xe bốn bánh. Như một phương tiện vận chuyển trên vỉa hè, nó cho phép di chuyển trong nơi đông đúc, và hoàn toàn có thể đi trên lòng đường.

− Giá thành thấp hơn so với xe hơi.

− Cuốn hút người sử dụng cũng như mọi người xung quanh vì hình dáng kỳ lạ của nó, phá vỡ các hình ảnh thường thấy về các phương tiện giao thông của con người.

Trang 4

Page 13: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 1 Tổng quan

1.4.2 Nhược điểm của xe

− Không thể thư giãn và khá mệt khi lái do phải đứng trong khi điều khiển. Vì đứng trên mặt sàn rung (do động cơ gây ra) và cứng làm chân mỏi. Do luôn giữ tư thế thẳng đứng để trọng lượng cơ thể đặt ở trọng tâm và đôi lúc gặp những đoạn đường xấu khiến cơ thể người điều khiển mệt mỏi.

− Không thể làm các việc khác khi đứng trên scooter này, chẳng hạn vừa đi vừa nghe điện thoại, hoặc vừa uống nước.

− Scooter không đủ nhanh để đi đường trường và không đủ an toàn để lên xuống lề đường.

− Không thể vận chuyển hai người trên cùng một xe. Việc này không thành vấn đề khi xe tự cân bằng đóng vai trò một platform của mobile robot, vì khối lượng tải là tĩnh.

− Không thể leo bậc thang có chiều cao quá ½ bán kính bánh xe. 1.5 Khả năng ứng dụng

Xây dựng được một phương tiện vận chuyển mới trong khu vực chật hẹp có thể di chuyển ngay trong các chung cư tòa nhà cao tầng, dùng trợ giúp di chuyển cho người già, và trẻ em vận chuyển.

Làm phương tiện vận chuyển hàng hoá đến những nơi đã được lập trình sẵn ở trong các tòa nhà, phòng làm việc, những không gian chật hẹp, khó xoay trở.

Thậm chí kết hợp trên các humanoid robot, nếu được kết hợp với các robot camera, robot dò đường, robot lái mặt đường thì hiệu quả các công dụng cụ thể cực kỳ linh hoạt. Tuy vậy, cần phải tiến hành giải quyết thêm về phần xuống cầu thang (không thể leo lên các bậc thang cao).

1.6 Tình hình nghiên cứu trong và ngoài nước

Hiện nay chưa có thông tin cụ thể nào về việc chế tạo xe hai bánh tự cân bằng dùng trên robot cũng như xe hai bánh tự cân bằng ở Việt Nam. Nhưng trên thế giới, ở một vài nước, các kỹ thuật viên và một số sinh viên đã nghiên cứu và cho ra đời các dạng xe hai bánh như thế. Dưới đây là một số thông tin về chúng.

1.6.1 Một số dạng xe hai bánh tự cân bằng dùng trên robot

1.6.1.1 nBot[16] nBot do David P. Anderson sáng chế. nBot

được lấy ý tưởng để cân bằng như sau: các bánh xe sẽ phải chạy xe theo hướng mà phần trên robot sắp ngã. Nếu bánh xe có thể được lái theo cách

Trang 5

Hình 1.5 nBot

Page 14: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 1 Tổng quan

đứng vững theo trọng tâm robot, robot sẽ vẫn được giữ cân bằng. Trong thực tế, điều này đòi hỏi hai cảm biến thông tin phản hồi: cảm biến góc nghiêng để đo góc nghiêng của robot với trọng lực, và encoder trên bánh xe để đo vị trí cơ bản của robot. Bốn thông số ngõ vào để xác định hoạt động và vị trí của xe con lắc ngược cân bằng là:

1) góc nghiêng. 2) đạo hàm của góc nghiêng, vận tốc góc. 3) vị trí bánh xe. 4) đạo hàm vị trí bánh, vận tốc bánh xe. Bốn giá trị đo lường được cộng lại và phản hồi tới điện áp động cơ, tương ứng

với momen quay, cân bằng, và bộ phận lái robot.

1.6.1.2 Balance bot I [28]

H

Balance-bot I (do Sanghyuk, Hàn Quốc thực hiện) là một robot hai bánh tự cân bằng bằng cách kiểm soát thông tin phản hồi. Hệ thống cao 50cm. Khung chính được làm bằng nhôm. Nó có hai trục bánh xe nối với hộp giảm tốc và động cơ DC cho sự phát động. Tổng cộng có ba bộ vi xử lý Atmel được sử dụng. Vi điều khiển chính (master) thi hành những nguyên lý kiểm soát và thuật toán ước lượng. Một vi điều khiển khác kiểm soát tất cả cảm biến analog. Vi điều khiển thứ ba điều khiển động cơ DC.

Linear quadratic regulator (LQR) được thiết kế và thực thi mạch điều khiển. Nó có bốn giá trị khác nhau – góc nghiêng, vận tốc góc nghiêng, góc quay bánh xe, và vận tốc góc quay, sau đó nó tạo lệnh cho động cơ DC để điều chỉnh tốc độ bánh xe.

1.6.1.3 Balancing robot (Bbot[26])

Vào năm 2003, Jack Wu và Jim Bai là những sinh viên trường Đại học Carnegie Mellon dưới sự trợ giúp của GS. Chris Atkeson đã thực hiện đề tài robot hai bánh tự cân bằng như luận văn tốt nghiệp. Robot này có thể xác định vị trí hướng của nó đối với môi trường và lái động cơ theo hướng này.

Để đo góc nghiêng của robot, các sinh viên này đã sử dụng hệ thống đo lường góc 2DOF được tích hợp sẵn của hãng Rotomotion. Hệ thống này gồm gia tốc kế

Trang 6

Hình 1.7 Balancing robot

ình 1.6 Balance-bot

Page 15: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 1 Tổng quan

ADXL202 và mạch con quay hồi chuyển. Vi mạch điều khiển dùng trên robot này là BasicX 24, có nhiều tính năng khác nhau. Nó được dùng như bộ điều khiển động cơ, COM1 được nối với Pocket PC và COM3 thì nối với bộ điều khiển servo Mini SSC 12. Nó còn được sử dụng như CPU chính cho việc điều khiển thăng bằng cho robot.

1.6.1.4 JOE [18]

Phòng thí nghiệm điện tử công nghiệp của Viện Công nghệ Federal, Lausanne, Thụy Sĩ, đã tạo ra cuộc cách mạng đầu tiên khi xây dựng mô hình xe hai bánh. Robot JOE cao 65cm, nặng 12kg, tốc độ tối đa khoảng 1,5m/s, có khả năng leo dốc nghiêng đến 30o. Nguồn điện cấp là nguồn pin 32V khả năng 1,8Ah.

Hình dạng của nó gồm hai bánh xe trục, mỗi bánh gắn với một động cơ DC, chiếc xe này có thể chuyển động xoay theo hình U. Hệ thống điều khiển được lắp từ hai bộ điều khiển state-space tách rời nhau, kiểm soát động cơ để giữ cân bằng cho hệ thống. Những thông tin về trạng thái của JOE được cung cấp bởi hai encoder quang và vận tốc của con quay hồi chuyển.

JOE được điều khiển bởi một bộ điều khiển từ xa R/C thường được sử dụng để điều khiển các máy bay mô hình. Bộ điều khiển trung tâm và xử lý tín hiệu là một board xử lý tín hiệu số (DSP) được phát triển bởi chính nhóm và của viện Federal, có khả năng xử lý dấu chấm động (SHARC floating point), FPGA XILINC, 12 bộ biến đổi A/D 12bit và 4 bộ biến đổi D/A 10bit.

Hình 1.8 Hình chụp JOE

1.6.1.5 Equibot [27] Equibot là robot cân bằng do Dan Piponi thực

hiện. Cơ bản nó dựa vào vi điều khiển ATMega32 RISC.

Cả hai servo Hitec HS-311 chuẩn được sửa đổi cho xoay vòng 360o và nguồn điện vào được nối trực tiếp với các động cơ để PWM kiểm soát chúng. Một trong hai servo được gắn với bộ điều khiển tứ cực LQR, đó là phần phức tạp nhất trong cấu trúc robot, bánh còn lại bắt chước tốc độ của bánh thứ nhất. Equibot chỉ có một loại cảm biến hồng ngoại Sharp thay cho cảm biến về góc. Nó được đặt thấp để đo khoảng cách với sàn. Ngõ ra từ thiết bị được dùng để xác định hướng robot di chuyển.

Trang 7

Hình 1.9 Equibot

Page 16: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 1 Tổng quan

1.6.1.6 BaliBot [29]

Balibot, một robot hai bánh tự cân bằng, là một trong các mẫu đầu tiên về robot hai bánh có trọng tâm phía trên các bánh xe. Không có hệ thống điều khiển hoạt động, robot sẽ bị ngã. Khi robot có nhận biết hướng mà nó sắp ngã, các bánh xe sẽ di chuyển về phía ngã và thẳng góc với chính nó.

Cảm biế

MMA2260 đư

Hình 1.11 Các tầng mạch, gồm nguồn, vi điều khiển và cảm biến

PIC16F8PIC tích hợp mI/O để kiểm sobằng bốn cục phân phối đếnkhiển khi côngtrên bảng projtrên khung bằ

Hình 1.10 Balibot

n góc nghiêng để đo góc nghiêng của robot, gia tốc kế Motorola ợc sử dụng, thiết bị có cấu trúc MEMS. 76 của hãng Microchip© được chọn làm trung tâm điều khiển cho robot. ột bộ biến đổi A/D nhiều kênh để đo cảm biến góc nghiêng và các ngõ

át hai servo được mô tả cho sự quay vòng tiếp theo. Điện được cung cấp pin AA và được ổn áp dropout. Nguồn điện 6V không qua ổn áp được động cơ servo qua tụ điện 3300µF qua bù năng lượng cho vi mạch điều suất ngõ ra từ các servo được hoạt động. Mạch điện tử được xây dựng

ect board Radio Shack RS 276-150 và lắp ráp phía trên các motor servo, ng nhôm. Nguồn điện được đặt gần đỉnh và hoạt động như trọng lượng

Trang 8

Page 17: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 1 Tổng quan

của con lắc ngược. Một phiên bản khác của BaliBot sử dụng các cảm biến hồng ngoại để đo khoảng cách thay vì dùng các cảm biến đo góc.

1.6.1.7 Bender [21]

Robot cân bằng Bender là đề án do TedLarson, San Francisco thực hiện. Mục tiêu hiện tại của ông là xây dựng robot tự cân bằng trên mặt sàn, và từ đó dùng làm nền cơ bản (platform) để xây dựng robot tự hành dùng bánh xe.

c

np

Hình 1.12 Hình chụp robot Bender

1.6.1.8 Loại Robot phục vụ con người, kiểu rolling phục vụ con người

của hãng TOYOTA Đây là một trong những loại robot có công

g phục vụ cho con người do hãng TOYOTA t kế. Nó cao 100cm và nặng 35kg. Mẫu robot có khả năng di chuyển nhanh mà không chiếm không gian lớn, đồng thời đôi tay của nó có thể nhiều công việc khác nhau, chủ yếu được dùng trợ lý trong công nghiệp.

h

gh

Hình 1.13 Loại robot, kiểu Rolling của TOYOTA

dụnthiếnàymộtlàmlàm

1.6.2 Một số dạng scooter hai bánh tự cân bằng 1.6.2.1 Segway [33]

Không giống như một chiếc xe hơi, Segway chỉ có hai bánh – trông nó như một iếc xe đẩy bằng tay thông thường – nó còn kiểm soát hoạt động ở tư thế thẳng đứng.

Để di chuyển đến trước hay lùi ra sau, người lái đứng trên Segway chỉ việc hơi hiêng về phía trước hay phía sau. Để quẹo trái hay phải, người lái quay tay lái qua ải hướng ra trước hay ra sau.

Trang 9

Page 18: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 1 Tổng quan

Hoạt động cân bằng ở Segway là một điều thú vị nhất, đó là chiếc chìa khóa của quá trình hoạt động. Xem xét về mô hình Karmen về thăng bằng của cơ thể người để hiểu hệ thống làm việc như thế nào. Nếu ta đứng và nghiêng người về phía trước, không còn thăng bằng, bạn sẽ ngã về trước. Bộ não biết rằng bạn không còn thăng bằng nữa, bởi vì chất dịch trong tai trong dao động, nên nó truyền tín hiệu ra lệnh cho chân bạn đặt lên phía trước và bạn lấy lại thăng bằng. Nếu bạn giữ mình trong trạng thái nghiêng về trước, bộ não điều khiển chân bạn đặt lên trước và giữ bạn đứng thẳng. Thay vì ngã, bạn bước đến trước.

Hình 1.14 Segway

Segway tạo ra khá giống như vậy, ngoại trừ nó có bánh xe thay vì đôi chân, động

cơ thay cho bắp cơ, tập hợp các vi mạch xử lý thay cho một bộ não và một dãy các cảm biến nghiêng thay cho hệ thống cân bằng tai trong. Như bộ não của bạn, Segway nhận biết khi ta hướng về trước. Để duy trì cân bằng, nó quay bánh xe đến trước chỉ với tốc độ vừa phải (chính xác), nên ta di chuyển đến trước.

Sự phân chia rõ ràng (con quay hồi chuyển chính yếu – trạng thái cân bằng). Khối Segway được lắp đặt nhiều hơn hai bánh xe. Thiết bị lái tận dụng cả công nghệ drive-by-wire và thiết bị cơ khí có hệ thống. Trong khi việc thiết kế bốn bánh đưa đến vận động dễ dàng và tốc độ cao hơn một tí, người lái có thể chọn lựa giữa việc sử dụng bốn bánh hay chỉ hai bánh xe.

Điều cơ bản nhất, Segway là sự kết hợp của một dãy các cảm biến, một hệ thống kiểm soát và một hệ thống động cơ.

Hệ thống cảm biến chủ yếu là sự kết hợp các con quay hồi chuyển (gyroscope). Một con quay hồi chuyển cơ học cơ bản là một bánh xe quay tròn bên trong cơ cấu vững chắc. Mục đích sự quay tròn nhằm kháng lại sự thay đổi trục quay của nó, bởi vì lực tác động di chuyển dọc theo cơ cấu. Nếu ta đẩy một điểm trên bánh xe quay, ví dụ, điểm này di chuyển quanh bánh trước trong khi nó vẫn còn giữ lực tác động. Khi một điểm lực giữ di chuyển, nó kết thúc lực tác dụng đối diện với điểm cuối của bánh xe – không còn cân bằng lực.

Trang 10

Page 19: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 1 Tổng quan

Bởi vì nó kháng đối với lực bên ngoài, bánh xe quay hồi chuyển sẽ duy trì vị trí của nó trong không gian (liên hệ với mặt đất) thậm chí nếu bạn nghiêng nó đi. Nhưng hệ thống con quay hồi chuyển sẽ di chuyển tự do trong không gian. Bằng việc đo lường vị trí của bánh xe quay liên hệ với cơ cấu, cảm biến chính xác có thể cho ta biết độ dốc của vật (nó nghiêng bao nhiêu so với vị trí thẳng đứng) cũng như tốc độ dốc (nó nghiêng nhanh như thế nào).

Một con quay hồi chuyển thông thường sẽ cồng kềnh và khó bảo dưỡng xe, nên Segway tiếp thu hiệu quả này với hình thức khác của cơ khí. Segway vận dụng một cảm biến tốc độ nghiêng bán dẫn đặc biệt được tạo từ silic. Loại con quay hồi chuyển này quy định sự quay vòng của vật thể sử dụng hiệu ứng Coriolis trên một lớp rất nhỏ.

Segway HT có năm cảm biến hồi chuyển, mặc dù nó chỉ cần ba cảm biến để phát hiện ra mức đẩy ra trước và ra sau cũng như nghiêng bên trái hay bên phải. Các cảm biến còn lại làm cho phương tiện chắc chắn hơn. Thêm vào đó, Segway có hai cảm biến nghiêng chứa đầy dung dịch điện phân. Giống như tai trong, hệ thống nhận biết vị trí nghiêng có liên hệ với mặt đất trong trạng thái nghiêng của bề mặt chất dịch.

Tất cả thông tin về trạng thái nghiêng truyền đến “bộ não” của xe, hai bảng mạch điều khiển điện tử bao gồm một bó vi mạch xử lý. Segway có tổng cộng 10 bảng mạch vi xử lý, với năng lực gấp ba lần năng lực PC điển hình. Thông thường cả hai bảng mạch làm việc chung với nhau nhưng nếu một bảng bị hư, bảng còn lại nhận tất cả các chức năng để hệ thống báo tín hiệu cho người lái biết sự trục trặc để khởi động lại.

Segway đòi hỏi năng lực làm việc cao của bộ não vì nó cần điều chỉnh cực kỳ chính xác để giữ không bị ngã. Trong những máy thông thường, bảng mạch điều khiển kiểm tra vị trí cảm biến khoảng 100 lần/giây. Mạch vi xử lý điều hành phần mềm tương thích để phát tín hiệu tất cả các thông tin ổn định và điều chỉnh tốc độ cho nhiều động cơ điện phù hợp. Động cơ điện được nạp năng lượng từ một cặp pin (Ni-MH) có thể sạc lại, làm quay độc lập mỗi bánh xe với tốc độ khác nhau.

Khi xe nghiêng về trước, động cơ làm cả hai bánh xe quay về trước và giữ về trạng thái nghiêng. Khi xe nghiêng ra sau, động cơ làm cả hai bánh xe quay ra sau. Khi người lái điều khiển tay lái quẹo trái hay phải, động cơ làm một trong hai bánh xe quay nhanh hơn bánh xe kia hay hai bánh xe quay ngược chiều để xe xoay quanh.

Nó chỉ đi khoảng 12 dặm/giờ (20km/giờ), và nó cần nạp điện khoảng 6 giờ để dự trữ dùng đủ cho một chuyến đi 15 dặm (24km).

Segway là sự lựa chọn cao trong thành phố. Vì các xe hơi đắt tiền và nếu có lượng lớn xe hơi chạy trên đường phố sẽ gây nên ùn tắt giao thông, và thiếu chỗ đậu xe. Tất cả những điều ấy, xe hơi không là phương tiện tối ưu nhất trong khu dân cư đông đúc.

Segway không thể đưa con người đi đến nơi muốn đến với tốc độ cao nhất, nhưng Segway có thể đi bằng sự di chuyển chậm, nối đuôi nhau. Một khi chúng đến nơi, người lái có thể mang Segway vào bên trong mà không phải lo lắng gì về chỗ đậu xe. Và cũng không cần dừng ở những trạm xăng dầu, mà chỉ cần nạp điện cho xe tại nhà.

Trang 11

Page 20: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 1 Tổng quan

Segway cũng là chiếc máy tốt dùng để đi trong các kho hàng, nơi có nhiều hành lang. Người ta còn nhận thấy sự hữu dụng khi đi quanh trong các khu dân cư, sân bay hay công viên. Thật sự không có giới hạn không gian trong việc sử dụng xe. Segway giúp bạn đi nhanh hơn mà không mất nhiều năng lượng.

• Tốc độ cao nhất: 12,5 dặm/giờ (20 km/giờ). Gấp ba lần tốc độ đi bộ bình thường.

• Trọng lượng không tải: 80 lbs (36 kg). • Chiều rộng: không gian bao phủ trên mặt đất của Segway là 19 – 25 inch (48 –

63,5 cm). Segway có chiều rộng gần bằng kích thước của một người trung bình, nên nó không mất nhiều diện tích trên đường. Bàn đạp dài 8 inch (20 cm).

• Tải trọng: một người nặng 250 pound (110kg) với hàng hóa nặng 75 pound (34kg).

• Phạm vi: đi khoảng 17 dặm (28 km) với một bình sạc đơn. Trên mô hình tính toán, người thiết kế ước tính xe đi trong phạm vi 11 dặm (17 km) với một bình sạc đơn.

• Giao diện hiển thị xe hoạt động: Segway có màn hình LCD nhỏ cho người lái biết năng lượng pin còn bao nhiêu và hoạt động của xe như thế nào, còn tốt không. Màn hình trình bày như bề mặt hoạt hình, biểu diễn trạng thái chung của phương tiện.

1.6.2.2 Balancing scooter [17]

Trevor Blackwell chế tạo ra xe scooter dựa theo Segway của hãng Mỹ. Xe scooter tự cân bằng này được xây dựng từ những bộ phận giống động cơ xe lăn và từ các cục pin xe RC. Những bộ phận và module để chế tạo có giá thành thấp hơn phân nửa Segway. Nó không cần phần mềm thực thi cao hay phức tạp. Phiên bản đầu tiên được viết trong Python và sử dụng port số để truyền thông tin đến con quay hồi chuyển và mạch điều khiển động cơ.

Xe được sử dụng vi điều khiển 8-bit từ Atmel, chạy trên code C với một số điểm trôi. Nó gởi những lệnh kiểm soát tốc độ ra port serial khoảng 9600 baud trong ASCII đối với bộ phận lái động cơ, có giá 10USD do Digikey tạo. Một con quay hồi chuyển ceramiđiều chỉnh hướng chính xác, cùng hoạt động với vi mạch149USD do Rotomotion tạo ra.

1.6.2.3 HTV [18]

Trang 12

nh 1.15 Xe 2 bánh tự cân bằng

của Trevor Blackwell

c và gia tốc kế hai trục để điều khiển Atmel, với giá

Page 21: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 1 Tổng quan

Nh thuật HTV của trường đại học Camosun gồm các thành viên

óm sinh viên ngành kỹ Brian Beckwith, Eric Desjardins, Chris Howard, Joel Murphy, Matt Uganecz,

Jack Woolley đến từ các bang khác nhau Victoria, British Columbia của Canada. Tháng 3/2004, họ đã cho ra đời sản phẩm scooter HTV như một đề án tốt nghiệp đại học của họ.

Hình 1.16 Xe tự cân bằng HTV và nhóm thực hiện

hóm HTV đã sử dụng ADXR150EB từ thiết bị analog đo vận tốc góc nghiêng.

Đó là

1.6.2.4 Spider [20] Fra Lob ời Spider vào cuối tháng

2/200

1. Nhu cầu thực tế ện đường xá giao thông ngày càng chật hẹp, không khí

ngày càng ô nhiễm, việc nghiên cứu và chế tạo một mô hình xe điện gọn nhẹ, dễ xoay

N một gyro tuyệt vời, có các tính năng, như: loại bỏ độ rung cao, tỉ số cao ±150o/s,

độ nhạy cao 12mV/deg/s, được cài đặt sẵn tín hiệu điều kiện. MMA2260D từ Motorola, một gia tốc kế có độ nhạy cao (1200mV/g), và cũng được cài đặt sẵn tín hiệu điều kiện, dùng đo góc nghiêng tĩnh. Bộ điểu khiển sử dụng Logic mờ (Fuzzy Logic) trong việc điều khiển cân bằng và di chuyển của xe.

Hình 1.17 Spider

ncisco o cho ra đ4, trông giống là scooter hơn là robot, tuy nhiên nó

có ứng dụng trong cả hai lĩnh vực. Nó có thể giữ cân bằng hầu như ở mọi tình huống, di chuyển, lượn vòng quanh. Scooter được điều khiển bằng hai động cơ của hãng NPC và gia tốc kế hai trục bằng thiết bị analog, chứa hai thành phần chính: Gyro kỹ thuật cảm biến silicon và BasicX (vi điều khiển). Khung xe được chế tạo từ khung nhôm và sợi carbon. Bộ lái MOSFET động cơ lái là module từ Roboteq được dùng trên robot chiến đấu. Nguồn điện là loại dùng trong mô hình RC (NiMh 3000mAh).

7 Hiện tại, trong điều ki

Trang 13

Page 22: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 1 Tổng quan

xở, k

trọng để có kinh nghiệm trong việc tính toán, mô hình và chế tạo các r

ại sao có thể di chuyển và thăng

ớí những lý do khách quan như đã nếu, đề tài có lẽ có một nhu cầu nhất định trong tình hình hiện nay của Việt Nam cũng như toàn thế giới.

hông sử dụng nhiên liệu đốt trong là một nhu cầu thực sự. Bên cạnh đó, thiết kế một platform cho mobile robot cũng là một đề tài cần thiết trong lĩnh vực tự động hóa ngày nay, nhằm trợ giúp cho trẻ em, người già, vận chuyển hàng hóa, giám sát … trong cuộc sống hàng ngày vốn có nhiều nhu cầu trong việc đi lại và vận chuyển tại các thành phố lớn.

Về khía cạnh khoa học và công nghệ, mô hình xe hai bánh tự cân bằng thực sự là một bước đệm quan

obot hai chân (biped-robot, humanoid robot), là đỉnh cao về khoa học và công nghệ mà các trường đại học trên toàn thế giới mong muốn vươn tới. Ngoài ra, mô hình cũng sẽ là sự bổ sung cần thiết về các giải pháp công nghệ di chuyển của các mobile robot 3 bánh, 4 bánh cũng như mobile robot có chân, làm phong phú những lựa chọn giải pháp để chuyển động trong không gian cho các robot.

Về yếu tố tâm lý con người, mô hình xe hai bánh tự cân bằng thực sự là một dấu chấm hỏi lớn cho những người từng thấy hay dùng nó: t

bằng được? Điều này cuốn hút nhu cầu được sử dụng một chiếc xe hai bánh tự cân bằng. Và đó chính là lý do của sự thành công lớn trên thế giới của mô hình xe Segway trong năm 2003.

V

Trang 14

Page 23: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 2 Nhiệm vụ luận văn

Chương 2 NHIỆM VỤ LUẬN VĂN

2.1 Mục tiêu đề tài Mục tiêu của đề tài là xây dựng phương tiện xe hai bánh cân bằng di chuyển

trên địa hình phẳng, dựa trên nền tảng lý thuyết mô hình con lắc ngược. Khả năng di chuyển cân bằng trên hai bánh làm phương tiện di chuyển hiệu quả và linh động hơn, dễ dàng xoay trở trong điều kiện không gian chật hẹp. Trong khuôn khổ 16 tuần thực hiện luận văn tốt nghiệp đại học, những mục tiêu của đề tài được đề ra như sau:

− Tìm hiểu về các loại scooter, nguyên lý cơ bản về cân bằng.

− Tính toán các tham số động lực học, hàm trạng thái (space-state) của mô hình.

− Xây dựng mô phỏng trên MSc Nastran và Matlab 7-Simulink.

− Thiết kế bản vẽ, chế tạo mô hình theo kích thước thực, có thể vận chuyển một người trưởng thành.

− Thiết kế mạch điều khiển trung tâm, làm nhiệm vụ xử lý tín hiệu đo và đưa ra các quyết định điều khiển.

− Thiết kế mạch điện tử kết hợp các cảm biến thực hiện chức năng đo góc (phần cứng).

− Thiết kế mạch lái các MOSFET công suất cho hai động cơ (MOSFET driver) có khả năng hoạt động ở tần số từ 7-15KHz.

− Giải thuật cho vi điều khiển kết hợp và bù trừ các cảm biến để có được giá trị đo góc chính xác.

− Xây dựng thuật toán điều khiển cho động cơ, giữ thăng bằng và ngăn ngừa quá tải của các bánh xe.

− Lập trình điều khiển.

2.2 Phương pháp nghiên cứu

− Xây dựng mô hình lý thuyết gồm có: Tiếp cận từ mô hình tương đương – mô hình con lắc ngược đến mô hình thật

của đề tài. Mô phỏng mô hình bằng VN Nastran và MatLAB: scooter tự cân bằng trên

hai bánh.

Trang 15

Page 24: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 2 Nhiệm vụ luận văn

− Tiếp cận mô hình thực, gồm có: Thiết kế khung sườn cơ khí của mô hình. Công suất điện và điện tử (điều khiển bánh xe). Mạch cảm biến (góc, vị trí, vận tốc góc và vận tốc dài). Calibre cảm biến. Bộ điều khiển trung tâm. Lập trình vi điều khiển.

Trang 16

Page 25: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

Chương 3 LÝ THUYẾT TIẾP CẬN

3.1 Phương pháp tính động lực học Có nhiều phương pháp dùng để tính động lực học, chẳng hạn: phương pháp

Newton, phương pháp Lagrange, phương pháp theo năng lượng…Nhưng trong đề tài này, phương pháp Newton được sử dụng với các ưu điểm của nó. Thứ nhất, nó sử dụng các phương pháp tính cơ học thông thường. Thứ hai, các công thức và hệ phương trình trong quá trình tính không quá phức tạp. Thứ ba, kết quả tính động lực học của mô hình con lắc ngược được phổ biến hiện nay ở các tài liệu tham khảo được sử dụng để kiểm tra sự sai sót trong quá trình tính toán động lực học của mô hình xe hai bánh tự cân bằng.

Bên cạnh các ưu điểm này, nó vẫn có nhược điểm là phải tuyến tính hóa tính toán tại vị trí góc α = 0o. Tuy nhiên việc này không trầm trọng trong mô hình của đề tài, vì mô hình chỉ hoạt động xung quanh vị trí 0o ( ±10 o).

3.1.1 Nền tảng nghiên cứu từ con lắc ngược – Ta xem xét mô hình toán học của con lắc ngược với các tham số như sau: M Khối lượng xe (kg). m Khối lượng con lắc (kg). b Ma sát của xe (N). L Chiều dài ½ con lắc (m). I Momen quán tính của con lắc (Nm). F Lực tác động vào xe (N). X Vị trí của xe (m). θ Góc của con lắc so với phương thẳng đứng (rad).

Hình 3.1 Phân tích lực trên xe và trên con lắc [34]

Trang 17

Page 26: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

Mô hình nghiên cứu gồm hai phần: o Một con lắc gắn bởi một khớp bản lề với xe. o Tác động lực F vào xe.

Mô hình bao gồm hai ngõ vào: o Dịch chuyển của xe (x). o Góc lệch của con lắc (θ).

Hệ thống con lắc ngược Xung lực

θ

x

Hình 3.2 Mô hình và sơ đồ khối tín hiệu ngõ vào và ra của con lắc ngược

Phân tích lực cho xe, ta có: Tổng lực tác dụng lên xe theo phương ngang:

FNxbxM =++•••

[3-1] Tổng lực tác dụng lên con lắc theo phương ngang:

θθθθ sincos2•••••

−+= mLmLxmN [3-2] Từ [3-1]suy ra:

( ) FmLmLxbxmM =−+++••••••

θθθθ sincos2

[3-3] Tổng lực tác dụng ở phương vuông góc với con lắc ta có:

θθθθθ cossincossin••••

+=++ xmmLmgNP [3-4]

Tổng momen tại khối tâm con lắc ta có: ••

=−− θθθ INLPL cossin [3-5] Kết hợp hai phương trình trên:

( ) θθθ cossin2••••

−=−+ xmLmgLmLI [3-6]

Từ [3-3]và [3-6] xấp xỉ tuyến tính hóa tại 0o:

( ) FmLxbxmM =+++•••••

θ [3-7]

( ) ••••

−=−+ xmLmgLmLI θθ2 [3-8]

Trang 18

Page 27: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

Hàm trạng thái (space-state):

( )( ) ( )

( ) ( )

( )

( )

F

MmLmMImL

MmLmMImLI

xx

MmLmMImMmgL

MmLmMImLb

MmLmMIgLm

MmLmMIbmLI

xx

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

++−

+++

+

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

+++

++

++−

+++−

=

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

••

••

2

2

2

22

2

22

2

2

0

0

0)(01000

00

0010

θθ

θθ

[3-9]

Fxx

x⎥⎦

⎤⎢⎣

⎡+

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

00

01000001

θθθ

[3-10]

Nếu xem b<<1, I<<1, ta được dạng hàm trạng thái đơn giản hơn

F

ML

Mxx

MLmMg

Mmg

xx

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

−+

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

+

=

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

••

••

10

10

0)(001000

0000010

θθ

θθ [3-10’]

3.1.2 Động lực học mô hình xe tự cân bằng

Hình 3.3 Biểu diễn lực và momen của mô hình [17]

• Đối với bánh trái (cũng như bánh phải):

LTLRLRL HHMx −=..

[3-11]

LRLTLRLRL VgMVMy −−=..

[3-12]

RHCJ TLLRLRL −=..θ [3-13]

Trang 19

Page 28: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

Ma sát rất nhỏ do đó bỏ qua HTL

• Đối với thân:

LRthânthân HHMx +=⋅⋅

[3-14]

θCthânRLthânthân FgMVVMy +−+=⋅⋅

[3-15]

)(cos)(sin)(..

RLRLRLthân CCLHHLVVJ +−+−+= θθθ [3-16]

2)(

.. DHHJ RLthânquay −=δ [3-17]

Trong đó: Jthân : là momen quán tính của người (Nm2). Jbánh, JRL, JRR : momen quán tính bánh xe (Nm2). Mthân, Mbánh : khối lượng của người và bánh (kg). R : bán kính bánh xe (m). D : khoảng cách giữa hai bánh xe (m). L : khoảng cách từ trục z của hai bánh xe đến trọng tâm người

(m). θ : góc lật (rad). δ : góc quay (rad).

Tổng quát, ta được phương trình:

)()cos()()sin()(..

RLRLRLthân CCLHHLVVJ +−⋅+−⋅+= θθθ [3-18]

)(..

RLthânthân HHMx +=⋅ [3-19]

)sin()()()(..

θθ ⋅+

+⋅−+=+⋅−+=⋅L

CCgMVVFgMVVMy RLthânRLCthânRLthânthân [3-20]

• Thế [3-19] và [3-20] vào [3-18]:

)()cos()(sin))((..

2....

RLthânthânRL

thânthânthânthân CCLMxLL

CCgMMyJ +−⋅⋅−⋅+

−⋅+⋅= θθθ [3-21]

)))(sin(1()sin()cos()sin( 2......

RLthânthânthânthânthân CCgLMxyLMJ ++−⋅⋅+⎥⎦⎤

⎢⎣⎡ ⋅−⋅⋅= θθθθθ [3-22]

Xét với mỗi bánh trái và phải:

Trang 20

Page 29: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

⎪⎩

⎪⎨⎧

−=

−=

RTRRRRR

LTLRLRL

HHMx

HHMx..

..

[3-23]

RMRRRLbánhRRRL xxxMMM......

2)(; =+== [3-24]

)()()(....

TRTLRLRRRLbánh HHHHxxM +++−=+⋅ [3-25]

RHCJMà TLLRLRL ⋅−=⋅..

θ [3-26]

RJJCCMxxxM RRRRRLRLRL

thânthânRRRLbánh)()()(

.......... ⋅+⋅−+

+⋅−=+⋅θθ [3-27]

δθ Ci

CCL 21

21

+= [3-28]

δθ Ci

CCR 21

21

−= [3-29]

θCCC RL =+ [3-30]

θbánh được đo so với trung tọa độ Galilée tĩnh:

)))((sin1()sin()cos()sin( 2......

RLthânthânthânthânthân CCgLMxyLMJ ++−⋅⋅+⎥⎦⎤

⎢⎣⎡ ⋅−⋅⋅= θθθθθ [3-31]

RJJCCMxxM RRRRRLRLRL

thânthânRMbánh)()(2

........ ⋅+⋅−+

+⋅−=⋅θθ [3-32]

RJ

RCMxxM bánhbánh

thânthânRMbánh

......

22 θθ ⋅−+⋅−=⋅ [3-33]

Cθ là giá trị trung bình của CL và CR

⎩⎨⎧

⋅+=−⋅−=

θθsin

)cos1(Lxx

Ly

bánhTBthân

thân [3-34]

⎪⎩

⎪⎨⎧

⋅⋅+=

⋅−=...

..

)(cos

)(sin

θθ

θθ

Lxx

Ly

bánhTBthân

thân [3-35]

⎪⎪⎩

⎪⎪⎨

⋅⋅−⋅⋅+=

−⋅−=

.2

......

.2

....

)(sin)(cos

)(cos)(sin

θθθθ

θθθθ

LLxx

LLy

TBbánhthân

thân [3-36]

• Do đó:

θθθθ coscossin........

bánhTBthânthân xLxy −−=− [3-37]

Trang 21

Page 30: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

• Hệ phương trình trở thành:

θθθθθ θ cos)sin1(sin....

2..

thânTBbánhthânthânthân LMxCMgLLMJ −+−⋅+−= [3-38]

bánhTBthânbánh

thânthânbánhTBbánh xMR

CR

JLMLMxM..

....2...

2)(cos)(sin2 −+−−⋅= θθθθθθ [3-39]

• Momen quán tính của thân xem như là một đoạn thẳng hình trụ chiều dài 2L, bánh xe xem như là một dĩa tròn xoay:

2

31 LMJ thânthân = [3-40]

2

21 RMJ bánhbánh = [3-41]

( )⎪⎪

⎪⎪

+−−⋅=+

−+−⋅+−=

RC

R

RMLMLMxMM

LMxCMgLLMLM

bánh

thânthânbánhTBthânbánh

thânTBbánhthânthânthân

θ

θ

θθθθθ

θθθθθ

..2

..2...

....2

..2

21

2)(cos)(sin2

cos)sin1(sin31

[3-42]

( )⎪⎪⎩

⎪⎪⎨

+−−⋅=+

−+−⋅=

RCRMLMLMxMM

LMxCMgLLM

bánhthânthânbánhTBthânbánh

thânTBbánhthânthân

θ

θ

θθθθθ

θθθθ

....2...

....2

)(cos)(sin2

cos)sin1(sin34

[3-43]

• Xấp xỉ các giá trị sin, (1+sin2), cos, ta được:

⎪⎪⎩

⎪⎪⎨

=+++

=++−

RC

RMLMxMM

xML

CgMLM

bánhthânbánhTBthânbánh

TBbánhthânthânthân

θ

θ

θ

θθ

....

....

)()2(

034

[3-44]

⎪⎪⎩

⎪⎪⎨

+=+

++

=++−

RC

MMM

RMLMMM

MxM

xLM

CgL

thânbánh

thânbánhthân

thânbánh

thânbánhTBthân

TBbánh

thân

θ

θ

θ

θθ

)2()(

)2(

034

....

....

[3-45]

• Giải hệ phương trình, ta được:

Trang 22

Page 31: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

⎪⎪⎩

⎪⎪⎨

⎥⎦

⎤⎢⎣

⎡+

+−=−⎟⎟

⎞⎜⎜⎝

⎛+

+−

−+−=

LC

RC

MMM

gMRMLMMM

MLM

LMC

gLx

thânbánh

thânthânbánhthân

thânbánh

thânthân

thânTBbánh

θθ

θ

θθ

θθ

)2()(

)2(34

34

..

....

[3-46]

⎪⎪⎩

⎪⎪⎨

⎥⎦

⎤⎢⎣

⎡+

+−=−⋅

−+−=

⋅⋅

LC

RC

MMMgMX

LMCgLx

thânbánh

thânthân

thânTBbánh

θθ

θ

θθ

θθ

)2(

34 ....

[3-47]

Đặt: ⎟⎟⎠

⎞⎜⎜⎝

⎛+

+−= )(

)2(34 RMLM

MMMLMX bánhthân

thânbánh

thânthân [3-48]

LRMM

MYthânbánh

thân 11)2(

++

= [3-49]

XCY

XgM thân θθθ ⋅

−=..

[3-50]

θθ CLMX

LYgX

gMLxthân

thânbánhTB ⎟⎟

⎞⎜⎜⎝

⎛−+

⎟⎟⎟

⎜⎜⎜

⎛+−=

134

34..

[3-51]

• Từ đó, ta có hệ phương trình biến trạng thái:

XCY

XgM thân θθθ ⋅

−=..

[3-52]

θθ CLMX

LYgX

gMLxthân

thânbánhTB ⎟⎟

⎞⎜⎜⎝

⎛−+

⎟⎟⎟

⎜⎜⎜

⎛+−=

134

34..

[3-53]

θ

θθ

θθ

C

XY

LMXLY

xx

XgM

XMLg

xx

thânbánh

bánh

thân

thân

bánh

bánh

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

⎟⎟⎠

⎞⎜⎜⎝

⎛−

+

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢

+

⎟⎟⎟

⎜⎜⎜

⎛−

=

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

0

134

0

0001000

034100

0010

.

.

..

.

..

.

[3-54]

θ

θθθ

Cxx

x bánh

bánh

bánh⎥⎦

⎤⎢⎣

⎡+

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡00

01000001

.

.

[3-55]

Trang 23

Page 32: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

3.2 Thuật toán điều khiển - Kỹ thuật điều khiển hiện đại (Modern control

design) - Bộ điều khiển số LQR

Hình 3.4 Mô hình truyền cùa hàm trạng thái

3.2.1 Thiết kế cổ điển và hiện đại Hệ thống điều khiển được thiết kế nhằm tự thực thi mệnh lệnh như thế nào và

tới đâu của hệ thống. Hệ thống điều khiển rất cần thiết vì ta không muốn cách hoạt động hiện tại của quy trình, và bằng cách làm thay đổi hoạt động của quy trình phù hợp với nhu cầu của ta. Thiết kế hệ thống là thay đổi các tham số (parameter) hệ thống kiểm soát để phù hợp với mục tiêu ổn định đặc trưng, và bền vững. Tham số thiết kế có thể là một hằng số không biết (bất kỳ) trong hàm truyền của bộ điều khiển (transfer function), hoặc ma trận trạng thái đặc trưng (space-state).

Phương pháp thiết kế cổ điển bao gồm cách thay đổi hàm truyền bộ điều khiển đến khi đạt được chu trình đóng (closed-loop). Những dấu hiệu nhận biết (indicator) cổ điển của khả năng vòng điều khiển khép kín ổn định là đáp ứng tần số, hay vị trí cực của hệ thống điều khiển. Đối với hệ thống điều khiển bậc cao, bằng cách thay đổi một số ít hằng số trong hàm truyền của bộ điều khiển, có thể làm thay đổi phần lớn các vị trí cực điều khiển, dù không phải biến đổi là tất cả. Đây là giới hạn chính của phương pháp thiết kế cổ điển. [11]

Nguyên tắc kiểm tra hệ thống ổn định bằng hàm trạng thái : tìm nghiệm λ của phương trình | λI – A | = 0, với A là một thành phần của hàm trạng thái, nếu một trong những eigenvalue của A là λ > 0, thì vòng kín của hệ điều khiển không ổn định. [14]

Khả năng điều khiển của hệ thống có thể được xác lập khi hệ thống có được bất kỳ trạng thái ban đầu nào (any initial state), x(to), đến trạng thái cuối bất kỳ nào (any final state), x(tf), trong thời gian xác định (finite time), (tf – to), mỗi một giá trị của vector ngõ vào, u(t), to ≤ t ≤ tf . Điều này cực kỳ quan trọng, vì có thể thay đổi hệ thống không điều khiển (uncontrollable) được từ trạng thái ban đầu đến trạng thái cuối cùng, hay lấy một lượng thời gian không xác định làm thay đổi hệ thống không điều khiển được, bằng cách dùng vector ngõ vào, u(t). Khả năng điều khiển được của hệ thống dễ dàng được kiểm tra nếu tách riêng ra các phương trình trạng thái của hệ thống. Mỗi phương trình trạng thái vô hướng tách riêng đều tương đương với hệ thống phụ (sub-system).

3.2.2 Định lý về khả năng điều khiển Một hệ thống tuyến tính, bất biến theo thời gian được mô tả bằng phương trình

trạng thái ma trận, x(1)(t) = Ax(t) + Bu(t) điều khiển được nếu và chỉ nếu ma trận kiểm tra khả năng điều khiển.

Trang 24

Page 33: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

P = [B; AB; A2B; A3B; ….; An-1B] có hạng là n, là bậc (rank) của hệ thống.[13]

Hạng của ma trận, P, được xác định như là một định thức khác không lớn nhất hình thành ma trận, P. Nếu P là ma trận vuông, định thức lớn nhất hình thành P là |P|. Nếu P không phải là ma trận vuông, thì định thức lớn nhất P được hình thành bằng cách cho tất cả hàng bằng với số cột hoặc là tất cả cột bằng với số hàng của P. Từ đó có hạng của ma trận. Chú ý rằng hệ thống của ngõ vào bậc n với r, ma trận kiểm tra khả năng điều khiển, P, là ma trận (n x nr). Định thức khác không của P có thể là thứ nguyên của n. Do đó, hạng của P có thể là nhỏ hơn hoặc bằng n.

Một bằng chứng hiển nhiên của định lý kiểm tra khả năng điều khiển đại số có thể thấy trong định lý Friedland (phần đại số ma trận). Một dạng tương tự của định lý có thể áp dụng cho hệ thống thay đổi theo thời gian. Từ đó có thể tiến hành kiểm tra khả năng điều khiển thay đổi theo thời gian (time-varying).

P(t) = [B(t); A(t)B(t); A2(t)B(t); A3(t)B(t); ….; An-1(t)B(t)] [3-56]

Và kiểm tra hạng của P(t) đối với tất cả thời điểm, t ≥ to, cho hệ thống tuyến tính biến đổi theo thời gian. Nếu tại bất kỳ t nào, hạng của P(t) nhỏ hơn n, hệ thống không điều khiển được. Tuy nhiên, việc dùng ma trận kiểm tra khả năng điều khiển biến đổi thời gian của phương trình [3-56] cần chú ý đến hệ số trạng thái biến đổi nhanh theo thời gian, vì việc kiểm tra có thể thực thi tại các bước thời gian riêng biệt, và trong vài khoảng thời gian (nhỏ hơn bước thời gian), hệ thống vẫn có khả năng điều khiển trong đó.

|P| ≥ rank (P) → điều khiển được(controllable) Việc kiểm tra khả năng điều khiển đại số gồm nhận biết hạng của P, kiểm tra

xem liệu nó có bằng n không, hình thành định thức có thể của thứ nguyên n của ma trận P bằng cách loại bỏ vài cột (nếu m > 1), và kiểm tra giá trị định thức có khác không. Phần mềm MatLAB cung cấp lệnh rank (P) giúp cho việc nhận biết hạng của ma trận P trở nên dễ dàng. Hơn nữa, công cụ Control System Toolbox của MatLAB (CST) cho phép hình thành trực tiếp ma trận kiểm tra khả năng điều khiển P, bằng cách dùng lệnh ctrb như sau:

>>P = ctrb(A,B) <enter> hay >>P = ctrb(sys) <enter> trong đó, A và B là ma trận hệ số trạng thái của hệ thống mà hàm truyền (LTI)

của nó là sys. Nguyên nhân khiến hệ thống không điều khiển được có thể là do tính chính

xác, chẳng hạn cách dùng các giá trị trạng thái thừa (nghĩa là các giá trị trạng thái nhiều hơn bậc của hệ thống). Giá trị trạng thái thừa không ảnh hưởng trực tiếp bởi ngõ vào hệ thống, sẽ không tạo ra không gian trạng thái để điều khiển, cho dù hệ thống có thể điều khiển được về mặt vật lý. Nguyên nhân đôi khi làm mất khả năng điều khiển được là có quá nhiều cực đối xứng trong mô hình toán học của hệ thống.

Trang 25

Page 34: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

3.2.3 Thiết kế gán cực hồi tiếp biến trạng thái đầy đủ Hệ thống điều khiển chu trình đóng được thiết kế bởi bộ điều khiển để đặt các

cực tại vị trí mong muốn sẽ làm thay đổi đặc tính của hệ điều khiển. Phương pháp thiết kế cổ điển dùng hàm chuyển giao bộ điều khiển với một vài tham số thiết kế không đủ đặt vào tất cả các cực của chu trình đóng tại vị trí mong muốn. Phương pháp hàm trạng thái dùng thông tin phản hồi trạng thái đầy đủ cung cấp đủ tham số thiết kế bộ điều khiển để di chuyển các cực chu trình đóng độc lập nhau [13]. Thông tin phản hồi trạng thái đầy đủ được phát ra từ vector ngõ vào của bộ điều khiển, u(t), theo định luật điều khiển như sau:

u(t) = K [xd(t) – x(t) – Kdxd(t) – Knxn(t)] [3-57] Trong đó x(t) là vector trạng thái của hệ thống, xd(t) là vector trạng thái mong

muốn, xn(t) là vector trạng thái nhiễu và K, Kd và Kn là ma trận gain của bộ điều khiển. Vector trạng thái mong muốn, xd(t), và vector trạng thái nhiễu, xn(t), được tạo ra từ tiến trình ngoài, và hoạt động như những ngõ vào hệ thống điều khiển. Nhiệm vụ của bộ điều khiển là thu được vector trạng thái mong muốn ở tình trạng ổn định (steady), trong khi đó vẫn phản ứng chống lại ảnh hưởng của độ nhiễu. Vector ngõ vào, u(t), được tạo bởi phương trình [3-57] ứng dụng cho hệ thống được mô tả bởi phương trình ngõ ra và trạng thái sau:

x(1)(t) = Ax(t) + Bu(t) + Fxn(t) [3-58] y(t) = Cx(t) + Du(t) + Exn(t) [3-59]

trong đó, F và E là ma trận hệ số nhiễu trong phương trình ngõ ra và trạng thái. Thiết kế hệ thống điều khiển dùng thông tin phản hồi trạng thái đầy đủ yêu cầu hệ điều khiển được mô tả bằng phương trình [3-57] phải dễ điều khiển, nếu không thì ngõ vào kiểm soát được tạo ra từ phương trình [3-57] sẽ không ảnh hưởng đến tất cả các giá trị trạng thái khác nhau của hệ thống. Hơn nữa, phương trình [3-57] đòi hỏi tất cả giá trị trạng thái khác nhau của hệ thống phải được đo, và có khả năng phản hồi đến bộ điều khiển.

Ma trận độ lợi (gain) của bộ điều khiển, K, Kd, và Kn là các tham số thiết kế của hệ thống điều khiển được mô tả qua phương trình [3-58] và [3-59]. Chú ý rằng bậc của hệ thống chu trình đóng thông tin phản hồi trạng thái đầy đủ là giống nhau như hệ thống. Biểu đồ của hệ thống điều khiển hồi tiếp trạng thái đầy đủ không nhiễu trình bày ở hình 3.5.

Hình 3.5 Biểu đồ của hệ thống điều khiển hồi tiếp các biến trạng thái và không nhiễu

Trang 26

Page 35: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

Một hệ thống kiếm soát mà vector trạng thái mong muốn là 0 được gọi là hệ thống điều chỉnh (regulator). Vì vậy, định luật điều khiển sẽ là:

u(t) = - Kx(t) [3-60] Thay vào phương trình [3-60] được phương trình [3-61] và [3-62], từ đó có

phương trình ngõ ra và trạng thái chu trình đóng của hệ thống điều chỉnh như sau: x(1)(t) = (A – BK)x(t) [3-61] y(t) = (C – DK)x(t) [3-62]

Phương trình [3-61] và [3-62] cho thấy hệ thống điều chỉnh là hệ thống đồng nhất (homogeneous), được mô tả bởi ma trận hệ số trạng thái chu trình đóng ACL = A – BK, BCL = 0, CCL = C – DK, và DCL = 0. Các cực chu trình đóng là eigenvalue của ACL. Do đó, bằng cách chọn ma trận gain của bộ điều khiển, K, các cực chu trình đóng được đặt tại vị trí mong muốn. Đối với hệ thống của ngõ vào bậc n với r, cỡ của K là (r x n). Từ đó có tổng của tham số thiết kế vô hướng r, n. Đối với hệ thống nhiều ngõ vào (nghĩa là r>1), số lượng tham số thiết kế có nhiều cách chọn vị trí cực n.

3.2.4 Thiết kế hệ thống ổn định gán cực cho ngõ vào đơn Nếu hệ thống trong biểu mẫu cùng bộ điều khiển, ma trận độ lợi điều chỉnh là:

K = (α - a)P’P-1 [3-63] Phương trình [3-63] được gọi là công thức không gian đặt cực Ackermann,

trong đó P và P’ là ma trận vuông (n x n) [14]. Cho phép thiết kế hệ thống điều chỉnh thông tin phản hồi trạng thái đầy đủ cho

mô hình scooter hai bánh. Từ phương trình biểu diễn trạng thái không gian tuyến tính của hệ thống, ma trận hệ số trạng thái của nó như sau:

θ

θθ

θθ

C

XY

LMXLY

xx

XgM

XgM

Lgxx

thânbánh

bánh

thân

thân

bánh

bánh

⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢

⎟⎟⎠

⎞⎜⎜⎝

⎛−

+

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢

⎟⎟⎟

⎜⎜⎜

⎛−

=

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

0

134

0

0001000

03400

0010

.

.

..

..

.

..

.

[3-64]

θ

θθθ

Cxx

x bánh

bánh

bánh⎥⎦

⎤⎢⎣

⎡+

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡00

01000001

.

.

[3-65]

với

RMLMMM

MLMX bánhthân

thânbánh

thânthân )(

)2(34

⎟⎟⎠

⎞⎜⎜⎝

⎛+

+−=

[3-66]

Trang 27

Page 36: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

LRMMMY

thânbánh

thân 11)2(

++

= [3-67]

Ngõ vào đơn, u(t), là năng lượng cung cấp theo chiều ngang đối với phương tiện và hai ngõ ra là vị trí góc của con lắc, θ(t), và vị trí ngang của phương tiện, x(t). Bốn vector trạng thái của hệ thống thứ tự là x(t) = [θ(t); x(t); θ(1)(t); x(1)(t)]T. Cho phép áp dụng giá trị số của tham số hệ thống như sau: mbánh = 7kg; Mthân = 60kg; R = 0,2m; L = 1m; và g = 9,8m/s2. Ma trận A và B được cho như sau:

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡−

=

03290.1900100009620.15000010

A ; [3-68] ⎥⎥⎥⎥

⎢⎢⎢⎢

=

1653.00

0.20370

B

Quyết định có điều khiển hệ thống không. Điều này thực hiện bằng cách tìm ma trận kiểm tra khả năng điều khiển, P, sử dụng lệnh MATLAB (CST) ctrb như sau:

>>P = ctrb(A,B)) <enter>

P = [3-69] ⎥⎥⎥⎥

⎢⎢⎢⎢

−−−−

01942.301653.01942.301653.0005935.202037.0

5935.202037.00

Sau đó, việc quyết định ma trận kiểm tra khả năng điều khiển được tính toán

như sau: >>det(P) <enter> ans =0.1701

Vì |P| ≠ 0, nó đưa đến hệ thống điều khiển được. Tuy nhiên, độ lớn (cường độ) |P| phụ thuộc khung cỡ (thang tỉ lệ) của ma trận P, và nó không cho biết P cách xa bao nhiêu từ vị trí điều khiển được và như thế hệ thống được điều khiển mạnh bao nhiêu. Cách tốt hơn kiểm tra giá trị đo lường khả năng điều khiển là số điều kiện, đạt được khi dùng hàm MatLAB cond như sau:

>>cond(P) <enter> ans =80.251

Vì về độ lớn (cường độ) của số điều kiện P nhỏ, hệ thống được điều khiển cao. Như vậy, những kết quả bậc của cực được trông đợi chính xác. (Nếu số điều kiện P lớn về độ lớn (cường độ), nó sẽ chỉ báo một hệ thống điều khiển yếu và sự đảo ngược P để lấy ma trận độ lợi thông tin phản hồi sẽ không chính xác). Các cực của hệ thống được tính bằng cách tìm eigenvalue của ma trận A dùng lệnh MATLAB damp như sau:

>>damp(A) <enter>

Trang 28

Page 37: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

Eigenvalue Damping Freq. (rad/sec)

4.3965 -1.0000 4.39

0 -1.0000 0

0 -1.0000 0

- 4.3965 1.0000 4.39

Hệ thống không ổn định vì một cặp cực tại s=0. Nhiệm vụ của bộ hồi tiếp điều

chỉnh là làm ổn định hệ thống. Các bước tính toán được chương trình hóa trong hàm MatLAB (CST) được gọi

là acker để tính ma trận độ lợi ổn định cho những hệ thống ngõ vào đơn giản khi dùng công thức Ackermann’s. Lệnh acker được dùng như sau:

>>K = acker(A,B,V) <enter> Với V= [-0.7-j;-0.7+j;-8.2+3*j;-8.2-3*j] Dưới đây là kết quả tính bằng MatLAB (không giới hạn độ lớn ngẫu lực):

− Chọn cực V = -0.7000 - 1.0000i -0.7000 + 1.0000i -8.2000 + 3.0000i -8.2000 - 3.0000i

sẽ thu được kết quả bộ ổn định cực K có giá trị như sau: K = [-87.4505 -100.9797 -834.0498 -232.1682]

3.3 Các phương pháp xử lý tín hiệu từ cảm biến Như ở chương 1 đã trình bày, giá trị ngõ ra được quan tâm hàng đầu của xe

scooter hai bánh chính là góc giữa tay lái thẳng đứng hoặc sàn xe với chiều trọng lực. Nhiều loại cảm biến có thể dùng để đo góc như encoder, resolver, inclinometer, …. Nhưng trong mô hình của đề tài, chỉ có hai loại cảm biến để xác định góc giữa sàn xe với trọng lực theo phương pháp không tiếp xúc với sàn là cảm biến đo vận tốc góc và cảm biến gia tốc ứng dụng để đo góc tĩnh (cảm biến đo khoảng cách tới mặt đất bằng hồng ngoại chỉ dùng được với sàn đất phẳng, nằm ngang và láng). Để làm trơn nhiễu và kết hợp tín hiệu từ hai cảm biến accelerometer và gyro, người ta thường dùng các bộ lọc trung bình, lọc bổ phụ thông tần complementary, lọc thích nghi – bộ lọc Kalman và các dạng lọc khác.

3.3.1 Lọc bổ phụ thông tần (complementaty filter) [16] Bộ lọc bổ phụ được sử dụng trong trường hợp khi có hai nguồn giá trị khác

nhau trong việc ước lượng một giá trị, và đặc tính nhiễu của hai giá trị chẳng hạn một

Trang 29

Page 38: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

nguồn mang lại thông tin đúng trong vùng tần số thấp trong khi nguồn khác chỉ đúng trong vùng tần số cao. Bộ lọc bổ phụ là kết hợp những ngõ ra của độ nghiêng và vận tốc gyro nhằm thu được khả năng ước lượng tốt nhất của sự định hướng, để đền bù cho sự trôi giá trị gyro (drift) và cho đáp ứng chậm của cảm biến đo nghiêng.

Hình 3.6 Sơ đồ nguyên lý hoạt động của bộ lọc bổ phụ trên mô hình con lắc ngược Ước lượng góc được thu nhận là tổng của tín hiệu từ hai nhánh giá trị được biểu

diễn ở hình 3.6. Góc nghiêng của cảm biến đo nghiêng được đưa vào bộ lọc Gi(s) phân bổ giá trị góc nghiêng để ước lượng chỉ trong vùng tần số thấp. Vận tốc góc của gyro cung cấp vào bộ lọc Gg(s). Bộ lọc này được thiết kế để ngõ ra phân bổ đến ước lượng chỉ trong vùng tần số cao. Yêu cầu cơ bản của bộ lọc có thể được tính như sau:

1. Toàn bộ hệ thống có sự khuếch đại là hằng số và phase tổn thất nhỏ nhất ngay vùng tần số cắt của cảm biến nghiêng.

2. Để giữ độ nhạy offset của gyro là nhỏ nhất, cảm biến nghiêng nên được dùng trong vùng băng thông tần số rộng nhất có thể.

3. Số lượng tham số thiết kế nên nhỏ để dễ cho sự điều chỉnh và áp dụng bộ lọc trong thực tế của các vi điều khiển.

Hình 3.7 Hệ thống ước lượng sử dụng bộ lọc bổ phụ thông tần. Tổng ngõ ra của hai nguồn giá trị

thu được khả năng ước lượng của sự định hướng

Trang 30

Page 39: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

Để sự ước lượng trình bày động học cũng như góc thật của hướng, bộ lọc chuyển giao hàm Gi(s) và Gg(s) phải được chọn như sau:

Hi(s)Gi(s) + sHg(s)Gg(s) = 1, ∀s [3-70] Trong đó Hi(s) và Hg(s) biểu thị hàm chuyển giao của độ nghiêng và gyro, mà

không chú ý đến tất cả không tuyến tính. Hai cách chọn lựa có thể thực hiện bây giờ. Một cách tiếp cận để cho cảm biến lý tưởng, nghĩa là:

Hi(s) = Hg(s) = 1 [3-71] Sự tiếp cận thứ hai để lấy động học được biết của góc nghiêng trong cách tính:

10.53s1(s)Hi +

= và Hg(s) = 1 [3-72]

Thiết kế bộ lọc cho cảm biến lý tưởng: Nếu cảm biến lý tưởng thu được từ tiêu chuẩn của bộ lọc Gi(s) và Gg(s) do kết

hợp phương trình [3-70] và [3-71].

Gi(s) + Gg(s) = 1, ∀s [3-73] Để giữ số lượng của bộ lọc thiết kế tham số nhỏ thì chọn bộ lọc bậc hai với cực

đôi.

21)(ττ12ττGi(s)

++

= [3-74]

2

2

1)(ττsτGi(s)

+= [3-75]

Bộ lọc Gi(s) phương trình [3-74], lọc tín hiệu vào từ góc nghiêng là bộ lọc thấp bậc nhất trong dãy bộ lọc mắc nối tiếp, nơi mà nhánh của gyro là bộ lọc cao bậc hai, với độ lợi góc là -40dB. 2τs trong tử số trong [3-74] có thể chuyển thành tử số trong [3-75], do xuất hiện 2τ. Đây là kết quả cho bộ lọc hữu ích, nghĩa là bộ lọc thấp bậc hai cho nhánh độ nghiêng và bộ lọc cao bậc nhất cho nhánh gyro. Bộ lọc cao bậc hai cung cấp sự tiếp hợp tín hiệu vận tốc gyro.

Hình 3.8 Giản đồ Bode của hệ thống ước lượng đối với hai giá trị hằng số lọc thời gian τ

Trang 31

Page 40: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

cho cảm biến lý tưởng của bộ lọc bổ phụ

3.3.2 Lọc thích nghi - Bộ lọc Kalman 3.3.2.1 Lý thuyết về bộ lọc Kalman

Được đề xuất từ năm 1960 bởi giáo sư Kalman để thu thập và kết hợp linh động các thông tin từ cảm biến thành phần. Một khi phương trình định hướng và mẫu thống kê nhiễu trên mỗi cảm biến được biết và xác định, bộ lọc Kalman sẽ cho ước lượng giá trị tối ưu (chính xác do đã được loại sai số, nhiễu) như là đang sử dụng một tín hiệu ‘tinh khiết’ và có độ phân bổ không đổi. Trong hệ thống này, tín hiệu cảm biến vào bộ lọc gồm hai tín hiệu: từ cảm biến góc (inclinometer) và cảm biến vận tốc góc (gyro). Tín hiệu ngõ ra của bộ lọc là tín hiệu của inclinometer và gyro đã được loại nhiễu nhờ hai nguồn tín hiệu hỗ trợ và xử lý lẫn nhau trong bộ lọc, thông qua quan hệ (vận tốc góc = đạo hàm/vi phân của giá trị góc). [15]

Một ví dụ mô phỏng về bộ lọc Kalman cho một máy bay chiến đấu bằng MatLAB [13]:

Hình 3.9 Tín hiệu thu nhận chưa được lọc

Hình 3.10 Tín hiệu đã qua bộ lọc Kalman

Trang 32

Page 41: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

Bô lọc Kalman đơn giản là thuật toán xử lý dữ liệu hồi quy tối ưu. Có nhiều cách xác định tối ưu, phụ thuộc tiêu chuẩn lựa chọn trình thông số đánh giá. Nó cho thấy rằng bộ lọc Kalman tối ưu đối với chi tiết cụ thể trong bất kỳ tiêu chuẩn có nghĩa nào. Một khía cạnh của sự tối ưu này là bộ lọc Kalman hợp nhất tất cả thông tin được cung cấp tới nó. Nó xử lý tất cả giá trị sẵn có, ngoại trừ độ sai số, ước lượng giá trị hiện thời của những giá trị quan tâm, với cách sử dụng hiểu biết động học thiết bị giá trị và hệ thống, mô tả số liệu thống kê của hệ thống nhiễu, gồm nhiễu ồn, nhiễu đo và sự không chắc chắn trong mô hình động học, và những thông tin bất kỳ về điều kiện ban đầu của giá trị quan tâm.

Hình 3.11 Sơ đồ nguyên lý tín hiệu ngõ ra của bộ lọc Kalman

3.3.2.2 Quy trình ước lượng

Kalman filter định vị vấn đề chung nhằm ước lượng giá trị x ∈ ℜn của tiến trình kiểm soát thời gian gián đoạn biểu diễn bằng phương trình tuyến stochastic khác nhau:

[3-76]

với giá trị z ∈ ℜm :

[3-77] Giá trị thay đổi ngẫu nhiên wk

và vk trình bày cách xử lý và đo độ nhiễu (theo thứ tự). Chúng tách biệt nhau, đó là nhiễu trắng, và với sự sắp xếp bản chất thông thường:

[3-78]

[3-79] Trong thực tiễn, ma trận tương quan tiến trình nhiễu Q và tương quan đo độ

nhiễu R có lẽ thay đổi với mỗi bước thời gian hay giá trị, tuy nhiên giả thuyết rằng ở đây chúng là hằng số.

Trang 33

Page 42: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

Ma trận A n x n trong phương trình [3-76] liên hệ với giá trị ở thời điểm trước k-1 đến giá trị ở thời điểm hiện tại k, trong sự thiếu hụt không chỉ ở hàm lái dạng mà còn do nhiễu tiến trình. Chú ý rằng trong thực tế A có lẽ thay đổi tại mỗi thời điểm, nhưng ở đây, ta xem nó là hằng số. Ma trận B n x l liên quan hoạt động kiểm soát tùy ý u ∈ ℜl đối với x. Ma trận H m x n trong phương trình [3-77] liên quan với giá trị đo zk. Trong thực tế, H có thể thay đổi tại mỗi thời điểm hay giá trị, nhưng ta xem nó là hằng số.

3.3.2.3 Bản chất tính toán học của bộ lọc

Theo định nghĩa (siêu âm) ước lượng trạng thái priori tại bước k đưa ra tiến trình priori tại bước k, và là ước lượng trạng thái posteriori tại bước k với giá trị z

nk ℜ∈-x̂

nk ℜ∈-x̂

k. Từ đó có thể xác định sai số ước lượng priori và posteriori là:

[3-80] Tương quan sai số ước lượng priori là:

[3-81] và tương quan sai số ước lượng posteriori là:

[3-82] Bắt nguồn từ việc lấy đạo hàm phương trình của bộ lọc Kalman, với mục tiêu

tìm một phương trình ước lượng trạng thái posteriori như sự liên kết tuyến tính ước lượng priori và sự khác biệt đánh giá giữa giá trị thực z

kx̂k

-x̂ k và giá trị chuẩn tắc H được trình bày ở công thức [3-83]. kx̂

[3-83]

Độ lệch (zk – H ) được gọi là đại lượng cách tân hay giá trị thặng dư. Giá trị thặng dư phản ánh sự khác nhau giữa giá trị chuẩn tắc H và giá trị thực z

k-x̂

k-x̂ k. Giá trị

thặng dư A của 0 nghĩa là hai thành phần này hoàn toàn nhất quán nhau. Ma trận K n x m trong công thức [3-83] được chọn là độ lợi hay hệ số pha trộn

tối thiểu hóa tương quan sai số posteriori [3-82]. Sự tối thiểu hóa có thể được thực hiện bằng cách thay thế đầu tiên [3-83] vào giá trị xác định cho ek, thay thế vào [3-82], trình bày giá trị trông cậy chỉ thị, lấy đạo hàm vết của kết quả đối với K, thiết lập kết quả bằng 0, và sau đó giải quyết K. Một dạng kết quả K tối thiểu hóa [3-82] được trình bày như sau:

[3-84] Xem [3-84], thấy rằng tương quan sai số giá trị R tiến tới 0, độ lợi K đánh giá

giá trị thặng dư cao hơn. Đặc biệt,

Trang 34

Page 43: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

[3-85]

Hơn nữa, tương quan sai số ước lượng priori tiến tới 0, độ lợi K đánh giá thặng dư thấp hơn. Đặc biệt,

k-P

[3-86] Cách nghĩ khác về phụ cấp bằng K thống kê sai lệch đo lường R tiến tới 0, đo

lường thực tế zk đáng tin cậy hơn, trong khi dự đoán đo lường H ít tin cậy hơn. Hơn nữa, thống kê sai lệch ước lượng priori

k-x̂

k-P tiến tới 0 cách đo thực tế zk ít tin cậy

hơn, trong khi dự đoán cách đo lường H k-x̂ đáng tin cậy hơn.

3.3.2.4 Bản chất xác suất của bộ lọc

Sự điều chỉnh cho [3-83] đã xác định rõ bản chất ước lượng priori – với điều kiện tất cả các giá trị z

k-x̂

k đều có nghĩa (luật phân bố Bayes). Nó chỉ rõ rằng bộ lọc Kalman duy trì hai khoảng thời gian đầu tiên của sự phân bố trạng thái.

[3-87] Ước lượng trạng thái posteriori [3-83] phản ánh trung bình (khoảng phân bố

thời gian đầu tiên) của sự phân bố trạng thái – thông thường nó được sắp xếp nếu các điều kiện của [3-78] và [3-79] xảy ra cùng lúc. Tương quan sai số ước lượng posteriori [3-82] phản ánh giá trị của sự phân bố trạng thái (khoảng phân bố thời gian thứ hai). Theo cách khác,

[3-88]

3.3.2.5 Thuật toán bộ lọc Kalman gián đoạn Bộ lọc Kalman ước lượng tiến trình bằng việc sử dụng hình thức kiểm soát

phản hồi: bộ lọc ước lượng trạng thái tiến trình tại vài thời điểm và sau đó thu sự phản hồi trong hình thức của giá trị (độ nhiễu). Chẳng hạn, phương trình của bộ lọc Kalman chia thành hai nhóm: phương trình cập nhật thời gian và phương trình cập nhật giá trị. Phương trình cập nhật thời gian chịu trách nhiệm dự đoán trước (thời gian) giá trị hiện tại và tương quan sai số ước lượng để đạt ước lượng priori cho thời điểm kế tiếp. Phương trình cập nhật giá trị chịu trách nhiệm đối với sự phản hồi – nghĩa là kết hợp giá trị mới vào ước lượng priori nhằm đạt sự cải tiến ước lượng posteriori. [14]

Phương trình cập nhật thời gian có thể xem là phương trình chuẩn tắc, trong khi phương trình cập nhật giá trị có thể xem là phương trình chính xác. Thật vậy, thuật

Trang 35

Page 44: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

toán ước lượng cuối cùng giống như thuật toán chính xác – chuẩn tắc nhằm giải quyết vấn đề số liệu được trình bày ở hình 3.12.

Time Update Mesurement Update(“Predict”) (“Correct”)

Hình 3.12 Chu kỳ bộ lọc Kalman gián đoạn

Phương trình đặc biệt cho cập nhật thời gian và giá trị được biểu diễn ở bảng 3-1 và 3-2.

Bảng 3-1: Phương trình cập nhật thời gian bộ lọc Kalman gián đoạn:

11 −−

∧−∧

+= kkk BuxAx [3-89]

QAAPP Tkk += −

−1 [3-90]

Chú ý rằng phương trình cập nhật thời gian ở bảng 3-1 dự đoán giá trị và tương quan ước lượng trước từ thời điểm k–1 đến thời điểm k. A và B theo [3-76], trong khi Q theo [3-78].

Bảng 3-2: Phương trình cập nhật giá trị đo bộ lọc Kalman gián đoạn:

( ) 1−−− += RHHPHPK Tk

Tkk [3-91]

⎟⎟⎠

⎞⎜⎜⎝

⎛−+=

−∧−∧∧

kkkk xHzKxx [3-92]

( ) −−= kkk PHKIP [3-93]

Bài toán đầu tiên trong suốt quá trình cập nhật giá trị được tính toán Kalman

gain, Kk. Chú ý rằng phương trình đưa ra ở đây [3-91] giống với [3-84]. Bước kế tiếp là đánh giá thực tiến trình đo zk, và sau đó phát ra ước lượng trạng thái posteriori bằng cách kết hợp giá trị như trong [3-92]. Rút gọn [3-92] sẽ được [3-83]. Bước cuối cùng đạt được thông qua ước lượng tương quan sai số posteriori.

Sau mỗi cặp cập nhật thời gian và giá trị, tiến trình được lập lại như trước ước lượng posteriori đã từng dự đoán hay tiên đoán ước lượng priori mới. Trạng thái đệ quy tự nhiên là một trong nhiều điểm đặc trưng thu hút của bộ lọc Kalman – thực tiễn nó tạo sự thi hành khả thi hơn sự thi hành bộ lọc Wiener tạo ra hoạt động của tất cả dữ liệu một cách trực tiếp cho mỗi ước lượng. Bộ lọc Kalman thay thế điều kiện đệ quy ước lượng hiện tại cho giá trị đã qua.

Trang 36

Page 45: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

3.3.2.6 Giải thuật bộ lọc Kalman áp dụng cho cảm biến gia tốc và gyro trên PIC C18 Compiler

Cảm biến góc được thiết kế bằng cách kết hợp một cảm biến gia tốc 1 trục và một gyro vận tốc 1 trục. Hai cảm biến này được nối nhau thông qua một bộ lọc Kalman 2 trạng thái, với trạng thái là góc và trạng thái còn lại là giá trị cơ sở gyro (gyro bias).

Gyro_bias được điều chỉnh tự động bởi bộ lọc. Kalman filter là một vấn đề thực sự phức tạp, mặc dù đã được tối ưu nhiều lần đoạn code C.

Khai báo các biến cố định

⎥⎦

⎤⎢⎣

⎡=

1001

initP [3-94]

float angle; float q_bias; float rate; R tượng trưng cho giá trị nhiễu covariance. Trong trường hợp này, nó là ma

trận 1x1 được mong đợi 0.03 rad ≈ 18o từ gia tốc kế. R_angle = 0.03;

Q là ma trận 2x2 tượng trưng cho tiến trình nhiễu covariance. Trong trường hợp

này, nó chỉ mức độ tin cậy của gia tốc kế quan hệ với gyro.

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡=

003.000001.0

_00_gyroQ

angleQQ [3-95]

State_update()

State_update được gọi mỗi dt với giá trị cơ sở gyro bởi người dùng module. Nó cập nhật góc hiện thời và vận tốc ước lượng.

Giá trị gyro_m được chia thành đúng đơn vị thực, nhưng không cần bỏ gyro_bias độ nghiêng. Bộ lọc theo dõi độ nghiêng.

Vector giá trị: [3-96] ⎥⎦

⎤⎢⎣

⎡=

biasgyroangle

X_

Nó chạy trên sự ước lượng giá trị qua hàm giá trị:

⎥⎦

⎤⎢⎣

⎡ −=

⎥⎥

⎢⎢

⎡= •

••

0_

_

biasgyrogyro

biasgyro

angleX [3-97]

Trang 37

Page 46: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

Và cập nhật ma trận covariance qua hàm: •

P = AP + PA' + Q [3-98]

QAPPAP +⋅+⋅=•

' ( lý thuyết là ) [3-99] QAPAP T +⋅⋅=

A là Jacobian của •

X với giá trị mong đợi:

( ) ( )

( ) ( )

⎥⎦

⎤⎢⎣

⎡ −=

⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢

⎟⎠⎞

⎜⎝⎛

⎟⎠⎞

⎜⎝⎛

⎟⎠⎞

⎜⎝⎛

⎟⎠⎞

⎜⎝⎛

= ••

••

0010

_

__

_

biasgyrod

biasgyrod

angled

biasgyrod

biasgyrod

angled

angled

angled

A [3-100]

Vì CPU nhỏ có sẵn trên vi điều khiển, nên tối ưu code C chỉ để tính giới hạn rõ

ràng không bằng 0, cũng như khai triển toán ma trận qua vài bước có thể. Cách tính P này làm nó khó đọc hơn, debug và kéo dài hơn thuật toán chính xác của bộ lọc Kalman, nhưng cho phép ít thời gian thực hiện với CPU.

⎥⎦

⎤⎢⎣

⎡−

−−−=

gyroQPPPPangleQ

P_]1][1[

]1][1[]0][1[]1][0[_=

= ⎥⎦

⎤⎢⎣

⎡+⎥

⎤⎢⎣

⎡−⎥

⎤⎢⎣

⎡+⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡ −gyroQ

angleQPPPP

PPPP

_00_

0100

]1][1[]0][1[]1][0[]0][0[

]1][1[]0][1[]1][0[]0][0[

0010

= [3-101] ⎥⎦

⎤⎢⎣

⎡+⎥

⎤⎢⎣

⎡−−

+⎥⎦

⎤⎢⎣

⎡ −−gyroQ

angleQPPPP

_00_

0]1][1[0]1][0[

00]1][1[]0][1[

Lưu giữ giá trị ước lượng chưa bias của gyro:

rate=q = q_m - q_bias [3-102] Cập nhật ước lượng góc:

[3-103] dtrateangledtangleangleangle ⋅+=⋅+=•

Cập nhật ma trận covariance:

dtPPP ⋅+=•

= [3-104] dtgyroQP

PPPangleQPPPP

⎥⎦

⎤⎢⎣

⎡−

−−−+⎥

⎤⎢⎣

⎡_]1][1[

]1][1[]0][1[]1][0[_]1][1[]0][1[]1][0[]0][0[

Kalman_update()

Trang 38

Page 47: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

Kalman_update được gọi bởi người dùng module khi giá trị gia tốc kế có sẵn. Giá trị angle_m không cần chia thành đơn vị thực tế, nhưng phải được chuẩn mức 0 và có độ chia như nhau.

Procedure này không cần phải gọi mỗi bước thời gian, nhưng có thể nếu dữ liệu gia tốc có sẵn tại vận tốc bằng giá trị vận tốc gyro.

Ma trận C là một ma trận 1x2 (giá trị x trạng thái), đó là ma trận Jacobian của giá trị đo lường với giá trị mong đợi. Trong trường hợp này, C là:

[ 01)_(

)_()(

)_(=⎥

⎤⎢⎣

⎡=

biasgyrodmangled

angledmangledC ] ( C chính là H) [3-105]

Vì giá trị góc đáp ứng trực tiếp với góc ước lượng và giá trị góc không quan hệ với giá trị gyro_bias C_0 cho thấy giá trị trạng thái quan hệ trực tiếp với trạng thái ước lượng như thế nào, C_1 cho thấy giá trị trạng thái không quan hệ với giá trị cơ sở gyro ước lượng.

error là giá trị khác nhau trong giá trị đo lường và giá trị ước lượng. Trong trường hợp này, nó khác nhau giữa hai gia tốc kế đo góc và góc ước lượng.

angle_error=angle_m – angle [3-106] Tính sai số ước lượng. Từ bộ lọc Kalman:

[ ] RPRPPPP

RCPCE T +=+⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡=+= ]0][0[

01

]1][1[]0][1[]1][0[]0][0[

01 [3-107]

PCt_0= C[0]*P[0][0] [3-108] PCt_1= C[0]*P[1][0] [3-109]

Ước tính bộ lọc Kalman đạt được. Từ lý thuyết bộ lọc Kalman:

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡EPCtEPCt

KK

/0_/0_

10

[3-110]

( ) KCPPKHPPPKHIP −=−=−= [3-111]

Ta có phép nhân điểm trôi (floating point):

[ ] [ ] [ 1_0_]1][0[]0][0[]1][1[]0][1[]1][0[]0][0[

01 ttPPPPPP

CP ==⎥⎦

⎤⎢⎣

⎡= ] [3-112]

[ ] ⎥⎦

⎤⎢⎣

⎡⋅⋅⋅⋅

−=⎥⎦

⎤⎢⎣

⎡−⎥

⎤⎢⎣

⎡=

1_10_11_00_0

1_0_10

]1][1[]0][1[]1][0[]0][0[

tKtKtKtK

PttKK

PPPP

P [3-113]

Cập nhật giá trị ước lượng. Lần nữa, từ Kalman:

⎥⎦

⎤⎢⎣

⎡+=−+=⎥

⎤⎢⎣

⎡=

errangleerrangle

KXHXZKXbiasgyro

angleX estimatemeasure _

_)(

_ [3-114]

angle_err=q_bias_err [3-115]

Trang 39

Page 48: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

3.3.3 So sánh các bộ lọc với bộ lọc Kalman Đối với bộ lọc thông thấp, thông cao hoặc thông dải (lọc thụ động) xấp xỉ

Butterworth, Bessel và Chebychev hay elliptic: thường được sử dụng cho một tín hiệu vào và một tín hiệu ra, với tần số làm việc xác định. Ngoài dải tần này, tín hiệu sẽ bị lệch pha, hoặc độ lợi không còn là hằng số mà bị tối thiểu hóa. Do vậy trong tình huống này, ta dùng hai cảm biến để đo một giá trị là góc (cũng như vận tốc góc), nên việc chỉ dùng một bộ lọc thụ động tỏ ra không phù hợp.

Hình 3.13 Giản đồ Bode của bộ lọc thông thấp bậc nhất 0ω =100rad/s

Hình 3.14 Giản đồ Bode và pha của bộ lọc bậc nhất

0

0)(ω

ω+

=s

sG với 0ω =10,40 và 100rad/s

Ta có thể dùng bộ lọc bổ phụ (complementary filter) để kết nối hai tín hiệu từ accelerometer và gyro thành một tín hiệu duy nhất. Accelerometer được qua một bộ lọc thông thấp, còn gyro được qua một bộ lọc thông cao, từ đó, hai tín hiệu đã được lọc sẽ được nối với nhau thành một tín hiệu thống nhất. Ưu điểm của bộ lọc bổ phụ là tính toán nhanh, dễ thiết kế. Nhược điểm của bộ lọc này là bản chất vẫn của bộ lọc

Trang 40

Page 49: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

thông cao và thông thấp, có nghĩa độ lợi tín hiệu không bằng nhau trong toàn dải đo, bị lệch pha rõ rệt tại vùng nối tần số. Hơn nữa giá trị gyro_bias không được cập nhật thường xuyên, dễ làm cho bộ lọc mất tác dụng khi làm việc ở những môi trường rung động hay có nhiệt độ khác nhau. Ngoài ra, cũng phải kể đến việc chuẩn trực bộ lọc này khá khó khăn nếu không có thiết bị quan sát.

Hình 3.15 Giản đồ Bode của bộ lọc elliptic

Hình 3.16 So sánh các tín hiệu ở bộ lọc elliptic

Giản đồ Bode và pha của bộ lọc xấp xỉ elliptic có các tham số trạng thái như sau:

; ⎥⎥⎥⎥

⎢⎢⎢⎢

=

0138.3300138.22-62.975- 104940153.34-

00094.9890094.989-153.34-

A

⎥⎥⎥⎥

⎢⎢⎢⎢

=

0120

0120

B

C=[-1.2726e-5 8.7089e-3 -5.2265e-6 1.0191e-5]; D=9.9592e-6

Trang 41

Page 50: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

Nói tóm lại, các bộ lọc thông thường là một kỹ thuật dùng phần cứng (các mạch điện tử R,L,C) hoặc phần mềm (lọc FIR, lọc IIR, cửa sổ Hamming … trong xử lý tín hiệu số) là nhằm giữ lại các tín hiệu trong một khoảng thông dải tần số nào đó và loại bỏ tín hiệu ở các dải tần số còn lại. Đối với việc xây dựng bộ lọc bằng phần cứng, ra đời trước khi dùng các bộ lọc phần mềm, nhưng việc hiệu chỉnh đặc tính, thay đổi các tham số của bộ lọc phức tạp hơn rất nhiều so với sử dụng giải thuật xử lý tín hiệu số.

Trong các bộ lọc này, nếu tồn tại các tín hiệu nhiễu trong dải thông tần thì kết quả tín hiệu trở nên kém đi rất nhiều để có thể xử lý và điều khiển hệ thống một cách ổn định. Điều này càng tỏ ra rất thực tế đối với các bộ lọc phần cứng, vốn rất dễ bị nhiễu bởi các tín hiệu điện trong lúc hoạt động do sự kém chính xác của các linh kiện và sự bất thường của dòng điện ngõ vào.

Hình 3.17 So sánh các tín hiệu quay thực ở ngõ vào(lam), kết quả ngõ ra

ở bộ lọc bổ phụ (gạch đen) và bộ lọc Kalman(đỏ)

Đối với bộ lọc Kalman, thuật ngữ “lọc” không có ý nghĩa như các bộ lọc trên. Đây là một giải thuật tính toán và ước lượng thống kê tối ưu tất cả các thông tin ngõ vào được cung cấp tới nó để có được một giá trị ra đáng tin cậy nhất cho việc xử lý tiếp theo. Do vậy lọc Kalman có thể sử dụng để loại bỏ các tín hiệu nhiễu mà được mô hình là những tín hiệu nhiễu trắng trên tất cả dải thông mà nó nhận được từ ngõ vào, dựa trên các thông kê trước đo và chuẩn trực lại giá trị ước lượng bằng các giá trị đo hiện tại với độ lệch pha gần như không tồn tại và có độ lợi tối thiểu xấp xỉ 0 đối với những tín hiệu ngõ vào không đáng tin cậy. Mặc dù phải tốn khá nhiều thời gian xử lý lệnh, nhưng với tốc độ hiện tại của các vi điều khiển làm việc tính toán ước lượng tối ưu của bộ lọc này trở nên đơn giản và đáng tin cậy rất nhiều. Nhờ có cơ chế tự cập nhật các giá trị cơ sở (bias) tại mỗi thời điểm tính toán, cũng như xác định sai lệch của kết quả đo trước với kết quả đo sau nên giá trị đo luôn được ổn định, chính xác, gần như không bị sai số về độ lợi và độ lệch pha của các tín hiệu. Hơn thế, được xây dựng bởi hàm trạng thái, do vậy bộ lọc Kalman có thể kết hợp không chỉ hai tín hiệu từ hai cảm biến, mà có thể kết hợp được nhiều cảm biến đo ở những dải tần khác nhau của cùng một giá trị đại lượng vật lý. Chính vì điều này, làm bộ lọc Kalman trở nên phổ dụng hơn tất cả những bộ lọc khác trong viêc xử lý tín hiệu chính xác của các cảm biến tọa độ, như cảm biến la bàn, GPS, góc, gyro…

Trang 42

Page 51: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

Hiện nay, với sự phát triển của lĩnh vực trí tuệ nhân tạo (AI), các ứng dụng AI được sử dụng trong nhiều lĩnh vực, đặc biệt là định hướng trong hàng không vũ trụ, nhưng không vì thế mà bộ lọc Kalman giảm vai trò, mà ngược lại, đó chính là một ngõ ra đáng tin cậy để cho mạng nơron xử lý và ra các quyết định trong các tàu thám hiểm tự hành.

3.4 Mô hinh lý thuyết động cơ DC [10] Động cơ DC có thể được mô hình hóa một cách

đơn giản như hình vẽ dưới đây [9]. Ở đây, động cơ gồm một cuộn dây gồm N vòng

dây quấn quanh một khung chữ nhật cạnh a, b có thể quay xung quanh một trục ∆. Vị trí của nó được xác định bởi góc quay θ. Cuộn dây có điện trở tổng cộng R và độ tự cảm L.

Hệ chuyển động có momen quán tính J với trục ∆. Một nam châm vĩnh cửu tạo ra một từ trường B xuyên qua khung dây.

Hệ cơ S tác dụng lên trục một ngẫu lực cản, kí hiệu (- Γ), được tính theo công thức:

cθΓ = & [3-116] với c là hằng số giảm chấn của kết cấu cơ khí (bộ truyền động ở trục động cơ).

Hình 3.18 Mô hình khung dây động cơ đặt trong từ trường

Hình 3.19 Mô hình điện cơ

Khi ta đặt điện áp một chiều E vào 2 đầu chổi điện H và K thì trong cuộn dây phần ứng có dòng điện IƯ. Theo hiện tượng cảm ứng điện từ khung dây sẽ chịu tác dụng của lực điện trường (lực Laplace) và quay quanh trục ∆. Chú ý rằng cứ mỗi nửa vòng lại chuyển mạch, ở đây H và K là 2 vành bán khuyên. Điều này bảo đảm cho khung luôn quay theo 1 chiều nhất định với vận tốc góc ω θ= & .

E(t), I(t) là tổng điện áp cảm ứng và dòng dẫn trong động cơ. C(t), θ’(t) là ngẫu lực điện từ và vận tốc xoay của rotor. Ta có công thức:

E(t) = k.θ’(t) [3-117] C(t) = k.I(t) [3-118]

Trang 43

Page 52: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 3 Lý thuyết tiếp cận

Với k là hằng số phụ thuộc vào đặc tính của động cơ, loại cuộn dây, giá trị từ trường, thường là hằng số với nam châm vĩnh cữu.

Cuộn dây dẫn được mô hình hóa bởi điện trở R và độ dẫn L, được áp vào điện áp U(t), có phương trình dưới đây:

E(t)I(t)dtdL.r.I(t)U(t) ++= [3-119]

Hình 3.20 Sơ đồ động cơ điện

Phương trình cơ học [11]: Trong mối quan hệ ở trên, sự phụ thuộc vận tốc góc θ’(t) theo C(t) là đặc tính

cơ học của quán tính vật rắn và ma sát xoắn. Với J: momen quán tính, là hằng số; Fs(t) là ngẫu lực xoay và fv là hệ số ma sát

quay, ta có phương trình cơ học:

)(t.θ.θf(t)FC(t)θ(t)dtdJ. vvs −−= [3-120]

Trang 44

Page 53: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 4 Tính toán mô phỏng

Chương 4 TÍNH TOÁN MÔ PHỎNG

4.1 Các thông số khối lượng, công suất dự tính trong mô hình mô phỏng được xây dựng o Tổng trọng lượng người sử dụng mô hình: 60kg trở

xuống. o Pin: Ba accu khô 12V-7Ah, nặng 2,2kg/bình. Một

pin 12V – 1.6Ah điều khiển phần tín hiệu và kích thắng nặng 560g.

o Bánh xe: nặng 7,2kg/bánh. Đường kính bánh xe: >40cm, chu vi khi bơm căng là 1,33m.

o Khung xe: bằng inox nặng 3kg. o Sàn xe: bằng nhôm 5mm, nặng 1,4kg. o Tay điều khiển: bằng nhôm hộp và nhựa, nặng

2,5kg. o Ốc vít: tối đa 2kg. o Phần điện tử:

− Bộ phận tản nhiệt cho MOSFET: 300g/tấm x 4 = 1,2

− Bo mạch in, cảm biến: tối đa 2kg

Tổng trọng lượng xe: 2,2 x 3 + 0,56 + 7,2 x 2 + 3 + 1,4 + 2,5 + 2 + 1,2 + 2 + 60 = 9 Hàm trạng thái của mô hình: như đã tính toán ở chương 3, ta

θθ

θθ

XY

MXLY

xx

XgM

XM

Lgxx

thânbánh

bánh

thân

thân

bánh

bánh

⎢⎢⎢⎢⎢⎢

⎜⎜⎝

⎛−

+

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

⎥⎥⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢⎢⎢

+

⎟⎟⎟

⎜⎜⎜

⎛−

=

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

0

134

0

0001000

034100

0010

.

.

..

.

..

.

Trang 45

Hình 4.1 Mô hình xe scooter

kg

3,66 kg [4-1]

có:

θCL

⎥⎥⎥⎥⎥⎥

⎟⎟⎠

[4-2]

Page 54: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 4 Tính toán mô phỏng

θ

θθθ

Cxx

x bánh

bánh

bánh⎥⎦

⎤⎢⎣

⎡+

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡00

01000001

.

.

[4-3]

với

)()2(3

4⎟⎟⎠

⎞⎜⎜⎝

⎛+

+−= RMLM

MMM

LMX bánhthânthânbánh

thânthân [4-4]

11)2( LRMM

MYthânbánh

thân ++

= [4-5]

4.2 Mô phỏng MatLAB

4.2.1 Giới thiệu về phần mềm MatLAB, công cụ Simulink MatLAB là một môi trường tính toán đa ứng dụng, viết tắt của “Matrix

Laboratory” – tối ưu trong việc tính toán ma trận. MatLAB là công cụ không thể thiếu đối với những người nghiên cứu trong lĩnh vực toán, điện – điện tử, cơ khí và các ngành nghề thuộc lĩnh vực khoa học ứng dụng. Với khả năng tính toán cao và được nhúng với các phần mềm mô phỏng, cũng như tự bản thân đã có sẵn các công cụ mô phỏng, MatLAB giúp tiết kiệm thời gian và công sức trong tính toán cũng như thử nghiệm các mô hình trước khi xây dựng mô hình thực tế. Các tính toán về số và đồ họa được thực hiện dễ dàng trong MatLAB với cấu trúc của ngôn ngữ thủ tục, nghĩa là tổ hợp một cấu trúc chương trình với hàng loạt các hàm toán học đã được lập trình trước, vì vậy lập trình bằng MatLAB rất đơn giản.

4.2.2 Kết quả tính bằng MatLAB a) Chọn cực V=[-0.7+i;-0.7-i;-8.2+3i;-8.2-3i], ta được:

K = [-87.4505 -100.9797 -834.0498 -232.1682]

Hình 4.2 Kết quả mô phỏng với mong muốn cực của hệ thống là V=[-0.7+i;-0.7-i;-8.2+3i;-8.2-3i]

Trang 46

Page 55: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 4 Tính toán mô phỏng

b) Chọn cực V = [-2 – i; -2 + i; -5.4 + 3i; -5.4 - 3i] , ta được

K = [-146.8829 -159.0770 -820.5842 -285.6180]

Hình 4.3 Kết quả mô phỏng với mong muốn cực của hệ thống là V=[-2+i;-2-i;-5.4+3i;-5.4-3i]

c) Chọn cực V = [-0.5–i; -0.5+i; -5.4+3i; -5.4-3i] , ta được

K = [-36.7207 -39.7692 -466.0578 -120.4199]

Hình 4.4 Kết quả mô phỏng với mong muốn cực của hệ thống là V=[-0.5+i;-0.5-i;-5.4+3i;-5.4-3i]

Trang 47

Page 56: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 4 Tính toán mô phỏng

d) Chọn cực V = [-3.6; -3.6; -3.6+3i; -3.6-3i] , ta được

K = [-219.0939 -193.5529 -912.0032 -325.6883].

Hình 4.5 Kết quả mô phỏng với mong muốn cực của hệ thống là V = [-3.6; -3.6; -3.6+3i; -3.6-3i]

Nhận xét trên các biểu đồ, về mặt lý thuyết, cả bốn giá trị K trên đều có thể

dùng được vì tất cả đều làm hệ thống ổn định. Về mặt thực tế khi thực hiện mô hình, ta chọn giá trị V thứ ba, vì độ khuếch đại cho ngõ ra không nhiều, ít làm động cơ quá tải khi đảo chiều quay hơn các kết quả kia (đặc tính của động cơ khi bị đảo chiều tức thời ở vận tốc lớn sẽ tạo ra một dòng điện ngược rất lớn, dễ làm hư hỏng các mạch điều khiển), mặc dù thời gian ổn định có lâu hơn các cách chọn cực khác (7 giây so

đặc tính của động cơ về quan hệ giữa ngẫu lực và vận tốc, việc chọn kết quả V thứ ba cũng sẽ duy trì ngẫu lực tốt và ổn định hơn các giá trị V khác.

4.3 Mô phỏng VisualNastran và Simulink

4.3.1 Giới thiệu về phần mềm VisualNastran Đối với những người thiết kế trong các lĩnh vực

thiết bị công nghiệp, thiết bị cho xây dựng, thể thao hay giải trí, thiết bị y tế, chi tiết động cơ máy, sản phẩm tiêu dùng…thì có lẽ quan tâm hàng đầu của họ là muốn biết sản phẩm của mình vận hành như thế nào trong điều kiện thực tế. Như vậy, nhu cầu về một phần mềm có thể mô phỏng thực nhất hoạt động của các thiết bị cơ khí là một nhu cầu có thực, có khá nhiều phần mềm có khả năng

với gần 3 giây). Cũng vì

Hình 4.6 Mô hình mô phỏng từ Visual Nastran

thực hiện các chức năng mô phỏng, tuy nhiên đáng quan

Trang 48

Page 57: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 4 Tính toán mô phỏng

tâm hơn cả là phần mềm VisualNastran Desktop của hãng MSC. Working Knowledge. Một phần mềm kết hợp kỹ thuật sáng tạo, quan sát và mô phỏng trên môi trường CAD. VisualNastran Desktop kết hợp mô phỏng chuyển động tiên tiến và kỹ thuật phân tích phần tử hữu hạn tinh vi nhưng sử dụng lại rất dễ dàng.

VisualNastran Desktop gồm năm module: VisualNastran View, VisualNastran Studio, VisualNastran Motion, VisualNastran Desktop FEA và VisualNastran 4D (hay VisualNastran Desktop-vN4D, WorkingModel3D). Mô phỏng trong đề tài được sử dụng chủ yếu bằng phần mềm vNastran Desktop 4D.

Phần mềm VisualNastran có khả năng: mô phỏng chuyển động với độ chính xác cao và lập trình điều khiển chuyển động của các đối tượng.

4.3.2 Cách thực hiện mô phỏng bằng vN Desktop 4D Vẽ mô hình scooter bằng phần mềm Solidworks theo đúng kích thước thật của

xe. Chuyển hình vẽ này cùng các thông số kích thước sang phần mềm

VisualNASTRAN, vì hai phần mềm này có khả năng kết hợp được với nhau. Xác định các đại lượng vật lý cho mô hình cơ khí, chẳng hạn về các tham số

khối lượng, độ nhớt, độ ma sát, vận tốc gắn vào các động cơ vào bánh xe. Dùng vN Plant Block của phần mềm VisualNastran Desktop 4D nhúng vào

trong Simulink của MatLAB, các thông số về góc nghiêng, vị trí sẽ được nhúng qua bộ xử lý toán học của MatLAB đồng thời MatLAB sẽ trả giá trị điều khiển về cho vN Nastran nhờ block này. Nói cách khác, các thông số mô phỏng sẽ được hai phần mềm này tương tác với nhau tạo ra.

Dùng MatLAB để vẽ mô hình liên kết Simulink, xác định tham số hồi tiếp K điều khiển như trên chương 3 trình bày đồng thời hiệu chỉnh sao cho được kết quả tốt nhất.

4.3.3 Sơ đồ khối trong Simulink: Mô tả hoạt động của khối Simulink: ứng với mỗi khoảng thời gian nhất định,

các thông số vật lý của mô hình xe hai bánh sẽ được cập nhật từ vN Nastran 4D vào MatLAB thông qua khối chức năng vN Plant Block. Các giá trị vật lý này sẽ được đưa vào bộ hồi tiếp LQR có chứa tham số hồi tiếp K để trả ngược về cho mô hình xe 2 bánh tự cân bằng dưới đại lượng là ngẫu lực. Do giá trị ngẫu lực được tính ra là ngẫu lực tổng Cθ, mà ngẫu lực ở mỗi bánh chỉ bằng một nửa Cθ (theo mô hình toán ở chương 3), do vậy cần thêm một bộ chia đôi giá trị ngẫu lực trước khi đưa trở về mô hình qua vN Plant Block. Một bộ hồi tiếp khác được dùng để chỉnh lại vận tốc của hai bánh xe cho bằng nhau trong trường hợp vận tốc quay của hai bánh xe không đồng đều.

Trang 49

Page 58: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 4 Tính toán mô phỏng

Hình 4.7 Mô hình Simulink để mô phỏng vòng hồi tiếp K tính toán momen cho động cơ

Hình 4.8 Bộ giao diện liên kết các tín hiệu giữa MatLAB-Simulink và Visual Nastran 4D

4.3.4 Kết quả mô phỏng Ổn định, giữ thăng bằng tại một vị trí cố định K = [-36.7207 -39.7692 -466.0578 -120.4199]

Trang 50

Page 59: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 4 Tính toán mô phỏng

Hình 4.9 Biểu đồ đo góc nghiêng

Hình 4.10 Biểu đồ đo vị trí

Nhận xét kết quả mô phỏng: việc ổn định góc của mô hình được hoàn tất trong thời gian rất nhanh (6 giây), sau đó mới tiến về vị trí ban đầu mất một thời gian dài hơn (10 giây), tuy nhiên trong thời gian tiến về vị trí ban đầu góc đúng của mô hình luôn được đảm bảo xấp xỉ 0o, do đó nếu vận chuyển người, thì sẽ không gây cảm giác lắc lư khó chịu cho người sử dụng.

Trang 51

Page 60: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 4 Tính toán mô phỏng

Giữ cân bằng góc, vị trí di chuyển (điều khiển PD về góc nghiêng, P vận tốc)

với K = [0 -39.7692 -466.0578 -120.4199]

Hình 4.11 Biểu đồ góc nghiêng

Hình 4.12 Biểu đồ vị trí góc nghiêng

Nhận xét kết quả mô phỏng: việc ổn định góc của mô hình cũng được hoàn

tất trong thời gian rất nhanh (2 giây), tuy nhiên mỗi lần thay đổi vận tốc lại có dao động về góc nghiêng trong thời gian quá độ vận tốc, do vậy có lẽ cần phải có ổn định góc tự bản thân mô hình trước khi thay đổi có thể tiếp tục chuyển động.

Trang 52

Page 61: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 4 Tính toán mô phỏng

Với hai kết quả mô phỏng trên, ta nhận thấy hoàn toàn có thể điều khiển mô hình xe hai bánh tự cân bằng khi di chuyển cũng như đứng yên bằng một dạng bộ điều khiển hồi tiếp ổn định K như đã mô tả.

Trang 53

Page 62: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Chương 5 THỰC HIỆN

5.1 Thiết kế cơ khí 5.1.1 Tóm tắt thiết kế Cấu trúc cơ khí của đề tài được chia làm bốn phần: khung, sàn, tay lái và hai

động cơ. Khung được làm bằng inox ∅25 và inox vuông 25x25mm. Sàn được làm bằng nhôm dày 5mm, vững chắc. Tay lái cũng được làm bằng inox vuông có kích thước 25x25mm và tay cầm của tay lái được làm bằng ống nhựa có ∅21, dài 250mm. Hai động cơ đặt trên hai bánh xe có đường kính 40cm. Cấu trúc cơ khí được mô tả chi tiết trên năm bản vẽ, bao gồm một bản vẽ A0 là bản vẽ lắp, ba bản vẽ A3, đó là các bản vẽ khung, bản vẽ sàn, bản vẽ tay lái và một bản vẽ A4 là bản vẽ trục của động cơ.

5.1.2 Tính toán sức bền Do cấu trúc của mô hình, sàn xe được đỡ bằng hai thanh inox vuông với kích

thước là 25mmx25mm, dày 1mm, ta trước hết thử tính ước lượng liệu một thanh inox như vậy có chịu được toàn bộ mô hình hay không, nếu được thì ta sẽ không cần tính cụ thể mô hình, vì mô hình đã dư bền, nếu một thanh inox không chịu được, ta sẽ tính cụ thể cho toàn bộ mô hình. Để thuận tiện và nhanh chóng trong tính toán, ta sử dụng phần mềm tính toán phần tử hữu hạn cho kết cấu RDM6. Lưu ý rằng, biểu đồ momen uốn của phần mềm theo quy định của Pháp ngược chiều với tiêu chuẩn của Việt Nam.

Hình 5.1 Chuyển vị của một thanh inox nếu toàn bộ tải trọng đặt lên thanh

Mô hình tính toán là một thanh dầm inox hình vuông kích thước như trên đã mô tả: lực tập trung chính giữa có giá trị là 660N, tương đương với một người 60kg và phần mạch điện điều khiển; hai lực tập trung hai bên, cách điểm giữa là 0,14m có giá

Trang 54

Page 63: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

trị là 80N, tương đương trọng lượng của các bình ắcquy, ốc vít, và những linh kiện khác. Hai bánh xe đóng vai trò như hai gối đỡ, trọng lượng của hai bánh xe khi di chuyển chỉ tác dụng lên sàn, không ảnh hưởng lên khung trong mô hình tính sức bền.

Hình 5.2 Momen uốn nhìn theo phương ngang

Hình 5.3 Ứng suất uốn nhìn theo phương ngang

Theo bảng tra của phần phầm RDM6, giới hạn ứng suất chảy của inox là 200-

220MPA, theo sơ đồ trên ta thấy ứng suất tối đa của mô hình tác dụng là 192,78MPA nếu toàn bộ tải trọng mô hình tập trung vào một cây inox. Mà mô hình thật có 2 thanh inox cùng một sàn bằng nhôm đỡ toàn bộ tải trọng, do vậy ứng suất trên một thanh inox này sẽ nhỏ hơn một nửa giá trị tính ở trên, cụ thể σthanh ≤ 192,78/2 = 96,39 MPa. Vì vậy, phần thiết kế cơ khí đủ bền và không bị chảy dẻo trong suốt toàn bộ quá trình hoạt động.

Trang 55

Page 64: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Một số hình ảnh về phần cơ khí của scooter:

Hình 5.4 Khung xe khi chưa lắp bánh

Hình 5.5 Sàn xe

Trang 56

Page 65: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Hình 5.6 Gầm xe được đỡ bởi hai thanh inox vuông

Hình 5.7 Mối lắp bulông giữa khung xe và bánh xe

Trang 57

Page 66: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

(a)

(b)

Hình 5.8 Phần cơ khí của xe hoàn chỉnh (a) và đã lắp mạch (b)

Trang 58

Page 67: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

5.2 Mạch điện tử

Hệ thống điện tử được xây dựng trên 4 bảng mạch in chính, nối với nhau bằng cáp điện và kết nối với những nguồn điện khác nhau để cách ly xung nhiễu, trong đó hai bảng mạch đóng vai trò là bộ lái công suất MOSFET của mỗi bánh xe với công suất cao 30A, điện áp từ 12 – 60V, một bảng mạch kết hợp lắp giữa cảm biến gia tốc góc và gia tốc đồng thời đo góc tĩnh với cảm biến vận tốc góc gyro và một bảng mạch điều khiển trung tâm và giao tiếp giữa máy tính qua cổng nối tiếp để hiệu chỉnh (calibre) các sensor. Ngoài ra còn có các PCB thành phần khác để đo vận tốc bánh xe, bảng điều khiển, đo quá dòng…

Sơ đồ khối làm việc của toàn bộ các thành phần điện – điện tử của mô hình có thể được mô tả theo hình dưới đây: tín hiệu từ hai cảm biến gyro và accelerometer được thu nhận vào vi điều khiển PIC18F452, được xử lý cùng với các giá trị về vận tốc và vị trí thu nhận được từ hai encoder của bánh xe để có được các lệnh điều khiển tốc độ bánh xe phù hợp. Các lệnh này được mã hoá thông qua hai mạch MOSFET driver, đưa tới bộ MOSFET công suất để cung cấp năng lượng phù hợp (PWM duty cycle) cho hai động cơ hoạt động. Trong lúc hoạt động, các cảm biến đo dòng quá tải luôn được kiểm tra và sẵn sàng để bắt vi điều khiển dừng các động cơ nếu có hiện tượng quá dòng xảy ra trên một trong hai bộ MOSFET công suất. Dòng điện tối đa được cài đặt được phép trong mạch MOSFET công suất là 30A.

Vi ñieàu khieån

PIC 18F452

Gyro Accelerometer

MOSFET driver 1 MOSFET driver 2

Power MOSFET 1 Power MOSFET 2

Ñoäng cô DC 1 Ñoäng cô DC 2

Encoder 1 Encoder 2

Bieán trôû +coâng taéc ñieàu khieån LED hieån thò

Hình 5.9 Sơ đồ khối của toàn bộ mô hình

Trang 59

Page 68: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

5.2.1 Nguồn điện

12V D3 luc

MOSFET driv er power

CON4

1234

D4 do

12V

D1

1N40070V

0V

36V

R1

1K

R2 1KD2

1N4007

36V

BT312V 7Ah

BT212V 7Ah

S1

P power

S2

N power

24V

BT112V 7Ah

24V

Hình 5.10 Sơ đồ nguồn điện cho động cơ và MOSFET driver

Bộ nguồn gồm 3 bình ắc quy 12V mắc nối tiếp nhau để có được một nguồn điện tương đương 36V cung cấp cho động cơ. Phần điện thấp 0-12V và 24-36V cũng được lấy thêm ra để cấp cho mạch MOSFET driver. Các diode trong đường cấp nguồn MOSFET driver dùng để tránh dòng điện truyền theo ngõ 0-24V cũng như 12-36V trong mạch.

BT412V - 1.2Ah

J4

Board trung tam

12

D10

1N4007S6

Cong tac nguon MCU v a MOSFET thang(brake)

D11

1N4007

D9

1N4007

J5

2 MOSFET thang

123

Hình 5.11 Sơ đồ nguồn điện cho MOSFET driver thắng và vi điều khiển

Bộ nguồn cho vi điều khiển và các MOSFET thắng được tách rời so với bộ nguồn cung cấp cho động cơ để hạn chế nhiễu tín hiệu từ động cơ lên hoạt động của vi điều khiển và các cảm biến. Các diode được dùng để tránh shock xung điện về nguồn.

Nguon so cap

C17100nF

L3 470uH JP30

HEADER 2

12

Ngo ra

VCC

C154.7u

Nguon 6-12V

HEADER 2/SM

12 C18

1nF

VSS

D1

1N4007

2 1

C19470uF

U3LM7805

1

2

3VIN

GN

D

VOUT

C16

1000uF

Hình 5.12 Sơ đồ nguồn điện 5V cho vi điều khiển

Trang 60

Page 69: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Sau khi nguồn điện 12V được phân phối đến mạch điều khiển trung tâm, điện áp 12V được qua một IC ổn áp LM7805 để chuyển thành điện áp 5V cung cấp cho vi điều khiển cũng như một số mạch cảm biến như hình vẽ ở trên.

5.2.2 Mạch công suất điều khiển động cơ Mạch điều khiển động cơ có điện áp 36V, dòng điện hoạt động 5-10A, dòng

điện khởi động tối đa 40A, điều khiển tốc độ bằng PWM với tần số 9.7665 kHz, độ phân giải 10bit/hướng. Bộ phận thắng để đảo chiều có tốc độ thực hiện 100ms.

5.2.2.1 Bộ đệm (MOSFET driver)

R9 1K

BRAKE signal

Brake

1 2

OC1

OC2

R5 1K

R710K

R810K

U1

74HC157

115

4

7

9

12

2

5

11

14

3

6

10

13

SELEN

1Y

2Y

3Y

4Y

1A

2A

3A

4A

1B

2B

3B

4B

OC3R10 1K

J1

PWM in

123456

+5V

D2

1N4001

21

OC4

Brake/ Float H bridgeXai chung brake/ Inactiv e H bridge

12

Hình 5.13 Bộ mã hóa tín hiệu PWM cho MOSFET driver

Tín hiệu từ vi điều khiển được chuyển tới IC logic trung gian như hình vẽ,

nhằm mục đích tổ hợp các tín hiệu logic ngõ vào thành các tín hiệu logic ngõ ra phù hợp với hoạt động đóng mở các MOSFET driver và MOSFET công suất ở tầng kế. Tín hiệu ở tầng này được cách ly với các tín hiệu vào MOSFET driver bằng các opto quang.

Trang 61

Page 70: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

C21000uF/25V

C4470uF/16V

C322n

+5V

J2

POWER

1234

C11000uF/25V +24V

C5100n

+12V

+36V

N1R2

470ohmOC2

+24V

+12V UOC2

OPTO TLP 351

34

8

15

2 6

7CATHODE

4

VCC

1GND

ANODE Vout

7

+ISO1

H11L1

P2

OC4

R1

470ohmOC1

+24V

+36V

P1

R3

470ohmN2OC3

+36V

+12VU0C3

OPTO TLP 351

34

8

15

2 6

7CATHODE

4

VCC

1GND

ANODE Vout

7

+ISO2

H11L1

R12

220ohm

R4

470ohm

R11

220ohm

Hình 5.14 Nguồn và bộ cách ly trong MOSFET driver

Mạch Push-Pull:

Nguyên lý hoạt động của mạch: Khi ngõ vào N1 ở mức cao, nếu ngõ ra được

nối với một mạch điện tương đương một điện trở, Q6 sẽ dẫn, Q2 sẽ tắt, do đó ngõ ra của mạch Push-Pull sẽ ở mức điện áp cao. Q6

bd139

Q2

BD140

N1

+12V

R14

1K

Hình 5.15 Sơ đồ mạch Push-Pull

Ngược lại, khi N1 ở mức thấp, Q6 sẽ ngưng dẫn, Q2 dẫn, kéo ngõ ra của mạch xuống mức thấp.

Tóm lại, mạch có giá trị logic và điện áp bằng với giá trị ngõ vào, nhưng qua hai transistor kênh NPN và PNP mắc bổ phụ như trên sẽ kéo dòng điện ở ngõ ra được khuếch đại lên nhiều lần (hFE) so với ngõ vào, giúp MOSFET công suất đóng ngắt đủ nhanh.

Trang 62

Page 71: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

+12V

R2022ohm/1W

R15

1K

R14

1K

Q4BD140

Q6bd139

R16

1K

+36V

Q2

BD140

C9

332

N2

GP

1

R17

22ohm/1W

R13

1K

Q5bd139

R19

22ohm/1W

Q1

BD140+24V

R18 22ohm/1W

N1

J3

Gate PNNP

1 2 3 4

GN

1

DZ3

Zener 15V

12

GP

2+24V

C8 332

P2

DZ1

Zener 15V

12

Q3BD140

+12V

GN

2

Q7bd139

C6 332

DZ2

Zener 15V

12

P1

+36V

DZ4

Zener 15V

12

Q8bd139

C7332

Hình 5.16 Driver MOSFET công suất

5.2.2.2 MOSFET công suất – mắc bổ phụ MOSFET có một lớp mỏng silicon dioxide, là lớp cách ly để ngăn ngừa cực G

dương và cực âm chạm nhau. Lớp cách ly này mỏng có thể dùng để kiểm soát cực D. Và cũng vì lớp cách ly này quá mỏng nên dễ dàng bị phá hủy bởi nguồn điện G quá ngưỡng.

Cụ thể trong đề tài, IRF P140 có VGS(max) = ±20V. Nếu nguồn điện G dương hơn +20V hay âm hơn -20V, lớp cách ly này sẽ bị phá hủy.

Ngoài điện áp quá ngưỡng VGS, MOSFET cũng có thể bị phá hủy lớp cách ly mỏng này bằng nhiều cách khác nhau. Nếu MOSFET được lấy ra hay gắn vào vi mạch trong khi nguồn mở, điện áp thoáng qua gây ra bởi dẫn ngược (kickback) sẽ vượt quá giá trị VGS. Kể cả khi vận chuyển MOSFET cũng tạo tĩnh điện đủ vượt quá giá trị VGS. Vì vậy, khi vận chuyển MOSFET, người ta phải gắn vào nó một sợi dây chì hay bọc nó lại trong miếng foil thiếc hay đựng nó trong miếng foam dẫn.

Một vài MOSFET được bảo vệ bằng cách lắp diode zener song song với cực G và nguồn. Điện áp zener thấp hơn giá trị VGS. Do đó, diode zener dẫn trước khi đặt giá trị VGS mà có thể gây nguy hiểm cho lớp cách ly mỏng. Bất lợi của những diode zener bên trong là chúng làm giảm tổng trở ngõ vào cao của MOSFET. Vì những MOSFET đắt tiền dễ dàng bị hỏng nếu không được zener bảo vệ nên các làm này được đánh giá cao trong ứng dụng. Do vậy, những thiết bị MOSFET rất tinh tế nhưng lại dễ dàng bị hư hỏng.

Hầu hết các ứng dụng của MOSFET ở

Trang 63

Hình 5.17 Vùng hỗ dẫn (transconductance) của MOSFET

Page 72: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

vùng ohmic. Khi phân cực ở vùng ohmic, giá trị E-MOSFET bằng với điện trở. Khi phân cực ở vùng active, giá trị của nó lại bằng với nguồn điện. Mặc dù, E-MOSFET có thể hoạt động trong vùng active nhưng ứng dụng chính của nó là trong vùng ohmic.

MOSFET công suất gồm: mỗi động cơ được điều khiển bởi hai cặp MOSFET kênh P, và hai cặp MOSFET kênh N, với mỗi đầu được mắc song song. Bộ nguồn cho MOSFET driver được cấp gồm 4 tín hiệu vào: 0 – 12 – 24 – 36 V.

Tín hiệu giữa mạch lái MOSFET với MOSFET công suất trước đó có điện trở shunt mắc nối tiếp với dòng nguồn 36V để đo dòng điện.

Mạch cảm biến luôn được cấp nguồn 5V cho cảm biến gia tốc và cảm biến vận tốc góc, tín hiệu lấy ra bao gồm tín hiệu analog và tín hiệu xung từ cảm biến gia tốc tại mạch cảm biến, tín hiệu của vận tốc góc được dịch xuống 2.5 thành 2.3V. Tín hiệu A/D tại giá trị cân bằng là 470.

Mạch cầu H: Dạng biểu đồ.

IRFP9140x2

IRFP9140

R5

22ohm= R6

22ohm IRFP9140

Dz 15V

R2

6.8ohm

Q1IRFP9140

Q4IRFP140

J1 MOSFET driv er

1234

R4

6.8ohm

36V

0V

Q3IRFP9140

R3

6.8ohm

Dz 15V

Q2IRFP140

M1

Dong co banh xe

Dz 15V

Dz 15V

R1

6.8ohm

Hình 5.18 Sơ đồ mạch cầu H của MOSFET công suất

Trang 64

Page 73: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Hoạt động. Giải mã. Bộ phận lái sườn cao.

Các nhu cầu của MOSFET driver.

Cgs gây ra ~ Ciss cho IRFP140 là 1400ρF, phải nạp cho Vth ⇒ ON.

∆Qg tổng số nạp cho G ⇒ ON cho IRFP140 là 97nC.

tf: thời gian fall của VDS (∆t) cho IRFP140 là 20ns.

∆Qg < 97nC cho IRFP140.

∆t ~ 50ns cho IRFP140.

tQ

dtdqi(t)

∆∆

≈= [5-1]

94.150ns97nCi(t) == cho 50nsecond.

fall

gs

tV

dtdvrate slew

∆≈= [5-2]

∆Vgs max ≈ 12V

sµ V240

50ns12Vrate slew ==

Bộ phận lái sườn thấp mạch Push-Pull BD139-BD140. Sườn thấp kênh N. Vdd 12V. Không đảo ngược 0V ~ +12V. 25mV bão hòa. Iout 3A fmax< 6MHz.

Bộ phận lái sườn cao mạch Push-Pull BD139-BD140. Sườn cao kênh P. Vgate ~ Vsource +24V ~ +36V <24V. Iout 3A fmax < 6MHz.

Trang 65

Page 74: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

5.2.2.3 Mạch Snubber

Snu

bber

2

D5

5A

1 2

R622ohm/5W

Snu

bber

3

D3

5A

1 2

C10224/400V

Snu

bber

4

R22100ohm/10W

J4

Power

12

C12224/400V

C11224/400V J5

Motor

12

R23100ohm/10W

O

Snu

bber

1

D6

5A

12

C13224/400V

R2122ohm/5W

M1

D4

5A

12

+36

M2

Hình 5.19 Sơ đồ mạch Snubber

5.2.2.4 MOSFET thắng

12V thang

R26

22ohm/1W

J8

Tin hieu brake

12

C14

152

PGND

M2

PGND

R27 470ohm

Q10BD140

R2410ohm/30W

Q Power

IRF140

DZ brake1

DZ15

12

J7

12V brake

1 2

Opto cua brake

OPTO TLP 351

34

8

15

26

7 CATHODE4

VCC

1GND

ANODEVout

7

R25

1K

P+36V

Q11

BD139- +

D1

BRIDGE

2

1

3

4

M1

Hình 5.20 Sơ đồ MOSFET thắng

5.2.3 Cảm biến Theo sơ đồ khối được giới thiệu ở đầu mục 5.2, các tín hiệu vào vi điều khiển

PIC 18F452 gồm: tín hiệu tương tự và xung từ bảng điều khiển, tín hiệu đo góc và vận tốc góc của sàn xe so với chiều vuông góc mặt đất, đo quá tải dòng điện qua động cơ và đo vận tốc cũng như vị trí bánh xe. Nhưng khi hệ là một hệ kín điều khiển tự động, chỉ có các thành phần sau đóng vai trò tín hiệu tham khảo điều khiển, gồm các cảm biến đo góc nghiêng: gyro và accelerometer; cảm biến đo vận tốc bánh xe: incremental encoder; và cảm biến đo dòng điện: mạch điện trở shunt nối tiếp với động cơ.

Cảm biến đo góc góc nghiêng sử dụng hai dạng là accelerometer để đo góc nghiêng tĩnh và gyro dùng để đo góc nghiêng động. Ở đề tài này, encoder, resolver

Trang 66

Page 75: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

hay một biến trở không thể dùng để đo góc với trọng lực vì những cảm biến này chỉ có thể đo góc tương đối giữa hai bộ phận mà khớp quay giữa chúng chính là các cảm biến. Chỉ có các cảm biến đo không tiếp xúc cho một giá trị tuyệt đối về góc với vector trọng lực mới khả thi để dùng đo góc nghiêng trong đề tài. Gyro được dùng để đo vận tốc góc nghiêng, và gia tốc kế accelerometer dùng để đo góc tĩnh. Gia tốc kế đưa ra giá trị góc tĩnh rất chính xác. Tuy nhiên, một mình nó không thể cung cấp cho chúng ta khả năng đáp ứng đủ nhanh vì bộ lọc 10Hz được đặt ở ngõ ra để loại bỏ độ nhiễu cơ học, đồng thời rất dễ bị nhiễu vì bản thân là một gia tốc kế. Gyro được sử dụng để bổ sung đo góc với vận tốc nhanh vì nó có thời gian đáp ứng rất nhanh, điều này đền bù cho sự đáp ứng chậm và nhiễu khi đo nhanh của gia tốc kế.

Thiết bị đo góc gyro Murata ENC-03[31] 5.2.3.1

Gyro Murata ENC-03 là cảm biến vận tốc góc dùng hiện tượng của lực Coriolis, được tạo ra khi vận tốc góc quay được áp trên bộ rung.

Hình 5.21 Cảm biến gyro

Murata ENC-03

Đối với gyro, Murata ENC-03 có ngõ ra analog được chọn. Đó là một con quay hồi chuyển tuyệt vời, có các tính năng sau:

− Khả năng loại bỏ độ rung cao.

− Vận tốc góc cao ±300o/s.

− Độ nhạy cao 0.67mV/deg/s.

− Được cài đặt sẵn tín hiệu Vref = 1.35V.

Hình 5.22 Sơ đồ chân và kích thước của cảm biến gyro Murata ENC-03

Vì hệ thống phát ra độ nhiễu cơ học, nên Murata ENC-03 được sử dụng với mục đích loại bỏ độ rung cao. Một tính năng khác là cài đặt sẵn tín hiệu Vref. Điều này có nghĩa là Murata ENC-03 có thể dễ dàng ghép tương thích với một vi điều khiển. Tuy nhiên, gyro Murata ENC-03 phát ra độ nhiễu ở ngõ ra. Do vậy, bộ lọc thông thấp 1 kHz được thêm vào giữa gyro và vi điều khiển để loại bỏ độ nhiễu này.

Trang 67

Page 76: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Hình 5.23 Hoạt động chính của cảm biến gyro áp điện

Hình 5.23 minh họa nguyên lý hoạt động của cảm biến gyro áp điện. Khi nhân tố piezoelectric thay đổi hình dạng thanh mẫu làm đổi hướng, quay quanh trục Z trong khi chuyển động qua hướng trục Z, dao động xảy ra qua hướng X do lực Coriolis. Bằng cách dò tìm dao động điện hướng X, có thể kiểm tra giá trị của vận tốc góc.

ADXL202A [30] 5.2.3.2 Giới thiệu:

Những ưu điểm kỹ thuật của cảm biến gia tốc ngày nay, đặc biệt với những loại vi cơ silicon, làm giá thành của sản phẩm giảm đáng kể. Giờ đây, gia tốc kế có giá thấp hơn 5 USD cho mỗi trục có trong cảm biến. Đo gia tốc hay một trong các đặc tính vật lý như dao động, va chạm hay độ nghiêng góc trở nên rất phổ biến trong một loạt các sản phẩm.

Có rất nhiều dạng cảm biến dùng đo lường gia tốc, dao động, va chạm hay nghiêng góc. Những cảm biến này bao gồm lớp màng

gcũbcóvvcấn

Hình 5.24 Hình chụp ADXL202 [21]

áp điện (piezo-film), servo cơ điện, áp điện, óc chất lỏng, điện trở vi cơ áp điện (piezo micromachined)và cảm biến điện dung, ng như là cảm biến vi cơ điện dung bề mặt. Mỗi cảm biến này có đặc tính khác

iệt nhau về các tín hiệu ngõ ra, chi phí sản xuất, và môi trường hoạt động. Cảm biến khả năng đo lường gia tốc có thể cho giá trị vận tốc bằng tích phân đơn và giá trị ị trí bằng tích phân bậc hai. Khả năng dao động hay va chạm có thể được dùng cho iệc kiểm tra độ chịu lực của máy cũng như kiểm tra sự chuyển động và va chạm để p báo cho xe. Gia tốc tĩnh đo lực hấp dẫn có thể dùng để kiểm tra góc và độ

ghiêng, miễn là cảm biến đáp ứng nhanh với gia tốc tĩnh.

Trang 68

Page 77: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Hình 5.25 Sơ đồ nguyên lý của cảm biến gia tốc ADXL202A

Đối với cảm biến gia tốc ADXL202A, tín hiệu góc được lấy từ giá trị xung PWM hay tín hiệu analog, trong đề tài này, tín hiệu từ ADXL202A được lấy ra từ ngõ analog.

Hình 5.26 Trục X và Y đáp ứng với những thay đổi khác nhau của góc nghiêng

Độ nhạy của ADXL202A tạo ra khả năng thay đổi ngõ ra rất lớn trên mỗi g. Một g của khả năng thay đổi này là bằng với góc nghiêng 90o. Khả năng thay đổi ngõ ra lớn này làm ADXL202A dễ dàng đo góc sử dụng module A/D của vi điều khiển. Vì gia tốc kế rất nhạy đối với độ nhiễu cơ học, nên bộ lọc 50Hz được đặt ở ngõ ra.

Mô tả chức năng chân:

Trang 69

Page 78: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Hình 5.27 Sơ đồ chân của cảm biến ADXL202

Hình 5.28 Khả năng đáp ứng của ADXL2

Những tính năng của ADXL202A:

− Độ nhạy cao (312mV/g).

− Điện áp tại mức 0g là cố định (2.5V đối với

− Cảm biến gia tốc 2 trục trên chip IC đơn.

− Đo gia tốc tĩnh cũng như là gia tốc động lực

− Ngõ ra PWM được điều chỉnh tần số theo n

− Công suất thấp < 0,6mA.

− Khả năng đáp ứng nhanh hơn những cảm góc nghiêng nhiệt.

− Khả năng điều chỉnh băng thông rộng với tụ

− Độ phân giải 5mg tại băng thông rộng 60H

− Hoạt động cấp đơn +3V đến +5.25V.

− Chịu được shock 1000 g.

Trang 70

1,6,8 : không dùng

2 : VTP kiểm tra, không dùng

3 : ST tự kiểm tra

4,7 : Vss masse

5 : Rset xác định tần số PWM

9,10 : Y,X duty Cycle output

11,12 : tụ lọc ngõ tín hiệu Y,X

13,14 : VDD

02 với trọng lực

nguồn cung cấp 5V).

.

gười sử dụng bằng RSET.

biến điện phân, thủy phân hay

điện đơn trên mỗi trục.

z.

Page 79: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Sơ đồ mạch điện kết hợp cảm biến gyro Murata ENC-03 và cảm biến accelerometer:

C14

100nF

R35

1K

CXY f ilt

D28

LED

1 2

X analog out

R4

R

X out

Sef t test

CYX f ilt

Tilt CON

CON8

12345678

R5R

Y out

+

-

U1B

LM324

5

67

411

GND

+

-

U1C

LM324

10

98

R361K

Y out

R set125K

Tilt PS

JUMPER2

C10

C

R11

C62.2uF

L1470uH

Analog X

Analog X

+5VDC sensor

J4

Sensor Power supply

12

U2LM7805

1

2

3VIN

GN

D

VOUT

C9

C

D29xanh 12

C1 in470uF

Sef t test

TILT sensor

ADXL 202

1234567

141312111098

+ C dc47 uF

C2 in0.1uF

R3

10K

C8100nF

J6

CON4

1234

Gy ro 1

ENC-3M

1

3

2

4

V ref

Vcc

GND

Out

Analog Y

C11

C

+

-

U1D

LM324

12

1314

R10

none

+

-

U1A

LM324

3

21

411

Analog Y

R1

33K

R7

R-VAR

+5V sensor

+5V sensor

Gy ro PS

JUMPER2

GND

C12

C

J3

VCC in

12

+5VDC sensor

C7470uF

R9

R-VAR

C31nF

R6

R-VAR

+5VDC sensor

R8

R-VAR

Gy ro 2

ENC-3M

1

3

2

4

V ref

Vcc

GND

Out

X out

+5V sensor

C13100uF

+5V sensor

L2INDUCTOR

Hình 5.29 Sơ đồ mạch điện cảm biến

Các công thức tính giá trị khuếch đại điện áp ngõ ra trên cảm biến gyro Murata ENC-03 và accelerometer bằng OPAMP LM324:

Gyro Murata ENC-03:

4

refg

8

go

RVV

RVV −

=−

)V(VRR

VV ref4

8o −+= −−

)V(VRR

VV refg4

8o −+= g [5-3]

Accelerometer:

1

g

2

o

RVV

RVV −

=− −−

Trang 71

Page 80: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

2

refo

RVV −

o VV += −

refo VV +=

Mạch điện tử

áp bộ lọc KalmanKalman), kết quả sau:

-300

-250

-200

-150

-100

-50

0

50

100

150

1 8 15 22

Tín hiệu trênaccelerometer tỏ r

R1

R2

-

+

U1A

LM324

3

21 Vo

V ref

Vg

Hình 5.30 Bộ khuếch đại điện áp cho ngõ ra accelerometer

1

accref

RVV −

=

1

2g

RR

1VV −−

1

2gref R

R)V(V − [5-4]

thực hiện ở phần trên được tiến hành chạy thử, calibre giá trị và vào cho hai tín hiệu từ accelerometer và gyro (chương 3, bộ lọc được thu nhận về máy tính để kiểm tra qua giao tiếp RS-232 như

29 36 43 50 57 64 71 78 85 92 99

Gyro mới (1.5+2.5)*3=12ms

Kalman

Accelerometer

Hình 5.31 So sánh giá trị vận tốc góc trên gyro,

đạo hàm accelerometer và vận tốc góc sau bộ lọc Kalman

gyro cực kỳ nhạy với các chuyển động dù là nhỏ nhất, trong khi a kém nhạy với các chuyển động quay tròn. Chính vì quá nhạy,

Trang 72

Page 81: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

những rung động nhỏ cũng làm gyro thay đổi giá trị. Qua bộ lọc Kalman, tín hiệu vận tốc góc được chỉnh lại cho phù hợp và loại bỏ đi những xung động nhiễu của gyro và accelerometer.

-60

-40

-20

0

20

40

60

80

100

1 8 15 22 29 36 43 50 57 64 71 78 85 92 99

Tích phân giá trị gyro

Kalman

Accelerometer

Hình 5.32 So sánh giá trị góc trên gyro (tích phân vận tốc góc), accelerometer và sau bộ lọc

Kalman

Tín hiệu đo góc tĩnh trên accelerometer là rất tốt, nếu accelerometer không chịu một gia tốc tịnh tiến theo chiều nhạy nhận dạng. Tín hiệu góc thu được từ gyro (tích phân vận tốc góc thu được từ gyro) có dạng giống accelerometer, nhưng bị trôi theo thời gian tại những thời điểm không có chuyển động quay. Kết quả góc thu được sau khi qua bộ lọc Kalman đã tỏ ra rất tốt để khắc phục nhược điểm của hai cảm biến trên.

5.2.3.3 Cảm biến đo vị trí- encoder Encoder được dùng để đo vận tốc và vị trí của bánh xe, là một trong các tham

số điều khiển mô hình. Dĩa cảm biến được làm bằng mica, ghép với một tấm film trong đã in sẵn các vạch đen trắng xen kẽ.

Incremental encoder

Hình 5.33 Sơ đồ nguyên lý hoạt động của incremental encoder

Cấu tạo gồm một đĩa đục có những rãnh trong suốt, một nguồn phát quang thông qua các rãnh trên đĩa đến một đầu thu. Tín hiệu ra có thể dạng xung vuông

Trang 73

Page 82: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

hoặc hình sin. Việc đọc các tín hiệu ra này sẽ xác định được vị trí cũng như vận tốc của động cơ. Lưu ý rằng khi sử dụng loại cảm biến này có ba thông số quan trọng, đó là: số vạch chia, dạng tín hiệu ra và số kênh ra.

Hình 5.34 Sơ đồ tín hiệu ra của incremental encoder

mộđế

Hình 5.35 Dĩa encoder

Bánh xe bằng cao su, có đường kính 40cm như hình vẽ, trên bánh xe có gắn t mâm nhôm, và trên mâm nhôm có 120 khe để đặt một bộ cảm biến quang để

m số xung, từ đó ta có thể xác định khoảng cách mà robot đó đi được. Tính toán khoảng cách di chuyển theo số xung đếm được trên bộ encoder. Chu vi bánh xe:

P = 2πR = πd = 1,2 (cm) [5-5] Số xung trên mâm encoder: 120 Góc mở trên một xung:

)rad(60π

1202π α == [5-6]

Quãng đường đi được trên một xung:

Trang 74

Page 83: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

cm)(13π20

60π αR S ==×== [5-7]

Nếu cần di chuyển một quãng đường S thì số xung di chuyển cần phải có:

)xung(sS n = [5-8]

R1

220 ohm +5V in

GND

R2

10K

ISO1H42B6

J1

CON3

123

Signal

thêm Hình 5.36 Mạch đếm encoder giao tiếp tới vi điều khiển

5.2.3.4 Cảm biến đo dòng hồi tiếp (Điện trở shunt)

J3

Nguon cho banh xe phai

12

S4

Cong tac 15A

0V

J2

Nguon cho banh xe trai

12

0V cua MCU

D8 2V7

D5 do

R510K

R3

0.11ohm 20W0V

R7100ohm

+ C19600uF/50V

+ C29600uF/50V

0V cua MCU

D6 xanh

R610K

R4

0.11ohm 20W

R8100ohm

ISO1

P621

36VD7 2V7

Do qua dong dien banh phai

S3

Cong tac 15A

Do qua dong dien banh trai

36V

ISO2

P621

Hình 5.37 Sơ đồ mạch cảm biến đo dòng hồi tiếp và công tắc nguồn cho động cơ

Bộ đo dòng được thiết kế nhằm tham khảo thời điểm dòng qua động cơ bị quá

tải. Giá trị dòng điện tối thiểu qua động cơ để opto bắt đầu dẫn được tính như sau: RshuntoptoON VVVV −== 1 [5-9]

RIVV shuntoptoON ⋅−= [5-10] RIVVIR optoONshuntmotorshunt ⋅+==⋅ [5-11]

AR

RIVI

shunt

optoONmotor 30

1.010002.01

=⋅+

=⋅+

= [5-12]

Nguồn điện 36V từ bộ nguồn ắc quy ghép được đưa qua công tắc, tới mạch đo quá tải dòng điện bằng một điện trở shunt mắc nối tiếp tại cực dương nguồn. Nếu bị quá tải, tín hiệu quá tải thông qua bộ cách ly opto sẽ được đưa đến vi điều khiển để tắt toàn bộ hoạt động của động cơ. Tụ điện 9600uF dùng để bù điện tích khi động cơ tăng tốc đột ngột.

Trang 75

Page 84: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

5.2.4 Bộ xử lý trung tâm - vi điều khiển PIC 18F452 Mạch điều khiển động cơ là PIC18F452 giao tiếp từ mạch điều khiển cân

bằng tới những chip điều khiển H-bridge. Bằng cách gởi các bit chỉnh hướng và tín hiệu PWM đến chip điều khiển H-bridge, PIC kiểm soát động cơ điều khiển tốc độ và hướng của động cơ.

Vi điều khiển PIC 18F452 có dạng chip 40 chân. Chúng được phân biệt với họ 16Fxxx qua bốn đặc điểm:

1. Những thiết bị PIC18FX52 có bộ nhớ chương trình cực nhanh gấp hai lần và dữ liệu RAM của những thiết bị PIC18FXX2 lần lượt là 32Kb và 1536 byte, 16Kb và 768 byte.

2. Những thiết bị cung cấp kênh 8 A/D 10 bit. 3. Những thiết bị PIC18F4X2 cung cấp 5 port I/O. 4. Chỉ những thiết bị PIC18F4X2 cung cấp module CCP nâng cao, I2C, USART,

bộ biến đổi A/D và cổng slave song song. Tất cả tính năng của các thiết bị trong họ PIC18FXX2, bao gồm những module

thông tin chuỗi giống hệt nhau.

Hình 5.38 Sơ đồ chân 18F452 [22]

5.2.4.1 Các khả năng của vi điều khiển Microchip PIC 18F452: Sự thực thi RISC CPU cao

− Cấu trúc/ lệnh tối ưu chương trình biên dịch C: Mã nguồn tương thích với tập lệnh PIC16 và PIC17.

− Bộ nhớ chương trình tuyến tính chiếm 32kb.

− Bộ nhớ dữ liệu tuyến tính chiếm 1,5kb.

Trang 76

Page 85: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

− Nhiệm vụ hoạt động 10MIPs: DC – 40 MHz osc./ ngõ vào clock. 4 MHz – 10 MHz osc./ngõ vào clock với PLL active.

− Lệnh dài 16-bit, đường dẫn dữ liệu dài 8-bit.

− Những mức ưu tiên để ngắt.

− Số nhân 8x8bit phần cứng chu kỳ đơn. Tính năng ngoại vi cao

− Sink/ dòng điện cao 25mA/ 25mA.

− Ba chân ngắt ngoại vi.

− Module Timer0: Bộ đếm/ bộ ghi 8-bit/16-bit với prescaler chương trình.

− Module Timer1: Bộ đếm/ bộ ghi 16-bit.

− Module Timer2: Bộ đếm/ bộ ghi 8-bit với thanh ghi đoạn 8-bit (thời gian dựa vào PWM).

− Module Timer3: Bộ đếm/ bộ ghi 16-bit.

− Tùy chọn clock oscillator thứ hai – Timer1/Timer3.

− Hai module Capture/Compare/PWM (CCP). Những chân CCP có thể xem là: Ngõ vào capture: capture là 16-bit, độ phân giải cao nhất 6,25 ns

(TCY/16). Compare là 16-bit, độ phân giải cao nhất 100 ns ((TCY). Ngõ ra PWM: độ phân giải PWM là -1 đến 10-bit, tần số PWM lớn

nhất @: Độ phân giải 8-bit = 156 kHz. Độ phân giải 10-bit = 39 kHz.

− Module port serial đồng bộ (MSSP), hai mode hoạt động: 3-wire SPITM (hỗ trợ cả 4 mode SPI). Mode Slave và Master I2CTM.

− Module USART định vị: Hỗ trợ RS-485 và RS-232.

− Module port Slave song song (PSP). Tính năng A/D

− Module biến đổi A/D 10-bit tương thích với: Tốc độ mẫu nhanh. Có khả năng biến đổi trong suốt thời gian Sleep.

Độ tuyến tính ≤ 1LSb.

Trang 77

Page 86: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

− Dò điện áp thấp chương trình (PLVD). Hỗ trợ ngắt trên dò điện áp thấp.

− Xác lập lại khoảng thời gian chương trình (BOR). Tính năng đặc biệt của vi điều khiển

− Bộ nhớ chương trình điển hình FLASH tăng cường chu kỳ xóa/ghi 100 000.

− Bộ nhớ EEPROM dữ liệu chu kỳ xóa/ghi 1 000 000 .

− Khả năng nhớ EEPROM dữ liệu/ FLASH: > 40 năm.

− Khả năng tự lập chương trình dưới bộ điều khiển phần mềm.

− Xác lập lại nguồn mở (POR), thời gian nguồn tắt (PWRT) và thời gian khởi động oscillator (OST).

− Thời gian watchdog (WDT) với oscillator RC on-chip của riêng nó cho hoạt động xác thực.

− Mã bảo vệ chương trình.

− Mode Sleep tiết kiệm công suất.

− Tùy chọn oscillator được chọn bao gồm: Vòng lặp khóa chu kỳ 4x (của chính oscillator). Ngõ vào clock oscillator thứ hai (32 kHz).

− Nguồn cung cấp 5V đơn trong vi mạch chuỗi chương trình (ICSPTM) qua hai chân.

− In-circuit Debug (ICD) qua hai chân. Kỹ thuật CMOS

− Kỹ thuật FLASH/EEPROM tốc độ cao, công suất thấp.

− Thiết kế tĩnh hoàn chỉnh.

− Khoảng điện áp hoạt động rộng (2V đến 5.6V).

− Khoảng nhiệt độ rộng và industrial.

− Tiêu thụ điện thấp: <1.6mA điển hình @ 5V, 4 MHz. 25µA điển hình @ 3V, 32 kHz. < 0,2µA dòng điện dự phòng, điển hình.

Trang 78

Page 87: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

5.2.4.2 Mạch điều khiển trung tâm

V+ REF

J9

Ov er Current 2

12

Encoder 2

U2C

74LS08

9

108

J3

CON Motor 1

12

56

34

Forward

Y1 10MHZ

J8

Ov er Current 1

12

Inactiv e12

PWM1

VCC

+

C23

10uF

U2B

74LS08

GND

4

56

GND

MCLR

Inactiv e 21

USART

SUB-D 9

594837261

+

C21

10uF

Encoder 2

Encod r 2e

Encoder1

CON3

123

Inactiv e12

Ov er Curr 1

Ov er Curr 2

J4

CON Motor 2

123456

Brk2

C reset

10uF

V+ REF

Tilt

PGD

Dir1

VCC

Encoder2

CON3

123

U2A

74LS08

1

23

Brk2

VCC

Brake2

PGD

Control CON

CON41234

+

C22

10uF

Brake1Ov er Curr 2

C133p

USART MCU

CON2

12

+

C20

10uF

GND

U4

MAX232

1345

16

15 26

129

1110

138

147

C1+C1-C2+C2-

VCC

GND V+V-

R1OUTR2OUT

T1INT2IN

R1INR2IN

T1OUTT2OUT

U2D

74LS08

12

1311

VCC

Turn

Gy ro

PGC

Brk1

R reset4K7

USART con

CON2

12

PIC16F452

U1

PIC16F877A_5

1

23

56789

10

11

12

1314

15161718

19202122

23242526 28

27

2930

31

32

3334353637383940

4

MCLR/VPP

RA0/AN0RA1/AN1

RA3/AN3/VREF+RA4/TOCKIRA5/AN4/SSRE0/RD/AN5RE1/WR/AN6RE2/CS/AN7

VDD

VSS

OSC1/CLKINOSC2/CLKOUT/RA6

RC0/T1OSO/T1CKIRC1/T1OSI/CCP2*RC2/CCP1RC3/SCK/SCL

RD0/PSP0RD1/PSP1RD2/PSP2RD3/PSP3

RC4/SDI/SDARC5/SD0RC6/TX/CKRC7/RX/DT RD5/PSP5

RD4/PSP4

RD6/PSP6RD7/PSP7

VSS

VDD

RB0/INT0RB1/INT1RB2/INT2

RB3/CCP2*RB4

RB5/PGMRB6/PGCRB7/PGD

RA2/AN2

+ C RS23247uF

VCC GND

Gy ro

PGC

C233p

Inactiv e12

Encoder 1

J5

LED con

12345678

Emergency SW

Brk1

PWM2

Emergency SW

Dir2

C encoder2100uF

MCLR C encoder1100uF

ICSP

CON6

123456

VCC

Tilt

PGM

PGMDir1

GND

R OC11K

R OC21K

Sensor CON

CON41234

Brake1

VCC

Ov er Curr 1

PWM2

Turn Encoder 1

VCC

Inactiv e12

Dir2

PWM1VCC

SW1Reset BTN

Encoder 1Encoder AMP

CON2

12

Brake2

VCC

VCC

Forward

Hình 5.39 Sơ đồ mạch điều khiển trung tâm

Port A được sử dụng như bộ biến đổi A/D với bốn kênh để nhận thông tin từ các cảm biến khác nhau: cảm biến accelerometer, gyro, hai bộ điện trở biến đổi có thể được nối với nhau. Chân AN3 được dùng làm ngõ vào điện áp tham khảo (Vref)

Port B như những nguồn ngắt để nhận tín hiệu từ cảm biến quang – incremental encoder quang (120 xung/vòng), dòng cực đại, và công tắc từ mạch điều khiển.

Port C có module CCP/PWM, do đó 4 chân port C và 3 chân port E là những tín hiệu logic để điểu khiển động cơ. RC6, RC7 của port C giao tiếp với máy vi tính qua USART.

Port D không làm nhiệm vụ để điều khiển hay thu nhận tín hiệu cho hoạt động cân bằng của xe, do vậy port D được dùng để thể hiện các trạng thái của cảm biến và hoạt động của xe scooter bằng cách hiển thị ra một LED 7 đoạn qua giao diện chip ULN2003.

Trang 79

Page 88: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

5.2.5 Bảng điều khiển và hiển thị:

e

e

fg

a

d

g

Port D

CON8

12345678

+5VR12

1K

b

L7D1

7 DOAN

1 2 3 4 5678910

E D AC1

C HBA

AC2FG

U5

uln2003

12345678 11

12131415161718

I1I2I3I4I5I6I7I8 O8

O7O6O5O4O3O2O1

220ohmx8

a

c

+5V

c

.

d

b

.

+5V

D2

LED

R quay

5K

R9 10K

S2

SW SPST

+5V

J7

To MCU

1234

R toc do

5K

Hình 5.40 Mạch bảng điều khiển và hiển thị

Bảng điều khiển là phần mạch duy nhất không được gắn ở dưới sàn xe, mà ngay trên tay lái, hướng về người điều khiển. Điện áp của hai biến trở được chuyển về vi điều khiển để xác định tốc độ di chuyển và góc quay mong muốn của xe, còn bảng LED 7 đoạn hiển thị tất cả các trạng thái của các cảm biến đo nghiêng, cảm biến đo vị trí, hoặc tiến trình đang hoạt động của mô hình.

5.2.6 Động cơ 5.2.6.1 Điều khiển động cơ bằng mạch lái MOSFET cầu H

Bảng mạch bộ phận lái động cơ nhận thông tin và kiểm soát H-bridge tương ứng. H-bridge điều khiển cường độ và hướng của dòng điện thông qua động cơ.

Hình 5.41 Động cơ được tích hợp bên trong bánh xe

Trang 80

Page 89: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

H-bridge có khả năng thay đổi hướng. Để phòng chống shoot-through, H-bridge cần có thời gian nghỉ để thay đổi hướng, trong suốt thời gian này toàn bộ H-bridge được treo lên mức không hoạt động. Cả PIC kiểm soát động cơ và mạch điều khiển H-bridge tạo giai đoạn trì hoãn này để bảo vệ H-bridge khi gặp shoot-through dư thừa (10µs).

PIC kiểm soát liên lạc trực tiếp với những chip mạch điểu khiển H-bridge, từ đó đường điều khiển được đưa đến MOSFET driver thông qua những đường tách opto.

Mã dữ liệu được thêm vào trên PIC kiểm soát động cơ để chắc chắn rằng không có tín hiệu shoot-through trên mạch điều khiển động cơ ở bộ phận MOSFET driver.

Để đo dòng điện qua mỗi động cơ, điện trở được đặt nối tiếp với H-bridge theo như mô tả ở 5.2.3.4 .

Hình 5.42 Stator đồng thời là trục động cơ

Hình 5.43 Rotor được gắn chặt vào bánh

Trang 81

Page 90: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

5.2.6.2 Phương pháp điều độ rộng xung (PWM)

Có ba cách để điều khiển tốc độ động cơ DC servo trong kỹ thuật: Phương pháp điều áp (Linear Power Amplification), phương pháp điều độ tần số xung (PFM) và phương pháp điều độ rộng xung (PWM). Đề tài này áp dụng kỹ thuật điều độ rộng xung (PWM).

Nguyên lý Nhìn trên hình vẽ, TON và TOFF lần lượt là khoảng thời gian kích (trạng thái

HIGH) và ngắt tín hiệu (trạng thái LOW) trong một chu kỳ. Việc làm này sẽ tạo ra một mức điện áp trung bình VTB cấp cho động cơ tương ứng với một mức tốc độ động cơ.

Hình 5.44 Điều chế xung PWM

Như vậy, với hai tín hiệu S1 và S2 có cùng chu kỳ, nhưng chỉ có tỉ lệ TON/TOFF giữa hai tín hiệu là khác nhau. Lúc này tương ứng hai điện áp trung bình khác nhau sẽ được thu và cho hai tốc độ khác nhau. Phương pháp này được gọi là điều rộng xung, cho phép điều khiển tốc độ động cơ như mong muốn.

Cũng cần chú ý rằng vì đây là điện áp trung bình của động cơ tương ứng với một tỉ lệ TON/TOFF nào đó, nên mối quan hệ giữa vận tốc động cơ và điện áp trung bình này là không tuyến tính.

Hình 5.45 Ví dụ về quan hệ giữa vận tốc không tải của động cơ DC và PWM cycle

cho động cơ DC Hitachi [27]

Điều này dễ hiểu bởi điện áp trung bình được tính bằng tích phân trong một chu kỳ của điện áp ngõ vào, cũng chính là trong khoảng TON.

Trang 82

Page 91: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Chu kỳ của một tín hiệu ra PWM là khoảng thời gian mà sau đó mẫu tín hiệu được lặp lại.

• Tần số PWM = 1/chu kỳ.

• Hệ số duty là tỉ lệ bề rộng của mức ‘1’ so với bề rộng chu kỳ.

• Độ phân giải (resolution) tín hiệu PWM là phần mịn nhất là hệ số duty có thể được điều chế.

• Có hai cách tạo ra xung PWM:

− Mạch tương tự (analog): có giá trị thay đổi liên tục và có độ phân giải vô hạn cả về thời gian và biên độ, có thể được dùng để điều khiển trực tiếp nhiều thứ, như độ lớn âm được phát ra từ một radio, tốc độ của động cơ. Tuy nhiên, việc xây dựng và thiết kế mạch tương tự thường tốn kém. Có thể tạo ra một mạch PWM nhưng độ chính xác thường không cao và dễ điều khiển như mạch số.

− Mạch số: bằng cách điều khiển các tín hiệu analog một cách số hóa, giá thành hệ thống và tiêu hao năng lượng hệ thống có thể giảm một cách đáng kể. Hơn nữa, nhiều vi điều khiển và DSPs hiện nay có thêm các bộ điều khiển PWM tích hợp, đưa đến việc điều khiển trở nên đơn giản hơn rất nhiều. Thông qua một bộ đếm có độ phân giải cao, hệ số duty của một sóng vuông được mã hóa thành một mức tín hiệu analog đặc trưng. Tín hiệu PWM vẫn là tín hiệu số vì tại một thời điểm bất kỳ, nguồn DC qua tải là mở hết hoặc ngắt hết.

Cài đặt PWM trong các bộ vi điều khiển

Đối với điều khiển PWM bằng phần cứng từ các vi điều khiển có tích hợp bộ PWM trong các Timer, để bắt đầu PWM thì phần mềm của chip phải thực hiện các nhiệm vụ sau:

• Đặt chu kỳ của timer/counter điều chế xung vuông. • Đặt thời gian của thanh ghi điều khiển PWM. • Đặt hướng ra của tín hiệu PWM, tín hiệu có đảo hay không đảo. • Khởi động timer. • Mở khả năng của bộ điều khiển PWM.

Ưu điểm Một trong những ưu điểm của PWM là khả năng chống nhiễu giá trị từ bộ xử lý

đến hệ thống điều khiển, do tín hiệu bản chất vẫn là tín hiệu số nên nhiễu chỉ xảy ra nếu nó đủ mạnh hơn mức tín hiệu số để đổi logic từ 1 thành 0 hoặc ngược lại.

Đây là một ưu điểm mà đôi khi được dùng cho truyền thông: tăng bề rộng của kênh liên lạc. Ngoài ra không phải tốn chi phí cho một bộ biến đổi D/A, cũng như tiết kiệm trong gian trong các thiết bị nhúng (embbed system).

Trang 83

Page 92: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

5.2.6.3 Đặc tuyến đáp ứng vận tốc và ngẫu lực động cơ DC có chổi than

Hình 5.46 Phản ứng ngẫu lực đối với tín hiệu vào là vận tốc

Kết quả trên được thu thập của Viện công nghệ Federal, Lausanne. Điều này hoàn toàn phù hợp với quan hệ vật lý của cơ học vật rắn về ngẫu lực và định luật Newton như sau:

dtdJC θ

θ = [5-13]

dtdv

RRv

bánhbánh

1dtd =→=θθ [5-14]

Từ đó ta hoàn toàn có cơ sở để điều khiển hệ thống theo tín hiệu PWM với hệ

số chuyển đổi không tải là 0,72. 5.2.7

Trang 84

Page 93: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Hình chụp các mạch điện tử

Hình 5.47 Nguồn và công tắc cho động cơ

Hình 5.48 Mạch MOSFET công suất và điện trở đo dòng

Hình 5.49 Mạch MOSFET driver

Trang 85

Page 94: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Hình 5.50 Mạch cảm biến và khuếch đại thuật toán

Hình 5.51 Bảng điều khiển và hiển thị

Trang 86

Page 95: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Hình 5.52 Mạch giao tiếp và điều khiển trung tâm

Hình 5.53 Lắp các mạch điện tử dưới sàn xe

Trang 87

Page 96: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

5.3 Giải thuật - Lưu đồ chương trình

Chương trình điều khiển xe hai bánh tự cân bằng được chia ra làm 4 phần như nhau: sườn chương trình chính; 2 module ngắt cao và thấp; giải thuật điều khiển động cơ và cập nhật encoder. Việc tính toán và thu nhận giá trị các cảm biến được thực hiện ngay trong các ngắt.

5.3.1 Chương trình chính

Start

Thieát laäp PortPort B: ngaõ vaøoPort D: ngaõ raPort C, E: ngaõ ra

Thieát laäp A/D

Khoùa caàu H

Thieát laäp PWMTimer2

PWM1=PWM2 = 0

Delay 5s

DCPWM1 = 0DCPWM2 = 0

RE1 = 1

Chaïy ñoäng cô

Yes

AN0 -> AN4 Vref = AN3

PS 1:4 , PR2 = 0xFF

INT0=0 (coâng taéc)or AN4>0 Delay 1s

Khôûi taïo ngaétGIE, Timer0,

Timer 1

RB0 = 0

Quaù doøngBaùo sai

Ngöøng ñoängcô

Yes

No

No

Yes

Baùo saiNgöøng ñoäng cô

LED 7 ñoaïn saùng

END

DCPWM1=0DCPWM2=0

Trang 88

Page 97: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

5.3.2 Chương trình ngắt

5.3.2.1 Ngắt cao (High priority ISR)

Trang 89

Page 98: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Trang 90

Page 99: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

5.3.2.2 Ngắt thấp (Low priority ISR)

Encoder1INT1

Timer1

RETFIE

Encoder2INT2

No

No

No

Encoder1

Encoder2

Nhaáp nhaùy daáu chaámCaäp nhaät vò trí

Ngaét thaáp

RETFIE

5.3.3 Cập nhật encoder

Trang 91

Page 100: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

5.3.4 Điều khiển động cơ

Trang 92

Page 101: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

Traïng thaùi höôùng 1 != Höôùng 1 motoror

Traïng thaùi höôùng 2 != Höôùng 2 motorThaéng 2 baùnh

A

DCPWM1=PWM1DCPWM2=PWM2

Delay 20ms

RET

Delay 20ms

DCPWM1=3%DCPWM2=3%

No

Yes

Thaéng 2 baùnh

DCPWM1=0DCPWM2=0

Delay 20ms

Höôùng 1 motor = Traïng thaùi höôùng 1Höôùng 2 motor =Traïng thaùi höôùng 2

RET

Ñaûo LED RD5

Trang 93

Page 102: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 5 Thực hiện

5.4 Kết quả

Ngoài các kết quả lý thuyết đạt được, trong thời gian làm luận văn, đề tài còn được thực hiện phần mô hình để có thể hoạt động được. Sau đây là một số kết quả của việc thực hiện mô hình:

• Thiết kế và chế tạo hoàn chỉnh mô hình cơ khí, bao gồm khung xe, sàn xe, tay lái.

• Thiết kế và chế tạo hoàn chỉnh các mạch điện tử, bao gồm mạch điều khiển trung tâm, mạch cảm biến đo góc, mạch cảm biến tốc độ dùng encoder, mạch MOSFET driver, mạch snubber, mạch MOSFET công suất, bảng điều khiển và hiển thị.

• Thiết kế và lắp đặt các mạch điện nguồn, các nguồn accu, các bộ phận bảo vệ quá dòng cho mạch công suất

• Lập trình cho mô hình tự thăng bằng, di chuyển tịnh tiến và quay trên địa hình phẳng.

Trang 94

Page 103: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 6 Cách vận hành

Chương 6 CÁCH VẬN HÀNH

6.1 Cách sử dụng

− Kiểm tra tình trạng bánh xe: không có vết rạn, không bị bể, bánh xe được bơm căng.

− Kiểm tra bình điện còn đầy hay không, chỉ nên sử dụng khi bình còn hơn 30% trữ lượng điện.

− Kiểm tra tình trạng các cáp nguồn.

Hinh 6. 1 Kiểm tra tình trạng xe trước khi sử dụng

− Bật công tắc điều khiển.

− Bật công tắc nguồn cho hai động cơ.

− Bật công tắc nguồn cho MOSFET driver, chú ý trước khi bật công tắc thì các biến trở và công tắc điều khiển phải đặt ở mức áp là 0.

− Giữ xe ở vị trí thẳng đứng. Bật công tắc giữ thăng bằng, sau khi thấy đèn nhấp nháy, tức là hệ thống giữ thăng bằng được (hình 6.2a).

− Từ từ bước một chân lên trọng tâm của xe (hình 6.2b).

− Nếu xe vẫn ổn định, bước chân còn lại lên xe (hình 6.2c).

Trang 95

Page 104: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 6 Cách vận hành

(a) (b) (c)

Hinh 6. 2 Cách bắt đầu dùng xe

− Một tay giữ tay lái, một tay điều khiển biến trở để thay đổi tốc độ. Biến trở bên phải điều khiển tốc độ, biến trở bên trái điều khiển tốc độ quay, quẹo.

Hinh 6. 3 Đang sử dụng xe

− Nghiêng người về phía trước để tiến về phía trước.

− Nghiêng người ra sau để giảm tốc, dừng lại hoặc đi lùi.

− Thân người thẳng đứng sẽ giữ cho xe đứng yên tại chỗ.

Trang 96

Page 105: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 6 Cách vận hành

6.2 Bảo dưỡng

− Khi thấy tín hiệu bình yếu thì phải ngừng sử dụng xe và sạc thêm cho bình.

− Khi không sử dụng trong thời gian 1 tháng, vẫn cần phải sạc điện cho bình ắc quy.

− Khi sạc bình, gỡ hết đầu các dây nguồn ra khỏi bình. Sạc đầy bình mất khoảng 20 giờ nếu bình cạn hoàn toàn, 10-12 giờ nếu bình còn từ 30% trở lên.

− Sau khi sạc xong, cắm lại các dây nguồn như ban đầu.

− Để xe ở nơi khô ráo, thoáng mát, tránh tiếp xúc với nước.

Trang 97

Page 106: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 7 Kết luận

Chương 7 KẾT LUẬN

7.1 Những kết quả đạt được

− Thiết kế và hoàn thiện mô hình cơ khí xe tự cân bằng trên hai bánh.

− Thiết lập mô hình toán và hàm trạng thái cho mô hình.

− Xây dựng chương trình mô phỏng hoạt động bằng Visual Nastran và MatLAB-Simulink.

− Tất cả phần cứng thiết kế cho xe hoạt động theo yêu cầu: Thiết kế mạch lái MOSFET và bộ MOSFET cầu H có thể chịu được

công suất cao tối đa 45A ở 25oC, 30A ở 100oC, điện áp từ 12 – 60V. Thiết kế mạch điện phối hợp giữa cảm biến gia tốc và cảm biến vận

tốc góc, đồng thời đo góc tĩnh với cảm biến vận tốc góc gyro. Thiết kế mạch điều khiển trung tâm giao tiếp với cảm biến, với bộ lái

MOSFET và với máy tính.

− Giao tiếp giữa máy tính qua cổng nối tiếp (RS-232) USART để hiệu chỉnh các sensor và thử nghiệm.

− Thiết lập module lọc Kalman cho cảm biến đo góc (accelerometer và gyro) trên họ vi điều khiển PIC 18Fxxx.

− Phần mềm điều khiển được viết cho vi điều khiển PIC 18F452 kiểm soát sự cân bằng và chuyên chở một người.

− Xây dựng được mô hình đi trên địa hình bằng phẳng theo hướng thẳng và có thể quẹo góc nhỏ, có thể quay tròn tại chỗ.

7.2 Những kết quả chưa đạt được

− Không thực hiện được công suất MOSFET đủ lớn để scooter có thể di chuyển trên những bề mặt dốc.

− Việc quẹo khi vận chuyển người còn gặp khó khăn trong điều khiển, bởi việc điều khiển quẹo bằng biến trở không cân bằng là một giải pháp không tốt. Nếu được thay bằng một biến trở tự về vị trí cân bằng hoặc một cảm biến khoảng cách để xác định tư thế của người điều khiển xe muốn quẹo thì sẽ tốt hơn rất nhiều.

Trang 98

Page 107: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Chương 7 Kết luận

7.3 Những vấn đề chưa giải quyết

− Khối lượng của mô hình được xây dựng nặng hơn nhiều so với khối lượng tải được mô phỏng, cần phải giảm thêm.

− Cấu trúc kín và bền, chịu được va đập cho gầm xe để scooter có thể đi ở địa hình gập ghềnh và rung động cao cũng như vượt qua các vũng nước nhỏ.

− Làm đơn giản hóa quy trình khởi động xe và sạc bình.

− Chưa tạo hệ thống nạp điện lại cho bình khi giảm tốc hay thắng.

− Mạch công suất chưa an toàn khi quay ngược chiều quay của động cơ do dòng điện của động cơ trong phức lọc, đồng thời phải cải tiến thêm.

− Hoạt động còn hạn chế dưới 2 tiếng, nghĩa là chạy được khoảng chừng tối đa 20km.

7.4 Hướng phát triển

− Tạo giao diện giữa vi điều khiển của scooter với một vi điều khiển/ máy tính khác, để scooter có thể đóng vai trò là một platform cho mobile robot.

− Đối với xe dùng để di chuyển, cần thiết kế lại giao diện điều khiển đơn giản hơn trong lúc quẹo cua.

− Tăng khả năng tải trọng của xe lên hơn 100kg, đó là phải giải quyết vấn đề điện tử công suất.

− Làm nhẹ bớt trọng lượng của xe, bằng cách chuyển đổi khung inox sang khung sợi cacbon hoặc vật liệu tổng hợp.

− Thay đổi động cơ bánh xe từ có chổi than thành loại brushless để tăng ngẫu lực khi dùng cùng công suất.

− Nâng cao khả năng thắng gấp khi di chuyển ở vận tốc cao.

Trang 99

Page 108: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Tài liệu tham khảo

Taøi lieäu tham khaûo

Tài liệu trong nước: [1]. Dương Minh Trí, Sơ đồ chân linh kiện bán dẫn, Nhà xuất bản khoa học và

kỹ thuật ( tái bản lần 4), 1998, trang 51,357,371.

[2]. Jean-Marie BRÉBEC, Cơ học vật rắn, HACHETTE Supérieur – PFIEV - Nhà xuất bản Giáo dục, 2001.

[3]. Ngô Diên Tập, Đo lường và điều khiển bằng máy tính, Nhà xuất bản khoa

học và kỹ thuật, 1997, trang 19. [4]. Nguyễn Hữu Lộc (cb) và cộng sự, Cơ sở thiết kế máy (phần 1), Trường

Đại học Bách Khoa Tp.Hồ Chí Minh, 1999, trang 302. [5]. Nguyễn Văn Đạo, Stability of Dynamic systems, Nhà xuất bản Đại học

quốc gia tại Hà Nội, 1998, trang 103. [6]. Trịnh Chất- Lê Văn Uyển, Thiết kế hệ dẫn động cơ khí, Nhà xuất bản Giáo

dục, 2003. [7]. Nguyễn Anh Kiệt, Nguyễn Minh Trung, Luận văn tốt nghiệp “Nhận dạng

và bám đối tượng bằng hai camera số”, PFIEV Bộ môn Cơ điện tử, Trường Đại học Bách Khoa Hồ Chí Minh, 2004, trang 62.

Tài liệu nước ngoài:

[8]. Georges ASCH et al., Acquisition de données du capteur à l’ordinateur, DUNOD, 1999, p. 330.

[9]. J.BLOT, Les transistors, DUNOD, 1995, p. 51-57. [10]. Max GIODANO et Jaques LOTTIN, Cours de Robotique – Description et

fonctionnement des robots industriels, Armand Colin Éditeur, 1990, p. 68,69,82,83.

[11]. Philippe de LARMINAT, Automatique commande des systèmes linéaires

(2e edition revue et augmentée), HERMES Science Éditeur, 2000, p. 167-211.

[12]. Albert Paul MALVINO, Ph.D, E.E (1999), Electronic principles, Glencoe

Mc Graw–Hill, ( tái bản lần 6), 2001, p. 468-473.

Trang 100

Page 109: De Tai Xe Hai Banh Tu Hanh - DHBK HCM

SVTH: Mai Tuấn Đạt Tài liệu tham khảo

[13]. William D.STANLEY, Bộ khuyếch đại xử lý và IC tuyến tính, Nhà xuất bản khoa học và kỹ thuật, 1990, p. 143.

[14]. Ashish TEWARI, Modern Control Design, Indian Institute of Technology

Kanpur, India. John Wiley and sons LTD., 2003, p.219-236, 325-361. [15]. Greg WELCH and Gary BISHOP, An Introduction to the Kalman Filter,

University of North Carolina at Chapel Hill, 2004, p.1-16. Tài liệu Website:

[16]. http://www.geology.smu.edu/~dpa-www/robo/nbot/index.html [17]. http://www.tlb.org/scooter.html [18]. http://leiwww.epfl.ch/joe [19]. http://www.elex.camosun.bc.ca/Projects/2004/hvt/hvt.htm [20]. http://www.fusionglobal.net/gallery.htm [21]. http://www.barello.net/robots/gyrobot [22]. http://www.microchip.com [23]. http:// www.rotomotion.com [24]. http://www.dprg.org/projects/index.html [25]. http://autopilot.sourceforge.net [26]. http://www.wulabs.org/bbot.html [27]. http://homepage.mac.com/sigfpe/Robotics/equibot.html [28]. http://web.mit.edu/sanghyuk/www/balance_bot.html [29]. http://home.earthlink.net/~botronics/index/balibot.html [30]. http://www.analog.com/Analog_Root/productPage/productHome/adxl202,

00.html [31]. http://murata.com/enc-03 [32]. http://www.picotech.com/applications/pwm-drivers/ [33]. http://www.segway.com [34]. http://www.ee.usyd.edu.au/tutorials_online/matlab/examples/pend/invpen.

htm

Trang 101