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

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

Thema: Warnung wg.Lokaldaten im Baustein, bzw. Syntaxfehler

  1. #1
    Registriert seit
    19.05.2008
    Ort
    53773 Hennef
    Beiträge
    16
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Forum,

    ich habe mir von der Siemens-Site ein Beispielprogramm zur Ansteuerung eines Micromasters gezogen. Das Programmm habe ich von S7 nach TIAV13 migriert, alles soweit iO.
    Nur habe ich eine Warnung bzgl. Lokaldaten-Verarbeitung im FC (s. Lokaldaten im Baustein (Original).jpg). Wenn ich (zugegebenermaßen ohne genau zu wissen, warum es nicht geht) die andere Bezeichnung eingebe (s. Lokaldaten im Baustein (Versuch).jpg) bekomme ich den Syntaxfehler, wahrscheinlich zu Recht . Kann mir vielleicht jemand den entscheidenen Tip geben, wie es geht, bzw. wo ich es nachlesen kann, danke.

    Gruß, Werner

    Ach ja: CPU 313-2DP, Datenbausteine, UDTs sind vorhanden und iO. Zur eurer Info noch 2 Bilder.

    Lokaldaten im Baustein (Original).jpgLokaldaten im Baustein (Versuch).jpg
    Zitieren Zitieren Warnung wg.Lokaldaten im Baustein, bzw. Syntaxfehler  

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

    Standard

    Ja, das war "früher" üblich, daß man ungeniert auf Absolutadressen zugriff - allerdings auf eigene Gefahr, weil der AWL-Compiler dabei nicht prüfen kann, ob der Programmierer weiß was er da tut.

    Versuche mal folgende Formulierung, da wird die Zieladresse wenigstens symbolisch ermittelt:
    Code:
    L PED [#Adresse_E_A]
    LAR1 P##REC
    T LD [AR1,P#0.0] //auf Struct REC speichern
    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  3. #3
    Registriert seit
    06.08.2010
    Beiträge
    133
    Danke
    0
    Erhielt 44 Danke für 29 Beiträge

    Standard

    Alternativ erstellst du einen UDT mit der Struktur von REC. Diesen UDT deklarierst du einmal als IN Variable in dem FC und einmal in der Variablenliste (mit der entsprechenden Startdadresse des Micromaster aus der HW-Konfig). Dann kannst du Netzwerk 1+2 und die Lokaldaten "REC" löschen und musst nur noch am Aufruf des FC's die Struktur übergeben.
    Geändert von Glasesba (26.06.2016 um 09:53 Uhr)

  4. #4
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.197
    Danke
    926
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Zitat Zitat von Glasesba Beitrag anzeigen
    Alternativ [...] musst nur noch am Aufruf des FC's die Struktur übergeben.
    Das verschiebt nur das Problem zu einer Stelle außerhalb des FC, wo es nur noch umständlicher lösbar wird, weil irgendwo muß ja das PED (DWORD) auf die Struktur kopiert werden.

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  5. #5
    Registriert seit
    06.08.2010
    Beiträge
    133
    Danke
    0
    Erhielt 44 Danke für 29 Beiträge

    Standard

    Die Zuweisung der Adresse auf das STRUCT geschieht doch durch den Eintrag in der Variablentabelle. Ich bin nur gerade am überlegen ob es bei der S7-300 auch funktioniert, bei S7-1500 und TIA geht es auf jedenfall. Siehe hier auf Seite 69:

    https://support.industry.siemens.com.../view/90885040

    Müsste ich morgen mal testen ob das ein Feature von TIA ist oder nur von der S7-1500.

  6. #6
    Registriert seit
    15.01.2005
    Ort
    In der Mitte zwischen Bayreuth/Weiden
    Beiträge
    6.734
    Danke
    321
    Erhielt 1.522 Danke für 1.283 Beiträge

    Standard

    @Glasesba
    Gerade probiert, leider scheint es ein 1200/1500er Feature zu sein, ist bei der 300er also leider nicht anwendbar.
    Die Idee wäre aber sehr gut gewesen.
    Warum denn einfach, wenn man auch Siemens einsetzen kann!

    Wer die grundlegenden Freiheiten aufgibt, um vorübergehend ein wenig Sicherheit zu bekommen, verdient weder Freiheit noch Sicherheit (B. Franklin).

  7. #7
    Registriert seit
    06.08.2010
    Beiträge
    133
    Danke
    0
    Erhielt 44 Danke für 29 Beiträge

    Standard

    Schade. Dann würde ich alternativ die Daten mit den SFC14/SFC15 lesen und schreiben.

  8. #8
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.197
    Danke
    926
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    SFC14/SFC15 geht nicht für 4 Bytes.

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  9. #9
    Registriert seit
    17.03.2010
    Ort
    Bonn
    Beiträge
    268
    Danke
    4
    Erhielt 58 Danke für 52 Beiträge

    Standard

    Zitat Zitat von PN/DP Beitrag anzeigen
    SFC14/SFC15 geht nicht für 4 Bytes.

    Harald
    Hast du das getestet ? Die online Hilfe sag was anderes.

    HinweisEine CPU der Baureihen S7-300/400 unterstützt bis zu 64 Bytes konsistente Daten. Bei Bereichen konsistenter Daten größer als 4 Bytes müssen Sie die Anweisung "DPRD_DAT" verwenden. Diese Anweisung kann bei Bedarf auch für einen Datenbereich ab 1 Byte verwendet werden. Bei einem Zugriffsfehler wird der Fehlercode W#16#8090 gemeldet.

  10. #10
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.197
    Danke
    926
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Peter Gedöns Beitrag anzeigen
    Hast du das getestet ? Die online Hilfe sag was anderes.
    Nein, nicht unter TIA. Bekommt eine S7-300-CPU eine andere Firmware, wenn sie mit TIA programmiert wird? (damit die schlampige Dokumentation halbwegs stimmt )


    siehe Referenzhandbuch System- und Standardfunktionen für S7-300/400

    Kapitel 16.5 Konsistente Daten eines DP-Normslaves/PROFINET IO-Devices lesen mit der SFC 14 "DPRD_DAT"
    Hinweis
    Ein Zugriff mit der SFC 14 "DPRD_DAT" ist nur auf drei oder mehr als 4 Byte lange Datenbereiche möglich. Andernfalls wird ein Zugriff mit dem Fehlercode W#16#8090 abgewiesen.
    Kapitel 16.6 Daten konsistent auf DP-Normslave/PROFINET IO-Device schreiben mit der SFC 15 "DPWR_DAT"
    Hinweis
    Ein Zugriff mit der SFC 15 "DPWR_DAT" ist nur auf drei oder mehr als 4 Byte lange Datenbereiche möglich. Andernfalls wird ein Zugriff mit dem Fehlercode W#16#8090 abgewiesen.
    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. Antworten: 1
    Letzter Beitrag: 26.01.2016, 16:26
  2. Antworten: 9
    Letzter Beitrag: 26.08.2015, 15:09
  3. Antworten: 16
    Letzter Beitrag: 06.02.2015, 10:25
  4. Syntaxfehler
    Von Fischi im Forum Simatic
    Antworten: 20
    Letzter Beitrag: 28.03.2013, 08:02
  5. Antworten: 4
    Letzter Beitrag: 05.05.2009, 14:17

Lesezeichen

Berechtigungen

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