You are on page 1of 24

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HCM


KHOA ĐIỆN – ĐIỆN TỬ

ĐỒ ÁN 2

ĐIỀU KHIỂN TỰ ĐỘNG

ĐỀ TÀI: THIẾT KẾ MÔ HÌNH ROBOT HAI


BÁNH TỰ CÂN BẰNG
GVHD : PGS. TS. Trương Đình Nhơn
Sinh viên thực hiện :
Đoàn Thị Thùy - 20151574
Nguyễn Trương Hoàng Khải - 20151153

TP. Hồ Chí Minh, T6/2023

Trang
Lời Cảm Ơn
Trong suốt quá trình thực hiện đề tài, mặc dù gặp phải nhiều khó khăn nhưng được sự
giúp đỡ, hỗ trợ kịp thời từ quý Thầy Cô và các bạn nên Đồ án đã hoàn thành đúng tiến độ.
Chúng em xin chân thành cảm ơn thầy PGS. TS. Trương Đình Nhơn đã tận tình hướng dẫn
cũng như chỉ bảo những kinh nghiệm quý báu trong suốt quá trình tìm hiểu, nghiên cứu đề tài.
Chúng mình cũng xin cảm ơn các thành viên trong lớp 201513C đã có những ý kiến
đóng góp, bổ sung, cũng như động viên khích lệ giúp tôi hoàn thành tốt đề tài. Mặc dù tôi đã
cố gắng hoàn thiện được đồ án, nhưng trong quá trình soạn thảo cũng như kiến thức còn hạn
chế nên có thể tồn tại nhiều thiếu sót. Tôi rất mong nhận được sự đóng góp, ý kiến của quý
thầy cô cùng các bạn sinh viên.
Sau cùng tôi xin chúc quý Thầy Cô sức khoẻ, thành công và tiếp tục đào tạo những sinh
viên giỏi đóng góp cho đất nước. Chúc các anh (chị), các bạn sức khỏe, học tập thật tốt để
không phụ công lao các Thầy Cô đã giảng dạy. Tôi xin chân thành cảm ơn!

TP. Hồ Chí Minh, tháng 6, 2023


Sinh viên thực hiện
Nguyễn Trương Hoàng Khải
Đoàn Thị Thùy

Trang
Chương 1. Tổng Quan.

Mục Lục

Contents
Lời Cảm Ơn................................................................................................................................2
Mục Lục......................................................................................................................................3
Chương 1. Tổng Quan...............................................................................................................4
Chương 2. Thiết Kế Phần Cứng...............................................................................................6
Yêu cầu thiết kế..........................................................................................................................6
Hình 2.2. Bảng thông số các loại Arduino thông dụng............................................................7
Hình 2.3. Sơ đồ chân của board Arduino Uno R3....................................................................8
Hình 2.4. Module cảm biến gia tốc MPU-6050 GY-521...........................................................8
Hình 2.5. Sơ đồ nối dây cảm biến MPU-6050 GY-521.............................................................9
Hình 2.6. Sơ đồ mạch điều khiển tốc độ động cơ DC theo nguyên lý cầu H...........................9
Hình 2.7. Mạch điều khiển động cơ DC L298N......................................................................10
Hình 2.8. Sơ đồ nối dây module L298N...................................................................................10
Hình 2.9. Sơ đồ chân của module L298N................................................................................11
Hình 2.10. Động cơ DC giảm tốc JGA25-370 12V 280RPM..................................................11
Hình 2.12. Module bluetooth HC-06.......................................................................................12
Hình 2.12. Sơ đồ nối dây module bluetooth HC-06................................................................12
Hình 2.13. Pin Lithium ion ICR 18650...................................................................................13
Hình 2.14. Sơ đồ nối dây tổng thể của hệ thống.....................................................................13
Bảng 3.1. Danh mục các thiết bị của hệ thống.......................................................................14
Chương 3. Thiết Kế Phần Mềm..............................................................................................15
Hình 3.1. Lưu đồ giải thuật điều khiển chính của hệ thống..................................................16
Hình 3.2. Lưu đồ giải thuật khối giao tiếp giữa xe với smartphone......................................17
Hình 3.3. Lưu đồ giải thuật khối đọc và xử lý tín hiệu tương tự...........................................18
Hình 3.4. Lưu đồ giải thuật khối điều khiển động cơ.............................................................19
Chương 4. Kết Quả Và Thảo Luận........................................................................................20
Hình 4.1. Kết quả phần cứng tầng 1 của xe............................................................................20
Hình 4.2. Kết quả phần cứng tầng 2 của xe............................................................................21
Hình 4.3. Kết quả phần cứng của hệ thống............................................................................21
Chương 5. Kết Luận Và Hướng Phát Triển..........................................................................23
Tài Liệu Tham Khảo...............................................................................................................24

Trang
Chương 1. Tổng Quan.

Chương 1. Tổng Quan


1.1. Mục tiêu đề tài.
Đề tài “Thiết kế mô hình robot hai bánh tự cân bằng vận chuyển hàng hóa” được thực
hiện với các mục tiêu sau:
- Thiết kế, điều khiển được mô hình robot hai bánh tự cân bằng hoàn chỉnh.
- Mô hình được tạo ra có thể tự giữ thăng bằng, mang tải và di chuyển ổn định.
- Hệ thống khi hoạt động có độ vọt lố, sai số xác lập và thời gian đáp ứng nhanh.
- Hệ thống được thiết kế có thể giao tiếp với máy tính, smartphone để điều khiển và
truyền dữ liệu.
1.2. Giới hạn đề tài.
Trong đề tài này, robot được thiết kế chỉ có chức năng tự cân bằng. Các tham số của bộ
điều khiển được lựa chọn để hệ thống có chỉ tiêu chất lượng thỏa yêu cầu đặt ra. Tuy nhiên
việc lựa chọn bộ tham số điều khiển để các chỉ tiêu đạt cực tiểu cũng như các kỹ thuật điều
khiển khác nằm ngoài phạm vi của đề tài.
1.3. Phương pháp nghiêng cứu.
Dựa trên các mô hình lý thuyết robot hai bánh tự cân bằng có sẵn, nhóm thực hiện thiết
kế phần cứng và phần mềm cho hệ thống để hệ thống có thể hoạt động thích nghi với điều kiện
vận hành khi có hàng hóa.
Thiết kế phần cứng gồm có:
- Thiết kế khung sườn cơ khí của mô hình.
- Bố trí và nối dây các thiết bị phần cứng.
Thiết kế phần mềm gồm có:
- Thiết kế chương trình đọc cảm biến.
- Ứng dụng các thuật toán bù trừ giá trị cảm biến.
- Thiết kế thuật toán điều khiển hệ thống.
1.4. Giới thiệu nội dung.
Phần còn lại của đề tài có nội dung như sau:
Chương 2. Thiết kế phần cứng: Dựa trên các yêu cầu cụ thể về phần cứng của hệ thống
và các cơ sở lý thuyết được trình bày ở chương 2, ta tiến hành so sánh và lựa chọn các thiết bị
phù hợp với hệ thống.

Trang
Chương 1. Tổng Quan.

Chương 3. Thiết kế phần mềm: Dựa trên các yêu cầu cụ thể về phần mềm, ta tiến hành
thiết kế phần mềm phù hợp cho hệ thống. Phần mềm bao gồm chương trình chính của hệ
thống và trình điều khiển robot chạy trên nền tảng Android.
Chương 4 và chương 5 lần lượt trình bày các kết quả đạt được về phần cứng và phần
mềm, các vấn đề đã giải quyết và chưa giải quyết được, hướng phát triển và cải tiến của hệ
thống.

Trang
Chương 2. Thiết Kế Phần Cứng.

Chương 2. Thiết Kế Phần Cứng


Yêu cầu thiết kế.
Hệ thống được thiết kế cần thỏa các yêu cầu:
̶ Tự cân bằng và di chuyển ổn định trên địa hình bằng phẳng và mặt phẳng nghiêng
có độ dốc nhỏ.
̶ Giữ thăng bằng ổn định với tải có trọng lượng tối đa 1kg.
̶ Di chuyển được với tải trọng tối đa 0.5kg.
̶ Hệ thống điều khiển được và giám sát được trên máy vi tính hoặc smartphone.
2.1 Sơ đồ khối của hệ thống.
Dựa trên yêu cầu thiết kế và yêu cầu về công nghệ của hệ thống, ta có sơ đồ khối sau:

Hình 2.1. Sơ đồ khối của hệ thống.


Chức năng của các khối trong hệ thống:
̶ Khối nguồn: Cung cấp điện năng cho hệ thống hoạt động ổn định.
̶ Bộ điều khiển trung tâm: Nhận dữ liệu từ cảm biến và khối thu phát tín hiệu, xử lý
tín hiệu nhận được và xuất tín hiệu điều khiển đến khối điều khiển các động cơ.
̶ Khối cảm biến: Phát hiện sự thay đổi đầu vào (góc nghiêng) từ môi trường vật lý
và phản hồi về khối điều khiển trung tâm.
̶ Khối thu phát tín hiệu: Truyền thông để trao đổi dữ liệu giữa hệ thống và máy tính.
̶ Khối điều khiển động cơ: Nhận tín hiệu từ khối điều khiển trung tâm, điều khiển
tốc độ và chiều quay của động cơ.
̶ Khối động cơ: Biến năng lượng điện năng thành cơ năng dựa trên tín hiệu từ khối
điều khiển động cơ, giúp hệ thống không bị ngã khi góc nghiêng thay đổi.

Trang
Chương 2. Thiết Kế Phần Cứng.

2.2 Lựa chọn thiết bị.


2.2.1 Lựa chọn khối điều khiển trung tâm.
Yêu cầu:
̶ Tối thiểu 2 chân có chức năng PWM điều khiển tốc độ hai động cơ.
̶ Có hỗ trợ giao tiếp I2C để giao tiếp với cảm biến góc nghiêng.
̶ Tối thiểu 4 chân có chức năng I/O Digital để điều khiển chiều quay của hai động cơ.
̶ Tối thiểu 1 chân ngắt ngoài INT để giao tiếp với cảm biến góc nghiêng.
̶ Có chức năng truyền nhận dữ liệu (UART).
Như đã phân tích ở trên, trong phạm vi đề tài này chúng ta sẽ chọn module Arduino làm
khối điều khiển trung tâm. Đáp ứng những yêu cầu trên, ta có các lựa chọn như hình 2.2.

Hình 2.2. Bảng thông số các loại Arduino thông dụng.


Dựa trên hình 2.2, để tiết kiệm về chi phí cũng như tránh lãng phí các chức năng không
dùng đến, ta chọn Board Arduino Uno làm bộ xử lý trung tâm cho robot. Thông số kỹ thuật
của board được trình bày ở phần phụ lục.
Sơ đồ chân của board Arduino Uno R3:

Hình 2.3. Sơ đồ chân của board Arduino Uno R3.

Trang
Chương 2. Thiết Kế Phần Cứng.

Lựa chọn cảm biến.


Yêu cầu:
̶ Là cảm biến có khả năng xác định góc nghiêng.
̶ Giới hạn góc đo tối thiểu ± 90o.
̶ Sai số góc đo tối đa ±0.20.
̶ Truyền dữ liệu qua giao tiếp I2C.
Đáp ứng những yêu cầu trên, ta có các lựa chọn sau:
̶ Module cảm biến gia tốc MPU-6050 GY-521 tích hợp gia tốc 3 trục + con quay hồi
chuyển 3 trục. MPU-6050 còn có 1 đơn vị tăng tốc phần cứng chuyên xử lý tín hiệu (Digital
Motion Processor - DMP) do cảm biến thu thập và thực hiện các tính toán cần thiết. Điều
này hỗ trợ đáng kể trong xử lý tính toán của vi điều khiển, cải thiện tốc độ xử lý và cho ra
phản hồi nhanh hơn.

Hình 2.4. Module cảm biến gia tốc MPU-6050 GY-521.


Việc xác định góc nghiêng sẽ chính xác hơn khi ta kết hợp sử dụng cả hai giá trị
Acceleration (gia tốc hướng) và Gyroscopes (vận tốc góc quay) để tính toán. Để tiết kiệm về
chi phí, xác định chính xác góc nghiêng robot và không gây lãng phí các đại lượng đo được
không cần dùng đến, ta chọn Module cảm biến gia tốc MPU-6050 GY-521 (6 DOF) làm cảm
biến nhận biết góc nghiêng của hệ thống. Ngoài các ưu điểm vừa nêu, so với các cảm biến góc
nghiêng khác thì MPU-6050 còn tích hợp một đơn vị tăng tốc phần cứng chuyên xử lý tín hiệu
(Digital Motion Processor - DMP) do cảm biến thu thập, thực hiện các tính toán cần thiết
nhằm hỗ trợ cho việc xác định góc nghiêng của robot chính xác hơn.
Thông số kỹ thuật của cảm biến MPU-6050 GY-521 được trình ở phần phụ lục.
Sơ đồ chân của cảm biến MPU-6050 GY-521 kết nối với board Arduino Uno R3:

Trang
Chương 2. Thiết Kế Phần Cứng.

Hình 2.5. Sơ đồ nối dây cảm biến MPU-6050 GY-521.


2.2.2 Lựa chọn khối điều khiển động cơ.
Theo phân tích ở Chương 2, phương pháp điều khiển động cơ được áp dụng trong đề tài
này là kết hợp điều chế độ rộng xung (PWM) và cầu H. Dựa trên phương pháp trên, ta có các
mạch điều khiển sau:
- Mạch cầu H dùng 4 Mosfet kênh N:

Hình 2.6. Sơ đồ mạch điều khiển tốc độ động cơ DC theo nguyên lý cầu H.
- Module điều khiển tốc độ động cơ DC tích hợp sẵn IC cầu H:
o Ưu điểm: Có thể điều khiển nhiều động cơ trên cùng một module. Giá thành rẻ và
mạch nhỏ gọn, đơn giản trong việc đấu nối.
o Nhược điểm: Đa số công suất của mạch nhỏ, chỉ sử dụng cho động cơ công suất nhỏ,
điện áp thấp.
Yêu cầu của mạch điều khiển động cơ tích hợp sẵn IC cầu H:
̶ Có tối thiểu 2 kênh cho 2 động cơ trái, phải.
̶ Điều khiển được tốc độ động cơ theo phương pháp PWM.

Trang
Chương 2. Thiết Kế Phần Cứng.

̶ Điều khiển được chiều quay của động cơ qua mạch cầu H.
̶ Công suất tối thiểu mỗi cầu là 25W.
Đáp ứng những yêu cầu trên, ta có các lựa chọn sau:
̶ Mạch điều khiển động cơ DC L298N: Có khả năng điều khiển 2 động cơ DC, trên
IC có gắn tản nhiệt chống nóng, giúp IC có thể điều khiển với dòng đỉnh đạt 2A. IC L298N
được gắn với các đi ốt trên board giúp bảo vệ vi xử lý chống lại các dòng điện cảm ứng từ
việc khởi động/tắt động cơ. Mạch có công suất tối đa mỗi cầu là 25W, có tích hợp IC nguồn
7805 giúp cấp nguồn 5VDC cho các module khác.

Hình 2.7. Mạch điều khiển động cơ DC L298N.


Sơ đồ chân của module L298N kết nối với board arduino và động cơ được thực hiện như
hình 3.11.

Hình 2.8. Sơ đồ nối dây module L298N.

Trang 10
Chương 2. Thiết Kế Phần Cứng.

Hình 2.9. Sơ đồ chân của module L298N.


2.2.3 Lựa chọn khối động cơ.
Yêu cầu:
̶ Công suất trung bình của động cơ không quá 25W.
̶ Lực kéo moment định mức tối thiểu 0.25KG.CM (với hệ số ma sát lăn là 0.08).
̶ Tốc độ định mức không tải tối thiểu 200RPM (vòng trên phút).
Dựa trên phân tích ở Chương 2, ta sẽ chọn động cơ DC truyền thống để làm động cơ
truyền động. Đáp ứng những yêu cầu trên, ta có các lựa chọn sau:
̶ Động cơ DC giảm tốc JGA25-370 có cấu tạo bằng kim loại cho độ bền và độ ổn định
cao. Động cơ sử dụng điện áp 12VDC, tốc độ không tải 280RPM, dòng điện không tải:
60mA, dòng điện chịu đựng tối đa khi có tải: 1.3A, mômen xoắn tối đa: 2kg.cm.

Hình 2.10. Động cơ DC giảm tốc JGA25-370 12V 280RPM.


Dựa trên các loại động cơ vừa nêu, để tiết kiệm chi phí, công suất tiêu thụ và cho hệ
thống hoạt động “mượt” hơn, ta chọn động cơ JGA25-370 12V 280RPM (có thông số gần
nhất với các yêu cầu đã nêu) làm động cơ truyền động cho hệ thống. Thông số kỹ thuật của
động cơ giảm tốc JGA25-370 12V 280RPM được trình bày ở phần phụ lục.
2.2.4 Lựa chọn khối thu phát tín hiệu.
Yêu cầu:
̶ Giao tiếp được theo phương thức UART (TX, RX).
̶ Giao tiếp không dây với thiết bị điều khiển.
Đáp ứng các yêu cầu trên, ta có các lựa chọn sau:
̶ Module bluetooth HC06 được thiết kế để cho thể hoạt động từ mức điện áp 3.3V đến
5V. Dòng điện khi hoạt động của module là 30 mA khi Pairing, sau khi pairing hoạt động
truyền nhận bình thường 8 mA.

Trang 11
Chương 2. Thiết Kế Phần Cứng.

Hình 2.12. Module bluetooth HC-06.


Dựa trên các yêu cầu đã nêu, để tiết kiệm về điện năng tiêu thụ, đơn giản trong việc sử
dụng và kết nối, ta chọn module Bluetooth HC-06 khối truyền nhận dữ liệu cho hệ thống.
Thông số kỹ thuật của module bluetooth HC-06 được trình bày ở phần phụ lục.
Sơ đồ chân của module bluetooth HC-06 kết nối với board Arduino Uno R3:

Hình 2.12. Sơ đồ nối dây module bluetooth HC-06.


2.2.5 Lựa chọn nguồn nuôi cho toàn hệ thống.
Yêu cầu:
̶ Độ an toàn cao.
̶ Kích thước nhỏ gọn.
̶ Điện áp ngõ ra 12V.
̶ Dòng xả cho phép 5000mA.
̶ Dung lượng tối thiểu 1000mAh.
Đáp ứng các yêu cầu trên, ta có các lựa chọn sau:
̶ 3 cell Pin Lithium ion ICR 18650 mắc nối tiếp: Mỗi cell pin có dung lượng chuẩn
2000mAh, điện áp trung bình: 3.7V, điện áp sạc đầy: 4.2V, điện áp cắt xả: 3.0V, dòng xả
liên tục tối đa 6A, dòng xả tức thời tối đa: 15A, nội trở: 18mΩ. Pin có tích hợp mạch bảo vệ
tự ngắt khi quá nhiệt hoặc sạc quá ngưỡng. Pin có kích thước: Φ 18 mm x 65 mm, khối
lượng: 45g.

Trang 12
Chương 2. Thiết Kế Phần Cứng.

Hình 2.13. Pin Lithium ion ICR 18650.


Dựa trên các lựa chọn vừa nêu, để tiết kiệm về chi phí mà vẫn đáp ứng được các yêu cầu
đã đặt ra, ta chọn cách mắc nối tiếp 3 cell Pin Lithium ion ICR 18650 thành khối pin 3S để
cung cấp nguồn cho toàn hệ thống.
2.3 Sơ đồ nối dây tổng thể của hệ thống.

Hình 2.14. Sơ đồ nối dây tổng thể của hệ thống.


Khối chức Tên linh Trọng Số lượng Giá thành
STT Kích thước
năng kiện lượng (pcs) (/pcs)

Bộ điều
Arduino 68.6mm x
1 khiển trung 25g 1 205.000 đ
Uno R3 53.4mm
tâm

MPU-6050 14mm x
2 Cảm biến 3g 1 70.000 đ
GY521 21mm

3 Điều khiển Module 43mm x 30g 1 40.000 đ


động cơ L298N 43mm x

Trang 13
Chương 2. Thiết Kế Phần Cứng.

27mm

Đường
JGA25 370
kính trục
4 Động cơ 12V 100g 2 130.000 đ
động cơ:
281RPM
4mm

Module 28mm x
Thu phát
5 bluetooth 15mm x 3g 1 110.000đ
tín hiệu
HC-06 2.35mm

Pin
Lithium Φ 18 mm x
6 Nguồn 45g 3 40.000đ
Ion 18650 65 mm,
3.7V

Bảng 3.1. Danh mục các thiết bị của hệ thống.

Trang 14
Chương 3. Thiết Kế Phần Mềm.

Chương 3. Thiết Kế Phần Mềm


3.1 Yêu cầu thiết kế.
- Đọc và xử tín hiệu tương tự từ cảm biến góc nghiêng.
- Giao tiếp, truyền nhận dữ liệu với smartphone.
- Tính toán sai số giữa góc nghiêng của xe và giá trị đặt.
- Tính toán các giá trị điều khiển động cơ qua bộ điều khiển PID.
- Xuất tín hiệu điều khiển chiều quay và tốc độ động cơ.
3.2 Giải thuật điều khiển.
Như đã trình bày ở chương 2, dựa trên nền tảng của thuật toán điều khiển PID và giải
thuật cân bằng, ta xây dựng được lưu đồ của chương trình chính như sau:

Trang 15
Chương 3. Thiết Kế Phần Mềm.

Hình 3.1. Lưu đồ giải thuật điều khiển chính của hệ thống.
3.1.1 Cài đặt giá trị ban đầu.
Để xe có thể tự giữ thăng bằng ngay cả khi không có tín hiệu điều khiển từ smartphone,
ta phải cài đặt các giá trị ban đầu cho xe như: Góc đặt mặc định khi xe cân bằng
(originalSetpoint), góc đặt của xe (setpoint), các giá trị Kp, Ki, Kd của bộ điều khiển PID, chế
độ hoạt động (mode).
Ở đây, ta chọn góc đặt mặc định lúc cân bằng của xe (originalSetpoint) là 172.3 0 thay
cho 1800 để bù trừ cho sai số trong việc lắp đặt cảm biến và bố trí các bộ phận khác trên khung
xe. Các giá trị Kp, Ki, Kd của bộ điều khiển PID được điều chỉnh thay đổi theo chế độ hoạt
động của xe do chất lượng điều khiển của hệ thống phụ thuộc vào khối lượng hàng hóa ta đặt
lên xe. Để phù hợp với mô hình, ta chia chế độ hoạt động của xe thành hai chế độ cố định là
chế độ không tải và chế độ có tải và chọn chế độ không tải làm chế độ hoạt động ban đầu của
xe.
3.1.2 Giao tiếp với smartphone.
Hệ thống được điều khiển bằng smartphone, thông qua giao tiếp bluetooth V2.0. Qua
thiết bị điều khiển, ta có thể điều chỉnh và kiểm soát một số thông số của hệ thống như: Góc
đặt mặc định khi xe cân bằng (originalSetpoint), góc đặt của xe (setpoint), các thông số của bộ
điều khiển PID, chế độ hoạt động của xe. Ngoài ra, thông qua smartphone, ta còn có thể điều
khiển xe di chuyển theo hướng mong muốn.

Trang 16
Chương 3. Thiết Kế Phần Mềm.

Hình 3.2. Lưu đồ giải thuật khối giao tiếp giữa xe với smartphone.
3.1.3 Đọc và xử lý tín hiệu tương tự.

Trang 17
Chương 3. Thiết Kế Phần Mềm.

Hình 3.3. Lưu đồ giải thuật khối đọc và xử lý tín hiệu tương tự.
Hình 3.3 thể hiện thuật toán giao tiếp giữa vi điều khiển với cảm biến MPU-6050, xử lý
và tính toán trực tiếp góc nghiêng dựa trên dữ liệu nhận được từ cảm biến. Tuy nhiên, với cách
đọc thông thường này kết quả thu được thường bị ảnh hưởng lớn bởi nhiễu (bị trôi dưới tác
động của các yếu tố môi trường như: Nhiệt độ, điện trường, từ trường,… hoặc bản thân tốc độ
biến đổi của các bộ ADC), dẫn đến chất lượng điều khiển cũng như tuổi thọ của các động cơ
bị giảm đi. Vì vậy, yêu cầu đưa ra các giải pháp giảm nhiễu là rất quan trọng và cần thiết.
Một số nghiên cứu hiện nay đã đưa ra các phương pháp tính toán, thuật toán ước lượng
trạng thái hệ thống từ các giá trị “thô” như: Sử dụng các bộ lọc số đơn giản (Butterworth), bộ
lọc Complementary, bộ lọc Kalman, đặc biệt là khối xử lý chuyển động số (DMP – Digital
Motion Processor) được tích hợp sẵn trong chip MPU với nhiều kết quả riêng lẻ, tích cực.
Trong đó, khối xử lý chuyển động số (DMP) cho thấy được sự đơn giản trong cách sử dụng
mà vẫn khống chế được nhiễu tác động, cải thiện đáng kể chất lượng điều khiển của hệ thống.
Vì vậy, giải pháp hạn chế nhiễu được chọn trong phạm vi đề tài này là ứng dụng khối xử lý
chuyển động số DMP được tích hợp sẵn trên cảm biến.
DMP là một dạng fusion sensor được hãng Invensense tích hợp sẵn trên cảm biến MPU-
6050. Trong chương trình này, chức năng của bộ DMP được ứng dụng đến là kết hợp hai giá
trị Gyroscope và Accelerometer nhận được từ cảm biến để tính toán, bù trừ với nhau để hạn
chế được nhiễu tác động, đưa ra được kết quả chính xác về góc nghiêng.

Trang 18
Chương 3. Thiết Kế Phần Mềm.

3.1.4 Tính toán các giá trị điều khiển động cơ qua bộ điều khiển PID.
Ngõ ra của bộ điều khiển PID được tính theo các bước sau:
- Sai số góc nghiêng: error = góc đo được từ cảm biến – 172.30
- Ngõ ra của khâu tỉ lệ: pTerm = Kp*error
- Tích phân sai số theo thời gian: integrated_error += error
- Ngõ ra của khâu tích phân: iTerm = constrain(Ki*integrated_error, -255, 255)
- Ngõ ra của khâu vi phân: dTerm = Kd*(error - last_error)
- Ngõ ra của bộ điều khiển PID: speed = constrain(pTerm + iTerm + dTerm, -255, 255)
Dựa trên thực nghiệm cho thấy hệ thống hoạt động ổn định với thời gian lấy mẫu của bộ
điều khiển PID là 7ms khi robot di chuyển và 5ms khi robot đứng yên.
3.1.5 Xuất tín hiệu điều khiển chiều quay và tốc độ động cơ.
Tốc độ và chiều quay của các động cơ được điều khiển dựa trên ngõ ra của bộ điều khiển
PID, lưu đồ giải thuật khối điều khiển động cơ được thể hiện như hình 3.4.

Hình 3.4. Lưu đồ giải thuật khối điều khiển động cơ.
3.2 Chương trình điều khiển.
Chương trình điều khiển được soạn thảo trên phần mềm Arduino IDE phiên bản 1.8.13
dựa trên ngôn ngữ lập trình C.

Trang 19
Chương 4. Kết Quả Và Thảo Luận.

Chương 4. Kết Quả Và Thảo Luận


4.1 Kết quả phần cứng.
Các thiết bị của hệ thống được chia làm hai loại là thiết bị điều khiển và thiết bị công
suất. Các thiết bị công suất khi hoạt động thường tiêu thụ lượng điện năng lớn hơn các thiết bị
khác nên việc thiết bị nóng lên là điều không thể tránh khỏi. Các thiết bị công suất nóng lên
ảnh hưởng nhiều đến tuổi thọ của mạch điện bên trong thiết bị, thậm chí gây ra hỏng mạch
hoặc nguy hiểm hơn là cháy nổ trên hệ thống. Vì vậy, nhóm thiết bị công suất cần được bố trí
riêng để tránh trường hợp cháy nổ ảnh hưởng đến các thiết bị có giá trị khác (các thiết bị điều
khiển).

Hình 4.1. Kết quả phần cứng tầng 1 của xe.


Các thiết bị công suất được bố trí ở tầng 1 như hình 4.1 để thuận tiện cho việc kết nối với
các động cơ được gắn bên dưới tầng. Bên trái tầng là công tắc hai chiều ON/OFF giúp người
điều khiển có thể kết nối và ngắt nguồn điện cấp vào hệ thống dễ dàng hơn. Khối nguồn của
hệ thống được bố trí ở nửa bên trái, bao gồm 3 viên pin 18650 được đặt trong đế theo kết nối

Trang 20
Chương 4. Kết Quả Và Thảo Luận.

nối tiếp. Cuối cùng bên phải là mạch điều khiển động cơ L298N dùng để điều khiển hai động
cơ bên dưới tầng.

Hình 4.2. Kết quả phần cứng tầng 2 của xe.


Các thiết bị điều khiển được bố trí ở tầng 2 như hình 4.2, bao gồm mạch điều khiển trung
tâm Arduino Uno R3, mạch giao tiếp bluetooth HC-06 và cảm biến MPU-6050.

Hình 4.3. Kết quả phần cứng của hệ thống.


Khung xe được thiết kế bằng nhựa mica chất lượng cao, gồm có ba tầng là tầng thiết bị
công suất, tầng thiết bị điều khiển và tầng chứa hàng hóa trên cùng. Các tầng được cố định với

Trang 21
Chương 4. Kết Quả Và Thảo Luận.

nhau bởi các trụ đồng được bố trí ở bốn góc. Hai động cơ và bánh xe được bắt chặt vào gá
động cơ và gắn cố định vào bên dưới tầng 1. Sau khi bố trí xong, các thiết bị được kết nối dây
với nhau theo hình 3.22 và kết quả phần cứng của nhóm được hoàn thiện như hình 4.3, có tổng
kích thước 19cmx6cmx15cm.
4.2 Kết quả phần mềm.

Trang 22
Chương 5. Kết Luận Và Hướng Phát Triển.

Chương 5. Kết Luận Và Hướng Phát Triển


5.1 Kết luận.
5.1.1 Công việc đã thực hiện được.
Trong khoảng thời gian 4 tháng thực hiện hiện đề tài, tôi đã giải quyết được các công
việc:
- Thiết kế, điều khiển được mô hình robot hai bánh tự cân bằng hoàn chỉnh. Mô hình
được tạo ra có thể tự giữ thăng bằng, mang tải và di chuyển trên địa hình bằng phẳng.
- Hệ thống được thiết kế có thể giao tiếp với máy tính, smartphone để điều khiển và
truyền dữ liệu.
5.1.2 Hạn chế của đề tài.
Bên cạnh những nội dung đã đạt được, hệ thống vẫn tồn tại những hạn chế sau:
- Chịu tác động của ngoại lực còn yếu, quá trình tự cân bằng có xảy ra vọt lố.
- Không thể di chuyển trên địa hình dốc, lồi lõm.
- Không thể di chuyển với tốc độ cao.
- Chỉ hoạt động ổn định với tải có khối lượng dưới 500g.
- Không thể tự giữ vị trí khi bị ngoại lực tác động.
- Khoảng cách điều khiển ngắn (<10m).
5.2 Hướng phát triển.
Các hướng phát triển thêm của hệ thống:
- Bổ sung encorder cho động cơ để robot có thể tự giữ vị trí khi bị ngoại lực tác động.
- Tích hợp thêm cảm biến đo khoảng cách để xe có thể tự tránh vật cản.
- Tích hợp camera và micro để giao tiếp với bệnh nhân và điều khiển hướng di chuyển
thông qua dữ liệu hình ảnh nhận được.
- Phát triển thuật toán điều khiển PID thích nghi để robot có thể vận hành trơn tru với
các điều kiện thực tế khác nhau.
- Nâng cấp giao tiếp điều khiển qua sóng Wifi nội bộ.

Trang 23
Tài Liệu Tham Khảo
[1] ThS. Nguyễn Trọng Thắng, “Máy điện đặc biệt”, chương 6, trang 15-23, trường ĐH Sư
phạm Kỹ thuật TP. HCM, 2006.
[2] ThS. Dương Ngọc Pháp, “Các phương pháp ước lượng cho cảm biến đo lường quán tính
ứng dụng trong robot hai bánh tự cân bằng”, chương 1, trang 8-12, trường CĐ Công nghệ
thông tin, ĐH Đà Nẵng, 2017.
[3] https://www.msdmanuals.com/vi/chuy%C3%AAn-gia/resourcespages/global-spread-of-
covid-19
[4] https://khcn.haui.edu.vn/media/29/uffile-upload-no-title29876.pdf
[5] https://tailieu.vn/doc/dong-co-dien-mot-chieu-va-cac-phuong-phap-dieu-khien-toc-do-
175667.html
[6] https://khotrithucso.com/doc/p/dieu-khien-toc-do-dong-co-dc-theo-phuong-phap-dieu-
rong-xung-257520
[7] https://mechasolution.vn/Blog/bai-21-cam-bien-gia-toc-goc-nghieng-mpu6050
[8] http://arduino.vn/result/5473-robot-hai-banh-tu-can-bang-2-wheel-self-balancing-robot
[9] https://www.ebookbkmt.com/2020/08/robot-2-banh-tu-can-bang-thuat-toan-pid.html
[10] http://arduino.vn/tags/hc-06

Trang 24

You might also like