TIA Know-how-Schutz schützt nicht

GrauesHaar

Level-2
Beiträge
93
Reaktionspunkte
63
Hallo zusammen,
in TIA V18 habe ich einen Baustein geschrieben, den ich schützen möchte.

Nun habe ich das Problem, dass Kollegen, die diesen Baustein von mir zugeschickt bekommen und ihn verwenden möchten, das Projekt manchmal nicht übersetzen können. TIA meckert dann rum und meldet "kann geschützten Baustein nicht übersetzten" oder "geschützten Bausteine müssen vor dem Übersetzen entsperrt werden" oder ähnlich. Leider habe ich von der Meldung keinen Screenshot. Die Meldung hat zur Folge, dass ich das Kennwort doch dem Kollegen übermitteln muss. Das macht den Schutz natürlich zunichte. (Auch der Kollege verwendet V18. Er sitzt in Fernost, dies auch als Erklärung für die Motivation des Schutzes.)
Gleiches Problem hatte ich auch mit V16, mit V19 habe ich es noch nicht probiert.

Möglicherweise mache ich etwas falsch, zum Beispiel bei der Übergabe meines Bausteins. Üblicherweise übergebe ich ein komplettes Projekt, in dem sich der Baustein befindet. So kann der Kollege gleich sehen, wie der Baustein aufgerufen wird.
Muss ich den Baustein ggf. "als Bibliothek" übergeben oder etwas anderes beachten? Ist das Problem in V19 behoben?
Hat jemand Erfahrung?

Vielen Dank für die Rückmeldungen!
 
Selbst in einem Team wäre das kein Problem, wenn durchgetestete unter Umständen sogar validierte, zertifizierte Bausteine der Entwicklung zugemacht werden, damit die Servicetechniker da im Feld nicht dran rumfummeln können...

Ich kann auch nicht alle Daten sehen, die mein Chef sieht.

Der Rest stimmt. Wir haben alle Bausteine in der Bib mit KnowHow-Schutz versehen und hatten beim Übersetzen nie Probleme.
 
Zuletzt bearbeitet:
Wenn bei einem Know-How geschützten Baustein eine kompilier Anforderung kommt, dann liegt das meist daran, dass der vorkompilierte Bausteine für einen anderen Typ PLC Familie kompiliert wurde. Hier wird nicht nur zwischen 1500 und 1200 unterschieden, sondern auch zwischen Software PLC (1505-1508) und Regulären PLCs 1510-1518 unterschieden. Will man den Baustein auch noch simulierbar machen, muss man vor dem setzen des Know-How Schutzes den Baustein mit aktivierten Simulationsunterstützung (aktivierbar unter r.M.k. root Projektbaum -> Eigenschaften -> Sicherheit -> Simulationsunterstützung haken setzen) kompiliert haben.
 
Wir haben alle Bausteine in der Bib mit KnowHow-Schutz versehen und hatten beim Übersetzen nie Probleme.
Wie muss ich da vorgehen?
Nach meinem Verständnis:
- Projekt (z.B. mit TIA V19) mit Ziel-CPU (z.B. S7-1515-2PN) erstellen
- meinen Baustein programmieren, mit PLCSIM testen, kompilieren, mit know-how-Schutz schützen
- geschützten Baustein als "Kopiervorlage" in eine Bibliothek kopieren
- dem Empfänger die Bibliothek zuschicken
Der Empfänger kopiert den geschützten Baustein (mit TIA V19) aus der Bibliothek und verwendet ihn?
 
Zuletzt bearbeitet:
Ich würde einen Typ des Bausteins erstellen,
als Kopiervorlage hat der Baustein keine Version
und du kannst dann nicht nachvollziehen
was dann in den Projekten verwendet ist.
 
Wie muss ich da vorgehen?
Nach meinem Verständnis:
- Projekt (z.B. mit TIA V19) mit Ziel-CPU (z.B. S7-1515-2PN) erstellen
- meinen Baustein programmieren, mit PLCSIM testen, kompilieren, mit know-how-Schutz schützen
- geschützten Baustein als "Kopiervorlage" in eine Bibliothek kopieren
- dem Empfänger die Bibliothek zuschicken
Der Empfänger kopiert den geschützten Baustein (mit TIA V19) aus der Bibliothek und verwendet ihn?
so wie ich das verstanden habe, muss der Baustein nicht zwingend in einer Bibliothek sein, er muss nur zwingend "bibliotheksfähig" sein, d.h. intern z.B. keine Merker, Variablen aus Global-DBs, UDTs, E/As, Systemkonstanten... verwenden...

Trotzdem, ob er neu übersetzt werden will hängt halt vom Einzelfall ab:
- will ich zw. 1200<->1500 wechseln
- will ich zw 1500<->1500SP wechseln
- will ich zw. 1515<->1516 wechseln
- will ich die TIA-Version wechseln, also hochrüsten/migrieren
- will ich zw. Soft-SPS und Hard-SPS wechseln
- will ich in ein anders Projekt kopieren
- werden in dem Baustein weitere Bausteine aufgerufen, die sich u.U. geändert haben, bzw. die Schnittstelle
- ...

was wir immer gemacht haben, der Empfänger teilt uns die SPS-MLFB und TIA-Version mit, dann machen wir ein Projekt fertig und übersetzen dieses. Das kann der Empfänger hernehmen bzw. eigentlich auch daraus kopieren.
Wenn aber an Variablen rumgefummelt wird, die im Baustein verwendet werden, geht das nicht mehr so einfach... Wobei dann auch noch unterschieden wird, sind das jetzt Merker oder Global-DB-Variablen...
 
Zuletzt bearbeitet:
Wenn aber an Variablen rumgefummelt wird, die im Baustein verwendet werden, geht das nicht mehr so einfach... Wobei dann auch noch unterschieden wird, sind das jetzt Merker oder Global-DB-Variablen...

Wenn innerhalb des Bausteins auf Merker , oder Globale DB zugegriffen wird ist der Baustein ja schon mal nicht Bibliothekskonform
1737377473142.png
sieht dann so aus ob es dann sinn macht den Baustein zu schützen ?
 
Wenn innerhalb des Bausteins auf Merker , oder Globale DB zugegriffen wird ist der Baustein ja schon mal nicht Bibliothekskonform
Anhang anzeigen 84761
sieht dann so aus ob es dann sinn macht den Baustein zu schützen ?
naja, Du kannst den schützen... aber spätestens wenn an diesem Global-DB mal was geändert wird, musst Du auch den geschützten Baustein mit übersetzen und dann brauchst halt das Passwort...
 
werden in dem Baustein weitere Bausteine aufgerufen, die sich u.U. geändert haben, bzw. die Schnittstelle
Habe jetzt herausbekommen, dass der Baustein (in meinem Fall ein FB) nur dann bibliothekskonform ist, wenn in ihm kein anderen Baustein (in meinem Fall ein FC) aufgerufen wird. Der FC ist bibliothekskonform und wurde nicht geändert.
In dem FC habe ich eine längliche Formel ausgegliedert, die ich in dem FB mehrfach brauche.
Habe mir die Aufrufe angeschaut und ich kann nichts Bibliotheksunkonformes finden.

Meine Frage: Das Aufrufen eines bibliothekskonformen FCs in einem FB macht den FB nicht bibliotheksunkonform, richtig?
 
In dem Fall müssen beide Bausteine in die Bibliothek aufgenommen werden, das müsste dann funktionieren.
Ziehst du dann den FB rein, holt er sich den FC automatisch mit.
Ist der FC nicht in der Bibliothek, kann der FB logischerweise nicht Bib-konform sein.

Schön ist es aber nicht, wenn man in Bausteinen, die man per KnowHow Schutz zumacht, weitere FCs aufruft. Das weiß ja keiner.
Dann führ Berechnung lieber xmal im Code aus, vom Rechenaufwand ändert sich nix, ist am Ende ja nur Copy&Paste.
 
Schön wäre es, wenn man innerhalb eines FBs private Funktionen schreiben könnte. Aber ich vermute, dass wird bei Siemens nochwas dauern....
 
Zurück
Oben