CAN BUS Hattı Oluşturma

Başlatan iruraz, 24 Mayıs 2014, 21:48:33

iruraz

Merhaba,

Can Bus hattı iki sonlandırıcı direnç arasında çalışan cihazlardan oluşuyor. Konuyu araştırırken aşağıdaki gibi bir şemayla karşılaştım. Şemada turuncu daire içine aldığım işaretin anlamı nedir? O işaretin amacı her cihazın CANH ve CANL bağlantılarının hattın farklı yerlerinden giriş yaptığını vurgulamak mıdır (hattın başının sonunun belli olması için)? Cihazları hatta aynı noktadan bağlamak ile 10-15cm (mesafe başka bir değer de olabilir) aralıkla bağlamanın ne gibi farkları vardır (sanırım burada "bus-shaped" - "star shaped" farkı oluşuyor)? Bir de şemada görülen T tipi konnektörleri DB9 ile yapmam mümkün olur mu?



Şemayı aldığım doküman:

http://canlab.cz/pages/download/CAN-Wiring.pdf

selimkoc

Hattın uzun olduğunu gösteriyor. Önemli bir durum değil. Çünkü CAN Busta 1km kadar veri iletimi mümkün.

iruraz

@selimkoc, teşekkürler. İşaretlediğim simgeyi CAN Bus şemalarında sıkça görüyorum. İşaretin anlamı genel olarak "uzun hat" mı demektir?

Klein

bazen bir sayıdizisini gösterirken  1,2,3,4,5,6,7,8,9,10,11 gibi göstermek yerine  1,2,3....11  şeklinde gösteririz ya, işte onun grafik hali. 

Ateş Erim

Bu işaret teknik resimde sıkça kullanılan ve klein'in sayısal olarak açıkladığı bir sembol. Şöyle bir örnek sembolü biraz daha açıklayacaktır sanırım.
Diyelim bir teknik resim çiziyorsunuz. Bunun için bir ölçek kullanacaksınız. Var sayalım gerçek ölçüsü 1 metre olan bir ölçüyü, çizimde 1 cm ile göstereceksiniz. Ve gene diyelim ki, kağıda aktardığınız projede (gerçekte) birkaç metrelik ve birkaç kilometrelik büyüklükler var. Doğal olarak kilometre boyutundaki büyüklükleri aynı ölçekle kağıda sığdıramazsınız. O vakit ya ölçeği değiştireceksiniz -ki bu durumda metre bazlı ölçüler kağıda geçerken detayları kaybolacak- ya da km bazlı ölçülerde "tüm o hat boyunca bir değişiklik yok ise" ölçek dışında kafanıza göre bir çizim yapıp araya da o sembolü koyarsınız (ve gerçek ölçüyü de yazmalısınız, sizin şemada bu kısım eksik). Yani resmi okuyana dersiniz ki, "bunun gerçek ölçüsü üzerinde yazdığım gibidir, arada da farklı hiçbir şey yoktur."
Bu mektup icin hic agac kesmedim. Sadece elektronlari durtukledim.

iruraz

@Klein hocam teşekkürler.

@ta2cye hocam detaylandırmanız iyi oldu, teşekkür ederim.

Bağlantı şekliyle ilgili bir şey sormak istiyorum. Aşağıdaki şemada üstteki genel bir bağlantı şekli, hattın farklı yerlerinden düğümler (node2, node3) bağlanıyor. Peki ben altta bulunan şemadaki gibi bir bağlantı yaparsam bunun sinyaller üzerinde fiziksel olarak olumsuz bir etkisi olur mu?


Veli B.

120 ohm ları en uzak nodelar üzerine koyduğunuz sürece sorun teşkil etmez.
Çoğu projemizde tek pano ve uç elemanlar kullanıyoruz. Bayilere sürekli, düzgün yapın kablolamayı dememe rağmen daima yabani kirpi gibi yapıyorlar ve şu ana kadar haberleşme sorunu yaşamadık. Ki haberleşme hızımız genelde 500k, çok nadiren 100k kullanıyoruz.

OG

120 ohmları var olan her bir hattın en sonuna hat ucuna koyunuz.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

iruraz

@OG teşekkür ederim.

@katana teşekkürler, ben cihazın hatta bağlantılarını DB9 konnektörler ile "T" yaparak sağladım. Kısa devrelerini kontrol ettim sorun görünmüyordu.

Entegre etmeye çalıştığım hattın da veri hızı 500kbps. Aşağıdaki şemada çalıştırmaya uğraştığım sistemin daha detaylı bir şeması var. "CAN Interface" (hattı gözlemek ve cihazlara müdahale edebilmek için) olarak kullandığım cihaza giden kablolar her iki hatta da birbiriyle konuşacak cihazlar arasındaki kablolardan daha uzun (yaklaşık 3-4 katı kadar).

"CAN Interface" kanal2 'yi kullanarak Cihaz1 'in konfigürasyonunu yaparken cihaz3 'ü devreden çıkarıp R8 direncinde 60ohm kullandım. Cihaz2 'nin konfigürasyonunu yaparken de R4 için 120 ohm kullandım. Cihaz3 'ün konfigürasyonu doğrudan seri porttan yapılıyor.

Sistem çalışırken R4 ve R8 dirençlerini devreden çıkarıyoum. Bu durumda cihaz1 ile cihaz3 arasında "reception timeout" hatası alıyorum. Hattı gözlemlediğimde cihaz3 'ün göndermesi gereken mesajları periyodik olarak gönderdiğini görüyorum. Cihaz1 'in sonlandırma direnci zayıf olduğundan R8 'de 120 ohm kullanıp deniyorum ama sonuç değişmiyor. Cihaz1 ile cihaz3 arasında da "Protocol negociation timeout" ve "timeout" hataları alıyorum. Yine bu hat için R4 için 60 ohm ya da 120 ohm kullansam da (sırf denemek için) sonuç değişmedi.

Sistemi entegre ederken nerede hata yapıyor olabilirim?



OG

FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

iruraz

@Erhan YILMAZ, örnek için teşekkürler.

@OG, hocam buradaki kapasiteler hat üzerinde oluşabilecek gürültüyü topraklamak amacıyla kullanılıyor. Litaratürde "Split Termination" olarak geçiyor. Bunları ben bağlamadım. Kullanmaya çalıştığım cihazın yapısı böyle.

Veli B.

Şemada yazan direnç değerleri doğru mu? Doğru ise, sistemde yanlışlık var.
Kanal 2 ile cihaz 1 ve cihaz 3 arasında ki mesafeler ne kadar?
Cihaz 1 ile Cihaz 3 arasında ki mesafe ne kadar?



iruraz

#13
Alıntı yapılan: katana - 25 Mayıs 2014, 20:43:28
Şemada yazan direnç değerleri doğru mu? Doğru ise, sistemde yanlışlık var.
Kanal 2 ile cihaz 1 ve cihaz 3 arasında ki mesafeler ne kadar?
Cihaz 1 ile Cihaz 3 arasında ki mesafe ne kadar?

Evet hocam doğru. Cihaz1 'in CAN-kanal1 'i 2.6k 'lık dirençle sonlandırılmış ("weak termination" diyorlar buna). Sanırım bunu cihazın CAN Bus hattında araya bir yere konulabileceğini düşünerek yapmışlar.

Cihaz1-Cihaz3 arasındaki kablo yaklaşık 50-60cm, kanal2-cihaz1 230-250cm, kanal2-cihaz3 yine 230-250cm arası.

OG

Bu mesafelerde ve bu sayıda cihazla hattı kapatmasanda çalışır.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.