Versionen und Neuerungen PLCcom für S7

Neuerungen der Version 9.1.6
  • Bugfix, beim Abfragen langer Datenströme aus der SPS konnte es zu einer Endlosschleife kommen, wenn der Optimierungsmode AUTO eingestellt wurde

 

Neuerungen der Version 9.1.5
  • Interne Optimierungen

 

Neuerungen der Version 9.1.1
  • Komponente steht nun auch für .net-Standard, .Net-Core, Xamarin, UWP und Android zur Verfügung
  • neue Funktion ReadWriteData zum optimierten Lesen und Schreiben von Daten
  • gleichzeitiges Lesen oder Schreiben von Daten in einem Funktionsaufruf in unterschiedlichen Bereichen
  • Neue Optimierungsmethoden, CROSS_AREA (Mix-Mode) und COMBINE_AREAS (Bereiche zusammenfassen)
  • Automatische Ermittlung des besten Optimierungs-Mode (Nur in Expert-Edition)
  • div. interne Verbesserungen der Algorithmen


Im Zuge der Bereinigung wurden diverse Methoden und Funktionen entfernt.
Diese Funktionalitäten waren bereits innerhalb der Vorversionen als deprecated markiert und sollten dementsprechend schon längere Zeit nicht mehr benutzt werden.

Folgende Funktionen wurden entfernt:

Version Type Entfernte Funktion Stattdessen zu benutzende Funktionalität
Alle enum ePLCType.Logo_compatibel ePLCType.Logo0BA7_compatibel oder
ePLCType.Logo0BA8_compatibel
Alle enum eDataType.UNICODECHAR eDataType.STRING oder
eDataType.S7_STRING
Alle enum eDataType.BCD eDataType.BCD16
Alle object ReadItemRequest ReadDataRequest
Alle object ReadItemRequestCollection ReadWriteRequestSet
Alle object ReadRequest ReadDataRequest
Alle object WriteRequest WriteDataRequest
Alle object ReadItemResult ReadDataResult
Alle object ReadItemResultCollection ReadWriteResultSet
Alle object ReadResult ReadDataResult
Alle object WriteResult WriteDataResult
.Net method PLCcomDevice.SetPLCTime(DateTime)  PLCcomDevice.SetPLCClockTime (DateTime)
Java method PLCcomDevice.setPLCTime(Calendar)    PLCcomDevice.setPLCClockTime (Calendar)
.Net function PLCcomDevice.GetPLCTime() PLCcomDevice.GetPLCClockTime()
Java function PLCcomDevice.getPLCTime() PLCcomDevice.getPLCClockTime()
.Net function PLCComDataServer.AddReadDataRequest
(ReadDataRequest value, String ItemKey)
PLCComDataServer.AddReadDataRequest
(ReadDataRequest value)
Java function PLCComDataServer.addReadDataRequest
(ReadDataRequest value, String ItemKey)
PLCComDataServer.addReadDataRequest
(ReadDataRequest value)
.Net function PLCcomDevice.GetLocal_MPI() PLCcomDevice.GetBUS_ADRESS_LOCAL()
Java function PLCcomDevice.getLocal_MPI() PLCcomDevice.getBUS_ADRESS_LOCAL()
.Net method PLCcomDevice.SetLocal_MPI(int) PLCcomDevice.SetBUS_ADRESS_LOCAL(int)
Java method PLCcomDevice.setLocal_MPI(int) PLCcomDevice.setBUS_ADRESS_LOCAL(int)
.Net function PLCcomDevice.GetPLC_MPI() PLCcomDevice.GetBUS_ADRESS_PLC()
Java function PLCcomDevice.getPLC_MPI() PLCcomDevice.getBUS_ADRESS_PLC()
.Net method PLCcomDevice.SetPLC_MPI int) PLCcomDevice.SetBUS_ADRESS_PLC(int)
Java method PLCcomDevice.setPLC_MPI(int) PLCcomDevice.setBUS_ADRESS_PLC(int)
.Net function PLCcomDevice.GetLocal_PPI () PLCcomDevice.GetBUS_ADRESS_LOCAL()
Java function PLCcomDevice.getLocal_PPI () PLCcomDevice.getBUS_ADRESS_LOCAL()
.Net method PLCcomDevice.SetLocal_PPI(int) PLCcomDevice.SetBUS_ADRESS_LOCAL(int)
Java method PLCcomDevice.setLocal_PPI(int) PLCcomDevice.setBUS_ADRESS_LOCAL(int)
.Net function PLCcomDevice.GetPLC_PPI() PLCcomDevice.GetBUS_ADRESS_PLC()
Java function PLCcomDevice.getPLC_PPI() PLCcomDevice.getBUS_ADRESS_PLC()
.Net function ConnectResult.HasConnected OperationResult.getQuality
Java function ConnectResult.hasConnected() OperationResult.getQuality()
.Net function ConnectResult.HasWorked OperationResult.getQuality
Java function ConnectResult.HasWorked () OperationResult.Quality()
.Net function BasicInfoResult.Ordernummer BasicInfoResult.Ordernumber
Java function BasicInfoResult.Ordernummer() BasicInfoResult.Ordernumber()
 
 

Innerhalb der neuen Version wurden folgende Funktionalitäten als deprecated markiert:

Version Type Deprecated Stattdessen zu benutzende Funktionalität
.Net function ReadData(ReadDataRequestCollection) ReadWriteData(ReadWriteRequestSet)
Java function readData(ReadDataRequestCollection) readWriteData(ReadWriteRequestSet)
Java function DeviceInfo() getDeviceInfo()
Java function DisConnect() disConnect()
Java function BeginConnect() beginConnect()
Java function StartPLC() startPLC()
Java function GetPLCClockTime() getPLCClockTime()
Java function SetPLCClockTime(Calendar) setPLCClockTime(Calendar)
Java function GetLEDInfo() getLEDInfo()
Java function GetBasicInfo() getBasicInfo()
Java function GetCPUMode() getCPUMode()
Java function GetBlockList() getBlockList()
Java function GetBlockLenght(eBlockType, int) getBlockLenght(eBlockType, int)
Java function ReadPLCBlock_MC7(eBlockType, int) readPLCBlock_MC7(eBlockType, int)
Java function WritePLCBlock_MC7(WritePLCBlockRequest) writePLCBlock_MC7(WritePLCBlockRequest)
Java function DeleteBlock(eBlockType, int) deleteBlock(eBlockType, int)
Java function GetDiagnosticInfo() getDiagnosticInfo()
Java function GetSystemStatusList(int, int) getSystemStatusList(int, int)
Java function BasicInfoResult.Ordernumber() BasicInfoResult.getOrdernumber()
Java function BasicInfoResult.ModuleVersion () BasicInfoResult.getModuleVersion ()
Java function BasicInfoResult.FirmwareVersion () BasicInfoResult.getFirmwareVersion()
Java function BasicInfoResult.Name () BasicInfoResult.getName()
Java function CPUModeInfoResult.CPUModeInfo() CPUModeInfoResult.getCPUModeInfo()
Java function CPUModeInfoResult.CPUStateInfo() CPUModeInfoResult.getCPUStateInfo()
Java function LEDInfoResult.LEDInfo() LEDInfoResult.getLEDInfo()
Java function OperationResult.InnerException() OperationResult.getInnerException()
Java function OperationResult.Message() OperationResult.getMessage()
Java function OperationResult.Quality () OperationResult.getQuality()
 
Neuerungen der Version 8.4.1
  • (nur Java Version) Bugfix für Fehler beim Verbinden zu WinAC RTX -Steuerungen
  • eventuell auftretender Fehler beim Lesen und Schreiben langer Datenwerte beseitigt
  • Assemblies sind nun mit Code Signing Zertifikat signiert
 
Neuerungen der Version 8.3.0 (nur JAVA)
  • Bugfix falscher Monat beim Lesen von DATR_AND_TIME-Werten

 
Neuerungen der Version 8.2.7
  • Fehlerbehebung eines eventuell auftretenden Timeouts bei ausführung der "IsConnected"-Funktion aus zweitem paralellem Thread

 
Neuerungen der Version 8.2.5
  • Beseitigung von Komptabilitätsproblemen bei Kommunikation mit 1500er-Steuerung mit älterer Firmware

  • Anpassung des Verhaltens des Telegrammverkehrs mit 1500er-Steuerung bei auftretenden Netzwerkproblemen

 
Neuerungen der Version 8.1.3 (nur für die .Net Versionen)
  • Überflüssige Debug-Ausgaben wurden entfernt
 
Neuerungen der Version 8.1.0
  • Bessere Unterstützung neuerer Firmware-Stände
  • Optimierung der Kommunikations-Abläufe
  • Bugfix eventuell auftretende 0-Werte bei Kommunikation mit WinAC RTX-Steuerungen
  • Kleinere weitere Fehlerkorrekturen

Neuerungen der Version 7.7.0
  • Bugfix evtl. auftretender Fehler beim Schreiben von Werten behoben
  • Bugfix 0 Reference error / DataImage logging

Neuerungen der Version 7.6.0
  • Verbessertes Stabilitätsverhalten
  • Erweiterte und schnellere Erkennung von TCP-Verbindungsabbrüchen
  • Bugfix beim Verbindungsaufbau zu bereits anderweitig verbundenen Logo!0BA8- Steuerungen

Neuerungen der Version 7.5.0
  • Bugfix: Schreiben von Merkern bei Angabe von DB

Neuerungen der Version 7.4.1
  • Neue unterstützte Datentypen: Time of Day, Time, Date, BCD8, BCD16, BCD32, BCD64
  • Bestehendes Format BCD wird abgelöst von BCD16
  • Bugfix Fehlerbehandlung nullbasierter Strings

Neuerungen der Version 7.3.0 (Nur für die .Net und WinCE Versionen)
  • Signaturprobleme behoben

Neuerungen der Version 7.2.0
  • Bugfix beim Schreiben von mehr als 485 Bytes in einer S7 1500er Steuerung

Neuerungen der Version 7.1.0
  • Vereinheitlichung des Klassenmodels bei Lesen, Schreiben und Zugriff auf die ReadCollection
  • Detaillierte Diagnose-Ausgaben für jeden einzelnen Request zur effizienten Fehlersuche
  • Vollständige Unterstützung der Siemens Logo! 0BA8
  • Datenserver für eventgesteuerte Variablen-Überwachung auf der SPS (nur Expert-Version)
  • Bereitstellung von Logging-Konnektoren für (nur Expert-Version)
    o Fortlaufendes Logging von SPS-Daten in das Filesystem oder in SQL-Datenbanken
    o Schreiben eines aktuellen Abbildes der SPS-Daten in das Filesystem oder in SQL-Datenbanken zur weiteren Verwendung
    o Verschlüsselte Ablage der Daten im Filesystem
    o Durch Definition und Übergabe von Datenbankverbindungen durch den Entwickler keine Einschränkungen bei dem Datenbank-Typ (eine Liste der getesteten SQL-Datenbänke findet sich im Unterverzeichnis /docs)
  • Performance-Optimierungen
  • Kleinere Bugfixes
  • Komplette Überarbeitung der Beispiel- und Testprogramme

Neuerungen der Version 6.14.0

  • Bugfix, Fehler beim Lesen von S7-Strings beseitigt, wenn aktuelle Länge der maximalen Länge entsprach
 
Neuerungen der Version 6.11.0
  • Bugfix beim Lesen von Merkern (Version 6.10.0)

Neuerungen der Version 6.10.0

  • interne Verbesserungen
  • weitere Problembehebung wenn Bausteine mehr als 113 Ojekte
  • Fehlerbeseitigung wenn DB-Nummer > 9999

Neuerungen der Version 6.9.0

  • interne Verbesserungen
  • Problembehebung wenn Bausteine gleich mehr als 113 Ojekte
  • Problemlösung bei evtl. auftretenden timeouts bei MPI-Verbindungen
 
Neuerungen der Version 6.8.0
  • Bugfix beim Auslesen von vielen Datenblöcken (GetBlocklist)
 
Neuerungen der Version 6.6.0 (Nur für die Java Version)
  • Bei der Deaktivierung der Optimierung beim Lesen von ReadCollections konnte ein Fehler auftreten, dieser wurde behoben
  • Methode setOptmize durch setOptimize ersetzt
  • SetLength als deprecated markiert
 
Neuerungen der Version 6.5.1 (Nur für die Java Version)
  • Fehlerbeseitigung beim Schreiben und Lesen von S7Strings länger als 127 Bytes
  • Möglichkeit zum Lesen vorzeichenloser Bytes hinzugefügt
 
Neuerungen der Version 6.4.5
  • Problem behoben >> Fehler beim nachfolgenden schreiben von mehreren Blöcken, wenn die SPS wenig freien Speicher hat
 
Neuerungen der Version 6.4.2
  • Problem behoben >> Wenn beim Lesen eine ReadItemRequestCollection und das Device nicht verbunden ist, wird beim zweiten Lese-Versuch eine NullReferenzException auftreten
 
Neuerungen der Version 6.3.1
  • Datentyp S5 Time hinzugefügt
 
Neuerungen der Version 6.2.7
  • Property Speed in der PLCcomDevice-Basisklasse implementiert (nur .Net, und WinCE-Version)
  • getSpeed und SetSpeed in der PLCcomDevice-Basisklasse implementiert (nur Java-Version)
 
Neuerungen der Version 6.2.6
  • Bugfix >> Fehler beim Hinzufügen eines Items zu einer ReadCollection mit aktivierter Optimierung
 
Neuerungen der Version 6.2
  • Einführung einer Version für Windows CE 5.0 und 6.0 (z.B. für ARM-Prozessoren)
  • Unterstützung der Siemens LOGO!-SPS (Version 0BA7)
  • Starten und Stoppen von S7-1200er SPSsen
  • Abfrage angelegter Bausteine
  • Abfrage Bausteinlänge
  • Backup vorhandener Bausteine
  • Restore vorhandener Bausteine
  • Restore unter geänderter Blocknummer
  • Ausgabe von Blockdetails wie z.B. Erstellungssprache (AWL, KOP, etc.), Autor, Version, Rohdaten, Header, Footer uvm.
  • Abfrage Diagnosebuffer und Rückgabe der Meldungen in Klartext
  • Löschen von Bausteinen
  • Implementierung einer Möglichkeit zur Übergabe eines Passwortes bei Zugriff auf SPSsen mit Kennwortschutz
  • Unterstützung von PLCSIM (ab Version 5.4 > installiertes Netzwerkgateway z.B. NetToPlcSim vorausgesetzt)
  • Einführung einer zentralen abstrakten Basisklasse zur Ableitung der Device-Klassen (TCP_ISO_DEVICE, MPI_DEVICE, PPI_DEVICE)
  • Einführung von Methoden zum direkten Schreiben von Strings und S7Strings unter Berücksichtigung der Codepage oder einer angegebenen CultureInfo
  • Auslesen der Basisinformationen beim Verbinden des Devices, Bereitstellung der Informationen als BasicInfoResult über das Property DeviceInfo
  • Einführung von "Service-Verbindungen" zum erweiterten Ansteuern von Logo!-SPSsen
  • Übergabemöglichkeit des SPS- Kommunikationsports bei TCP-IP-Verbindungen
  • Übergabemöglichkeit des lokalen Kommunikationsports bei TCP-IP-Verbindungen (wichtig für Firewalleinstellungen)
  • Bereitstellung einer von Verbindungsinformationen als ConnectionState
  • Event On_ConnectionStateChange bei Änderung des ConnectionState implementiert
  • Möglichkeit zur nutzung eines asynchronen Verbindungsaufbaus implementiert
  • AutoConnect mit einstellbarer max. Ruhezeit bis automatischem Disconnect
  • Internationalisierung sämtlicher Meldungen, momentan in Englisch (default) und Deutsch
  • Abfrage der Systemzustandslisten
  • Zusätzliche Abfrage von CPU-State zu CPU-Mode (z.B. Betriebszustand, Schalterstellung etc.)
  • Komplette Überarbeitung der Beispielanwendungen
  • Umorganisation interner Abläufe zur weiteren Performancesteigerung
  • Es kommt nicht mehr zu einem Timeout mit Verbindungstrennung, wenn die Systemzeit umgestellt wird, z.B. Sommer/Winterzeit
  • Problem beim Lesen mit einer optimierten ReadItemResultCollection wenn ein DB größer 2206 ist, wurde beseitigt
  • Methoden zum Lesen und Schreiben von UniCode werden von Methoden zum direkten Schreiben von Strings und S7Strings ersetzt und wurden als "deprecated" markiert
  • innerhalb der Result-Klassen wird die Quality des Vorgangs  als Enum zurückgegeben, sodass das Fehlertext nicht mehr geparst werden muss
  • Umbenennung des Rückgabewertes der Klasse BasicInfoResult von Ordernummer in OrderNumber. Der Member Ordernummer wurde als "deprecated" markiert
  • Ablösung der  Propertys Local_MPI, Local_PPI, PLC_MPI, PLC_PPI durch die Propertys BUS_ADRESS_LOCAL und BUS_ADRESS_PLC innerhalb der Device-Klassen. Local_MPI, Local_PPI, PLC_MPI, PLC_PPI wurden als "deprecated" markiert.
  • Ablösung der Funktionen GetPLCTime und SetPLCTime durch die Funktionen GetPLCClockTime und SetPLCClockTime sowie Rückgabe eines PLCClockTimeResult-Objektes. GetPLCTime und SetPLCTime wurden als "deprecated" markiert.
  • interne Fixes...
 
Neuerungen der Version 5.1
  • Kompatibel zu Siemens SoftSPS WinAC RTX 2010
  • Kompatibel zu Siemens SPS der 1500er-Serie
  • Unterstützt das .Net-Framework 4.5
  • Bugfix GetPLCTime
  • Performanceoptimierungen beim Zugriff mit TCP-IP
  • Bugfix beim Adressieren von Rack + Slot
 
Neuerungen der Version 4.0.4 (Nur für die .NET Version)
  • Bugfix GetPLCTime
  • Bugfix Result-Ausgabe beim Schreiben
 
Neuerungen der Version 4
  • Mit dem neuen Upgrade erzielt die PLCcomS7-Library eine deutliche Performance-Steigerung für zyklisch wiederkehrende Lesezugriffe.
    Eine wesentliche Neuerung ist die Einführung neuer "ReadItemCollection-Objekte", zu denen die einzelnen zu lesenden Variablen (z. B. einzelne DINT-Werte) hinzugefügt werden.
    Beim Lesen werden diese Variablen zu optimalen Lesezugriffen auf die jeweilige SPS zusammengefasst. So werden die notwendigen Lesezugriffe zur SPS auf ein Minimum reduziert, was eine stark verbesserte Performance im Gegensatz zu einzeln abgefragten Variablen bedeutet.
    Auch entfällt die Zusammenfassung von Variablen zu einem Stream durch den Softwareentwickler - so wird die Entwicklungszeit spürbar verkürzt und das Handling stark vereinfacht.
    Interne Ablaufänderungen sorgen darüber hinaus für eine verbesserte Performance und Stabilität.
 
Neuerungen der Version 3.1.6 (Nur für die Java Version)
  • Bugfix write Int
 
Neuerungen der Version 3.1.5
  • eventuell auftretende Probleme mit VIPA-CPUs behoben
 
Neuerungen der Version 3.0.1
  • Unterstützung der S7 1200er Baureihe
 
Neuerungen der Version 2.7.1 (Nur für die .NET Version)
  • .NET Framework 4 kompatibel
 
Neuerungen der Version 2.6.9 (Nur für die JAVA Version)
  • Bugfix read Byte
 
Neuerungen der Version 2.6.8 (Nur für die JAVA Version)
  • Bugfix write Dword
 
Neuerungen der Version 2.6.7 (Nur für die JAVA Version)
  • Bugfix bei "ADDWORD"
 
Neuerungen der Version 2.6.4
  • Bugfix beim event. „Fehler schreiben von Bits“
 
Neuerungen der Version 2.6.2
  • BugFix SetPlcTime
 
Neuerungen der Version 2.6
  • Starten und Stoppen der CPU
  • Auslesen von Seriennummer und Firmwareversion
  • Auslesen der Schlüsselschalterstellung
  • Auslesen von LED-Infos
  • Lesen und Schreiben von Date_and_Time Werten
 
Neuerungen der Version 2.4
  • Unterstützt die Kommunikation mittels PPI Protokoll
 
Neuerungen der Version 2.1
  • Unterstützt die Kommunikation für SPS S7-200 mittels CP-243 (TCP/IP)
  • Lauffähig und getestet unter Linux mit dem Mono Framework 2.4
  • -div. Performanceverbesserungen