TIA Servicepack 1 für SIMATIC WinCC V13 (TIA Portal)

Zuviel Werbung?
-> Hier kostenlos registrieren
Mal zurück zum Thema:

Hat vielleicht jemand weiterführende Infos zum Punkt 'API-Engineering'? Hört sich ja ein bisschen nach der alten Kommandoschnittstelle an, ich habe bis jetzt aber nichts weiterführendes dazu gefunden.

Wäre für mich sehr interessant z.B. für das Handling von Projektbestandteilen in Verbindung mit einer Versionsverwaltung.

Gruß, Fred
 
Zwar ein bisschen OT, aber dennoch:

Was hat das Argument 'Zeit' damit zu tun? Die Verwendung der jeweiligen Entwicklungsumgebung (WinCC, VisualStudio, Eclipse) muss ich in jedem Fall erlernen, und ob ich die ein oder andere Funktionalität selbst programmieren oder mich mit Unzulänglichkeiten der integrierten herumschlagen muss ist meistens kein (vordergründig) zeitliches Problem.

Lieber programmiere ich aber eine Funktion selbst und weiß dann genau
1. was sie tut
2. wie sie es tut
3. wann sie es tut
und habe darüber hinaus viiiieeeel mehr und bessere Möglichkeiten der Codeverwaltung.


Gruß, Fred


PS: Und bezahlt macht sich das ganze zumindest mittel- und langfristig auch, besonders bei Serienfertigung (Stichwort Lizenzkosten).

Bei soviel Überzeugung.... was hindert Dich daran ? Hätte den Vorteil das man sich nicht mit Fehlern in TIA rumschlägt und was verstehst du unter "viiiieeeel mehr und bessere Möglichkeiten der Codeverwaltung"
leider bin ich nicht sooooo Fit

Gruß
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das werde ich über kurz oder lang auch tun.
Bis dato hindern mich daran neben dem eigenen (Un-)vermögen auch diverse Vorbehalte von Kunden/Vorgesetzten, die befürchten, dass sie dann Nachteile bei der Verfügbarkeit/Wartbarkeit/'was auch immer' von Programmen haben. Wobei dieselben Leute auch so schon fast immer auf das Wissen des (Erst-)entwicklers angewiesen sind, da die heutigen Projekte sehr umfangreich und kompliziert geworden sind -Stichworte: "Die Maschine soll aber dies und jenes können, dabei aber von einem Von-der-Straße-geholten ohne Kenntnisse der Prozesse bedient werden".
Und außerdem: Ob jemand nun Java, C# oder SCL lesen/verstehen muss ist m. M. nach kein großer Unterschied, ein sauberer Programmierstil vorausgesetzt.

Eine Bemerkung dazu: ich bin in meiner Firma für die HMI-Entwicklung zuständig, die meisten meiner Aussagen sind also ziemlich auf diesen Bereich der Automatisierungsentwicklung bezogen.


Mit besseren Codeverwaltungsmöglichkeiten meinte ich haupsächlich (wie erwähnt) die Versionsverwaltung. Eine Nachverfolgung von Codeänderungen (detailliert!) ist bei einem Master-Projekt mit diversen Forks und mehreren (auch externen) Programmierern nur mit Hilfs-SW wie z.B. GIT oder SVN wirklich möglich.

Des weiteren ist -zumindest bei WinCC- die Programmierung von Funktionalitäten meistens auf mehrere unterschiedliche Editoren bzw. SW-Basen verteilt.
Ich muss also beispielsweise Controls per Drag&Drop plazieren und komme zur Laufzeit an diese nur heran, wenn das entsprechende Bild geladen/angezeigt wird.
Ich muss globale Variablen in einer Tabelle anlegen und kann sie im Projekt nur mit Hilfe der Querverweisliste suchen, nicht aber mittels Textsuche (Blöd, wenn ich in Skripten mit zusammengesetzten Variablennamen arbeite...).
Ich schreibe (umfangreiche) Skripte, kann aber deren Inhalt nicht (gesammelt) exportieren.

Von Objektorientiertheit rede ich erst gar nicht.


All diese und noch mehr Nachteile habe ich nicht, wenn alles codebasiert wäre. Wobei es in den meisten Entwicklungsumgebungen auch Hilfsmittel wie einen GUI-Editor inkl. Drag&Drop gibt, diese erzeugen aber Code und nicht irgendeinen nicht nachvollziehbaren Eintrag in einer Projektdatenbank.


So, genug OT von meiner Seite, hier geht es doch eigentlich um den SP1 des TIA-Portals :)


Gruß, Fred
 
Das werde ich über kurz oder lang auch tun.
Bis dato hindern mich daran neben dem eigenen (Un-)vermögen auch diverse Vorbehalte von Kunden/Vorgesetzten, die befürchten, dass sie dann Nachteile bei der Verfügbarkeit/Wartbarkeit/'was auch immer' von Programmen haben. Wobei dieselben Leute auch so schon fast immer auf das Wissen des (Erst-)entwicklers angewiesen sind, da die heutigen Projekte sehr umfangreich und kompliziert geworden sind -Stichworte: "Die Maschine soll aber dies und jenes können, dabei aber von einem Von-der-Straße-geholten ohne Kenntnisse der Prozesse bedient werden".
Und außerdem: Ob jemand nun Java, C# oder SCL lesen/verstehen muss ist m. M. nach kein großer Unterschied, ein sauberer Programmierstil vorausgesetzt.


Da tun deine Vorgestzten auch gut dran, mich verlässt auch ein Büronachbar der seine HMI Oberflächen
in Hochsprache gemacht hat, weil ihn WinCC oder VisiWin in seinen Möglichkeiten nicht ausreicht.
Er hat das wirklich toll gemacht, man kann mit XML Datein zur Laufzeit die Oberfläche umgestalten oder
Erweitern. Aber Warten möchte ich die nicht, mir währe manchmal weniger mehr.

Mir reicht WinCC eigentlich mit seinen Möglichkeiten, für den normalen Maschinenbau aus, selbst Gedanken
Rezepturen selbst mit CSV Datein oder ähnlichen finde ich nicht angemessen, es soll ja auch ein Monteur
vor Ort verstehen können, der wird niemals ein Hochsprachen Programierer sein.

Grundsätzlich könnten ein paar Dinge wie Radiobuttons, Checkboxen, Listviews usw vorhanden sein, da
sind die Pop UP schon mal ein kleiner Fortschritt für mich und ein großer für Siemens.
 
...
Aber Warten möchte ich die nicht, mir währe manchmal weniger mehr.
...


Ich bin ehrlich, da verstehe ich dich nicht. Wo ist denn denn da bei Hochsprachenverwendung der Unterschied bzw. der Mehraufwand? Nur weil es in der Automatisierungswelt (oder für dich, nicht negativ gemeint) vielleicht nicht so geläufig ist?
Nochmal zur Verdeutlichung meiner Meinung: Guter Code mit verständlicher, gut dokumentierter Logik und sauberem Stil ist in jeder Programmiersprache gut zu pflegen. Das nötige Wissen natürlich vorausgesetzt, aber ich glaube, niemand hier lässt jemanden ohne das nötige Rüstzeug an sein AWL-Programm ;)

Und auch meine Meinung: ich erwarte von keinem Monteur (man beachte die Wortwahl), dass er
1. mein komplettes Programm versteht
2. ohne Rücksprache in meinem/unserem Programm herumfuhrwerkt. Wenn er dies tun müsste, dann habe ich meinen Job nicht gut gemacht!


Dies alles bezieht sich (ich wiederhole mich) auf meinen (kleinen?) Bereich der HMI-Programmierung und auf mein Bestreben, zumindest für Serienmaschinen eine weiterzuentwickelnde bzw. zu optimierende Basis-Software zu haben.
Zu diesem Thema gehören nämlich für mich auch Programm-Handlingsprozeduren wie z.B. das Bespielen oder Konfigurieren der Anlagen/HMIs ohne Spezialsoftware.


Gruß, Fred
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Dies alles bezieht sich (ich wiederhole mich) auf meinen (kleinen?) Bereich der HMI-Programmierung und auf mein Bestreben, zumindest für Serienmaschinen eine weiterzuentwickelnde bzw. zu optimierende Basis-Software zu haben.
Zu diesem Thema gehören nämlich für mich auch Programm-Handlingsprozeduren wie z.B. das Bespielen oder Konfigurieren der Anlagen/HMIs ohne Spezialsoftware.

Und mit genau solchen Anlagen haben wir heftige Probleme.
Maschinen haben oft Laufzeiten von mehr als 20 Jahren.
Oft gibt es ein Retrofit oder größere Umbauten.

Selbst wenn man den Quellcode zur Visualisierung erhalten hat, so hat man massive Probleme die entsprechende Entwickungsumgebung zu bekommen.
Daher fordern wir Visualisierung mit WinCC flex oder mit WinCC.
Da hab ich selbst nach 20 Jahren noch gute Chancen.

Gruß
Dieter
 
@faust, dann mach es doch du wirst schnell merken, wenn deine Bonusmeilen überlaufen.

Im übrigen meiner Ansicht nach, ist der HMI Teil wesentlich anspruchsvoller, als der
SPS Teil. Es geht auch nicht um das rumfuhrwerken der Monteure, nur kann man nicht
überall sein. Ich bin mir sicher das du auch mal Urlaub hast oder sogar durch Krankheit
Ausfallen kannst.

Meiner Erfahrung nach hält jeder Programmierer seinen Code für logisch, übersichtlich und
für leicht verständlich, in der Praxis sieht es immer anders aus (mich eingeschlossen).

Ich denke das Siemens die Grenzen nicht ohne Absicht zieht.
 
2. ohne Rücksprache in meinem/unserem Programm herumfuhrwerkt. Wenn er dies tun müsste, dann habe ich meinen Job nicht gut gemacht!

Nachtrag,
Wenn ich dich und deine Firma nicht persöhnlich kennen würde, könnte ich fast behaupten
das du keine praktische Erfahrung hast. Du willst mir doch wohl nicht im Ernst erzählen das
du noch nie nach gebessert hast (Flüchtigkeitsfehler) oder noch nie Kundenwünsche die erst
nach Auslieferung zum Tragen gekommen sind.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
...
Im übrigen meiner Ansicht nach, ist der HMI Teil wesentlich anspruchsvoller, als der
SPS Teil.
...
Deswegen mein Bestreben, diesem Umstand mit der in meinen Augen geeigneteren Programmiersprache/Entwicklungsumgebung auch Rechnung zu tragen :)


...
Es geht auch nicht um das rumfuhrwerken der Monteure, nur kann man nicht
überall sein. Ich bin mir sicher das du auch mal Urlaub hast oder sogar durch Krankheit
Ausfallen kannst.
...
Wer sagt denn, dass ich in unserer Firma der einzige bin oder sein werde, der meinen Code/das Programm versteht?
Spass beiseite, natürlich (und wie auch schon erwähnt) muss das Thema in seiner Gesamtheit betrachtet werden. Das bedeutet auch eine Berücksichtigung der personellen Resourcen etc., alleine werde ich das mit Sicherheit nicht durchziehen.


...
Meiner Erfahrung nach hält jeder Programmierer seinen Code für logisch, übersichtlich und
für leicht verständlich, in der Praxis sieht es immer anders aus (mich eingeschlossen).
...
Gebe ich dir 100% Recht, nur hast du dieses Problem bei JEDER Programmiersprache/Entwicklungsumgebung.


Gruß, Fred
 
Hallo

Wir haben 2 Sondermaschinen in unseren ausländischen Standorten.
1 Maschine in China, 1 Maschine in USA.

Diese Maschinen sind jünger als 1 Jahr.
Bei Problemen kann nur die Herstellerfirma helfen.
Siemens und externe Firmen haben sich schon "versucht" !


Und nun Details:
HMI-Programmierung in C## unter VS2010.
Steuerung ist eine 840Dpl und eine Fanuc_xxx.

Es werden Benutzeroberflächen in der Hochsprache programmiert.
Dieses wäre ohne Probleme mit "Siemens-Software" realisiert werden können.
(Gibt es bestimmt auch für Fanuc)
Hauptgrund für die C## HMI-Entwicklung war eine möglichts flexible Hardwareumgebung.

Der Quellcode ist vorhanden.
Der Original-Programmierer hät die Amerikanische Herstellerfirma verlassen.
Der Nachfolger, auch ein Hochsprachenspezialist hat Probleme mit der Programmierung des Code
für diese beiden Maschinen. Auch er würde ALLES neu programmieren, jedoch "viel besser".


Ich habe mir den Quellcode von unseren Tochterfirmen zusenden lassen.
Dann habe ich:
-Virtuelle Maschine erstellen müssen
- Die "richtige Programmierumgebung" besorgen müßen ( VS2013 geht NICHT, es muß schon die VS2010 sein ! ! !)
Seltsam, bei Maschinen, die so um 1 Jahr alt sind.
- Diverse Biliotheken und Treiber aus dem Internet zusamen suchen.

- Programm übersetzen. (Etliche Veränderungen waren notwendig)
- Etliche Ordner von Hand erzeugen. Die Fehlermeldungen wären NICHT aussagekräftig. Ohne Quellcode KEINE Fehlerunsache
auffindbar gewesen.
- Treiber für Fanuc und Siemens suchen b.z.w. aus einem Festplatten-Image des HMI-Rechners raussuchen. . .

Ich habe das System NICHT zum laufen bekommen.

Ich denke, wenn der Programmierrechner in den USA mal abrauchen sollte, werden schon etliche Probleme auftretten.
Eine Liste über die Tool, Versionen, Treiber, Installationsanweisungen . . . --> Fehlanzeige, möglicherweise wollen Sie diese nicht rausgeben.


Kompetente Programmierung:
Wenn das Verbindungskabel zu NCK abgeht steht die Maschine ! ! !
Werkstücke können beschädigt werden !

Fehlt mal die Komunikation, so wird eine Alarmbox erzeugt.
Das ist soweit O.K. jedoch kommt alle 2 Sekunden eine "neue Alarmbox", jedoch seitlich etwas versetzt, die alte bleibt vorhanden.
So nach ca 2-3 Minuten scheinen die Resourcen ausgegangen sein, dann kommt keine Alarmbox mehr, jedoch bewegt sich auch die Maus NICHT mehr.


Nun sollen wir 3 von diesen Sondermaschinen bekommen. ( 1 Maschine kostet ja nur mal so 1-1,5 Mio Euro)
Die Maschinen erscheinen mir gut verarbeitet und haben eine sehr hohe Massgenauigkeit.
Auch die Ausstatung ist sehr gut.

Jedoch regen sich "Intern" sehr große Wiederstände gegen diese Maschine.
Die HMI-Programmierung in dieser Hochsprache KÖNNTE ein K.O.-Kriterium für dem Kauf der Maschine sein.

Ich denke NICHT, dass es uns möglich ist, den Service über den Lebens-Zyklus der Maschine aufrecht zu halten. (18-2x Jahre)
(Wir haben bereits 4 solcher Maschinen, die teilweise über 14 Jahre alt sind)
(Jedoch mit Siemens - HMI-Programmierungen, Quellcode für HMI und PLCs sind dabei)


Nur gut, das ich nur noch ein paar Jährchen bis zur Rente habe (So um die 10 Jährchen ;-) )


Das erinnert mich an die Zeiten, dass jeder Hersteller seine "eigene Steuerung" gebaut hat.
(Vor ca. 15 Jahren, selbst gebaute Hardware und Anpassteuerungen)
( Z.b. Traub, Gildemeister . . . )
Und jetzt, haben Sie es hoffentlich gelernt --> Siemens, Fanuc, Heidenhain.

Meine Hofnung, der Hersteller rüstet auf Siemens-HMI-Programmierung um.
Die Zusage hat er bereits mündlich kundgetan, jedoch verfügt er NICHT über das Wissen, das umzusetzen.
Erfreulicherweise hat sich unsere Firma seit 6 monaten geweigert, den Kaufvertrag für diese Maschinen mit dieser HMI-Programmierung zu unterschreiben.

Genauere Infos zu Hersteller und Art der Maschine kann ich hier nich schreiben.

P.S.: Ich habe ca. 25 Jahre Erfahrung in ANSI-C, C++ (Nur Home-Niveau)
 
Dann habe ich aber das Problem/Aufwand, dass ich für jedes dieser Controls eine Sichtbarkeit projektieren muss. Und da diese Sichtbarkeit nur von einer Variablen abhängig sein kann müsste ich diese 'berechnen', falls auch andere Bedingungen berücksichtigt werden sollen. Bei Java/VisualBasic/C# (eigentlich allen Hochsprachen) gibt es dafür einfach eine Eigenschaft 'setModal' des Popups.

Gruß, Fred
ich mach das seit Jahren so das ich zusätzlich zu einem Bedienbild ein unsichtbaren button anzeigen lasse der über das ganze Bild geht. damit ist keine Bedienung mehr möglich und der Projektierungsaufwand ist minimal
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ich mach das seit Jahren so das ich zusätzlich zu einem Bedienbild ein unsichtbaren button anzeigen lasse der über das ganze Bild geht. damit ist keine Bedienung mehr möglich
Die Bedienung ist noch möglich - die Objekte können mit den Cursor-Tasten und der TAB-Taste angewählt werden! - doch da kommen normale Bediener nicht drauf bzw. nutzen das glücklicherweise nicht.

Harald
 
Siemens hat nämlich vergessen, dass ein Popup in 90% der Fälle modal​ sein sollte. Die nicht verdeckten Controls sind aber weiterhin bedienbar! Und dieses Verhalten ist leider nicht beeinflussbar...
Ich denke nicht daß Siemens das vergessen hat.
So wie es jetzt ist, habe ich als HMI-Programmierer die Wahl, ob ich ein Popup modal mache oder nicht (wenn auch umständlich). Ein "Popup" kann so auch einfach nur eine ein-/ausblendbare Detailansicht sein, die man sichtbar lassen kann und trotzdem andere Bildteile bedienen kann.

Bei mir gibt es regelmässig Bediendialoge, wo es vorteilhaft ist, daß auch außerhalb des "Popup"-Dialoges bedient werden kann, z.B.:
- eine Anlage mit ..zig Rührwerken
- tippen auf ein Rührwerk im Anlagenbild macht den multiplex-Bediendialog für Start+Stop des Rührwerks sichtbar
- tippen auf ein anderes Rührwerk (im Anlagenbild außerhalb des Dialoges) ändert die multiplex-Variable
--> so ist es möglich, schnell nacheinander viele Rührwerke Ein- oder Auszuschalten, ohne die Dialoge zwischendurch schließen zu müssen

Der eigentliche Fortschritt bei den neuen Popups scheint mir, daß die sich nun über den Bildschirm verschieben/ziehen lassen (das ist doch so oder nicht?) Ein rudimentäres Bewegen von "Popup"s musste man bisher immer relativ aufwendig extra programmieren.

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Der eigentliche Fortschritt bei den neuen Popups scheint mir, daß die sich nun über den Bildschirm verschieben/ziehen lassen (das ist doch so oder nicht?) Ein rudimentäres Bewegen von "Popup"s musste man bisher immer relativ aufwendig extra programmieren.

Harald
Nein das geht nicht ich kann beim öffnen eine Position angeben und das war es
 
Der eigentliche Fortschritt bei den neuen Popups scheint mir, daß die sich nun über den Bildschirm verschieben/ziehen lassen (das ist doch so oder nicht?) Ein rudimentäres Bewegen von "Popup"s musste man bisher immer relativ aufwendig extra programmieren.

So etwas und vieles mehr soll erst mit den Multitouchgeräten möglich sein.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ohh :sad: Ich hatte schon gedacht, es gäbe jetzt was, wo man auf TIA neidisch werden könnte...

Für irgendwas Nützliches außer Spielereien sollten die neuen Popup's doch aber gut sein?

Harald

Es sind richtige Pop UPs sie können controls wie Rezepturen oder Meldeanzeigen überdecken.

Damit kann mann Faceplates erstellen die für mehre Bilder gelten und dann nicht jedesmal
unsichtbar, die Grundlast eines Bildes belasten.
 
Zitat von Rostiger Nagel
<<
Nachtrag,
Wenn ich dich und deine Firma nicht persöhnlich kennen würde, könnte ich fast behaupten
das du keine praktische Erfahrung hast. Du willst mir doch wohl nicht im Ernst erzählen das
du noch nie nach gebessert hast (Flüchtigkeitsfehler) oder noch nie Kundenwünsche die erst
nach Auslieferung zum Tragen gekommen sind.
>>

Ich habe an keiner Stelle behauptet, dass ich keine wie auch immer gearteteten Fehler gemacht habe bzw. mache oder nicht auf Kundenwünsche reagieren muss.
Das bedeutet aber nicht, dass ich es gutheißen muss, wenn ein Monteur(!) vor Ort in einem Programm, welches er nicht im Detail (und vor allem nicht vollständig) kennt, ohne Rücksprache Änderungen vornimmt. Und wenn diese Rücksprache erfolgt, dann kann ich die Fehlerbereinigung/Wunschimplementierung auch gleich selbst durchführen.

Gruß, Fred
 
Das sollten Sie aber unter Umständen können. In WinCC können Sie mal Texte Editieren,
wenn die Maschine in Tadschikistan steht, keine Fernwartung vorhanden ist, der
Rückflug in ein paar Stunden geht und das Übersetzungsbüro, anstatt "Störung Motorschutz
Einlaufband" dann vom Praktikanten "Drück den Knopf Dumpfbacke" in Tadschikisch eingetragen
hat. Du diesen Fehler trotz intensiver Durchsicht nicht entdeckt hast, der Kunde aber schon.
Dieser Kunde wird die letzte Rate nur bezahlen wenn der Fehler behoben ist, ein erneuter Flug
des Hochsprachenkünstlers zur Baustelle mal eben 5-10K€ kostet.

Das ist es schön das der Monteur mit einer Grundlagenschulung bei Siemens dazu in der Lage ist,
aber sein abgebrochenes Informatikstudium für eine Hochsprachenlössung nicht gereicht hat.
 
Zuletzt bearbeitet:
Zurück
Oben