# LibNodaveConnectionLibrary Updates...



## Jochen Kühner (27 Oktober 2010)

Einiges an Updates in meiner Connection Lib:

- auslesen von VATs aus Step 7 Projekten nun möglich
- Arbeiten an schreiben ins Step7 projekt begonnen
  (MDX implementierung fehlt noch)
- Status Baustein, das alte Telegramm (da gibt es 2 verschiedene) eingebunden.
  (im Moment noch keine automatische erkennung welches Telegramm die CPU versteht, kommt aber noch, auch noch ein paar Bugs drinn)
- Refactoring der Step7Project Funktionen.
- Symbolik Support beim umwandeln von MC7inAWL Code
- Paar neue Beispiel-Programme (für S7Projektfunktionen und VarTab)

Was ist noch zu tun (sooo vieles...)
- AWLtoMC7 immer noch erst Rudimentär
- DBs auslesen (von PLC und S7Projekt)
- Vieles in den S7Projekt Funktionen (vor allem schreiben)
- Bausteinupload


Download auf meiner HP.


----------



## Jochen Kühner (1 November 2010)

*So...*

Ein paar kleinere Updates & Bugfixes.

Habe mal eine Dokumentation zu den BausteinStatus Telegrammen hinzugefügt, doch bisher nur für das 0x13 Telegramm. Das 0x01 telegramm habe Ich noch nicht ganz fertig entschlüsselt, da Ich die CPU dazu im Moment nicht habe!

Die Dokumentation des Antworttelegrammes auf die Anfrage kommt noch!


----------



## Loep (15 Februar 2011)

Hallo Jochen,

irgendwie verstehe ich noch nicht wie ich deine LibNodaveConnectionLibrary verwenden kann. Mit der libNoDave bekomme ich eine Verbindung zur S7 und kann auch Werte auslesen, aber deine Lib scheint weitaus komfortabler zu sein.

Wie gebe ich an zu welcher IP/SPS ich mich verbinden möchte?
Ich kann auch die SimpleCSharpDemonstration nicht anwenden. Es kommt immer eine ArgumentOutOfRangeException in ConnectionEditor.cs:

```
InvalidArgument=Value mit dem Wert 0 ist für SelectedIndex ungültig.
Parametername: SelectedIndex
```
 
Danach kommen sicher noch weitere Fragen auf  Aber danke im Vorhinein!


----------



## Jochen Kühner (15 Februar 2011)

War noch ein Fehler drin, nun sollt's gehen...


----------



## Jochen Kühner (14 März 2011)

Neue Features:

- Support von Structs beim lesen und schreiben. (Mit Codeschnipseln von http://s7net.codeplex.com/). Habe aber auch noch String support in die Structs eingebaut!
- Speichern der ConnectionConfig direkt in Files (nicht nur in die Registry)
- PLCTag Editor
- Auswählen von PLCTags aus einem Step 7 Projekt.
- Bugfixes...


Beispielcode zum lesen einer Struct:

```
public struct TestStruct
        {
            public Int16 aa;
            public Int16 bb;
            public Int16 cc;
            public Int32 ee;
            public UInt16 ff;
            [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 10)] 
            public string test;
        }


        private void cmdReadStruct_Click(object sender, EventArgs e)
        {
            myConn = new PLCConnection("SimpleCSharpDemonstrationConnection");
            myConn.Connect();
            //PLCTagGeneric
            PLCTag<TestStruct> tst = new PLCTag<TestStruct>() {DatablockNumber = 97, ByteAddress = 0};
            myConn.ReadValue(tst);
            TestStruct read = tst.GenericValue;
        }
```

Beispielcode zur auswahl eines PLCTags aus einem Step7 Projekt

```
PLCTag tag = DotNetSiemensPLCToolBoxLibrary.Projectfiles.SelectProjectPart.SelectTAG("");
```


Bearbeiten eines Tag's im Editor:

```
PLCTag tag = new PLCTag();
DotNetSiemensPLCToolBoxLibrary.Communication.PLCTagEditor.ShowPLCTagEditor(tag);
```

var tmp =


----------



## Jochen Kühner (10 Mai 2011)

Gab seit dem letzten Post ein paar Updates:

 - Lesen der Attribute von Step7 Blöcken (war bisher nur für DB Zeilen implementiert)
 - Kombinieren von PLCTags beim lesen wenn möglich. 
 - S7L als Dateiendung unterstützt.
 - MLFB anzeige im Verbindungs-Config-Dialog
 - Bugfixes...


----------

