LỜI CẢM ƠNChúng em chân thành cảm ơn, quý thầy cô trong khoa Điện – Điện tử trường Đại học Sư Phạm Kỹ Thuật TP.HCM nói chung và quý thầy cô bộ môn Điều khiển tự động nói riêng, đã trang
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINHKHOA ĐIỆN – ĐIỆN TỬ
Báo Cáo
ĐIỀU KHIỂN NÂNG CAOĐỀ TÀI: “NGHIÊN CỨU VÀ THIẾT KẾ HỆ
XE HAI BÁNH TỰ CÂN BẰNG”
GVHD: Nguyễn Minh TâmNhóm sinh viên thực hiện: 1 Trịnh Xuân Nam 21151136 2 Nguyễn Xuân Hoàng 21151459
TP HỒ CHÍ MINH – 12/2023
Trang 2LỜI CẢM ƠN
Chúng em chân thành cảm ơn, quý thầy cô trong khoa Điện – Điện tử trường Đại học Sư Phạm Kỹ Thuật TP.HCM nói chung và quý thầy cô bộ môn Điều khiển tự động nói riêng, đã trang bị kiến thức và giúp đỡ chúng em, giải quyết những khó khăn, hỗ trợ phương tiện thí nghiệm trong suốt quá trình tìm hiểu và nghiên cứu đề tài.
Đặc biệt chúng em xin chân thành cảm ơn giảng viên hướng dẫn là Nguyễn Minh Tâm đã tận tình giúp đỡ trong quá trình lựa chọn đề tài và hỗ trợ sinh viên trong quá trình thực hiện.
Tuy nhiên do lần đầu tiên thực hiện đồ án với đề tài “Nghiên cứu và thiết kế hệ xe hai bánh tự cân bằng” và làm quen với các giải thuật điều khiển mới, chuyên môn còn hạn chế, nên không tránh khỏi những sai sót Chúng em rất mong nhận được sự thông cảm, góp ý và hướng dẫn của quý thầy cô, các anh chị cùng các bạn.
Xin chúc quý thầy cô nhiều sức khoẻ, thành công trong công việc, cuộc sống và tiếp tục đào tạo các sinh viên giỏi góp phần đóng góp cho nhà trường, đất nước Chúc các anh chị, cùng các bạn trong khoá sức khoẻ, học tập thật tốt để chuẩn bị kiến thức vững vàng trong tương lai.
TP Hồ Chí Minh, ngày … tháng … năm 2023Nhóm Sinh viên thực hiện
1
Trang 3NHẬN XÉT CỦA GIÁO VIÊN
TP Hồ Chí Minh, ngày … tháng … năm 2023Giáo viên hướng dẫn
Nguyễn Minh Tâm
2
Trang 4TÓM TẮT ĐỀ TÀI
Đề tài “Nghiên cứu và thiết kế hệ xe hai bánh tự cân bằng” được nhóm thực hiện dựa trên lý thuyết mô hình con lắc ngược Qua so sánh và phân tích ưu nhược điểm của một số bộ điều khiển có thể sử dụng cho hệ xe hai bánh tự cân bằng, nhóm đã quyết định sử dụng giải thuật điều khiển toàn phương tuyến tính LQR (Linear Quadratic Regulator) để điều khiển và tiến hành mô phỏng trên MATLAB Thông qua đó để nghiên cứu giải thuật LQR và ứng dụng để điều khiển hệ xe hai bánh tự cân bằng.
Trong đề tài nhóm thực hiện so sánh các trường hợp sử dụng bộ điều khiển toàn phương tuyến tính LQR cho hệ thống đối với trường hợp có nhiễu hệ thống, nhiễu đo lường từ cảm biến và trường hợp hệ không chịu tác động của nhiễu Nhóm sẽ kiểm nghiệm những điểm giống và khác nhau trong các trường hợp đồng thời ứng dụng bộ lọc Kalman để quan sát, ước lượng trạng thái, lọc nhiễu cho hệ thống Qua đó, đưa ra ưu nhược điểm và cách khắc phục để hệ thống điều khiển xe cân bằng đạt trạng thái ổn định nhất có thể.
Đồ án nãy cũng sẽ trình bày về thiết kế hệ thống Về phần cứng bao gồm lựa chọn các thiết bị phù hợp cho hệ thống,… Về phần mềm bao gồm giải thuật điều khiển và lưu đồ hệ thống: điều khiển toàn phương tuyến tính LQR cho động cơ, xử lý tín hiệu từ cảm biến,… đồng thời thiết kế giao diện giám sát hệ thống lập trình bằng ngôn ngữ C#.
3
Trang 52.2 Một số phương pháp điều khiển có thể sử dụng cho hệ thống11
2.2.1 Bộ điều khiển vi tích phân tỉ lệ 11 2.2.2 Bộ điều khiển vi tích phân tỉ lệ kết hợp với giải thuật di truyền 11
2.2.4 Bộ điều khiển tối ưu 13
2.3 Điều khiển toàn phương tuyến tính14
Trang 63.3.1 Khối điều khiển trung tâm 27 3.3.2 Khối cảm biến đo góc nghiêng 29 3.3.3 Khối điều khiển động cơ 31 3.3.4 Khối động cơ và cảm biến đọc xung của động cơ 33
4.2 Xây dựng thuật toán điều khiển40
4.2.1 Thuật toán chương trình chính 41 4.2.2 Thuật toán xử lý xung trả về từ encoder và tính toán giá trị góc tới, góc
4.2.3 Thuật toán đọc và xử lý giá trị từ cảm biến góc nghiêng 45 4.2.4 Thuật toán tính xung băm PWM mỗi bánh với giải thuật LQR và điều khiển
Trang 8DANH MỤC BẢNG VÀ HÌNH ẢNH
Bảng 2.1 Kí hiệu và ý nghĩa các đại lượng 7 Bảng 2.2 Thông số mô hình 21 Bảng 3.1 Bảng kết nối chân của cảm biến MPU6050 31 Bảng 3.2 Bảng kết nối chân của mạch cầu H L298N 33 Bảng 3.3 Bảng kết nối chân của động cơ và encoder 35 Bảng 3.4 Bảng đi dây phần nguồn 39 Bảng 3.5 Bảng đi dây phần tín hiệu điều khiển 39
Hình 1.1 Xe dạng ba bánh khi di chuyển trên địa hình bằng phẳng 2 Hình 1.2 Xe dạng ba bánh khi đi lên dốc 2 Hình 1.3 Xe dạng ba bánh khi đi xuống dốc 2 Hình 1.4 Xe hai bánh di chuyển trên các địa hình khác nhau theo hướng bảo toàn sự
Hình 2.1 Mô hình xe hai bánh tự cân bằng trên mặt phẳng 6 Hình 2.2 Cấu trúc cơ bản của bộ điều khiển mờ 12 Hình 2.3 Sơ đồ khối của bộ lọc Kalman 14 Hình 2.4 Sơ đồ khối của bộ điều khiển toàn phương tuyến tính (LQR) 15 Hình 2.5 Khối Two-wheeled Self Balancing Robot trong MATLAB Function 22 Hình 3.1 Sơ đồ khối hệ thống 26 Hình 3.2 Sơ đồ chân kết nối của Arduino Mega 2560 Rev3 29 Hình 3.3 Cảm biến góc nghiêng GY-521 6DOF IMU MPU6050 31 Hình 3.4 Sơ đồ nối dây cảm biến với Arduino Mega 2560 31 Hình 3.5 Mạch cầu H điều khiển động cơ DC L298N (Dual Full Bridge Driver) 33 Hình 3.6 Động cơ DC Servo GM25-370 DC Geared Motor 35 Hình 3.7 Các thiết bị trong khối cấp nguồn 37 Hình 3.8 Sơ đồ cấp nguồn cho hệ thống 37 Hình 3.9 Các thành phần để xây dựng khung xe 38 Hình 4.1 Lưu đồ thuật toán chương trình chính 41
7
Trang 9Hình 4.2 Lưu đồ chương trình ngắt xử lý xung trả về từ encoder 42 Hình 4.3 Lưu đồ tính toán giá trị góc tới và góc xoay 43 Hình 4.4 Lưu đồ thuật toán đọc và xử lý giá trị từ cảm biến góc nghiêng 45 Hình 4.5 Lưu đồ thuật toán tính xung băm PWM mỗi bánh với giải thuật LQR 46 Hình 4.6 Lưu đồ thuật toán điều khiển động cơ 47 Hình 4.7 Giao diện giám sát hệ thống 49 Hình 5.8 Khảo sát góc nghiêng của xe trả về khi xe hoạt động 58
8
Trang 10DANH MỤC CÁC TỪ VIẾT TẮT
Từ viết tắt Tên tiếng Anh Tên tiếng Việt LQR Linear Quadratic Regulator Điều khiển toàn phương
tuyến tính PID Proportional Integral
Derivative Điều khiển vi tích phân tỉ lệ GA Genetic Algorithm Giải thuật di truyền MIMO Multiple Input
Multiple Output Hệ thống nhiều đầu vào nhiều đầu ra RAM Ramdom Access Memory Bộ nhớ truy cập ngẫu nhiên ROM Read Only Memory Bộ nhớ chỉ đọc EPROM Erasable Programmable
Read Only Memory
Bộ nhớ chỉ đọc có thể lập trình xoá được I/O Input/Ouput Đầu vào/ Đầu ra PWM Pulse Width Modulation Điều chế độ rộng xung UART Universal Asynchronous IMU Inertial Measurement Unit Khối đo lường quán tính SRAM Static Ramdom
Access Memory Bộ nhớ truy cập ngẫu nhiên tĩnh ICSP In Circuit Serial Programming Lập trình nối tiếp mạch điện tử
SPI Serial Peripheral Interface Giao diện ngoại vi nối tiếp DMP Digital Motion Processor Bộ xử lý chuyển động số ADC Analog to Digital Converter Chuyển đổi tương tự sang số DOF Degrees Of Freedom Bậc tự do
DC Direct Current Dòng điện một chiều
9
Trang 11CHƯƠNG 1:TỔNG QUAN ĐỀ TÀI1.1Đặt vấn đề
Trong ngành tự động hóa – điều khiển tự động nói chung và điều khiển học nói riêng, mô hình con lắc ngược là một trong những đối tượng nghiên cứu điển hình và đặc thù bởi đặc tính động không ổn định của mô hình nên việc điều khiển được đối tượng này trên thực tế đặt ra như một thử thách.
Kết quả nghiên cứu mô hình con lắc ngược cơ bản, ví dụ như mô hình xe con lắc, con lắc ngược quay… có thể ứng dụng và kế thừa sang các mô hình tương tự khác nhưng có tính ứng dụng thực tiễn hơn, chẳng hạn như mô hình tên lửa, mô hình xe hai bánh tự cân bằng,…
Như vậy, để cân đối giữa tính cơ bản với tính ứng dụng thực tiễn nhưng vẫn đảm bảo quy mô nghiên cứu nằm trong khả năng cho phép, xe hai bánh tự cân bằng được chọn làm xuất phát điểm cho ý tưởng về đề tài nghiên cứu.
Xe hai bánh tự cân bằng được xem như cầu nối kinh nghiệm giữa mô hình con lắc ngược với robot hai chân và robot giống người Đây là dạng xe có hai bánh đồng trục, do đó khắc phục được những nhược điểm vốn có của các robot hai hoặc ba bánh kinh điển Các xe ba hoặc bốn bánh kinh điển, theo đó có cấu tạo gồm hai bánh dẫn động và môt hoặc hai bánh tự do (hay bất kì cái gì khác) để đỡ trọng lượng xe
Thiết kế của xe ba hoặc bốn bánh 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 hoặc mặt phẳng nghiêng Khi di chuyển lên đồi, trọng lượng robot dồn vào đuôi xe làm mất khả năng bám và trượt ngã Khi di chuyển xuống đồi, trọng tâm thay đổi về phía trước làm xe bị lật úp.
Xe dạng ba bánh xe di chuyển trên địa hình bằng phẳng trọng lượng được chia đều cho bánh lái và bánh dẫn nhỏ.
1
Trang 12Hình 1.1 Xe dạng ba bánh khi di chuyển trên địa hình bằng phẳng Xe dạng ba bánh khi lên dốc, trọng lượng dồn vào bánh trước khiến lực ma sát giúp xe bám trên mặt đường không được đảm bảo.
Hình 1.2 Xe dạng ba bánh khi đi lên dốc
Xe dạng ba bánh khi xuống dốc, trọng lực dồn vào bánh sau khiến xe có thể bị lật úp.
Hình 1.3 Xe dạng ba bánh khi đi xuống dốc
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 robot là một hệ thống không ổn định Khi xe di chuyển trên địa hình dốc, nó tự động nghiêng ra trước và giữ cho trọng lượng dồn về hai bánh chính Tương tự, khi di chuyển xuống dốc, nó nghiêng ra sau và
2
Trang 13giữ trọng tâm rơi vào bánh chính Vì vậy, không bao giờ có hiện tượng trọng tâm xe rơi ngoài vùng đỡ bánh xe để có thể gây ra lật úp.
Hình 1.4 Xe hai bánh di chuyển trên các địa hình khác nhau theo hướng bảo toàn sự thăng bằng
Đối với những địa hình lồi lõm, ưu điểm về khả năng thăng bằng và di chuyển linh hoạt của xe hai bánh sẽ mang lại được ý 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 Qua đó, xe hai bánh tự cân bằng cũng nhận được sự quan tâm từ nhiều nhà nghiên cứu và các hãng sản xuất robot trên toàn thế giới Nhiều ứng dụng của xe hai bánh tự cân bằng như về phương tiện di chuyển và bảo vệ môi trường có xe điện hai bánh balancing scooter hay segway; về khả năng tự hành, phục vụ vận chuyển hàng hoá vật phẩm hay vận chuyển trong môi trường khắc nghiệt; về nghiên cứu vũ trụ có xe phục vụ do thám các địa hình không phẳng ngoài không gian,… và những ứng dụng thực tế khác.
1.2Mục tiêu đề tài
Mục tiêu của đề tài là xây dựng mô hình xe hai bánh tự cân bằ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 xở trong các không
3
Trang 14gian chật hẹp Trong thời gian làm đề tài, những mục tiêu của đề tài được đặt ra như
- Tìm hiểu và áp dụng Bộ lọc Kalman để lọc nhiễu cho cảm biến, xây dựng các thuật toán bù trừ để có giá trị góc chính xác.
- Xây dựng mô hình và mô phỏng trên MATLAB Simulink - Xây dựng thuật toán điều khiển động cơ, giữ thăng bằng cho robot.
- Thiết kế, thi công và lập trình điểu khiển cho mô hình xe hai bánh tự cân bằng.
- Thiết kế giao diện để quan sát tín hiệu trả về từ cảm biến của xe.
1.3Giới hạn đề tài
Trong khuôn khổ đề tài này, chỉ xét và nghiên cứu:
- Mô hình xe hai bánh tự cân bằng sử dụng bộ điều khiển LQR để hệ thống có chỉ tiêu chất lượng trong miền thời gian thoả yêu cầu chất lượng hệ thống (độ vọt lố, thời gian quá độ) Tuy nhiên việc lựa chọn bộ tham số LQR để hệ thống đạt được chất lượng tối ưu nhất hay các kỹ thuật điều khiển khác nằm ngoài phạm vi đề tài.
- Mô hình xe hai bánh tự cân bằng chỉ đứng cân bằng chưa thể di chuyển tiến lùi, quay vòng hay lên xuống dốc được.
- Mô hình xe kích thước nhỏ ,vùng hoạt động trong không gian hẹp không đặt lên được các vật thể để xét khả năng di chuyển cân bằng.
- Mô hình xe thực hiện trong đề tài chỉ giao tiếp đọc tín hiệu trả về thông qua truyền thông kết nối USB trực tiếp với máy tính, chưa thể xét tới việc điều khiển và truyền nhận tín hiệu từ xa.
4
Trang 151.4Phương pháp nghiên cứu
Dựa trên những kiến thức thực tế, mô hình toán học của hệ xe hai bánh cân bằng đã được chỉ rõ Nhóm tiến hành sử dụng bộ điều khiển phù hợp giúp xe giữ thăng bằng theo những yêu cầu chất lượng được đặt ra.
Xây dựng mô hình lý thuyết xe hai bánh tự cân bằng, mô phỏng trên MATLAB Simulink và thực hiện tính toán các thông số cho bộ điều khiển LQR.
Xây dựng mô hình thực gồm:
- Thiết kế cơ khí: khung sườn của mô hình.
- Ứng dụng các mạch điện tử, mạch công suất (điều khiển bánh xe).
- Mạch cảm biến (góc, vận tốc, gia tốc) và phương pháp bù trừ giá trị cảm biến để ước lượng lọc nhiễu.
- Bộ điều khiển trung tâm - Lập trình vi xử lý.
1.5Nội dung đề tài
Phần còn lại của đề tài có nội dung như sau: Chương 2 Cơ sở lý thuyết
Ở chương 2, mô tả về mô hình toán học của hệ xe hai bánh tự cân bằng trên địa hình phẳng Đồng thời nêu cơ sở lý thuyết, kiến thức nền tảng một bộ điều khiển có thể sử dụng để điều khiển đối tượng.
Chương 3 Thiết kế phần cứng
Trong chương này các giải pháp về phần cứng cho mô hình được xem xét và lựa chọn phù hợp với yêu cầu hệ thống được đề ra, tiến hành thi công và thực hiện hoá mô hình hệ xe hai bánh tự cân bằng.
Chương 4 Thiết kế phần mềm
Chương này thực hiện xây dựng thuật toán để lập trình điều khiển và lập trình giao diện giám sát hệ thống.
Chương 5 Kết quả thực hiện
5
Trang 16Trong chương này trình bày các kết quả thực hiện được thông qua mô phỏng trên MATLAB Simulink và thực nghiệm trên phần mềm giám sát Đồng thời đưa ra hạn chế còn gặp của đề tài và hướng phát triển nghiên cứu đề tài trong tương lại.
6
Trang 17CHƯƠNG 2:CƠ SỞ LÝ THUYẾT2.1Đặc tính động lực học
Xây dựng hệ phương trình trạng thái mô tả hệ thống xe hai bánh tự cân bằng
Hình 2.1 Mô hình xe hai bánh tự cân bằng trên mặt phẳng Kí hiệu – [đơn vị] Ý nghĩa
Khối lượng bánh xe Khối lượng robot Bán kính bánh xe Chiều rộng robot
Chiều sâu robot Chiều cao robot
Khoảng cách từ trọng tâm robot đến trục
Trang 43Vì yêu cầu đặt ra là động cơ gắn sẵn bộ mã hoá quay encoder và động cơ kéo tải tầm 700g nên chúng tôi đã lựa chọn động cơ DC Servo GM25-370 DC Geared Motor loại 12VDC 250 vòng/phút với ưu điểm như sau:
- Động cơ tích hợp thêm Encoder hai kênh A,B - Cấu tạo bằng kim loại cho độ bền và ổn định cao.
- Hộp giảm tốc của động cơ có nhiều tỉ số truyền giúp dễ dàng lựa chọn giữa lực kéo và tốc độ.
- Động cơ được sử dụng nguyên liệu chất lượng cao với lõi dây đồng nguyên chất, lá thép 407, nam châm có độ từ tính mạnh,… cho sức mạnh và độ bền vượt trội với các loại giá rẻ khác trên thị trường.
+ Dòng không tải: 150mA.
+ Dòng chịu đựng tối đa khi có tải: 750mA.
+ Điện áp cấp cho Encoder hoạt động: 3.3 – 5 VDC + Cảm biến từ trường Hall, có 2 kênh AB lệch nhau + Đĩa Encoder trả 11 xung/ 1 kênh/ 1 vòng.
33
Trang 44+ Số xung Encoder mỗi kênh trên 1 vòng quay trục chính: 11 x 34 = 374 xung.
Hình 3.6 Động cơ DC Servo GM25-370 DC Geared Motor
ChânKết nối và chức năng
M1 (đỏ) Dây cấp nguồn dương cho động cơ GND (đen) Dây cấp nguồn âm cho động cơ C1/A (vàng) Tín hiệu trả xung kênh A C2/B (xanh lá) Tín hiệu trả xung kênh B VCC (xanh dương) Dây cấp nguồn cho Encoder
M2 (trắng) Dây cấp nguồn âm cho động cơ Bảng 3.3 Bảng kết nối chân của động cơ và encoder
3.3.5 Khối cấp nguồn
Cung cấp nguồn ổn định cho các khối giúp hệ thống hoạt động tốt Có thể cấp nguồn cho hệ thống bằng nhiều cách như pin, nguồn xung tổ ong hoặc adapter chuyển đổi AC-DC,…
Lựa chọn khối cấp nguồn gồm:
- Nguồn gồm 3 pin Panasonic Lithium ion IRC18650 - Hộp đế pin 3 cell 18650.
- Mạch giảm áp chuyển đổi DC – DC LM2596 3A - Công tắc bập bênh 10x15 mm.
- Jack DC đực có dây.
Ưu điểm của khối cấp nguồn đã được chọn:
- Khi sử dụng pin kết hợp với mạch giảm áp sẽ giúp ổn định được một mức điện áp cố định cấp cho hệ thống, phòng trường hợp sụt áp khi pin cạn.
- Sử dụng được linh động, gọn nhẹ hơn so với dùng nguồn tổ ong hay adapter - Lắp đặt, đi dây dễ dàng, không bị vướng dây nguồn khi xe chạy.
34