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

Seite 2 von 8 ErsteErste 1234 ... LetzteLetzte
Ergebnis 11 bis 20 von 74

Thema: CP 340 - Messwerte empfangen

  1. #11
    Registriert seit
    04.02.2007
    Beiträge
    2.544
    Danke
    167
    Erhielt 731 Danke für 528 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Da wäre ich vorsichtig,

    1. wenn Du mehr als einen Block an Temperaturen überträgst, weiss ja Sinaut nicht welche Daten das sind ! und wenn da z.B. immer die Temperaturnummer mit übertragen wird, könnte die schon nach einem SPS Zyklus überschrieben werden (eher mehrere).
    2. Beim umschaufeln (ist ja nur ein Pointer basteln) hast du den Vorteil, das die die Daten beobachten und kontrollieren kanst.
    „Wenn du ein Problem hast, versuche es zu lösen. Kannst du es nicht lösen, dann mache kein Problem daraus.“
    Siddhartha Gautama

  2. #12
    Avatar von rs-plc-aa
    rs-plc-aa ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    07.11.2004
    Beiträge
    697
    Danke
    69
    Erhielt 64 Danke für 48 Beiträge

    Standard

    Zitat Zitat von jabba Beitrag anzeigen
    Da wäre ich vorsichtig,

    1. wenn Du mehr als einen Block an Temperaturen überträgst, weiss ja Sinaut nicht welche Daten das sind ! und wenn da z.B. immer die Temperaturnummer mit übertragen wird, könnte die schon nach einem SPS Zyklus überschrieben werden (eher mehrere).
    2. Beim umschaufeln (ist ja nur ein Pointer basteln) hast du den Vorteil, das die die Daten beobachten und kontrollieren kanst.
    Oh, ich glaube dann habe ich was nicht richtig verstanden...

    Ich dachte bis jetzt daß (als Beispiel jetzt) wenn 8 Temperaturen vom Sender bereitgehalten werden ich diese dann in einem Zug empfangen kann da die Länge der Daten länger als nur ein Messwert sein kann - diese also der reihe nach im DB liegen. Beim nächsten Empfang werden dann die bisherigen Werte einfach überschrieben. Weiter ging ich davon aus daß ich dem DB lediglich eine Struktur verpassen muss um die einzelwerte auslesen zu können (also DBW0;DBW2;DBW4...) Die Anzahl und die Reihenfolge der Messwerte ändert sich doch nicht... Also hätte ich SINAUT (welches pro Telegramm 4 Werte überträgt) das so mitgeteilt:

    Telegramm1 : W1=DBxy.DBW0 W2=DBxy.DBW2 ...

    Liege ich da jetzt auf dem Holzweg?
    RS (rs-plc-aa)
    ______________________________________________
    Morgen ist Heute Gestern...
    ______________________________________________
    Installierst du noch - oder Arbeitest du schon ?
    ______________________________________________

  3. #13
    Registriert seit
    04.02.2007
    Beiträge
    2.544
    Danke
    167
    Erhielt 731 Danke für 528 Beiträge

    Standard

    Alle daten hab ich auch nicht mehr parat, ist schon ein paar Jahre her , wo ich die letzte mal 3964R gemacht hab, geht ja heut alles übern BUS.

    Die Blöcke sind glaub ich 64byte, da sind Status und Nutzdaten drin, wenn die Daten mehr sind als möglich kommen halt mehrer Blöcke an.
    Deshalb kann es sein, das es bei deinem Fall ausreicht.
    „Wenn du ein Problem hast, versuche es zu lösen. Kannst du es nicht lösen, dann mache kein Problem daraus.“
    Siddhartha Gautama

  4. #14
    Avatar von rs-plc-aa
    rs-plc-aa ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    07.11.2004
    Beiträge
    697
    Danke
    69
    Erhielt 64 Danke für 48 Beiträge

    Standard

    Zitat Zitat von jabba Beitrag anzeigen
    Alle daten hab ich auch nicht mehr parat, ist schon ein paar Jahre her , wo ich die letzte mal 3964R gemacht hab, geht ja heut alles übern BUS.

    Die Blöcke sind glaub ich 64byte, da sind Status und Nutzdaten drin, wenn die Daten mehr sind als möglich kommen halt mehrer Blöcke an.
    Deshalb kann es sein, das es bei deinem Fall ausreicht.
    Ok, das krieg ich raus (schätze es sind nicht mehr als 32Byte Nutzdaten) -> wenn dem so ist sollte aber mein Gedanke prinzipiell funktionieren ?

    P.S.: SINAUT Task läuft im OB1; P_RCV im OB 35 (250ms) -> ok?
    RS (rs-plc-aa)
    ______________________________________________
    Morgen ist Heute Gestern...
    ______________________________________________
    Installierst du noch - oder Arbeitest du schon ?
    ______________________________________________

  5. #15
    Registriert seit
    04.02.2007
    Beiträge
    2.544
    Danke
    167
    Erhielt 731 Danke für 528 Beiträge

    Standard

    Hallo rs-plc-aa,

    hab auf die schnelle nix gefunden wie gross der Nutzdatenbereich ist.
    Aber wo liegt das Problem die Daten umzuschaufeln sind ja nur ca 10-15Zeilen AWL.

    Also unter der Vorgabe, das die Nutzdaten in einen Block passen
    und die Daten in längeren Abständen gesendet werden, als die Bearbeitung dauert, dann sollte es gehen.
    Aber warum den Baustein nicht im OB1 aufrufen .
    Pro Zyklus werden vom Rückwandbus ich glaube nur 16Byte (bin mir aber nicht mehr sicher) übertragen, bei 60 Byte wären das 4 Zyklen also 1s.
    „Wenn du ein Problem hast, versuche es zu lösen. Kannst du es nicht lösen, dann mache kein Problem daraus.“
    Siddhartha Gautama

  6. #16
    Avatar von rs-plc-aa
    rs-plc-aa ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    07.11.2004
    Beiträge
    697
    Danke
    69
    Erhielt 64 Danke für 48 Beiträge

    Standard

    @jabba: Danke für die Geduld...

    Hm, da verstehe ich jetzt was nicht so ganz -> wofür soll das Umschaufeln gut sein ? Wenn RCV_Enable = TRUE ist dann wird ja (wenn ich richtig verstanden habe) sobald ein Empfang fertig ist der nächste gestartet.? Dabei werden die bisherigen Werte mit den neuen übeschrieben.? Paralell dazu schaut SINAUT in den DB ob sich Werte geändert haben - wenn ja (>Hysterese) dann neues Telegramm mit den aktuellen Werten - wenn nein (<Hysterese) dann mach nix.

    Das einzige was ich mir vorstellen kann was da passieren könnte wäre folgendes: SINAUT erkennt, im OB1 gestarteter weise, daß es ein Telegramm senden soll -> während dessen unterbricht der OB35 den OB1 und fängt an neue Werte in den DB zu schreiben -> bei fortsetzung des OB1 wären die Daten dann inkonsistent -->> meinst du das ?

    Würde das aber nicht auch passieren wenn "umgeschaufelt" wird ?

    Was würde sich ändern wenn beide im OB1 laufen -> wenn es so ist daß die Empfangsdaten mehrere Zyklen benötigen dann wäre es natürlich besser zwischenzuspeichern, wobei das wichtigste ist daß kein "halber Wert" geschrieben wird (also z.B. 4 Stück-weise füllen wäre doch auch o.k. -oder?)

    Dazu sollte man die genaue Vorgehensweise von P_RCV kennen, aber da kann man ja nicht reingucken..., und testen kann ich das momentan noch nicht da noch kein Sender aktiv ist. (wie gesagt ich will vorher so viel wie möglich zusammentragen damit die IB möglichst zügig von statten geht)
    RS (rs-plc-aa)
    ______________________________________________
    Morgen ist Heute Gestern...
    ______________________________________________
    Installierst du noch - oder Arbeitest du schon ?
    ______________________________________________

  7. #17
    Registriert seit
    04.02.2007
    Beiträge
    2.544
    Danke
    167
    Erhielt 731 Danke für 528 Beiträge

    Standard

    Hallo rs-plc-aa,

    ich will dir das ja nicht aufschwatzen, aber wie wir in Köln dazu sagen:

    "et hät noch immer jod jejange"

    Was passiert wenn später mal mehr Daten kommen sollten,
    da blickt dann keiner mehr durch.
    Ich hatte ja angemerkt, wenn das vom Timing passt, ist es kein Problem.

    Weisst Du denn schon mehr über die Gegenseite, wann bzw wie oft werden denn Daten gesendet. Bei Temperaturen reichen ja manchmal alle 10s aus, dann reichen auch die 250ms. Wenn du dann erst an Sinaut das Signal zum senden gibts , wenn NDR kommt geht es auch.

    Ansonsten hast du ja die Funktionen soweit drin, das du das bei der Inbetriebnahme noch anpassen könntest.
    „Wenn du ein Problem hast, versuche es zu lösen. Kannst du es nicht lösen, dann mache kein Problem daraus.“
    Siddhartha Gautama

  8. #18
    Avatar von rs-plc-aa
    rs-plc-aa ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    07.11.2004
    Beiträge
    697
    Danke
    69
    Erhielt 64 Danke für 48 Beiträge

    Standard

    O.K., aber eines verstehe ich immer noch nicht so ganz...

    Wenn die Nutzdaten größer sind als die maximal auf ein mal übertragbaren -> wie sortiere ich das dann auseinander ? Also woher weiss ich daß es Teil1,Teil2... ist ?

    Stehe da irgendwie auf dem Schlauch...
    RS (rs-plc-aa)
    ______________________________________________
    Morgen ist Heute Gestern...
    ______________________________________________
    Installierst du noch - oder Arbeitest du schon ?
    ______________________________________________

  9. #19
    Registriert seit
    04.02.2007
    Beiträge
    2.544
    Danke
    167
    Erhielt 731 Danke für 528 Beiträge

    Standard

    Hallo,

    das steht mit in den Daten, da ist der Header der angibt in welchen DB an welche Stelle.
    Ich hab damal Schrauberdaten empfangen, am Schrauber konnte ich direkt sagen in welchen DB an welche Stelle die Daten sollen.
    Da hab ich auch gedacht, "Holla dat is ja einfach",
    bis dann nix kam, irgendwann hab ich es dann in der Doku gefunden,
    das die Adresse mit übertragen wird, und dann war es ganz einfach.
    Ich schaue mal am Wochenende nach , ob ich den alten Baustein noch habe, da ich die Maschine von 3964R auf ASCII umgestellt habe, da das viel schneller ging.
    „Wenn du ein Problem hast, versuche es zu lösen. Kannst du es nicht lösen, dann mache kein Problem daraus.“
    Siddhartha Gautama

  10. #20
    Avatar von rs-plc-aa
    rs-plc-aa ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    07.11.2004
    Beiträge
    697
    Danke
    69
    Erhielt 64 Danke für 48 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    ...wäre super
    RS (rs-plc-aa)
    ______________________________________________
    Morgen ist Heute Gestern...
    ______________________________________________
    Installierst du noch - oder Arbeitest du schon ?
    ______________________________________________

Ähnliche Themen

  1. PDO empfangen?
    Von fdisk im Forum CODESYS und IEC61131
    Antworten: 3
    Letzter Beitrag: 21.09.2011, 12:17
  2. Messwerte in ein Datenbaustein
    Von baui im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 18.06.2009, 10:44
  3. Messwerte in Texttabelle
    Von steven im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 04.10.2007, 15:36
  4. SMS Empfangen S7-200
    Von xpert im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 08.12.2005, 10:22
  5. messwerte in db
    Von Anonymous im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 22.09.2005, 14:17

Lesezeichen

Berechtigungen

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