Cindioglu.DeltaPlc.Core 1.0.2

dotnet add package Cindioglu.DeltaPlc.Core --version 1.0.2
                    
NuGet\Install-Package Cindioglu.DeltaPlc.Core -Version 1.0.2
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Cindioglu.DeltaPlc.Core" Version="1.0.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Cindioglu.DeltaPlc.Core" Version="1.0.2" />
                    
Directory.Packages.props
<PackageReference Include="Cindioglu.DeltaPlc.Core" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Cindioglu.DeltaPlc.Core --version 1.0.2
                    
#r "nuget: Cindioglu.DeltaPlc.Core, 1.0.2"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Cindioglu.DeltaPlc.Core@1.0.2
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Cindioglu.DeltaPlc.Core&version=1.0.2
                    
Install as a Cake Addin
#tool nuget:?package=Cindioglu.DeltaPlc.Core&version=1.0.2
                    
Install as a Cake Tool

Cindioglu.DeltaPlc.Core

Delta DVP serisi PLC'ler için bağımlılıksız Modbus istemcisi. Modbus çerçeveleme ve Delta cihaz adreslerinin çevrimi elle yazılmıştır; harici bir Modbus veya Excel kütüphanesi gerekmez.

Desteklenen CPU'lar: DVP12SE, DVP14SS11R2 ve genel olarak DVP-ES2/EX2/SS2/SA2/SX2/SE ailesi.

Neler var

  • Modbus TCP/IP (MBAP), Modbus RTU ve Modbus ASCII (RS-485 / RS-232)
  • Delta cihaz adreslerinin çevrimi: D, M, X, Y, S, T, C — X/Y sekizlik
  • D4095 → D4096, M1535 → M1536 ve C199 → C200 blok sınırlarında otomatik istek bölme
  • Sıralı erişimli oturum (PlcSession) ve arka planda çalışan okuma döngüsü (PollingService)
  • Excel (.xlsx) ve CSV kayıt hedefleri — xlsx paketi de kütüphane içinde üretilir

Kurulum

dotnet add package Cindioglu.DeltaPlc.Core

Hızlı başlangıç

using DeltaPlc.Core.Delta;
using DeltaPlc.Core.Session;

var settings = new ConnectionSettings
{
    Transport = TransportKind.Tcp,      // veya TransportKind.Rtu / TransportKind.Ascii
    Host = "192.168.0.1",
    Port = 502,
    Station = 1,
    ModelName = "DVP12SE"
};

using var session = new PlcSession();
await session.ConnectAsync(settings);

// D0'dan başlayarak 20 yazmaç oku
ushort[] values = await session.ExecuteAsync<ushort[]>(
    plc => plc.ReadWords(new DeltaAddress(DeltaDeviceKind.D, 0), 20));

// D100 = 1234 yaz
await session.ExecuteAsync(plc => plc.WriteWord(new DeltaAddress(DeltaDeviceKind.D, 100), 1234));

// M20 bitini kaldır
await session.ExecuteAsync(plc => plc.WriteBit(new DeltaAddress(DeltaDeviceKind.M, 20), true));

RS-485 için:

using System.IO.Ports;
using DeltaPlc.Core.Modbus;

var settings = new ConnectionSettings
{
    Transport = TransportKind.Ascii,     // Delta fabrika varsayılanı
    Station = 1,
    ModelName = "DVP14SS11R2",
    Serial = new SerialSettings
    {
        PortName = "COM3",
        BaudRate = 9600,
        DataBits = 7,
        Parity = Parity.Even,
        StopBits = StopBits.One,
        RtsDirectionControl = false      // otomatik yön kontrolü olmayan çeviricilerde true
    }
};

Adres yazımı

DeltaAddress.Parse("D100");   // veri yazmacı
DeltaAddress.Parse("M20");    // yardımcı röle
DeltaAddress.Parse("X10");    // fiziksel giriş - sekizlik, indeks 8
DeltaAddress.Parse("Y0");     // fiziksel çıkış
DeltaAddress.Parse("C200");   // 32 bit sayıcı

Canlı izleme

using DeltaPlc.Core.Monitoring;

using var poller = new PollingService(session) { IntervalMs = 250 };
poller.SetBlocks(
[
    new MonitorBlock(new DeltaAddress(DeltaDeviceKind.D, 0), 20, MonitorKind.Word),
    new MonitorBlock(new DeltaAddress(DeltaDeviceKind.M, 1), 10, MonitorKind.Bit)
]);

poller.Sampled += (_, snapshot) => Console.WriteLine(snapshot.Word(new DeltaAddress(DeltaDeviceKind.D, 0)));
poller.Start();

Excel kaydı

using DeltaPlc.Core.Logging;

using var sink = new ExcelLogSink(@"C:\Kayitlar", ["D0", "D1", "D2"], "DVP12SE");
sink.Append(DateTimeOffset.Now, [LogValue.FromNumber(469), LogValue.FromNumber(5912), LogValue.FromNumber(12456)]);
sink.Flush();

Üretilen sayfa: Date | Time | D0 | D1 | D2. Tarih ve saat gerçek Excel tarih/saat hücreleridir. Uzun ve kesintisiz kayıtlar için satır satır diske yazan CsvLogSink tercih edilmelidir.

Donanımsız test

Cindioglu.DeltaPlc.Simulator paketi, bu istemcinin karşısına geçebilen bir Modbus TCP sunucusu sağlar.


© Cindioğlu Solutions — www.cindioglu.com

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Cindioglu.DeltaPlc.Core:

Package Downloads
Cindioglu.DeltaPlc.Simulator

Delta DVP serisi PLC yerine gecen kucuk bir Modbus TCP sunucusu. Donanim olmadan HMI/SCADA istemcilerini, testleri ve surekli tumlestirme akislarini calistirmak icin kullanilir. Modbus fonksiyon kodlari 01, 02, 03, 04, 05, 06, 0F ve 10 desteklenir.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.2 137 8/7/2026
1.0.1 121 8/6/2026
1.0.0 118 8/6/2026

Ilk surum: Modbus TCP/RTU/ASCII katmanlari, Delta adres cevrimi, okuma dongusu, Excel ve CSV kayit hedefleri.