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

Ergebnis 1 bis 10 von 10

Thema: Hallo Zusammen,

  1. #1
    Registriert seit
    02.01.2011
    Beiträge
    7
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Titel soll natürlich heißen: Rezeptur-Synchronisation

    Und jetzt "Hallo Zusammen"
    ich hab an die Experten hier im Forum eine Frage und zwar wie kann ich von zwei Basic Panels (beide KTP 1000 DP) die Rezepturdaten synchronisieren?

    Also wenn ich auf einem Panel einen neuen Datensatz eingeben, soll dieser automatisch ans andere Panel übertragen werden?
    Gibt es da eine Lösung?

    Der Aufbau der Hardware ist im Anhang abgebildet.

    Für eine Antwort wäre ich sehr dankbar.

    mfg
    Angehängte Grafiken Angehängte Grafiken
    Zitieren Zitieren Hallo Zusammen,  

  2. #2
    Registriert seit
    25.06.2007
    Ort
    Dresden
    Beiträge
    3.930
    Danke
    465
    Erhielt 878 Danke für 634 Beiträge

    Standard

    Zitat Zitat von Mayx1988 Beitrag anzeigen
    Also wenn ich auf einem Panel einen neuen Datensatz eingeben, soll dieser automatisch ans andere Panel übertragen werden?
    Gibt es da eine Lösung?
    Da kann ich dir nur empfehlen, das Rezeptussystem in die SPS einzulagern.
    Ist zwar schade drum, aber leider nicht zu ändern.

    Frank
    Grüße Frank

  3. #3
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard

    Zitat Zitat von IBFS Beitrag anzeigen
    Da kann ich dir nur empfehlen, das Rezeptussystem in die SPS einzulagern.
    Ist zwar schade drum, aber leider nicht zu ändern.

    Frank
    Warum Schade?
    Ich halte meist die Rezepte und deren Verwaltung in der PLC.
    DB gibt es genug und wenn einmal die entsprechenden Bausteine für speichern, suchen und erstellen geschrieben sind ist das doch eine gute Lösung.
    Als Luxus dann die Rezepte noch auf eine MMC schreiben, dann klappt es auch mit dem Rezept.


    bike

  4. #4
    Registriert seit
    25.06.2007
    Ort
    Dresden
    Beiträge
    3.930
    Danke
    465
    Erhielt 878 Danke für 634 Beiträge

    Standard

    Zitat Zitat von bike Beitrag anzeigen
    Warum Schade?
    Schade deshalb, weil der Kollege 'Mayx1988' bestimmt schon gedacht
    hat, jetzt bin ich fertig und muss nur noch die Sync. machen. Und dann
    komme ich und sage .... alles nochmal, aber in der SPS.

    Frank
    Grüße Frank

  5. #5
    Avatar von Mayx1988
    Mayx1988 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.01.2011
    Beiträge
    7
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Schon einmal vielen Dank für die Antworten. Das hat mich schon mal ein Stück weiter gebracht.

    Jetzt taucht bei mir aber gleich die nächste Frage auf und zwar muss ich dann pro Rezeptur ein Datenbaustein (DB) anlegen?
    Oder lässt es sich einfacher realisieren?

    Meine zweite Frage wäre, wie ich einen String in der SPS abspeichen kann?
    Wenn ich nämlich die Rezeptur mit einem Bereichzeiger an die SPS übertragen lasse und diese dann anschließend auf den beiden Touchpanels anzeigen lasse, erhalte ich nur viele Rautezeichen?! Kann es mir aber nicht erklären. Der Datentyp den ich dafür genommen habe ist String[256] welcher ich mit DB3.DBB6 über das Basic Panel ansprechen kann.

    Hat mir hier vielleicht jemand auch einen guten Tip?

    Vielen Dank schon im Voraus

    MFG
    Mayx1988
    Geändert von Mayx1988 (09.02.2011 um 17:13 Uhr)

  6. #6
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard

    Zitat Zitat von Mayx1988 Beitrag anzeigen
    Schon einmal vielen Dank für die Antworten. Das hat mich schon mal ein Stück weiter gebracht.

    Jetzt taucht bei mir aber gleich die nächste Frage auf und zwar muss ich dann pro Rezeptur ein Datenbaustein (DB) anlegen?
    Oder lässt es sich einfacher realisieren?

    Meine zweite Frage wäre, wie ich einen String in der SPS abspeichen kann?
    Wenn ich nämlich die Rezeptur mit einem Bereichzeiger an die SPS übertragen lasse und diese dann anschließend auf den beiden Touchpanels anzeigen lasse, erhalte ich nur viele Rautezeichen?! Kann es mir aber nicht erklären. Der Datentyp den ich dafür genommen habe ist String[256] welcher ich mit DB3.DBB6 über das Basic Panel ansprechen kann.

    Hat mir hier vielleicht jemand auch einen guten Tip?

    Vielen Dank schon im Voraus

    MFG
    Mayx1988
    Ja, habe ich.
    Du musst wissen wie groß dein Rezept ist.
    Mit den einzelnen Parametern würde ich eine UDT erstellen und diese in einem DB aufrufen.
    Wie viele Rezepte hast du?
    Es kann dann sein, dass du ab einer gewissen Anzahl mehrere DB brauchst, das kann sein z.B ab Rezept 100, 200 ....

    Warum hast du dir solch langen String definiert?
    Wenn du nur # hast stimmt die Kommunikation nicht, wenn du ASCII Zeichen siehst, aber nicht die richtigen, dann hast du ggF ein Format Problem.
    Was steht in DB? Wenn Online den Baustein öffdnest
    Du muss bedenken, dass wenn du CHAR anzeigst, du nicht ab dem ersten Byte im DB lesen darfst, wenn dieser als String definiert ist.

    bike

  7. #7
    Avatar von Mayx1988
    Mayx1988 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.01.2011
    Beiträge
    7
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Also soviel rezepte sind es nicht (so ungefähr 20 bis 30 Stück)
    Wenn ich dich also richtig verstehe kann ich die Rezepturgeschichte im Touchpanel komplett vergessen und mach das rein über die Variablen.

    Aber mir ist es noch nicht ganz klar wie ich das realisieren kann?!!
    Also in meine Test-Rezeptur hat eine INT, eine REAL, und eine STRING[25] Variable.
    So habe ich auch die den UDT angelegt.
    Muss ich dann pro Rezeptur die ich speichern möchte ein UTD Datentyp in einem DB anlegen oder wie geht das?
    Wenn ja wie kann ich diese verschiedenen DB Adressen über das TouchPanel ansprechen?

    Das mit der String-Konvertierung war ein guter Tip. Das Problem habe ich jetzt wenigstens hinbekommen.

    Vielen Dank

  8. #8
    Registriert seit
    30.08.2010
    Ort
    Östereich
    Beiträge
    1.458
    Danke
    503
    Erhielt 217 Danke für 192 Beiträge

    Standard

    gibts mehrere Möglichkeiten:

    Der Bereich im DB ist zu klein
    Das Ausgabefeld ist zu klein oder falsch parametriert (kein String, Länge stimmt nicht, . . .)

    Warum willst du String nehmen?
    wenn es um aktuelle Variablen in der SPS geht, dann sind INT oder REAL ev auch DINT Werte meist die bessere Wahl.
    Elektrotechnik und Elektronik funktioniert mit Rauch (Beweis: Tritt Rauch aus, funktioniert auch das Bauteil nicht mehr)

  9. #9
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard

    Zitat Zitat von Mayx1988 Beitrag anzeigen
    Also soviel rezepte sind es nicht (so ungefähr 20 bis 30 Stück)
    Wenn ich dich also richtig verstehe kann ich die Rezepturgeschichte im Touchpanel komplett vergessen und mach das rein über die Variablen.

    Aber mir ist es noch nicht ganz klar wie ich das realisieren kann?!!
    Also in meine Test-Rezeptur hat eine INT, eine REAL, und eine STRING[25] Variable.
    So habe ich auch die den UDT angelegt.
    Muss ich dann pro Rezeptur die ich speichern möchte ein UTD Datentyp in einem DB anlegen oder wie geht das?
    Wenn ja wie kann ich diese verschiedenen DB Adressen über das TouchPanel ansprechen?

    Das mit der String-Konvertierung war ein guter Tip. Das Problem habe ich jetzt wenigstens hinbekommen.

    Vielen Dank
    Wenn ich jetzt mich nicht verzählt habe, ist deine UDT dann 30 Worte lang.

    Für jedes Rezept eine UDT in dem DB anlegen.
    Dann hast du einen DB von ca 1000 Worten. Das kann nahezu jede S7 300.
    Zugreifen kannst du über Pointer auf den DB.
    Der String ist der Name des Rezeptes? Wird dieses eingegeben oder ist INT die Rezeptnummer?
    Wenn du mit dem String arbeiten musst, dann brauchst du eine Routine um den String zu suchen, damit das Rezept aktiv wird. Auch brauchst du Funktionen zum Einfügen eines neuen Rezeptes und Löschen.
    Beispiele für solche Routinen gibt es hier als Beispiel,, wenn du nichts findest, dann kann ich ggF etwas zuschicken.

    bike

  10. #10
    Avatar von Mayx1988
    Mayx1988 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.01.2011
    Beiträge
    7
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von bike Beitrag anzeigen
    Der String ist der Name des Rezeptes? Wird dieses eingegeben oder ist INT die Rezeptnummer?
    Wenn du mit dem String arbeiten musst, dann brauchst du eine Routine um den String zu suchen, damit das Rezept aktiv wird. Auch brauchst du Funktionen zum Einfügen eines neuen Rezeptes und Löschen.
    Beispiele für solche Routinen gibt es hier als Beispiel,, wenn du nichts findest, dann kann ich ggF etwas zuschicken.

    bike
    Richtig, der String ist der Name der Rezeptur. Also sollte ich, um es zu vereinfachen, der Rezepturen eine fortlaufende Nummer geben?

    Wie sieht dann so eine Routine aus, die meine aktuell ausgewählten Rezepturdaten in den dafür vorgesehenen DB speichert?
    Bis jetzt kenne ich nur den Weg in dem ich für jede Rezeptur eine eigenen Übertragungsanweisung programmieren muss (also mit Merker).
    Da gibt es doch bestimmt auch eine andere Lösung???


    Danke für die Hilfe
    Geändert von Mayx1988 (12.02.2011 um 09:55 Uhr)

Ähnliche Themen

  1. Hallo zusammen,
    Von pedrolopezlo im Forum Simatic
    Antworten: 10
    Letzter Beitrag: 10.08.2010, 16:46
  2. Hallo
    Von dietmar73 im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 23.04.2010, 14:58
  3. Hallo zusammen,
    Von INST im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 15.02.2007, 12:57
  4. Hallo IBH Fan`s
    Von Wilhelm im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 21.09.2005, 08:14

Lesezeichen

Berechtigungen

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