Picproje Elektronik Sitesi

ENDÜSTRiYEL OTOMASYON => Plc, Scada, Operatör Paneller => Konuyu başlatan: LuckyLuke - 07 Temmuz 2006, 18:04:57

Başlık: Delta PLC - PC seri haberleşme sorunu...
Gönderen: LuckyLuke - 07 Temmuz 2006, 18:04:57
Arkadaşlar Delta PLC ile vb ten Mscomm ile haberleşiyorum...
Şöyle bir sorunum var;

Gelenbilgi=mscomm1.input

Text1.text=Gelenbilgi

yukarıdaki komut satırlarında plc den Mscomm1.input 'a 15 karakterlik bilgi geldiği halde değişkene ilk 8 karakteri atıyor. Text kutusunda hep ilk 8 karakteri görebiliyorum.
Gelenbilgi değişkenini string tanımladığım halde neden bufferdan ilk sekiz kaarakteri okuyabiliyorum.

Bu sorunu nasıl çözebilirim.

Daha önce bu sorunla karşılaşan ve çözümünü bilen varsa yardımcı olabilir mi acaba...

Şimdiden çok teşekkürler...
Başlık: Delta PLC - PC seri haberleşme sorunu...
Gönderen: microcozmoz - 07 Temmuz 2006, 22:08:39
Delta PLC ler ile çalışıyorum fakat daha önce böyle bir çalışma yapmak için uğraşmaya zamanım olmadı  :)

Aklıma gelen text bölgenin değişken tipi byte ise sadece 8 bit görebilirsin..Eğer tipi doubleword olarak değiştirirsen düzelir sanıyorum..

Sadece mantık olarak cevap verdim umarım tutar :)
Başlık: Delta PLC - PC seri haberleşme sorunu...
Gönderen: LuckyLuke - 10 Temmuz 2006, 10:16:34
Text bölgesinin değişken tipi String
Deltadan gelen bilgi ASCII buffera 16 karakter geliyor
Örnek ":0103020003F7LRCF" ben bunu text değişkenine aktardığımda
sadece ilk 8 karakterini alabiliyorum.
":0103020"
Sorunu bir türlü çözemedim...

Teşekkürler...
Başlık: Delta PLC - PC seri haberleşme sorunu...
Gönderen: microcozmoz - 10 Temmuz 2006, 10:23:16
Text bölgesinin değişken tipini değiştiremiyormusun??
Başlık: Delta PLC - PC seri haberleşme sorunu...
Gönderen: LuckyLuke - 10 Temmuz 2006, 10:27:24
Sayısal değişken atadığımda hata veriyor (Long veya Double tanımladığımda)
Başlık: Delta PLC - PC seri haberleşme sorunu...
Gönderen: picusta - 10 Temmuz 2006, 12:22:57
Son iki karakter, katarin bitigini söylüyor: LF:Line Feed, CR: Carriage Return.
C'de olsa, katardan formatlanmis okuma için komutlar hazir: sscanf(). olmadi gets() kullanirsin.
Basic'teki karakter katari ile ilgili komutlari bilmiyorum.
Başlık: Delta PLC - PC seri haberleşme sorunu...
Gönderen: LuckyLuke - 11 Temmuz 2006, 09:11:55
VBasic teki dizi sonu karakter komutu  VbCrLf

Yardım eden herkese çok teşekkürler sorunu çözdüm.

Sorun Mscomm1.input komutunu bekleme döngüsünde imiş.

While
Wend

döngüsü kullanıyordum olmamıştı.


Do
DoEvents
Buffer$ = Buffer$ & MSComm1.Input
Loop Until InStr(Buffer$, vbCrLf)
Yukarıdaki döngüyü kullandım sorun çözüldü.
Selamlar...