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

Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 23

Thema: DB auswerten aber wie?

  1. #11
    Avatar von Servernexus
    Servernexus ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    27.08.2008
    Ort
    im gelobten Land Bayern
    Beiträge
    213
    Danke
    35
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Verpolt Beitrag anzeigen
    Das wäre ja dann Minimum ein Doppelwort (32bit)

    Es sind 10 Int mit den entsprechenden Werten



    Der nächste Befehl im selben Doppelword? Oder in einem anderen?
    Der nächste Befehl steht in den selben Int aber halt mit anderen Werten

    Es sind 10 Int mit den entsprechenden Werten
    Der nächste Befehl steht in den selben Int aber halt mit anderen Werten
    Das größte Problem eines PC ist der, der davor sitzt!

  2. #12
    Registriert seit
    19.06.2008
    Ort
    Ostalbkreis
    Beiträge
    3.140
    Danke
    201
    Erhielt 553 Danke für 498 Beiträge

    Standard

    So ähnlich könnte es ohne Schleife gehen

    Code:
    L "BefehlsDoppelwort"
    L "Befehlskombi" // 12365444    
    ==D
    SPBN _be2 //springe nicht, wenn "1"
    
    = "machWas"
    
    SPA Ende // Springe immer
    
    _be2: L "BefehlsDoppelwort"
    L "Befehlskombi" // 444555666
    ==D
    
    SPBN _be3
    
    = "machWiederWas"
    
    SPA Ende
    .
    .
    _be3: 
    
    
    
    
    Ende: nop 0

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

    Servernexus (15.11.2011)

  4. #13
    Avatar von Servernexus
    Servernexus ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    27.08.2008
    Ort
    im gelobten Land Bayern
    Beiträge
    213
    Danke
    35
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Super jetzt wirds interressant.
    Nur wie bekommeich nun die 10 Int in die erste Zeile und den Vergleichswertwert mit 10 Int in die 2. Zeile deiner Anweisung?
    Das größte Problem eines PC ist der, der davor sitzt!

  5. #14
    Registriert seit
    19.06.2008
    Ort
    Ostalbkreis
    Beiträge
    3.140
    Danke
    201
    Erhielt 553 Danke für 498 Beiträge

    Standard

    Code:
    L "BefehlsDoppelwort" //Befehlswort ändert sich zur Laufzeit ?
     L "Befehlskombi1" // Vergleich mit 1. Wert // 1234556 
    ==D 
    SPBN _be2 //springe nicht, wenn "1"
      = "machWas"
    
     SPA Ende // Springe immer
    
    _be2: L "BefehlsDoppelwort" 
    L "Befehlskombi2" // Vergleich mit 2. Wert / 4445555
     ==D  
    SPBN _be3
    
      = "machWiederWas"  
    
    SPA Ende 
    
    _be3: L "BefehlsDoppelwort" 
    L "Befehlskombi3" // Vergleich mit 3. Wert / 88885555
     ==D  
    
    SPBN _be4  
    
    = "machdochWas"
    SPAEnde
    
    _be4: ...
    
    
    Ende: Nop 0
    Also es gibt 10 Befehle und die sind fix, dann für Befehlskombi deine "Wünsche eintragen"

    10 mal den DOPPELInteger mit deinen möglichen 10 Befehlen vergleichen. Einer wird schon passen--->machWas, oder sprung zum nächsten Vergleich.

    PS: Werde aber aus deiner Formulierung/Aufgabe immernoch nicht schlau. 10 mögliche Befehle für 1 Doppelinteger (10 Kombi's) oder pro (10)Doppelinteger 10 Befehle (100 Kombi's)
    Geändert von Verpolt (14.11.2011 um 13:53 Uhr)

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

    Servernexus (15.11.2011)

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

    Ich glaube, der TE meint, dass in jedem Int eine Ziffer steht, und dass er 10 Integer mit je einer Ziffer hat.
    Gruß
    Michael

  8. #16
    Avatar von Servernexus
    Servernexus ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    27.08.2008
    Ort
    im gelobten Land Bayern
    Beiträge
    213
    Danke
    35
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Zitat Zitat von M-Ott Beitrag anzeigen
    Ich glaube, der TE meint, dass in jedem Int eine Ziffer steht, und dass er 10 Integer mit je einer Ziffer hat.
    genau so 10 Int für einen Befehl und in jedem Int steht eine Zahl (Wert). Aus diesen Zahlen oder Ziffern setzt sich ein Befehlssatz zusammen auf den ich reagieren muss
    z.b xxx1xx4xx3 heisst xxxMaschine1xxTyp4xxbohren.
    So verständlicher?
    Das größte Problem eines PC ist der, der davor sitzt!

  9. #17
    Registriert seit
    27.08.2003
    Ort
    Schweitenkirchen
    Beiträge
    472
    Danke
    101
    Erhielt 73 Danke für 59 Beiträge

    Standard

    Dann wärs fast einfacher das Int zum String wandeln und auf die einzelnen Zeichen zu vergleichen...
    Wären sogar mit KOP, pro Int, nur ein paar (grosse) Netzwerke.
    Wenn ich einen meiner Finger in eines deiner Nasenlöcher stecke, haben wir beide nen Finger in der Nase

  10. #18
    Avatar von Servernexus
    Servernexus ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    27.08.2008
    Ort
    im gelobten Land Bayern
    Beiträge
    213
    Danke
    35
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Zitat Zitat von Zefix Beitrag anzeigen
    Dann wärs fast einfacher das Int zum String wandeln und auf die einzelnen Zeichen zu vergleichen...
    Wären sogar mit KOP, pro Int, nur ein paar (grosse) Netzwerke.
    Wie würde das dann aussehen? kannst Du ein Beispiel geben?
    Sorry wenn ich auf die Nerven gehe.
    Das größte Problem eines PC ist der, der davor sitzt!

  11. #19
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.718
    Danke
    398
    Erhielt 2.400 Danke für 2.000 Beiträge

    Standard

    Ähh ... woher kommt der Datensalat überhaupt ?
    Ist das vielleicht sowieso schon ein String oder ähnlich ?

  12. #20
    Registriert seit
    09.09.2010
    Beiträge
    76
    Danke
    10
    Erhielt 8 Danke für 8 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Okay, ich werd hier auch nicht schlau. Dein DB sieht so aus:

    Zeile 1 - INT - 4
    Zeile 2 - INT - 3
    Zeile 3 - INT - 2
    etc

    zusammengefügt gibts das bei dir dann sowas: 0040302 ??

    mach es einfach so: 2 (* 1) + 3 * 100 + 4 * 10000 ....

    so hast du deine Zahlenkette quasi horizontal vor dir und kannst sie mit 0020109 oder so vergleichen...

    musst halt aufpassen, dass keiner von den Int dann den nächsten verändert...

    wenn du das so zusammengebaut hast, kannst du ohne weiteres den code von Verpolt verwenden.
    Geändert von EliteGurke (14.11.2011 um 16:48 Uhr)

Ähnliche Themen

  1. DB auswerten
    Von Rauchegger im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 27.10.2010, 22:45
  2. Reihenschaltung wie auswerten
    Von Drain im Forum Elektronik
    Antworten: 21
    Letzter Beitrag: 11.02.2010, 00:27
  3. Wie Spannungssignal auswerten?
    Von Skilppy im Forum CODESYS und IEC61131
    Antworten: 18
    Letzter Beitrag: 23.12.2009, 16:23
  4. Antworten: 7
    Letzter Beitrag: 01.11.2008, 18:41
  5. Statusbits auswerten?
    Von McNugget im Forum CODESYS und IEC61131
    Antworten: 19
    Letzter Beitrag: 28.10.2008, 23:14

Lesezeichen

Berechtigungen

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