seri iletişimmi?

Başlatan eloman, 24 Temmuz 2007, 01:30:45

eloman

8 ayrı cihazın data bilgilerini ( açık- kapalı ) bilgisayara taşımak istiyorum fakat mesafe uzun ve 8 ayrı kabl çekmek yerine her makinadan aldığım datayı bir diğerine, sonrakini ötekine yani 8 ayrı cihazı seri bağlıyarak datayı tek kablo ile bilgisayara taşımak istiyorum. Cihazları serimi bağlamalıyım bağlarsam bütün dataları nasıl bilgisayarda ayırt ettirip hangi cihza hangi datayı göndermiş buldurabilirim. Yardım pls
..................................................................... Dostluk dediğin; tek bir ruhun, iki ayrı bedende dirilmesi...

ipek

cakismadan (coincide) kurtulmak icin slave master herbiri icin ayri id (kimlik) tasiyan rs485 cozum olabilir fakat hiz berbat....

vale9

rs485 yavaş kalabilir, picbasicpro kullanıyorsan serout veya serout2 komutlarıyla yüksek hızlara çıkabilirsin. pc'ye yakın olacak pic'i master kabul edip pc'ile sadece bu pic aracılığıyla iletişim kurdur. Diğer 7 tanesi ortak bir hattan bu master pic'e data yollasın, o da yorumlayıp pc ile iletişim kursun.
Eğer hepsini birden seri bağlamak istiyorsan hepsine yazılımda ayrı ayrı numara verirsin, önce numarasını yollar, sonra datasını yollar hatta. Sen de kimden ne bilgi gelmiş görürsün.

Kablo mesafen uzunsa çok hızlı çalışma, hatalara neden olabilir (600 veya 1200 baud seç). Ayrıca pic'ten çıkan datayı direk hatta verme, bir optokuplör ile ver. Optokuplörün çıkışını 12...24V gibi ayarla, hatta seviye yüksek olsun. pic datayı alırken yine optokuplör üzerinden alsın, 12...24V'u 5V'a çevirip pic'e gir. Çalışır!
Hayat 1'ler ve 0'lardan ibarettir.

eloman

çok teşekkür  ederim fikirlerinize.
..................................................................... Dostluk dediğin; tek bir ruhun, iki ayrı bedende dirilmesi...

lamercik

RS 485 in müfredattaki verilerine göre 7KM (YEDİ KİLOMETRE)  ye kadar sorunsuz çalışabiliyor. ben bunu 3KM ye kadar çalıştırdım, ne hızda nede bilgide bir kayıp YOK. ayrıca bu uygulama için sadece açık-kapalı bilgisi isteniliyor. 2 adres bilgisi 1 de açık-kapalı durumunu belirten yani toplamda 3 adet bilgi ile elde etmek istediğimiz bilgiye ulaşabiliriz. buda genelde kullanılan 9600 n,8,1 e göre 3ms (milisaniye)  eder. topam 8 adet terminalimiz olduğuna göre 8x3=24 ms + ana kontrol ünitesinden de 2 adet adres bilgisini göndermek için 2X8=16ms  toplamda ise 16+24=40ms'de  tüm terminallerden verileri toplayabilirsin.  Daha ne kadar hız istiyorsunuz ?

CaFFeiNe

neden adresli yangın alarm sistemi gibi birşey düşünmüyorsunuz?

yanlış bilmiyorsam bu alarm sistemlerinde butonların içinde değişik direnç değerleri var ve hangi butona basıldığı direnç değerine göre tespit ediliyor

cihaz sayısı az olduğu için bana bu mantıkla çok kolay olabilir gibi geliyor

f1varol

buna benzer bir çalışma bende yapıyorum. gerçi biraz kablo ve pic fazlalığı olacak projemde. 4 erli grup halinde 80 buton var. Yani 20 kullanıcı. Her kulanıcının 4 butonu 1 pice bağlı. Pic ler basılan butonu okuyup saklayacak. Ana işlemci 20 pice sırayla gönderin diyecek, ve pc nin paralel portuna yanıtlar gidecek. Yanıt sırası hep aynı olacağı için PC programı bu sırayı kullanıcılarla eşleştierecek.  Mantıklımı?

muser53

RS422 İLE YAPILACAK PİYASASA BÖYLE yapıyor

lamercik

Alıntı yapılan: "f1varol"buna benzer bir çalışma bende yapıyorum. gerçi biraz kablo ve pic fazlalığı olacak projemde. 4 erli grup halinde 80 buton var. Yani 20 kullanıcı. Her kulanıcının 4 butonu 1 pice bağlı. Pic ler basılan butonu okuyup saklayacak. Ana işlemci 20 pice sırayla gönderin diyecek, ve pc nin paralel portuna yanıtlar gidecek. Yanıt sırası hep aynı olacağı için PC programı bu sırayı kullanıcılarla eşleştierecek.  Mantıklımı?

pc nin paralel portuna yanıtlar ne şekilde gelecek? seri bilgiyi pc'nin paralel portundan nasıl okumayı planlıyorsun? bu zor vede zahmetli bir iş, vede uygulaması çok saçma bir iş.

paralel port yerine pc de seri portu tercih etmen daha mantıklı vede pc ile sadece ana işlemciyi haberleştirirsen işin biraz daha profesyonelleşmiş olur. yani ana işlemcin verileri diğer işlemcilerden toplayacak, gerekiyorsa yorumlarını yapacak vede pc'den istenildiği takdirde verileri pc'ye gönderecek.

f1varol

lamercik dostum; bilgiler seri olarak akmayacak. İşin püf noktası yanıtların pc ye sırayla gitmesi. Her kullanıcının yanıtlarını saklayacak olan pic in 4 çıkışı var. Bunlar paralel porta bağlılar. Portun giriş için dört pini kullanılıyor. Pc bu dört pini a-b-c-d olarak kodlayacak. Aynı şekilde 20 kullanıcının yanıtları sırayla gelecek. ilk gelen lamercik, ikinci glen ahmet.... gibi.
Ana işlemci lamerciğin picine yanıtı gönder dediğinde mesela pc nin data 1 pini hıgh oldu 100 ms. data 1 a şıkkı olarak eşleştirildiğnden pc programında yanıtın a dır. Yine ana işlemci ilk sana gönder dediği ve pc ilk gelen yanıtı lamercikle eşleştirdiği için yanıt lamerciğe aittir.
ana işlemcinin görevi pc  ile pic ler arası aracılık görevi .
PC süreniz başladı diyecek ana işlemciye. İşlemcide pic lere butonları okuyun ve yanıtları saklayın diyecek.
PC süre dolunca işlemciye süre doldu mesajı atacak. Aynı şekilde işlemcide 20 pice artık basılan butonları görmezden gelin diyecek.
PC yanıtları göndersinler mesajını ana işlemciye iletecek. Ana işlemcide sırayla ve araya belli bir zaman koyarak her pice yanıtı pc ye gönder diyecek.
  kabaca böle. dediğin gibi daha profosyonel olabilirdi ama henüz bununla cebelleşiyorum Ama bu çalışırsa seri iletişim olayına el atcam.
Saygılar.

lamercik

:D  Kolay gelsin o halde sana