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

Seite 1 von 9 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 90

Thema: SCL -Arrays mit einander vergleichen

  1. #1
    Registriert seit
    02.09.2008
    Beiträge
    132
    Danke
    38
    Erhielt 6 Danke für 6 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Erstmal ein Hallo an alle bin Student der Elektrotechnik und befinde mich gerade im Praxissemester.

    Soll für ein Projekt eine Funktion entwickeln die 2 Arrays mit einandder vergleicht und dann bei ungleich bzw gleich einen wert ausgibt.

    Die Funktion ist als Überprüfung einer eingabe gedacht also wenn neue eingabe muss sie sich ja vom alten unterscheiden nur dann wird der rest des programmes ausgeführt.

    Bei beckhoff gibts es das schon vorprogrammiert aber bei Siemens leider nicht.

    Wäre für jede Hilfe dankbar

    Grüßle Matthias
    Zitieren Zitieren SCL -Arrays mit einander vergleichen  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.786
    Danke
    398
    Erhielt 2.414 Danke für 2.010 Beiträge

    Standard

    Hallo Matthias,
    also ...
    wenn es bei Beckhoff da etwas gibt, das du brauchen kannst, warum passt du es dir dann nicht für Siemens an ...?
    und dann ...
    wie sieht denn dein bisheriger Ansatz zu dem Thema aus ... und woran hängt es bei dem ...?

    Gruß
    LL

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

    ein tipp von mir: machs in SCL, da kannst du arrays indiziert ansprechen und damit dann zum vergleichen schöne schleifen bauen...

    [edit] oh, steht ja schon im titel ... ähh ... dann packenen wir halt noch ne sinnvolle info dazu:

    http://support.automation.siemens.co...iew/de/5949672
    [/edit]
    Geändert von vierlagig (02.09.2008 um 12:46 Uhr)
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  4. #4
    MatthiasH24 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.09.2008
    Beiträge
    132
    Danke
    38
    Erhielt 6 Danke für 6 Beiträge

    Standard

    Hi,

    ja das anzupassen ist leider nicht wirklich so einfach da ich davon kein quellcode habe. es gibt schon funktionen im Internet die nachgebaut sind aber die funktionieren leider nur mit REAL und das kann ich nicht gebrauchen.

    mein bisheriger Ansatz ist eher bescheiden habe schon was ausprobiert mit na schleife aber komm damit nicht wirklich klar.

    Und im internet habe ich auch schon lange rumgesucht. Es ist nur so wenn die funktion nicht steht kann ich nicht weiter programmieren bzw geht ohne die gar nichts

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

    dein problem liegt also darin, dass du die programmiersprache nicht kennst und auch nicht kennenlernen willst, irgendwie nicht so richtig lust hast dich da einzulesen, lieber bißchen was zusammenkopierst und dann frustriert zum himmel schreist "sone scheiße hier - warum geht das nicht!?" ???

    zeig uns, was du bisher hast, dann werden schon einige kommen und dich in die richtige richtung drücken nd wenn du dran bleibst läuft das dinge ende der woche ... allerdings mußt du dafür deine einstellung zum programmieren nochmal überdenken ...
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  6. #6
    MatthiasH24 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.09.2008
    Beiträge
    132
    Danke
    38
    Erhielt 6 Danke für 6 Beiträge

    Standard

    Was heißt hier keine lust zum programmieren das stimmt nicht wirklichn habe hier das das buch Automatisieren mit Step 7 in AWl und SCL. DAs ich SCL noch nicht wirklich behersche gebe ich zu aber ich arbeite dran.

    Ich kann es nur zeigen wie es bei Beckhoff geht das ist halt eine wirklich feine sache

    IF M_Change_Var_ix = 1 THEN
    MEMCMP_INT[1] := MEMCMP ( pBuf1 := ADR(alterwert) ,pBuf2 := ADR(neuerwert) ,n := SIZEOF (alterwert) );

    IF (MEMCMP_INT[1] <> 0) THEN
    (* Wenn eine Vorwahl Änderung der WKZ erfolgt, Nockenautomatik ausschalten *)
    Vorwahl := TRUE;
    END_IF
    neuer wert := alter wert;

    wobei die alten und neuen werte als Array [1..32] of BOOl

    dann habe ich mir überlegt etwas über awl zu probieren was ich aber nicht soll

    es gilt n-1 = alter wert
    n = neuer wert

    L n-1
    Ln
    <>I
    spb aenderung
    nop 0

    anderung: L n
    T n-1

    oder ich habe mir es über eine if else funktion überlegt die aber nur auf papier probiert also weiß nicht ob es so gehen kann

    if n>n-1
    then ergebnis +1
    elseif n<n-1
    then ergebnis -1

    else gleich ergebnis = 0

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

    verstehe den einwurf mit AWL nicht...

    hast du dir denn die SCL-umgebung mal angeschaut? grundaufbau der bausteine mal angesehen? eine funktionierende funktion mal angeschaut? ... dann wirst du sehen, dass es von dem code, den du dir da irgendwo rausgesucht hast, gar nicht soweit weg ist...
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  8. #8
    MatthiasH24 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.09.2008
    Beiträge
    132
    Danke
    38
    Erhielt 6 Danke für 6 Beiträge

    Standard

    ja das steht auch in dem buch wo ich habe. Das schlimme ist ja ich weiß das ich davon gar nicht soweit weg bin wenn nur nicht das memcmp fehlern würde.

    Ich muss halt unbedingt diese funktion mit Arrays machen da es so an die SPS ankommt mit schon vorgegebenen varaiblen und alles da kann ich nichts mehr dran ändern.

    Eine Idee wäre noch ich lade die arrays in ein datenbaustein und verarbeite sie dann da weiter nachdem ich sie umgewandelt habe das Prob ist nur dabei das zuviel zeit verloren geht. Es muss schnell gehen. Darf leider nicht sagen wofür ich diesen Code brauche

  9. #9
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.255
    Danke
    537
    Erhielt 2.705 Danke für 1.954 Beiträge

    Standard

    Zitat Zitat von MatthiasH24 Beitrag anzeigen
    Ich muss halt unbedingt diese funktion mit Arrays machen da es so an die SPS ankommt mit schon vorgegebenen varaiblen und alles da kann ich nichts mehr dran ändern.
    Wie genau kommen denn die Array-Daten nun an, wo liegen sie zum verarbeiten bereit? In deinem DB, in Eingangsworten? In einem bereits definiertem Array oder als lose folge von Intwerten?
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  10. #10
    MatthiasH24 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.09.2008
    Beiträge
    132
    Danke
    38
    Erhielt 6 Danke für 6 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Die daten kommen in einem bereits definierten Array an mittels der Viso wenn der einrichter auf F2 drückt werden die daten an die sps übergeben

Ähnliche Themen

  1. DBs nach einander lesen
    Von sb9674 im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 07.12.2009, 20:28
  2. 2 Arrays aus 2 DBs vergleichen
    Von Günni1977 im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 03.12.2008, 17:14
  3. dynamische Arrays?
    Von merlin im Forum CODESYS und IEC61131
    Antworten: 7
    Letzter Beitrag: 30.05.2008, 16:06
  4. Pointer und Arrays
    Von SolSna im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 26.02.2008, 20:16
  5. arrays mit udt...
    Von Jochen Kühner im Forum Simatic
    Antworten: 17
    Letzter Beitrag: 01.12.2005, 14:27

Lesezeichen

Berechtigungen

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