Sinamics S120 freie Telegramm(999) kopieren/im- exportieren

Pikador

Well-known member
Beiträge
223
Punkte Reaktionen
10
Zuviel Werbung?
->Hier kostenlos registrieren
Hallo,

ich habe ein Projekt mit 42 Achsen. Es gibt 12 CU's (320) an denen jeweils 2, 3 oder 4 Antriebe angeschlossen sind.
Ich habe für den ersten Antrieb den Freien Telegramm(999) parametriert und zwar zwei mal, jeweils für eine Richtung. Es sind in beide Richtungen 16 Wörter. Die eine Hälfte von den Telegramm ist direkt mit Parametern verschaltet und die andere mit DCC Bausteinen. Das Erstellen des Telegramms war ziemlich mühselig. Wenn ich mir jetzt vorstelle, dass ich das jetzt noch 39 Mal machen muss dann möchte ich am liebsten Heulen. Meine Frage ist: Gibt es eine Möglichkeit um die Telegramme zu kopieren und den restlichen Achsen zuzuweisen? Oder noch besser das man den Telegramm speichern kann und für andere Projekte benutzen kann, so wie die vorgefertigten Siemens Telegramme?
Die Hardware ist schon erstellt und alle Adressen eingestellt. Die Antriebe sind auch alle vorkonfiguriert. Deshalb den ganzen Antrieb oder Cu zu kopieren und einzufügen möchte ich nicht machen. Vor allem, weil es viele unterschiedliche Motoren sind.

Viele Grüße.
 

ChristophD

Well-known member
Beiträge
5.680
Punkte Reaktionen
1.433
Hallo,

eine solche Möglichkeit gibt es leider nicht.
Das einzige was Dir die Arbeit erleichtern könnte wäre ein Script.
Wenn Du die Parameter noch weißt die Du geändert hast für das Telegramm dann kannst Du diese per Script bei allen anderen Geräten/CU/Antrieben im Projekt ausführen.
Ansonsten wird Dir wohl der mühselige Weg alles noch 39mal zu machen nicht erspart bleiben.

Gruß
Christoph
 
OP
P

Pikador

Well-known member
Beiträge
223
Punkte Reaktionen
10
Zuviel Werbung?
->Hier kostenlos registrieren
Hallo,
danke für die Info. Das habe ich mir schon gedacht.
Gibt es zu Scripten in Sinamics eine Anleitung oder Beispiele?
Teile des Telegramms gehen direkt auf DCC. Geht das auch?

Viele Grüße
Pikador
 
Zuletzt bearbeitet:

zako

Well-known member
Beiträge
1.650
Punkte Reaktionen
465
Ich würde es über Scripts machen.
Die kann man auch ganz einfach selbst erstellen. Man kann z.B. in der Expertenliste die Parameter markieren, die man verschalten will und dann rechte Maustaste "Speichern als ausführbares Script am Quellobjekt"
Bei den Grundverschaltungen sieht es dann z.B. so aus:
Parameters(1155, 0) = "2050:7:63" 'CI: Drehzahlregler Drehzahlsollwert 1
Zu einem DCC- Plan entsprechend so:
Parent.Parent.Units("DCC_1").Symbols("p21600") = "2060:14:63" 'TEST nach DCC
Am Ende des Scripts würde ich noch folgenden Befehl setzen (bewirkt das gleiche wie "Bicos und Parameter zurücklesen" im DCC- Editor)
ReadBackDCCParameters()
Das Script muss nun in jeder Achse angelegt und ausgeführt werden. Es gibt noch die Möglichkeit das Script "weiter oben" im Projektbaum einzuhängen und durch entsprechende Logik würde dann auch ein Scriptaufruf reichen.(das habe ich aber auch noch nicht selbst gemacht, aber Script- Freaks können sich da austoben).
Ansonsten könnte man sich dann noch über den Projektgenerator Gedanken machen. Dann ersparst man sogar das Anlegen der Antriebe über STARTER und kann gleich die Steuerug incl. FB`s etc. selbst anlegen lassen (ist was für große Serienmaschinenbauer, die je nach Ausbau Achsen, Programmlogik, Steuerungen, ... weglassen oder hinzubauen wollen...).
 
OP
P

Pikador

Well-known member
Beiträge
223
Punkte Reaktionen
10
Hallo,

Danke für die Hilfe. Ich werde mit Scripten versuchen. Es ist so, dass ich oft ähnliche Anlagen Programmieren muss. Es wird wirklich helfen wenn man bestimmte Aufgaben(Click-Orgien) automatisieren kann.

Gibt es vielleicht Beispiele zu etwas komplexeren Scripts von Siemens?

Viele Grüße
 
OP
P

Pikador

Well-known member
Beiträge
223
Punkte Reaktionen
10
Zuviel Werbung?
->Hier kostenlos registrieren
Hallo,
mit den Scripten funktioniert wunderbar. Wenn ich aber DCC Parameter vorbelege, dann muss es so stehen:
Parent.Parent.Units("DCC_2").Symbols("p21604") = "2050:8:2"
und nicht:
Parent.Parent.Units("DCC_2").Symbols("p21604") = "2050:8:63"

Was ist der Unterschied zwischen 2 und 63?

Viele Grüße
Pikador
 

ChristophD

Well-known member
Beiträge
5.680
Punkte Reaktionen
1.433
Hallo,

2 und 63 sind die Objektadressen des Objektes im STARTER.
Wenn Du kein Objekt mit der Adresse 63 hast kann es logischweise nicht funktionieren.

Gruß
Christoph
 
Oben