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

Ergebnis 1 bis 10 von 10

Thema: Taster verschiedene Wertigkeiten addieren

  1. #1
    Registriert seit
    10.10.2010
    Beiträge
    65
    Danke
    11
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    ich habe 5 Taster programmiert die nachher verschiedene Wertigkeiten haben sollen.
    Taster 1 :5 Euro
    Taster 2 :7 Euro
    Taster 3 :9 Euro
    Taster 4 :11 Euro
    Taster 5 :14 Euro

    Jedesmal wenn ich einen Taster drücke soll es über ein VW addiert werden.

    Jetzt soll aber über einen 6.Taster nur die zuletzt eingegebene Wertigkeit subtrahiert werden (Storno letzte Eingabe)

    Das ganze soll auf einer s7-200 laufen.

    WinCC Advance ist bereits erstellt (Taster v0.1,V0.2,V0.3,V0.4 und v0.6)
    Stornotaster (v0.6)
    Resettaster (v0.7) soll VW auf 0 setzen.

    Habe schon alles ausprobiert aber nichts hinbekommen(besonders die Funktion Storno letzte Wertigkeit subtrahieren)

    Hat jemand ne Idee ?
    Sollte nicht zu kompliziert werden da ich nachher in 9 SBR`s habe in denen das ganze parallel laufen soll.Also 9 x 7 Taster
    Zitieren Zitieren Taster verschiedene Wertigkeiten addieren  

  2. #2
    Registriert seit
    08.02.2007
    Ort
    A-2320
    Beiträge
    2.255
    Danke
    244
    Erhielt 332 Danke für 303 Beiträge

    Standard

    In Abhängigkeit der Flanke der jeweiligen Taste springst Du an eine Programmstelle (5 Möglichkeiten).
    Dort lädst du einen Wert (5,7,9,11, 14) in den Akku und speicherst diesen.
    Absprung zu einer Marke (immer dieselbe) wo du den Gesamtwert nimmst und den Akkuwert oder den Gespeicherten addierst.
    Drückt man die Stornotaste springst du zu einer Marke wo Du vom Gesamtwert den gespeicherten Wert (ist ja der letzte der gemerkt wurde) wieder abziehst.

    Alles klar?

    In der 300er gibt es auch in FUP die Möglichkeit eine Addition bedingt "EN" auszuführen, ob das bei der 200er auch geht weiss ich nicht.

  3. Folgender Benutzer sagt Danke zu borromeus für den nützlichen Beitrag:

    blaupille29 (29.11.2010)

  4. #3
    Registriert seit
    10.10.2010
    Beiträge
    65
    Danke
    11
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Ich habe noch nie mit Sprungmarken gearbeitet.
    Ich habe es gerade versucht so wie es mir logisch erschien,aber leider steht beim übersetzen in dem Netzwerk:

    Netzwerk 20, Zeile 1, Spalte 5: FEHLER 51: Befindet sich eine Operation LBL, NEXT, SCR oder SCRE im Netzwerk, darf keine andere Operation im Netzwerk enthalten sein.

  5. #4
    Registriert seit
    08.02.2007
    Ort
    A-2320
    Beiträge
    2.255
    Danke
    244
    Erhielt 332 Danke für 303 Beiträge

    Standard

    Du solltest Dein Programm posten, dann kann Dir ein netter 200er-Programmierer sicher helfen.

  6. Folgender Benutzer sagt Danke zu borromeus für den nützlichen Beitrag:

    blaupille29 (23.01.2011)

  7. #5
    Registriert seit
    18.11.2010
    Beiträge
    8
    Danke
    1
    Erhielt 1 Danke für 1 Beitrag

    Standard

    also ich würde dies genau gleich machen wie borromeus.

    Du soltest die Taster mit Flanken auswerten um mit Hilfe von Sprungmarken die gewünschte Operation durchzuführen.

    Wenn du eine Addition rückgängig machen willst ist der letzte Wert ja noch im Akku2 gespeichert, ... also auch kein Problem.

    Gruß
    Michi

  8. Folgender Benutzer sagt Danke zu Copyright für den nützlichen Beitrag:

    blaupille29 (29.11.2010)

  9. #6
    Registriert seit
    10.10.2010
    Beiträge
    65
    Danke
    11
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Habe es dank eurer Ratschläge hinbekommen.

  10. #7
    Registriert seit
    10.10.2010
    Beiträge
    65
    Danke
    11
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Leider doch nicht.
    ich habe 9 SBR in denen jeweils die Operation laufen soll.
    5 davon kann ich mit AC0 AC1 AC2 AC3 und AC4 hinbekommen.
    Dann hat die s7-200 keine mehr.

    Gibt es nen Trick dabei ?

  11. #8
    Registriert seit
    08.02.2007
    Ort
    A-2320
    Beiträge
    2.255
    Danke
    244
    Erhielt 332 Danke für 303 Beiträge

    Standard

    Was machst Du mit den Akkus?
    Wofür brauchst Du mehr als einen, maximal zwei?
    Speicherst Du in den Akkus die Werte rein?

    Als Speicher verwendet man Variablen!!

  12. Folgender Benutzer sagt Danke zu borromeus für den nützlichen Beitrag:

    blaupille29 (23.01.2011)

  13. #9
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.314
    Danke
    932
    Erhielt 3.329 Danke für 2.688 Beiträge

    Standard

    Bei der S7-200 sind auch Arithmetik- und Move-Operationen VKE-abhängig. Man braucht für dieses Programm keine Sprünge.
    Code:
    SUBROUTINE_BLOCK SBR_1:SBR1
    TITLE=Tastenwerte saldieren
    //V0.1 .. V0.7: Tastenbits aus Visu
    //VW100: Wert der zuletzt gedrückten Taste
    //VW200: Summe (Saldo)
    BEGIN
    Network 1 //Taste1 : +5 EUR
    LD     V0.1
    MOVW   5, VW100
    Network 2 //Taste2 : +7 EUR
    LD     V0.2
    MOVW   7, VW100
    Network 3 //Taste3 : +9 EUR
    LD     V0.3
    MOVW   9, VW100
    Network 4 //Taste4 : +11 EUR
    LD     V0.4
    MOVW   11, VW100
    Network 5 //Taste5 : +14 EUR
    LD     V0.5
    MOVW   14, VW100
    Network 6 //Addieren
    LD     V0.1
    O      V0.2
    O      V0.3
    O      V0.4
    O      V0.5
    EU
    +I     VW100, VW200
    Network 7 //Taste6 : letzten Wert Subtrahieren / Storno
    LD     V0.6
    EU
    -I     VW100, VW200
    Network 8 //Taste7 : Reset Saldo und letzten Wert
    LD     V0.7
    MOVW   0, VW200
    MOVW   0, VW100
    Network 9 //Tastenbits löschen
    //SM0.0: Immer Ein
    //Empfehlung:
    //Nach der Verarbeitung die Tastenbits von der Visu löschen, dann muß die Visu das Loslassen 
    //der Tasten nicht signalisieren. Also nur "Schaltfläche_x > Ereignisse > Klicken: SetzeBit".
    //Die Flankenerkennungen ---|P|--- (AWL: EU) in den Netzwerken 6 und 7 können dann entfallen.
    //Dieses Netzwerk mit dem Löschen der Tastenbits am Besten am Ende des OB1 anordnen.
    LD     SM0.0
    R      V0.1, 7
    END_SUBROUTINE_BLOCK
    Einfügen dieses Programmcodes in MicroWIN:
    Obigen Code mit Texteditor als SBR1.AWL speichern. Dann in MicroWIN rechter Mausklick auf Programmbaustein > Importieren...
    und die gerade gespeicherte SBR1.AWL importieren. Ein eventuell schon vorhandener SBR1 wird dabei überschrieben!
    Man kann auch vor dem Speichern die erste Zeile des Codes auf die gewünschte SBR-Nummer anpassen.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  14. Folgender Benutzer sagt Danke zu PN/DP für den nützlichen Beitrag:

    blaupille29 (23.01.2011)

  15. #10
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.314
    Danke
    932
    Erhielt 3.329 Danke für 2.688 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Der Storno des letzten Wertes sollte besser nur einmal möglich sein, deshalb den letzten Wert nach dem Storno löschen.
    Code:
    Network 7 //Taste6 : letzten Wert Subtrahieren / Storno
    LD     V0.6
    EU
    -I     VW100, VW200
    MOVW   0, VW100
    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet
    Zitieren Zitieren Nachtrag  

  16. Folgender Benutzer sagt Danke zu PN/DP für den nützlichen Beitrag:

    blaupille29 (23.01.2011)

Ähnliche Themen

  1. Antworten: 8
    Letzter Beitrag: 23.06.2010, 05:33
  2. Wertigkeiten erkennen und Rangfolge zuweisen
    Von Stoepsel im Forum Programmierstrategien
    Antworten: 2
    Letzter Beitrag: 29.04.2009, 19:28
  3. Antworten: 1
    Letzter Beitrag: 07.10.2008, 11:43
  4. verschiedene ergebnisse aus 0b 35 addieren
    Von stift im Forum Programmierstrategien
    Antworten: 114
    Letzter Beitrag: 03.04.2008, 07:56
  5. BCD addieren CPU 224
    Von digidax im Forum Simatic
    Antworten: 0
    Letzter Beitrag: 13.02.2006, 07:33

Lesezeichen

Berechtigungen

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