Kısa mesafede CanBus'mı yoksa RS485'mi

Başlatan Mucit23, 03 Ağustos 2014, 13:43:33

Mucit23

Şuanda Kendi tasarladığım bir cihaz için Operatör panel tasarlamam gerekiyor. Operatör panelinin kendi MCU'su LCD'si ve Butonları vs olacak. Kullanıcı Bu operatör paneli üzerinden yaptığı işlemler veya girdiği parametreler Ana cihaza gönderilecek.

Aklımda şöyle bir sistem var.

Operatör Panelinde ve Ana Cihazın kartında 4 Pinli RJ11 Soketlerinden olur. Cihaz kurulumu esnasında Aradaki kablo mesafesine göre kablo kesilip uclarına RJ11 Soket takılır ve cihazlar birbirine bağlanır. 4 kablodan ikisi Enerji diğer ikisi haberleşme için olur diye düşündüm.

Mesela 5-10 Metreyi Geçmez.

Bu iş için Aklıma CanBus ve RS485 geldi. İkisinide kullanmışlığım yok ama CanBus üzerinde zamanında biraz araştırma yapmıştım. Basit bir şekilde veri yapısını biliyorum.

Hatta Ana kartta Stm32 serisi bir MCU kullanılacak. Üzerinde Can Controller var. Bunun çıkışlarına bir tane Can TransReciever bağladımmı Can Haberleşmem için gerekli donanımım kurulmuş olur.

Böyle bir sistem için maliyet'de göz önüne alınırsa hangisi uygun olur. Birbirlerine göre artısı eksisi nelerdir?

FxDev

CAN donanımsal kontrol yapar, verilerinizi şak diye alırsınız.
Modbus'ta yazılım işin içine girer, Master/Slave siz yazmak zorunda kalırsınız.

İmkanım olsa her yerde CAN kullanır geçerim.
Forumda bazı bağnaz kişiler tarafından engellenip, atıldım. Tüm bu bağnaz kişilere rağmen Atatürkçülüğü sonuna kadar savunacağım; onlar da bağnazlıklarında boğulacaklar. Haberleşme için: info[at]firatdeveci.com / ©firatdeveci.com - ße Different Everytime!

Burak B

CAN kullan. Yani şöyle bir düşününce otomotiv sektöründe bile kullanılıyorsa bir sebebi olmalı değil mi ? ;)
"... a healthy dose of paranoia leads to better systems." Jack Ganssle

Salih

Piyasada ki panellere baktığımızda yaygın olarak kullanılan haberleşmeler,

USB, RS232, RS485, Ethernet ve çeşitli endüstriyel tipler (Profibus gibi...)

Ben olsam RS485 kullanırdım.

Tagli

Pek bilmediğim için soruyorum: CAN ham olarak kullanılıyor mu yaygın olarak yoksa hep bir üst katman (CANopen, DeviceNet gibi) ile mi kullanılıyor? Üst katman ile kullanılacaksa, kullanılan işlemci ve derleyici için kütüphanesinin olup olmadığına bakmak lazım. Sıfırdan yazmak epey zor olabilir bence.
Gökçe Tağlıoğlu

mufitsozen

CAN kullanmayin kardesim.

Sizinde yazdiginiz gibi hem zor hemde piyasada ki panellerde rs232, rs485 filan var.
Cogunluktan daha mi iyi bilecen  :)

Ben bu bytemasteri tanirim sirf eylence olsun diye boole yalan yanlis seyler soyler insanlar imdaat! yardiiimmm! baslikli konular acincada kis kis guler, sadist bir zevk alir. :P

CAN kotudur! ouugghhh kaka, pis CAN !
Aptalca bir soru yoktur ve hiç kimse soru sormayı bırakana kadar aptal olmaz.

Burak B

#6
Direkt MCU üzerindeki donanım ile 8 bytelık frame ler gönderebilir alabilirsin. Tabi MCU ya bir transceiver takman gerekiyor. Eğer 8 byte tan büyük veriler aktarmak isterim dersen CANopen gibi üst katmanlar devreye girer.

@mufitsozen abi saygılar.
"... a healthy dose of paranoia leads to better systems." Jack Ganssle

yldzelektronik

Alıntı yapılan: mufitsozen - 03 Ağustos 2014, 15:07:47
CAN kullanmayin kardesim.
...
CAN kotudur! ouugghhh kaka, pis CAN !

Buradan anlıyoruz ki CAN kullanmak oldukça akıllıca olur. :)
Kişinin başına gelen hayır Allah'tandır. Kişinin başına gelen şer nefsindendir. Nefislerimizle kendimize zulüm ediyoruz.

mufitsozen

Alıntı yapılan: yldzelektronik - 03 Ağustos 2014, 15:13:35
Buradan anlıyoruz ki CAN kullanmak oldukça akıllıca olur. :)

yuh!  :(

o gadder dikgat edeyoz, yinede ticari sirlarimizi gapan uyaniklar cikeyo netekim!  :P

Aptalca bir soru yoktur ve hiç kimse soru sormayı bırakana kadar aptal olmaz.

X-Fi

Bence M-Bus kullan 2 uçludur ve slave panellere enerji taşımış olursun uçları ters bağlasan bile çalışır. TSS721 incele istersen.
http://www.coskunergan.dev/    (Yürümekle varılmaz, lakin varanlar yürüyenlerdir.)

mufitsozen

Alıntı yapılan: X-Fi - 03 Ağustos 2014, 15:18:32
Bence M-Bus kullan 2 uçludur ve slave panellere enerji taşımış olursun uçları ters bağlasan bile çalışır. TSS721 incele istersen.

evet evet TSS721 incele.

Aptalca bir soru yoktur ve hiç kimse soru sormayı bırakana kadar aptal olmaz.

mustafaelektro

Alıntı yapılan: ByteMaster - 03 Ağustos 2014, 14:20:58
CAN kullan. Yani şöyle bir düşününce otomotiv sektöründe bile kullanılıyorsa bir sebebi olmalı değil mi ? ;)

Can zaten otomotiv için tasarlandı :) ikisinin de donanım kurulumu aynı basit yapıda. 485 de yazılım kurmak 232ye benzer. Can da daha karmaşık ve çoklu bağlantıları kurmak için daha basit yönetim mevcut.

Burak B

Alıntı yapılan: mustafaelektro - 03 Ağustos 2014, 16:06:02
Can zaten otomotiv için tasarlandı :) ikisinin de donanım kurulumu aynı basit yapıda. 485 de yazılım kurmak 232ye benzer. Can da daha karmaşık ve çoklu bağlantıları kurmak için daha basit yönetim mevcut.

Yok öyle bişi. Zorluk açısından RS232 veya RS485 kullanmakla CAN kullanmak arasında hiçbir fark yok.

M-BUS ölçüm cihazları üretenler için tasarlanmış bir arayüzdür. Uygunsa kullanılabilir. Ama CAN kadar sağlam değildir.
"... a healthy dose of paranoia leads to better systems." Jack Ganssle

Mucit23

Cevaplar için Teşekkürler.

Ben hala CanBus kullanmak niyetindeyim. Şuan STM32'de CanBus için birkaç kütüphane buldum ve kullanımı gerçekten çok basit geldi. Herşey Hazır. ID'ni giriyorsun sonra 8 Byte'lık Data paketine Verini yüklüyorsun. Verin olduğu gibi gitmesi gereken yere gidiyor.

Oysa RS485'deBu tür Protokolleri kendim oluşturmam gerekecek.

Şuanda Kullanacağım yerde RS485'in hiçbir artısını göremiyorum ben.

mustafaelektro

#14
@ByteMaster
Can daha karmaşık demek istemedim. Daha karmaşık ve çoklu bağlantıları kurmak ve yönetmek için daha basit kullanım olanağı sunuyor demek istedim.