TIA Anregungen und Umsetzung zum Thema TIA Softwarestandard

jok3r

Level-2
Beiträge
353
Reaktionspunkte
7
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich bin relativ frisch im Tia Portal unterwegs und auch gerade wurde mit einigen Verbesserungen V14 veröffentlicht. Nach langem Suchen hatte ich keinen Thread zum Thema Tia Softwarestandard gefunden. Ich seh den Sinn von diesem Thread darin Infos und Anregungen zu teilen, die Möglichkeiten mit Tia sind ja nicht mehr zum vergleichen mit denen von Classic.

Lange rede kurzer Sinn ich hoffe dass dieser Thread den ein oder anderen nützen kann, mich inbegriffen.

Also von mir schon mal ein Servus. :cool:
Ich würde meinen ersten Beitrag immer schön Aktuell halten damit man ne kleine Übersicht hat das heißt informative links sind hier oben immer zu finden.

Dann gleich mal die erste Frage, kennt wer links zum Thema Softwarestandard basierend auf einer SPS?:ROFLMAO:

Für mich eine der interessantesten Neuerungen in TIA war UDT s auf Eingangsbereiche legen zu können, nutzt der ein oder andere dies auch für Umrichter ect. oder macht ihr das über SFC s die den Adressbereich via Hardwarekennung zurück liefern ?

Gruß



Linksammlung :
Programmierleitfaden und Programmierstyleguide für S7-1200 und S7-1500
https://support.industry.siemens.co...eguide-für-s7-1200-und-s7-1500?dti=0&lc=de-WW
 
Zuletzt bearbeitet:
Hallo Jok3r,

Erste tipp von mir.

Bei ein TIA Standard die auf 1200 und 1500 SPS laufen soll, sollte mann auf Bausteinen und Programmiersprache setzen die auf beide SPS lauft.
Sprich, zum Beispiel kein Bausteinen aus der legacy Ordner nehmen.
Und Keim AWL benutzen.

Bram
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
gut also AWL ist für mich sowieso aus der Steinzeit wobei ich es manchmal auch benutze ich vergleiche AWL mit Assembler , Assembler gibt es noch es ist sehr performant es wird sehr schnell sehr unübersichtlich und nicht zugebrachen wenn zwei Programmierer an einem Projekt sitzen und dies Entwickeln wollen.
Große Und /Oder Gatter lassen sich aber trotz allem in AWL am besten darstellem.
Was ist der legacy Ordner?

Für mich muss ein Standard Baustein ein Objekt komplett beschreiben können dh. die ganze Verarbeitung Visu und Steuerung sollte sich über einen Baustein realisieren lassen der natürlich auch aus mehreren Bausteinen bestehen kann und darf.
Was mich bei dem Gedanken sehr stört ist bei Phönix konnte man Meldungen an die Visu feuern(schicken) das waren String Konstanten oder auch Dynamisch generierte Strings via Object-Baustein. Also wenn eine Meldung anstand wurde dieser String an die Visu geschickt.
Belehrt mich eines besseren aber Siemens setzt ja voll noch auf bit Meldungen dh. der Meldungsstring ist nur der Visu bekannt. Und diese wird gefeuert wenn ein Bit gesetzt wird.
Ich sehe dahin gehend das Problem dass wenn ich mit einem Baustein ein Objekt als zb einen Antrieb beschreiben will mich gesondert ausserhalb um die Meldungen und Störungen kümmern muss.
Beim jetzigen Projekt hatte ich eine Systemfunktion benutzt die mir über die Hardwarekennung den Adressbereich zurück liefert und die Hardwarekennung war auch gleich mal mein Offset für meinen Melde und Stör DB auf dem die Visu zugriff.
Die Stör und Meldetexte hatte ich via VBA erzeugt ich kannte ja den Offset über die Hardwarekennung.

Also Beispiel der Stör DB war ein Struct of bit s ein Stellgerät (Hardwarekennung) hatte 5 Störungen maximal zur verfügung. ->
5*10 = 50 bit
50 war die erste Störung
54 die letzte

Im VBA Skript war zum angeben um welches Stellgerät es sich handelt und von welchem typ es war zb SEW Movidrivexxx irgendwo war noch definiert welche Störungstexte dieses Stellgerät hat. Das ganze ist Nett aber es muss doch noch besser gehen,...

Hat wer ne bessere Lösung ?
:ROFLMAO:
Gruß
 
Du kannst ja mal am Anfang den Siemens-Style-Guide lesen, der ist ja so TIA-nah wie es geht.
https://support.industry.siemens.com/cs/ww/en/view/81318674

Dann solltest du dir allerdings noch folgende Gedanken machen
  • Welche Steuerungen programmiert ihr? Siehe den Vorbeitrag.
  • Welche Visualisierungen kommen zum Einsatz? Gewisse Funktionen laufen nur mit Siemen-HMI
  • Wer programmiert dann mit deinem Standard?
  • Welche Taktiken, Strukturen, Sprachen passen am besten zu euch und eurer Branche?

EDIT: Hab aus dem Titel interpretiert dass es um einen Softwarestandard geht, scheint aber mehr um Funktionen von TIA zu gehen welche man in einen Standard einfließen lassen könnte.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Der Thread sollte ja für alle sein dh. muss sich das nicht immer auf mich beziehen.
Aber ja wir machen Sondermaschinenbau
Beflammungsanlagen zum Lederaufziehen
Roboterzellen
Maschinen die interior für die Automobilisten fertigen
Maschinen die Sicherungskästen zusammen setzen via Ultraschall schweißen
und und und

Es scheint so dass wir immer eine aus der 1500 Baureihe benutzen werden weil eben viele auf AWL eingeschworen sind. Für Werkzeuge die in Anlagen verwendet werden haben wir dann meist eine S7 1515SP (ich glaub so heißt die) die via I device mit der Anlage verbunden ist. Die adaption der Visu wird gestreamt.
Zum Thema Wer also was ich so mitbekommen habe sind manche gar nicht abgeneigt bzw. fragen wie ich das mache und wieso, es ist jedem selbst überlassen ob er meine Arbeitsweise übernimmt oder auch daran mitwirken will. Zeit ist Geld und Programmierer sind faul dass war das erste was ich beim Programmieren in meinem alten Unternehmen gelernt habe sprich arbeiten die ich doppelt mache war einmal zu viel gemacht. Deswegen ist mir VBA nicht fremd, man sollte sich aber immer fragen kann ich dieses Tool wiederverwenden oder arbeite ich jetzt mehr stunden daran als es mir endlich bringt.
Eins stört mich in Tia aber schon es gibt keine AWL Quelle vom ganzen Projekt mehr, ich hab viele VBA tools liegen die sich aus der AWL Quelle Informationen holen können die ich jetzt in die Tonne treten kann....

Hat schon jemand nach TIA gegoogelt ? :ROFLMAO::cool: https://de.wikipedia.org/wiki/Transitorische_ischämische_Attacke Manchmal dachte ich auch ich bekomme gerade ein TiA ,nachdem das tool immer wieder abgestürzt ist.... :p

Aber echt eine Nette Lektüre.

Gruß
 
Zuletzt bearbeitet:

Was mich bei dem Gedanken sehr stört ist bei Phönix konnte man Meldungen an die Visu feuern(schicken) das waren String Konstanten oder auch Dynamisch generierte Strings via Object-Baustein. Also wenn eine Meldung anstand wurde dieser String an die Visu geschickt.
Belehrt mich eines besseren aber Siemens setzt ja voll noch auf bit Meldungen...
Sowas (SPS-Alarme) gab's auch schon auf 300/400 (ALARM_S).Bei S7-1200/1500 läuft das unter der Bezeichnung "Program_Alarm Kap.9.5.9 und 9.5.10".
Damit lässt sich sowas eigentlich umsetzen, wobei die 1500er von Haus aus mehr Funktionen bereitstellt um Infos für die Meldung zur Laufzeit zu sammeln.

Mit v14 bringt Siemens jetzt eine Option namens ProDiag eingbaut die Spielchen wie z.B. einen CodeViewer auf die HMI bringt.
Mal sehen...

Heißt jetzt nicht dass die guten alten Bitmeldungen keine Platz mehr in der Welt hätten. ;)
Daher kam ja meine Frage ob ihr auch HMI-Systeme von Fremdherstellern nutzt oder daran Anbindung finden müsst.
 
Zuletzt bearbeitet:
Also wie Ronin sicherlich auch schon meinte, es gibt nicht den ultimativen allgemeingültigen Programmierstandard. Es gibt verschiedene Programmierstile, welche auch unter TIA je nach Anwendungsfall und Randbedingungen ihre Berechtigung haben. Weiterhin gibt es bei 5 Programmierern sicherlich 5 verschiedene Auffassungen, was gut oder schlecht ist. Man haz wie immer im Leben Zielkonflikte unter einen Hut zu bringen. Also dir konkreten Randbedingungen betrachten und dafuer die optimale Lösung suchen....
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also wie Ronin sicherlich auch schon meinte, es gibt nicht den ultimativen allgemeingültigen Programmierstandard. Es gibt verschiedene Programmierstile, welche auch unter TIA je nach Anwendungsfall und Randbedingungen ihre Berechtigung haben. Weiterhin gibt es bei 5 Programmierern sicherlich 5 verschiedene Auffassungen, was gut oder schlecht ist. Man haz wie immer im Leben Zielkonflikte unter einen Hut zu bringen. Also dir konkreten Randbedingungen betrachten und dafuer die optimale Lösung suchen....

Das steht sowieso ausser Frage, und ist mir bewusst...
Aber echt interessant dass es hierzu doch was gibt, wenn ich Strings feuern kann will ich von Bitmeldungen aber auch nichts mehr wissen :ROFLMAO:
 
Zuletzt bearbeitet:
Du feuerst nicht direkt Strings. Die Texte werden nur automatisch vom SPS-Projekt in das HMI übernommen. Plus einige Features wie dynamische Platzhalter, Meldungsbegleitwerte heisst das. Evtl koennen die auch nen String sein.
 
Hallo,
ja gut was im Hintergrund passiert oder wie er das macht ist mir erst mal egal. Störungstexte sollten einfach nur im SPS Programm definiert werden.
Den Programmierleitfaden kann man wirklich nur empfehlen. :cool:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Programmierleitfaden hin oder her.. Mein aktuelles TIA 1500er Projekt macht genau das Gegenteil... Aus verschiedenen teilweise guten Gründen. Das kann man sich halt nicht immer aussuchen, wenn Du es kannst dann sei froh ;) Bei uns ist im Zuge der 300-1500 Umstellung einfach keine Zeit zur Verfügung um den Programmierstil umzustellen und alle Bausteine gemäß Siemens Leitfaden neu zu schreiben und auszutesten. Weiterhin geht auf Grund "Nicht Siemens HMI " vieles nicht wie dort beschrieben. In diesem Dilemma stecken Viele.
 
In dem selben Loch befinde wir uns leider auch. Leider scheint es für mich so das es nicht mal eine Umstellung von S5 auf S7 classic gab. Irgendwann sollte man sich doch mal weiter entwickeln. Zumal ich es schon besser gesehen habe.
Dennoch hat Siemens noch viele Baustellen offen, ich bin schon mehrmals auf die Schnauze gefallen mit VBS. Auf einem HMI gehts auf dem anderen wieder nicht!! Oft schon sehr traurig wenn Ansätze vorhanden sind aber nicht fertig gedacht....
Dennoch ist der Programmierleitfaden mal wichtig Ihn gelesen zu haben.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Mit v14 bringt Siemens jetzt eine Option namens ProDiag eingbaut die Spielchen wie z.B. einen CodeViewer auf die HMI bringt.
Mal sehen...

ProDiag Alarme sind im Endeffekt nur eine Engineering Oberfläche für Program_Alarme.
Mit dem Nachteil das Sie Kostenpflichtig sind und nur Bits aus einer Schnittstelle als Trigger möglich sind.

Code:
Daher kam ja meine Frage ob ihr auch HMI-Systeme von Fremdherstellern nutzt oder daran Anbindung finden müsst.

Denn Meldeserver der 1500er kann man nun per GetAlarm Funktion erreichen und Meldungen an nicht Siemens Applikationen weiterreichen.
 
Deine Beschreibung von ProDiag klingt ja nicht spannend.
Ich muss zugeben dass das 10-Minuten-Video auch nicht grade viel beeindruckendes zeigt.

GetAlarm war mir schon aufgefallen, leider konnte ich nicht viel Info dazu sehen/finden.
Wie funktioniert das GetAlarm denn genau? In welcher Form werden die Alarme denn da im DB abgelegt?
Reicht dann ein Funktionsaufruf von GetAlarm um alle Alarme in den DB zu bekommen?

Hast du schon damit zu tun gehabt?
 
ich bin relativ frisch im Tia Portal unterwegs und
...
In meiner neuen Firma Programmiert man leider noch "S5 like" Merker und indirekte adressierung ist hier noch hoch im Kurs auch ist den meisten VBA ein Fremdwort...
...
gut also AWL ist für mich sowieso aus der Steinzeit wobei ich es manchmal auch benutze ich vergleiche AWL mit Assembler , Assembler gibt es noch es ist sehr performant es wird sehr schnell sehr unübersichtlich und nicht zugebrachen wenn zwei Programmierer an einem Projekt sitzen und dies Entwickeln wollen.
...

Sag findest du es nicht ein wenig vermessen, der sich mit TIA nicht auskennt,
als neuer in der Firma, alles was die Kollegen machen als Steinzeit Programmierstil
abzutun.

Warum überhaupt, soll man mit AWL, keine gut Strukturierte Programme schreiben können?

Warum sollen zwei Programmierer nicht effektiv, in AWL an einen Projekt arbeiten können?

Wann möchtest du den mal deine Unfangreichen VBA Kenntnisse bei TIA umsetzen können,
außer bei einen kleinen Script in der HMI?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
GetAlarm war mir schon aufgefallen, leider konnte ich nicht viel Info dazu sehen/finden.
Wie funktioniert das GetAlarm denn genau? In welcher Form werden die Alarme denn da im DB abgelegt?
Reicht dann ein Funktionsaufruf von GetAlarm um alle Alarme in den DB zu bekommen?

Hast du schon damit zu tun gehabt?

Beim Workshop hies es man kann auf die Program_Alarme zugreifen und anstehende Meldungen und deren Zustände weiterleiten.
Da ja nun OPC UA eingeführt wurde könnte ich mir auch vorstellen das Get_Alarm das Gegenstück zum Alarms & Conditions Informationsmodel von OPC UA ist.
 
Sag findest du es nicht ein wenig vermessen, der sich mit TIA nicht auskennt,
als neuer in der Firma, alles was die Kollegen machen als Steinzeit Programmierstil
abzutun.

Warum überhaupt, soll man mit AWL, keine gut Strukturierte Programme schreiben können?

Warum sollen zwei Programmierer nicht effektiv, in AWL an einen Projekt arbeiten können?

Wann möchtest du den mal deine Unfangreichen VBA Kenntnisse bei TIA umsetzen können,
außer bei einen kleinen Script in der HMI?

Nicht soviel hineininterpretieren... deine interpretation bzw. Darstellung ist da schon eher vermessen.
Also zurück zum Thema bitte.

Können tut man das schön nur wird s oft sehr unübersichtlich vor allem wenn ständig von verschiedenen Leuten erweitert wird. Wie gesagt ich benutze AWL auch bei vielen dingen noch aber ich schraube es stark zurück.
 
Die für mich bisher technisch beste Lösung ist eine Kombination aus CFC und SCL. CFC-Pläne für die grobe Prozessübersicht und den Datenfluss, und SCL für die Details.
Leider holte man sich dadurch bisher einiges an Nachteilen ins Haus. Wegen dem größeren Speicherbedarf musste immer eine etwas größere CPU als sonst verwendet werden, kein Online-/Offline Vergleich möglich, bestimmte Änderungen nur in mit Stop-setzen möglich usw.
Außerdem ist CFC ein kostenpflichtiges Modul, und dann noch Kundenvorgaben z.B. nur FUP und ggf. AWL zu verwenden verhinderten den Einsatz ebenfalls.
Darum ist bei mir z.Zt. FUP der Ersatz für CFC. Wenn aber alles frei verfügbar wäre, dann wäre CFC/SCL für mich die Kombination der Wahl. Wenn das passend projektiert ist, findet man sich auch in Projekten mit vierstelligen EA-Anzahlen äußerst schnell zurecht - ohne das Projekt zu kennen.
 
Zurück
Oben