TIA Automatische Code-Prüfung im TIA-Portal

TP-Inc

Level-3
Beiträge
1.104
Reaktionspunkte
247
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi, ich bin auf der Suche nach einer automatischen Codeprüfung im TIA-Portal. Da sollen eigentlich ganz simple Dinge wie: Sind alle EAs verwendet, werden keine IB-Merker mehr verwendet, gibts nirgends ein "Tag_xy" usw. Das wäre zumindest der Grundumfang. Schön wäre auch ob Variablennamen eine bestimmte Form haben, ob bestimmte Variablen eines UDTs verwendet werden (es hilft nix wenn der Sensor nur am Entprellbaustein hängt, aber der entprellte nicht verwendet wird z.B). Ich habe gesehen es gibt da was von Siemens. Die Anwendung "ProjectCheck for TIA Portal". Verwendet die jemand? Gibts noch andere (eventuell externe) Möglichkeiten. Darf auch ruhig was kosten.
 
Das Ding ist ja ganz nett. Hat aber eigentlich im wesentlichen Funktionen mit denen man die Programmierer gängeln kann. "Kein Kommentar angegeben" obwohl der Variablenname perfekt aussagekräftig ist, Name zu kurz oder zu lang, das kann manchmal einfach ok sein.

Interessanter wäre tatsächlich der Hinweis auf echte Probleme:
- doppeltest Schreiben auf Ausgang
- Eingänge mehrfach lesen
- Instanzen angelegt aber nicht benutzt
- etc.
 
Siemens hat TIA Portal so dermaßen verrammelt das es für andere Firmen sich nicht mehr rentiert über solche Tools nachzudenken. Früher zu Classic Zeiten gab es sowas von einer französischen Firma. Das war aber schon Jahre her und hatte bei mir nachher auch zu Ernüchterung geführt.
 
Wenn ich weiß, dass ich in meinem Projekt alle Eingänge nur genau einmal lese, kann ein doppeltes Lesen ein Kopierfehler sein. Aber ja, das ist nur ein Beispiel für einen ggf. sinnvollen Filter.

Einen Styleguide zu haben ist für Projekte mit > 1 Programmierer unabdingbar. Keine Frage. In Bezug auf Dinge, die dem Funktionsverständnis dienen, bin ich da auch recht kompromisslos. Wenn da aber z.B. Kommentare erzwungen werden an Stellen, die keines Kommentars bedürfen, ist das eine Gängelung.
 
Letztens gabs hier nen Beitrag, wos darum ging, TIA-Warnungsfrei zu arbeiten... Wär ja zumindest mal der erste Schritt...
Grundsätzlich halte ich von so nem Codeprüfer auch nicht viel...
Wenns im eigenen Unternehmen sinnvoll eingesetzt wird, vielleicht noch. Aber wenn Kunden ihre Lieferanten damit gängeln usw... da steckt viel Schwachsinnspotential drin...
Und wer entscheidet, was ist richtiger und was falscher Programmierstil?
Der viel propagierte Multiinstans, Merkerfrei, OOP usw. Stil hat halt extreme Nachteile im Bezug auf Änderungen im laufenden Betrieb...
Aber Diskussionen über Programmierstile find ich eh müßig. Bei Projekten steckt der größte Ärger an ganz anderen Stellen...
Z.B. hat eigentlich keiner unserer Kunden ein ordentlich funktionierendes Ablagesystem für Softwarestände, Listen, Epläne, Dokumentation allgemein... da bist bei jeder Änderung an Anlagen die schon ein par Jahre auf dem Buckel haben ewig am Zusammenbasteln von nem aktuellen Stand. Und spätestens wenn mal verschiedene Programmierer und Firmen an ner Anlage dran waren, herrscht in der Software das Chaos...
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Naja Kunde ist bekanntlich der König. Wenn es aber viel Aufwand bedeutet, muss der Kunde auch den höheren Preis in kauf nehmen.
Es kann aber auch klare Vorgaben geben, die Sinnvoll sind. Zum Beispiel, damit die Wartungsabteilungen beim Kunden alle Anlagen in einem gewissen gleichmäßigen programmierstiel vorfinden.

Zudem gibt es auch Nachteile der Style Guides. Zum Teil meldet der Checker auch, wenn sich die Style Verstöße innerhalb von Bibliotheken, die man nicht anpassen kann, befinden oder sogar in Bausteinen von Siemens selbst, die einen anderen Style verfolgen als man selbst.

Das mit "zero warnings" ist so eine Sache. Prinzipiell ganz gut, aber sehr schwer um zusetzen im TIA. Kenne es aber von anderen Programmiersprachen (C++, C# usw.) bzw. den IDEs nicht anders. Das gibt es die Möglichkeit z.B. dass nur eingechecked werden kann, wenn es bei einem check in nur ein paar wenige Warnings gibt und in Summe nicht mehr als ein gewisses Maximum. Das sorgt dafür, dass der Code stabiler bleibt und ein gewisses Maas an Qualität hat.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Soweit ich weiß, basiert der Styleguide Checker auf die Openness Schnittstelle. Er bietet die Möglichkeit eigene Styles zu definieren. Ob sich der Zeitaufwand lohnt, eine eigene Style Prüfung zu programmieren. ist fraglich. Zumal die Funktionen, die man sich erhofft ja auch von Openness unterstützt werden müssen.

Fun Fakt. Habe mal den Style Checker auf ein neu erstelltes Projekt angewandt und siehe da, hatte schon 3-4 stellige Anzahl an Warnungen und Errors 😮

Eine Möglichkeit ein Projekt direkt in einem zugrundeliegenden Style zu erstellen und zu programmieren wäre schön.
 
Zurück
Oben