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

Ergebnis 1 bis 10 von 10

Thema: DB mit Analogwerten

  1. #1
    Registriert seit
    25.02.2009
    Beiträge
    3
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo bin neu hier und grad mit S7 angefangen, jetzt hab ich mal eine Frage. Ich möchte verschiedene Analoge Eingangswerte in einen DB schreiben und ich möchte den höchsten Wert der dabei am Potentiometer erreicht war wieder auslesen und analog ausgeben.
    Habt ihr eine Idee? Und wann übernimmt er einen Wert in den DB?
    Danke im voraus

    Gruß ziege
    Zitieren Zitieren DB mit Analogwerten  

  2. #2
    Registriert seit
    11.03.2009
    Beiträge
    32
    Danke
    4
    Erhielt 6 Danke für 6 Beiträge

    Standard

    Hallo ziege,

    als erstes musst Du einmal den Analogwert von ein Eingabebaugruppe in die CPU bringen. Dazu ist die AI-Baugruppe in HW-Konfig zu projektieren.

    Ein Weg um den Maximalwert in einem DB zu ermitteln ist folgender:

    Code:
          L     "Datenbaustein".Maximalwert
          L     "Eingangswert1"
          >I    
          SPB   xyz
    
          T     "Datenbaustein".Maximalwert
    
    xyz:  BE

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

    ziege8 (01.04.2009)

  4. #3
    Registriert seit
    27.11.2005
    Ort
    im Osten
    Beiträge
    1.183
    Danke
    141
    Erhielt 271 Danke für 248 Beiträge

    Standard

    Zitat Zitat von ziege8 Beitrag anzeigen
    Hallo bin neu hier und grad mit S7 angefangen, jetzt hab ich mal eine Frage. Ich möchte verschiedene Analoge Eingangswerte in einen DB schreiben und ich möchte den höchsten Wert der dabei am Potentiometer erreicht war wieder auslesen und analog ausgeben.
    Habt ihr eine Idee? Und wann übernimmt er einen Wert in den DB?
    Wenn du da nur den Rohwert in dem DB haben möchtest, sollte das kein Problem sein.
    Code:
    L PEW 256   //Analogwert 
    T DB1.DBW0   //Ziel im DB
    aber ich denke mal du möchtest da schon einem brauchbaren Wert im DB haben, was bedeutet das du den Analogwert erst normieren musst, siehe hierzu den Beitrag von VL in der FAQ, der müsste dir dabei weiterhelfen können.
    Es ist nicht schwierig, mit noch nicht erreichten Zielen zu Leben; schwierig ist, ohne Ziele zu Leben !
    (Günther Kraftschik)

  5. Folgender Benutzer sagt Danke zu MW für den nützlichen Beitrag:

    ziege8 (01.04.2009)

  6. #4
    Registriert seit
    30.03.2009
    Beiträge
    7
    Danke
    0
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Hallo ziege 8,

    sollen die verschiedenen werte gleichzeitig oder nacheinander aufgenommen werden? werden alle werte gespeichert oder nur eine bestimmte zeitlang?

  7. Folgender Benutzer sagt Danke zu Leberwurstlenker für den nützlichen Beitrag:

    ziege8 (01.04.2009)

  8. #5
    ziege8 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    25.02.2009
    Beiträge
    3
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke an alle für die schnellen Antworten. Ich wollte in einer bestimmten zeit (20s) verschiedene Werte anaolg in den DB fortlaufend schreiben aller 1s. D.h. es sollten nach dem Start je nach Skallierung 20 Werte im Db stehen und von denen sollte der größte Wert ermittelt und ausgegeben werden.
    Danke Gruß ziege

  9. #6
    Registriert seit
    01.01.2009
    Ort
    Niedersachsen
    Beiträge
    813
    Danke
    180
    Erhielt 79 Danke für 75 Beiträge

    Standard

    Hallo,

    spontan würde ich sagen, daß Du jede Sekunde mit MOVE und Flanke jeden Meßwert in den DB schreibst.
    Dann einfach auswerten:

    NW1:

    Wert1 > Wert2
    &
    Wert1 > Wert3
    &
    .
    .
    .
    &
    Wert1 > Wert20

    = Move Wert1 in MW


    NW2

    Wert2 > Wert1
    &
    Wert2 > Wert3
    &
    .
    .
    .
    &
    Wert2 > Wert20

    = Move Wert2 in MW

    Das gleiche mit allen anderen Werten.

    Es geht sicher auch kürzer, aber da müste ich auf die Erfahrenen Benutzer verweisen.

  10. Folgender Benutzer sagt Danke zu Jan für den nützlichen Beitrag:

    ziege8 (02.04.2009)

  11. #7
    Registriert seit
    15.10.2007
    Ort
    St.Pölten
    Beiträge
    875
    Danke
    98
    Erhielt 200 Danke für 188 Beiträge

    Standard

    such nach bubblesort.da wirst du sehen was jan meint.
    hier noch ein beispiel
    http://www.sps-forum.de/showpost.php...26&postcount=7
    Geändert von Gerhard K (01.04.2009 um 21:38 Uhr)
    Beginne jeden Tag mit einem lächeln,es kann dir nämlich während des Tages sehr schnell vergehen.

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

    ziege8 (02.04.2009)

  13. #8
    Registriert seit
    01.01.2009
    Ort
    Niedersachsen
    Beiträge
    813
    Danke
    180
    Erhielt 79 Danke für 75 Beiträge

    Standard

    Ich habs gewusst.

    Es geht auch kürzer.

    Habe die Angewohnheit bei neuen Aufgaben einfach nur die Aufgabenstellung zu nehmen, logisch zu formulieren und dann einfach runterzuschreiben. Einkürzen geht dann immernoch.

  14. Folgender Benutzer sagt Danke zu Jan für den nützlichen Beitrag:

    ziege8 (02.04.2009)

  15. #9
    Registriert seit
    30.03.2009
    Beiträge
    7
    Danke
    0
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Brauchst du die Werte nur für die suche nach dem max-wert? dann würde ich die gar nicht speichern, sondern gleich beim aufnehmen vergleichen

    u M0.0 // merker für Auftragsstart
    spbn m000
    l pew 100 // analoger Eingangswert
    l db1.dbw0 // kann auch mw sein?
    <i // weil Eingang ja nur wort
    spb vorb // wenn keiner dann vorbei
    l pew 100 // analoger Eingangswert
    t db1.dbw0 // kann auch mw sein?
    vorb: nop 0
    m000: nop 0

    u m0.1 // Auftrag für Ausgabe
    spbn m001
    l db1.dbw0
    t paw 102
    m001: nop 0

    u m0.3 // auftragsstart zum initialisieren
    spbn m002
    l 0 // analoger Eingangswert
    l db1.dbw0
    m002: nop 0

    wenn du die werte wirklich alle speichern willst, dann kannst du mit indirekter adressierung arbeiten (ist dann so bibliotheksfähig) oder wirklich in jedemaufnahmezyklus 20 werte umherschieben. den vergleich würde ich immer sofort bei der messwerttaufnahme machen.

  16. Folgender Benutzer sagt Danke zu Leberwurstlenker für den nützlichen Beitrag:

    ziege8 (02.04.2009)

  17. #10
    ziege8 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    25.02.2009
    Beiträge
    3
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Danke Jungs für die Antworten. Problem erledigt, ich brauchte nur den max Wert und hab den über Vergleicher rausbekommen. Also danke nochmal an alle.

    Gruß ziege

Ähnliche Themen

  1. Arbeiten mit Analogwerten
    Von snemeis im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 19.03.2015, 12:37
  2. Hilfe zu Analogwerten
    Von 817Christoph im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 26.05.2010, 12:51
  3. Normieren von Analogwerten
    Von Andy Latte im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 22.05.2007, 15:08
  4. Scalieren von Analogwerten
    Von A.Ott im Forum Simatic
    Antworten: 18
    Letzter Beitrag: 22.02.2007, 10:53
  5. Schwankungen bei Analogwerten
    Von INST im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 12.05.2004, 18:34

Lesezeichen

Berechtigungen

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