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

Ergebnis 1 bis 9 von 9

Thema: Frage zum Vorgehen - Datenbaustein-

  1. #1
    Registriert seit
    25.06.2007
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    erstma ist es ja super das es so ein gut besuchtes Forum gibt über S5/S7

    Ich habe ein paar Fragen zu Strukturen bzw wie man das umsetzen könnte!

    Über eine Analogbaugruppe nehme ich verschiedene, festgelegte Werte auf! Die festgelegten Werte müssen im Datenbaustein vorhanden sein! Es soll also verglichen werden ob es den Wert gibt! Wenn der Wert vorhanden ist, muss ich mit dem gefunden Wert weiterarbeiten und die cpu soll sich merken, dass der Wert einmal da war! Genutzt werden soll das ganze für eine Einsortierung in einem Magazin. Für die Ausgabe muss der gemerkte Wert dann wieder zurückgenommen werde! Als Hardware habe ich eine 315-2DP und ein TP270! Zu meiner Frage! Mit WinCC flex kenne ich mich noch nicht all zu gut aus und bin da am lernen! Aber welche Struktur bzw. wie würdet ihr das Problem lösen mit Step7? Kann man das nicht evtl auch über Rezepturen mit WinCC machen? Ich freu mich über eure Ideen!

    Schöne Grüße
    Zitieren Zitieren Frage zum Vorgehen - Datenbaustein-  

  2. #2
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.222
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Ich werde zwar nicht ganz schlau, aus deiner Erläuterung, aber mal ein paar Gedanken.

    Analogwerte sind ja nie genau, also denke ich, du mußt ein Fenster bilden.

    1. Konventionelle Art:
    Du hast 20 Einträge im DB für deine Werte. Die können durchaus aus einem Rezept stammen. Du bildest für jeden Wert mit einer Fensterkonstanten ein Fenster. (Am Besten ein Baustein) Dann hast du aus 20 Fenstern einen Wert, der deine Bedingungen erfüllt und kannst mit dem wwiterarbeiten.

    2.indirekte Adressierung:
    Du bidest ein Fenster in einer Schleife. Die Schleife läuft durch alle Werte in deinem DB, wenn ein Fenster erkannt wird, weißt du durch die Zählvariable, welche Wert das ist und kannst mit diesem weiterarbeiten.

    Wie du das mit dem Merken und zurücksetzen genau meinst, kann ich nicht aus deiner Erklärung erkennen. Werden viele Teile an der Position dieses Wertes abgelegt und du merkst dir das, bis das magaziniert ist oder wie ist das genau gemeint?
    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

  3. #3
    Registriert seit
    08.02.2007
    Ort
    A-2320
    Beiträge
    2.252
    Danke
    244
    Erhielt 332 Danke für 303 Beiträge

    Standard

    An wieviele Pegeln hast Du dabei gedacht?
    Das kann ja nur mit Ober- und Untergrenze funktionieren, oder?

    zB 0.01 - 0.03 V = Type 1
    zB 0.03 - 0.05 V = Type 2

    usw

  4. #4
    RS83 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    25.06.2007
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Super vielen Dank für die schnellen Antworten!

    Das Analogwerte nie gleich sind, weiß ich ja! Aber ich runde die beim messen auf und somit sind sie gleich!

    Das was Ralle ansprach mit der indirekten Adressierung habe ich schon umgesetzt mit dem FC86 "table find".
    Nu müsste die CPU noch merken, das dieser Messwert schon mal gekommen ist. Also mit dem gefunden Wert noch mal Zählen usw..

    Habe nur gesehen, das man in Win CC mehrere Datensätze bei den Rezepturen anlegen kann! Nur bekomme das noch nicht hin, dass er mir die Datensätze verändert über die CPU! Vll kann mir da ja jemand auf die Sprünge noch weiter helfen!

    Vielen Dank

  5. #5
    Registriert seit
    08.02.2007
    Ort
    A-2320
    Beiträge
    2.252
    Danke
    244
    Erhielt 332 Danke für 303 Beiträge

    Standard

    wie Du rundest, check ich nicht?
    Du liest einen Wert ein, der ist zwischen
    0 und 27648 Normbereich, wie rundest Du nun- auf 10er oder 100er?

  6. #6
    Registriert seit
    08.02.2007
    Ort
    A-2320
    Beiträge
    2.252
    Danke
    244
    Erhielt 332 Danke für 303 Beiträge

    Standard

    Zitat Zitat von RS83 Beitrag anzeigen
    Nu müsste die CPU noch merken, das dieser Messwert schon mal gekommen ist. Also mit dem gefunden Wert noch mal Zählen usw..
    Du hast einen DB mit Datenfelder (gerundet)
    0
    100
    200
    300
    400
    ....
    27600

    also zB 276 mögliche Werte

    Wenn Du nun einen Analogwert von 5600 einliest dann heisst das ja Kasterl 56 (wozu der VergleichsDB in der CPU?)

    Also Analogwert / 100
    SLD 4 (Pointer für Wortadresse in einem DB)

    wäre die Adresse wo Du zB die Stückzahl hochzählen könntest.

  7. #7
    RS83 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    25.06.2007
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Vermesse verschiedene Bauteile mit einem Laserabstandsensor! Bei gleichen Teilen ist der Wert dann immer gleich. Um kleine Toleranzen und Schwankungen vom Wert zu vermeiden, runde ich diesen Wert dann! Bevor ich runde, skaliere ich die Werte mit dem FC105!

  8. #8
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.222
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Zitat Zitat von RS83 Beitrag anzeigen
    Das was Ralle ansprach mit der indirekten Adressierung habe ich schon umgesetzt mit dem FC86 "table find".
    Nu müsste die CPU noch merken, das dieser Messwert schon mal gekommen ist. Also mit dem gefunden Wert noch mal Zählen usw..

    Habe nur gesehen, das man in Win CC mehrere Datensätze bei den Rezepturen anlegen kann! Nur bekomme das noch nicht hin, dass er mir die Datensätze verändert über die CPU! Vll kann mir da ja jemand auf die Sprünge noch weiter helfen!

    Vielen Dank
    FC86, kenn ich nicht. Wenn du das von Hand machst, kannst du deinen Zählwert auch noch in diesen DB reinschreiben:

    DW0 - Wert1
    DW2 - Zählwert1
    DW4 - Wert2
    Dw6 - Zählwert 2
    ...

    Wozu willst du denn die Ist-Zählwerte in das Rezept schreiben?
    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

  9. #9
    RS83 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    25.06.2007
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ne will ich nicht unbedingt! Ich wollte nur mal wissen wie ich allgemein Datensätze /werte von WinCC Abfrage von den Rezepten zu Step7! Ich muss da einfach noch bisschen rumbasteln! Aber du hast mich schon ein bisschen auf dem Weg gebracht

Ähnliche Themen

  1. Vorgehen ohne Herstellerangaben
    Von danielR im Forum Maschinensicherheit - Normen und Richtlinien
    Antworten: 8
    Letzter Beitrag: 23.02.2014, 17:33
  2. Eine Frage zum Datenbaustein...
    Von pinolino im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 24.09.2009, 09:25
  3. Vorgehen bei Programmerstellung
    Von Georgius im Forum Programmierstrategien
    Antworten: 16
    Letzter Beitrag: 24.10.2008, 10:53
  4. Wie am besten vorgehen??
    Von MoodyMammoth im Forum Programmierstrategien
    Antworten: 0
    Letzter Beitrag: 27.04.2007, 08:47
  5. Frage zum Datenbaustein?
    Von MRT im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 09.08.2005, 22:04

Lesezeichen

Berechtigungen

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