BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HỒ CHÍ MINH ĐỒ ÁN TỐT NGHIỆP HỆ THỐNG HỖ TRỢ GIÁM SÁT AN TOÀN TRÊN Ô TÔ NGÀNH CÔNG NGHỆ KỸ THUẬT Ô TÔ GIẢNG VIÊN HƯỚNG DẪN Th S ĐỖ NHẬT TRƯỜNG Sinh viên thực hiện MSSV Lớp NGUYỄN LÊ QUANG LINH 1711251373 17DOTB5 ĐINH TẤN PHÁT 1711251106 17DOTB4 HUỲNH CHÁNH TÍNH 1711251135 17DOTB4 Tp Hồ Chí Minh, tháng 092021 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HỒ CHÍ MINH ĐỒ ÁN TỐT NGHIỆP HỆ THỐNG HỖ TRỢ GIÁM SÁT AN TOÀN TRÊN Ô TÔ NGÀNH CÔNG NGHỆ.
GIỚI THIỆU VỀ ĐỀ TÀI
Lịch sử hình thành và phát triển của xe tự lái
Hình 1.1: Con đường phát triển của xe tự lái
Hình 1.2: Xe Chrysler Imperial năm 1958
Cruise control được phát minh bởi kỹ sư cơ khí Ralph Teetor vào năm 1948, xuất phát từ sự thất vọng khi ông đi xe cùng luật sư, người thường xuyên tăng tốc và giảm tốc khi nói chuyện Chiếc xe đầu tiên trang bị hệ thống này là Chrysler Imperial năm 1958, được gọi là "Auto-pilot", sử dụng một chiếc quay số nhanh trên bảng điều khiển để duy trì tốc độ mong muốn Hệ thống tính toán tốc độ dựa trên vòng tua cáp đo tốc độ, với cơ cấu chấp hành là một động cơ điện điều khiển vị trí bướm ga bằng trục vít.
Hình 1.3: Sơ đồ nguyên lí hoạt động của xe Auto-pilot năm 1958
Các bước kích hoạt Auto – Pilot:
Hình 1.4: Đồng hồ taplo hiển thị tốc độ của xe
- Điều chỉnh tốc độ của xe sao cho tốc độ hiện tại của xe không nhanh hơn tốc độ mong muốn duy trì
Hình 1.5: Điều chỉnh tốc độ mong muốn của Cruise control bước 2
Khi xe gần đạt tốc độ mong muốn, hãy xoay núm điều chỉnh để cài đặt tốc độ duy trì.
Hình 1.6: Điều chỉnh tốc độ mong muốn của Cruise control bước 3
- Sau khi điều chỉnh xong, đạp ga cho đến khi cảm thấy bàn đạp ga trả ngược về, lúc này nhấn nút trên núm xoay
Hình 1.7: Xe tự duy trì tốc độ sau khi cài đặt Cruise control
- Đặt chân ra khỏi bàn đạp ga, xe sẽ tự động duy trì tốc độ
- Trong trường hợp muốn xe chậm lại hoặc tăng tốc, đạp phanh hoặc nhấn nút ở núm xoay lần nữa để hủy Auto – Pilot
- Duy trì được tốc độ mong muốn
- Động cơ điện điều khiển vị trí bướm ga
- Có quá nhiều thao tác khi sử dụng, gây mất tập trung cho người lái
- Phải tự điều chỉnh để xe vận hành tốt với tốc độ của vòng tua
- Do điều kiện lúc bấy giờ còn hạn chế trong lúc nghiên cứu và thi công, nên có thể hệ thống hoạt động chưa được trơn tru, ổn định
1.1.2 Xe không người lái của Google năm 2009
Hình 1.8: Ông Sebastian Thrun đã đưa ra dự án xe không người lái của Google
Năm 2009, Google đã khởi động dự án xe hơi tự lái dưới sự dẫn dắt của giáo sư Sebastian Thrun từ Đại học Stanford, người được công nhận là người sáng lập ra công nghệ xe tự lái Trong thời gian làm việc tại Google, Thrun cũng đã lãnh đạo nhiều dự án khác tại phòng thí nghiệm nghiên cứu X, bao gồm Google Glass và Street View.
Thrun bắt đầu nghiên cứu về xe tự lái tại Stanford, nơi ông dẫn dắt một đội ngũ sinh viên và giảng viên để phát triển chiếc xe robot Stanley Chiếc xe này đã giành chiến thắng trong cuộc thi DARPA Grand Challenge với giải thưởng 2 triệu USD.
Google đã khởi động dự án xe tự lái với 6 chiếc Toyota Prius và Audi TT trên các con phố ở Mountain View, California Họ đã tuyển dụng một số ít tài xế có hồ sơ lái xe hoàn hảo để ngồi sau vô lăng, vị trí này vẫn được duy trì suốt bảy năm sau đó.
Hình 1.9: Map giao thông của xe tự lái
Xe của Google sử dụng công nghệ tiên tiến như GPS, cảm biến, camera, radar và laser để "nhìn thấy" môi trường xung quanh Các cảm biến này có khả năng phát hiện nhiều đối tượng, bao gồm người đi bộ, phương tiện giao thông, khu vực xây dựng và cả người đi xe đạp, giúp xe hoạt động an toàn và hiệu quả hơn.
- Vào tháng 5 năm 2014, Google đã xây dựng chiếc xe riêng mình với tên “Firefly”
Xe được thiết kế với 2 chỗ ngồi, không có bàn đạp phanh, vô lăng hay bàn đạp ga, chỉ trang bị nút Start/Stop và màn hình hiển thị tuyến đường cùng bản đồ Google đã giới hạn tốc độ tối đa của xe ở mức 25 dặm/giờ (40km/h) và dự kiến sản xuất từ 100 đến 200 phiên bản.
Hình 1.10: Công nghệ được ứng dụng trên xe WAYMO
WAYMO trang bị cảm biến laser quét 360 độ để quét toàn bộ môi trường xung quanh xe, kết hợp với radar để đo tốc độ của các phương tiện phía trước Ngoài ra, hệ thống còn có cảm biến theo dõi hướng di chuyển và đảm bảo sự cân bằng của xe.
Nhiều cảm biến hiện đại được thiết kế để phát hiện các vật thể xung quanh, bao gồm con người, phương tiện giao thông, khu vực xây dựng, chim, và cả người đi xe đạp.
- Người sử dụng không cần thao thác để xe hoạt động giúp người sử dụng thoải mái và không bị phân tâm khi sử dụng
- Tốc độ tối đa vẫn còn hạn chế
- Còn hoạt động hạn chế khi lưu thông trên những tuyến đường có mật độ giao thông phức tạp
1.1.3 Xe không người lái của Tesla năm 2015
Hình 1.11: Mẫu Tesla S được ứng dụng công nghệ tự lái của Tesla
Tesla S là một mẫu xe điện cao cấp 5 cửa do Tesla Inc sản xuất, ra mắt vào tháng 6 năm 2012 Xe được trang bị nhiều cảm biến hiện đại, mang lại sự tiện lợi và an toàn cho người lái Đặc biệt, với 8 camera xung quanh, Tesla S cung cấp khả năng hiển thị toàn diện, hỗ trợ tối đa trong quá trình di chuyển.
Hệ thống 360 độ xung quanh xe có khả năng hoạt động trong phạm vi lên đến 250m, trang bị 12 bộ cảm biến siêu âm mới giúp phát hiện vật cứng và mềm ở khoảng cách gần gấp đôi so với hệ thống trước Ngoài ra, radar phía trước với công nghệ xử lý nâng cao có khả năng xuyên qua các điều kiện thời tiết khắc nghiệt như mưa lớn, sương mù và bụi, cũng như nhận diện xe phía trước.
Hình 1.12: Các cảm biến ứng dụng trên mẫu Model S
- Vào tháng 10 năm 2015, Tesla Motors phát hành bản cập nhật phần mềm cho mẫu xe S, cho phép một tính năng được gọi là "Autopilot"
Hình 1.13: Bảng đồng hồ taplo trên mẫu Model S Autopilot cho phép Tesla S:
- Cải thiện Autosteer khi di chuyển trên xa lộ với tốc độ tối đa được tăng lên đến
- Dễ dàng và thoải mái khi thay đổi làn đường với Auto Lane Change
- Cảnh báo khi xe vượt qua một làn đường đánh dấu
Hệ thống xe hiện đại tích hợp nhiều tính năng an toàn như Cruise Control nhận diện giao thông, phanh khẩn cấp tự động, đèn chiếu sáng tự động, tự đỗ xe song song, cảnh báo va chạm bên hông, phát hiện vật cản ở điểm mù và hỗ trợ tốc độ, mang lại trải nghiệm lái xe an toàn và tiện lợi hơn.
- Sử dụng bộ cảm biến siêu âm có thể hoạt động tốt trong rất nhiều điều kiện thời tiết khác nhau
- Vận tốc tối đa có thể lên đến 145km/h
Xe được trang bị nhiều tính năng an toàn vượt trội như hệ thống phanh khẩn cấp tự động, đèn chiếu sáng tự động, chức năng tự đỗ xe song song, cảnh báo va chạm bên hông, phát hiện vật cản ở điểm mù và hỗ trợ tốc độ, giúp nâng cao trải nghiệm lái xe an toàn hơn.
- Giá thành còn cao so với nhiều mẫu xe trên thị trường
- Chưa hoạt động tốt ở những tuyến đường có mật độ giao thông phức tạp.
Các hệ thống đang có trên thị trường
Hệ thống cảnh báo chệch làn đường (Lane Departure Warning System – LDWS): dựa vào camera theo dõi các vạch kẻ phân làn đường
Hình 1.14: Mô phỏng tình huống xe chệch làn đường
Hệ thống cảnh báo sẽ kích hoạt khi xe có dấu hiệu chạm vào vạch phân làn mà không bật tín hiệu xi nhan hoặc khi vượt xe khác Trên màn hình điều khiển, ranh giới làn đường bị lấn sẽ hiển thị bên trái hoặc bên phải, giúp tài xế nhận diện và điều chỉnh lại hướng lái để trở về làn đường đúng Lưu ý rằng hệ thống này chỉ hoạt động hiệu quả khi xe di chuyển với tốc độ trên 64 km/h.
Hệ thống hỗ trợ giữ làn đường (Lane Keeping Assist – LKA) là công nghệ tiên tiến giúp xe tự động điều chỉnh tay lái và phanh, đảm bảo xe luôn di chuyển đúng trong làn đường của mình.
Hình 1.15: Hệ thống hỗ trợ giữ làn đường giúp xe chạy đúng làn ban đầu
Hệ thống sẽ cảnh báo khi xe vô ý lấn làn mà không bật xi nhan, thông qua âm thanh, đèn tín hiệu trên gương chiếu hậu, hiển thị cảnh báo trên bảng điều khiển hoặc rung vô lăng Nếu tài xế không phản hồi, hệ thống sẽ tự động điều chỉnh bánh xe để đưa xe trở về làn đường an toàn.
Đèn pha tự động (Auto Light beams) là hệ thống chiếu sáng thông minh có khả năng tự động bật hoặc tắt dựa trên điều kiện ánh sáng xung quanh Khi xe di chuyển trong môi trường thiếu ánh sáng như ban đêm, thời tiết xấu hoặc khi đi qua hầm tối, đèn sẽ tự động sáng lên Ngược lại, trong điều kiện ánh sáng đầy đủ, đèn sẽ tự động tắt Ngoài ra, một số hệ thống đèn pha tự động còn tích hợp tính năng chuyển đổi giữa đèn chiếu xa và đèn chiếu gần.
Hình 1.16: Đèn tự động bật/tắt theo điều kiện ánh sáng
Đèn pha tự động trên ô tô hoạt động nhờ vào hệ thống cảm biến quang, có khả năng xác định độ mạnh của ánh sáng xung quanh Khi cảm biến nhận tín hiệu ánh sáng yếu, bộ điều khiển sẽ tự động bật đèn xe Ngược lại, nếu môi trường đủ ánh sáng, bộ điều khiển sẽ tắt đèn để tiết kiệm năng lượng.
Hệ thống cảnh báo tiền va chạm (FCW) sử dụng công nghệ tiên tiến như camera, cảm biến, và tín hiệu radar hoặc laser để phát hiện các tình huống nguy hiểm trước khi xảy ra, từ đó cung cấp cảnh báo kịp thời cho người lái.
Hình 1.17: Hệ thống cảnh báo các va chạm phía trước
Hệ thống radar hoạt động bằng cách phát ra sóng vô tuyến từ mui xe, giúp xác định tốc độ di chuyển và khoảng cách đến các phương tiện khác Điều này được thực hiện thông qua việc theo dõi các thay đổi trong hiện tượng Doppler Shift của sóng vô tuyến khi chúng va chạm với vật thể và quay trở lại điểm phát ra.
+ Hệ thống laser: hoạt động bằng cách phát ra tia laser hồng ngoại từ mui xe
Công nghệ laser cho phép đo khoảng cách giữa hai phương tiện khi chùm tia phản xạ trở lại nguồn Bằng cách sử dụng một công thức toán học đơn giản, hệ thống có thể tính toán tốc độ của xe Dựa trên hai thông tin này, hệ thống FCW xác định nguy cơ va chạm trực diện.
Hệ thống camera của xe bao gồm một camera gắn ở phía trước và bộ xử lý hình ảnh điện tử, giúp xác định nguy cơ va chạm trực diện.
Hệ thống phanh tự động khẩn cấp AEB (Autonomous Emergency Braking) là công nghệ an toàn tiên tiến trên ô tô, giúp ngăn chặn tai nạn từ phía sau hoặc giảm tốc độ khi xảy ra va chạm.
Hình 1.18: Xe tự phanh khẩn cấp
Hệ thống cảnh báo tiền va chạm Forward-Collision Warning (FCW) cung cấp thông tin và tín hiệu để AEB đánh giá khả năng phản ứng của người lái trước nguy cơ va chạm Nếu người lái không kịp thời phản ứng, AEB sẽ tự động can thiệp và thực hiện phanh hoàn toàn nhằm ngăn chặn va chạm xảy ra.
Nhận xét
Nếu động cơ là "trái tim" và dầu nhớt là "mạch máu", thì các tính năng an toàn chính là "đôi mắt" của xe Nhờ vào sự tiến bộ của khoa học kỹ thuật, công nghệ ô tô đã ứng dụng các nền tảng công nghệ hiện đại, giúp các tính năng an toàn trở nên gần gũi và tiện ích hơn cho người dùng Điều này chứng tỏ rằng hệ thống hỗ trợ giám sát an toàn đóng vai trò vô cùng quan trọng trong các mẫu xe ô tô ngày nay.
TỔNG QUAN GIẢI PHÁP
Các giải pháp đang có
- Sử dụng camera để quét dữ liệu mặt đường khi di chuyển, dữ liệu hình ảnh sẽ được truyền về Raspberry để xử lý
- Nhằm tăng tính tối ưu, gắn thêm các cảm biến quanh thân xe để tăng độ chính xác khi hoạt động.
Ý tưởng thiết kế
Dự án tốt nghiệp của chúng em tập trung vào việc thiết kế hệ thống giám sát an toàn cho ô tô, với mục tiêu chính là nâng cao an toàn giao thông và giảm thiểu rủi ro trong cuộc sống Chúng em hướng đến giải quyết các vấn đề xã hội thực tiễn, nhằm tạo ra một môi trường lưu thông an toàn hơn cho mọi người.
- Ý tưởng thực hiện hệ thống giải quyết các vấn đề: giảm thiểu tai nạn do chệch làn đường, đem đến cảm giác an toàn khi lái xe
Hệ thống công nghệ an toàn trên ô tô ngày càng trở nên quan trọng, thu hút sự quan tâm lớn từ người mua xe Nhằm đáp ứng nhu cầu này, nhóm chúng tôi đã phát triển một hệ thống hỗ trợ giám sát an toàn trên ô tô, giúp người dùng sử dụng xe một cách an toàn và hiệu quả nhất.
Hệ thống hỗ trợ giám sát an toàn trên ô tô là các trang bị được thiết kế để hỗ trợ và bổ sung cho người lái, giúp cải thiện khả năng điều khiển phương tiện Mục tiêu chính của hệ thống này là giảm thiểu tối đa nguy cơ xảy ra tai nạn và chấn thương khi lái xe.
Hệ thống hỗ trợ giám sát an toàn trên ô tô cung cấp chức năng giám sát hành trình và cảnh báo các sự cố nguy hiểm như tốc độ vượt quá mức cho phép và va chạm Hệ thống này giúp người lái xe cảm thấy an toàn, thuận tiện và hiệu quả hơn trong quá trình vận hành, từ đó mang lại trải nghiệm sử dụng xe dễ dàng và đơn giản hơn.
Hệ thống này có khả năng tích hợp các tiện ích mở rộng, giúp đáp ứng nhu cầu đa dạng của nhiều ngành nghề khác nhau.
Hệ thống hỗ trợ giám sát an toàn chủ động không chỉ mang lại sự tiện lợi mà còn đóng vai trò thiết yếu trong việc bảo vệ người lái và hành khách trên xe.
2.2.3 Lựa chọn các phương án thiết kế
Qua quá trình để lựa chọn những ý tưởng để thiết kế thì chúng em có một số phương pháp thiết kế sau:
Chúng em áp dụng phương pháp so sánh trong thiết kế, nhằm đưa ra các phương án tối ưu phù hợp với đề tài, từ đó kích hoạt hệ thống hoạt động hiệu quả nhất.
- Thiết kế bằng phương pháp nghiên cứu: Chúng em kết hợp mô phỏng lý thuyết trên máy tính và thực nghiệm trên ô tô con
Thiết kế theo phương pháp phân tích cho phép chúng em chia nhỏ hệ thống thành các phần riêng biệt, từ đó thực hiện phân tích và nghiên cứu kỹ lưỡng từng bộ phận.
Phương pháp “Thiết kế bằng phương pháp phân tích” đã mang lại kết quả tối ưu cho nhóm em, mặc dù vẫn gặp phải một số khó khăn trong quá trình thực hiện.
+ Ưu điểm: Có kết quả chi tiết của từng bộ phận nhanh chóng, giúp cho đề tài vững chắc hơn khi ghép lại
Một nhược điểm của việc lắp ghép mô hình là cần phải kết hợp nhiều công cụ khác nhau, điều này dẫn đến việc tốn nhiều thời gian hơn để chỉnh sửa và hoàn thiện từng bộ phận của mô hình.
Cấu trúc đề tài
Sơ đồ khối ý tưởng đề tài:
Hình 2.1: Sơ đồ khối cấu trúc hoạt động của đề tài
Trong báo cáo, nhóm nghiên cứu đã nỗ lực trình bày một cách logic, giúp người đọc dễ dàng hiểu biết về kiến thức, phương pháp và cách thức hoạt động của đề tài.
Các tính năng của đề tài
2.4.1 Hệ thống hỗ trợ giữ làn đường:
Hệ thống Hỗ trợ Giữ Làn Đường (LKAS) giúp xe duy trì vị trí chính giữa làn đường, ngăn ngừa tình trạng xe bị lệch ra ngoài Mục tiêu của LKAS là giảm thiểu nguy cơ va chạm do xe di chuyển không đúng làn đường.
The Lane Keeping Assist System (LKAS) is typically integrated with the Lane Departure Warning System (LDWS) and the Frontal Collision Warning System (FCW) to enhance vehicle safety and driving assistance.
Hình 2.2: Cách thức hoạt động của Lane keeping
Hệ thống Lane keeping assist gồm có:
Camera xử lý ảnh được lắp đặt trước xe, ngay sau kính chắn gió, giúp nhận diện làn đường và định vị vị trí xe thông qua GPS Thiết bị này hoạt động hiệu quả trên cả đường cong và đường thẳng, đảm bảo xe luôn duy trì vị trí giữa làn đường trong suốt quá trình di chuyển.
Cảm biến Radar và siêu âm được sử dụng để đo khoảng cách giữa xe và các vật thể xung quanh, từ đó kích hoạt hệ thống cảnh báo va chạm trước (Frontal Collision Warning Systems - FCW).
Khi xe di chuyển trên đường có tuyết, lá cây rụng hoặc bụi bẩn che khuất vạch kẻ đường, camera sẽ gặp khó khăn trong việc xác định giới hạn làn đường Điều này có thể dẫn đến việc xe không di chuyển đúng làn, dễ dàng cán qua vạch kẻ đường trong những đoạn đường này.
Sơ đồ hoạt động của hệ thống:
Hình 2.3: Sơ đồ hoạt động của hệ thống
- Đầu tiên: Camera sẽ ghi lại hình ảnh làn đường xe đang di chuyển, thông tin này được chuyển đến module lane keeping
Bộ phận giám sát xe sẽ nhận và phân tích thông tin từ camera, nhằm xác định xem xe có đang di chuyển lệch sang vạch phân cách bên phải hoặc bên trái hay không.
- Thông tin sau đó sẽ được quy đổi để tính ra góc lái và momen đánh lái sao cho xe di chuyển về vị trí giữa làn đường
Sau khi phân tích và tính toán, mọi thông tin sẽ được chuyển đổi thành tín hiệu, từ đó tín hiệu này sẽ được gửi đến bộ chấp hành để điều chỉnh hướng di chuyển của xe.
2.4.2 Hệ thống nhận biết tín hiện biển báo giao thông
Việc nhận diện tín hiệu giao thông đóng vai trò quan trọng trong việc điều khiển xe tự hành, giúp xe nhận biết các biển báo và tín hiệu đèn giao thông Điều này đảm bảo rằng xe di chuyển đúng theo quy định của luật giao thông khi lưu thông trên đường.
Tất cả dữ liệu hình ảnh của biển báo và tín hiệu giao thông được lưu trữ trong bộ CPU, giúp xe nhận diện các biển báo phù hợp Dữ liệu này được tùy chỉnh theo từng quốc gia, đảm bảo xe có thông tin chính xác về biển báo và tín hiệu giao thông của quốc gia mà nó đang lưu thông.
Hình 2.4: Dữ liệu hình ảnh biển báo được lưu trữ
Việc nhận dạng và xử lý hình ảnh biển báo hoặc tín hiệu đèn giao thông gặp nhiều khó khăn do phụ thuộc vào điều kiện môi trường như ánh sáng, biển báo bị che khuất, ô nhiễm không khí và các yếu tố thời tiết như nắng, mưa, sương mù, tuyết Ngoài ra, sự rung động trong quá trình di chuyển của xe cũng dẫn đến biến dạng hình ảnh, làm cho việc nhận diện biển báo trở nên phức tạp hơn.
Hình 2.5: Một số biển sai lệch hoặc bị che khuất
Việc xử lí hình ảnh gồm có các giai đoạn:
Trong giai đoạn phân loại màu sắc, hình ảnh sẽ được phân tích dựa trên không gian màu đã lưu trữ Nếu hình ảnh chứa màu đỏ và màu xanh dương, nó sẽ được xử lý tiếp; ngược lại, hình ảnh sẽ bị loại bỏ Điều này quan trọng vì biển báo giao thông thường sử dụng hai màu sắc chủ đạo này là xanh và đỏ.
- Giai đoạn nhận dạng hình dạng: những vùng có màu đỏ và xanh dương sẽ được giới hạn ranh giới màu
Hình 2.6: Nhận dạng hình ảnh biển báo
Việc nhận dạng hình ảnh hiệu quả sẽ giảm thiểu tình trạng nhầm lẫn, từ đó nâng cao tốc độ và độ chính xác trong quá trình xử lý hình ảnh.
Giai đoạn phân tích hình ảnh bắt đầu sau khi đã phân loại màu sắc và nhận diện hình ảnh Tại đây, bộ xử lý sẽ tiến hành phân tích sâu hơn để cung cấp những miêu tả chính xác nhất về biển báo.
Trong giai đoạn phân loại hình ảnh, các biển báo thu được sẽ được so sánh với dữ liệu hình ảnh đã lưu trữ Nếu phát hiện sự trùng khớp, biển báo sẽ được ghi nhận và bộ xử lý sẽ gửi tín hiệu đến bộ chấp hành của xe, từ đó thực hiện các hành động phù hợp với từng loại biển báo.
Hình 2.7: Sơ đồ hoạt động của hệ thống Traffic signs 2.4.3 Hệ thống kiểm soát hành trình tự động (ACCS)
Hệ thống điều khiển hành trình tự động (ACCS), còn được biết đến với các tên gọi như Adaptive cruise control, Radar cruise control và Traffic-aware cruise control, là công nghệ tiên tiến giúp duy trì và điều chỉnh tốc độ của xe Hệ thống này đảm bảo khoảng cách an toàn với xe phía trước, từ đó giảm nguy cơ va chạm và nâng cao an toàn khi lái xe.
Hình 2.8: Sử dụng Camera xác định phương tiện phía trước
Nhận xét
Việc trang bị các tính năng an toàn trên ô tô là rất quan trọng, không chỉ hỗ trợ tài xế trong quá trình lái xe mà còn mang lại cảm giác an toàn cho cả tài xế và những người xung quanh Những tính năng này giúp hạn chế các sự cố không mong muốn xảy ra.
PHƯƠNG PHÁP GIẢI QUYẾT
Tình trạng thực tiễn hiện nay
Tai nạn giao thông đường bộ đang là vấn đề nghiêm trọng trên toàn thế giới, với một phần ba các vụ tai nạn nghiêm trọng liên quan đến tốc độ không phù hợp Việc giảm thiểu tai nạn và thiệt hại là thách thức lớn cho các cơ quan quản lý giao thông, nhà sản xuất ô tô và công ty vận tải Để cung cấp thông tin cho lái xe về môi trường giao thông, hệ thống biển báo giao thông đã được sử dụng từ lâu, giúp cảnh báo về tình trạng đường, nguy cơ sai lệch làn đường và các tình huống nguy hiểm, đồng thời hướng dẫn hành vi cần thiết cho người lái.
Hình 3.1: Một số vụ tai nạn khi xe chưa trang bị hệ thống an toàn
* Nhận xét tình trạng thực tế:
Nhóm chúng tôi nhận thấy tính cấp thiết trong việc nghiên cứu và phát triển mô hình “Hệ thống hỗ trợ giám sát an toàn trên ô tô” nhằm giải quyết các vấn đề hiện tại Mục tiêu chính của đề tài là giảm thiểu tối đa các trường hợp tai nạn không đáng có, từ đó nâng cao mức độ an toàn cho người sử dụng ô tô.
Nhiều người vẫn chưa nắm rõ công dụng và lợi ích của hệ thống hỗ trợ giám sát an toàn Do đó, việc đầu tiên cần làm là làm rõ khái niệm và các tính năng của hệ thống này.
Tính năng chung của hệ thống hỗ trợ giám sát an toàn
Hệ thống hỗ trợ giám sát an toàn trên ô tô được thiết kế để theo dõi hoạt động của xe, cung cấp nhiều tính năng tiện ích nhằm hỗ trợ người lái Hệ thống này giúp nâng cao sự an toàn và thuận tiện trong quá trình lái xe.
- Hệ thống gồm những tính năng:
Hệ thống hỗ trợ lái xe giúp người lái duy trì làn đường và kiểm soát tốc độ của bánh xe, giảm nguy cơ va chạm trong tình huống nguy hiểm Khi xe lệch sang bên phải, hệ thống tự động điều chỉnh hướng về bên trái và ngược lại Đặc biệt, trong trường hợp khẩn cấp, hệ thống can thiệp vào cả 4 bánh xe để giảm tốc độ, hỗ trợ người lái dừng xe kịp thời khi cần thiết.
Hệ thống hỗ trợ người lái nhận diện biển báo giao thông một cách thuận tiện, giúp họ dễ dàng xử lý tình huống và tránh mắc lỗi do hiểu sai biển báo Đặc biệt, khi gặp biển báo hầm chui, hệ thống sẽ tự động bật đèn để đảm bảo an toàn, ngăn ngừa trường hợp người lái quên thực hiện.
Hệ thống sử dụng cảm biến kết hợp với camera để giúp người lái duy trì khoảng cách an toàn với các phương tiện phía trước và phía sau Nếu khoảng cách không an toàn, hệ thống sẽ cảnh báo người lái bằng âm thanh từ loa.
Các hạn chế còn gặp phải, cách khắc phục và sơ đồ
Hình 3.2: Tình trạng mặt đường hiện nay
Tính năng cảnh báo chệch làn đường sử dụng camera để theo dõi các vạch kẻ phân làn, tuy nhiên, chức năng này có thể bị hạn chế khi không có vạch kẻ, vạch bị mờ hoặc không rõ ràng, cũng như khi mặt đường bị che phủ bởi cát hoặc khi di chuyển qua các đoạn đường cong.
- Khi bị ánh sáng mặt trời chiếu thẳng vào thì camera sẽ không thể phân tích được dữ liệu mặt đường
- Đường quá nhiều nước, vạch kẻ đường quá mỏng, hệ thống cũng sẽ hoạt động không chính xác
- Ngoài ra, đôi khi có thể xảy ra lỗi của cảnh báo khi theo dõi làn đường khi lấn qua đường gạch đứt đoạn
- Hệ thống sẽ hoạt động một cách tốt nhất, hiệu quả nhất nên người lái cần chú ý đặt camera đúng vị trí
-Thường xuyên lau chùi, bảo trì và kiểm tra để camera hoạt động bình thường và tốt nhất
- Chú trọng chất lượng, thường xuyên sửa chữa, nâng cấp cơ sở hạ tầng
- Thường xuyên vẽ lại vạch kẻ đường khi bị mờ
Sơ đồ giải thuật của tính năng cảnh báo chệch làn đường
Bắt đầu quá trình bằng cách nhập vào thông tin về làn đường xe chạy trên đường Điều kiện cần thiết là camera phải tiếp nhận hình ảnh chính xác Sau đó, Raspberry sẽ xử lý dữ liệu để giữ ổn định và bám sát làn đường Cuối cùng, kết quả sẽ được xuất ra thông qua đồng hồ talop.
Bắt đầu quá trình bằng cách nhập vào thông tin về làn đường xe chạy Điều kiện cần thiết là camera phải tiếp nhận hình ảnh Khi xe lệch làn và chạm vào vạch kẻ đường bên trái, hệ thống Raspberry sẽ xử lý tình huống này bằng cách tự động điều chỉnh xe rẽ về bên phải, hoặc ngược lại để ổn định xe vào đúng làn đường của mình Kết quả cuối cùng sẽ được hiển thị trên đồng hồ taplo.
3.3.2 Tính năng nhận biết các biển báo giao thông
Hình 3.3: Những tình huống biển báo bị che khuất
- Các biển báo giao thông bị mờ, thiếu hoặc bị che khuất cũng gây khó khăn trong quá trình phân tích dữ liệu của camera
- Người lái xe không nắm rõ các kiến thức về biển báo giao thông đường bộ
- Rà soát, khắc phục cũng như loại bỏ những biển báo đã được sửa đổi và đã không còn phát huy tác dụng
- Thường xuyên cắt, tỉa các cành cây che phủ chỗ đặt biển báo giao thông
- Liên tục cập nhập các biển báo giao thông đường bộ
- Phổ cập thêm nhiều biển báo đi đường cũng như kiến thức hiểu biết về biển báo cho người lấy
Sơ đồ giải thuật của tính năng nhận biết biển báo giao thông
Bắt đầu quá trình bằng cách nhập vào biển báo giao thông trên đường Camera sẽ tiếp nhận hình ảnh và truyền tải dữ liệu Raspberry Pi sau đó sẽ xử lý và đọc các biển báo giao thông đã được lập trình sẵn, đảm bảo nhận diện chính xác và nhanh chóng.
=> Xuất: Đồng hồ taplo => Kết thúc
Bắt đầu quá trình bằng cách nhập vào biển báo giao thông trên đường Camera sẽ tiếp nhận thông tin và xử lý các biển báo hầm chui Raspberry Pi sẽ xử lý khi gặp biển báo đã được lập trình sẵn, từ đó kích hoạt đèn tự động bật Kết quả cuối cùng sẽ hiển thị trên đồng hồ taplo.
3.3.3 Tính năng phanh khẩn cấp khi gặp vật cản
Hình 3.4: Tai nạn liên hoàn do xe phang gấp
- Còn hạn chế khi nhận diện vật cản Phần lớn các xe chỉ nhận diện được hình dạng của xe, người đi bộ hoặc xe đạp
Khi camera trên kính chắn gió bị bụi bẩn hoặc ảnh hưởng bởi thời tiết, tính năng nhận diện vật cản sẽ bị ảnh hưởng, vì nó hoạt động dựa vào camera và radar ở phía trước xe.
- Khi người lái có bất kỳ động thái như: tăng ga, đánh lái, hoặc phanh
- Khi người lái xe có tín hiệu báo rẽ, tăng tốc hoặc đạp ga đột ngột
- Ảnh hưởng do thời tiết, chất lượng đường xá cũng như ý thức của người lái xe
- Thường xuyên lau chùi, bảo trì và kiểm tra để camera hoạt động bình thường và tốt nhất
- Kết hợp với các cảm biến va chạm phía trước cũng như phía sau để được thuận tiện nhất
- Cập nhật, năng cấp thêm nhiều tình huống cũng như các vật cản
Sơ đồ giải thuật của tính năng phanh khẩn cấp khi gặp vật cản
Bắt đầu quá trình bằng cách nhập vào thông tin về vật cản phía trước xe Cảm biến khoảng cách sẽ tiếp nhận điều kiện và truyền dữ liệu đến ARDUINO ARDUINO sẽ xử lý thông tin để giữ ổn định cho việc bám làn đường Kết quả được xuất ra thông qua đồng hồ talop, hoàn tất quy trình.
Khi bắt đầu, xe sẽ nhập vào thông tin về vật cản phía trước Dựa vào điều kiện từ cảm biến khoảng cách, xe sẽ nhận diện có xe chạy phía trước Nếu phát hiện nguy hiểm, hệ thống ARDUINO sẽ xử lý tình huống kịp thời.
Cảm biến khoảng cách hoạt động xe giúp xử lý tình huống khi có nguy cơ va chạm, tác động vào 4 bánh xe để hãm phanh từ từ, giúp xe chậm lại an toàn Thông tin này được hiển thị trên đồng hồ taplo, đảm bảo người lái nắm rõ tình trạng xe.
Khi bắt đầu, hệ thống sẽ nhận diện vật cản phía trước xe thông qua cảm biến khoảng cách Nếu phát hiện có xe chạy phía trước, ARDUINO sẽ xử lý thông tin và cảnh báo khi khoảng cách trở nên nguy hiểm, đặc biệt nếu khoảng cách vượt quá giới hạn an toàn có thể gây ra tai nạn.
Cảm biến khoảng cách trên xe hoạt động bằng cách tác động trực tiếp vào hệ thống phanh của cả 4 bánh, giúp xe dừng lại kịp thời và giảm thiểu nguy cơ va chạm Thông tin về trạng thái này được hiển thị trên đồng hồ taplo.
QUY TRÌNH THIẾT KẾ
Tổng quan mô hình
* Sơ đồ mạch điện hệ thống giữ làn đường và nhận biết biển báo:
* Sơ đồ đi dây trên BreadBoard:
* Sơ đồ mạch cảm biến va chạm:
* Sơ đồ đi dây trên BreadBoard:
Hiện nay, các tập đoàn lớn như Tesla, Google và Apple đang nỗ lực phát triển xe tự lái, nhằm tạo ra một môi trường sống thông minh và hiện đại với nhiều tiện ích cho con người Nhiều nhà phân tích dự đoán rằng trong 5 năm tới, xe ô tô hoàn toàn tự lái sẽ xuất hiện tại các thành phố, và trong 30 năm tới, hầu hết ô tô sẽ tự động hoàn toàn Do đó, nhóm chúng tôi quyết định áp dụng các phương pháp tương tự để mô phỏng một chiếc xe tự hành riêng Dưới đây là những phần mà nhóm đã thực hiện để phát triển chiếc xe tự hành này.
- Liệt kê các phần cứng và liên kết thống nhất
- Hướng dẫn Raspberry có được tính năng an toàn của xe tự hành.
Các phần cứng
Raspberry Pi là một máy tính nhỏ gọn nhưng mạnh mẽ, có khả năng chạy hệ điều hành và cài đặt nhiều ứng dụng với giá chỉ vài chục USD Được phát triển bởi tổ chức Raspberry Pi Foundation với mục tiêu giảng dạy máy tính cho trẻ em và cung cấp công cụ nghiên cứu giá rẻ cho sinh viên, Raspberry Pi nhanh chóng nhận được sự đánh giá cao từ cộng đồng nhờ tính ứng dụng và phần cứng hỗ trợ tốt Thiết bị này phù hợp cho các ứng dụng yêu cầu khả năng xử lý mạnh mẽ, đa nhiệm và giải trí, đặc biệt là trong môi trường chi phí thấp Hiện nay, đã có hàng ngàn ứng dụng đa dạng được cài đặt trên Raspberry Pi.
- Raspberry Pi 3 Model B+ được ra mắt vào ngày 14/03/2018
Raspberry Pi Vietnam has officially launched the Raspberry Pi 3 Model B+ in Vietnam, featuring the Made in the UK version produced by RS Components or Element14.
Hình 4.1: Tổng quan mạch Raspberry
Raspberry Pi vừa ra mắt sản phẩm mới nhất với chip 4 nhân 64-bit mạnh mẽ, đạt tốc độ 1.4GHz, nhanh nhất từ trước đến nay Phiên bản này còn tích hợp Wifi Dual-band 2.4GHz và 5GHz, Bluetooth 4.2/Bluetooth Low Energy, cùng với cổng Ethernet tốc độ cao 300Mbps và hỗ trợ Power over Ethernet (PoE) thông qua PoE HAT.
- Ngoài những thay đổi đó, kích thước bề ngoài cũng như phần mềm của Raspberry
Pi 3 Model B+ không thay đổi Nghĩa là bạn hoàn toàn có thể sử dụng các phụ kiện cũ như vỏ, thẻ nhớ, adapter (nguồn điện) hoặc các phần mềm đang chạy trên Raspbian/Ubuntu hiện tại Tuy nhiên, về hệ điều hành thì các bạn cần tải bản mới nhất để có thể hỗ trợ được bo mạch mới nhất này
- Có 2 phụ kiện bắt buộc phải có để có thể chạy Raspberry là: nguồn cung cấp và thẻ nhớ để cài hệ điều hành
Để tối ưu hóa việc sử dụng các ứng dụng trên Raspberry, bạn nên xem xét bổ sung các sản phẩm hỗ trợ như dây HDMI để kết nối với màn hình máy tính, cáp mạng và camera.
Chức năng của Raspberry Pi 3:
- Hiện nay, có thể thấy người ta dùng Raspberry Pi làm các thứ như:
Đầu coi phim HD giống như Android Box, hỗ trợ KODI đầy đủ
Máy chơi game cầm tay, console, game thùng Chơi như máy điện tử băng ngày xưa, giả lập được nhiều hệ máy
Dùng làm VPN cá nhân
Biến ổ cứng bình thường thành ổ cứng mạng (NAS)
Làm camera an ninh, quan sát từ xa
Hiển thị thời tiết, hiển thị thông tin mạng nội bộ
Máy nghe nhạc, máy đọc sách
Làm thành một cái máy Terminal di động có màn hình, bàn phím, pin dự phòng để sử dụng mọi lúc mọi nơi, dò pass Wi-Fi
Làm thiết bị điều khiển Smart Home, điều khiển mọi thiết bị điện tử trong nhà Điều khiển robot, máy in không dây từ xa, Airplay
- Vi xử lý: Broadcom BCM2837B0, quad-core A53 (ARMv8) 64-bit SoC
- Kết nối: 2.4GHz and 5GHz IEEE 802.11 b/g/n/ac wireless LAN, Bluetooth 4.2, BLE, Gigabit Ethernet over USB 2.0 (Tối đa 300Mbps)
- Video và âm thanh: 1 cổng full-sized HDMI, Cổng MIPI DSI Display, cổng MIPI CSI Camera, cổng stereo output và composite video 4 chân
- Multimedia: H.264, MPEG-4 decode (1080p30), H.264 encode (1080p30), OpenGL ES 1.1, 2.0 graphics
- Nguồn điện sử dụng: 5V/2.5A DC cổng microUSB, 5V DC trên chân GPIO, Power over Ethernet (PoE) (yêu cầu thêm PoE HAT)
Arduino là nền tảng mã nguồn mở lý tưởng cho việc phát triển các dự án điện tử, bao gồm bảng mạch lập trình (vi điều khiển) và phần mềm IDE (Môi trường phát triển tích hợp) trên máy tính, giúp người dùng viết và tải mã lên bo mạch một cách dễ dàng.
Nền tảng Arduino đã trở nên phổ biến đối với những người mới bắt đầu trong lĩnh vực điện tử nhờ vào tính đơn giản và dễ sử dụng Khác với các bo mạch lập trình trước đây, Arduino cho phép tải mã mới chỉ bằng cáp USB mà không cần phần cứng riêng Bên cạnh đó, Arduino IDE sử dụng phiên bản đơn giản của C++, giúp việc học lập trình trở nên dễ dàng hơn Ngoài ra, Arduino cung cấp mẫu chuẩn, giúp người dùng tiếp cận các chức năng của bộ vi điều khiển một cách dễ dàng.
- Có nhiều loại bo mạch Arduino sử dụng cho các mục đích khác nhau, nhưng hầu hết Arduino có các thành phần như dưới đây:
Hình 4.2: Mạch điển tử Arduino Uno
2 Các Chân (5V, 3.3V, GND, Digital, Analog, PWM, ISF)
4 Đèn Led báo nguồn (Power Led Indicator)
5 Led TX và RX (TX RX LEDs)
7 Bộ điều chỉnh điện áp (Voltage Regulator)
Vi điều khiển Atmega328P Điện áp hoạt động 5V Điện áp cấp (hoạt động tốt) 7 – 12 V Điện áp cấp (giới hạn) 6 – 12 V
Chân I/O digital 14 ( có 6 chân xuất xung PWM)
Dòng điện mỗi chân I/O 20 mA
Bộ nhớ Flash 32 kB (Atmega328P) – trong đó 0.5 kB dùng cho bootloader.
Tốc độ xung nhịp 16 MHz
Phần cứng và phần mềm Arduino được phát triển dành cho nghệ sĩ, nhà thiết kế, hacker và những người đam mê tạo ra các đối tượng hoặc môi trường tương tác Với khả năng kết nối đến các thiết bị như nút bấm, đèn LED, động cơ, loa, GPS, máy ảnh, internet và điện thoại thông minh, Arduino mang lại sự linh hoạt tối đa Phần mềm miễn phí, bo mạch phần cứng giá cả phải chăng và dễ học đã thu hút một cộng đồng lớn người dùng, những người đã đóng góp mã nguồn và hướng dẫn cho nhiều dự án sáng tạo dựa trên Arduino.
Arduino là bộ não cho nhiều dự án điện tử, từ robot và miếng sưởi ấm tay đến các máy dự đoán tương lai.
- Tháng 4/2016, Raspberry Pi Foundation ra mắt thế hệ thứ 2 của sản phẩm Camera Module với nâng cấp đáng kể nhất là sử dụng sensor Sony IMX219 8 Megapixel
- Raspberry Pi Camera Module V2 có một cảm biến 8-megapixel (MP) của Sony IMX219 (so với cảm biến 5-megapixel (MP) OmniVision OV5647 trên Camera Module phiên bản cũ)
Camera Module là một thiết bị lý tưởng cho việc quay video độ nét cao và chụp ảnh tĩnh, dễ dàng sử dụng cho người mới bắt đầu nhưng cũng cung cấp nhiều giải pháp mở rộng cho người dùng chuyên nghiệp Nhiều người dùng đã chia sẻ các demo ấn tượng về tính năng của Camera Module, bao gồm chụp Time-Lapse, Slow-Motion và nhiều ứng dụng khác Để tận dụng tối đa khả năng của camera này, bạn có thể tham khảo hướng dẫn sử dụng để tạo ra các hiệu ứng độc đáo.
Raspberry Pi Camera Module V2 mang đến chất lượng hình ảnh vượt trội với màu sắc trung thực và hiệu suất tốt trong điều kiện ánh sáng thấp Nó hỗ trợ video lên đến 1080P30, 720P60 và chế độ VGA90, cùng với khả năng chụp hình Thiết bị vẫn sử dụng cáp 15cm kết nối qua cổng CSI trên Raspberry Pi.
- Chiếc camera này tương thích với tất cả các phiên bản của Raspberry Pi
- Ống kính tiêu cự cố định
- Cảm biến độ phân giải 8 MP cho khả năng chụp ảnh kích thước 3280 x 2464
- Kích thước 25mm x 23mm x 9mm
- Kết nối với Raspberry Pi thông qua cáp ribbon đi kèm dài 15 cm
Loa Buzzer 5V (Còi chíp, còi bíp) là một sản phẩm còi báo hiệu phổ biến trong các mạch điện tử Với thiết kế nhỏ gọn và chân cắm tiện lợi, loa buzzer này được sử dụng để phát âm thanh báo động và tín hiệu hiệu quả.
- Dòng điện tiêu thụ: 80 dB
- Nhiệt độ hoạt động:-20 °C đến +70 °C
- Kích thước : Đường kính 12mm, cao 9,7mm
Hình 4.5: Sơ đồ nối mạch 4.2.5 Mạch động cơ L298N
- Mạch động cơ L298N là một module thông dụng với chức năng thông dụng và giá thành cực kỳ rẻ là lựa chọn của các bạn học sinh, sinh viên.
Hình 4.6: Mạch động cơ L298N và chú thích chi tiết
- Driver: L298N tích hợp hai mạch cầu H.
- Dòng tối đa cho mỗi cầu H là: 2A (=>2A cho mỗi motor)
- Điện áp của tín hiệu điều khiển: +5 V ~ +7 V
- Dòng của tín hiệu điều khiển: 0 ~ 36mA
- Công suất hao phí: 20W (khi nhiệt độ T = 75 ℃)
12V power, 5V power Đây là 2 chân cấp nguồn trực tiếp đến động cơ + Ta có thể cấp nguồn 9-12V ở 12V
+ Bên cạnh đó có jumper 5V
Power GND chân này là GND của nguồn cấp cho Động cơ
Gồm có 4 chân Input IN1, IN2, IN3, IN4 Output A: nối với động cơ A.
Phần mềm
Thiết lập hệ điều hành Raspberry Pi
Cài đặt hệ điều hành NOOBS RASPBIAN vào thẻ microSD và gắn vào mạch Raspberry Sau khi hoàn tất cài đặt và khởi động lại, màn hình GUI sẽ hiển thị đầy đủ, tương tự như giao diện của Windows.
Hình 4.7: Giao diện hệ điều hành Raspberry Pi
- Trong quá trình cài đặt, Pi sẽ yêu cầu thay đổi mật khẩu cho người dùng mặc định
- Sau khi thiết lập xong các cài đặt ban đầu, ta sẽ nâng cấp lên phần mềm mới nhất
Thiết lập quyền truy cập từ xa
- Thiết lập truy cập từ xa cho phép máy tính Pi chạy không cần kết nối thiết bị ngoại vi (màn hình, chuột, bàn phím) với nó mọi lúc
- Kết nối với Pi Car qua VNC từ Laptop
- Cài đặt phần mềm Cascade-Trainer GUI để dạy xe ghi nhớ và so sánh hình ảnh.
Các tính năng trên xe mô hình
Hệ thống giữ làn đường tự động:
Hệ thống giữ làn đường bao gồm hai thành phần chính: nhận biết và lập kế hoạch đường đi Tính năng nhận biết làn đường hoạt động bằng cách quay video để xác định tọa độ các vạch làn đường Tuy nhiên, trước khi phát hiện làn đường trong video, cần phải nhận diện chúng trong một hình ảnh tĩnh Do đó, quá trình phát hiện làn đường trong video thực chất là việc lặp lại các bước tương tự cho từng khung hình.
- Xác định màu của làn đường: nhóm sử dụng băng keo màu trắng để tạo thành 1 làn đường với nét liền đậm màu trắng
Hình 4.8: Mô hình đường đi
Để phân tích video từ camera V2.1 gắn trên xe, bước đầu tiên là cô lập các vùng màu trắng trong hình ảnh Điều này được thực hiện bằng cách chuyển đổi không gian màu từ RGB (đỏ, xanh lá, xanh dương) sang HSV (Màu sắc, Độ bão hòa, Giá trị) Việc chuyển đổi này giúp xử lý các phần khác nhau của màu băng keo trắng, vì trong không gian RGB, chúng có thể xuất hiện với độ sáng khác nhau Khi chuyển sang không gian màu HSV, thành phần Hue sẽ đồng nhất màu trắng, bất kể độ bóng của nó, giúp dễ dàng nhận diện băng màu trắng trên đường.
Hình 4.9: Hình ảnh trong không gian màu HSV
OpenCV đọc hình ảnh vào không gian màu BGR (Xanh lam, xanh lá cây, đỏ) thay vì không gian màu RGB (Đỏ, xanh lá cây, xanh lam) như thường thấy Mặc dù BGR và RGB là các không gian màu tương đương, thứ tự của các màu trong chúng đã được hoán đổi.
Sau khi chuyển đổi hình ảnh sang không gian màu HSV, chúng ta có thể loại bỏ tất cả các màu trắng trong hình ảnh bằng cách xác định một dải màu trắng cụ thể.
Hình 4.10: Xác định đường Lane Phát hiện các đường viền của làn đường:
Chúng ta cần phát hiện các cạnh trong khối dải màu trắng để tạo ra những đường phân biệt đại diện cho các làn đường màu trắng.
- Thực hiện lệnh Canny, đây là 1 lệnh chính xác để phát hiện các cạnh trong một hình ảnh
Hình 4.11: Xác định đường viền ngoài của Lane
Cô lập khu vực quan tâm:
Hình ảnh cho thấy nhiều khu vực màu trắng không phải là vạch phân làn đường, tất cả đều nằm ở nửa trên của màn hình Khi thực hiện điều hướng làn đường, chúng ta chỉ cần tập trung vào việc phát hiện các vạch kẻ làn đường gần xe hơn.
Chúng ta sẽ cắt bỏ nửa trên của 45 nơi cuối màn hình, để lại hai vạch phân làn được đánh dấu rõ ràng, như thể hiện trong hình ảnh bên phải.
Hình 4.12: Vạch phân làn đường Phát hiện phân đoạn dòng:
Trong hình ảnh với các cạnh cắt, con người có thể dễ dàng nhận diện bốn đường biểu thị hai làn đường, trong khi máy tính chỉ thấy một tập hợp các pixel trắng trên nền đen Để trích xuất tọa độ của các đường làn này từ các pixel trắng, chúng ta sử dụng Hough Transform - một kỹ thuật trong xử lý hình ảnh nhằm phát hiện các đối tượng hình học như đường thẳng, hình tròn và hình elip Hàm HoughLinesP sẽ khớp nhiều đường qua các pixel trắng và trả về tập hợp các đường có khả năng xuất hiện cao nhất, dựa trên các giới hạn ngưỡng tối thiểu.
Hình 4.13: Các phân đoạn dòng được phát hiện bởi Hough Transform
- Nếu chúng ta in ra đoạn thẳng được phát hiện, nó sẽ hiển thị các điểm cuối (x1, y1) theo sau là (x2, y2) và độ dài của mỗi đoạn thẳng
Kết hợp các đoạn đường thành hai làn đường:
Để kết hợp các đoạn thẳng nhỏ với tọa độ điểm cuối (x1, y1) và (x2, y2) thành hai đường làn trái và phải, chúng ta có thể phân loại chúng theo độ dốc Các đoạn thẳng thuộc làn đường bên trái có độ dốc dương và nằm bên trái màn hình, trong khi các đoạn thẳng thuộc làn đường bên phải có độ dốc âm và nằm bên phải màn hình Sau khi phân loại, chúng ta chỉ cần tính trung bình cộng của độ dốc và điểm giao nhau để xác định độ dốc và điểm giao nhau của các đường làn bên trái và bên phải.
- Đây là hình ảnh cuối cùng với các đường làn được phát hiện được vẽ bằng màu xanh lá cây
Hình 4.14: Đường phân làn được phát hiện Lập kế hoạch chuyển động:
Để điều khiển xe nằm trong vạch kẻ làn đường, chúng ta cần sử dụng tọa độ của các vạch này và tính toán góc lái của ô tô Mục tiêu là giữ xe ở giữa làn đường, đảm bảo an toàn và ổn định khi di chuyển.
Hai đường làn được phát hiện:
Chúng ta có thể xác định hướng đi bằng cách tính trung bình các điểm cuối của cả hai làn đường Đường căn chỉnh màu xanh dưới đây cho thấy rằng điểm dưới của nó luôn nằm ở giữa màn hình, nhờ vào việc camera hành trình được lắp đặt ở giữa xe và hướng thẳng về phía trước.
Hình 4.15: Đường căn chỉnh màu xanh ở giữa
Để xe có thể rẽ đúng hướng, cần tính toán góc lái phù hợp Góc lái 90 độ biểu thị hướng thẳng, trong khi góc từ 45 độ đến 89 độ là để rẽ trái, và góc từ 91 độ đến 135 độ là để rẽ phải.
Nhận biết biển báo giao thông vào hầm
Đầu tiên, cần cài đặt phần mềm Cascade Trainer GUI trên máy tính Phần mềm này giúp đào tạo cho Raspberry Pi khả năng nhận diện biển báo Sau khi camera truyền hình ảnh vào Raspberry, thiết bị sẽ so sánh và thực hiện lệnh đã được lập trình trước đó.
Chúng ta sẽ sử dụng camera V2.1 gắn trên xe để chụp ảnh biển báo từ nhiều góc độ khác nhau Việc này giúp đảm bảo xe hoạt động ổn định và nhận diện biển báo một cách chính xác nhất trong thực tế.
Hình 4.16: Các góc chụp của camera truyền về
- Chúng ta nhập 1 tệp tất cả hình ảnh đã chụp vào phần mềm Trainer GUI
- Thực hiện zoom hình và cắt khoanh vùng xuất hiện biển báo bằng chuột
- Thực hiện chạy phần mềm kết quả trả về là một tệp mới trong đó biển báo vào hầm sau khi được phát hiện sẽ nằm trong ô màu đỏ
Hình 4.17: Vùng nhận diện biển báo của camera
Kết quả cuối cùng là một thuật toán được phát triển để xác định biển báo trong không gian sau khi nhập hình ảnh Thuật toán này sẽ được tải lên Raspberry Pi để nhận diện hình ảnh từ camera gắn trên xe.
Kiểm soát hành trình chủ động và vật cản phía trước
Sơ đồ vận hành hệ thống:
- Khi được cấp nguồn động cơ bắt đầu hoạt động quay với vận tốc 70 vòng/phút
Hình 4.18: Xe di chuyển bình thường không có vật cản
Khi xe gặp vật cản ở phía trước:
Hình 4.19: Khi gặp vật cản phía trước đầu xe
Trường hợp 1: Vật cản ở khoảng cách nhỏ hơn 40cm
THI CÔNG VÀ THỰC NGHIỆM MÔ HÌNH
Thi công
* Chuẩn bị mô hình đường cho xe chạy:
- Nhóm chuẩn bị phông nền màu xanh lá đậm để trải lên sàn nhà nhằm mục đích tránh bị nhiễu hình ảnh cho Camera
- Mặt đường được sơn màu đen
- Đường line sử dụng băng keo màu trắng để tạo thành một nét liền đậm
Hình 5.1: Mô hình mặt đường
* Lắp ráp xe tự hành (Xe A):
- Bước 1: Chuẩn bị khung xe mô hình có sẵn, lắp 4 bánh xe vào 4 động cơ gắn vào khung xe dưới
-Bước 2: Gắn mạch điều khiển động cơ L298N và kết nối dây từ động cơ vào mạch
- Bước 3: Dựa vào sơ đồ mạch điện ở Chương 3 lắp lần lượt mạch Raspberry,
Arduino, mạch điều áp vào khung xe trên và kết nối chúng lại với nhau
- Bước 4: Gắn dây cáp kết nối từ camera với mạch Raspberry, đèn Led kết nối với mạch Arduino
Hình 5.4: Kết nối Camera (trái) và đèn Led (phải)
- Bước 5: Hoàn thành tổng thể xe tự hành
Hình 5.5: Mô hình hoàn chỉnh
* Lắp ráp xe cho tính năng kiểm soát tốc độ và giữ khoảng cách (Xe B):
- Bước 1: Lần lượt lắp các bánh xe và bốn motor vào khung xe dưới tương tự như mô hình xe tự hành
- Bước 2: Lắp mạch Arduino, mạch điều khiển động cơ L298N và pin vào khung xe trên như hình
- Bước 3: Nối các mạch và motor với nhau bằng dây điện, lắp loa, đèn cảnh báo và lắp cảm biến
* Thực hiện chạy thử nghiệm cho từng tính năng:
- Thực hiện cấp nguồn cho xe, nhóm chọn cấp nguồn bằng nguồn điện từ Adapter
Power thay cho pin để quá trình test ổn định hơn
- Chỉnh dòng điện cấp cho xe là 11,3V – 11.8V
Hình 5.6: Cấp nguồn cho xe tự hành
Hệ thống giữ làn đường:
- Nạp code đã viết trên Geany (phụ lục) vào OpenCV trong Raspberry và chạy
- Trên màn hình Laptop xuất hiện lần lượt các cửa sổ: Origal, Final, Perpective, Stop Sign, Traffic
Hình 5.7: Các cửa sổ thông báo
- Đặt xe vào Làn đường bên phải giữa hai Lane trắng và quan sát hình ảnh trả về trên màn hình Laptop
- Kết quả trả về trong cửa sổ Origal là: “Result = 0 ( Move Forwart)”
Trong cửa sổ Final, giá trị hình ảnh cuối cùng hiển thị hai làn đường màu trắng thẳng hàng với hai làn đường màu xanh lá cây bên trái và bên phải.
Hình 5.8: Chạy thẳng Lần kiểm tra 2:
- Đặt xe lệch hướng ban đầu và quan sát giá trị trả về trên màn hình
Khi quan sát từ màn hình, giá trị Result hiển thị là Âm, và đường Lane màu trắng bị lệch sang bên trái so với đường màu xanh lá cây ở cả hai phía.
- Nghĩa là xe hiện tại đang lệch sang bên phải làn đường và cần đánh lái sang hướng bên trái
- Đặt lệch xe sang hướng ngược lại và tiếp tục quan sát giá trị trên màn hình
Kết quả hiển thị cho thấy giá trị Result là Dương, trong khi đường Lane màu trắng bị lệch sang bên phải so với đường màu xanh lá cây ở cả hai bên trái và bên phải.
- Nghĩa là xe hiện tại đang lệch sang bên trái làn đường và cần đánh lái sang hướng bên phải
Cho xe chạy lần 1 và quan sát khả năng bám Lane:
Hình 5.11: Hình ảnh thử nghiệm lần 1 Kết quả lần thử 1:
- Xe vào đường cua vẫn chạy trong Lane không bị văng ra ngoài
- Xe chạy ổn định, không bị đạp lên Lane trắng
Cho xe chạy lần 2 và quan sát khả năng bám Lane:
Hình 5.12: Hình ảnh thử nghiệm lần 2 Kết quả lần thử 2:
- Xe chạy ổn định, không bị đạp lên Lane trắng
Ưu điểm của tính năng nhận biết làn đường:
- Tính năng cực kỳ hữu ích khi bạn đang lái xe trên đường cao tốc hay đường dài
- Tính năng cần thiết cho hệ thống giao thông thông minh của thành phố
- Dễ dàng tích hợp vào các xe đang có trên thị trường và xe điện tự lái
Khi chỉ thấy một vạch lane trắng trong hình ảnh, điều này có thể xảy ra khi xe lệch khỏi làn đường do lỗi đánh lái hoặc khi làn đường quá cong Thông thường, chúng ta muốn máy ảnh nhận diện cả hai vạch lane, nhưng trong những tình huống này, máy ảnh chỉ ghi nhận được một vạch Đoạn mã kiểm tra “len(right_fit)>0 và len(left_fit)>0” được sử dụng để xác định tình huống này.
Nhược điểm của tính năng nhận biết làn đường:
- Vì độ phân giải của Camere sử dụng hiện tại thấp nên hiện tượng bị giật khung hình xảy ra nhiều
Các đoạn đường thẳng đứng thường xuất hiện khi xe quay đầu, nhưng không được tính vào trung bình độ dốc với các đoạn thẳng khác do độ dốc vô hạn của chúng Mặc dù không phổ biến, việc bỏ qua các đoạn đường thẳng đứng không ảnh hưởng đến hiệu suất của thuật toán phát hiện làn đường Nếu lật tọa độ X và Y của hình ảnh, các đoạn đường nằm ngang sẽ có độ dốc vô cùng, điều này rất hiếm gặp vì camera thường chỉ theo cùng hướng với các đường làn, không vuông góc với chúng.
Nhóm chưa thể kết hợp đồng thời việc nhận hình ảnh từ Camera và cảm biến Lidar, điều này ảnh hưởng đến hiệu suất nhận biết làn đường Khi hai công nghệ này được tích hợp, khả năng nhận diện sẽ trở nên cao hơn và ổn định hơn.
Hệ thống nhận biết biển báo khi vào hầm:
- Đặt biển báo vào hầm lên mô hình đường đi
Hình 5.13: Mô hình đường có biển báo vào hầm Kiểm tra khả năng nhận diện biển báo:
- Cấp nguồn cho xe, đặt biển báo trắng
Hình 5.14: Kiểm tra khả năng nhận diện biển báo
- Lúc này xe vẫn chạy bám theo Lane đường, đèn Led không sáng
- Thay biển báo trắng thành biển báo tín hiệu vào hầm
Hình 5.15: Đèn sáng khi nhận diện được biển báo vào hầm
- Xe tiếp tục chạy trong Lane
- Đèn Led sáng màu đỏ
- Quan sát trên màn hình ta thấy Camera nhận diện chính xác biển báo vào hầm
- Biển báo nằm trong khung bao hình chữ nhật màu đỏ
Hình 5.16: Kết quả camera truyền về máy tính
- Tiến hành cho xe mô hình chạy thử nghiệm trên đường
Hình 5.17: Tiến hành chạy thử
- Ở khoảng cách xa, camera chưa nhận diện được biển báo Lúc này hình ảnh từ Camera liên tục gửi về cho Raspberry so sánh và xử lí
Hình 5.18: Camera nhận diện được biển báo
Xe di chuyển gần hơn, camera quan sát phát hiện biển báo và gửi thông tin về Raspberry để xử lý, sau đó truyền tín hiệu đến Arduino để bật đèn LED.
Ưu điểm tính năng nhận biết biển báo vào hầm:
- Chủ động nhận biết biển báo không cần tài xế thao tác
Nhược điểm tính năng nhận biết biển báo vào hầm:
Camera nhỏ có góc quan sát hạn chế; do đây là mô hình thử nghiệm, nên để sử dụng hiệu quả trong thực tế, cần lựa chọn camera có độ phân giải cao và tần số quét lớn nhằm tránh hiện tượng giật khung hình.
Hệ thống kiểm soát hành trình tự động:
- Cấp nguồn pin cho mô hình xe và tiến hành nạp code vào Arduino
Kiểm tra thử nghiệm lần 1:
- Xe chạy với tốc độ ban đầu là 120 vòng/ phút
- Em sử dụng hộp giấy làm vật cản để kiểm tra hoạt động của xe
- Nếu gặp vật cản ở khoảng cách 45cm động cơ giảm tốc độ từ 120 vòng/phút xuống còn 70 vòng/phút
- Tiếp tục đặt tay lại gần xe hơn ở khoảng cách 40cm
Hình 5.19: Tốc độ giảm khi gặp vật cản
- Lúc này động cơ giảm tốc độ quay xuống còn 45 vòng/ phút để giữ khoảng cách an toàn
- Đèn Led sáng phát tín hiệu trên Taplo để nhắc nhở tài xế
- Vật cản tiến lại gần hơn ở khoảng cách nhỏ hơn 30cm
Hình 5.20: Led sáng và phát âm thanh cảnh báo
- Lúc này động cơ quay ở tốc độ 40 vòng/ phút
- Đồng thời đèn Led vẫn sáng và Loa phát ra âm thanh cảnh báo tài xế
- Khi vật cản ở khoảng cách nhỏ hơn hoặc bằng 20cm
Hình 5.21: Xe chủ động dừng để tránh va chạm
- Động cơ dừng hẳn để tránh xảy ra va chạm với vật cản phía trước
- Khi vật cản được dời đi, xe tiếp tục di chuyển với vận tốc ban đầu là 120 vòng/phút
* Thực nghiệm thực tế với vật cản là hộp giấy vuông kích thước 30x20cm:
Ưu điểm của hệ thống kiểm soát hành trình chủ động:
- Giải quyết được yêu cầu đặt ra ban đầu
- Phần cứng được thiết kế đơn giản, dễ sử dụng
- Chi phí của thiết bị khá hợp lý và đáp ứng được đầy đủ các tính năng
- Thuận tiện cho việc lắp ráp trên ô tô
Nhược điểm của hệ thống kiểm soát hành trình chủ động:
Dù nhóm nghiên cứu đã rất cố gắng hoàn thành đề tài một cách tốt nhất có thể, tuy nhiên hệ thống vẫn còn một vài khuyết điểm sau:
- Vì là đề tài nghiên cứu nên các hoạt động của các cảm biến chưa phải là tốt nhất
- Thiết bị thực tế chưa thực sự gọn gàng
- Nhóm vẫn chưa thể tích hợp tính năng kiểm soát hành trình bằng Camera xử lí hình ảnh.
Nhận xét
- Nhũng tính năng tiện ích mà nhóm giải quyết được:
+ Giúp xe không bị chệch làn đường trong quá trình di chuyển
+ Tự động bật đèn khi thấy biển báo vào hầm
+ Giữ khoảng cách an toàn với xe phía trước
Các tính năng an toàn trên ô tô đóng vai trò thiết yếu trong việc bảo vệ người sử dụng và những người xung quanh khi tham gia giao thông.
Đa dạng hóa các tính năng an toàn và tiện ích đang phát triển mạnh mẽ, góp phần tạo nên một hệ thống giao thông hiện đại và thông minh cho thành phố.
- Có thể kết hợp song song cùng lúc với nhiều tính năng khác
Để nâng cao độ chính xác trong việc tối ưu hóa các tính năng, việc kết hợp cảm biến Lidar với camera có độ phân giải cao là rất cần thiết.