# WPFToolBox für Siemens PLCs



## Jochen Kühner (14 Januar 2011)

Hallo, Ich hab meine S7ProjectToolBox mal überarbeitet. (http://www.sps-forum.de/showthread.php?t=40921)

Heisst nun "WPF ToolBox for Siemens PLCs", da es jetzt ein WPF Programm ist, und nicht nur Step7 sondern auch Step5 Projekte unterstützt werden.

Features:
 - WPF Oberfläche mit AvalonDock
 - Anschauen von OnlineBlocks
 - Step5 Projekt Support (s5d)
 - Step7 Projekt Support
 - Syntax Highlighting
 - Folding von Klammerausdrücken

Download immer hier im ersten Post!

Quellcode ist unter siemensplctoolboxlib.codeplex.com in der Lib. enthalten.


----------



## Jochen Kühner (14 Januar 2011)

*Updates*

Hab das lesen von S5 Files nochmal überarbeitet. 

Nun können auch in S5D Files möglich noch vorhandene aber gelöschte Bausteine betrachtet werden!


----------



## Rainer Hönle (14 Januar 2011)

Jochen Kühner schrieb:


> Nun können auch in S5D Files möglich noch vorhandene aber gelöschte Bausteine betrachtet werden!


Diese Funktion ist etwas kritisch. Der belegte Platz kann teilweise wiederverwendet worden sein. Dann kommt Müll raus oder es kracht.


----------



## rostiger Nagel (14 Januar 2011)

Hallo Jochen,
ich habe mir dein Tool noch nicht runtergeladen. Aber mal eine Frage,
besteht die Möglichkeit das so zu gestalten, das damit *nur* eine 
Art Bausteinstatus zur Diagnose für Serviceleute oder Kunden möglich ist?
Wir setzen oft IPC mit WinAC RTX ein, da wäre ein einfaches Diagnose-
Werkzeug nicht schlecht. Das Tool soll aber keine Änderungen oder das
Deaktivieren des Know How Schutz ermöglichen. Einfach nur "Guck und
Druck". 

Gruß Helmut


----------



## Jochen Kühner (14 Januar 2011)

Rainer Hönle schrieb:


> Diese Funktion ist etwas kritisch. Der belegte Platz kann teilweise wiederverwendet worden sein. Dann kommt Müll raus oder es kracht.



Ist ja auch nur dafür da, wenn ich was gelöscht habe, und mit viel Glück kann Ich mirs viel. nochmal ansehen. Da Ich nicht in die Bausteine schreibe kann ja nichts passieren!


----------



## Jochen Kühner (14 Januar 2011)

Helmut_von_der_Reparatur schrieb:


> Hallo Jochen,
> ich habe mir dein Tool noch nicht runtergeladen. Aber mal eine Frage,
> besteht die Möglichkeit das so zu gestalten, das damit *nur* eine
> Art Bausteinstatus zur Diagnose für Serviceleute oder Kunden möglich ist?
> ...



Also was stellst du dir denn da genau vor?

Nur das Projekt öffnen und betrachten (ist im Moment möglich), oder auch Online beobachten (wird noch kommen)?

Drucken, kann sicherlich eingebaut werden!

Im Moment ist noch das Problem, das Ich Calls noch nicht schön darstelle, da mir noch eine gescheite Strategie zum rückübersetzen des Calls aus den AWL Anweisungen fehlt (aber arbeite dran).


----------



## Jochen Kühner (14 Januar 2011)

@Helmut

Hab dir noch ne rudimentäre Druckfunktion eingebaut!


----------



## rostiger Nagel (14 Januar 2011)

Hallo Jochen,
Online Status war meine Vorstellung, viele Kunden haben kein Step 7 und
wollen es auch bestimmt nicht kaufen. In der Holzbearbeitung ist der Beckhoff
ganz stark und unter Twincat geht das, für lau. Das setzen die Holzverarbeiter
dann voraus. Außerdem ist Sepp7 auf einen einfachen IPC ohne großer
Festplatte einfach zu fett. 

Einfach nur Bits und Werte schauen wäre schon nicht schlecht.


----------



## Jochen Kühner (14 Januar 2011)

*Jo...*

Also Bausteinstatus geht in meinem anderen WPF-Beispiel-Programm welches meiner Library beiliegt.

Die Funktion soll aber auch noch in dieses Programm wandern, da Ich die ganzen anderen Beispiele sterben lassen will.

Genauso wie Steuern von Variablen, hab ja auch ein VarTab Beispiel, aber eben noch nicht in diesem Tool.

Dieses Funktionalität wird aber auch noch in das Tool wandern.

Nur KOP und FUP werde Ich wohl in das Tool nicht einbauen, da dies wohl zu viel Zeit erfordern würde dies zu realisieren. (Das wäre denke Ich schon etwas komplexer, den AWL Code zu Analysieren, und sich daraus die KOP bzw. FUP Elemente zu erzeugen!)


----------



## Jochen Kühner (18 Januar 2011)

Little Updates:
 - Step5 Symbolik File support (.seq)
 - UCs werden nun in Calls Konvertiert (bei FCs)
 - FC/FB Editor erneuert.


----------



## Jochen Kühner (3 Februar 2011)

Neues:

- Online Status von Step 7 Bausteinen.
- SZL Abfrage an S7 CPUs
- Step5 Funktionen (FB,PB,SB,..) Kommentarsupport
- Symbolik in Step5 Projekten wird nun auch in Bausteinen angewendet.


----------



## rostiger Nagel (3 Februar 2011)

Jochen Kühner schrieb:


> - Online Status von Step 7 Bausteinen.


 
Das hört sich ja gut an Jochen, könntest du mal ein paar Screenshots 
hochladen wie das aussieht. 
Geht das auch auf einen IPC wo die SPS als RTX läuft?


----------



## Jochen Kühner (3 Februar 2011)

hier mal ein Screenshot.

Was noch im Moment noch wichtiges fehlt ist das Umwandeln von FB aufrufen in Calls. Bei FCs hab Ichs ja schon realisiert, aber bei FBs ists noch ein bischen komplizierter, daher wird das noch dauern...

Und da dies noch nicht fertig ist, habe Ich auch beim Online Status das Abfragen von FC/FB Parametern noch nicht implementiert!


----------



## Jochen Kühner (11 Februar 2011)

- Support für AWL Quellen (auch in gezippten Projekten)
- Paar Bugfixes...


----------



## Ralle (11 Februar 2011)

Jürgen, erklär mal für uns doofe, was man tun muß, um dein Programm unter XP laufen zu lassen.


----------



## Jochen Kühner (11 Februar 2011)

Ralle schrieb:


> Jürgen


 ???

Hast du das .Net Framework 4.0 auf deinem Rechner?


----------



## Ralle (11 Februar 2011)

Jochen Kühner schrieb:


> ???
> 
> Hast du das .Net Framework 4.0 auf deinem Rechner?



Ah, ich habs schon gesehen, danke, muß ich mir jetzt die VM noch mehr zumüllen?
Das ist genau das, was ich an .Net so hasse, Mist!


----------



## Jochen Kühner (11 Februar 2011)

Ralle schrieb:


> Ah, ich habs schon gesehen, danke, muß ich mir jetzt die VM noch mehr zumüllen?
> Das ist genau das, was ich an .Net so hasse, Mist!



Die neuen .Net Frameworks braucht man ja eh immer für mehr Software. SEW Motion Studio oder Sick Sopas laufen ja auch nicht mehr ohne. Und wenn man das TIA benutzt braucht mal glaub auch schon .NET 3.5!


----------



## Ralle (11 Februar 2011)

Jochen Kühner schrieb:


> Die neuen .Net Frameworks braucht man ja eh immer für mehr Software. SEW Motion Studio oder Sick Sopas laufen ja auch nicht mehr ohne. Und wenn man das TIA benutzt braucht mal glaub auch schon .NET 3.5!



Ja das ist leider so, nicht zu ändern schätze ich. Habs installiert, vorher einen Snapshot der VM gemacht. Immerhin gabs bei mit bisher mit den Frameworks noch nie wirklich Probleme, anders als mit dem Step7-Manager.

Ich hab bei deinem Programm erst einmal nach den Programmordnern gesucht, bis ich die eingeklappt am rechten Bildschirmrand fand.


----------



## Jochen Kühner (11 Februar 2011)

Ralle schrieb:


> Ich hab bei deinem Programm erst einmal nach den Programmordnern gesucht, bis ich die eingeklappt am rechten Bildschirmrand fand.



Ja da hab Ich mir schon überlegt ob Ich die Standardmäßig einblende oder einklappe.... Bin mir da aber noch nicht schlüssig. Wenn man einen breiten Schirm hat, dann wäre ausklappen wohl günstiger. (Wobei man könnte ja auch die letzte Einstellung speichern)


----------



## Jochen Kühner (18 Februar 2011)

Quellen erzeugen.

Nun kann man durch Rechtsklick auf einen Baustein in der Bausteinliste eine AWL Quelle davon erzeugen. Dadurch kann man sich Bausteinen in gelöschen Projekten wiederherstellen. (im Moment nur FCs, OBs, FBs) (DBs folgen)!

Download wie immer im ersten Post!


----------



## Jochen Kühner (19 Februar 2011)

Man kann nun direkt aus der Blockliste Bausteine in den Explorer ziehen (Drag/Drop). Es wird dann von dem Baustein automatisch eine AWL-Quelle in dem Verzeichnis erzeugt!

Achso, nun gehen auch AWL Quellen von DBs


----------



## 4nD1 (22 März 2011)

Ich hätte ein paar Fragen.

Ist der Download, das Programm komplett kostenlos?
Ist es auchmöglich S7-1200 und S7-200 projekte anzuschauen?


----------



## rostiger Nagel (22 März 2011)

Jochen Kühner schrieb:


> Features:
> ...
> - Folding von Klammerausdrücken
> ...


 
wenn ich so etwas sehe, frage ich mich warum kommt Siemens nicht 
selber auf so nützliche Features.


----------



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

4nD1 schrieb:


> Ich hätte ein paar Fragen.
> 
> Ist der Download, das Programm komplett kostenlos?
> Ist es auchmöglich S7-1200 und S7-200 projekte anzuschauen?



Jo, ist kostenlos, kannst sogar den Quellcode laden. 200er und 1200er support gibts nich, die 200er Files hab ich schon untersucht, bin aber noch nicht hinter das Dateiformat gekommen, 1200er support hab ich vor, weiss aber auch noch nichts übers dateiformat!


----------



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

Helmut_von_der_Reparatur schrieb:


> wenn ich so etwas sehe, frage ich mich warum kommt Siemens nicht
> selber auf so nützliche Features.



Vielleicht kommts ja in V11


----------



## 4nD1 (22 März 2011)

Jochen Kühner schrieb:


> Jo, ist kostenlos, kannst sogar den Quellcode laden. 200er und 1200er support gibts nich, die 200er Files hab ich schon untersucht, bin aber noch nicht hinter das Dateiformat gekommen, 1200er support hab ich vor, weiss aber auch noch nichts übers dateiformat!


 
Das ist ja super.
Schade das die 200 nicht geht. Ich hoffe du kommst noch hinter das Format der 1200. 

Kann man eigentlich die Sprache umstellen? Der Projektbaum ist ja Deutsch aber die Headline ist komplett in Englisch.

Wie sieht es mit den Verbindungstypen aus? Welche adapter werden unterstützt oder nicht?


----------



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

4nD1 schrieb:


> Das ist ja super.
> Schade das die 200 nicht geht. Ich hoffe du kommst noch hinter das Format der 1200.


Jo Ich auch, aber dazu muss erst mal Zeit da sein!



4nD1 schrieb:


> Kann man eigentlich die Sprache umstellen? Der Projektbaum ist ja Deutsch aber die Headline ist komplett in Englisch.


Nö bis jetzt nicht!



4nD1 schrieb:


> Wie sieht es mit den Verbindungstypen aus? Welche adapter werden unterstützt oder nicht?


Alles was LibNoDave auch unterstützt (da dies ja verwendet wird). Das sind: TCP/IP, S7Online, Serielle Adapter, Netlink lite und Pro.
Im gegensatz zu libnodave wird bei S7Online, TCPIP und den NetLink Adaptern Routing unterstützt! (Hab leider keinen Seriellen, sonst würd Ichs da auch einbauen!)


----------



## Front_Line (22 März 2011)

Sie können das Programm zum Schutz Einheiten entfernen (Know How Protection)?

You can add the program removal protection units (Know How Protection)?


----------



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

Front_Line schrieb:


> Sie können das Programm zum Schutz Einheiten entfernen (Know How Protection)?
> 
> You can add the program removal protection units (Know How Protection)?



Häää?? Ich versteh die Frage nicht ganz! Wenn's darum geht ob man damit KnowHowProtect entfernen kann, dann muss Ich sagen im Moment nicht, das geht aber mit meinem anderen Tool: http://sps-forum.de/showthread.php?t=40921


----------



## Corosop15 (22 März 2011)

Jochen, genau das war die Frage, ob Dein Tool auch den Know-How-Schutz entfernen kann.


----------



## bike (22 März 2011)

Corosop15 schrieb:


> Jochen, genau das war die Frage, ob Dein Tool auch den Know-How-Schutz entfernen kann.



Das habe ich verstanden, doch warum fragt jemand aus Ausland nur danach?
Es hat doch seinen echten Grund wenn ein PWD gesetzt wird, würde ich sagen.


bike


----------



## 4nD1 (23 März 2011)

Jochen Kühner schrieb:


> Alles was LibNoDave auch unterstützt (da dies ja verwendet wird). Das sind: TCP/IP, S7Online, Serielle Adapter, Netlink lite und Pro.
> Im gegensatz zu libnodave wird bei S7Online, TCPIP und den NetLink Adaptern Routing unterstützt! (Hab leider keinen Seriellen, sonst würd Ichs da auch einbauen!)


 
Das heißt das ich zum Beispiel Netlinks von verschieden Firmen benutzen kann? Und auch die CP5512?


----------



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

4nD1 schrieb:


> Das heißt das ich zum Beispiel Netlinks von verschieden Firmen benutzen kann? Und auch die CP5512?



Netlinks ja, CP5512 nur über S7OnlinX, d.h. Step7 oder Flexible (oder glaub Simatic Net) muss installiert sein!


----------



## eloboy (23 März 2011)

*performance*

Hi,

gibt es eigentlich performance Unterschiede zwischen 
S7OnlinX  und Zugriff über TCP?
(Softsps - Programm läuft lokal.)


----------



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

eloboy schrieb:


> Hi,
> 
> gibt es eigentlich performance Unterschiede zwischen
> S7OnlinX  und Zugriff über TCP?
> (Softsps - Programm läuft lokal.)



Puhh, das kann ich dir nicht sagen... Aber gefühlt finde Ich den S7OnlinX Zugriff langsamer!


----------



## 4nD1 (23 März 2011)

Jochen Kühner schrieb:


> Netlinks ja, CP5512 nur über S7OnlinX, d.h. Step7 oder Flexible (oder glaub Simatic Net) muss installiert sein!


 
Wie sieht es denn mit USB-Adapter von den verschieden Herstellern aus? 

Sry wenn ich soviel frage^^


----------



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

4nD1 schrieb:


> Wie sieht es denn mit USB-Adapter von den verschieden Herstellern aus?
> 
> Sry wenn ich soviel frage^^



Sollten gehen. Je nach Adapter entweder über Seriell oder S7OnlinX


----------



## 4nD1 (30 März 2011)

Hallo Jochen

Wäre es möglich das du so ein Tool auch für Codeys bassierte steuerung schreiben könntest? Wie Beckhoff oder Wago Steuerung.
Und vllt für Kieback und Peter Steuerungen auch, wenn es gehen würde. *grins*


----------



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

4nD1 schrieb:


> Hallo Jochen
> 
> Wäre es möglich das du so ein Tool auch für Codeys bassierte steuerung schreiben könntest? Wie Beckhoff oder Wago Steuerung.
> Und vllt für Kieback und Peter Steuerungen auch, wenn es gehen würde. *grins*



Nö denke eher nicht! Da Ich keine der genannten Steurungen habe, und wir diese auch nicht einsetzen, wird das wohl nicht für mich möglich sein!


----------



## 4nD1 (31 März 2011)

Okay danke für die Info.

Kleine Frage noch. Mit dem Programm ist es nur möglich zu beobachten? Oder kann man dort auch Programmänderungen durchführen?


----------



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

Im Moment nur lesen und beobachten! Zum schreiben von Bausteinen, muss Ich erst meine AWLtoMC7 Funktionen fertigstellen, da kann Ich aber noch nicht absehen, wann das soweit sein wird!


----------



## 4nD1 (31 März 2011)

Okay gut zu wissen, wichtig ist mir vorerst nur das am Beobachten kann. Programme ändern wir eh in Step7


----------



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

4nD1 schrieb:


> Okay gut zu wissen, wichtig ist mir vorerst nur das am Beobachten kann. Programme ändern wir eh in Step7



Ich auch...
Wenn etwas nicht funzt, einfach ne Nachricht schreiben, oder selbst fixen, Sourcecode ist ja verfügbar! ;-)


----------



## Jochen Kühner (22 Juni 2011)

*Rferenzdaten von S5 Programmen.*

Es können nun Referenzdaten von S5 Programmen angeschaut werden (eine Verlinkung, mit Sprung zu der Stelle kommt noch!)

Die Daten werden nicht aus den Step5 Inifiles gelesen, sondern frisch aus der S5D Datei generiert!


----------



## Jochen Kühner (23 Juni 2011)

Achso, nochwas....

Da Ich für die Referenzdaten nun immer die ganzen Programmbausteine einer S5D Datei einlese, kann es sein das es mit manchen noch zu Programmcrashes kommt, wenn jemand so eine hat, wäre es nett wenn man mir die zusenden könnte...


----------



## Jochen Kühner (24 Juni 2011)

Nochmals etwas Arbeit an den S5 Referenzdaten:

- Sprung zum Baustein nun möglich. (Markierung der Zeile im Netzwerk)
- Symbole zu den Referenzdaten werden angezeigt.
- Fehler im S5toAWL Parser behoben (Bei BLD 130 wurden keine Sprungmarken angezeigt!)
- Weitere Bugfixes beim S5D einlesen!

Hab's jetzt mit keiner S5D Datei von mir mehr zum absturz gebracht, aber falls es noch eine gibt, her damit!


----------



## D-DNRN (10 November 2011)

Export der Tags nach WinCC (v7 /nicht Flex)  

Gibt's irgendwie die Möglichkeit Struktuen/UDT's in den DB's auch entsprechend als Stukturen in WinCC anzulegen?
Wenn die Tags alle einzeln sind, lassen die sich so schlecht verwalten.

Alternative wäre für mich auch ein Export der Strukturen (wichtig halt mit DB Adressen) als Excel-File.
Dann könnte ich die Daten einfach in das Siemens Configuration Tool (in Excel) kopieren und hätte alles aktuell.

Sowohl Funktion A als auch B würden mir extrem viel Arbeit abnehmen! 

Nebenbei:
Die aktuelle Version des Tools erzeugt auf meinem WinXP-SP3 VirtualMasch. extrem hohe Prozessorlast und das Tool ist bei jedem Klick nur mit 2-5 Sekunden Verzögerung bedienbar!
Eine ältere Version hatte das nicht.


----------



## Jochen Kühner (10 November 2011)

Ich schau mal was ich mit den Strukts machen kann, zum anderen Problem hab Ich im Moment keine Idee (ist bei mir nicht so!)


----------



## D-DNRN (10 November 2011)

Huiii...
Wenn das klappt wäre es der Hammer.

Mit den Strukturen in WinCC ist eigentlich eine super Geschichte, nur das anlegen und ändern tut halt bei vielen Vars ganz schön weh in den Fingern.

Kleiner Wunsch nebenbei: (Fürs nächste Schlechtwetterwochenende .. )  
Toll wäre noch wenn man sich die Gruppennamen die aus den DB's erzeugt werden irgendwie anpassen könnte, haben bei mir immer eine Funktionsbeschreibung.
Der DB Name (Symbolisch) würde natürlich auch gehen, dann wäre es auch durchgängig im gesamten Ablauf. :wink:


Also im Ernst: Wenn das klappt wäre es mir ein paar Bier bei nächster Gelegenheit wert.


----------



## MECHA07 (29 Januar 2012)

Hat mittlerweile eigentlich jemand die 64- bit libnodave zum Laufen gebracht?
Habe mir hier die aktuelle Version geladen, aber bekomme das mit libnodave einfach nicht hin. --> http://siemensplctoolboxlib.codeplex.com/SourceControl/list/changesets
Ich möchte über ein VB Projekt Accontrol anwählen, bekomme aber nur einen Fehler wenn ich das VB Programm debugge. 
Wäre super, wenn mir jemand helfen könnte


----------



## bike (29 Januar 2012)

Ja gibt es 64 Bit NoDave?
So weit ich weiß, sind die Quellen dabei, die musst du dann für dein System kompilieren.
Wenn dann Fehler kommen, dann behebe diese. 
Wo liegt dein Problem?


bike


----------



## Jochen Kühner (29 Januar 2012)

MECHA07 schrieb:


> Hat mittlerweile eigentlich jemand die 64- bit libnodave zum Laufen gebracht?
> Habe mir hier die aktuelle Version geladen, aber bekomme das mit libnodave einfach nicht hin. --> http://siemensplctoolboxlib.codeplex.com/SourceControl/list/changesets
> Ich möchte über ein VB Projekt Accontrol anwählen, bekomme aber nur einen Fehler wenn ich das VB Programm debugge.
> Wäre super, wenn mir jemand helfen könnte



Compilieren lässt sich die nodave als 64 Bit aber laufen tuts nicht. Wenn das handle welches durch den netwerkstack zurückgegeben wird verwendet wird um daten zu senden oder zu empfangen, dann gibts nen fehler das das handle ungültig ist. Weiss aber noch nicht woran das liegt...


----------



## MECHA07 (30 Januar 2012)

Achso, schade.
Bekomme das nämlich leider nicht auf meinem System zum Laufen.
Brauche das für die Schule (mache meinen Techniker) und wir benutzen VB zum Programmieren... bin noch absoluter Anfänger.

LG

Christian


----------



## Jochen Kühner (31 Januar 2012)

MECHA07 schrieb:


> Achso, schade.
> Bekomme das nämlich leider nicht auf meinem System zum Laufen.
> Brauche das für die Schule (mache meinen Techniker) und wir benutzen VB zum Programmieren... bin noch absoluter Anfänger.
> 
> ...



Compiliers einfach mit Zielplatform x86 und verwende die 32 Bit Lib... Bin bei der 64 Bit bisher nicht weiter...


----------



## schorsch46 (11 März 2015)

Hallo Jochen,
gibt es für WPFToolbox eine Bedienungsanleitung?
Ich würde gern aus dem AG (S5 100U CPU 103) Daten auslesen und diese mit vb.net visualisieren.
Danke
schorsch46


----------



## TommyG (19 März 2015)

Hallo Jochen,

LG von Niederrhein. Ich habe letztens ein S5 Projekt gehabt, bei dem 'eigentlich nur ein elektrischer Fehler sein kann'. Final hat die S5 ein Signal nicht gegeben und dieses für weitere Zwechek noch zur Verriegelung gebraucht. Mit Deinem Tool hätte ich zumindest schon mal in die Logik gucken können. So musste ein Kollege mit echtem Stoneage PG nochmals vor Ort..

Gruß,
weiter viel Erfolg
und danke für Deinen Einsatz,

Tom


----------

