Elektronik teraziyle haberleşme üzerine..

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Kabloda sorun yok zira üreticinin verdiği uygulamayla tüm işlemleri yapabiliyorum, sözkonusu uygulama da aynı iletişim protokülünü kullanıyor.Yazdığım komut formatında hata olduğunu düşünüyorum, yazdığım komutu paylaşayım ve onun üzerine yorum alayım diycem lakin birçok syntax denedim belki 15-20 farklı syntax olmuştur.Şimdi bu noktada basit bir örnek yazabilirsen olayı çözümleyebilirim sanıyorum.Tek sorun o ilk formatı çözememekte...Teşekkürler..
Anadolu27
Üye
Mesajlar: 35
Kayıt: 04 Nis 2006 11:42
Konum: Nizip

Mesaj gönderen Anadolu27 »

Merhaba,

Kullandığın komponenti bilmiyorum ama bişekilde cmpComport.Write() gibi bir komutu olmalı..

ENQ = 0x05, ACK = 0x06 gibi sabitleri
Conts
_ACK_ = Chr(6);
_NAK_ = Chr(21);
_ENQ_ = Chr(5);
vs vs.. şeklinde tanımla..

Vermiş olduğun dokümanda Transmit Data (Server to Scale) diye bir bölüm var. yani ilk kod
cmpComport.Write(_ENQ_) gibi olmalı
ve bu ifadeyi gönderdikten sonra sana muhakkak ACK NAK gibi bir cecvap verecektir.

sen sanırsam cmpComport.Write('0x05') gibi falan gönderiyorsun..
neyse..
velhasıl sana gelen cevap NAK ise komutu tekrarlayacaksın. egerki ACK gelirse ki beklenen de budur
o zaman STX ile başlayan ve CheckSum + ETX + CR ile biten uzun bir ifade göndermelisin.
Yani cmpComport.Write(_STX_+DigerBlokIfadeler+CheckSum + _ETX_ + _CR_)

ve sonrasında yine sana ACK NAK gibi bir cevap verecektir.


Sağlıcakla...
Akin_Delphi
Üye
Mesajlar: 163
Kayıt: 06 Nis 2006 12:22

Mesaj gönderen Akin_Delphi »

Tekrar merhaba,

Belki çok saçma ama, bir şey aklıma geldi. Belki de bu alet RS232'yi kullanmasına rağmen, yine de o IP numaralarını vs.'yi kullanıyor olabilir mi?

Yani program çalışırken, NETSTAT yapar mısınız. Hangi bağlantılar var acaba. Belki de bu sistem böyle çalışıyordur.

Saygılarımla ve Başarılar.
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

İlginiz için teşekkürler..
Benzer formatlar denedim ancak tam bu şekilde denediğimi hatırlamıyorum, terazi ihtiyaçtan dolayı iade edildi fakat birkaç gün içinde tekrar test için gelecek ya da farklı alternatiflerle yeniden temin ederek deneyeceğim.Cihazdan herhangi bir cevap gelmesi durumunda muhtemelen gerisini halledebilirim.@AkınDelphi, evet haklı olabilirsin o da mümkün olabilir, netstatla denemedim gerçi ama ip adresinden yola çıkarak ulaşmaya çalıştım cevap vermedi.Tekrar değerlendirip buraya yazmaya çalışacağım.

Tekrar teşekkürler, kolay gelsin..
Anadolu27
Üye
Mesajlar: 35
Kayıt: 04 Nis 2006 11:42
Konum: Nizip

Mesaj gönderen Anadolu27 »

Merhaba,

Arkadaşlar cihazda sadece seriport var. TCP/IP ile ilgili yapabileceğiniz bişey söz konusu değil.

yani sen muhakkak seriport üzerinden yollamalısın verileri.
netstat dediğiniz şey seriportla ilişkisi bildiğim kadarıyla da yok.
tamamen ayrı konular.

cihazın falanca versiyonu TCP/IP üzerinden benzer protokolü destekliyordur adam dokümana bu bilgiyide koymuş.

Sağlıcakla
Cevapla