Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh cuộc cách mạng công nghiệp lần thứ tư (Cách mạng 4.0), ngành công nghiệp ô tô tại Việt Nam đang có những bước chuyển mình mạnh mẽ, đóng vai trò thúc đẩy kinh tế quốc dân. Số liệu thống kê vào tháng 6 năm 2020 cho thấy Việt Nam có hơn 350 doanh nghiệp sản xuất liên quan đến lĩnh vực ô tô với tổng công suất lắp ráp thiết kế khoảng 680.000 xe/năm, bao gồm: hơn 40 doanh nghiệp sản xuất, lắp ráp ô tô; 45 doanh nghiệp sản xuất khung gầm, thân xe, thùng xe; và 214 doanh nghiệp sản xuất linh kiện, phụ tùng phụ trợ, đáp ứng khoảng 70% nhu cầu xe dưới 9 chỗ trong nước. Đi đôi với sự phát triển này, các yêu cầu về an toàn cho người điều khiển và phương tiện ngày càng được chú trọng.
Bên cạnh các trang bị an toàn tiêu chuẩn như dây đai an toàn, túi khí hay hệ thống chống bó cứng phanh (ABS), các hệ thống an toàn chủ động điện tử thông minh như hệ thống kiểm soát hành trình (Cruise Control), hệ thống phanh tự động khẩn cấp (AEB), hệ thống hỗ trợ lực phanh khẩn cấp (BA) và hệ thống cảnh báo tiền va chạm (Pre-Collision System - PCS) trở thành tâm điểm phát triển của các hãng xe. Hệ thống cảnh báo va chạm giúp theo dõi liên tục hành trình, nhận diện chướng ngại vật phía trước, giảm thiểu rủi ro tai nạn do mất tập trung và hỗ trợ người lái xử lý tình huống kịp thời.
Bài tập lớn môn Cơ điện tử ô tô với đề tài "Nghiên cứu mô phỏng hệ thống cảnh báo va chạm" do nhóm sinh viên Khóa 16, Khoa Công nghệ Ô tô – Trường Cơ khí - Ô tô, Trường Đại học Công nghiệp Hà Nội thực hiện dưới sự hướng dẫn của TS. Phạm Minh Hiếu (năm 2023). Các mục tiêu và nhiệm vụ nghiên cứu cụ thể bao gồm:
- Khảo sát tổng quan lịch sử, xu thế phát triển, cấu tạo và nguyên lý hoạt động của hệ thống cảnh báo va chạm (PCS) trên ô tô.
- Thiết lập cơ sở lý thuyết và mô hình toán học tính toán khoảng cách bằng sóng siêu âm dựa trên quy luật truyền sóng và thời gian phản hồi.
- Lựa chọn linh kiện, xây dựng sơ đồ nguyên lý mạch điều khiển hoàn chỉnh trên phần mềm Proteus (ISIS) sử dụng vi điều khiển ATmega328P (bo mạch Arduino UNO R3), cảm biến khoảng cách HC-SR04, màn hình LCD 16×2, hệ thống đèn LED và chuông báo.
- Viết chương trình điều khiển trên Arduino IDE và chạy mô phỏng thực nghiệm để kiểm chứng phản hồi của hệ thống qua 3 trạng thái khoảng cách: an toàn, nguy hiểm và rất nguy hiểm.
- Đối tượng nghiên cứu: Hệ thống cảnh báo tiền va chạm trên ô tô hoạt động dựa trên cảm biến siêu âm và vi điều khiển.
- Phạm vi nghiên cứu: Thiết kế sơ đồ nguyên lý, lập trình giải thuật và mô phỏng trên nền tảng phần mềm Proteus Professional kết hợp Arduino IDE; không tiến hành chế tạo thử nghiệm trên phương tiện thực tế.
Cơ sở lý thuyết và phương pháp
Nghiên cứu vận dụng các lý thuyết nền tảng về vật lý truyền sóng âm và xử lý tín hiệu số trong hệ thống cơ điện tử ô tô:
- Khung lý thuyết về sóng siêu âm: Cảm biến siêu âm sử dụng nguyên lý phát và thu sóng âm có tần số cao hơn ngưỡng nghe của con người (40 kHz). Tín hiệu phát đi khi gặp bề mặt vật cản (rắn hoặc lỏng) sẽ phản xạ ngược lại đầu thu. Dựa trên vận tốc truyền âm trong không khí ($v = 343\text{ m/s} = 34.300\text{ cm/s}$ ở điều kiện tiêu chuẩn), khoảng cách từ cảm biến đến vật thể được xác định bằng công thức toán học:
$$\text{Khoảng cách tới vật (cm)} = \frac{\text{Vận tốc} \times \text{Timer}}{2} = 17.150 \times \text{Timer}$$
(Trong đó, $\text{Timer}$ là tổng thời gian chân Echo giữ mức điện áp cao - tương ứng thời gian sóng truyền đi và phản xạ trở lại).
- Phương pháp nghiên cứu:
- Phương pháp phân tích - tổng hợp tài liệu: Thu thập và đối chiếu các tài liệu chuyên ngành về vi điều khiển, trang bị điện - điện tử trên ô tô, cấu tạo cảm biến vị trí/dịch chuyển và tài liệu kỹ thuật các gói công nghệ an toàn thương mại (Mercedes-Benz Pre-Safe, Mazda i-Activesense, Toyota Safety Sense).
- Phương pháp mô hình hóa và mô phỏng số: Sử dụng công cụ ISIS trong phần mềm Proteus Professional để thiết kế mạch nguyên lý ảo và giả lập tương tác phần cứng; sử dụng Arduino IDE để biên dịch mã nguồn nhúng C/C++ nạp cho vi điều khiển ATmega328P.
- Nguồn dữ liệu: Tài liệu kỹ thuật từ nhà sản xuất chip và linh kiện điện tử (Atmel/Microchip cho ATmega328P, tài liệu thông số kỹ thuật cảm biến HC-SR04, module LCD LM016L), kết hợp hệ thống giáo trình chuyên ngành Cơ điện tử ô tô của các trường đại học kỹ thuật.
Thiết kế và triển khai hệ thống
Hệ thống cảnh báo va chạm được thiết kế dưới dạng mạch vi điều khiển kết nối ngoại vi hoàn chỉnh, bao gồm khối xử lý trung tâm, khối cảm biến ngõ vào, khối hiển thị và khối cơ cấu chấp hành cảnh báo.
+-------------------------------------------------------------+
| ARDUINO UNO R3 |
| (Chip ATmega328P) |
+-------------------------------------------------------------+
| | | |
| (Chân 2, 3) | (Chân 4,5,6,7,8,9) | (Chân 12,13)| (Chân 11)
v v v v
+-----------+ +---------------+ +----------+ +----------+
| HC-SR04 | | LCD 16x2 | | LEDs | | Chuông |
| (Cảm biến)| | (LM016L) | | (Đỏ/Xanh)| | (Buzzer) |
+-----------+ +---------------+ +----------+ +----------+
Cấu tạo và thông số kỹ thuật linh kiện
| Khối chức năng |
Linh kiện / Thiết bị |
Thông số kỹ thuật và vai trò trong mạch |
| Xử lý trung tâm |
Arduino UNO R3 (ATmega328P) |
Vi điều khiển 8-bit, điện áp hoạt động 5V (nguồn cấp 7–12V), tần số thạch anh 16 MHz, 14 chân Digital I/O (6 chân PWM), 6 chân Analog (A0–A5), bộ nhớ Flash 32 kB, SRAM 2 kB, EEPROM 1 kB. |
| Khối cảm biến |
Cảm biến siêu âm HC-SR04 |
4 chân (VCC, Trig, Echo, GND), dải đo 2 cm – 300 cm, sai số khoảng 0,15% ở cự ly 2m. Trong Proteus, chân TestPin kết nối biến trở để giả lập khoảng cách. |
| Khối hiển thị |
Màn hình LCD 16×2 (LM016L) |
Hiển thị 2 dòng, mỗi dòng 16 ký tự. Giao tiếp qua 4 chân dữ liệu D4–D7 kết hợp chân chọn thanh ghi RS và chân chốt dữ liệu Enable (E). |
| Khối cảnh báo |
Đèn LED (Xanh, Đỏ) |
LED xanh báo trạng thái an toàn; LED đỏ báo trạng thái nguy hiểm và rất nguy hiểm. Điện thế phân cực thuận 1,5V – 3V. |
| Khối âm thanh |
Chuông báo / Loa |
Phát âm thanh cảnh báo khi khoảng cách rơi vào ngưỡng rất nguy hiểm. |
| Khối điều chỉnh |
Biến trở (Potentiometer) |
Gồm 2 biến trở: 1 biến trở điều chỉnh độ tương phản màn hình LCD (chân VEE) và 1 biến trở cấp áp thay đổi cho chân TestPin của cảm biến HC-SR04. |
Sơ đồ đấu nối chân trên phần mềm Proteus
- Cảm biến siêu âm HC-SR04: Chân VCC nối nguồn +5V, GND nối Mass; chân
Trig nối chân Digital 3 của Arduino; chân Echo nối chân Digital 2 của Arduino; chân TestPin nối ngõ ra của biến trở giả lập khoảng cách.
- Màn hình LCD 16×2: Chân
RS nối chân Digital 9; chân E (Enable) nối chân Digital 8; các chân dữ liệu D4, D5, D6, D7 nối lần lượt với các chân Digital 5, 6, 7, 8 của Arduino; chân VSS nối Mass, chân VDD nối nguồn +5V; chân VEE nối với biến trở chỉnh tương phản; chân R/W nối Mass (chế độ ghi).
- Đèn LED và Chuông báo: Anot của LED xanh nối chân Digital 12; Anot của LED đỏ nối chân Digital 13; Catot của cả hai LED nối Mass qua điện trở; một cực của Loa/Chuông báo nối chân Digital 11, cực còn lại nối Mass.
Nội dung chính theo từng chương
CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG CẢNH BÁO VA CHẠM
Chương 1 giới thiệu khái quát về vai trò của hệ thống cảnh báo tiền va chạm (PCS) trên các phương tiện giao thông. Hệ thống cảnh báo va chạm được phát triển lần đầu tiên vào năm 1990 bởi công ty Autoliv trên các dòng xe cao cấp. Đến năm 2003, Mercedes-Benz giới thiệu hệ thống Pre-Safe trên dòng S-Class, đánh dấu bước phát triển khi hệ thống có thể chủ động can thiệp phanh để hạn chế va chạm. Sau đó, các gói công nghệ an toàn hiện đại ra đời như i-Activesense của Mazda (sử dụng radar sóng milimet và camera) hay Toyota Safety Sense (TSS, ra mắt tháng 3/2015, kết hợp camera 360 độ và cảm biến va chạm xung quanh xe).
Về cấu tạo chi tiết, chương 1 trình bày đặc tính các linh kiện phần cứng:
- Cảm biến siêu âm HC-SR04: Cấu tạo gồm máy phát gốm (đường kính khoảng 15 mm) phát xung sóng âm, máy thu chuyển đổi rung động sóng âm thành năng lượng điện, mạch điều khiển phát/nhận và khối nguồn ổn áp DC.
- Bo mạch Arduino UNO R3 và vi điều khiển ATmega328P: Nêu rõ sơ đồ chân I/O Digital (chân 2–13), các chân ngõ vào Analog (A0–A5) với độ phân giải 10-bit (1024 mức giá trị), các chân cấp xung PWM (3, 5, 6, 9, 10, 11) và chuẩn giao tiếp UART qua hai chân 0 (RX) và 1 (TX).
- Màn hình tinh thể lỏng LCD 16×2: Cung cấp chức năng của các chân điều khiển, thanh ghi mã lệnh, thanh ghi dữ liệu và cờ bận (chân D7) để kiểm tra trạng thái sẵn sàng của LCD.
- Biến trở và Đèn LED: Phân tích cấu tạo dây quấn Nichrome, biến trở than, cùng nguyên lý tiếp giáp bán dẫn P-N phát xạ photon ánh sáng của đi-ốt phát quang (LED).
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
Chương 2 tập trung xây dựng mô hình toán học và giải thuật điều khiển hệ thống. Quy trình phát và nhận sóng siêu âm của cảm biến HC-SR04 được mô tả qua lược đồ thời gian:
- Vi điều khiển phát một xung kích hoạt ngắn có độ rộng 10 $\mu\text{s}$ đến chân
Trig.
- Cảm biến tự động phát ra một chùm 8 chu kỳ xung sóng âm ở tần số 40 kHz, đồng thời kéo chân
Echo lên mức điện áp cao (HIGH).
- Khi sóng phản xạ từ vật cản dội ngược lại đầu thu, chân
Echo được kéo về mức thấp (LOW).
- Bộ định thời (Timer) đo khoảng thời gian chân
Echo ở mức cao để tính ra cự ly dựa trên vận tốc $34.300\text{ cm/s}$.
Giải thuật xử lý được thể hiện qua lưu đồ thuật toán: sau khi đọc dữ liệu từ cảm biến, vi điều khiển tính toán khoảng cách thực tế, so sánh với các ngưỡng giới hạn an toàn đã cài đặt sẵn, sau đó điều hướng xuất tín hiệu điều khiển ra chân Digital để cập nhật nội dung màn hình LCD, bật/tắt LED chỉ thị và kích hoạt chuông báo.
CHƯƠNG 3: MÔ PHỎNG HỆ THỐNG CẢNH BÁO VA CHẠM TRÊN PHẦN MỀM PROTEUS
Chương 3 trình bày các bước chuẩn bị, kết nối linh kiện và chạy mô phỏng trên phần mềm Proteus của hãng Labcenter Electronics. Tác giả giới thiệu hai phân hệ chính của Proteus là ISIS (mô phỏng mạch nguyên lý) và ARES (vẽ và thiết kế mạch in PCB 3D), đồng thời chỉ ra ưu điểm về khả năng nạp trực tiếp file mã máy .hex cho vi điều khiển và nhược điểm giao diện vẽ mạch chưa thực sự bắt mắt.
Chương này cũng cung cấp đoạn mã nguồn lập trình trên Arduino IDE sử dụng thư viện <LiquidCrystal.h>, khởi tạo các hằng số chân định nghĩa chân LED, Loa, Trig, Echo và cấu hình tốc độ truyền thông nối tiếp Serial.begin(9600). Kết quả chạy mô phỏng được phân tích chi tiết qua 3 trường hợp vận hành cụ thể.
Ngoài ra, chương 3 kèm theo phần hướng dẫn 5 bước sử dụng phần mềm Proteus Professional:
- Bước 1 & Bước 2: Khởi động phần mềm Proteus Professional và mở không gian làm việc của ISIS Professional (đảm bảo mạch nằm trong khung vuông màu xanh).
- Bước 3: Nhấp chọn chế độ Component Mode, nhấn phím P để mở thư viện, tìm kiếm linh kiện qua mục Keywords (Arduino UNO, HC-SR04, LM016L, Resistor, LED, Potentiometer).
- Bước 4: Đặt linh kiện ra màn hình thiết kế, sử dụng các công cụ Block Move, lệnh xoay (Rotate), lật (Mirror) hoặc Delete Object.
- Bước 5: Nhấp đúp vào linh kiện để chỉnh sửa các thông số kỹ thuật cần thiết (Part Reference, giá trị điện trở Resistance) trước khi thực hiện nối dây và kiểm tra lỗi.
Kết quả và đóng góp
Kết quả mô phỏng thực nghiệm
Hệ thống mô phỏng trên Proteus đáp ứng chính xác theo 3 kịch bản khoảng cách đo lường được từ cảm biến siêu âm:
| Trường hợp |
Khoảng cách đo được ($d$) |
Trạng thái màn hình LCD |
Trạng thái đèn LED |
Trạng thái chuông báo |
| Trường hợp 1 (An toàn) |
$d > 300\text{ cm}$ |
Hiển thị chữ "An toàn" kèm giá trị khoảng cách đo được |
LED xanh sáng |
Không hoạt động (Tắt) |
| Trường hợp 2 (Nguy hiểm) |
$150\text{ cm} \le d \le 300\text{ cm}$ |
Hiển thị chữ "Nguy hiểm" kèm giá trị khoảng cách đo được |
LED đỏ sáng |
Không hoạt động (Tắt) |
| Trường hợp 3 (Rất nguy hiểm) |
$d < 150\text{ cm}$ |
Hiển thị chữ "Rất nguy hiểm" kèm giá trị khoảng cách đo được |
LED đỏ sáng |
Hoạt động (Phát âm thanh) |
Đóng góp của bài tập lớn
- Về mặt kỹ thuật: Xây dựng thành công mô hình mạch mô phỏng cơ điện tử hoàn chỉnh trên phần mềm Proteus, chứng minh tính khả thi của giải thuật đo khoảng cách và phân cấp cảnh báo nguy cơ va chạm bằng vi điều khiển ATmega328P.
- Về mặt đào tạo: Cung cấp tài liệu hướng dẫn từng bước từ việc vẽ sơ đồ nguyên lý, cấu hình linh kiện trong thư viện Proteus ISIS, đến kỹ thuật lập trình Arduino IDE nạp file mô phỏng cho sinh viên ngành Công nghệ Ô tô.
Hạn chế và hướng nghiên cứu tiếp
-
Hạn chế:
- Nghiên cứu mới dừng lại ở mức độ mô phỏng phần mềm, chưa gia công mạch in thực tế và chưa lắp đặt thử nghiệm trên xe thật trong điều kiện giao thông động.
- Tín hiệu cự ly trên mô hình Proteus phụ thuộc vào thao tác chỉnh biến trở giả lập ở chân TestPin của cảm biến, chưa phản ánh được các yếu tố nhiễu môi trường (thời tiết, góc phản xạ của bề mặt vật cản gồ ghề).
- Hệ thống chỉ đưa ra cảnh báo bằng hình ảnh và âm thanh, chưa tích hợp chức năng điều khiển cơ cấu chấp hành can thiệp vào hệ thống phanh hoặc hệ thống lái tự động.
-
Hướng nghiên cứu tiếp:
- Thiết kế mạch in PCB trên phần mềm ARES và chế tạo mô hình phần cứng vật lý hoàn chỉnh để đánh giá độ trễ thực tế.
- Mở rộng tích hợp hệ thống phanh tự động khẩn cấp (AEB) khi người lái không phản ứng trong ngưỡng khoảng cách "Rất nguy hiểm".
- Kết hợp cảm biến siêu âm với cảm biến radar sóng milimet và camera xử lý ảnh nhằm nhận diện chính xác nhiều đối tượng chướng ngại vật (xe máy, xe đạp, người đi bộ).
Giá trị tham khảo
Báo cáo bài tập lớn này là tài liệu tham khảo hữu ích cho:
- Sinh viên ngành Công nghệ Kỹ thuật Ô tô, Cơ điện tử và Tự động hóa: Nắm vững phương pháp thiết kế mạch điều khiển nhúng, nguyên lý ứng dụng cảm biến khoảng cách và kỹ năng sử dụng phần mềm Proteus Professional.
- Người thực hiện các đề tài về an toàn ô tô: Tham khảo sơ đồ phối ghép chân giữa vi điều khiển ATmega328P với cảm biến HC-SR04, LCD 16×2, cũng như thuật toán phân cấp khoảng cách an toàn trên phương tiện.
Câu hỏi thường gặp
1. Cảm biến siêu âm HC-SR04 trong đề tài đo khoảng cách dựa trên nguyên lý và công thức nào?
Cảm biến phát 1 xung kích hoạt $10,\mu\text{s}$ từ chân Trig, sau đó phát chùm 8 xung sóng âm tần số 40 kHz và kích hoạt chân Echo lên mức cao. Khi sóng dội về gặp đầu thu, chân Echo hạ xuống mức thấp. Khoảng cách được tính dựa trên thời gian chân Echo ở mức cao ($\text{Timer}$) và vận tốc âm thanh ($34.300\text{ cm/s}$) theo công thức: $\text{Khoảng cách (cm)} = 17.150 \times \text{Timer}$.
2. Các mốc khoảng cách phân cấp cảnh báo trong hệ thống được quy định như thế nào?
Hệ thống chia làm 3 mức: Khoảng cách an toàn ($> 300\text{ cm}$, LCD báo "An toàn", LED xanh sáng); Khoảng cách nguy hiểm ($150\text{ cm} \le d \le 300\text{ cm}$, LCD báo "Nguy hiểm", LED đỏ sáng); Khoảng cách rất nguy hiểm ($< 150\text{ cm}$, LCD báo "Rất nguy hiểm", LED đỏ sáng và chuông báo kêu).
3. Làm thế nào để thay đổi khoảng cách vật cản của cảm biến siêu âm khi mô phỏng trên Proteus?
Do môi trường mô phỏng không có không gian vật lý, cảm biến HC-SR04 trong Proteus được thiết kế thêm chân TestPin. Người thiết kế nối chân này với một biến trở (cấp nguồn và nối đất); khi thay đổi giá trị điện áp của biến trở, giá trị khoảng cách tính toán của cảm biến sẽ thay đổi tương ứng.
4. Thông số kỹ thuật cơ bản của vi điều khiển ATmega328P được nêu trong tài liệu là gì?
ATmega328P hoạt động ở điện áp 5V, có 14 chân Digital I/O (gồm 6 chân PWM), 6 chân Analog Input (A0–A5), bộ nhớ Flash 32 kB (0,5 kB dùng cho bootloader), SRAM 2 kB, EEPROM 1 kB, tần số xung nhịp thạch anh 16 MHz, kích thước 68,4 mm và trọng lượng 25 g.
Kết luận
Bài tập lớn "Nghiên cứu mô phỏng hệ thống cảnh báo va chạm" của nhóm sinh viên Trường Đại học Công nghiệp Hà Nội đã hoàn thành việc nghiên cứu nguyên lý, thiết lập mô hình toán học và xây dựng thành công hệ thống mô phỏng cảnh báo tiền va chạm trên phần mềm Proteus. Hệ thống tích hợp đồng bộ vi điều khiển ATmega328P, cảm biến HC-SR04, màn hình LCD 16×2, hệ thống LED và chuông báo, phân cấp chính xác 3 trạng thái an toàn theo khoảng cách thời gian thực. Đề tài đóng góp tài liệu kỹ thuật có tính hệ thống cao, phục vụ hiệu quả cho việc học tập, nghiên cứu và phát triển các hệ thống an toàn chủ động trong ngành Cơ điện tử ô tô.