makalah can bus
DESCRIPTION
CAN BUSTRANSCRIPT
Pendahuluan
CAN bus (untuk controller area network) adalah standar bus kendaraan yang dirancang untuk
memungkinkan mikrokontroler dan perangkat untuk berkomunikasi satu sama lain dalam
kendaraan tanpa komputer host.
CAN bus adalah sebuah protokol berbasis pesan, yang dirancang khusus untuk aplikasi
otomotif tapi sekarang juga digunakan di bidang lain seperti aerospace, otomasi industri dan
peralatan medis.
Pengembangan Pengendali bus Area Network dimulai awalnya pada tahun 1983 di Robert
Bosch. Protokol ini resmi dirilis pada tahun 1986 di Society of Automotive Engineers (SAE)
kongres di Detroit, Michigan. Pertama CAN chip controller, yang diproduksi oleh Intel dan
Philips, datang di pasar pada tahun 1987. Bosch menerbitkan CAN 2.0 spesifikasi pada tahun
1991. Pada 2012 Bosch telah ditentukan ditingkatkan BISA data link protokol lapisan,
disebut CAN FD, yang akan memperpanjang ISO 11898-1.
Aplikasi
Otomotif
Sebuah mobil modern mungkin memiliki sebanyak 70 unit kontrol elektronik (ECU) untuk
berbagai subsistem. Biasanya prosesor terbesar adalah unit kontrol mesin (engine control
modul juga / ECM atau Powertrain Control Module / PCM dalam mobil),. Lain digunakan
untuk transmisi, airbag, antilock braking / ABS, cruise control, power steering listrik / EPS,
sistem audio, jendela, pintu, penyesuaian cermin, baterai dan sistem pengisian untuk hibrida /
mobil listrik, dll. Beberapa subsistem independen bentuk, tetapi komunikasi antara lain
sangat penting. Sebuah subsistem mungkin perlu untuk mengontrol aktuator atau menerima
umpan balik dari sensor. CAN standar ini dirancang untuk memenuhi kebutuhan ini.
CAN Bus dapat digunakan dalam kendaraan untuk menghubungkan unit kontrol mesin dan
transmisi, atau (pada bus yang berbeda) untuk menghubungkan kunci pintu, kontrol iklim,
kontrol kursi, dll. CAN bus juga digunakan sebagai fieldbus pada umumnya lingkungan
otomasi, terutama karena biaya rendah beberapa CAN controller dan prosesor.
Teknologi
CAN adalah siaran standar serial bus multi-master untuk menghubungkan electronic control
unit (ECU). Setiap node dapat mengirim dan menerima pesan, tapi tidak secara bersamaan.
Sebuah pesan terutama terdiri dari ID (identifier), yang merupakan prioritas pesan, dan
sampai ke data delapan byte. Peningkatan CAN (CAN FD) memperluas panjang dari bagian
data sampai dengan 64 byte per frame. Hal ini ditularkan serial ke bus. Pola sinyal ini
dikodekan dalam non-kembali-ke-nol (NRZ) dan dirasakan oleh semua node. Perangkat yang
terhubung oleh jaringan CAN biasanya sensor, aktuator, dan perangkat kontrol lainnya.
Perangkat ini tidak terhubung secara langsung ke bus, tetapi melalui prosesor host dan BISA
kontroler. Jika bus ini gratis, setiap node dapat mulai mengirimkan. Jika dua atau lebih node
mulai mengirim pesan pada saat yang sama, pesan dengan ID lebih dominan (yang memiliki
bit lebih dominan, yaitu, nol) akan menimpa node 'lainnya ID kurang dominan, sehingga
akhirnya (setelah arbitrase ini pada ID .) hanya pesan yang dominan tetap dan diterima oleh
semua node. Mekanisme ini disebut sebagai prioritas berbasis arbitrase bus. Pesan dengan
nilai-nilai numerik yang lebih kecil dari ID memiliki prioritas yang lebih tinggi dan
ditularkan pertama.
Setiap node membutuhkan :
Prosesor host
-Prosesor host memutuskan apa maksud pesan yang diterima dan pesan mana yang ingin
mengirimkan sendiri.
- Sensor, aktuator dan perangkat kontrol dapat dihubungkan ke prosesor host.
CAN controller (hardware dengan jam sinkron) ..
- Menerima: CAN kontroler menerima bit serial dari bus sampai seluruh pesan tersedia,
yang kemudian dapat diambil oleh prosesor host (biasanya setelah controller CAN telah
memicu interupsi).
-Mengirim: prosesor host menyimpan pesan pemancarnya ke CAN controller, yang
memancarkan bit serial ke bus.
Transceiver
- Menerima: menyesuaikan tingkat sinyal dari bus ke tingkat yang mana kontroler CAN
mengharapkan dan memiliki sirkuit pelindung yang melindungi CAN kontroler.
- Mengirimkan: mengkonversi sinyal transmit-bit yang diterima dari controller CAN
menjadi sinyal yang dikirim ke bus.
Transmisi Data
CAN fitur transmisi otomatis arbitrase bebas. CAN pesan yang ditransmisikan dengan
prioritas tertinggi akan berhasil, dan simpul transmisi pesan prioritas yang lebih rendah akan
merasakan ini dan mundur dan menunggu.
Hal ini dicapai oleh CAN transmisi data melalui model biner "dominan" bit dan "resesif" bit
mana yang dominan adalah 0 logis dan resesif adalah 1 logis. Ini berarti kolektor terbuka,
atau kabel atau pelaksanaan fisik bus (tapi karena yang dominan adalah 0 ini kadang-kadang
disebut sebagai kabel). Jika satu node mengirimkan sedikit dominan dan node lain
mengirimkan sedikit resesif dominan maka bit "menang" (sebuah logis AND antara dua).
Tabel kebenaran untuk dominan / resesif, logika OR, dan logika AND (untuk perbandingan)
State Bus dengan dua node transmisi
Logika OR Logika AND
Jadi, jika sedikit resesif sedang dikirim sementara sedikit dominan dikirim, bit dominan
ditampilkan, bukti tabrakan. (Semua tabrakan lainnya tidak terlihat.) Sedikit dominan
ditegaskan dengan menciptakan tegangan kabel sementara sedikit resesif sama sekali tidak
menegaskan di bus. Jika setiap node menetapkan perbedaan tegangan, semua node akan
melihatnya. Jadi tidak ada penundaan untuk pesan prioritas yang lebih tinggi, dan simpul
transmisi pesan prioritas yang lebih rendah otomatis mencoba mengirimkan kembali enam
jam bit setelah akhir pesan dominan.
Ketika digunakan dengan bus diferensial, rasa pembawa multiple access / bitwise arbitrase
(CSMA / BA) skema sering diimplementasikan: jika dua atau lebih perangkat memulai
transmisi pada saat yang sama, ada prioritas skema arbitrase berbasis untuk memutuskan
mana yang akan diberikan izin untuk melanjutkan transmisi. Solusi CAN untuk ini
diprioritaskan arbitrase (dan atas keterlambatan pesan dominan gratis), membuat CAN sangat
cocok untuk real time diprioritaskan sistem komunikasi.
Selama arbitrase, setiap node transmisi monitor keadaan bus dan membandingkan bit yang
diterima dengan bit yang ditransmisikan. Jika sedikit dominan diterima ketika sedikit resesif
ditransmisikan maka node berhenti transmisi (yaitu, kehilangan arbitrase). Arbitrase
dilakukan selama transmisi bidang identifier. Setiap node mulai mengirim pada saat yang
sama mengirimkan ID dengan dominan sebagai biner 0, mulai dari agak tinggi. Begitu ID
mereka adalah jumlah yang lebih besar (prioritas rendah) mereka akan mengirimkan 1
(resesif) dan melihat 0 (dominan), sehingga mereka mundur. Pada akhir transmisi ID, semua
node tapi satu telah mundur, dan pesan prioritas tertinggi akan melalui tanpa hambatan.
Sebagai contoh, pertimbangkan sebuah ID 11-bit CAN jaringan, dengan dua node dengan ID
dari 15 (representasi biner, 00000001111) dan 16 (representasi biner, 00000010000). Jika dua
node mengirim pada saat yang sama, masing-masing akan mengirimkan enam nol dari ID
mereka dengan keputusan arbitrase yang dibuat. Bila bit-7 ditransmisikan, node dengan ID
dari 16 mentransmisikan 1 (resesif) untuk ID nya, dan simpul dengan ID dari 15
mentransmisikan suatu 0 (dominan) untuk ID nya. Ketika ini terjadi, node dengan ID dari 16
akan menyadari bahwa itu hilang arbitrase, dan memungkinkan node dengan ID dari 15 untuk
melanjutkan transmisi. Hal ini memastikan bahwa node dengan nilai bit yang lebih rendah
akan selalu menang arbitrase. ID dengan jumlah yang lebih kecil akan memenangkan hak
untuk menggunakan.
ID Allocation
ID pesan harus unik di bus CAN tunggal, jika dua node akan terus transmisi di luar akhir
bidang arbitrase (ID) menyebabkan kesalahan.
Pada awal 1990-an, pilihan ID untuk pesan dilakukan hanya atas dasar mengidentifikasi jenis
data dan node pengiriman, namun, sebagai ID juga digunakan sebagai prioritas pesan, hal ini
menyebabkan kinerja yang buruk real-time. Dalam skenario tersebut, pemanfaatan bus CAN
rendah sekitar 30% biasanya diperlukan untuk memastikan bahwa semua pesan akan
memenuhi tenggat waktu mereka.
Bit Timing
Setiap node dalam jaringan CAN memiliki jam sendiri, dan tidak ada jam dikirim selama
transmisi data. Sinkronisasi dilakukan dengan membagi setiap bit dari frame menjadi
beberapa segmen: sinkronisasi, propagasi, fase 1 dan fase 2. Panjang setiap segmen fase
dapat disesuaikan berdasarkan kondisi jaringan dan simpul. Titik sampel jatuh antara fase
penyangga segmen 1 dan fase penyangga segmen 2, yang membantu memfasilitasi
sinkronisasi terus menerus. Sinkronisasi terus menerus pada gilirannya memungkinkan
penerima untuk dapat benar membaca pesan.
An example CAN bit timing with 10 time quanta per bit.