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

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

Thema: SFC14 im OB35 - Aktualisierungszeit ?

  1. #1
    Registriert seit
    06.10.2003
    Beiträge
    3.406
    Danke
    448
    Erhielt 502 Danke für 406 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich habe vor, mit einer C7-633-DP über eine Beckhoff-Busanschaltung BK3150 und dem RINCK-electronic Multiplexer MUX-U16 Temperaturwerte ein zu lesen. An und für sich ist das ja kein Problem. Ich setze die jeweilige Adresse und nach Ablauf einer gewissen Zeit Wandlungszeit lese ich den entsprechenden Wert ein.

    1. Nun habe ich eine kleine Unklarheit mit der MUX-Frequenz. Im Datenblatt steht "max. 100 Hz, (0,5 - 10 sec.)". Was ist mit 0,5..10s gemeint? Ich sehe keinen Zusammenhang mit den 100Hz. Die Wandlungszeit meiner anvisierten Analogeingsklemmen liegt zwischen 1ms und 4ms. Je nachdem ob ich mich für eine Ein- oder Vierkanalklemme entscheide.

    2. Da ich die Temperaturwerte zu Regelungszwecken verwende, möchte ich (wenn's denn geht) in jedem OB35-Aufruf den jeweils adressierten Kanal möglichst aktuell einlesen. Beim OB35-Aufruf "n" setze ich die Adresse und beim Aufruf "n+1" lese ich den entsprechenden Analogwert. Etwas unsicher bin ich mir eigentlich nur, da das ganze über Profibus abläuft. Kann ich im OB35 die SFC14/15 verwenden? Stellt mir die SFC14 die Daten sofort nach Aufruf komplett zur Verfügung oder benötigt sie dafür mehrere Zyklen? Kann ich diesen einen Analogwert auch ohne die SFC14 konsistent lesen? Ich strebe einen OB35-Zyklus von 100ms an, könnte aber auch mit etwas mehr als 100ms leben (schätzungsweise bis 200..300ms). Kann ich sicher sein dass ich nach 100ms den richtigen Kanal einlese? Oder könnte es vorkommen, dass die Ausgänge (MUX-Adressen) durch irgendwelche Verzugszeiten nicht schnell genug an der DP-Peripherie gesetzt werden und ich den Wert der vorherigen Adresse lese?

    Ausprobieren kann ich noch nichts, sind erst mal nur Vorüberlegungen. Vielleicht hat ja jemand einen Tipp für mich?


    Gruss, Onkel

    Nachtrag zur Vervollständigung:
    Der Messverstärker LC-MV-1xPT1000 wird wie in dieser Anwendung eingesetzt, jedoch nur mit einem MUX. Das muss ich bei der Wandlungszeit natürlich berücksichtigen.

    21.06.2005
    Links aktualisiert
    Zitieren Zitieren SFC14 im OB35 - Aktualisierungszeit ?  

  2. #2
    Registriert seit
    20.06.2003
    Ort
    Sauerland.NRW.Deutschland
    Beiträge
    4.850
    Danke
    78
    Erhielt 800 Danke für 543 Beiträge

    Standard

    Zitat Zitat von Onkel Dagobert
    Etwas unsicher bin ich mir eigentlich nur, da das ganze über Profibus abläuft. Kann ich im OB35 die SFC14/15 verwenden? Stellt mir die SFC14 die Daten sofort nach Aufruf komplett zur Verfügung oder benötigt sie dafür mehrere Zyklen? Kann ich diesen einen Analogwert auch ohne die SFC14 konsistent lesen?Gruss, Onkel
    ich denke schon, dass du den sfc14 im 0b35 aufrufen kannst. soweit ich das weiss arbeitet der sfc14 konsistent. alarm ob's unterbrechen den sfc14 glaub ich. aber das kannst du ja vor dem aufruf des sfc14 abschalten. weiss im mom den sfc dafür nicht.
    ein problem wäre es, denke ich, wenn du den ob35 öfter aufrufen würdest als der sfc14 für seine verarbeitung braucht.

    konsitent ist das bis zu einem L dbdX auf jeden fall. alles was darüber ist nicht.
    .
    mfg Volker .......... .. alles wird gut ..

    =>Meine Homepage .. direkt zum Download

    Meine Definition von TIA: Total Inakzeptable Applikation
    Zitieren Zitieren Re: SFC14 im OB35 - Aktualisierungszeit ?  

  3. #3
    Avatar von Onkel Dagobert
    Onkel Dagobert ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    06.10.2003
    Beiträge
    3.406
    Danke
    448
    Erhielt 502 Danke für 406 Beiträge

    Standard

    Hallo Volker,

    danke für deine schnelle Antwort. Demnach kann ich also im OB35 die SFC14 aufrufen und unmittelbar danach u.a. auf meinen aktuellen Analogwert zugreifen, gut . Ausser dem OB35 verwende ich keine weiteren Alarm-OBs.

    Dann bleibt noch die Frage, ob 100ms vom Aktualisieren der DP-Ausgänge über die SFC15 bis zum Einlesen des DP-Analogwertes über die SFC14 ausreichen? Auch wenn man diese Frage vielleicht nicht mit ja oder nein beantworten kann, wäre mir mit eurer Meinung schon etwas geholfen. Der ein oder andere hat sicherlich etwas feeling für diese Problematik.


    Gruss, Onkel

  4. #4
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard

    Ich habe selbst BECKHOFF analog E/A laufen in einer Anwendung, wo ich Folgeantriebe regele. Benutze allerdings nicht den OB35, sondern lese meine Werte im OB1 ein. Die Zykluszeit ist 18 bis 19.5 Millisekunden. Ich bekomme in jedem Zyklus einen neuen Wert.

    Profibus-Konfiguration:
    3 BKs, einer mit 10 DE, einer mit 8AE, 4AA, 10DE, einer mit 8AA,4AE. 12MBit/s.

    Ich habe so getestet: 50Hz an den Eingang gelegt, pro Zyklus den Wert zuammen mit den Milisekunden der DATE_TIME des OB Aufrufs in einen DB geschreiben, Werte aus DB in Excel übertragen, Diagramm erstellt. Jeder Wert muß ein anderer sein. Werte müssen auf einer Sinuskurve liegen. Verzögerungen machen sich durch Verschiebung schnell bemerkbar.

    Wenn es zeitkritisch ist, würde ich auch darüber nachdenken, einen BC einzusetzen, und die Regelung von dem erledigen zu lassen.

  5. #5
    Avatar von Onkel Dagobert
    Onkel Dagobert ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    06.10.2003
    Beiträge
    3.406
    Danke
    448
    Erhielt 502 Danke für 406 Beiträge

    Standard

    Hallo Zottel,

    auch dir besten Dank für deine sehr überzeugende Hilfe.
    Die Regelungen selbst sind eigentlich nicht zeitkritisch. Ich möchte nur das Multiplexen optimal und kostengünstig ausreizen (ohne BC). Da ich meine Temperaturregler ohnehin im OB35 über einen Aufrufverteiler bearbeite, möchte ich das Multiplexen gleich mit dem Regleraufruf kanalrichtig verbinden. Also über den Aufrufverteiler den zum Regler gehörenden Istwert einlesen und anschließend die Adresse für den nächsten Kanal setzen. Ich denke, es könnte so gehen.

    Die Wandlungszeit der Busklemme kann ich in den Skat drücken. Jetzt beschränkt sich mein Augenmerk nur noch auf die Wandlungszeit des RINCK-Wandlers und auf die Frequenz des MUX. Aber dazu wird mir Herr Rinck am Montag gerne Auskunft geben.


    Gruss, Onkel

    ..und schönes Rest-WE

  6. #6
    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

    Den SFC14 kannst du im OB35 verwenden. Das habe ich vor 4 Wochen für eine Sevoregelung gemacht. Allerdings hole ich da immer genau den gleichen Datenbereich vom Servo und übertrage genau denselben Datenbereich zum Servo. Wenn du die Parameter am SFC14 änderst, ist evtl. nicht gesichert, ob die Daten noch im selben OB35-Zyklus zur Verfügung stehen. In der Hilf steht:

    Mit der SFC 14 "DPRD_DAT" (read consistent data of a DP-normslave) lesen Sie konsistente Daten eines DP-Normslaves/PROFINET IO-Devices aus, wobei für die Maximallänge folgendes gilt: Die Maximallänge entnehmen Sie für die S7-300-CPUs den Handbüchern Automatisierungssystem S7-300: Aufbauen, ET 200S Interfacemodul IM151-7 CPU oder Basismodul BM147CPU. Bei den S7-400-CPUs beträgt die Maximallänge 32 Bytes. Falls bei der Datenübertragung kein Fehler auftrat, werden die gelesenen Daten in den durch RECORD aufgespannten Zielbereich eingetragen.
    Wenn also wirklich eine direkte Datenübertagung mit dem Slave durchgeführt wird, dauert die bei ca. 2-5ms Bus-Zykluszeit länger. als dein OB35 offen ist, die Daten liegen evtl. erst beim nächsten Mal im Record, das solte man zumindest einmal in der Praxis überprüfen.
    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

  7. #7
    Avatar von Onkel Dagobert
    Onkel Dagobert ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    06.10.2003
    Beiträge
    3.406
    Danke
    448
    Erhielt 502 Danke für 406 Beiträge

    Standard

    Hallo Ralle,

    danke. Wenn es bei dir im OB35 geklappt hat, müsste es bei mir auch funktionieren. Ich ändere nicht die Parameter der SFCs, mein Analogwert liegt immer auf der selben Adresse, überträgt jedoch nacheinander verschiedene Werte. Falls es dennoch Probleme gibt, dann setze ich im OB35 lediglich meine MUX-Adresse im DB und mache die SFC-Aufrufe wie gewohnt im OB1 (ca. 20ms). Zum Testen oder Überwachen beschalte ich dann sicherheitshalber einen ungenutzen MUX-Kanal mit einem Festwiderstand. Wenn ich dann noch die Fehlerinformation der SFCs auswerte, habe ich glaube alles getan. Ich muss halt sicherstellen können, dass meine Temperaturwerte nicht durcheinander geraten, das wäre fatal. Bis das Projekt aktuell wird, werden noch Monate vergehen.


    Bis dahin, Onkel Dagobert

  8. #8
    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

    Wie bekommst du mit, welcher Wert dir zurückgeliefert wird, das Beste wäre, wenn im gleichen Record mit dem Temperaturwert auch der "Muxwert" zurückgegeben wird, dann bist du aus dem Schneider. Ansonsten weißt du nicht genau, wann der neue Wert wirklich anliegt.
    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
    Avatar von Onkel Dagobert
    Onkel Dagobert ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    06.10.2003
    Beiträge
    3.406
    Danke
    448
    Erhielt 502 Danke für 406 Beiträge

    Standard

    Mahlzeit,

    daran dachte ich auch schon. Ich könnte die Adressausgänge der Peripherie zurückvertrahten auf Eingänge und diese dann gemeinsam mit dem Analogwert übertragen und auf ihre Richtigkeit überprüfen. Andererseits erscheint mir das allerdings ein wenig übertrieben. Na, mal sehen wie's läuft.

    Wenn ich Kanal 0 (0000) und Kanal 16 (1111) mit einem Festwiderstand beschalte und deren Werte überwache, sollten eigentlich alle Fehlerquellen hinreichend abgedeckt sein, einschliesslich die des MUX.


    Gruss, Onkel

  10. #10
    Avatar von Onkel Dagobert
    Onkel Dagobert ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    06.10.2003
    Beiträge
    3.406
    Danke
    448
    Erhielt 502 Danke für 406 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    10.07.2005

    Hallo Leute,

    die Realisierung des Projekts steht bevor. Der Umfang der Anlage hat sich inzwischen verdoppelt und die Hardwareauswahl hat sich etwas geändert. Wir verwenden eine VIPA314(DP-Master), ein OP7 (ein OP17 wäre ideal) und eine Beckhoff-Busanschaltung sowie zwei Multiplexer von RINCK ELECTRONIC. Auf den o.g. PT1000-Wander (1s Wandlungszeit) habe ich verzichtet und stattdessen eine KL3202-0028 (250ms Wandlungszeit) verwendet.

    Meine ursprünglichen Bedenken wegen der SFC's im OB35 haben sich erübrigt. Das Multiplexen funktioniert prinzipiell sehr gut. Die Schaltverzögerung des Multiplexers kann man in den Skat drücken. Nach Herstellerangaben liegt die Durchschaltzeit bei 25us. Die Schwachstelle bei der ganzen Geschichte ist die Filterzeit bei der PT1000-Wandlung. Diese Funktion übernimmt die KL3202-0028, ich denke, das ist eine gute Wahl. Dennoch habe ich ein Problem damit.

    Kennt sich jemand mit dieser Klemme aus? Mein derzeitiges Problem liegt bei der Umparametrierung der Filterkonstante. In der Default-Einstellung (250ms ) komme ich auf eine Abtastrate von 600ms. Bei 16 Kanälen hätte ich dann nur alle 9,6s einen aktuellen Messwert pro Kanal. Wenn ich per Registerkommunikation die Filterkonstante (R37) aktiviere und im Register 37 0x0000 (250ms) eintrage, komme ich bereits auf eine Abtastrate von 375ms. Wenn ich dann allerdings die Filterkonstante nach Handbuch KL320xd.pdf verändere, ändert sich zunächst erst einmal garnichts. Erst nach Spannungswiederkehr (steht nicht im Handbuch) wird die Filterkonstante aktiv. Bei einer somit eingestellten Wandlungszeit von bis zu 65ms komme ich mit meiner Abtastrate auf 125ms. Damit könnte ich sehr gut leben, wenn denn mein Messwert noch stimmen würde. Er ist immer noch sehr stabil, liegt jedoch völlig abseits der Realität. Erst ein Zurückstellen der Filterkonstante auf 0x0000 und Netzwiederkehr ermöglicht den richtigen Messwert, dann jedoch wieder bei 375ms.

    Kennt jemand dieses Problem?

    Laut Angaben des Beckhoff-Supports gilt das Handbuch der KL3202 ebenso für die Sonderklemme KL3202-0028.


    Gruss, Onkel


    "Meine Abtastrate":
    Experimentell ermittelte Multiplexer-Frequenz, bei der sich die Messwerte der Kanäle noch sauber trennen lassen. Beim Probieren habe ich einen SPS-Analyzer zu schätzen gelernt. Durch das Überlagern des internen, freilaufenden Multiplexers der KL3202 und meiner zwei 16-kanaligen RINCK-Multiplexer ergeben sich interessante Effekte.
    Es gibt viel mehr Leute, die freiwillig aufgeben, als solche, die echt scheitern.
    Henry Ford

Ähnliche Themen

  1. TwinCat C# Aktualisierungszeit
    Von simon86 im Forum CODESYS und IEC61131
    Antworten: 1
    Letzter Beitrag: 14.04.2011, 10:50
  2. Profinet und Aktualisierungszeit
    Von snowbda im Forum Feldbusse
    Antworten: 7
    Letzter Beitrag: 29.03.2009, 11:25
  3. Aktualisierungszeit
    Von breno im Forum HMI
    Antworten: 3
    Letzter Beitrag: 25.02.2009, 20:22
  4. SFC14 in AG
    Von Andy_speedy im Forum Feldbusse
    Antworten: 8
    Letzter Beitrag: 16.03.2008, 15:35
  5. PNIO Aktualisierungszeit auslesen
    Von misconduct im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 04.09.2007, 10:19

Lesezeichen

Berechtigungen

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