C# & S7300 ile C# Ethernet Haberleşmesi

TCP ip ile PC -PLC arasında baglantı yapmak icin en kolay ve kısa cözüm OPC server kullanmaktır. opc server a step 7de derlemis oldugumuz proje altında .xdbs uzantılı dosyanı tanıttıktan sonra sadece bir kac tık ile plcye veri yazabilir ve okuya biliriz. tabi bunun icinde CP karta ihtiyac var. Biz scalens e plc yi girioruz ve ordan da 3 ayrı pcde scada ile PLC kontrol yapıyoruz. gayet kullanıslı tavsiye ederim.
 
Moderatör tarafında düzenlendi:
TCP ip ile PC -PLC arasında baglantı yapmak icin en kolay ve kısa cözüm OSP server kullanmaktır. osp server a step 7de derlemis oldugumuz proje altında .xdbs uzantılı dosyanı tanıttıktan sonra sadece bir kac tık ile plcye veri yazabilir ve okuya biliriz. tabi bunun icinde CP karta ihtiyac var. Biz scalens e plc yi girioruz ve ordan da 3 ayrı pcde scada ile PLC kontrol yapıyoruz. gayet kullanıslı tavsiye ederim.

OPC Server da bir çözüm fakat duruma göre pahalı olabilir. Ben yine sürekli iş yapacak arkadaşlar için LibnoDave kütüphanesini incelesinler diyorum.
 
Mrb macix.
Yardımlarınız için teşekkürler.Sizden bi ricam olacak. tcp ve/veya mpi üzerinden bağlanma 1 er tane digital ve analog okuma yazma işlemi ile ilgili bir örnek gönderebilirseniz çok memnun olurum.
Teşekkürler.
 
Benim ve ahmetbogus beyin verdiği örnekler ethernet ile yapılmıştı. LibnoDave dökümanlarında MPI bağlantısını şu şekilde olmalıdır.

daveConnection dc = new daveNewConnection(di, MPI, rack, slot);

Elimde örnek yok fakat biraz çaba ile bağlantıyı başarabilirsin.
Hazır bir proje yerine takıldığın yerde satır satır yardım alman senin için daha iyi olur ve olayı kökünden kaparsın.

Bu arada sormak istediğim birşey. kullanacağın MPI kablo COM Port ilemi mi yoksa USB Üzerinden mi çalışıyor ?
 
Arkadaşlar ben hala dll ekleyemedim.

"DLL 'libnodave.dll' yüklenemedi: Belirtilen modül bulunamadı. (HRESULT özel durum döndürdü: 0x8007007E)"

Hatası veriyor.

Bunu nasıl yapacaz. hem vb ile hem c# ile yazdım olmadı yaaa. DOT.net klasöründeki libnodave.net dll ekleniyor fakat win dosyasındaki dll eklen miyor. Yardımcı olursanız sevinirim.
 
sadece wrapper olan libnodave.net dl ekleyerek dene .
çünkü bazı durumlarda libnodave.dll projeye eklenmeden wrapper ile yapılır.
örnek projelerin reference kısımlarını inceleyiniz.

NOT:wrapper libnodave.net dll ile libnodave.dll aynı klaörde olmasına dikkat edin.
genelde default olarak aynı yere bakıyor.

örnek bir projenin reference tablosu:

Kod:
<Reference Include="System.Windows.Forms" />    <Reference Include="System.Drawing" />
    <Reference Include="System" />
    <Reference Include="SRModbusTCP" />
    [B]<Reference Include="libnodave.net" />[/B]
    <Reference Include="System.Xml" />
    <Compile Include="AssemblyInfo.cs" />
    <Compile Include="Global.cs" />
    <Compile Include="Draw\DrawGraph.cs" />
    <Compile Include="ModbusImpl\DataChanged.cs" />
    <Compile Include="Data\DataLog.cs" />
    <Compile Include="Modbus\Info.cs" />
    <Compile Include="Data\LogIntDataInterface.cs" />
    <Compile Include="Modbus\ModbusSelect.cs" />
    <Compile Include="Modbus\MainForm.cs" />
    <Compile Include="ModbusImpl\FC.cs" />
    <Compile Include="ModbusImpl\ModbusClient.cs" />
    <Compile Include="Modbus\Program.cs" />
    <Compile Include="Libnodave_TCP\S7TCP.cs" />
    <Compile Include="Modbus\S7TCPSelect.cs" />
    <Compile Include="Modbus\Traces.cs" />
    <EmbeddedResource Include="Modbus.Info.resources" />
    <EmbeddedResource Include="Modbus.MainForm.resources" />
    <EmbeddedResource Include="Modbus.ModbusSelect.resources" />
    <EmbeddedResource Include="Modbus.S7TCPSelect.resources" />
    <EmbeddedResource Include="Modbus.Traces.resources" />

iyi çalışmalar.

Arkadaşlar ben hala dll ekleyemedim.

"DLL 'libnodave.dll' yüklenemedi: Belirtilen modül bulunamadı. (HRESULT özel durum döndürdü: 0x8007007E)"

Hatası veriyor.

Bunu nasıl yapacaz. hem vb ile hem c# ile yazdım olmadı yaaa. DOT.net klasöründeki libnodave.net dll ekleniyor fakat win dosyasındaki dll eklen miyor. Yardımcı olursanız sevinirim.
 
Son düzenleme:
Libondawe gecmıs konularda ornekler var yapılmıs hazır programda internette bulabilirsin saglıklı calışıyor. Ayrıca opc ilede yine dll metodu ile haberleşilebiliniyor. Eksik bir şey yapıyor olmalısınız ben Libondawe ve kep opc ile c# haberleştirip program olusturdum.
 
Merhaba Ahmet bey,
bende aynı hata ile karşı karsıyayım dediginiz gibi dll dosyalarını yanında bırakıp libnodave.net.dll kullandım dll i ekliyor fakat
çalıştırdıgımda
fds.rfd = libnodave.openSocket(port,ip); satırında libnodave.dll modulu bulunamadı hatasını alıyorum sizin kullandıgınız dll acaba gönderebilmeniz mükünmüdür ilginiz için teşekkürler

Saygılarımla

sadece wrapper olan libnodave.net dl ekleyerek dene .
çünkü bazı durumlarda libnodave.dll projeye eklenmeden wrapper ile yapılır.
örnek projelerin reference kısımlarını inceleyiniz.

NOT:wrapper libnodave.net dll ile libnodave.dll aynı klaörde olmasına dikkat edin.
genelde default olarak aynı yere bakıyor.

örnek bir projenin reference tablosu:

Kod:
<Reference Include="System.Windows.Forms" />    <Reference Include="System.Drawing" />
    <Reference Include="System" />
    <Reference Include="SRModbusTCP" />
    [B]<Reference Include="libnodave.net" />[/B]
    <Reference Include="System.Xml" />
    <Compile Include="AssemblyInfo.cs" />
    <Compile Include="Global.cs" />
    <Compile Include="Draw\DrawGraph.cs" />
    <Compile Include="ModbusImpl\DataChanged.cs" />
    <Compile Include="Data\DataLog.cs" />
    <Compile Include="Modbus\Info.cs" />
    <Compile Include="Data\LogIntDataInterface.cs" />
    <Compile Include="Modbus\ModbusSelect.cs" />
    <Compile Include="Modbus\MainForm.cs" />
    <Compile Include="ModbusImpl\FC.cs" />
    <Compile Include="ModbusImpl\ModbusClient.cs" />
    <Compile Include="Modbus\Program.cs" />
    <Compile Include="Libnodave_TCP\S7TCP.cs" />
    <Compile Include="Modbus\S7TCPSelect.cs" />
    <Compile Include="Modbus\Traces.cs" />
    <EmbeddedResource Include="Modbus.Info.resources" />
    <EmbeddedResource Include="Modbus.MainForm.resources" />
    <EmbeddedResource Include="Modbus.ModbusSelect.resources" />
    <EmbeddedResource Include="Modbus.S7TCPSelect.resources" />
    <EmbeddedResource Include="Modbus.Traces.resources" />

iyi çalışmalar.
 

Forum istatistikleri

Konular
129,880
Mesajlar
931,002
Kullanıcılar
452,759
Son üye
imot

Yeni konular

Geri
Üst