Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 8 von 8

Thema: TIA Problem Rezepturverwaltung - Datensatz laden

  1. #1
    Registriert seit
    17.03.2008
    Beiträge
    103
    Danke
    4
    Erhielt 24 Danke für 23 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    ich möchte in einem Skript mit folgender Codezeile einen Datensatz einer Rezeptur laden:
    Code:
    LoadDataRecord 1, 1, Status
    In TIA kann ich dieses Skript nur übersetzen, wenn ich die Variable "Status" lokal im Skript deklariere. Verwende ich stattdessen eine HMI-Variable (intern o. PLC-Variable), wird die Syntaxprüfung mit Fehler "Falscher Parametertyp" beendet. Probiert habe ich mit TIA V13 und auch V13 SP1 auf verschiedenen Rechnern. In WinCCflexible hingegen lässt das Skript auch mit HMI-Variablen übersetzen. Gibt es hierfür eine Erklärung?

    Gruss
    HPE
    Zitieren Zitieren TIA Problem Rezepturverwaltung - Datensatz laden  

  2. #2
    Registriert seit
    13.10.2007
    Beiträge
    12.064
    Danke
    2.793
    Erhielt 3.288 Danke für 2.168 Beiträge

    Standard

    Grundsätzlich solltest du keine HMI interne Variable für den Status nutzen, sondern eine SPS Steuerungsvariable Merkerwort oder Datenwort.
    Bei einer internen Variablen bekommst du keinen richtigen Status wieder.
    - - -
    Wer als Werkzeug nur einen Hammer hat, sieht in jedem Problem einen Nagel.

  3. #3
    Registriert seit
    03.02.2015
    Ort
    Hatten
    Beiträge
    183
    Danke
    16
    Erhielt 32 Danke für 29 Beiträge

    Standard

    Vielleicht hilft Dir, die interne Variable mit dem Schlüsselwort "SmartTags("Variable")" anzusprechen? Mal verschiedene Datentypen ausporbiert? Byte/INT/WORD...

    @Rostiger Nagel: Warum sollte eine interne Variable den Status nicht korrekt speichern? Die Variablen sind doch alle vom gleichen Typ, nur die einen mit Verbindung zur SPS, die anderen ohne?

  4. #4
    Registriert seit
    13.10.2007
    Beiträge
    12.064
    Danke
    2.793
    Erhielt 3.288 Danke für 2.168 Beiträge

    Standard

    Zitat Zitat von JSEngineering Beitrag anzeigen
    Vielleicht hilft Dir, die interne Variable mit dem Schlüsselwort "SmartTags("Variable")" anzusprechen? Mal verschiedene Datentypen ausporbiert? Byte/INT/WORD...

    @Rostiger Nagel: Warum sollte eine interne Variable den Status nicht korrekt speichern? Die Variablen sind doch alle vom gleichen Typ, nur die einen mit Verbindung zur SPS, die anderen ohne?
    Warum weiß ich auch nicht, aber du bekommst vielleicht unter umständen eine Fertigmeldung, obwohl noch nicht alle Variablen umgeladen sind.
    - - -
    Wer als Werkzeug nur einen Hammer hat, sieht in jedem Problem einen Nagel.

  5. #5
    HPE ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    17.03.2008
    Beiträge
    103
    Danke
    4
    Erhielt 24 Danke für 23 Beiträge

    Standard

    Vielen Dank für die Antworten.
    @rostiger Nagel
    Die Empfehlung für SPS-Variablen kenne ich und genau da liegt ja das Problem. Sobald ich eine SPS-Variable verwende, kommt beim Übersetzen die Fehlermeldung "Falscher Parametertyp". Bei WinCCflex 2008 funktionierte es noch mit SPS-Variablen. Das gleiche Skript in TIA V13 bringt die Fehlermeldung.
    @JSEngineering
    Ich habe mit/ohne den Zusatz Smarttags und sämtliche Typen Byte/Int/Word/... probiert.

  6. #6
    Registriert seit
    13.10.2007
    Beiträge
    12.064
    Danke
    2.793
    Erhielt 3.288 Danke für 2.168 Beiträge

    Standard

    ich habe das jetzt gerade mal mit DW als Status probiert, ich bekomme keine Fehlermeldung V13SP1

    Code:
    LoadDataRecord "Parameter", SmartTags("001-IDB.Sollwerte.Parameter_Nr"), "001-IDB.Status.Parameter"
    Ich habe die Funktion über die Funktionsliste eingefüght.
    - - -
    Wer als Werkzeug nur einen Hammer hat, sieht in jedem Problem einen Nagel.

  7. Folgender Benutzer sagt Danke zu rostiger Nagel für den nützlichen Beitrag:

    HPE (09.02.2015)

  8. #7
    Registriert seit
    17.10.2007
    Beiträge
    263
    Danke
    5
    Erhielt 52 Danke für 48 Beiträge

    Standard

    Hallo,

    bei manchen Systemfunktionen (so auch bei dieser) möchte Siemens ganz gerne die Parameter in Anführungszeichen gesetzt haben:

    LoadDataRecord 1, 1, "Status"

    Wobei Status dann sowohl eine lokale als auch globale Variable sein kann.


    Gruß, Fred


    PS: War aber auch bei ProTool/Pro und WinCC Flex schon so!?

  9. Folgender Benutzer sagt Danke zu faust für den nützlichen Beitrag:

    HPE (09.02.2015)

  10. #8
    HPE ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    17.03.2008
    Beiträge
    103
    Danke
    4
    Erhielt 24 Danke für 23 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    @rostiger Nagel und faust
    Vielen Dank Euch beiden. Es funktioniert jetzt. Man darf beim letzten Parameter Status den Zusatz SmartTags nicht verwenden und man muss die Variable in Anführungszeichen setzen. Bei WinCCflex waren (zumindest in diesem Fall) keine Anführungszeichen notwendig.

    Gruss
    HPE

  11. Folgender Benutzer sagt Danke zu HPE für den nützlichen Beitrag:

    JSEngineering (09.02.2015)

Ähnliche Themen

  1. Antworten: 4
    Letzter Beitrag: 03.06.2014, 11:12
  2. TIA WinCC Tia laden fehlgeschlagen
    Von DoGis im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 10.04.2014, 09:01
  3. [TIA flex] Rezepturverwaltung
    Von rostiger Nagel im Forum HMI
    Antworten: 11
    Letzter Beitrag: 14.12.2012, 13:05
  4. Antworten: 5
    Letzter Beitrag: 10.02.2012, 10:14
  5. TIA -Laden in ? (was ist zu tun?)
    Von progmann im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 07.07.2011, 22:51

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •