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

Ergebnis 1 bis 5 von 5

Thema: INT in Pointer integrieren

  1. #1
    Registriert seit
    13.09.2013
    Beiträge
    8
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo SPS Welt,

    ich habe mal eine Frage:

    Kann man ein INT-Wert in einen Pointer integrieren.

    z.B wenn DB1.DBW0 den INT Wert 10 hat geht das das man diesen Wert in einen Pointer integriert also so

    P#DB2.DBX(INT-Wert).0 also P#DB2.DBX(10).0

    Geht das und wenn ja wie sieht die korrekte schreibweise aus?
    Zitieren Zitieren INT in Pointer integrieren  

  2. #2
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.191
    Danke
    923
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Schau Dir in der Step7-Hilfe oder hier in der FAQ das Format des Datentyps ANY an, dann siehst Du wo Dein INT-Wert integriert werden muß.
    Etwa so:
    Code:
    L    #IntWert
    SLD  3
    L    P#DBX0.0
    +D
    LAR1 P##MyAny
    T    D [AR1,P#6.0]
    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  3. Folgender Benutzer sagt Danke zu PN/DP für den nützlichen Beitrag:

    1010 (30.04.2015)

  4. #3
    1010 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    13.09.2013
    Beiträge
    8
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke schon mal aber ich glaube in meinem nächsten Leben werde ich Schlosser

    Ich habe die Hilfe schon durchgelesen komm aber damit nicht ganz klar.

    Also ich will einen SFC 20 (Blkmov) beschreiben und so sollte das aussehen:

    EN --- E0.0
    SRCBLK ---DB1.DBX0.0 BYTE8
    RET_VAL --- MW200
    DSTBLK --- ????

    ???? --- hier soll dan der ANY bzw. DB2.DBX (INT-WERT).0 hin

    wie sieht das denn dann genau aus??

  5. #4
    1010 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    13.09.2013
    Beiträge
    8
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    OK alles auf Anfang, habs endlich hinbekommen!! *JUHU*

  6. #5
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.191
    Danke
    923
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    In TEMP eine ANY-Variable "tempAny" anlegen, alle 10 Bytes der Variable mit den nötigen Werten beschreiben (siehe FAQ) und dann diese Variable an BLKMOV.DSTBLK angeben.

    Beispiel für Zieladresse "DB2.DBX(IntWert).0 BYTE 8":
    Code:
    LAR1  P##tempAny                  //Adresse der TEMP-ANY-Variable in AR1 laden
    
    L     B#16#10                     //Syntax-ID 10h für S7
    T     B [AR1,P#0.0]
    L     B#16#2                      //Datentyp BYTE
    T     B [AR1,P#1.0]
    L     8                           //Anzahl (Wiederholungsfaktor): 8 Byte
    T     W [AR1,P#2.0]
    L     2                           //Nummer des Ziel-DB: DB2
    T     W [AR1,P#4.0]
    
    L     #IntWert
    SLD   3                           //--> P#(IntWert).0
    L     P#DBX0.0
    +D                                //--> P#DBX(IntWert).0
    T     D [AR1,P#6.0]
    
    CALL  "BLKMOV"
     SRCBLK :=P#DB1.DBX0.0 BYTE 8
     RET_VAL:=#tempInt
     DSTBLK :=#tempAny
    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

Ähnliche Themen

  1. 2 16 Bit INT nach REAL, aber in 2 16 Bit INT Register (Modbus)
    Von knuppel im Forum Programmierstrategien
    Antworten: 2
    Letzter Beitrag: 27.02.2015, 08:50
  2. Antworten: 1
    Letzter Beitrag: 17.07.2014, 14:34
  3. Antworten: 10
    Letzter Beitrag: 05.12.2013, 18:33
  4. Antworten: 25
    Letzter Beitrag: 06.07.2010, 23:25
  5. INT TO ARRAY-INT aus DB
    Von hoT im Forum Simatic
    Antworten: 0
    Letzter Beitrag: 23.11.2009, 17:30

Lesezeichen

Berechtigungen

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