Tải bản đầy đủ (.pdf) (96 trang)

Nghiên cứu, thiết kế và chế tạo táp lô xe tự hành

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

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH

ĐỒ ÁN TỐT NGHIỆP
NGÀNH CNKT Ô TÔ

NGHIÊN CỨU, THIẾT KẾ VÀ CHẾ TẠO
TÁP LÔ XE TỰ HÀNH

GVHD: THS. NGUYỄN THÀNH TUYÊN
SVTH: LÊ NGUYÊN KHANG
NGUYỄN HỮU THỊNH

SKL009182

Tp.Hồ Chí Minh, tháng 8/2022


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
NGÀNH CÔNG NGHỆ KỸ THUẬT Ô TÔ
---o0o---

ĐỒ ÁN TỐT NGHIỆP

NGHIÊN CỨU, THIẾT KẾ VÀ CHẾ
TẠO TÁP LÔ XE TỰ HÀNH
GVHD : THS. NGUYỄN THÀNH TUYÊN
SVTH : LÊ NGUYÊN KHANG
MSSV : 18145149


SVTH : NGUYỄN HỮU THỊNH
MSSV : 18145251
LỚP : 18145CL2B

Tp. Hồ Chí Minh, tháng 08 năm 2022


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP. HỒ CHÍ MINH
KHOA ĐÀO TẠO CHẤT LƯỢNG CAO
NGÀNH CÔNG NGHỆ KỸ THUẬT Ô TÔ
---o0o---

ĐỒ ÁN TỐT NGHIỆP

NGHIÊN CỨU, THIẾT KẾ VÀ CHẾ
TẠO TÁP LÔ XE TỰ HÀNH
GVHD : THS. NGUYỄN THÀNH TUYÊN
SVTH : LÊ NGUYÊN KHANG
MSSV : 18145149
SVTH : NGUYỄN HỮU THỊNH
MSSV : 18145251
LỚP : 18145CL2B

Tp. Hồ Chí Minh, tháng 08 năm 2022


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
----***----


Tp. Hồ Chí Minh, ngày…tháng…năm 2022

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ và tên sinh viên: Lê Nguyên Khang

MSSV: 18145149

Nguyễn Hữu Thịnh

MSSV: 18145251

Ngành: Công nghệ kỹ thuật ô tô

Lớp: 18145CL2B

Giảng viên hướng dẫn: ThS. Nguyễn Thành Tuyên

ĐT: 0392409518

Ngày nhận đề tài:

Ngày nộp đề tài: 11/08/2022

26/02/2022

1. Tên đề tài: Nghiên cứu, thiết kế và chế tạo Táp Lô xe tự hành.
2. Các số liệu, tài liệu ban đầu: Tài liệu về mạng CAN, tài liệu về Raspberry Pi 4.
3. Nội dung thực hiện đề tài:
- Tìm hiểu hệ thống hiểu thị thơng tin trên xe.
- Tìm hiểu về cơ sở lý thuyết về mạng CAN, giao tiếp SPI.

- Thiết kế giao diện Táp Lô xe bằng phần mềm QT designer.
- Thiết kế khung Dashboard bằng phần mềm Solidworks.
- Hồn thiện hệ thống hiển thị thơng tin trên Táp Lô trên xe tự hành.
4. Sản phẩm:
- 1 quyển thuyết minh đề tài.
- Mơ hình hệ thống hiển thị thơng tin trên xe tự hành.

XÁC NHẬN CỦA TRƯỞNG NGÀNH

GIẢNG VIÊN HƯỚNG DẪN


CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
----***----

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Họ và tên sinh viên: Lê Nguyên Khang
Nguyễn Hữu Thịnh

1.

2.

3.

4.
5.
6.


MSSV: 18145149
MSSV: 18145251

Ngành: Công nghệ kỹ thuật ô tô
Tên đề tài: Nghiên cứu, thiết kế và chế tạo Táp Lô xe tự hành
Họ và tên Giáo viên hướng dẫn: ThS. Nguyễn Thành Tuyên
NHẬN XÉT
Về nội dung đề tài & khối lượng thực hiện:
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
Ưu điểm:
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
Khuyết điểm:
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
Đề nghị cho bảo vệ hay khơng?
......................................................................................................................................
Đánh giá loại:
......................................................................................................................................
Điểm: ………………. (Bằng chữ: .............................................................................. )
………………………………………………………………………………………...
Tp. Hồ Chí Minh, ngày tháng năm 2022
Giáo viên hướng dẫn
(Ký & ghi rõ họ tên)



CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
----***----

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Họ và tên sinh viên: Lê Nguyên Khang
Nguyễn Hữu Thịnh

MSSV: 18145149
MSSV: 18145251

Ngành: Công nghệ kỹ thuật ô tô
Tên đề tài: Nghiên cứu, thiết kế và chế tạo Táp Lô xe tự hành
Họ và tên Giáo viên phản biện: ThS. Lê Quang Vũ
NHẬN XÉT
1. Về nội dung đề tài & khối lượng thực hiện:
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
2. Ưu điểm:
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
......................................................................................................................................
3. Khuyết điểm:
......................................................................................................................................
......................................................................................................................................

......................................................................................................................................
4. Đề nghị cho bảo vệ hay không?
......................................................................................................................................
5. Đánh giá loại:
......................................................................................................................................
6. Điểm: ………………. (Bằng chữ: .............................................................................. )
......................................................................................................................................
Tp. Hồ Chí Minh, ngày tháng năm 2022
Giáo viên phản biện
(Ký & ghi rõ họ tên)


LỜI CẢM ƠN
Lời đầu tiên, nhóm em xin chân thành cảm ơn tồn thể q thầy cơ trường
Đại Học Sư Phạm Kỹ Thuật Thành phố Hồ Chí Minh, đặc biệt các q thầy cơ
Khoa Cơ Khí Động Lực đã nhiệt tình giảng dạy và truyền đạt những kiến thức
hết sức quý báu cho chúng em trong suốt thời gian học tập tại trường.
Nhóm em đặc biệt cảm ơn thầy Nguyễn Thành Tuyên – giảng viên hướng
dẫn đã nhiệt tình hỗ trợ, định hướng và gợi ý cho nhóm trong quá trình thực hiện
để hồn thành tốt đề tài với những hướng mới hơn.
Một lần nữa, chúng em xin chân thành cảm ơn và kính chúc q thầy cơ
Trường Đại Học Sư Phạm Kỹ Thuật Thành phố Hồ Chí Minh nói chung, q thầy
cơ khoa Cơ Khí Động Lực nói riêng dồi dào sức khỏe, niềm vui và thành công
trong công việc giảng dạy và nghiên cứu của mình.

Tp. Hồ Chí Minh, ngày 15 tháng 07 năm 2022
Nhóm sinh viên thực hiện

Lê Nguyên Khang_Nguyễn Hữu Thịnh
i



TÓM TẮT
Cùng với sự phát triển mạnh mẽ của ngành công nghiệp ô tô, xe tự hành cũng
sẽ trở thành phương tiện được ứng dụng rộng rãi trong tương lai gần. Nhận thấy sự
cần thiết trong việc nghiên cứu và phát triển ơ tơ tự hành, nhóm đã đề xuất với giáo
viên hướng dẫn về đề tài liên quan đến lĩnh vực này. Cụ thể là hệ thống hiển thị thơng
tin trên mơ hình xe tự hành.
Đi cùng với sự thay đổi ngày càng hiện đại của các thiết bị trên xe, hệ thống
Táp Lô cũng dần dần được cải thiện. Từ hiển thị cơ sang hiển thị điện tử, khả năng
đáp ứng nhanh và chính xác hơn trước, cho phép người sử dụng thay đổi giao diện
khi xe hoạt động ở các chế độ khác nhau.
Để kết nối các tín hiệu đầu vào và cơ cấu chấp hành với màn hình hiển thị
thơng tin cần thơng qua mạng CAN và giao tiếp SPI. Nhóm đã nghiên cứu thiết kế
Táp Lơ bằng phần mềm Qt Designer, thiết kế mơ hình mô phỏng một Dashboard để
hiển thị thông tin bằng việc giao tiếp CAN giữa 2 MCP 2515 và giao tiếp giữa
Raspberry Pi 4 với Arduino Uno để hiển thị lên LCD 7inch.

ii


MỤC LỤC
LỜI CẢM ƠN ………………………………………………………………………i
TÓM TẮT .…………..…………………………………………………………… ii
MỤC LỤC ..…..…………………………………………………………………. iii
DANH MỤC CÁC TỪ VIẾT TẮT ........................................................................ vi
DANH MỤC CÁC BẢNG BIỂU ........................................................................... vii
DANH MỤC HÌNH ẢNH ..................................................................................... viii
Chương 1. TỔNG QUAN ĐỀ TÀI .......................................................................... 1
1.1. Lịch sử vấn đề nghiên cứu ............................................................................... 1

1.2. Tính cấp thiết của đề tài ................................................................................... 1
1.3. Mục tiêu của đề tài ........................................................................................... 1
1.4. Đối tượng và phạm vi nghiên cứu .................................................................... 1
1.4.1. Đối tượng nghiên cứu ................................................................................ 1
1.4.2. Phạm vi nghiên cứu ................................................................................... 2
1.5. Phương pháp nghiên cứu.................................................................................. 2
1.6. Giới hạn đề tài .................................................................................................. 2
1.7. Nội dung thực hiện ........................................................................................... 2
1.8. Bố cục của đồ án: ............................................................................................. 2
Chương 2. CƠ SỞ LÍ THUYẾT .............................................................................. 3
2.1. Hệ thống hiển thị thông tin trên ô tô ................................................................ 3
2.1.1. Tổng quát về hệ thống hiển thị thông tin trên ô tô .................................... 3
2.2. Tổng quan về mạng CAN ................................................................................ 5
2.2.1. Lịch sử phát triển mạng CAN .................................................................... 5
2.2.2. Đặc điểm của mạng CAN .......................................................................... 6
2.2.2.1. Một số khái niệm .................................................................................... 6
2.2.2.2. Tốc độ truyền dữ liệu .............................................................................. 6
2.2.2.3. Giá trị của Bus CAN ............................................................................... 7
2.2.2.4. Cơ chế giao tiếp .................................................................................... 10
2.2.2.5. Cấu trúc của mạng CAN [4] ................................................................... 10
2.2.2.6. Cấu trúc phân lớp .................................................................................. 11
2.2.2.7. Cấu trúc bức điện .................................................................................. 12
2.3. Giao tiếp SPI .................................................................................................. 21
iii


Chương 3. SƠ LƯỢC VỀ PHẦN CỨNG VÀ PHẦN MỀM............................... 22
3.1. Sơ lược về phần mềm được sử dụng .............................................................. 22
3.1.1. Giới thiệu về phần mềm Arduino IDE .................................................... 22
3.1.2. Giới thiệu về phần mềm Python .............................................................. 22

3.1.3. Giới thiệu phần mềm thiết kế Qt Designer .............................................. 23
3.1.4. Giới thiệu phần mềm Adobe Illustrator ................................................... 24
3.1.5. Giới thiệu phần mềm Solidworks ............................................................ 24
3.1.6. Giới thiệu về phần mềm Pycharm ........................................................... 25
3.2. Sơ lược về phần cứng được sử dụng .............................................................. 26
3.2.1. Arduino Uno ............................................................................................ 26
3.2.2. MCP 2515 ................................................................................................ 28
3.2.3. Raspberry Pi 4 .......................................................................................... 29
3.2.4. Màn hình LCD ......................................................................................... 31
3.2.5. Mạch Waveshare UPS HAT For Raspberry Pi ....................................... 32
3.2.7. Cảm biến nhiệt độ DHT 11 ...................................................................... 33
3.2.8. Cảm biến tốc độ ....................................................................................... 34
Chương 4. THIẾT KẾ, THỰC NGHIỆM MƠ HÌNH HỆ THỐNG HIỂN THỊ
THÔNG TIN TRÊN XE TỰ HÀNH..................................................................... 35
4.1. Thiết kế đồ họa. .............................................................................................. 35
4.1.1. Tham khảo ý tưởng và xây dựng layout .................................................. 35
4.1.2. Thiết kế giao diện cơ bản bằng Qt Designer ........................................... 37
4.1.3. Sử dụng python để thiết kế vòng tròn tốc độ và dung lượng pin ............ 38
4.2. Thiết lập truyền tín hiệu ................................................................................. 42
4.2.1. Chương trình truyền nhận tín hiệu mơ phỏng giao tiếp CAN ................. 42
4.2.2. Chương trình Python cho Raspberry Pi 4 ................................................ 45
4.3. Thiết kế khung Táp Lô bằng phần mềm Solidworks. .................................... 47
4.4 Mơ hình thực nghiệm ...................................................................................... 49
Chương 5. KẾT QUẢ THỰC NGHIỆM VÀ ĐÁNH GIÁ
MƠ HÌNH TÁP LƠ XE TỰ HÀNH ..................................................................... 53
5.1. Đánh giá các thiết bị phần cứng. .................................................................... 53
5.2 Kết quả thực nghiệm khi xe đứng yên tại chỗ ................................................ 54
5.3 Kết quả thực nghiệm khi xe chạy trên đường và ngoài trời. ........................... 56
Chương 6. KẾT LUẬN VÀ KIẾN NGHỊ ............................................................. 58
iv



6.1. Kết luận .......................................................................................................... 58
6.1.1. Kết luận .................................................................................................... 58
6.1.2. Hạn chế của đề tài .................................................................................... 58
6.2. Kiến nghị ........................................................................................................ 58
TÀI LIỆU THAM KHẢO...................................................................................... 59
PHỤ LỤC ................................................................................................................ 60

v


DANH MỤC CÁC TỪ VIẾT TẮT
CAN: Control Area Network
LCD: Liquid Crystal Display
OLED: Organic Light-Emiting Diode
ACC: Adaptive Cruise Control
ESP: Electronic Stability Program
USB: Univeral Serial Bus
MISO: Master Input – Slave Output
MOSI: Master Output – Slave Input
SS: Slave Select
SCK: Serial Clock
SPI: Serial Peripheral Bus

vi


DANH MỤC CÁC BẢNG BIỂU
Bảng 2.1 Giá trị điện áp trên hai dây CAN H và CAN L ........................................ 10

Bảng 3.1 Các thông số của Arduino Uno R3 ........................................................... 27
Bảng 3.2 Thông số kỹ thuật của MCP 2515 ............................................................ 28
Bảng 3.3 Thông số kỹ thuật của Raspberry Pi 4 ...................................................... 29
Bảng 4.1 Các tín hiệu ON/OFF được thiết kế ở hai chế độ ..................................... 37
Bảng 4.2 Bảng nối dây giữa cụm công tắc đèn với Arduino Uno. .......................... 50
Bảng 4.3 Bảng nối dây giữa cảm biến nhiệt độ với Arduino Uno. .......................... 50
Bảng 4.4 Bảng nối dây giữa cảm biến tốc độ với Arduino Uno. ............................. 50
Bảng 4.5 Bảng nối dây giữa các chân Arduino Uno và MCP 2515 ........................ 51
Bảng 4.6 Bảng nối dây giữa các chân MCP 2515 và Raspberry Pi 4. ..................... 51
Bảng 5.1. Đánh giá hoạt động của các thiết bị phần cứng ....................................... 53

vii


DANH MỤC HÌNH ẢNH
Hình 2.1. Đèn tín hiệu trên ơ tơ [1] ............................................................................. 3
Hình 2.2. Nhóm thơng tin tình trạng kỹ thuật động cơ [2] .......................................... 4
Hình 2.3. Nhóm thơng tin liên quan tới áp suất hơi lốp, hệ thống di chuyển [2] ........ 4
Hình 2.4 Nhóm thơng tin nhắc nhở [2] ........................................................................ 5
Hình 2.5. Điện áp trên hai dây CAN High và Low tốc độ cao [3] .............................. 7
Hình 2.6 Chuyển đổi tín hiệu CAN H và CAN L tốc độ cao [3] ................................ 8
Hình 2.7. Điện áp trên hai dây High và Low của CAN tốc độ cao khi bị nhiễu [3] ... 8
Hình 2.8. Điện áp trên hai dây CAN H và CAN L của CAN tốc độ thấp [3] ............. 9
Hình 2.9. Chuyển đổi tín hiệu CAN H và CAN L tốc độ thấp [3] .............................. 9
Hình 2.10 Hai dây CAN H và CAN L ..................................................................... 10
Hình 2.11. Cấu trúc của mạng CAN ........................................................................ 11
Hình 2.12. Cấu trúc phân lớp của mạng CAN ......................................................... 12
Hình 2.13. Khung tiêu chuẩn [5] .............................................................................. 13
Hình 2.14. Khung mở rộng [5] .................................................................................. 13
Hình 2.15. Vùng điều khiển [5] ................................................................................. 14

Hình 2.16. Vùng báo nhận [5] ................................................................................... 16
Hình 2.17 Vùng kết thúc [5] ...................................................................................... 16
Hình 2.18. Khung lỗi [5] ............................................................................................ 16
Hình 2.19. Khung lỗi [5]........................................................................................... 17
Hình 2.20. Khung lỗi [5] ............................................................................................ 17
Hình 2.21. Khung quá tải [5] .................................................................................... 18
Hình 2.22. Khung quá tải [5] .................................................................................... 18
Hình 2.23. Sơ đồ nhận CAN message ..................................................................... 19
Hình 2.24. Sơ đồ truyền CAN message ................................................................... 19
Hình 2.25. Giao tiếp SPI [6] ...................................................................................... 21
Hình 3.1. Giao diện Loading phần mềm Arduino IDE............................................ 22
Hình 3.2. Biểu tượng phần mềm Python ................................................................. 23
Hình 3.3. Giao diện của phần mềm Qt Designer ..................................................... 23
Hình 3.4. Giao diện phần mềm Adobe Illustrator ................................................... 24
Hình 3.5. SOLIDWORKS với đầy đủ các tính năng về thiết kế lắp ghép [10] ......... 25
Hình 3.6. Biểu tượng phần mềm Pycharm .............................................................. 25
Hình 3.7. Arduino Uno R3....................................................................................... 26
Hình 3.8. Sơ đồ chân Arduino Uno R3 [11]............................................................... 27
Hình 3.9. Các chân của MCP2515 [12] ..................................................................... 28
Hình 3.10. Raspberry Pi 4 Model B......................................................................... 29
Hình 3.11. Sơ đồ chân Raspberry Pi4 [14] ................................................................ 30
Hình 3.12. Màn hình LCD 7 inch [15] ....................................................................... 31
Hình 3.13. Mạch Waveshare UPS [16] ...................................................................... 32
Hình 3.14. Cụm cơng tắc đèn .................................................................................. 32
viii


Hình 3.15. Cảm biến nhiệt độ DHT 11 [17] .............................................................. 33
Hình 3.16. Cảm biến tốc độ [18] ................................................................................ 34
Hình 4.1. Táp Lơ xe điện Volvo XC40 [19] .............................................................. 35

Hình 4.2. Vòng tròn hiển thị tốc độ, dung lượng pin .............................................. 36
Hình 4.3. Các nét vẽ cho giao diện đồng hồ ............................................................ 36
Hình 4.4. Thiết kế nền giao diện Taplo bằng Qt Designer ...................................... 38
Hình 4.5. Module Pyside6 ....................................................................................... 38
Hình 4.6. Class CircularProgress_Cap .................................................................... 38
Hình 4.7. Class CircularProgress_Speed ................................................................. 38
Hình 4.8. Các thơng số cơ bản ................................................................................. 39
Hình 4.9. Thiết lập nét vẽ cơ bản ............................................................................. 40
Hình 4.10. Code vẽ đường trịn ............................................................................... 40
Hình 4.11. Nét vẽ đường trịn thu được ................................................................... 41
Hình 4.12. Giao diện hồn chỉnh ............................................................................. 41
Hình 4.13. Sơ đồ khối thuật tốn ............................................................................. 42
Hình 4.14. Khai báo thư viện ................................................................................... 42
Hình 4.15. Thiết lập các chân cho tín hiệu từ cùm cơng tắc đèn ............................. 43
Hình 4.16. Đọc tín hiệu từ cùm cơng tắc đèn .......................................................... 43
Hình 4.17. Gán dữ liệu vào mảng ............................................................................ 43
Hình 4.18. Gửi dữ liệu và kiểm tra CAN ................................................................. 44
Hình 4.19. Chương trình nhận tín hiệu .................................................................... 44
Hình 4.20. Kết quả các tín hiệu ứng với từng ID .................................................... 45
Hình 4.21. Sơ đồ khối thuật tốn ............................................................................. 45
Hình 4.22. Xử lí và sắp xếp tín hiệu ........................................................................ 46
Hình 4.23. Gửi tín hiệu đến chương trình chính ...................................................... 46
Hình 4.24. Chương trình chính nhận tín hiệu và kết nối với các hàm con khác ..... 47
Hình 4.25. Ý tưởng thiết kế ..................................................................................... 47
Hình 4.26. Các bước tạo khối đa giác ...................................................................... 48
Hình 4.27. Khung Táp Lơ sau khi thiết kế............................................................... 48
Hình 4.28. Khung Táp Lơ sau khi chia thành 3 phần .............................................. 49
Hình 4.29. Sơ đồ mô phỏng giả lập hệ thống hiển thị thơng tin lên Táp Lơ ........... 49
Hình 4.30. Mặt sau của Táp Lơ ............................................................................... 52
Hình 4.31. Mặt trước của Táp Lô ............................................................................ 52


ix


Chương 1. TỔNG QUAN ĐỀ TÀI
1.1. Lịch sử vấn đề nghiên cứu
Ngày nay, một chiếc xe hiện đại có thể có từ 100 đến gần 300 thơng tin khác
nhau và được truyền tải tới người điều khiển phương tiện thông qua đồng hồ Táp Lơ.
Các thơng tin này có thể là dùng hiển thị các thông số quan trọng như tốc độ xe, vịng
tua máy, các tín hiệu đèn,... Ngồi ra để tra cứu, tham khảo, những lời nhắc nhở hướng
dẫn, các lỗi kỹ thuật có thể phát sinh. Thơng tin có thể truyền đến tài xế qua 2 dạng:
kim và số. Các màn hình hiển thị của hệ thống thơng tin giải trí cơng nghệ cao đã
chuyển đổi dần thành màn hình cảm ứng. Chúng chủ yếu được tạo thành từ LCD
(Màn hình tinh thể lỏng) hoặc mới hơn là màn hình OLED.
Các thành phần phần cứng điện tử như các hộp điều khiển, các cảm biến trong
hệ thống thông tin được kết nối với nhau với một số giao thức giao tiếp tiêu chuẩn
nhất định như như CAN. Giao thức truyền thông nối tiếp hay giao thức CAN là một
phương thức giao tiếp giữa các thiết bị điện tử được gắn trong xe, chẳng hạn như hệ
thống quản lý động cơ, hệ thống treo chủ động, khóa trung tâm, điều hịa khơng khí,
túi khí,... Ý tưởng được Robert Bosch GmbH khởi xướng phát triển vào năm 1983 để
cải thiện chất lượng và độ an toàn, cũng như nâng cao độ tin cậy của ô tô và hiệu quả
sử dụng nhiên liệu. CAN ra đời để giải quyết các vấn đề khó khăn tồn tại, các module
chỉ cần sử dụng 2 dây để kết nối với nhau. Việc thêm hay bớt module trong bus CAN
trở nên dễ dàng và truyền dữ liệu có độ tin cậy cao, tốc độ nhanh.
1.2. Tính cấp thiết của đề tài
Cùng với sự phát triển nhanh chóng của ngành cơng nghiệp ơ tơ đi kèm với đó
là sự gia tăng nhu cầu tự động hóa các thiết bị điện tử. Chính vì thế, hệ thống hiển thị
thơng tin cần phải chính xác, khả năng đáp ứng nhanh và có tính thẩm mỹ cao.
Nhận thấy những vấn đề trên nhóm đã thực hiện nghiên cứu và thiết kế hồn
chỉnh hệ thống hiển thị thơng tin lên màn hình LCD thơng qua giao tiếp CAN. Với

việc sử dụng phần mềm thiết kế giao diện Qt Designer và ngơn ngữ lập trình Python
cho Raspberry Pi 4 Model B, tạo ra một hệ thống hiển thị thông tin với tốc độ đáp
ứng nhanh và độ chính xác cao cho mơ hình xe tự hành.
1.3. Mục tiêu của đề tài
-

Hiểu và nắm vững kiến thức lý thuyết về giao thức CAN.
Tìm hiểu về phần mềm Qt Designer và ngơn ngữ lập trình Python.
Lập trình hệ thống mạng giao tiếp CAN giữa Arduino Uno, Raspberry Pi 4
Model B và MCP 2515.
Thiết kế giao diện hiển thị thông tin trên xe tự hành.
Hồn thiện hệ thống hiển thị thơng tin lên màn hình LCD trên xe tự hành.

1.4. Đối tượng và phạm vi nghiên cứu
1.4.1. Đối tượng nghiên cứu
Đề tài “Nghiên cứu, thiết kế và chế tạo Táp Lô xe tự hành” được thực hiện với các
đối tượng nghiên cứu sau:
1


-

Các dạng tín hiệu hiển thị thơng tin.
Cách thức giao tiếp SPI, giao tiếp CAN
Lập trình trên Arduino Uno, Raspberry Pi 4 Model B.
Thiết kế hệ thống hiển thị thông tin cho xe tự hành.

1.4.2. Phạm vi nghiên cứu
-


Lập trình giao tiếp giữa Raspberry Pi 4 Model B với Arduino Uno và giữa
Arduino với MCP 2515.
Dùng phần mềm Qt Designer thiết kế giao diện hiển thị thông tin lên màn hình
LCD.
Dùng phần mềm Solidworks để thiết kế khung Táp Lơ.
Kết nối với các tín hiệu cơ bản trên xe tự hành, lập trình truyền nhận dữ liệu
điều khiển đồng hồ hiển thị.
Đưa ra nhận xét và đề xuất hướng phát triển của đề tài.

1.5. Phương pháp nghiên cứu
-

Sử dụng các nguồn tài liệu trên Internet và các đồ án được thực hiện trước đây
để tìm hiểu về các phần mềm Arduino, Python, Qt Designer, cách giao tiếp
giao thức CAN giữa Raspberry Pi 4 và Arduino Uno.

-

Dùng phần mềm Qt Designer để thiết kế ra màn hình giao diện.

-

Ứng dụng phần mềm SolidWorks để thiết kế khung dashboard.

1.6. Giới hạn đề tài
Do thời gian thực hiện đồ án có giới hạn, nội dung nhóm thực hiện khá nhiều
nên vẫn cịn nhiều thiếu sót cụ thể là:
- Giao diện thiết kế chưa đầy đủ các tín hiệu.
- Chưa lấy được tín hiệu dung lượng Pin trực tiếp từ xe.
1.7. Nội dung thực hiện

-

Các dạng tín hiệu hiển thị thơng tin.
Lý thuyết về truyền nhận mạng CAN.
Cách thức hoạt động giao tiếp SPI.
Lập trình Arduino Uno, Raspberry Pi 4.
Thiết kế hệ thống.
Thiết kế khung dashboard.

1.8. Bố cục của đồ án:
-

Chương 1: Tổng quan.
Chương 2: Cơ sở lý thuyết.
Chương 3: Sơ lược về phần cứng và phần mềm.
Chương 4: Thiết kế, thực nghiệm mô hình hệ thống hiển thị thơng tin trên ơ
tơ.
Chương 5: Kết quả thực nghiệm và đánh giá mơ hình Táp Lô xe tự hành.
Chương 6: Kết luận và kiến nghị.
2


Chương 2. CƠ SỞ LÍ THUYẾT
2.1. Hệ thống hiển thị thông tin trên ô tô
2.1.1. Tổng quát về hệ thống hiển thị thông tin trên ô tô
Hệ thống thông tin hiển thị trên màn hình bao gồm các hiển thị cơ bản sau:







-

Các đồng hồ:
Đồng hồ tốc độ xe (speedometer).
Đồng hồ đo quãng đường (odometer).
Đồng hồ tốc độ động cơ (tachometer).
Đồng hồ áp lực nhớt.
Đồng hồ nhiệt độ nước làm mát.
Đồng hồ báo nhiên liệu.
Các đèn báo:

Hình 2.1. Đèn tín hiệu trên ô tô [1]
Tùy vào mỗi hãng xe, mỗi chủng loại xe, một chiếc ơ tơ có thể phát hàng trăm
các thông điệp khác nhau, thông thường các thông tin này được chia thành nhiều
nhóm khác nhau. Cụ thể như sau:
- Nhóm thơng tin liên quan đến các hệ thống an tồn: Nhóm này bao gồm
những dạng thơng tin tín hiệu để nhắc nhở người dùng như bật khóa điện rồi mới có
thể nhả phanh tay điện tử, nhắc đóng kín cửa, nhắc nhở cài dây an tồn …
- Nhóm thơng tin liên quan đến tình trạng kỹ thuật của động cơ: Các thông
tin này bao gồm các thông tin về tình trạng kỹ thuật của động cơ, trạng thái làm việc
của hệ thống bôi trơn, nhiệt độ nước làm mát các thơng số hoạt động tức thời như
tình trạng làm việc của hệ thống sạc …
3


Hình 2.2. Nhóm thơng tin tình trạng kỹ thuật động cơ [2]
- Nhóm thơng tin liên quan tới áp suất hơi lốp, hệ thống di chuyển: hệ
thống sẽ phát ra thông điệp cảnh báo khi áp suất hơi lốp thấp hoặc cao hơn mức cho

phép.

Hình 2.3. Nhóm thơng tin liên quan tới áp suất hơi lốp, hệ thống di chuyển [2]
- Nhóm thơng tin nhắc nhở: Đây là một tính năng được trang bị trên xe, để
nhắc nhở người dùng ngày đến hạn dưỡng định kỳ. Tùy theo quãng đường xe chạy
4


và thời gian sử dụng xe, hệ thống sẽ gửi các thông điệp để nhắc nhở người dùng đưa
xe đi bảo dưỡng.

Hình 2.4 Nhóm thơng tin nhắc nhở [2]
2.2. Tổng quan về mạng CAN
2.2.1. Lịch sử phát triển mạng CAN
CAN là một giao thức giao tiếp được ra mắt lần đầu tiên bởi Robert Bosch
GmbH, Đức vào năm 1986 và được công nhận bởi SAE hiệp hội các kĩ sư ô tô Mỹ,
có trụ sở đặt tại Detroit Michigan khi mà Mercedes đưa ra yêu cầu cho họ là phát
triển một hệ thống liên lạc giữa ba ECU (bộ điều khiển điện tử) trên xe. Nhu cầu về
một hệ thống liên lạc đa chủ trở nên rất cần thiết. Do vậy, mạng CAN đầu tiên đã ra
đời vào năm 1987 bởi Intel chế tạo.
Ngồi nền cơng nghiệp ơ tơ, CAN cũng được ứng dụng rộng rãi trong các
ngành công nghiệp tự động hóa, đóng tàu, tàu ngầm, nơng nghiệp, y khoa nhờ vào
các ưu điểm và sự tối ưu.
Từ lúc giới thiệu lần đầu tiên cho đến hiện tại, dựa trên các đặc điểm thông số
kỹ thuật của Bosch mà họ đã cho ra mắt các phiên bản khác nhau cho CAN như sau:
- CAN 1.0
- CAN 2.0
Phiên bản 2.0 của CAN được chia thành hai phần:



CAN tiêu chuẩn (Phiên bản 2.0A): sử dụng ID (Identifier) 11-bit.



CAN mở rộng (Phiên bản 2.0B): sử dụng ID 29-bit.

5


Hai phần được định nghĩa bởi các ID khác nhau của thơng điệp, với sự khác
biệt chính là độ dài mã ID.
Vào năm 1993, hiệp hội ISO đã phát hành tài liệu tiêu chuẩn hóa cho CAN
thơng qua tiêu chuẩn ISO. Sự khác biệt là ở lớp vật lý.
ISO 11898 (Cần lưu ý rằng tiêu chuẩn của ISO không phải là tồn bộ các đặc
tính của CAN mà Bosch qui định) xử lý các ứng dụng tốc độ cao lên đến 1Mbit /
giây.
ISO 11898-1: CAN lớp liên kết – dữ liệu_ CAN tốc độ cao.
ISO 11898-2: CAN lớp vật lý_ CAN tốc độ cao.
ISO 11898-3: CAN lớp vật lý_ CAN tốc độ thấp.
Theo sau ISO 11898, còn rất nhiều phiên bản khác nhằm tiêu chuẩn hóa CAN
tính đến thời điểm hiện tại ví dụ như ISO 11519 có giới hạn trên là 125kbit / giây.
2.2.2. Đặc điểm của mạng CAN
2.2.2.1. Một số khái niệm
2.2.2.1.1. Node
Node là thành phần độc lập có thể xử lý truyền nhận dữ liệu trên bus CAN.
Một node là một module có hệ thống xử lý cơ bản, gồm có 3 thành phần là vi điều
khiển MCU, chip điều khiển CAN (CAN controller) và chip thu-phát (CAN
transceiver). Mạng CAN bao gồm nhiều node. Trong đó, mỗi node có thể giao tiếp
với bất kì node nào khác nhờ việc truyền đi và nhận các gói dữ liệu gọi là message.
2.2.2.1.2. Message

Message là gói dữ liệu được truyền trong CAN. Mỗi message sẽ được gán một
ID. Tùy theo mức độ ưu tiên của message mà có một ID khác nhau. Một message có
thể có nhiều node nhận.
Dữ liệu trong message được gửi đi dưới dạng 4 loại khung khác nhau:
-

Khung dữ liệu (Data Frame).
Khung yêu cầu hay điều khiển dữ liệu (Remote Frame).
Khung báo lỗi (Error Frame).
Khung báo quá tải (Overflow Frame).

2.2.2.2. Tốc độ truyền dữ liệu
2.2.2.2.1. Truyền tốc độ cao
CAN tốc độ cao (CAN High Speed): được định nghĩa trong tiêu chuẩn ISO
118982 và hoạt động với tốc độ 125kbit/s đến 1Mbit/s và được sử dụng cho mạng
lưới của các hệ thống sau:
- Hệ thống kiểm soát động cơ (Motronic cho động cơ xăng và động cơ diesel
điều khiển điện tử).
- Các hệ thống hỗ trợ (điều khiển hành trình lái - ACC).
6


- Điều khiển hệ thống truyền lực bằng điện tử.
- Các hệ thống cân bằng xe (ESP).
2.2.2.2.2. Truyền tốc độ thấp
CAN tốc độ thấp (CAN Low Speed): được định nghĩa trong tiêu chuẩn ISO
11898-2 và hoạt động với tốc độ 5 đến 125kbit/s và được ứng dụng các hệ thống sau:
- Điều chỉnh gương.
- Hệ thống đèn.
- Hệ thống hiển thị.

- Điều khiển hệ thống máy điều hòa.
- Điều chỉnh ghế ngồi.
- Chống trộm.
- Gạt nước.
2.2.2.3. Giá trị của Bus CAN
Bus có thể có một trong hai giá trị logic: “trội” hoặc “lặn”. Trong quá trình
truyền đồng thời các bit “trội” và “lặn”, giá trị bus kết quả sẽ là “trội”. Mức “trội” sẽ
được biểu thị bằng “0” và mức “lặn” bằng “1”.
• Mức dominant/mức trội/ ứng với mức logic 0.
• Mức recessive/mức lặn/ ứng với mức logic 1.
Giá trị trội: là giá trị điện áp của bus được chủ động thay đổi bởi nút CAN
muốn truyền tín hiệu. Có giá trị tương ứng là 0.
Giá trị lặn: là giá trị điện áp của bus bị động trả về giá trị mặc định bởi điện
trở cuối. Giá trị lặn chỉ xảy ra khi khơng có bất kì nút CAN nào muốn truyền tín hiệu.
Giá trị tương ứng là 1.

Hình 2.5. Điện áp trên hai dây CAN High và Low tốc độ cao [3]

7


Ở trạng thái lặn, cả hai dây CAN đều có cùng cài đặt mức tín hiệu điện áp
2.5V. Ở trạng thái trội, điện áp của dây CAN H tăng lên theo một giá trị định trước
(+1V). Đồng thời, điện áp của dây CAN L cũng giảm theo (- 1V). Khi đó, điện áp
của dây CAN H lên 3.5V (2.5V + 1V = 3.5V) ở trạng thái trội. Điện áp trong dây
CAN L giảm xuống cực đại 1,5V (2,5V - 1V = 1,5V) ở trạng thái trội. Do đó, sự khác
biệt điện áp giữa CAN H và CAN L trong trạng thái lặn là 0V và trong trạng thái trội
là 2V.

Hình 2.6 Chuyển đổi tín hiệu CAN H và CAN L tốc độ cao [3]

Bộ khuếch đại, có nhiệm vụ đánh giá các tín hiệu đầu vào từ hai dây CAN H
và CAN L. Sau đó, truyền các tín hiệu đã chuyển đổi (3.5V – 1.5V = 2V) đến vùng
nhận CAN của thiết bị điều khiển. Tín hiệu này được gọi là điện áp đầu ra của bộ
khuếch đại.
Hai dây CAN được xoắn vào nhau, do đó khi bị nhiễu thì sẽ tác động như nhau
đến cả hai dây.

Hình 2.7. Điện áp trên hai dây High và Low của CAN tốc độ cao khi bị nhiễu [3]

8


Hình 2.8. Điện áp trên hai dây CAN H và CAN L của CAN tốc độ thấp [3]
Ở trạng thái lặn, điện áp của dây CAN H được cài đặt ở mức 0V và điện áp
của dây CAN L ở mức 5V. Điện áp của dây CAN H tăng lên theo một giá trị định
trước (+3.6V) khi ở trạng thái trội. Đồng thời, điện áp của dây CAN L cũng giảm
theo (- 3.6V). Điều này dẫn đến sự gia tăng điện áp của dây CAN H lên 3.6V (0V+
3.6V = 3.6V) ở trạng thái trội và điện áp trong dây CAN L giảm xuống cực đại 1,4V
(5V – 3.6V = 1,4V). Do đó, sự khác biệt điện áp giữa CAN H và CAN L trong trạng
thái lặn là 5V và trong trạng thái trội 2.2V.

Hình 2.9. Chuyển đổi tín hiệu CAN H và CAN L tốc độ thấp [3]
CAN tốc độ thấp cũng có bộ nhận nằm trong bộ thu phát. Bộ nhận này là bộ
khuếch đại, có nhiệm vụ đánh giá các tín hiệu đầu vào từ hai dây CAN H và CAN L.
Sau đó, truyền các tín hiệu đã chuyển đổi (3.6V – 1.4V = 2.2V) đến vùng nhận CAN
của thiết bị điều khiển. Tín hiệu này gọi là điện áp đầu ra của bộ khuếch đại.

9



Bảng 2.1 Giá trị điện áp trên hai dây CAN H và CAN L
CAN tốc độ cao
CAN H

CAN L

CAN tốc độ thấp
CAN H

CAN L

Tốc độ

125kb/s đến 1 Mb/s

Trạng thái trội 0

3.5 V

1.5 V

3.6 V

1.4 V

Trạng thái lặn 1

2.5 V

2.5 V


0V

5V

Mức điện áp

125kb/s

5V

5V

2.2.2.4. Cơ chế giao tiếp
Đặc trưng của CAN là phương pháp định địa chỉ và giao tiếp hướng đối tượng.
Trong mạng CAN, mỗi thông tin trao đổi được coi như một đối tượng và được gán
một số mã ID.
Thông tin được truyền đi trên bus theo kiểu truyền gửi thông báo với độ dài
khác nhau. Các thông báo không chỉ được gửi tới một địa chỉ nhất định mà bất cứ
trạm nào cũng có thể nhận theo nhu cầu. Mã ID dùng để phân biệt nội dung mỗi thông
báo. ID khơng nói lên địa chỉ đích của thơng báo, mà chỉ biểu diễn ý nghĩa của dữ
liệu trong tin nhắn. Vì thế, mỗi trạm trên mạng có thể tự quyết định tiếp nhận và xử
lý tin nhắn hay không tiếp nhận tin nhắn qua phương thức lọc tin nhắn. Do sử dụng
phương thức lọc tin nhắn mà nhiều trạm có thể đồng thời cùng nhận một tin nhắn và
có các phản ứng khác nhau. Một khung yêu cầu sẽ được gửi khi một trạm yêu cầu
một trạm khác gửi dữ liệu. Trạm có khả năng cung cấp nội dung thơng tin đó sẽ gửi
trả lại một khung chứa dữ liệu có cùng mã ID với khung yêu cầu. Cùng với những
tính năng đơn giản, cơ chế giao tiếp hướng đối tượng ở CAN cịn mang lại tính linh
hoạt và tính nhất quán dữ liệu của hệ thống.
2.2.2.5. Cấu trúc của mạng CAN [4]

Bus CAN bao gồm 3 thành phần chính :
- Hai dây riêng biệt được gọi là CAN H (CAN High) và CAN L (CAN Low)
xoắn vào nhau:

Hình 2.10 Hai dây CAN H và CAN L
10


×