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

Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 14 von 14

Thema: MID Funktion beginnt an falscher Stelle

  1. #11
    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 Alpini Beitrag anzeigen
    Ich versuche aus einer String Variable, die in einem Datenbaustein liegt, mit der MID Funktion zwei Zeichen zu extrahieren. Der String hat folgenden Aufbau:

    "<01BOX000001>"

    aus dem String brauche ich das 2. und 3. Zeichen, also die "01". Als "P" Parameter habe ich der MID Funktion 2 und als "L" Parameter ebenfalls die 2 übergeben.
    Hier ist noch mal ein kurzes Programmbeispiel:

    Code:
    ORGANIZATION_BLOCK OB 1
    TITLE =Hauptprogramm
    //15
    AUTHOR : KAI
    FAMILY : SPSFORUM
    NAME : 'STRING'
    VERSION : 1.0
     
    VAR_TEMP
      OB1_EV_CLASS : BYTE ; //Bits 0-3 = 1 (Coming event), Bits 4-7 = 1 (Event class 1)
      OB1_SCAN_1 : BYTE ;   //1 (Cold restart scan 1 of OB 1), 3 (Scan 2-n of OB 1)
      OB1_PRIORITY : BYTE ; //Priority of OB Execution
      OB1_OB_NUMBR : BYTE ; //1 (Organization block 1, OB1)
      OB1_RESERVED_1 : BYTE ;   //Reserved for system
      OB1_RESERVED_2 : BYTE ;   //Reserved for system
      OB1_PREV_CYCLE : INT ;    //Cycle time of previous OB1 scan (milliseconds)
      OB1_MIN_CYCLE : INT ; //Minimum cycle time of OB1 (milliseconds)
      OB1_MAX_CYCLE : INT ; //Maximum cycle time of OB1 (milliseconds)
      OB1_DATE_TIME : DATE_AND_TIME ;   //Date and time OB1 started
    END_VAR
    BEGIN
    NETWORK
    TITLE =STRING
     
          CALL FC    26 (
               IN                       := DB200.IN_STRING,
               L                        := 2,
               P                        := 2,
               RET_VAL                  := DB200.OUT_STRING);
          NOP   0; 
     
    END_ORGANIZATION_BLOCK
    Zitat Zitat von Alpini Beitrag anzeigen
    Gibt es eine Möglichkeit Strings direkt zu beobachten? Da ich noch etwas grün bin, habe ich mir beholfen mit Blockmove den String in ein Char-Array zu kopieren.
    Einen STRING kannst Du in der VAT beobachten.

    Gruß Kai
    Angehängte Grafiken Angehängte Grafiken
    • Dateityp: jpg VAT.jpg (264,5 KB, 12x aufgerufen)
    Angehängte Dateien Angehängte Dateien

  2. Folgender Benutzer sagt Danke zu Kai für den nützlichen Beitrag:

    Alpini (02.04.2008)

  3. #12
    Alpini ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.04.2008
    Ort
    Chemnitz/Sachen
    Beiträge
    15
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    so und schon gibt der Alpini positive Erfolgsmeldung, MID liefert endlich etwas Mittiges

    Nochmals Vielen Dank!

  4. #13
    Alpini ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.04.2008
    Ort
    Chemnitz/Sachen
    Beiträge
    15
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke auch dir Kay für den Tip mit dem Beobachten, um die interessanten ersten zwei Bytes + ein paar weitere zu beobachten ist das wohl auf alle Fälle sinnvoller also meine Methode. Um komplette, lange Strings zu beobachten ist vielleicht sogar meine Blockmove Methode nicht so schlecht, wenn man vom zusätzlichen Speicherplatzbedarf für den Char-Array DB mal absieht

  5. #14
    Registriert seit
    27.08.2003
    Ort
    Schweitenkirchen
    Beiträge
    472
    Danke
    101
    Erhielt 73 Danke für 59 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Strings beobachten:

    Zum beobachten nicht auf die Brille drücken, sondern den baustein Online öffen. Leider werden Strings dann nur mit F5 aktualisiert.

    Gruss Andy
    Wenn ich einen meiner Finger in eines deiner Nasenlöcher stecke, haben wir beide nen Finger in der Nase

Ähnliche Themen

  1. Abfangen von falscher Eingabe
    Von Beckx-net im Forum Simatic
    Antworten: 23
    Letzter Beitrag: 02.12.2017, 20:31
  2. Falscher PLC Typ angeschlossen
    Von gamble im Forum CODESYS und IEC61131
    Antworten: 2
    Letzter Beitrag: 11.04.2011, 20:43
  3. Die Zukunft beginnt genau JETZT...Training für RT-Ethernet und Soft-PLC
    Von ProFieldTec im Forum Werbung und Produktneuheiten
    Antworten: 1
    Letzter Beitrag: 29.05.2010, 01:53
  4. Falscher Switch?
    Von Borsti im Forum Feldbusse
    Antworten: 6
    Letzter Beitrag: 30.07.2007, 04:54
  5. Falscher FC 105 wird eingefügt
    Von Jetzi83 im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 13.04.2006, 11:02

Lesezeichen

Berechtigungen

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