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

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 28

Thema: AS-Register für S7-1500 ????

  1. #1
    Registriert seit
    09.08.2006
    Beiträge
    3.150
    Danke
    765
    Erhielt 558 Danke für 466 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    irgendwie gibt's die Ansicht der AS-Register im TIA für 1500 nicht mehr???

    Screenshot für TIA mit 300er:
    AS-Register.jpg

    Wie kann ich mir online die Adressregister oder DB Register für 1500er anschauen???

    Gruß.
    Zitieren Zitieren AS-Register für S7-1500 ????  

  2. #2
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    9.414
    Danke
    799
    Erhielt 2.772 Danke für 2.239 Beiträge

    Standard

    Kann man beim Beobachten von AWL-Code die entsprechenden Spalten einblenden?

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  3. #3
    ducati ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    09.08.2006
    Beiträge
    3.150
    Danke
    765
    Erhielt 558 Danke für 466 Beiträge

    Standard

    nicht das ich wüsste wie .....

  4. #4
    Registriert seit
    24.04.2013
    Beiträge
    306
    Danke
    21
    Erhielt 150 Danke für 86 Beiträge

    Standard

    Hallo ducati

    1200 und 1500 verwenden ein anderes Modell wie 300 und 400. Nur bei AWL Bausteinen wird ein Registersatz angezeigt, weil für AWL die Welt der 300/400 simuliert wird.

    Den ersten Generationen der 1200 konnte man noch unter den Rock schauen. Die haben deutlich mehr Register. Für mich hat sich das dargestellt als ob es jeweils über 32 Register für Bits, Bytes, Words und DWords gibt. Statt zwei DB und AR Register gibt es über 32 kombinierte Adressregister. Und für REAL gibt es nochmals mindestens 4 Register. Das macht mehr als 164 Register ... mindestens. Denn bei Bausteinaufrufen werden Parameter über einen weiteren Registersatz geschoben.

    Ob es bei der 1500 auch so ist, weiß ich nicht. Die weigert sich bisher erfolgreich sich unter den Rock sehen zu lassen, so wie neuere 1200er auch. Aber ich gehe davon aus, dass es dort auch so ist. Ein DB Register gibt es nicht mehr, deswegen braucht es auch diese Ansicht nicht.

    'n schön' Tach auch
    HB

  5. #5
    ducati ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    09.08.2006
    Beiträge
    3.150
    Danke
    765
    Erhielt 558 Danke für 466 Beiträge

    Standard

    Hmm, ja hab ich mir auch schon so ähnlich gedacht... Nur fuer die FehlerSuche in nem 1500er AWL Programm wäre es hilfreich zu sehen, welchen Wert AR1 gerade hat, auch wenn's das nur im Quelltext gibt und nicht mehr im compilierten Programm...
    Ist halt alles ne Kruecke irgendwie...

  6. #6
    Registriert seit
    25.01.2008
    Ort
    Hamburg
    Beiträge
    224
    Danke
    12
    Erhielt 63 Danke für 33 Beiträge

    Standard

    Es gibt noch die lokale Fehlerbehandlung mit dem Befehl Get_Error, was die allerdings bei AWL in Verbindung mit AR ausspuckt kann ich die nicht sagen.
    Die Fehlerinformation dieser Anweisung gibt aber einiges an Informationen zurück.
    It is not the strongest of the species that survives, nor the most intelligent that survives. It is the one that is most adaptable to change.


  7. #7
    ducati ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    09.08.2006
    Beiträge
    3.150
    Danke
    765
    Erhielt 558 Danke für 466 Beiträge

    Standard

    Zitat Zitat von miasma Beitrag anzeigen
    Es gibt noch die lokale Fehlerbehandlung mit dem Befehl Get_Error, was die allerdings bei AWL in Verbindung mit AR ausspuckt kann ich die nicht sagen.
    Die Fehlerinformation dieser Anweisung gibt aber einiges an Informationen zurück.
    ja nee Es geht nicht um Errorhandling....

    Es war früher in der 300er und Step7 Classic einfach komfortabel, wenn man in jeder Programmzeile online beobachten konnte, wo das Adressregister, DB-Register oder VKE usw. gerade stand...

    Gruß.

  8. #8
    Registriert seit
    24.04.2013
    Beiträge
    306
    Danke
    21
    Erhielt 150 Danke für 86 Beiträge

    Standard

    Hallo Ducati

    früher, bei der AS400 hast du dem Prozessor der AS400 (Siemens ASIC, also Eigengewächs) direkt in die wenigen Register sehen können die dieser hatte.
    Später, bei der AS300 war dem schon nicht mehr, denn die verschiedenen Prozessoren, die im Laufe der Zeit darin verbaut wurden, haben alle den Registersatz der AS400 simuliert. Ziemlich vollständig, aber doch keine 100%. Geht schon damit los, dass die 400 vier Akkus hat die 300 nur zwei.

    Seit der 1200 ist es vorbei damit. Die 1200 hat kein AWL, also warum sollte S. dann den Registersatz simulieren lassen. Von der 1500 wissen wir es nicht. Auf einer Messe hat einer auf dem Vertrieb gesagt, dass die Hardware der 1516 und der 319 praktisch die Gleiche wäre. Dafür ist die 1516 aber deutlich schneller. Vermutung meinerseits, weil sie eben den Registersatz der 400 nicht mehr emuliert. Und die 1518 habe eine bessere Hardware und ist nochmals deutlich schneller.

    Bisherige Konsequenz. Es gibt keine Haltepunkte mehr. Dafür gibt es den Trace. Wäre schon schön wenn die Haltepunkte endlich mal kämen. In SCL und KOP/FUP wäre das eine echte Bereicherung. AWL verwende ich nicht mehr. Nur noch um es auszumerzen. Wenn vielleicht in 5 Jahren doch mal Haltepunkte wieder kommen, dann würde es mich weder wundern, noch würde es mich stören, wenn man nicht in jeder Zeile einen Haltepunkt setzen kann.
    Von der 1200 weiß ich, dass eine Addition in einem drei Address Befehl ausgeführt wird, der bereits das ENO mit bestimmt. Also nix mehr mit Lade lade +I Transfer, UN OV, SAVE, CLR, U BIE. Das ist nur noch ein Befehl. Da kann man also auch keinen Haltepunkt mehr mitten rein setzen. Wozu auch? Wenn ich die drei Speicherstellen sehen kann, dann weiß ich auch ohne Register was gerechnet wurde.

    Wenn ein Zugriff auf ein Array mittels Index aus einer Variablen in AWL hingeschrieben werden kann, ohne, dass ich mehrere Zeilen AWL mit AR Gymnastik verbrate, dann danke ich dem Werkstudenten, der das bei S. eingebracht hat. Dem AR Register weine ich keine Träne nach. Das hat mir deutlich zuviele Monate Fehlersuche eingebracht. Was hätte ich alles mit meinem langen Berufsleben Inbetriebsetzen können, wenn myArray[#i] in AWL bereits mit Step7 V5.0 oder 4.0 gegangen wäre.

    'n schön' Tach auch
    HB

  9. Folgende 3 Benutzer sagen Danke zu HelleBarde für den nützlichen Beitrag:

    Blockmove (12.10.2016),miasma (12.10.2016),rostiger Nagel (12.10.2016)

  10. #9
    ducati ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    09.08.2006
    Beiträge
    3.150
    Danke
    765
    Erhielt 558 Danke für 466 Beiträge

    Standard

    Der Hintergrund ist dieser BUG:

    Wenn ein PEW als Eingang an einem FC nicht erreichbar ist, wird FC nicht bearbeitet

    und dieser Workarround:

    Code:
    //Im FC "MyFC":
    //  IN: IN_POINTER : POINTER
    // Temp: Adr_0 : WORD
    // Temp: Adr_2 : DWORD
    
          L     P##IN_POINTER
          LAR1
    
          L W [ AR1 , P#0.0 ]
          T     #Adr_0
          L D [ AR1 , P#2.0 ]
          T     #Adr_2
    
          L     #Adr_0
          L     0
          ==I
          SPB   XXX1
          AUF DB [ #Adr_0]
    XXX1: NOP 0
    
          L D [ AR1 , P#2.0 ]
          LAR1
          L W [ AR1 , P#0.0 ] // Lesen des Wortes, diese Anweisung löst ggf. den OB122 wegen Peripheriezugriffsfehler aus
          T MW100      // hier liegt der Wert vom eingelesenen Signal
    Ansonsten bin ich auch kein Freund von Pointern, deshalb ist es für mich umso wichtiger ne Diagnosemöglichkeit zu haben, wenn ich trotzdem verwenden muss...

    Aber Danke für die Antwort, also gibt es diese Anzeige der Register nicht mehr!!!

    Gruß.

  11. #10
    Registriert seit
    24.04.2013
    Beiträge
    306
    Danke
    21
    Erhielt 150 Danke für 86 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Ducati

    was du offenstichtlich brauchst, ist die Prüfung, ob hinter einer Adresse auch tatsächlich eine Baugruppe existiert. Auch dafür braucht man keine Pointer mehr.
    Ich habe solche Stellen mit GET_ERROR ersetzt.

    Code:
    "dummy" := #para_in; // probeweiser Zugriff
    #err := GET_ERRID(); // oder so ähnlich
    if #err = 0 then
       // Baugruppe vorhanden
    else
       // Baugruppe tot
    end
    Man sollte für "dummy" keine Variable aus TEMP verwenden. Da sie nicht verwendet wird, schmeißt der Compiler die Zuweisung raus. Und damit auch den Zugriff. S. behauptet das sein ganz toll optimiert. Auf der einen Seite haben sie recht auf der anderen Seite ist es ärgerlich. Es stört zwar nicht, dass ich nun für "dummy" ein Merkerbit, byte, word, ... je nach dem was #para_in für einen Typ hat. Aber was dann wieder nervt, dass ich diesen Baustein nicht in die Bibliothek stecken kann, da er einen Merkerzugriff enthält.

    An die mitlesenenden S.-Mitarbeiter: Gebt uns dafür einen SFC.

    'n schön' Tach auch
    HB

Ähnliche Themen

  1. Sonstiges S7-1500 Bilder für Webserver
    Von Arco im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 22.09.2016, 14:28
  2. TIA FIFO Protkollierung umschreiben für S7-1500
    Von KUMI1989 im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 18.11.2015, 21:07
  3. Opc-Server für S7 1500
    Von tomatensaft im Forum Hochsprachen - OPC
    Antworten: 8
    Letzter Beitrag: 26.01.2015, 22:07
  4. TIA Profibus FDL CM/CP für S7-1500
    Von Not-Aus im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 08.02.2014, 13:51
  5. TIA Programmierleitfaden für S7-1200/1500
    Von rostiger Nagel im Forum Simatic
    Antworten: 0
    Letzter Beitrag: 02.10.2013, 21:42

Lesezeichen

Berechtigungen

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