PLC freeport protokolü

Başlatan betul, 17 Nisan 2007, 15:04:44

betul

Merhabalar,

(Forumunuzda yeniyim, apayrı olan fikirlerimizin, ortak noktasının "paylaşım" olması dileklerimle...)

Kısaca projemden bahsedeyim, PC den PLC kontrolü yapmaya çalışıyorum.PC için hazırladığım arayüzümde girişler ve çıkışlar için simgeler olacak diyelim ben herhangi bir girişin simgesine tıkladığım zaman o girişin etkilediği çıkış varsa, o çıkışın simgesi yanacak(yani renk değiştiricek) yoksa hiçbir çıkışı etkilemediğine dair bir mesaj vericek.

PC - PLC veri iletişimi için freeport protokolünü kullanıyorum.Araştırdığım kadarıyla AL(RCV) ve ilet(XMT) komutlarıyla veri iletişimi sağlanıyor.

PC den girişlere veri gönderme kısmını halletim sayılır.yalnız veri alma kısmında takıldım.PLC de hangi çıkışların çalıştığından nasıl haberim olacak?Bu bilgiyi tutan bayraklar yada bitler mi vardır ? Şimdiden tşkkrlr..Kolay gelsin.. (PLC ye yüklenen programın çalışma mantığından haberim olmicak)

stlg

Sevgili kardesim

Olayı tam olarak anlayamamakla birlikte plc girişlerine gelen verileri ve plc cıkıslarındaki verileri mikroişlemci tabanlı bir arayuzde halledip pc niz ile rs232 yada daha uzak mesafeler icin rs485 kullanarak haberlestirebilirsiniz mikroişlemcili bolum isterseniz verileri tutabilir yada sizin isteginiz dogrultusunda calısabilir kolay gelsin
ALLAHA EMANET OLUNUZ Hoştur bana senden gelen,  Ya gonca gül yahut diken,  Ya kaftandır yahut kefen,  Kereminde hoş lütfunda hoş.

asm_Coder

FreePort ve RCV,XMT yazdigina gore buyuk bir ihtimalle PLC in S7 200.

Girisler ve cikislar siemente IB(InputByte), QB(OutputByte) olarak isimlendirilir

PLC den PC ye IB0 Byte verisini gonderdigin zaman I0.0 dan I0.7 ye kadar olan 8 adet girisini PLC den okumus oluyorsun. Ayni sekilde OB0 Bye ini gonderdiginde Cikis in ilk Byte ini okumus oluyorsun.Bu byte lari once MOV komutu ile buffer a kopyalayip sonra XMT komutunu kullaniyorsun.Sonrada PC den okuyup Ekranda ilgili objelere yaziyorsun.

Kolay Gelsin
y=f(x);

betul

Alıntı yapılan: "asm_Coder"FreePort ve RCV,XMT yazdigina gore buyuk bir ihtimalle PLC in S7 200.

Girisler ve cikislar siemente IB(InputByte), QB(OutputByte) olarak isimlendirilir

PLC den PC ye IB0 Byte verisini gonderdigin zaman I0.0 dan I0.7 ye kadar olan 8 adet girisini PLC den okumus oluyorsun. Ayni sekilde OB0 Bye ini gonderdiginde Cikis in ilk Byte ini okumus oluyorsun.Bu byte lari once MOV komutu ile buffer a kopyalayip sonra XMT komutunu kullaniyorsun.Sonrada PC den okuyup Ekranda ilgili objelere yaziyorsun.

Kolay Gelsin

Evet Siemens S7-200 (cpu 222) kullanıcam.

" MOV komutu ile buffer a kopyalayip sonra XMT komutunu kullaniyorsun" demişsin ama bunları ben yapmicam PLC deki program yapıcak .

O zmn şöyle soriym çıkış verileri hep buffera mı kopyalanır.Benim öğrenmek istediğim çıkış verilerini nerden alıcağım bunu pc deki programım yapıcak.

İlgin için tşkkrlr..kolay gelsin..

stlg

Sevgili Arkadaslar

Konuya yabancı olunca boyle oluyor, su freeport olayını biraz acarsanız ben ve bu konuyu bilmeyen arkadaslar acısından guzel olacak   ;) tesekurler
ALLAHA EMANET OLUNUZ Hoştur bana senden gelen,  Ya gonca gül yahut diken,  Ya kaftandır yahut kefen,  Kereminde hoş lütfunda hoş.

asm_Coder

Betul;

PLC programinida sen yazip PLC ye yukleyeceksin değilmi?
Dolayisi ile oncelikle PLC programinda yapman gerekeni soyluyorum.
PLC nin icerisine soyle bir program yazicaksinki surekli cikis bytelari olan QB(Kac cikisin varsa) leri buffer a kopyalayip oradanda PC ye gondereceksin. Bu isin PLC kismi.
PC de is gene PLC ye ait QB leri okuyup ne yapmak istiyorsan o isleme yonlendirirsin.

Ornek olarak ben QB0 i seciyorum. Islem sirasi soyle olucak
PLC Programi
1. PLC de buffer tanimla
2. Buffer a QB0 i kopyala
3. XMT komutu ile verileri PC ye gonder.
4. 2 inci adima don ve islemi tekrarla

PC Programi.
1. Seri Portu Dinle Verileri al (Gelen Veri PLC den gonderdigimiz QB0)
2. QB0 i bitlere ayir.
3. Her bir biti Form uzerindeki ship in renk degiskenine aktar(1 ise Yesil 0 ise kirmiz gibi)
4. 1 nci adima don ve islemleri tekrarla
y=f(x);

betul

Alıntı yapılan: "asm_Coder"Betul;

PLC programinida sen yazip PLC ye yukleyeceksin değilmi?
Dolayisi ile oncelikle PLC programinda yapman gerekeni soyluyorum.
PLC nin icerisine soyle bir program yazicaksinki surekli cikis bytelari olan QB(Kac cikisin varsa) leri buffer a kopyalayip oradanda PC ye gondereceksin. Bu isin PLC kismi.
PC de is gene PLC ye ait QB leri okuyup ne yapmak istiyorsan o isleme yonlendirirsin.

Ornek olarak ben QB0 i seciyorum. Islem sirasi soyle olucak
PLC Programi
1. PLC de buffer tanimla
2. Buffer a QB0 i kopyala
3. XMT komutu ile verileri PC ye gonder.
4. 2 inci adima don ve islemi tekrarla

PC Programi.
1. Seri Portu Dinle Verileri al (Gelen Veri PLC den gonderdigimiz QB0)
2. QB0 i bitlere ayir.
3. Her bir biti Form uzerindeki ship in renk degiskenine aktar(1 ise Yesil 0 ise kirmiz gibi)
4. 1 nci adima don ve islemleri tekrarla

Saolasın ilgin için fakat PLC programını ben yazmicam o işi başkası yapıcak ve programın ne yaptığındanda haberim olmicak.
Ben cevabımı aldım verdiğin bilgiler için gerçekten sağol(bu arada güzel algoritma kumuşsun:))

Kolay gelsin.

betul

Alıntı yapılan: "stlg"Sevgili Arkadaslar

Konuya yabancı olunca boyle oluyor, su freeport olayını biraz acarsanız ben ve bu konuyu bilmeyen arkadaslar acısından guzel olacak   ;) tesekurler


Kabaca,
"Kullanıcı programı yoluyla, seri iletişim portu üzerinden, seri iletişim kurmak için freeport protokolü kullanılır."

Bu yetmez dersen,
bkz. S7 200 Türkce Kullanım Kılavuzu

Tabi bu tanım Siemens PLC ler için..

Kolay gelsin

MICROCEBEL

Arkadaşlar konu güzel anlatılmış fakat benimde bir sorum olacak.PC ile PLC arasında iletişim kurulacak fakat bu iletişimi sağlamak için PC/PPI kablosu kullanılması kesinlikle gerekiyomu yoksa kullanılmadanda iletişim sağlanabilirmi?Örneğin ben 3 PLC bide TD200 panel ile bir network kurdum.Bu network te master olan plc den pc ye veya pic'e RS232 ile aynı zamanda erişim sağlayabilirmiyim yani aynı ağ üzerinden?Kurulan network'te master ve slaveler arasında  plc nin kendi NETR ve NETW komutlarının kullanıldığı varsayılsın,plc ile pc veya pic arasındada RCV,XMT komutlarının kullanıldığı varsayılsın.Çalışmalarınızda başarılar...