Professional Documents
Culture Documents
ĐỒ ÁN 2
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!
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.
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.
Trang
Chương 2. Thiết Kế Phần Cứng.
Trang
Chương 2. Thiết Kế Phần Cứng.
Trang
Chương 2. Thiết Kế Phần Cứng.
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.
Trang 10
Chương 2. Thiết Kế Phần Cứng.
Trang 11
Chương 2. Thiết Kế Phần Cứng.
Trang 12
Chương 2. Thiết Kế Phần Cứng.
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
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
Trang 14
Chương 3. Thiết Kế Phần Mềm.
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.
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.
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.
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