Apa hubungan antara pengidentifikasi CAN dan ECU dalam standar OBD-II

0

Skenario

Ketika mendapatkan dataset mobil yang dibuat dengan mendata lalu lintas CAN melalui port OBD-II dari kendaraan sungguhan untuk deteksi intrusi, saya mendapatkan bingkai CAN dengan pengidentifikasi CAN 11-bit, misalnya, 0x00a0.

Pertanyaan

Kita semua tahu bahwa pengidentifikasi CAN mewakili prioritas dan makna pesan, tetapi apa hubungan antara pengidentifikasi CAN dan ECU? Apakah setiap ECU memiliki pengidentifikasi CAN eksklusif, atau ECU yang berbeda (seperti ECU yang mengontrol airbag dan lainnya) dapat mengirim bingkai CAN dengan pengidentifikasi CAN yang sama dalam beberapa keadaan?

hcnhcn012
sumber
1
Selamat datang di Perawatan Kendaraan Bermotor & amp; Perbaikan! Sedikit berdalih dengan Anda sehingga orang tidak bingung. ECU = Engine Control Unit, yaitu komputer yang mengendalikan mesin. Itu berada di CANbus dan mengeluarkan kode yang memenuhi spesifikasi OBDII ketika sesuatu terjadi itu harus dilaporkan. Unit kontrol lainnya akan menjadi milik mereka sendiri, seperti SRS dan komputer ABS (pada kebanyakan mobil ini terpisah dari ECU, toh). Tampaknya dalam apa yang Anda sebutkan dalam paragraf Q Anda baik Anda tidak memahami ini atau tidak menyadari ECU bukan istilah umum untuk komputer komponen.
Pᴀᴜʟsᴛᴇʀ2

Jawaban:

1

Tidak ada sambungan yang kuat antara alamat CAN dan modul di bus. Semakin rendah nilai ID, semakin tinggi prioritas di bus. Dari memori ini berfungsi dalam perangkat keras karena angka yang lebih rendah menarik bus rendah dan menginjak ID dengan ID yang lebih tinggi.

Berbagai pesan dapat dilewatkan di sekitar bus CAN menggunakan ID unik mereka dan 8 byte yang mengikuti untuk membawa data sinyal.

Misalnya modul ABS mungkin akan memiliki ID rendah untuk mengirim pesan ke semua simpul yang mendengarkan bahwa mode anti selip kendaraan aktif. Pesan berprioritas rendah (ID CAN lebih besar) dari mengatakan modul tangki bahan bakar akan melaporkan tingkat pengisian tangki ke kluster instrumen.

Protokol OBD bertindak dengan cara yang sama, alat pemindaian bergabung dengan bus sebagai simpul menggunakan alamat seperti 0x7DF dan membuat permintaan untuk data, menggunakan 8 byte data yang mengikuti ID. Setiap simpul di bus (ECU misalnya) dapat merespons dengan data yang sesuai yang diminta oleh alat pindai, ia melakukan ini menggunakan alamat dalam kisaran 0x7E8- & gt; 0x7EF (rentang memungkinkan beberapa node untuk merespons, 0x7E8 cukup Halaman wiki khas menjelaskan protokol di sini https://en.wikipedia.org/wiki/OBD-II_PIDs

mx5_craig
sumber