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

Seite 4 von 6 ErsteErste ... 23456 LetzteLetzte
Ergebnis 31 bis 40 von 51

Thema: Dezimalzahl in Datenbaustein laden

  1. #31
    Registriert seit
    20.10.2009
    Beiträge
    30
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich bins nochmal!

    Nachdem das Programm auf meiner Test-CPU funktioniert hat, habe ich es jetzt auf die eigentliche CPU geschrieben.

    Und sieh da, es funktioniert NICHT?!

    Wenn ein Eingang von 0 auf 1 wechselt wird immer die 0 ausgewertet und nie die Nummer des Eingangs. Das heisst es kommt egal bei welchem Eingang immer die erste Meldung.

    Ein zweites Phänomen dem ich auf der Spur bin wäre, dass ich eine Verzögerung von 4 Meldungen habe. Wo kann man das einstellen, dass die Meldungen in Echtzeit, also Meldung kommt -> Meldung wird sofort gedruckt, verarbeitet werden??

    Ich hab so das gefühlt kurz vor der Ziellinie zu sein, und etz kleb ich auf der Laufbahn fest

  2. #32
    Registriert seit
    30.10.2009
    Ort
    10 km vom Herzen der Natur
    Beiträge
    1.626
    Danke
    120
    Erhielt 340 Danke für 255 Beiträge

    Standard

    Sind da noch andere Bausteine auf deiner CPU, die evtl. auf die gleichen Speicherbereiche zugreifen, wie Deine Auswertung?
    Gruß
    Michael

  3. #33
    Registriert seit
    20.10.2009
    Beiträge
    30
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Alle verwendeten Merker, Merkerworte etc. sind frei und werden nicht beeinflusst.
    Ich hab mir eine VAT-Tabelle angelegt und da kann ich manchmal sogar sehen wie er für einen Bruchteil einer Sekunde die richtige Dezimalzahl reinschreibt. Ich hab iwie das Gefühl dass es mit der Zykluszeit zusammenhängen könnte. Aber wissen tu ich es nicht.

  4. #34
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    Zitat Zitat von Alexus85 Beitrag anzeigen
    Alle verwendeten Merker, Merkerworte etc. sind frei und werden nicht beeinflusst.
    Ich hab mir eine VAT-Tabelle angelegt und da kann ich manchmal sogar sehen wie er für einen Bruchteil einer Sekunde die richtige Dezimalzahl reinschreibt. Ich hab iwie das Gefühl dass es mit der Zykluszeit zusammenhängen könnte. Aber wissen tu ich es nicht.
    er schreibt die meldung ja auch nur in einem zyklus rein, wenn du sie danach oder vor der nächsten bearbeitung wieder ablöschst, is sie, öhm, WEG!
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  5. #35
    Registriert seit
    20.10.2009
    Beiträge
    30
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard

    ok, heisst das, dass in diesem einem zyklus dann nicht der befehl zum drucken kommt?

    Hab immernoch keine Erklärung und vorallem keine Lösung

  6. #36
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    Zitat Zitat von Alexus85 Beitrag anzeigen
    ok, heisst das, dass in diesem einem zyklus dann nicht der befehl zum drucken kommt?
    wie setzt du den druckbefehl denn ab?
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  7. #37
    Registriert seit
    20.10.2009
    Beiträge
    30
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Da gibt es ein Anstoßbit. Wenn das Bit von 0 auf 1 wechselt wird der Drucker aktiviert.

    Ich hab auf der Test-CPU es hier eingesetzt:


    //Eingang Abfragen
    U E [AR1,P#0.0];
    FP DBX [AR2,P#0.0];
    FP M1.0 <----- hier
    SPBN nich;

    Bei meinem Testprogramm hat das wunderbar funktioniert. Jetzt bei der eigentlichen CPU nicht mehr. Das Anstoßbit ist NICHT vergeben.

    Zum Test hab ich es einmal manuell ansteuern lassen, sprich im OB 1:

    U E0.3
    FP M1.0

    -> Dann hats geklappt, aber der Drucker hat Meldung 1 gedruckt

  8. #38
    Registriert seit
    30.10.2009
    Ort
    10 km vom Herzen der Natur
    Beiträge
    1.626
    Danke
    120
    Erhielt 340 Danke für 255 Beiträge

    Standard

    Wenn ich mir den Code von 4L genauer angucke fällt mir was auf:
    Versuch mal, die Variable "iNumber" durch ein Merkerwort zu ersetzen.
    Dann müsste jede Zahl solange anstehen, bis die nächste Flanke kommt.
    Da "iNumber" in 4Ls Code nicht vorbelegt wird, kann sie sogar unter Umständen einen völlig falschen Wert ausgeben, anscheinend hast Du aber "Glück" und bekommst nur "0" zurück.
    Gruß
    Michael

  9. #39
    Registriert seit
    20.10.2009
    Beiträge
    30
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard

    @M-Ott

    So, ich ab das jetzt mal beherzigt und "iNumber" durch ein MW ersetzt.

    Jetzt wenn ichs mir in der VAT-Tabelle ansehe bleibt es halt bestehen bis zum nächsten wechsel -> ok

    Trotzdem druckt er immernoch die Meldung für 0 aus!!

    Es ist mir echt unerklärlich warum?!?!

    Genauso unerklärlich wieso auf der Test-CPU das mit dem Anstoßbit ...

    //Eingang Abfragen
    U E [AR1,P#0.0];
    FP DBX [AR2,P#0.0];
    FP M1.0 <----- hier
    SPBN nich;

    ... funktioniert hat.

    Falls das jetzt nicht gehen sollte, wie schreib ich am einfachsten, dass wenn einer der 350 Eingänge kommt, das Anstoßbit kurz auf 1 springt??

  10. #40
    Registriert seit
    30.10.2009
    Ort
    10 km vom Herzen der Natur
    Beiträge
    1.626
    Danke
    120
    Erhielt 340 Danke für 255 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zum Thema 'falsche Meldung':
    Erhälst Du denn den richtigen Wert abhängig vom gesetzten Bit?

    Zum Thema 'Anstoß-Bit'
    FP ...
    FP ...
    funktioniert, ist aber ungewöhnlich.
    FP ...
    = ...
    hat den gleichen Effekt.
    Auf welche CPUs hast Du das Programm bisher aufgespielt?
    Vieleicht sind auch die Zykluszeiten auf der Maschine so kurz, dass Dein Signal zu kurz ist, um den Drucker anzustoßen. In dem Fall müsstest Du Dein Anstoßbit verlängern, was aber (je nach Schalthäufigkeit Deiner Eingänge) dazu führen könnte, dass Dir Signale verloren gehen.
    Gruß
    Michael

Ähnliche Themen

  1. Antworten: 5
    Letzter Beitrag: 01.06.2011, 17:34
  2. CSV in Datenbaustein laden
    Von McLac im Forum Simatic
    Antworten: 0
    Letzter Beitrag: 02.07.2009, 21:56
  3. DB in Dezimalzahl
    Von tisler im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 15.10.2008, 15:20
  4. Dezimalzahl speichern
    Von Syntaxfehler im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 22.01.2008, 15:25
  5. Datenbaustein bei der S7-200 neu laden
    Von hubert im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 24.05.2005, 21:56

Stichworte

Lesezeichen

Berechtigungen

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