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

Seite 1 von 5 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 41

Thema: Vererbung möglich bei vielen identischen DP-Slave??

  1. #1
    Registriert seit
    17.08.2012
    Beiträge
    48
    Danke
    14
    Erhielt 0 Danke für 0 Beiträge

    Reden


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo ihr Lieben,
    ich bin der neue. Und habe auch gleich eine Frage... ich erarbeite mir sämtliche Kenntnisse im Selbststudium also bitte nicht über meine "dummen" Fragen lachen, bin ein ziemliche Neuling.

    Verwendete CPU: - CPU315-2DP
    Verwendete SW: - Step7 V5.5 (bevorzugt AWL)

    Ich habe vor einige Gasdurchflussregler (alle identische Bauart) über Profibus (DP-V0) mit der SPS zu verbinden. Gibt es bei Step 7 eine Möglichkeit der Vererbung wie bei C++? - d.h. muss ich sämtliche Abfragen für jeden Regler einzeln machen oder kann ich einen baustein schreiben und den dann nach und nach für jeden Regler aufrufen? Jeder Regler muss allerding seperat einstellbar sein.

    Vielen lieben Dank im Vorraus

    Liebe Grüße

    GSOhm
    Zitieren Zitieren Vererbung möglich bei vielen identischen DP-Slave??  

  2. #2
    Registriert seit
    19.07.2010
    Beiträge
    1.289
    Danke
    213
    Erhielt 267 Danke für 233 Beiträge

    Standard

    Du kannst selbstverständlich einen FB (Funktionsbaustein) schreiben der alle Funktionalitäten des Gasdruchflussreglers beschreibt. Diesen kannst du dann auch sooft aufrufen wie es nötig ist.
    mfG Aventinus

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

    GSOhm (17.08.2012)

  4. #3
    GSOhm ist offline Benutzer
    Themenstarter
    Registriert seit
    17.08.2012
    Beiträge
    48
    Danke
    14
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ah ok,

    wie lässt sich das denn im Programm realisieren? Es wurden allen Reglern in der Hardwarekonfig für Ihre einzelnen Ein und Ausgaben eine Adresse zu gewiesen - z.B. Steckplatz1 - DP-Kennung (67) - Bezeichnung (FlowRd) - E-Adresse (256..259). beim 2. Regler hat nun aber Steckplatz1 mit der gleichen Funktion die E-Adresse (268...271)

    Wie würde man denn dann realisiern rufe FB auf für GasdurchflussreglerNr.1 oder GasdurchflussreglerNr.2?

    Danke im Vorraus

    Liebe Grüße GSOhm

  5. #4
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.222
    Danke
    533
    Erhielt 2.697 Danke für 1.949 Beiträge

    Standard

    Du kannst einem FB IN- OUT- und INOUT-Parameter übergeben. Diese werden im FB (In Step 7 oben im Kopfteil des Bausteineditors, oberhalb des Codes) definiert. Außerdem kannst du STAT und TEMP-Var definieren, z.Bsp. für Zwischenergebnisse und Werte, die du über mehrere SPS-Zyklen benötigst. (Ich empfehle dir, erst einmal dafür nur die statischen Variablen zu nutzen). Im FB arbeitest du nur mit IN, OUT, INOUT und den statischen Variablen. Beim Aufruf des FB gibst du alle Variablen, die benötigt werden mit.
    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

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

    GSOhm (17.08.2012)

  7. #5
    GSOhm ist offline Benutzer
    Themenstarter
    Registriert seit
    17.08.2012
    Beiträge
    48
    Danke
    14
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hi,

    das verstehe ich zwar noch nicht so ganz (bin ja auch noch blutiger Anfänger), versuche aber erstmal mein Glück vielleicht bekomme ich ja noch einen Geistesblitz, erstmal vielen Dank für die schnellen Antworten... wenn ich nicht weiter kommen sollte hoffe ich das ich hier noch mal auf ein offenes Ohr stosse.

    Liebe Grüße

    GSOhm

  8. #6
    GSOhm ist offline Benutzer
    Themenstarter
    Registriert seit
    17.08.2012
    Beiträge
    48
    Danke
    14
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hi nochmal,

    muss noch mal eben bei etwas nachhaken wo ich echt total auf dem Schlauch steh, ist wahrscheinlich total simpel,
    da ich sowas aber wie gesagt noch nie gemacht habe, komm ich nicht drauf...

    Ich habe mir jetzt überlegt das ich einen FB nehme in dem ich nur nach und nach die Regler "aufliste (evt. mit irgenteiner ID)", von dort aus gehe ich mit jedem aufgelisteten Regler in einen zweiten FB (mit DB) in dem ich dann für jeden Regler den Datenaustausch mache... müsste doch passen oder??? -> die Frage wäre nur wie identifiziere ich die einzelnen Regler???

    Kann auch sein das mein Gedankenschritt bis hierhin schon falsch ist..

    Vielen Dank im Vorraus

    Liebe Grüße

    GSOhm

  9. #7
    Registriert seit
    27.09.2010
    Beiträge
    516
    Danke
    36
    Erhielt 63 Danke für 56 Beiträge

    Standard

    die regler haben doch immer fest definierte und abfolgende adressen im e/a-bereich.

    hier kannst du also diesen umstand nutzen und durch angabe der start-adresse des e/a-bereichs (e und a können auch die selben adressen haben) via pointer indirekt auf die ios- zugreifen, dafür benötigt dein fb einfach ein IN (Typ WORD) für den pointer
    Kompetenz ist mehr als nur (Halb-)Wissen

    --

    Tools und Software unter http://vs208210.vserver.de/dlf

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

    GSOhm (17.08.2012)

  11. #8
    GSOhm ist offline Benutzer
    Themenstarter
    Registriert seit
    17.08.2012
    Beiträge
    48
    Danke
    14
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ok,

    Vielen Dank für den Denkanstoss werde nun mit diesen Informationen erstmal etwas tüfteln...

    Liebe Grüße

    GSOhm

  12. #9
    Registriert seit
    06.10.2003
    Beiträge
    3.410
    Danke
    449
    Erhielt 504 Danke für 407 Beiträge

    Standard

    Hallo GSOhm,

    am einfachsten geht es (gerade für Anfänger) , wenn du einen UDT mit den Schnittstellendaten deiner identischen Slaves anlegst. Diesen UDT verwendest du nun für jeden Teilnehmer in einem DB. Dort hinein schreibst du die DP-Eingänge und liest die DP-Ausgänge. In deiner FC oder in deinem FB legst du (z.Bsp.) einen IN_OUT-Parameter vom Typ des UDT an. Jetzt kannst du innerhalb deines Bausteins symbolisch auf die Daten des jeweiligen Slaves zugreifen.

    Poste mal die HW-Konfig eines deiner Slaves und die Schnittstellenbeschreibung (Datenpunkte), vielleicht kann man dann mal konkret ein Beispiel liefern. Am besten hängst du dein Projekt in archivierter Form an. Das eigentliche Programm kannst du vorher entfernen. Wichtig ist eigentlich erst einmal nur ein Projekt mit der HW-Konfig.


    Gruß, Onkel
    Es gibt viel mehr Leute, die freiwillig aufgeben, als solche, die echt scheitern.
    Henry Ford

  13. Folgender Benutzer sagt Danke zu Onkel Dagobert für den nützlichen Beitrag:

    GSOhm (20.08.2012)

  14. #10
    Registriert seit
    06.10.2009
    Ort
    NRW
    Beiträge
    1.572
    Danke
    63
    Erhielt 259 Danke für 219 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich hab mal auf die schnelle ein Beispielprojekt gemacht.

    Die Reglerbausteine werden als Multiinstanz aufgerufen.

    Ist halt mal so ein Lösungsvorschlag. Darf auch gern von den "Profis" kritisch beäugt und ggf. korrigiert werden
    Angehängte Dateien Angehängte Dateien
    Meine Motivation läuft nackig mit einem Cocktail über eine Wiese.

  15. Folgender Benutzer sagt Danke zu Tigerente1974 für den nützlichen Beitrag:

    GSOhm (20.08.2012)

Ähnliche Themen

  1. Antworten: 4
    Letzter Beitrag: 17.02.2012, 11:17
  2. Vererbung von C# Klassen
    Von Benni im Forum Hochsprachen - OPC
    Antworten: 12
    Letzter Beitrag: 07.11.2011, 11:30
  3. Prüfung und Bewertung von identischen Teilen
    Von becksgoldpc im Forum Programmierstrategien
    Antworten: 1
    Letzter Beitrag: 09.02.2010, 18:10
  4. Ist eine "universelle" Profibus Slave möglich?
    Von JesperMP im Forum Feldbusse
    Antworten: 8
    Letzter Beitrag: 17.03.2008, 10:38
  5. Baustein Vererbung
    Von TimoS im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 01.12.2004, 19:25

Lesezeichen

Berechtigungen

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