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

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

Thema: S7-1200 Studienarbeit

  1. #11
    Registriert seit
    19.11.2008
    Ort
    Schweigen am Weintor
    Beiträge
    707
    Danke
    191
    Erhielt 161 Danke für 92 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    ok ... geht wirklich nicht so recht

    hier aber mal eine primitive lösung ...

    weiß ja nicht wieviel bytes du in dem db hast...

    ok aber die db´s müssen nicht symbolisch addressiert sein dafür...
    achtung jetzt wirds primitive

    einfach move baustein
    db1.dbd0 -> db2.dbd0
    db1.dbd4 -> db2.dbd4
    mit der direkten addresse schieber er so schon mal 4 byte´s rum ....

    vielleicht bekommt man auch irgendwie ein indirekten arry hin damit gleich der gesamte inhalt geschoben wird ich probier mal weiter ...

  2. #12
    murg ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    21.04.2010
    Beiträge
    15
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ich habe 500 Byte
    und dann muss ich das ganze 3 mal schreiben ^^

    davor sag ich lieber, dass ich 3 verschiedene Programme mache für die einzelnen Maschinen

    es muss doch ne Lösung geben wie ich den Inhalt eines db in nen 2. db kopieren kann...

  3. #13
    Registriert seit
    19.11.2008
    Ort
    Schweigen am Weintor
    Beiträge
    707
    Danke
    191
    Erhielt 161 Danke für 92 Beiträge

    Standard

    mmm ich habe gerade was entdeckt^^ müsstest du mal ausprobieren ob er es so macht zumindest erstellt er so von sich aus einen pointer xD

    und zwar

    erstelle in deinem DB einen Struct in diesen struct alle deine daten ... bool word real etc...

    wenn du jetzt move grad nur den struct anwählst schreibt der die absolute anfangsaddresse rein P#DB1.DBX0.0 evnt. kopiert er so dann alles probiers mal aus^^

  4. #14
    murg ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    21.04.2010
    Beiträge
    15
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Guten Morgen

    Ja das werde ich gleich mal als erstes versuchen

    Gebe dir dann eine Rückmeldung

  5. #15
    murg ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    21.04.2010
    Beiträge
    15
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Also hab das ganze nun durchgespielt er erzeugt tatsächlich einen Pointer aber, er zeigt mir an das der Typ Struct nicht zum Typ Array passt.

    Des will einfach nicht klappen... aber irgendwie muss das doch machbar sein.

  6. #16
    Registriert seit
    19.11.2008
    Ort
    Schweigen am Weintor
    Beiträge
    707
    Danke
    191
    Erhielt 161 Danke für 92 Beiträge

    Standard

    also du kannst die tabellen auch direkt anwählen dann erzeugt er auch einen pointer!

    ich meine das müsste so gehen

    gibt mir mal einen kurzen übersicht wie dein db überhaupt aussieht

  7. #17
    murg ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    21.04.2010
    Beiträge
    15
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Problem gelöst!

    Der Herr war so schlau und hatte in seinem Quelldatenbaustein eine Zeile mehr enthalten als im Zieldatenbaustein...

    Oh man ... das Problem ist jetzt nur, da ich alles in ein Struct gepackt habe, dass ich im Kompletten Programm alle Variablen ändern darf ^^

    Danke dir erzteufele


    Erweiterung:

    Mein DB sieht nun so aus:

    >Static
    >Daten (als struct)
    Eintrag 1
    Eintrag 2
    .
    .
    .
    Eintrag XXX

    und verschieben tu ich das ganze nur mit move mit dem Befehl: %DB130.Daten

    und nun klappt es
    Geändert von murg (22.04.2010 um 09:16 Uhr)

  8. #18
    Registriert seit
    21.04.2010
    Beiträge
    13
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo!
    Hab da ein ähnliches Problem:
    möchte Messdaten in einer S7-1200 über einen betimmten Messzyklus in einem takt von 1 sekunde in einen DB schreiben.
    Ein Array hab ich in einem DB angelegt.
    Hab das mit den unterschiedlichsten Schiebe-Befehlen versucht. entweder bekomme ich nur einen Wert in mein Array geschrieben oder, wenn ich z.b den counter beim FILL-BLK erhöhe, den Wert mehrmals, aber halt immernur den selben Wert.
    Es fehlt quasi der Befehl: Springe in nächste Zeile
    Hab hier im Forum was von Pointern gelesen, aber kann damit nichts anfangen. Auch in der Hilfe steht net viel..

    wie kann ich das problem denn lösen?

    grüße
    Steffen
    Solong, and thank's for all the fish..

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

  10. #20
    Registriert seit
    21.04.2010
    Beiträge
    13
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    genau diesen beitrag hab ich gefunden und kann nich wirklich was damit anfangen..ich versuch das einfach nochmal irgendwie hinzubekommen..

    nochmals danke für deine hilfe
    Solong, and thank's for all the fish..

Ähnliche Themen

  1. Studienarbeit Siemens vs. Codesys
    Von S7_Student im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 29.05.2009, 13:45
  2. Umfrage zu Studienarbeit
    Von S7_Student im Forum CODESYS und IEC61131
    Antworten: 19
    Letzter Beitrag: 19.05.2009, 16:27
  3. Umfrage zu Studienarbeit
    Von S7_Student im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 08.05.2009, 19:36
  4. Hilfe für Studienarbeit
    Von wormsattack im Forum Feldbusse
    Antworten: 7
    Letzter Beitrag: 14.07.2007, 15:06
  5. Unterstützung meiner Studienarbeit
    Von Unregistriert2 im Forum Suche - Biete
    Antworten: 5
    Letzter Beitrag: 09.05.2006, 15:21

Lesezeichen

Berechtigungen

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