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

Results 1 to 3 of 3

Thread: BDE mittels DB

  1. #1
    Anonymous Gast

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    HI

    Ich hätte da eine nette Aufgabe aus der Praxis.

    Ich habe eine Maschine mit C7-633, also eine S7-300 mit eingebautem OP7. Ich möchte da so ne Art Betriebsdatenerfassung programmieren:
    Es gibt 10 verschiedene Verarbeitungstypen. Diese stehen von 1 - 10 in einem MW60 . Jetzt will ich die produzierte Stückzahl eines jeden Tages in einem DB mitschreiben. Am einfachsten wäre es wohl, pro Typ ein DB, also 10 DB . In jedem DB soll jetzt möglicherweise eine STRUCT angelegt werden mit Datum, und produzierter Stückzahl(INT). Das Datum müßte man normalerweise über das OP bekommen, wenn nicht vielleicht sogar durch die CPU selbst. Im Datum müßte dann stehen z.B. 23.12.2004, 23/12/2004 oder so. In der Stückzahl eben die produzierten Einheiten des entsprechenden Datums. Und das alles im entsprechenden Typ-DB.
    Ist der DB voll, so soll das neuere Datum das älteste überschreben.
    Ist das machbar?
    Reply With Quote Reply With Quote Answered: BDE mittels DB  

  2. "naja ich denke dein ansatz ist etwas kompliziert...

    ich würde nur einen db anlegen, darin ein strukt mit date_and_time, und teile typ. dazu vieleicht noch 10 integer die jedes teil mitzählen.

    dann würde ich ein schieberegister schreiben was bei jedem ende eines produktionszyklusses einen eintrag macht, der aus datum und teilenummer besteht. das teil wird im entsprechenden int mitgezählt.

    ich weiß ja nicht wieviele daten du sammeln willst bzw. wie hoch die zykluszeit der maschine ist, wenn ein db nicht ausreicht müsstest du eben mehrere nacheinader füllen.

    die date_and_time bekommst du über eine bestimmte sfc oder über den lokaldatenbereich von ob1 direkt von der cpu.

    bei neuen cpu&s mit mmc kannst du dort auch db&s unlinked ablegen, und mit speziellen sfc&s drauf lesen bzw schreiben, wäre interessant wenn du extrem viele daten sammeln musst...

    interessant zu wissen wäre aber wieviele daten du am tag bekommst und wie lange die haltbar sein müssen.

    muss wirklich für jedes produzierte teil das datum mitgeschrieben werden? würde es auch genügen das bei produktwechsel zu tun?
    eine date_time braucht eben viel platz...

    mfg!
    markus"


  3. #2
    Join Date
    16.06.2003
    Location
    88356 Ostrach
    Posts
    5,006
    Danke
    1,346
    Erhielt 1,168 Danke für 550 Beiträge

    Default

    naja ich denke dein ansatz ist etwas kompliziert...

    ich würde nur einen db anlegen, darin ein strukt mit date_and_time, und teile typ. dazu vieleicht noch 10 integer die jedes teil mitzählen.

    dann würde ich ein schieberegister schreiben was bei jedem ende eines produktionszyklusses einen eintrag macht, der aus datum und teilenummer besteht. das teil wird im entsprechenden int mitgezählt.

    ich weiß ja nicht wieviele daten du sammeln willst bzw. wie hoch die zykluszeit der maschine ist, wenn ein db nicht ausreicht müsstest du eben mehrere nacheinader füllen.

    die date_and_time bekommst du über eine bestimmte sfc oder über den lokaldatenbereich von ob1 direkt von der cpu.

    bei neuen cpu&s mit mmc kannst du dort auch db&s unlinked ablegen, und mit speziellen sfc&s drauf lesen bzw schreiben, wäre interessant wenn du extrem viele daten sammeln musst...

    interessant zu wissen wäre aber wieviele daten du am tag bekommst und wie lange die haltbar sein müssen.

    muss wirklich für jedes produzierte teil das datum mitgeschrieben werden? würde es auch genügen das bei produktwechsel zu tun?
    eine date_time braucht eben viel platz...

    mfg!
    markus

  4. #3
    Join Date
    08.11.2003
    Posts
    58
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    genau sowas habe ich vor einer Woche programmiert. Nur mit dem Unterschied das ich 4 Timer bzw. vorgebene Zeiten verwende, an denen die Werte in den DB geschrieben werden. Ist der DB voll (das passiert bei mir nach 28 Messungen) wird einfach der älteste Wert aus dem DB geschmissen und es ist wieder Platz für eine neue Messung bzw. Eintrag in den DB. Müßtest es halt vielleicht auf deine Bedürfnisse anpassen.

    Wenn du willst, kann ich Dir das Programm per Mail zuschicken!

    Das einzige Problem, was ich dabei sehe, wenn die Spannung ausfällt, sind natürlich die Messdaten bzw. der Pointer der auf die Einträge im DB zeigt hinüber. Man könnte natürlich jetzt meinen Pointer bzw. Zähler remanent machen, aber dann müßte somit auch der DB remanent sein, und das geht bei meiner CPU 316 2-DB nur für 4096 Bytes. Mein DB ist leider ein bißchen groß geworden, 8700 Bytes. Somit muß ich nach Spannungswiederkehr den DB löschen und den Zähler wieder auf eins setzen. Das geht halt nicht anders. Ich verstehe sowieso nicht, warum Siemens bei dem Speicher so spart. Meiner Meinung nach gehört das ein 128 MB Modul rein, kostet ja sowieso nichts mehr und auch die dazugehörigen Kommentare und Symbole mit übertragen in die CPU, somit braucht man keine Angst haben, wenn das Offline Projekt mal flöten geht, oder wenn man wie es bei uns schon mal vorgekommen ist, der DB online geändert worden ist und offline nicht, somit keine Chance einen AG Abzug mit diesem DB zu machen!

    Viele Grüße
    Michael

    Gruß
    Michael

Similar Threads

  1. Flexible BDE-Anbindung?
    By Mecki in forum Programmierstrategien
    Replies: 4
    Last Post: 03.12.2013, 07:44
  2. OPC BDE Fehler
    By Power_Pete in forum Hochsprachen - OPC
    Replies: 13
    Last Post: 19.05.2011, 13:53
  3. Freeware-BDE
    By Ralle in forum Werbung und Produktneuheiten
    Replies: 20
    Last Post: 25.11.2009, 10:46
  4. Anlage mit BDE-System ausrüsten
    By Georgius in forum HMI
    Replies: 29
    Last Post: 19.05.2008, 16:12
  5. BDE-System mit S5
    By knollmeister in forum Simatic
    Replies: 8
    Last Post: 07.09.2007, 18:07

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •