[TIA-V11] Rechnet TIA falsch bei SCL

BlackLizzard

Member
Beiträge
10
Punkte Reaktionen
5
Zuviel Werbung?
->Hier kostenlos registrieren
Hallo alle zusammen,

Ich will meinen ersten Beitrag gleich mit einem kleinen Problem beginnen, welches mir beim Erstellen eines Programmes zur Steuerung von 3 Kältemaschinen aufgefallen ist.

Eine Funktion, geschrieben in SCL, soll die von der Anlage geforderte Kühlmittelleistung aufgrund der Vor- und Rücklauftemperatur sowie des Kälteträger Volumenstromes berechnen.

Ich habe diese Berechnung in einer in SCL geschriebenen Funktion erstellt.

Beim Ueberprüfen des Resultats habe ich festgestellt, dass die Berechnung falsch ausgeführt wurde.
Leider konnte ich im SCL Quellcode kein Fehler feststellen und habe daraufhin die gleiche Berechnung in AWL programmiert und hier war das Resultat richtig.

In die SCL-Funktion habe ich dann ein paar REAL Variablen und Berechnungen eingefügt um den Fehler zu lokalisieren.

Picture 1.jpg
Bild 1 SCL-Funktion kompiliert mit Dell Precision M4500

In Bild 1 ist die online Ansicht der Funktion ersichtlich

Die Variablen var1, var2 und var3 sind im REAL Format deklariert.
Es fällt auf dass die Variable var1 mit dem Wert 4.182 beschrieben wird und trotzdem steht der Wert 4.0 in der Variablen.

Dieses Verhalten ist unabhängig von der verwendeten CPU. Die von mir getesteten CPU's (S7-317, IM151-8 und Embedded CPU EC31) wiesen alle das gleiche Verhalten auf.

Ich habe daraufhin das Programm mit einem 2ten PC, einem Siemens FieldPG kompiliert, runtergeladen und getestet.
Das Resultat ist in Bild 2 ersichtlich.

Picture_2.jpg
Bild 2 SCL-Funktion kompiliert mit Siemens FieldPG

Wie aus Bild 2 ersichtlich wird die Zuweisung der Variablen jetzt korrekt ausgeführt.

Ich habe das Programm insgesammt auf 5 PC's kompiliert mit dem Ergebnis, dass 3 PC's den Fehler produzieren und 2 PC's ein fehlerfreies Progamm erstellen.

Daraufhin habe ich mir das fehlerhafte sowie das fehlerfreie Progamm mit Step7 V11 geladen und anschliessend Online in Step 7 Professional 2010 V5.5 angesehen.

Picture_3.jpg
Bild 3 Fehlerhaftes Programm Online-Ansicht unter Step7 V5.5


Picture_4.jpg
Bild 4 Fehlerfreies Programm Online-Ansicht unter Step 7 V5.5

Aus den Bildern 3 und 4 sind die Unterschiede ersichtlich.
Ebenfalls sieht man dass der SCL-Kompiler in Tia-Portal Step7 V11 anders als Step7 V5.5 die REAL-Konstanten schon beim Kompilieren in DINT gewandelt wird.

Zum Vergleich ist die gleiche SCL-Funktion mit Step7 V5.5 kompiliert in Bild 5 ersichtlich.

Picture_5.jpg
Bild 5 SCL-Funktion kompiliert mit Step7 V5.5


Eine Anfrage bei der Siemens Hotline hat nach Analyse der einzelnen PC' s ergeben, dass die Installations-Historie, d.h. welche Siemens-Produkte zu welcher Zeit und unter welchem Betriebssystem installiert wurden, verantwortlich für dieses Verhalten sein soll.

Wir haben in unserer Firma immer nur mit ordentlich lizenzierten Software-Produkten von Siemens gearbeitet. Es wurden des öfteren Updates und Service-Packs von Siemens installiert.

Die vom Siemens-Techniker vorgeschlagene Lösung besteht aus einer Neu-Formatierung der PC's mit anschliessender Neu-Installation des TIA-Portal Software.

Wenn dieses Problem in unserem Betrieb schon bei 3 von 5 PC's nachweisbar ist, dann würde es mich doch interessieren ob noch weitere Nutzer von Tia-Portal V11 betroffen sind.

Die Folgen dieses Fehlers könnten unter Umständen schon erheblich sein.


Falls jemand Zeit und Lust hat diesen kleinen Test auszuführen würde ich mich über Rückmeldungen freuen.


LG J-M
 
Zuletzt bearbeitet von einem Moderator:

SHU

Member
Beiträge
6
Punkte Reaktionen
2
Hallo

ich habs probiert V11 SP2 Update 5 unter Win7-64 Dell Prec
Ergebnis: kein Fehler, der Compiler interpretiert die Zahlen korrekt als Gleitpunkt!

mich würde interessieren: wenn du die Zahl als 4.182E0 angibst, wass passiert dann?

Grüsse
 
OP
B

BlackLizzard

Member
Beiträge
10
Punkte Reaktionen
5
Zuviel Werbung?
->Hier kostenlos registrieren
@ SHU

Ich habe die Zahl mit 4.182E0 angegeben und das Resultat ist nach wie vor falsch.

Das Problem liegt laut Annahme des Siemens Techniker in der Hotline in dem Tatbestand dass auf den betroffenen PC' s verschiedene Software Packete unter Windows XP Service Pack3 installiert waren, welche nicht offiziell von Siemens für dieses Betriebssystem freigegeben wurde.

Dieser Zustand ist wahrscheinlich mit den Updates des Betriebssystemes eingetreten.

Somit wird wohl kein, unter Windows 7 laufender Rechner, betroffen sein.

Grüsse
 

Voxe

Well-known member
Beiträge
286
Punkte Reaktionen
36
Hallo,

habe das Problem, bzw. denke es. Rechner mit Win7 64Bit. TIA V11 SP 2 Basic.

@BlackLizzard, versuche doch mal anstelle 4.182, nur 4.18. Weil das klappt bei mir.

Gruß, Voxe
 

LowLevelMahn

Well-known member
Beiträge
766
Punkte Reaktionen
90
Das Problem liegt laut Annahme des Siemens Techniker in der Hotline in dem Tatbestand dass auf den betroffenen PC' s verschiedene Software Packete unter Windows XP Service Pack3 installiert waren, welche nicht offiziell von Siemens für dieses Betriebssystem freigegeben wurde.

hört sich aber sehr sehr magisch an
 
OP
B

BlackLizzard

Member
Beiträge
10
Punkte Reaktionen
5
@LowLevelMahn

Jo, mich hat der Service-Techniker der Hotline mit dieser Aussage auch nicht überzeugt.
Ich hatte das Gefühl dass damit für Ihn das Problem gelöst war.

Ich persönlich finde dass Siemens hier doch recht arglos vorgeht. Ich will mir gar nicht ausmalen was passiert wenn jemand ahnungslos auf diese Weise eine Fehlberechnung in eine Atomzentrale oder eine Raffinerie einspeist.
Unter Umständen tritt der Fehler ja nicht unmittelbar auf.

Grüsse
 

Voxe

Well-known member
Beiträge
286
Punkte Reaktionen
36
@BlackLizzard,

da ich TIA nicht professionell einsetze, werde ich heute abend noch einmal gucken was bei mir passiert.
Wollte gestern abend eine Berechnung in SCL programmieren und mir wurde halt mein Ergebnis so wie bei dir angezeigt.

Gruß, Voxe
 

Larry Laffer

Supermoderator
Teammitglied
Beiträge
13.091
Punkte Reaktionen
2.718
Zuviel Werbung?
->Hier kostenlos registrieren
Hallo,
wie sieht denn der davon erzeugte S7/MC7-Code aus ?
Stehen da die Zahlen so drin, wie sie sollen ?

Prinzipiell habe ich mich aber auch noch nie auf den Auto-Cast des SCL-Compilers verlassen. Ich hatte da ganz am Anfang auch mal "nette" Berechnungs-Ergebnisse bekommen.

Gruß
Larry
 

Ralle

Supermoderator
Teammitglied
Beiträge
14.626
Punkte Reaktionen
3.482
Bei mit funktioniert es. (PLCSIM)

XP SP3, Step7, ProTool, WinCCFlex, TIA V11 SP2 UPD5, Starter etc.

Also ich habe das XP seit 3 Jahren am laufen mit allen Updates etc. von Siemens und MS.
Die Erklärung von der Hotline halte ich für Bullshit.
 
OP
B

BlackLizzard

Member
Beiträge
10
Punkte Reaktionen
5
@ Larry Laffer

Ich weiss leider nicht wie ich mir den MC7 Code unter Tia Portal V11 ansehen kann.

Ich habe das einmal das fehlerhafte und einmal das fehlerfreie Programm geladen und mir dann jeweils mit der Step7 V5.5 im Online Modus das jeweilige Programm auf der CPU angeschaut.

Dies ist in den Bildern 3 und 4 zu sehen.

In Bild 5 ist das Programm zu sehen wenn das mit Step7 V5.5 erstellt wurde.

Jedenfalls arbeitet Step7 V5.5 komplett anders als Step7 V11.

Grüsse
 

Larry Laffer

Supermoderator
Teammitglied
Beiträge
13.091
Punkte Reaktionen
2.718
Zuviel Werbung?
->Hier kostenlos registrieren
Die Erklärung von der Hotline halte ich für Bullshit.

Das war auch mein erster Gedanke ... Aber der SCL-Code wird ja von deinem Arbeits-PC in MC7-Code umgesetzt und nicht erst in der SPS.
Wir wissen nun aber, dass Siemens aufgrund der Verwendung von uralten Frameworks und Begleitfunktionen) nicht unbedingt "State of the Art" ist ... da kann ich mir genau das sehr gut vorstellen ...

Gruß
Larry
 

Ralle

Supermoderator
Teammitglied
Beiträge
14.626
Punkte Reaktionen
3.482
Das war auch mein erster Gedanke ... Aber der SCL-Code wird ja von deinem Arbeits-PC in MC7-Code umgesetzt und nicht erst in der SPS.
Wir wissen nun aber, dass Siemens aufgrund der Verwendung von uralten Frameworks und Begleitfunktionen) nicht unbedingt "State of the Art" ist ... da kann ich mir genau das sehr gut vorstellen ...

Gruß
Larry

Na ja, aber die haben dafür einen Compiler, da sollten sie doch nicht für irgendwelche Berechnungen auch noch extra irgendwelche DLL etc. aus dem MS-Betriebssystem verwenden. Wenn sie das mit ihren eigenen Paketen nicht ordentlich auf die Reihe bekommen, dann hab ich langsam Angst vor meinen Anlagen, wer weiß, was die Morgen so produzieren...
 

ducati

Well-known member
Beiträge
6.015
Punkte Reaktionen
1.165
Die Erklärung von der Hotline halte ich für Bullshit.

Wer schon öffters mal ne Supportanfrage an Siemens gestellt hat, weiss dass diese Antwort immer sofort kommt, wenn man sich nicht an die Installationsrichtlinien bzw. Freigaben gehalten hat.

Ob die Antwort jetzt Bullshit ist oder nicht, Support gibts nur wenn ich ne freigegebene Installation habe. Und wenn man einigermassen von Problemen verschont werden will, sollte man sich auch tunlichst an die Richlinien halten. Das sind so meine Erfahrungen.

Also interessant wäre ja hier zu schauen, ob das Problem auch bei jemandem mit freigegebener Installation auftritt. Erst dann hast Du wieder ein Argument beim Support.

Gruß.
 

Larry Laffer

Supermoderator
Teammitglied
Beiträge
13.091
Punkte Reaktionen
2.718
Zuviel Werbung?
->Hier kostenlos registrieren
@Ducati:
Ich habe jetzt nichts davon bemerkt, dass der TE eine nicht freigegebene Variante verwendet.
Klar - TIA sollte man sich natürlich verkneifen - da hast du schon Recht ... von da her ... :cool:

@Ralle:
Ich hatte jetzt auch nicht versucht, das zu rechtfertigen - aber ich glaube, so weit kennst du mich schon ...

Gruß
Larry
 

ducati

Well-known member
Beiträge
6.015
Punkte Reaktionen
1.165
Das Problem liegt laut Annahme des Siemens Techniker in der Hotline in dem Tatbestand dass auf den betroffenen PC' s verschiedene Software Packete unter Windows XP Service Pack3 installiert waren, welche nicht offiziell von Siemens für dieses Betriebssystem freigegeben wurde.

Scheint doch irgendwas nicht ok zu sein...
 

vollmi

Well-known member
Beiträge
4.937
Punkte Reaktionen
1.099
Scherzkeks. Wenns nach Siemens ginge dürfte auf einem PG überhaupt nix anderes sein als das was explizit zugelassen ist. Will heissen selbst wenn du da Office draufknallst stellen sie sich auf den Standpunkt "nicht freigegeben"

Vernünftige Software überprüft welche Betriebssystembestandteile benötigt werden und in welcher Version und benutzt dann genau nur diese. Oder noch besser bringt alles selbst mit was sie zur korrekten Funktion benötigt.

mfG René
 

Larry Laffer

Supermoderator
Teammitglied
Beiträge
13.091
Punkte Reaktionen
2.718
Zuviel Werbung?
->Hier kostenlos registrieren
da ich in der Sache eine ganz besondere Meinung habe - was soll das denn an Software sein ?
Ein sauber programmiertes Programm interessiert es nicht, was sonst noch so auf dem Rechner installiert ist. Aber Siemens verträgt sich ja schon nicht mir sich selbst ...
 

ducati

Well-known member
Beiträge
6.015
Punkte Reaktionen
1.165
Wenns nach Siemens ginge dürfte auf einem PG überhaupt nix anderes sein als das was explizit zugelassen ist. Will heissen selbst wenn du da Office draufknallst stellen sie sich auf den Standpunkt "nicht freigegeben"

Genau so ist es auch, wenn Du (kostenlosen) Support von Siemens haben willst.
Office ist in aller Regel in einer bestimmten Version freigegeben.

Bei Step7 ist in aller Regel ja noch unkompliziert, aber wenn Du abundzu mit PCS7 gearbeitet hast, wo ne Unmenge an Teilkomponenten enthalten sind, wirst Du mit irgendwelchen wilden Installationen keine Freude haben.

PS: Ich verteidige hier nicht Siemens, ich berichte nur von meinen Erfahrungen.

Gruß
 

Larry Laffer

Supermoderator
Teammitglied
Beiträge
13.091
Punkte Reaktionen
2.718
PS: Ich verteidige hier nicht Siemens, ich berichte nur von meinen Erfahrungen.

Hörte sich für mich erst so an - deshalb habe ich dir ein bißchen Gegenwind gegeben ...
Unser aller Erfahrungen decken sich ja irgendwie - es ändert sich nur leider nichts - im Gegenteil : es wird immer schlimmer ...
 
Oben