Engine BUS, diğer adıyla ECU, CAN fiziksel alt yapısı ve OBD2 üst protokolüyle haberleşiyor. Bu BUS’a bağlanıp aracın motoruyla ilintili hız, devir, motor sıcaklığı, vb. verilere ulaşabiliyoruz. ECU ve OBD2 ile ilgili ayrı bir makale yazacağım.
Safety BUS, güvenlik aksamlarının haberleştiği veri yolu, ABS, Airbag, aktif gergili emniyet kemerleri vb. bu fiziksel haberleşme yolu üzerinden haberleşiyor.
Comfort BUS, araçta medya cihazlarının, cam kontrol anahtarlarının ve motorlarının, farlar, ve bir çok diğer komponentlerin birbiriyle haberleştiği haberleşme hattı. BMW’de I-BUS olan standart, fransız araçlarında VAN olarak adlandırılmış ve yazımın alt kısmında daha ayrıntılı anlatılıyor. Proje daha ilerlemiş sayılmaz, blogu tutmamın diğer bir amacı da çalışmalarımı kontrollü bir şekilde izleyebilmek.
Temel fiziksel yapı CAN gibi çalışıyor. Enhanced Manchester Coding kullanılıyor (4B5B).
Citroen C4 araçta ilgili test ön ekran sökülerek yapıldı.
Fiziksel temel bağlantı resmi yukarıdaki gibi. Differential pair data bağlantısını osiloskop aracılığıyla gözlemledim.
Name | 4b | 5b | Description |
---|---|---|---|
0 | 0000 | 11110 | hex data 0 |
1 | 0001 | 01001 | hex data 1 |
2 | 0010 | 10100 | hex data 2 |
3 | 0011 | 10101 | hex data 3 |
4 | 0100 | 01010 | hex data 4 |
5 | 0101 | 01011 | hex data 5 |
6 | 0110 | 01110 | hex data 6 |
7 | 0111 | 01111 | hex data 7 |
8 | 1000 | 10010 | hex data 8 |
9 | 1001 | 10011 | hex data 9 |
A | 1010 | 10110 | hex data A |
B | 1011 | 10111 | hex data B |
C | 1100 | 11010 | hex data C |
D | 1101 | 11011 | hex data D |
E | 1110 | 11100 | hex data E |
F | 1111 | 11101 | hex data F |
Q | -NONE- | 00000 | Quiet (signal lost) |
I | -NONE- | 11111 | Idle |
J | -NONE- | 11000 | Start #1 |
K | -NONE- | 10001 | Start #2 |
T | -NONE- | 01101 | End |
R | -NONE- | 00111 | Reset |
S | -NONE- | 11001 | Set |
H | -NONE- | 00100 | Halt |
Her 5 bitlik dizi fiziksel hattan aktarılır ama veri işlemesi 4 bitlik karşılığı üzerinden yapılır.
VAN’dan gelen bilgiyi bilgisayara aktarmak için yukarıdaki bağlantı şemasını kullanıyorum.Bundan sonraki aşamada gelen bilgileri bir byte array’e alıp, alınan veriyi direk bilgisayara aktarmak olacak. Burada sıkıntı gelen bilgi 100kbit/s görünse de senkronizasyonda sıkıntı yaşayabilirim. Birkaç denemeden sonra durum ortaya çıkacak.
Aralık 20, 2011 at 13:58
Merhaba,
Zamanında bu araç içi can protokolü ile bilgi çeken bir donanımla ben de uğraşmıştım. Bildiğim kadarıyla can-hi, can-low ve gnd pinleri sayesinde araç içi kominikasyona girmek mümkün oluyor.
Bende de citroen c4 var. Bu VAN haberleşmesi için bilgisayardan arabaya komut gönderebilen bir yazılım var mıdır? Örneğin teybi kontrol etmek ya da motor verilerini okumak gibi. Eğer varsa bilgisayarın com portu aracılığıyla bu iletişime müdahale etmem mükün olabilir mi?
Aralık 22, 2011 at 00:23
Benimde su an tam olarak ugrastigim bu zaten. Can-h ve can-l pinleriyle differential dedigimiz hat kodlama metodu kullaniliyor. +4.5 -4.5 volt arasi sinyal farki var bu da hat uzerinde ortalama 9 voltluk bir potansiyel fark veriyor. Comfort line dedigimiz hat, c4 un ekranini soktugunde arkadaki port, bu hat uzerinden tum verileri dinlemeyi sagliyor. Piyasada buldugum mcp2551 ile basit bir can trans-receiver devremde var hazirladigim.. Gel gor ki is yogunlugundan cok vakit bulamiyorum. Sorunun cevabina gelirsek kesinlikle tum medya, cam, far kontrolleri bu hat uzerinden mumkun, ayni sekilde monitor etmek de mumkun.
Şubat 22, 2013 at 23:15
Merhaba
Elimde can-bus protokolü için interface devresi var.
Ben aynısını yapmak istiyorum.
Elemanlar: pic18f2580, ft245bl,atmel440,mcp2551.
Bu devreyi yapmam mümkün mü?
Mesela ft232 değilde ft245 kullanılmasının bir sebebi var mıdır?
Tşk.