Tìm hiểu về OBD2

Một phần của tài liệu Thiết kế, chế tạo mạch nhận dạng hành vi lái xe và cảnh báo người lái đồ án tốt nghiệp ngành công nghệ kỹ thuật ô tô (Trang 29 - 37)

CHƯƠNG 2 : CƠ SỞ LÝ LUẬN NHẬN DẠNG LÁI XE VÀ GIAO TIẾP MẠNG TRÊN XE

2.3.2.Tìm hiểu về OBD2

2.3. Giao tiếp OBD2 thông qua mạng CAN

2.3.2.Tìm hiểu về OBD2

2.3.2.1. Tổng quan về OBD2.

Từ năm 1996 các hãng xản suất ôtô cho ra đời hệ thống OBD 2. OBD 2 Mang tính thống nhất về tiêu chuẩnchẩn đốn và xác định hư hỏng giữa các loại động cơ do các hãng khác nhau chế tạo.

Được thống nhất và áp dụng đầu tiên tại Mỹ. Với mục đích nhắm phát hiện các chất có hại trong khí xả thải vào khí quyển, hệ thống OBD cho phép ECU động cơ phát hiện bất kỳ

23 hư hỏng nào của động cơ và hệ thống kiểm sốt khí xả cũng như báo cho lái xe các trạng thái này qua đèn “check engine”. Một chức năng của ECU động cơ để lưu các dữ liệu điều khiển quan trọng vào bộ nhớ trong khi phát hiện thấy hư hỏng.

Tiêu chuẩn OBD-II cung cấp một danh sách các DTC có thể mở rộng. Kết quả của việc tiêu chuẩn hóa này, một thiết bị duy nhất có thể truy vấn (các) máy tính trên xe trong bất kỳ phương tiện nào. OBD-II này có hai mẫu OBD-IIA và OBD-IIB. Việc tiêu chuẩn hóa OBD- II được thúc đẩy bởi các u cầu về khí thải và mặc dù chỉ có mã và dữ liệu liên quan đến khí thải được yêu cầu truyền qua nó, hầu hết các nhà sản xuất đã làm cho Đầu nối liên kết dữ liệu OBD-II trở thành đầu nối duy nhất trên xe mà qua đó tất cả các hệ thống đều được chẩn đốn và được lập trình. Mã sự cố chẩn đốn OBD-II có 4 chữ số, đứng trước một chữ cái: P cho động cơ và hộp số (hệ thống truyền lực), B cho thân, C cho khung và U cho mạng.

2.3.2.2. Tổng quan về OBD2 trên xe.

Đặc điểm kỹ thuật OBD-II cung cấp giao diện phần cứng được tiêu chuẩn hóa — đầu nối J1962 16 chân (2x8) cái. Không giống như đầu nối OBD-I, đôi khi được tìm thấy dưới mui xe, đầu nối OBD-II được yêu cầu trong phạm vi 2 foot (0,61 m) của vô lăng (trừ khi nhà sản xuất áp dụng biện pháp miễn trừ, trong trường hợp đó, tay lái vẫn ở đâu đó trong tầm với của người lái). SAE J1962 xác định sơ đồ chân của đầu nối.

1 Nhà sản xuất quyết định. 9 Nhà sản xuất quyết định.

2 J1850 Bus (+) 10 J1850 Bus (-)

24

4 Chassis ground 12 Nhà sản xuất quyết định.

5 Signal ground 13 Nhà sản xuất quyết định.

6 CAN high (ISO 15765-4 and SAE J2284)

14 CAN low (ISO 15765-4 and SAE J2284)

7 K-line (ISO 9142-2) 15 L-line (ISO 9142-2)

8 Nhà sản xuất quyết định. 16 Nguồn 12V

Bảng 2.2: Sơ đồ chân của jack OBD2

2.3.2.3. Tìm hiểu về OBD2 PIDs.

OBD-II PID (ID thơng số chẩn đốn trên xe) là mã được sử dụng để yêu cầu dữ liệu từ một phương tiện, được sử dụng như một cơng cụ chẩn đốn.

Các chế độ

Chế độ

(hex) Mô tả

01 Biểu diễn dữ liệu hiên tại

02 Hiển thị dữ liệu khung cố định

03 Hiện thị mã chuẩn đốn được lưu trữ

04 Xóa mã lỗi và các giá trị lưu trữ

05 Kết quả kiểm tra, giám sát cảm biến oxy (chỉ dành cho CAN)

06 Kết quả kiểm tra, giám sát thành phần / hệ thống khác (Kết quả kiểm tra, giám sát cảm biến oxy chỉ CAN)

07 Hiển thị Mã lỗi đang chờ xử lý (được phát hiện trong quá trình lái xe hiện tại hoặc cuối quá trình)

25 08 Điểu khiển sự hoạt động của các bộ phận trên ON – BOARD

09 Yêu cầu thông tin xe

0A Mã chuẩn đốn cố định (DTCs) (DTCs đã xóa)

Bảng 2.3: Các chế độ của PIDs

Các nhà sản xuất xe không bắt buộc phải hỗ trợ tất cả các dịch vụ. Mỗi nhà sản xuất có thể xác định các dịch vụ bổ sung ở trên # 9 (ví dụ: dịch vụ 22 theo định nghĩa của SAE J2190 cho Ford / GM, dịch vụ 21 cho Toyota) cho các thơng tin khác, ví dụ: điện áp của Accu trong xe điện hybrid (HEV).

Bài viết này chủ yếu tập trung vào việc lấy thông tin trên xe. Nên những thông tin cần thiết được lấy chỉ nằm ở chế độ 1 nên nhóm sẽ tập trung khai thái ở chế độ này. Cụ thể ở chế này khi gửi yêu cầu cho PID này trả về 4 byte dữ liệu (A, B, C và D)

A B A7 A6 A5 A4 A3 A2 A1 A0 B7 B6 B5 B4 B3 B2 B1 B0 C D C7 C6 C5 C4 C3 C2 C1 C0 D7 D6 D5 D4 D3 D2 D1 D0 Bảng 2.4: Bảng giá trị trả về PIDs (hex) PID (Dec) Số byte trả về Mô tả Giá trị nhỏ nhất Giá trị lớn nhất Đơn vị Công thức 00 0 4 PID được hỗ trợ [01 - 20] Bit được mã hóa 01 1 4 Theo dõi trạng thái DTC khi bị xóa. Bao gồm Bit được mã hóa

26 trạng thái đèn

báo lỗi MIL và số lượng mã DTCs 02 2 2 Đóng băng DTC 03 3 2 Trạng thái hệ thống nhiên liệu Bit được mã hóa 04 4 1 Tính tốn tải động cơ 0 100 % 100 255A 05 5 1 Nhiệt độ nước làm mát động cơ -40 215 C A-40 0A 10 1 Áp suất nhiên liệu (đồng hồ áp suất) 0 765 kPa 3A 0B 11 1 Áp suất tuyệt đối trên đường ống nạp 0 255 kPa A 0C 12 2 Tốc độ động cơ 0 16,383.75 rpm 256 4 A+B 0D 13 1 Tốc độ xe 0 255 km/h A

0E 14 1 Van biến thiên -64 63.5

Độ (Trước TDC) 64 2 A− 0F 15 1 Nhiệt độ khí nạp -40 215 C A−40

27 10 16 2 Khối lượng khơng khí nạp (MAF) 0 655.35 grams/sec 256 100 A+B 11 17 1 Vị trí bướm ga 0 100 % 100 255A Bảng 2.5: Các mã PIDs chế độ 1

Do yêu cầu của đề tài nên nhóm sẽ lấy 1 số mã PIDs.

PID Số Byte Mô tả Đơn vị Công thức

0D 1 Tốc độ xe Km/h A

0C 2 Tốc độ động cơ rpm ((A*256)+B)/4

11 1 Vị trí bướm ga % A*100/255

04 1 Tính tốn tải động cơ % A*100/255

Bảng 2.6: Một số mã PIDs cho đề tài

Honda City sử dụng 2 backbones CAN riêng biệt. F-CAN bus xử lý các thành phần quan trọng của xe, chẳng hạn như động cơ, hệ thống truyền động, hệ thống lái, phanh và các chức năng điều khiển xe cơ bản khác. Đồng hồ Taplo cũng có thể được tìm thấy F-CAN bus, vì nó dựa trên dữ liệu được gửi từ một số thành phần quan trọng nhất của xe để cung cấp các chỉ số chính xác cho người lái xe. F-CAN của sử dụng một cặp dây (CAN_H và CAN_L) và hoạt động ở tốc độ 500Kbps. Mặt khác, bus B-CAN chỉ sử dụng một dây duy nhất (SW-CAN) và hoạt động ở mức 33,33Kbps thấp hơn nhiều. BCAN bus xử lý các chức năng ít quan trọng hơn như radio của xe, cửa sổ, khóa cửa, cài đặt tiện nghi, v.v.

Mặc dù nhiều xe ngày nay được thiết kế mà không áp dụng các nguyên tắc bảo mật cơ bản, nhưng không phải tất cả các xe đều thiếu phân đoạn mạng CAN bus. Một số xe đặt cổng chẩn đoán OBD-II cho một số CAN riêng biệt cho các mô-đun điều khiển xe quan trọng hơn. Do những hạn chế của cổng OBD-II trên một số phương tiện, có thể cần phải tìm một điểm vào thay thế cho CAN. Honda Civic 2011 có nhiều địa điểm mà F-CANbus của nó có thể dễ dàng tiếp cận.

28

Tín hiệu tốc độ động cơ rpm

ID RTR D0 D1 D2 D3 D4 D5 D6

0x1DC 7 0x02 A B 0x00 0x00 0x00 0x00

Bảng 2.7: Mã PID của tốc độ động cơ

Trong điều kiện bình thường, Module điều khiển hệ thống truyền lực (PCM) của động cơ gửi bản tin 1DC trên mạng CAN 20 mili giây một lần hoặc 50 lần mỗi giây. ECU điều khiển của cụm đồng hồ đo trên taplo liên tục nhận trên mạng CAN để tìm và xử lí các bản tin này. Mỗi khi nhận được bản tin có ID là 1DC, vị trí kim trên đồng hồ đo tốc độ sẽ được cập nhật tương ứng.

Trên nhiều xe Honda khác, ID thông báo CAN của 1DC được sử dụng riêng cho taplo RPM của động cơ trên mạng CAN bus. Trong trường hợp này, ID 1DC có độ dài 7 byte. Trong quá trình nghiên cứu này, người ta thấy rằng byte đầu tiên không bao giờ thay đổi từ giá trị 02. Tuy nhiên, hai byte tiếp theo biểu diễn theo hệ thập lục phân RPM thực tế của động cơ sau khi được mã hóa bằng thuật toán cơ bản. Sau một số thử nghiệm, ta nhận thấy rằng cơng thức tính tốn được sử dụng bên dưới để tính RPM động cơ gần đúng.

Hình 2.15: Chuyển mã HEX sang tốc độ động cơ

Ví dụ, 1 bản tin với ID là 1DC và các Byte Data là 02 02 EC 00 00 00 00. Theo công thức ta lấy 2 byte D1 và D2, 02EC (mã HEX) sau đó ta chuyển sang mã DEC thành 748 rpm.

Tốc độ xe

Kỹ thuật được sử dụng để điều khiển đồng hồ tốc độ của xe tương tự như kỹ thuật được sử dụng để điều khiển đồng hồ đo tốc độ xe. Tuy nhiên, dữ liệu tốc độ xe sử dụng ID CAN khác và cấu trúc thông báo phức tạp hơn.

29

ID RTR D0 D1 D2 D3 D4 D5 D6 D7

0x158 7 0x02 A B C D E F G

Bảng 2.8: Mã PID của tốc độ xe

Không giống như các bản tin 1DC cho RPM, có độ dài 4 byte, bản tin 158 CAN thơng thường có độ dài 8 byte. Ngồi ra, trong khi bản tin 1DC RPM được gửi mỗi 20ms, bản tin 158 được phát sau mỗi 10ms hoặc 100 lần mỗi giây.

Thơng điệp CAN có thể được chia thành năm phần riêng biệt như sau:

Byte D0 & D1: Dữ liệu tốc độ sử dụng cho các mục đích khác ngồi đồng hồ tốc độ.

Byte D2 & D3: Dữ liệu RPM của động cơ cho các mục đích khác ngồi đồng hồ tốc độ động cơ.

Byte D4 & D5: Dữ liệu tốc độ để hiển thị trên đồng hồ tốc độ.

Byte D6: Tín hiệu đến đồng hồ đo quãng đường tăng dần.

Byte D7: Tín hiệu cho biết xe đang chuyển động.

Hình 2.16: Chuyển mã HEX sang tốc độ xe

Ví dụ, 1 bản tin với ID là 158 và các Byte Data là 06 0C 06 33 06 1A 0 236. Theo công thức ta lấy 2 byte D4 và D5, 061A (mã HEX) sau đó ta chuyển sang mã DEC thành 1562 . Sau đó chia cho 100 ta được 15,62. Làm tròn 15,5 km/h.

30

Một phần của tài liệu Thiết kế, chế tạo mạch nhận dạng hành vi lái xe và cảnh báo người lái đồ án tốt nghiệp ngành công nghệ kỹ thuật ô tô (Trang 29 - 37)