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

Page 1 of 2 12 LastLast
Results 1 to 10 of 11

Thread: SCL: Zeiger auf eine Position eines Datenbereichs

  1. #1
    Join Date
    24.07.2019
    Posts
    4
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Guten Tag!

    Wie kann ich in SCL einer Variable den Zeiger auf eine Position eines Datenbereichs zuordnen?

    #data := DB185.DBX0.0 Byte 167;

    Funktioniert leider nicht.

    Wenn mir jemand einfach die Zeile erklären könnte wäre ich froh, denn gegooglet habe ich bereits, also glaube ich nicht dass mir irgendwelche Verweise weiterhelfen.

    Liebe Grüße
    Reply With Quote Reply With Quote SCL: Zeiger auf eine Position eines Datenbereichs  

  2. #2
    Join Date
    22.03.2007
    Location
    Detmold (im Lipperland)
    Posts
    12,262
    Danke
    411
    Erhielt 2,515 Danke für 2,093 Beiträge

    Default

    Wenn Data ein Anypointer ist dann brauchst du Data nur die Variable zuweisen von der du den Pointer haben willst.
    In deinem Beispiel würde aber (wenn es der Pseudo-Code tun würde) nicht auf eine Position innerhalb eines Datenbereichs gezeigt sondern auf den Datenbereich selbst ...

    Gruß
    Larry

  3. #3
    Join Date
    15.05.2015
    Posts
    314
    Danke
    9
    Erhielt 58 Danke für 57 Beiträge

    Default

    Hallo welche CPU und Step 7 Version verwendest du ?

    Im nicht optimierten Bereich müsste das mit SFC20 Blkmov funktionieren. Bei neuen CPUs kann man Poke verwenden, gibt aber sicher bessere Ansätze, was hast du eig vor? Kannst di den Pointer nicht symbolisch z.B als UDT übergeben?

  4. #4
    bumble.bee is offline Neuer Benutzer
    Themenstarter
    Join Date
    24.07.2019
    Posts
    4
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default

    Hallo Larry! Noch gibt es keine Variable. D.h. ich muss mir zuerst den Pointer erstellen? Wie mache ich das denn?
    Liebe Grüße

  5. #5
    bumble.bee is offline Neuer Benutzer
    Themenstarter
    Join Date
    24.07.2019
    Posts
    4
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default

    Hallo TC-Inc!

    Es handelt sich um die S7-1200 (CPU 1215C DC/DC/DC); Firmwareversion V 4.1.3; Step7 Version V13; TIA V13.

    Ich möchte gerne T_SEND_C ausführen aber mit SCL und nicht mit FUP. Im Endeffekt möchte ich gerne sämtliche Zustände auch in einem App (C#) visualisieren und von dort aus ändern können.

    Dein Hinweis POKE hat mich auf PEEK gestoßen. Denkst du nicht dass das eventuell das Richtige wäre?

    Code:
    #data := PEEK(area:= 16#84,
         dbNumber := 185,
         byteOffset := 167);
    Liebe Grüße.
    Last edited by bumble.bee; 24.07.2019 at 14:03.

  6. #6
    Join Date
    27.06.2015
    Location
    Hamburg
    Posts
    882
    Danke
    160
    Erhielt 242 Danke für 200 Beiträge

    Default

    Moin,
    warum sparst du dir nicht den ganzen Zirkus, packst deine Sendedaten in eine UDT und übergibst das Ganze ganz einfach symbolisch an den T_Send_C Baustein? Mit ein bisschen Struktur in seinem Programm braucht man auf den neuen Steuerungen zu 99,9 % keinen einzigen absolut adressierten Pointer

  7. Folgende 3 Benutzer sagen Danke zu Howard für den nützlichen Beitrag:

    Fluffi (25.07.2019),Olli_BS (24.07.2019),RedCali (04.09.2019)

  8. #7
    Join Date
    06.11.2008
    Location
    Steinhagen
    Posts
    518
    Danke
    59
    Erhielt 52 Danke für 50 Beiträge

    Default

    Moin Howard,

    Mit ein bisschen Struktur in seinem Programm braucht man auf den neuen Steuerungen zu 99,9 % keinen einzigen absolut adressierten Pointer
    Kann man nicht sogar von 100% ausgehen? An welcher Stelle sind die 0,1% zu finden?

    VG

    Mario
    _____________________________________________
    "Von nichts kommt was" von B. Trüger

  9. #8
    Join Date
    27.06.2015
    Location
    Hamburg
    Posts
    882
    Danke
    160
    Erhielt 242 Danke für 200 Beiträge

    Default

    Ich wollte noch 0,1% Diskussion-Spielraum lassen

  10. #9
    Join Date
    06.11.2008
    Location
    Steinhagen
    Posts
    518
    Danke
    59
    Erhielt 52 Danke für 50 Beiträge

    Default

    Dafür ein: !
    _____________________________________________
    "Von nichts kommt was" von B. Trüger

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

    Howard (25.07.2019)

  12. #10
    bumble.bee is offline Neuer Benutzer
    Themenstarter
    Join Date
    24.07.2019
    Posts
    4
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Vielen Dank für eure Antworten bisher. Ich habe alle eure Vorschläge versucht. Ich konnte mein Problem aber immer noch nicht beheben.

    Ich habe nun folgendes bisher. Zumindest erhalte ich die ein oder andere Rückmeldung. Der Baustein wird zyklisch aufgerufen. Ein erfolgreiches Senden war aber noch nicht dabei:

    Code:
        "TSEND_C_DB"(REQ := "TSEND_C_DB".REQ,
                     CONT := "TSEND_C_DB".CONT,
                     COM_RST := "TSEND_C_DB".COM_RST,
                     LEN := 167,
                     DONE => "TSEND_C_DB".DONE,
                     BUSY => "TSEND_C_DB".BUSY,
                     ERROR => "TSEND_C_DB".ERROR,
                     STATUS => "TSEND_C_DB".STATUS,
                     CONNECT := #connection,
                     DATA := P#DB185.DBX0.0 BYTE 167,
                     ADDR := #variantinout);
    Könnt ihr mir vielleicht hierbei weiterhelfen?

    Liebe Grüße
    Last edited by bumble.bee; 04.09.2019 at 10:21.

Similar Threads

  1. Step 7 Position eines Stückguts
    By TIA123 in forum Simatic
    Replies: 67
    Last Post: 12.08.2019, 15:04
  2. Step 7 SCL Zugriff auf Teil eines UDT
    By dentech in forum Simatic
    Replies: 12
    Last Post: 16.01.2017, 10:55
  3. TIA Migration eines Projektes auf eine andere Steuerungsplattform
    By rostiger Nagel in forum Simatic
    Replies: 2
    Last Post: 06.06.2016, 08:27
  4. Position eines DSAM berechnen
    By Commander_Titte in forum CODESYS und IEC61131
    Replies: 0
    Last Post: 09.06.2009, 22:22
  5. Zeiger/Pointer auf eine Struktur
    By logo78 in forum Simatic
    Replies: 2
    Last Post: 29.03.2009, 17:09

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •