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

Ergebnis 1 bis 2 von 2

Thema: Anlage programieren

  1. #1
    Registriert seit
    04.07.2007
    Beiträge
    82
    Danke
    20
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo!

    Habe eine etwas komplizierte (für mich) Aufgabenstellung:

    Also: Die Anlage hat einzelne Module (FBs).Die Anzahl der Module soll erweiterbar sein. Jedes dieser Module liefert einen Zeitwert(aktive Arbeitszeit des Moduls), eine Störmeldung und einen Teilestatus (IO/NIO/NA). Diese sollen in einem DB als Array abgelegt werden. Wenn das erste Modul fertig ist beginnt das 2. zu arbeiten, legt auch seine Daten in diesem DB ab. Dabei müssen im DB die Daten weitergeschoben (schiebeoperation???) werden, da sie sonst überschrieben werden(alle FBs sind ja gleich).

    Haben erfahren es wäre gut die Daten (Zeitwert,Störmeldung, Teilestatus) in einem UDT abzulegen. Das Problem ist, ich habe noch nie mit einem UDT bzw. Array gearbeitet und weiß nicht wie man weiterschiebt und wie ich das ganze aufbauen soll...

    Ach ja: Wie definiere ich mein Array im DB? Beim Typ steht dan ARRAY[] ..wie kann ich das durch die Anzahl der Module veränderlich halten? also 1...number of modules...

    Kann mir da jemand Helfen?

    mfg
    Geändert von slma (05.07.2007 um 13:33 Uhr)
    Zitieren Zitieren Anlage programieren  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.727
    Danke
    398
    Erhielt 2.404 Danke für 2.002 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    dein Problem hört sich für mich ein bißchen so an, wie das, was wir bei uns Schiebespeicher nennen ...
    Wir haben eine Menge Montage-Automaten, die an einem Rundtisch Bearbeitungsstationen usw. haben.
    Ich habe das bei mir so gelösst, dass für jede Station das Ergebnis ihrer Arbeit (in der Regel 1 oder 2 Bits) in der Struktur jedes Platzes hinterlegt sind. Daraus ergibt sich dann eine Bitmaske (UDT). Diese gibt es für jede Position des Drehtisches, ob dort eine Station steht oder nicht (ARRAY of UDT). Mit jedem Takt des Drehtisches wird der Speicher um ein ARAAY-Element weitergeschoben. Gleichzeitig wird der Inhalt des letzten Platzes wieder in den ersten Platz geschoben (Ring-Puffer). Ob sich eine Station an dem Ringelreihen beteiligt oder nicht hängt nun unmittelbar vom Inhalt des für sie zuständigen Speicherplatzes ab. Wenn sie etwas zum Gesamt-Ergebnis beiträgt, dann werden entsprechende Bits des Platzes gesetzt (oder rückgesetzt). Selbstverständlich lassen sich in dieser Struktur auch Mess-Werte unterbringen - kommt ganz auf deine Anforderung an ...

    Ich hoffe, das hilft dir erstmal weiter ...

Ähnliche Themen

  1. Analogausgang Programieren ?
    Von horstiborstiworsti im Forum Programmierstrategien
    Antworten: 5
    Letzter Beitrag: 14.08.2011, 15:34
  2. Not-Aus Funktion programieren
    Von patrick_123 im Forum Simatic
    Antworten: 15
    Letzter Beitrag: 16.12.2010, 06:44
  3. Rechts- Linkslauf programieren
    Von mercury im Forum Programmierstrategien
    Antworten: 24
    Letzter Beitrag: 29.12.2006, 23:05
  4. BK8100 Diagnoseschnitstelle programieren
    Von BoB im Forum Feldbusse
    Antworten: 0
    Letzter Beitrag: 10.05.2006, 12:45
  5. MemoryCard Programieren
    Von endel im Forum Simatic
    Antworten: 0
    Letzter Beitrag: 19.01.2006, 10:58

Lesezeichen

Berechtigungen

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