-> Hier kostenlos registrieren
Servus,
Ich habe mir mit Visual Studio 2019 ein kleines NetFramework 4.8 Projekt erstellt.
Aufgabe von diesem kleinen Tool ist sich mit einer S7-400 zu verbinden und auf ein zyklisches Trigger Signal (ca. alle 65sek.) zu warten und damit dann
einige File I/O Aktionen durchzuführen. Kopieren und verschieben von Dateien und Ordner teils Lokal aber auch über das Netzwerk.
Ich benutze für die Verbindung mit der S7 die Sharp7.dll. Das ganze habe ich mit NetToPLCsim getestet. Das Trigger Signal und diverse Variablen
habe ich mir im Simulator gesetzt und das funktioniert auch alles so wie es soll. Die Winforms zeigt mir alles an was sie anzeigen soll.
Und alle Dateien so wie Ordner werden einwandfrei von der jeweiligen Quelle in das Zielverzeichnis kopiert oder verschoben.
Starte ich diese Tool auf dem eigentlichen PC mit der echten CPU funktioniert es nicht. Dazu noch ein paar Infos. NetFramework 4.8 ist installiert.
Vorlage und Basis für mein Projekt beruht auf: http://snap7.sourceforge.net/sharp7.html
Bei meinen ersten Versuchen hatte ich noch nicht den Backgroundworker. Da hat das kopieren zwar funktioniert
aber die Software hat sich wegen dem kopieren aufgehängt und war nicht mehr bedienbar bis das kopieren fertig war.
Mit dem Backgroundworker ist das Tool stabiler geworden im Ablauf aber in Verbindung einer echten SPS passiert fast Garnichts.
Ich habe so gar eine Progress Bar eingebaut um das kopieren zu visualisieren und im Simulator passt die Anzeige auch zum kopieren der Dateien.
In Verbindung mit der echten SPS sieht es so aus als wenn das kopieren erst Minuten nach dem Trigger Signal gestartet wird.
In der Progress Bar erscheint dann Minuten später dann mal die 0% und das wars. Mit dem Simulator ist das in einigen Sek. auf 100%.
Meine einzige Vermutung die ich äußern kann, ist das in dem Code noch ein gravierender Fehler ist. Da aber mit dem Simulator alles "funktioniert"
weiß ich nicht wo ich suchen soll. Einige von Euch haben bestimmt sehr viel Erfahrung damit und es wäre super wenn mir einer von Euch helfen könnte.
Ich werde ein paar Dateien mit Anhängen weil der ganze Code reinstellen viel zu lang wäre.
Ich hoffe jemand von Euch entdeckt etwas. Wäre schade wenn meine Arbeit umsonst war.
Grüße Tommylik
Ich habe mir mit Visual Studio 2019 ein kleines NetFramework 4.8 Projekt erstellt.
Aufgabe von diesem kleinen Tool ist sich mit einer S7-400 zu verbinden und auf ein zyklisches Trigger Signal (ca. alle 65sek.) zu warten und damit dann
einige File I/O Aktionen durchzuführen. Kopieren und verschieben von Dateien und Ordner teils Lokal aber auch über das Netzwerk.
Ich benutze für die Verbindung mit der S7 die Sharp7.dll. Das ganze habe ich mit NetToPLCsim getestet. Das Trigger Signal und diverse Variablen
habe ich mir im Simulator gesetzt und das funktioniert auch alles so wie es soll. Die Winforms zeigt mir alles an was sie anzeigen soll.
Und alle Dateien so wie Ordner werden einwandfrei von der jeweiligen Quelle in das Zielverzeichnis kopiert oder verschoben.
Starte ich diese Tool auf dem eigentlichen PC mit der echten CPU funktioniert es nicht. Dazu noch ein paar Infos. NetFramework 4.8 ist installiert.
Vorlage und Basis für mein Projekt beruht auf: http://snap7.sourceforge.net/sharp7.html
Bei meinen ersten Versuchen hatte ich noch nicht den Backgroundworker. Da hat das kopieren zwar funktioniert
aber die Software hat sich wegen dem kopieren aufgehängt und war nicht mehr bedienbar bis das kopieren fertig war.
Mit dem Backgroundworker ist das Tool stabiler geworden im Ablauf aber in Verbindung einer echten SPS passiert fast Garnichts.
Ich habe so gar eine Progress Bar eingebaut um das kopieren zu visualisieren und im Simulator passt die Anzeige auch zum kopieren der Dateien.
In Verbindung mit der echten SPS sieht es so aus als wenn das kopieren erst Minuten nach dem Trigger Signal gestartet wird.
In der Progress Bar erscheint dann Minuten später dann mal die 0% und das wars. Mit dem Simulator ist das in einigen Sek. auf 100%.
Meine einzige Vermutung die ich äußern kann, ist das in dem Code noch ein gravierender Fehler ist. Da aber mit dem Simulator alles "funktioniert"
weiß ich nicht wo ich suchen soll. Einige von Euch haben bestimmt sehr viel Erfahrung damit und es wäre super wenn mir einer von Euch helfen könnte.
Ich werde ein paar Dateien mit Anhängen weil der ganze Code reinstellen viel zu lang wäre.
Ich hoffe jemand von Euch entdeckt etwas. Wäre schade wenn meine Arbeit umsonst war.
Grüße Tommylik