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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Textübernahme

  1. #1
    Registriert seit
    28.06.2007
    Beiträge
    66
    Danke
    6
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    hallo, ich möchte gerne das meine Ventileingänge abgefragt werden, und ich mir auf dem Panel in einem EA- Feld anschauen kann, ob das Ventil Auf oder Zu ist.

    habe dazu folgendes hier gefunden

    U "CZ1-V008 Zu" //Rückmeldung
    SPBN ende
    L 3 //Maximale Länge String
    T DB2.DBB 2
    L 2 //Aktuelle Länge des String
    T DB2.DBB 3
    L 'Zu'
    T DB2.DBW 4
    ende: NOP 0


    was ich allerdings nicht ganz verstehe, ich erstelle mir eine variable string im db 2, und dann schreib ich das Ergebnis "Zu" ins DBW 4???
    Zitieren Zitieren Textübernahme  

  2. #2
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Weil im String, die ersten 2 Byte mit dem Stringkopf belegt sind, das hast du doch richtig gemacht.
    Du kannst übrigens auch ein symbolisches EA-Feld nutzen, dann kannst z.Bsp. feste Texte aus einer Symbolliste mit Integerwerten anzeigen.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  3. #3
    rene ist offline Benutzer
    Themenstarter
    Registriert seit
    28.06.2007
    Beiträge
    66
    Danke
    6
    Erhielt 2 Danke für 2 Beiträge

    Standard

    hmm, ralle ich habs noch nicht ganz verstanden, wenn ich meinen wert in DB2.DBW 4 geschrieben habe, wie lese ich ihn dann aus, in WinCC kann ich nicht direkt den Wert einlesen, dort kommt die fehler meldung ungültige adresse
    ich hab mal bilder beigefügt, vll, ist es dann einfacher zu verstehen
    Angehängte Grafiken Angehängte Grafiken

  4. #4
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Also wenn deine Variablenzuweisung stimmt sollte das so gehen. Bei mit gehts so. Leg den String im DB an (String [4] z.Bsp.) und such in WinCCFlex die Variable über ihren Sybolnamen raus, beim anlegen. Im Simulator geht es bei mir.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  5. #5
    rene ist offline Benutzer
    Themenstarter
    Registriert seit
    28.06.2007
    Beiträge
    66
    Danke
    6
    Erhielt 2 Danke für 2 Beiträge

    Standard

    ne ralle tut mir leid aber das klappt einfach nicht,kannst du mir vll. mal erklären wie das mit dem DB funktioniert?
    oder könntest du mal dein programm als foto reinstellen?

  6. #6
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    So sieht mein DB2 als Quelle aus:

    Code:
    DATA_BLOCK DB 2
    TITLE =
    VERSION : 0.1
    
    
      STRUCT     
       TestString : STRING  [4 ];    
      END_STRUCT ;    
    BEGIN
       TestString := ''; 
    END_DATA_BLOCK
    Einfach mal in eine leere Qulle reinkopieren und übersetzen. Dann hab ich WinCCFlex geöffnet und eine Variable angelegt. Dabei über Symbol den String "Teststring" aus dem DB2 zugewiesen, anschleißend das Ausgabefeld in ein Bild eingeügt und dann wurde erstmal nix angezeigt ! Mit der Variablentabelle in Step7 hab ich dann den String beschrieben. Byteweise in die Var-Tabelle, Byte 1 und 2 las Hex, Byte 3,4,5, als Zeichen. Länge und Zeichen 'Z' + 'u' + ' ' eintragen, dann wurde es auch angezeigt.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  7. #7
    rene ist offline Benutzer
    Themenstarter
    Registriert seit
    28.06.2007
    Beiträge
    66
    Danke
    6
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Zitat Zitat von Ralle Beitrag anzeigen
    So sieht mein DB2 als Quelle aus:

    Code:
    DATA_BLOCK DB 2
    TITLE =
    VERSION : 0.1
     
     
      STRUCT     
       TestString : STRING  [4 ];    
      END_STRUCT ;    
    BEGIN
       TestString := ''; 
    END_DATA_BLOCK
    Byteweise in die Var-Tabelle, Byte 1 und 2 las Hex, Byte 3,4,5, als Zeichen. Länge und Zeichen 'Z' + 'u' + ' ' eintragen, dann wurde es auch angezeigt.
    Vaiablen oder Symboltabelle?

    also denn schluss verstehe ich nicht ganz, "Byteweise...."-->wie soll man da eine hex zahl eingeben?
    Bei mir ist es so das er im runtime , eben gar nix anzeigt, auch die "000" im EA Feld nicht mehr. ich hab nur keine ahnung wieso, den rest hab ich denke ich auch so gemacht wie du


    Ich hoffe ich geh dir nicht zu sehr auf die nerven...........jeder anfang ist schwer........
    Geändert von rene (12.07.2007 um 14:19 Uhr)

  8. #8
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Hier mal die Variablentabelle.
    Angehängte Grafiken Angehängte Grafiken
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  9. #9
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Und hier das TP.
    Angehängte Grafiken Angehängte Grafiken
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  10. Folgender Benutzer sagt Danke zu Ralle für den nützlichen Beitrag:

    rene (12.07.2007)

  11. #10
    Registriert seit
    30.03.2005
    Beiträge
    2.096
    Danke
    0
    Erhielt 673 Danke für 541 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von rene Beitrag anzeigen
    hallo, ich möchte gerne das meine Ventileingänge abgefragt werden, und ich mir auf dem Panel in einem EA- Feld anschauen kann, ob das Ventil Auf oder Zu ist.

    habe dazu folgendes hier gefunden

    U "CZ1-V008 Zu" //Rückmeldung
    SPBN ende
    L 3 //Maximale Länge String
    T DB2.DBB 2
    L 2 //Aktuelle Länge des String
    T DB2.DBB 3
    L 'Zu'
    T DB2.DBW 4
    ende: NOP 0
    Der Programmcode ist so richtig, gib in mal genauso ein.

    Es gilt dabei:

    DB2.DBB2 = Maximale Länge String
    DB2.DBB3 = Aktuelle Länge String
    DB2.DBB4 = Störmeldung.Ventiltext[1] = 'A' oder 'Z'
    DB2.DBB5 = Störmeldung.Ventiltext[2] = 'u' oder 'u'
    DB2.DBB6 = Störmeldung.Ventiltext[3] = 'f' oder ''


    In Deinem Programmcode hast Du etwas anderes stehen:

    http://www.sps-forum.de/showpost.php...60&postcount=3

    Gruß Kai

Lesezeichen

Berechtigungen

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