Ynt: modbus kompenant kullanımı..

Başlatan forumsad, 09 Şubat 2013, 01:08:34

forumsad

http://sourceforge.net/projects/delphimodbus/?source=dlp

arkadaşlar yukardaki kompenantı delphi7 ye yukledim denemelere başladım bir el atarsanız sevinirim..

ben yaptıklarımı yazayım...
demos/indy9 altındaki örneği çalıştırdım...  plc nin ip adresini girdim
192.168.2.189   şeklinde

forma bir adet listbox ekledim  ve edtReadReg değerini 0 olarak ayarladım..

procedure TfrmMain.btnReadClick(Sender: TObject);
var
  Data: array[0..4096] of Word;
  iAmount: Integer;
  i: Integer;
  sLine: String;
begin
  iAmount := StrToInt(edtReadAmount.Text);
  if (iAmount > 0) then
  begin
    mctPLC.Host := edtIPAddress.Text;
    if mctPLC.ReadHoldingRegisters(StrToInt(edtReadReg.Text), iAmount, Data) then
    begin
      sLine := 'Register value(s) read:';
      for i := 0 to (iAmount - 1) do
        sLine := sLine +
                 #13#10'     ' +
                 IntToStr(StrToInt(edtReadReg.Text) + i) +
                 ': 0x'  +
                 IntToHex(Data[i], 4);
     // ShowMessage(sLine);
     ListBox1.Items.Add(sLine);  //ekledim
    end
    else
      ShowMessage('PLC read operation failed!');
  end;
end; { btnReadClick }


çalıştırıp read register dediğimde listbox'a aşağıdaki gibi bir veri ekliyor..
[IMG]http://img451.yukle.tc/images/2751hc_009.jpg[/img]

plc'nin  QP0  çışı flaşör şeklinde sürekli 1-0 oluyor (2sn yede bir)

bu kod ile QP0 durumunu okumak için nasıl bir değişilik yapmalıyız..

mesaj birleştirme:: 09 Şubat 2013, 01:14:26

[IMG]http://img453.yukle.tc/images/4415hc_010.jpg[/img]

bu şekilde coil okuma var ama tam ayarlayamadım

forumsad

arkadaşlar bu sorunun çözümü için gerekirse ücret ödemeye hazırım bu kompenantı kullanmayı bilen varsa
yardımcı olsun lütfen