SINAMICS S120 Parameter für alle ändern

Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,

1.) ja das Beispiel listet bei Eingabe von 1 alle Projekte auf die der Starter in seiner Projektdatenbank hat
2.) objDevice.Upload() ruft einfach eine Funktionauf die bereits existiert und den Upload des Gerätes macht, diese Funktion wir vom Starter zur Verfügung gestellt.
Kommt ne Fehlermeldung wenn du das Script aufrufst? Startest du das Script intern oder extern?

Gruß
Christoph
 
Vorweg es geht mir darum rein über ein externes Skript zu arbeiten.
Thema Datensicherung

Add 1.) Darum versuch ich gerade herauszufinden, wie ich gezielt ein Projekt "öffne".
Ich habe ja eigentlich immer den selben Ordner (z.B. C:\Temp\) wo das S7-Projekt abgelegt ist und will dieses per Skript öffnen und den Onlinestand hochladen um sicher zu gehen, dass meine
offline-Version aktuell ist.
Im nächsten Schritt werde ich eine Lösung anstreben, wo ich auf mehrere PC´s zugreife.

Add 2.) Fehlermeldung "nein", soweit bin ich noch nicht. Und ja es soll extern gestartet werden.
 
Servus

Vielen Dank

Ich arbeite mich da jetzt Zeile für Zeile durch .... sch. 10h Regelung ;-)

Set g_oSimotion = CreateObject("Simotion.Application") ... ist offensichtlich per Definition so?
call g_oSimotion.Workbench.WBProject.Open("TestScript") ... lt. Beschreibung sollte hier der Pfad stehen?? Z.B. "C\TMP\TEst.s7p" ?
Set g_oProject = g_oSimotion.Projects("TestScript") ... schon wieder?? "C\TMP\TEst.s7p"

Wird mit dem g_oProject.Online = True auf alle verfügbaren Sinamics online gegangen, oder nur auf jene, wo im Projekt im Zielobjekte auswählen diese angewählt sind?!?

Prinzipiell hätte ich das so vorausgesetzt und ist in deinem Beispiel auch so angeführt, ABER ich frag lieber gleich nach...
Für Save und Close brauche ich ("TestScript") nicht mehr?

AUF JEDEN FALL VIELEN DANK !!!!!!!! BIST DER HAMMER :TOOL:
 
Hi,

1.) Ja das ist per definition so damit wird die Application gestartet damit auch alles nachfolgende funktioniert
2.) wenn das Project bereits im Starter bekannt ist muss der Pfad nicht angegeben werden, erleichtert die Sache ganz ungemein.
mit der ersten Anweisung wird das Projekt jeöffnet mit dem folgenden set einer Variable zugewiesen damit später über die Variable auf die Script Objekt
und Befelle zugegriffen werden kann, sonst wird das wieder zu kompliziert vom aufruf her

Es wird immer auf die Geräte online gegangen die unter Zielgeräte dafür aktiviert sind, aonsten kann man auch direkt auf die Geräte gehen indem man nicht über das Projekt online geht sondern über die Geräte selber.

Für Save und Close braucht es keine Pfad oder projektnamen da diese auf dem aktuell geöffneten Projekt arbeiten.

Gruß
Christoph
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Christoph

Also ich muss annehmen, dass das Projekt dem Starter nicht bekannt ist.
Ich hab deine Version mal ausprobiert, bzw. wahrscheinlich zwecks "TestScript" falsch geändert, worauf eben irgendein Projekt geöffnet worden ist, ich vermute das zuletzt geöffnete.

1.) Ebenso weiß ich die Einstellung zwecks Zielgeräte nicht ... gibt es einen Befehl um dezitiert auf allen online gehen zu können?

2.)Leider kenne ich auch die Gerätenamen nicht, muss ja schon froh sein zu wissen, wo ein Sinamics vorhanden ist ;)
Ist es möglich, sofern Punkt 1 nicht funktioniert über einen Workaround die Gerätenamen der Sinamics auszulesen um eben dann wie von dir erwähnt gezielt online gehen zu können?
 
Hi,

naja du solltest schon ein Projekt angeben das exisitiert sonst nützt doch das ganze gar nix. "TestScript" ist halt bei mir der Name des Projektes welches ich für das Beispiel verwendet habe.
Das Script arbeitet nach folgender Theorie:
Ein Projekt existiert in dem alle verwendeten Geräte der Anlage vorhanden sind, es wird online gegangen und ei Upload durchgeführt.

Hier die Erweiterung das Zwangsweise mit jedem SINAMICS Gerät im Projekt online gegangen wird, egal was da in der Zielgeräteauswahl steht.
Anhang anzeigen ExternalScript_Test_2b.txt

Gruß
Christoph
 
Zuletzt bearbeitet:
Hi Christoph,

yes, thats it.

Lästig wie immer noch folgendes.
Arbeitest du auch mit Exeptions in vbs?

Ich habe den Effekt, dass ich (warum hab ich noch nicht herausgefunden, ist wohl ein Siemens Feature) teilweise 2 mal versuchen mus auf einem Umrichter online zu kommen.
Sprich ich müsste den Fehler bei g_oProject.Online abfangen und noch einmal probieren.
Thema: On Error Resume...

mfg
UweT
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,

nein in der Regel klappt es bei mir immer beim ersten Anlauf mit dem Online gehen.
Was kommt den dann genau für eine Fehlerausschrift wenn es nicht geht?

Man kann das Script auch erweitern das man den Online zustand abfragt und solange ne schleife dreht bis der Antrieb Online ist.

Gruß
Christoph
 
Dieser

Fehler: SOM_ONLINE_Failed
Code: 80040028

Das System ist allerding aktiv.... vielleicht gibt es deshalb ein Thema?!?


online_error.jpg
 
Hallo Christoph

Vorab, danke noch einmal für deine Unterstützung. :TOOL:

Also klappt schon ganz gut.
Das Thema mit dem Online gehen habe ich mittels Error-Abfrage abgefangen.
Beim 2ten mal komm ich eigentlich immer online, und wenn nicht, dann breche ich mit einem Error-Log ab.

Kann ich auch simple nach einem call objDevice.Upload() eine Error Auswertung machen, oder gibt es da noch etwas zu beachten?
Sprich ich will überprüfen, ob der upload erfolgreich war.
 
Zurück
Oben