Nhiều cảm biến ô tô ngày nay gửi giá trị đo dưới dạng số thay vì điện áp tương tự. Hai giao thức thường gặp ở lớp cảm biến là SENT (SAE J2716) và PSI5; PSI5 vốn ra đời cho hệ thống túi khí. Khi ECU báo tín hiệu cảm biến không ổn định, đọc mã lỗi là chưa đủ: phải giải mã SENT và PSI5 trên máy hiện sóng để thấy cùng lúc dạng sóng và nội dung từng khung.
Cái khó là cả hai đều không có đường clock riêng. SENT cho phép đồng hồ phía cảm biến lệch tới ±20%, còn PSI5 truyền dữ liệu bằng dòng điện. Cài sai một thông số, máy có thể báo lỗi hàng loạt trên cảm biến bình thường hoặc bỏ qua đúng khung lỗi cần tìm. Bài này trình bày nguyên lý, cách thiết lập để giải mã SENT và PSI5 trên máy Keysight, và các bẫy định thời thường làm sai kết quả.
SENT (SAE J2716): nhịp tick, xung đồng bộ và nibble
SENT dùng ba dây: nguồn 5 V, mass và dữ liệu. Dây dữ liệu có mức thấp dưới 0,5 V và mức cao trên 4,1 V. Đơn vị thời gian là tick, chu kỳ danh định từ 3 µs tới 90 µs. Mọi khoảng thời gian tính từ sườn xuống tới sườn xuống, nên sườn lên và sườn xuống không cần đối xứng.
Cấu trúc một khung SENT
- Xung đồng bộ/hiệu chuẩn dài 56 tick.
- Nibble trạng thái và giao tiếp.
- Các nibble dữ liệu, tối đa 6 nibble.
- Nibble CRC.
- Xung nghỉ (pause), tuỳ chọn.
Mỗi nibble dài 12–27 tick, giá trị bằng số tick trừ 12. Mỗi xung bắt đầu bằng đoạn thấp tối thiểu 5 tick rồi giữ mức cao. Theo NXP AN4856, khung 6 nibble dữ liệu không có xung nghỉ dài 152–272 tick, tức 456–816 µs ở tick 3 µs. Độ dài khung thay đổi theo dữ liệu, nên xung nghỉ được chèn sau nibble CRC để giữ tổng độ dài khung, và do đó tốc độ xuất dữ liệu, không đổi; Allegro AN296244 dẫn J2716 bản 2016 cho biết xung nghỉ dài tối thiểu 12 tick.
CRC 4 bit dùng đa thức x4+x3+x2+1, giá trị khởi tạo 0101, tính trên các nibble dữ liệu, không gồm nibble trạng thái. Bộ giải mã Keysight cho chọn định dạng CRC theo chuẩn 2008 hoặc 2010; nếu mọi khung đều báo lỗi CRC, hãy thử đổi định dạng này trước khi nghi cảm biến.
SENT còn có thông điệp nối tiếp chậm, gửi từng bit qua bit 2 và bit 3 của nibble trạng thái. Bản ngắn trải trên 16 khung (4 bit ID, 8 bit dữ liệu, 4 bit CRC); bản nâng cao trải trên 18 khung với CRC 6 bit. Muốn giải mã thông điệp chậm, cửa sổ ghi phải chứa trọn số khung đó.
Vì sao đồng hồ được phép lệch ±20%
Theo NXP AN4856, dung sai ±20% cho phép cảm biến dùng bộ dao động RC giá rẻ. Bên thu vì thế đo xung đồng bộ 56 tick ở đầu mỗi khung để suy ra tick thực tế. TI SPRAB22 thiết kế bộ giải mã cho ±25%, còn tài liệu Infineon báo lỗi khi xung hiệu chuẩn lệch quá ±25% so với 56 tick. Ngoài ra, hai xung hiệu chuẩn liên tiếp chênh nhau quá 1/64 (1,5625%) thì bên thu phải gắn cờ lỗi.
PSI5: tín hiệu dòng điện mã Manchester
Cảm biến PSI5 truyền dữ liệu bằng cách điều chế dòng trên đường cấp nguồn: ở mức logic “cao”, cảm biến hút thêm 20 mA. Bit mã hoá Manchester, sườn lên là 0 và sườn xuống là 1. Tốc độ phổ biến là 125 kbps, tối đa 189 kbps; ở 125 kbps mỗi bit dài 8 µs.
Ở chế độ không đồng bộ, mỗi cảm biến có hai dây riêng và tự phát theo chu kỳ; ở chế độ đồng bộ, ECU điều khiển thời điểm phát bằng xung đồng bộ hai mức điện áp. Cấu trúc liên kết gồm điểm-điểm, bus song song chia khe thời gian và nối chuỗi có gán địa chỉ.
Khung PSI5: hai nguồn ghi khác nhau
Theo cách Keysight đọc đặc tả v2.2 trong ghi chú ứng dụng 5992-2269EN, khung gồm 2 bit khởi đầu luôn là “0”, phần tải 10–28 bit (vùng dữ liệu A 10–24 bit cộng các vùng tuỳ chọn), rồi 1 bit chẵn lẻ hoặc 3 bit CRC; cả khung 13–33 bit. Trong khi đó psi5.org ghi phần dữ liệu 8…24 bit. Vì vậy, độ dài từ dữ liệu cài trên máy phải lấy từ datasheet của chính cảm biến đang đo.
Cách giải mã SENT và PSI5 trên máy hiện sóng Keysight
InfiniiVision giải mã bằng phần cứng và, theo datasheet dòng 4000 X, giải mã được hai bus cùng lúc. Nguyên tắc chung về ngưỡng và trigger đã có trong bài giải mã bus nối tiếp I2C, SPI, CAN FD và LIN; phần dưới chỉ nói thiết lập riêng của SENT và PSI5.
Thiết lập bộ giải mã SENT
- Chu kỳ clock (tick): 1–300 µs, nhập tick danh định của cảm biến.
- Dung sai: 3–30%.
- Số nibble: 1–6, mức nghỉ cao hoặc thấp.
- Xung nghỉ: Pause On, Off hoặc SPC.
- CRC: chuẩn 2008 hoặc 2010.
- Thông điệp: nhanh, nối tiếp ngắn, nối tiếp nâng cao.
Trigger SENT gồm vi phạm dung sai, lỗi CRC nhanh hoặc chậm, lỗi chu kỳ xung (dưới 12 hoặc trên 27 tick) và lỗi hai xung đồng bộ liên tiếp chênh quá 1/64. Trigger cuối kiểm tra đúng ràng buộc của bên thu, nên bắt được chính khung mà ECU đúng chuẩn sẽ gắn cờ lỗi.
Thiết lập PSI5 qua bộ giải mã Manchester
InfiniiVision không có bộ giải mã mang tên PSI5: datasheet 3000G X ghi “PSI5 (User-definable Manchester)”. Bộ Manchester hỗ trợ 500 bps–5 Mbps, dung sai 5–30%, vùng đồng bộ 0–255 bit, từ dữ liệu 2–32 bit, nghỉ 1,5–32 bit, trigger theo đầu khung, giá trị hoặc lỗi Manchester. Ví dụ thiết lập trong 5992-2269EN: 125 kb/s, dung sai 20%, đồng bộ 2 bit, từ dữ liệu 10 bit, trailer 1 bit, sườn xuống = 1, LSB trước, nghỉ 1,5 bit, ngưỡng khoảng 50% biên độ dòng.
Vì giải mã chạy trên phần cứng, ngưỡng giải mã chính là mức trigger. Tín hiệu phải lấy bằng que đo dòng: ghi chú ứng dụng dùng N2821A, còn tài liệu gói ô tô 5992-3912EN khuyến nghị Keysight N7026A, que đo dòng độ nhạy cao 150 MHz, 1 mA/div, cho phép đo PSI5.
Bẫy định thời khi giải mã SENT và PSI5
Dung sai tick time quá chặt hoặc quá lỏng
Cảm biến dao động RC có thể lệch tới ±20% mà vẫn đúng chuẩn. Đặt dung sai tick time 5% cho cảm biến như vậy, trigger vi phạm dung sai sẽ kích liên tục dù cảm biến không lỗi. Mở lên 30% thì máy chấp nhận cả xung đồng bộ lệch hơn 25%, mức mà bộ thu Infineon coi là lỗi. Nên đo khoảng sườn xuống tới sườn xuống của xung đồng bộ, chia cho 56 để có tick thực, rồi đặt dung sai theo yêu cầu của ECU đích.
Phép kiểm tra 1/64 và bộ nhớ
Ở tick 2,4 µs (3 µs lệch −20%), xung 56 tick dài 134,4 µs, 1/64 của nó là 2,1 µs; TI tính cho trường hợp 2,25 µs ra 1,97 µs. Ở 5 GSa/s, mẫu cách nhau 200 ps, thừa độ phân giải. Vấn đề nằm ở cửa sổ dài: 4 Mpts trải trên 2 s chỉ còn 2 MSa/s, tức 500 ns mỗi mẫu, thô so với ngưỡng 2 µs. Cách xử lý theo tài liệu Keysight là giải mã phần cứng và bộ nhớ phân đoạn; datasheet 3000G X minh hoạ bộ nhớ phân đoạn chỉ lưu các gói có lỗi bus SENT.
Sườn chậm là thiết kế, không phải lỗi
Ở tick 3 µs, NXP AN4856 cho phép sườn xuống tới 6,5 µs, sườn lên tới 18 µs, jitter sườn xuống không quá 0,1 µs, và các giới hạn tăng tỉ lệ khi tick dài hơn. Bên thu có bộ lọc RC 560 Ω / 2,2 nF, điện trở kéo lên 10–51 kΩ, cáp không quá 5 m. Đừng lấy sườn lên chậm để kết luận đường truyền hỏng; hãy xem sườn xuống.
Quên bật xung nghỉ
Cảm biến có xung nghỉ mà bộ giải mã để Pause Off thì ranh giới khung bị xác định sai, kéo theo mọi nibble phía sau. Trước khi kết luận cảm biến gửi dữ liệu hỏng, hãy xem sau nibble CRC có xung dài hay không rồi chuyển sang Pause On hoặc SPC.
Chọn máy hiện sóng Keysight cho cảm biến ô tô
Với tick hàng µs và bit PSI5 dài 8 µs, điều cần cân nhắc là giấy phép giải mã, bộ nhớ và que đo nhiều hơn băng thông.
Keysight MSOX3104G (dòng 3000G X) có băng thông 1 GHz, 4 kênh tương tự và 16 kênh số, 5 GSa/s nửa kênh / 2,5 GSa/s mọi kênh, bộ nhớ 4 Mpts nửa kênh / 2 Mpts mọi kênh. Để giải mã SENT và PSI5, máy cần giấy phép Keysight D3000AUTB, gói trigger và giải mã ô tô gồm CAN, CAN FD, LIN, FlexRay, SENT, CXPI, PSI5 (qua Manchester) và NRZ do người dùng định nghĩa. Dòng “Ultimate bundle” D3000BDLB trên cùng datasheet không ghi SENT, nhiều khả năng là sót; cần SENT thì chọn D3000AUTB. Giấy phép này cũng phục vụ việc kiểm thử định thời bit CAN FD và LIN trên cùng ECU.
Keysight MSOX4154G (dòng 4000G X) cũng có 4 kênh tương tự và 16 kênh số. Lưu ý: 1,5 GHz là băng thông ở chế độ nửa kênh; dùng tất cả các kênh thì băng thông là 1 GHz, tốc độ lấy mẫu 2,5 GSa/s (5 GSa/s nửa kênh) và bộ nhớ 2 Mpts (4 Mpts nửa kênh). Giấy phép ô tô tương ứng là D4000AUTB, hỗ trợ SENT và PSI5 theo cùng cách; dòng 6000 X dùng D6000AUTB. Nếu đo PSI5, tính thêm que Keysight N7026A vào cấu hình.
Infiniium EXR: có SENT, chưa có PSI5 riêng
Trên Infiniium EXR và MXR, SENT được giải mã qua gói D9010AUTP với tick 1–300 µs, dung sai 3–30%, CRC 2008/2010 và xung nghỉ ON/OFF/SPC. EXR104A có 1 GHz, 4 kênh, 16 GSa/s trên mọi kênh, bộ nhớ chuẩn 100 Mpts mỗi kênh (tuỳ chọn 400 Mpts), 10 bit (tới 16 bit ở chế độ độ phân giải cao). Với 100 Mpts, cửa sổ 2 s vẫn còn 50 MSa/s. Tuy nhiên D9010AUTP không liệt kê PSI5; Infiniium chỉ có bộ giải mã Manchester chung trong D9010LSSP (2 kbps–10 Gbps), không được tài liệu Keysight giới thiệu cho PSI5. Nếu PSI5 là yêu cầu chính, InfiniiVision với giấy phép ô tô có tài liệu hỗ trợ rõ hơn.
Kết luận
Muốn giải mã SENT và PSI5 cho kết quả tin được, hãy bắt đầu từ định thời. Với SENT: đo tick thực từ xung đồng bộ, đặt dung sai theo ECU đích, chọn đúng chế độ xung nghỉ và định dạng CRC, dùng bộ nhớ phân đoạn hoặc bộ nhớ lớn khi ghi dài. Với PSI5: đo bằng que đo dòng, ngưỡng khoảng 50% biên độ, độ dài từ dữ liệu lấy theo datasheet cảm biến.
Phép đo định thời cỡ µs chỉ đáng tin khi máy hiện sóng và que đo còn trong dung sai. Techmaster Electronics là đại lý uỷ quyền của Keysight tại Việt Nam, vận hành phòng hiệu chuẩn theo ISO/IEC 17025, hỗ trợ hiệu chuẩn máy hiện sóng và que đo. Để được tư vấn cấu hình giải mã giao thức ô tô hoặc đặt lịch hiệu chuẩn, vui lòng liên hệ hotline 0908 173 345.