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

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

Thema: Bitansteuerung Hilfe

  1. #1
    Registriert seit
    30.09.2014
    Beiträge
    36
    Danke
    22
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Guten Tag,

    ich erstelle zur Zeit mein erstes TIA Projekt, habe zwar schon einige Erfahrung mit Step 7 doch ist in TIA vieles anders.
    In einem Step 7 Projekt kann ich einzelne Bits, bsplw. in einem Word von einem DB, ganz einfach ansteuern. ( = db5.dbx 1.0)
    Das will ich auch in meinem TIA Projekt machen, doch bekomme ich die Meldung, dass Absolute Zugriffe nicht möglich sind.

    H1.jpg

    Das Ganze ist für die Meldungen in dem HMI.

    Vielleicht kann mikr jemand sagen was ich falsch mache oder anders machen muss.
    Zitieren Zitieren Bitansteuerung Hilfe  

  2. #2
    Registriert seit
    23.07.2009
    Ort
    Österreich
    Beiträge
    2.336
    Danke
    448
    Erhielt 688 Danke für 513 Beiträge

    Standard

    In TIA (bei optierten DBs) gibt es keine Speicher-Adressen (im 300er-DB-Sinne) mehr.
    Optimierte DBs funktionieren rein symbolisch.
    https://support.industry.siemens.com.../view/67655611

    Adressen gibt es nur mehr in nicht optimierten DBs, die eigentlich mehr aus Kompatibilitätsgründen zu 300/400 existieren. Und weil nicht immer alles über opt. DBs lösbar ist.
    Dennoch würde ich dazu raten auf der 1500 wenn möglich nur mit optimierten zu Arbeiten da die andere Variante ein Performancebremse ist.
    Des weiteren holt man sich alle möglichen Schwierigkeiten ins Haus wenn man beginnt optimiert und "nicht optimiert" zu mischen oder aufhört so zu programmieren wie sich die TIA/1500er-Entwickler es gedacht haben.

    Um dennoch auf einzelne Bits eines Symbols (Bit 0 einer smbolischen Wortvariablen) zugreifen zu können wurde der SLICE-Mechanismus eingeführt.
    https://support.industry.siemens.com.../view/57374718


    Bitmeldungen am HMI sind der einzige (unten relativiert) Ort wo ich noch nicht optimierte DBs verwende.
    Der DB enthält Bits (mit vernünftigen Symbolen) und am HMI wird eine absolut Adressierte Wortvariable erstellt die dann auf die
    Bitmeldungen gehen. Es gäbe auch noch die Variante über die Alarmbausteine Program_Alarm und Co.

    Wenn du mit TIA anfängst kannst du dir auch das zu Gemüte führen.
    https://w3.siemens.com/mcms/sce/de/f...OKU_v13_de.pdf
    Da werden auch die Unterschiede zwischen opt. und "nicht opt." Datenbausteinen noch mal schön Beschreiben.
    Hauptunterschied, abgesehen von den fehlenden Adressen, ist das der "nicht opt." DB (wie die 300/400 auch) der Big-Endian-Notation folgen, während die opt. DBs und die 1200/1500 der Little-Endian-Notation folgen.
    Geändert von RONIN (10.02.2016 um 18:44 Uhr)
    If at first you don't succeed, you're not Van Damme!
    ... or maybe using TIA!

  3. Folgende 2 Benutzer sagen Danke zu RONIN für den nützlichen Beitrag:

    friendo (16.02.2016),Zombieanfuehrer (11.02.2016)

  4. #3
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.218
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Zitat Zitat von RONIN Beitrag anzeigen
    Des weiteren holt man sich alle möglichen Schwierigkeiten ins Haus wenn man beginnt optimiert und "nicht optimiert" zu mischen oder aufhört so zu programmieren wie sich die TIA/1500er-Entwickler es gedacht haben.
    Die können sich nicht allzuviel gedacht haben oder, sonst hätten sie nicht so einen Scheiß verbrochen!

    PS1: Ich kann den Ratschlag nicht nachvollziehen, ich verwende das gemischt, ansonsten müßte ich ja tatsächlich so programmieren, wie die sich das gedacht haben und ganz so hirnlos will ich dann doch nicht meine SPS-Programme proggen.

    PS2: Was heißt da eingentlich Performance? Ich hab eine mittlere Maschine (so 8 Stationen mit WT-Umlauf, 2 Servos, RFID, Laser), die schafft bei unsimensianischer Programmierweise so 10 ms. Das reicht dafür allemal. Ok, wenn es mal richtig schnell gehen soll, dann klemmt es vielleicht, aber dann sollte man vielleicht auch mal eine richtige SPS nehmen bei der man keine Kopfstände machen muß, um irgendwie an seine Daten ranzukommen ...
    Geändert von Ralle (10.02.2016 um 14:56 Uhr)
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  5. #4
    Registriert seit
    03.07.2006
    Beiträge
    1.725
    Danke
    515
    Erhielt 303 Danke für 223 Beiträge

    Standard

    Ich benutze das auch gemischt..... Viele Sachen bei der Kommunikation gehen nicht mit optimierten DBs
    Selbst wenn du das so programmierst, wie die sich das gedacht haben klappt nicht alles mit optimierten DBs

  6. Folgender Benutzer sagt Danke zu UniMog für den nützlichen Beitrag:

    Zombieanfuehrer (11.02.2016)

  7. #5
    Registriert seit
    23.07.2009
    Ort
    Österreich
    Beiträge
    2.336
    Danke
    448
    Erhielt 688 Danke für 513 Beiträge

    Standard

    Zitat Zitat von Ralle Beitrag anzeigen
    Die können sich nicht allzuviel gedacht haben oder, sonst hätten sie nicht so einen Scheiß verbrochen!


    Was ich am wenigsten leiden kann ist der Begriff "optimiert".
    Das ist einfach "1500-Standard" und "300/400-schlecht-kompatibel".

    Zitat Zitat von Ralle Beitrag anzeigen
    PS1: Ich kann den Ratschlag nicht nachvollziehen, ich verwende das gemischt, ansonsten müßte ich ja tatsächlich so programmieren, wie die sich das gedacht haben und ganz so hirnlos will ich dann doch nicht meine SPS-Programme proggen.
    Nun gut, da muss ich meine Aussage von oben ein wenig relativieren.
    Ich versuche so weit wie es geht "optimierte" DBs einzusetzen und "optimierte" und "nicht optimierte" Bereiche einigermaßen zu trennen.
    Dort wo ich mit "optimiert" dreimal mit der Kirche ums Kreuz programmieren muss um auf das selbe Ergebnis zu kommen, bzw. wo es nicht anders geht, dort verwende ich "nicht optimiert".

    Ich böser Junge verwende auch noch AWL, wenn möglich allerdings ohne AR-Gebastel und Co.
    Nur als andere Darstellungsform in Kombination mit FUP. Vielleicht kommt mal der Tag an dem ich ein SCL-Netzwerk unter ein FUP-Netzwerk setzen darf.

    Über den generellen Sinn und Unsinn von "optimierten" (man bemerke die Anführungszeichen) wurde hier eh schon des häufigeren diskutiert.
    Die Themen kennst du ja eh, für diejenigen die es interessiert...
    1500 - optimierter Bausteinzugriff - Sinn/Unsinn ?
    S7 Kommunikation von S7-1500 auf S7-300

    Grundsätzlich schrecken mich aber Dinge wie...
    • ständiges Byte-Grehe bei jedem Zugriff in Abhängigkeit der "Optimierung"
    • Abhängkeit von der "Optimierung" des Aktualparameters ob ein FB diesen als ByVal oder ByRef bekommt.
    • Bausteine die einmal einen "optimierten DB" vorschreiben
    • Bausteine die einen nicht "optimierten DB" benötigen
    • generell dieses ganze "mal so, mal so"


    Wenn es irgendwie geht versuche ich mir nicht noch mehr Probleme mit TIA ins Haus zu holen als ich mit TIA so schon habe.
    Deshalb versuche ich (soweit sinnvoll) so zu arbeiten wie BigS es sich vorstellt. Wenn auch teilweise mit Gehirnschmerzen...
    Gibt auch wesentlich weniger HickHack mit dem Support, wenn mal wieder was nicht hinhaut.

    Zitat Zitat von Ralle Beitrag anzeigen
    PS2: Was heißt da eingentlich Performance?
    Dass das ganze Byte-Gedrehe und Bit-Ausmaskieren die CPU künstlich ausbremsen muss ist auch klar.
    Die Beiträge von Hellebarde kennen wir.

    Das ganz AWL-AR-Zeug ist auch ziemlich arg, das ist mir selber schon aufgefallen.
    Hatte ne kleine Anlage für die hatte ich einfach unsere 300er-Standardbausteine migriert und allen in "nicht optimiert" programmiert.
    Funktioniert hat's problemlos. Es war auch nur ne 1510-ET200SP, jedoch hatte auf der CPU das Programm (gefühlt) eigentlich 2x Mal laufen müssen bevor man die 10ms-Grenze durchbricht. Leider waren es bei 1x schon 16ms. Da war ich eigentlich ziemlich erschrocken.
    In meinen Fall war die AR-Operationen beim Any-Pointer kopieren die größten Übeltäter.
    Beim aktuellen Projekt, wo ich auf das "optimierte" geachtet hab, mit der 1512 (ca. 1,5 x 1510) hab ich schon gefühlt 2x soviel Code drauf und bin noch bei 4ms. Ist aber alles sehr sehr subjektiv, also bitte nicht drauf rumreiten...
    Die Messungen und das Wissenschaftliche überlasse ich Hellebarde .

    Bin aber trotzdem der Meinung das ich die CPU, dort wo ich keinen Aufwand habe es "optimiert" zu machen, diese nicht künstlich bremsen muss.

    Was wirklich schlimm ist, ist das ich mir überhaupt darüber Gedanken mache oder machen muss...

    PS: Da der TE vom Umsteigen auf die 1500 spricht sollte man ihn noch auf ein paar weitere Unterschiede hinweisen.
    Umstieg auf S7-1500
    Geändert von RONIN (10.02.2016 um 20:25 Uhr)
    If at first you don't succeed, you're not Van Damme!
    ... or maybe using TIA!

  8. Folgende 2 Benutzer sagen Danke zu RONIN für den nützlichen Beitrag:

    Ralle (11.02.2016),Zombieanfuehrer (11.02.2016)

  9. #6
    Registriert seit
    15.01.2005
    Ort
    In der Mitte zwischen Bayreuth/Weiden
    Beiträge
    6.725
    Danke
    314
    Erhielt 1.519 Danke für 1.282 Beiträge

    Standard

    Zitat Zitat von Zombieanfuehrer Beitrag anzeigen
    In einem Step 7 Projekt kann ich einzelne Bits, bsplw. in einem Word von einem DB, ganz einfach ansteuern. ( = db5.dbx 1.0)
    Das geht jetzt eigentlich sogar schöner, nennt sich Slice-Zugriff.
    MyDB.MyWord.X0 für Bit 0
    MyDB.MyWord.B0 für Byte 0
    usw.

    Bevor man ernsthaft mit der 1500er anfängt, sollte man, isbesondere wenn man die 300/400er einigermaßen kennt, sich eigentlich mal das zu gemüte geführt haben:
    https://support.industry.siemens.com.../view/90885040

    Mfg
    Manuel
    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).

  10. Folgende 2 Benutzer sagen Danke zu MSB für den nützlichen Beitrag:

    friendo (11.02.2016),Zombieanfuehrer (11.02.2016)

  11. #7
    Registriert seit
    30.09.2014
    Beiträge
    36
    Danke
    22
    Erhielt 0 Danke für 0 Beiträge

    Standard

    So mit den nicht optimierten Datenbausteinen hat mir geholfen, ist aber wirklich nicht so schön wie, wenn es mit dem Slice-Zugriff gemacht wird. Das Problem ist ich habe hier eine 1200er mit Firmware 1.01 und leider keine Memory-Card um sie zu flashen. (der Slice-Zugriff funktioniert wohl erst ab 2.0)
    Frage mich wie man die 1200er mit FW 1.0 im Optimierten Modus programmieren soll, ohne Slice?

    Bei der Anlage ist die Zeit relativ egal, und werde von daher wohl alle DBs gezwungener Maßen so programmieren.
    In Zukunft würde ich nur 1500er nehmen.

  12. #8
    Registriert seit
    23.07.2009
    Ort
    Österreich
    Beiträge
    2.336
    Danke
    448
    Erhielt 688 Danke für 513 Beiträge

    Standard

    Aus welchen Tiefen hast du denn ne CPU in FW-Version ausgegraben?
    Braucht eine FW1 eine MC zum flashen? Geht das nicht (so wie bei den neueren) direkt über die Online-Diagnose?

    Die Alternatvien zu Slice und Co. sind bekannt. Eine Variante wären z.B. FCs denen du die Variable (Inout) und Bitnummer übergibst. Innen dann mit Bitmaske.
    Hatte mal ne Liste der Varianten die mir auf die schnelle eingefallen sind....
    TIA V13 - Im FB Eingangsword nach Localword übertragen


    EDIT: Andere Frage, ist irgendetwas aus der TIA-Generation v1.0 überhaupt betriebssicher genug um es anzuwenden?
    Die TIA-Version die du verwendest wäre auch interessant.
    Geändert von RONIN (11.02.2016 um 13:14 Uhr)
    If at first you don't succeed, you're not Van Damme!
    ... or maybe using TIA!

  13. #9
    Registriert seit
    15.01.2005
    Ort
    In der Mitte zwischen Bayreuth/Weiden
    Beiträge
    6.725
    Danke
    314
    Erhielt 1.519 Danke für 1.282 Beiträge

    Standard

    Oha, V1.0 ist ggü. der derzeit aktuellen Version (4.1) ohne Übertreibung echte Steinzeit.

    Investiere die paar € ind die 24MB Memory Card um deine CPU wenigstens auf 2.2 Upzudaten.
    Welche Version von TIA nutzt du dann eigentlich?
    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).

  14. #10
    Registriert seit
    24.07.2012
    Beiträge
    58
    Danke
    36
    Erhielt 6 Danke für 6 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Geht bei TIA 1500er nicht auch AT-Sicht in AWL?
    Wäre auch ne schicke Möglichkeit.

Ähnliche Themen

  1. HILFE -- ePlan5.7 Professional -- HILFE
    Von DerMatze im Forum E-CAD
    Antworten: 6
    Letzter Beitrag: 26.09.2013, 08:54
  2. !!!HILFE!!!! Webserver S7 1200 !!!HILFE!!!!
    Von STgeronimo im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 16.12.2012, 23:22
  3. Hilfe Hilfe - HMI Fehler
    Von vietha11 im Forum HMI
    Antworten: 7
    Letzter Beitrag: 04.05.2011, 07:53
  4. Antworten: 90
    Letzter Beitrag: 21.03.2010, 12:35
  5. Antworten: 15
    Letzter Beitrag: 01.03.2005, 22:25

Lesezeichen

Berechtigungen

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