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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: Prozessvisualisierung: Daten in einem Datenbaustein sammeln

  1. #1
    Registriert seit
    07.05.2014
    Beiträge
    16
    Danke
    11
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo

    Ich (SPS Neuling) habe im Rahmen meines Studiums die Aufgabe bekommen, ein Programm zu erarbeiten, welches für eine Prozessvisualisierung Daten aus einem externen Gerät in einem Datenbaustein sammelt.

    Es ist ein Funktionsbaustein mit folgenden Parametern zu erstellen:
    - Nummer des zu verwendenden Datenbausteins
    - Ein Eingangsparameter für die Informationen es externen Gerätes
    - Die Anzahl der abzuspeichernden Informationen

    Die Daten sollen ab dem Datenwort ANF gespeichert werden.

    Nunja, das Problem bei der Sache ist, dass SPS für mich absolutes Neuland sind und ich mich erst einige Tage damit beschäftige.
    Mir fehlt insgesamt ein Ansatz, wie ich an dieses Problem herangehen gehen könnte.

    Habt Ihr vielleicht einen Tipp oder Denkanstoß für mich, wie ich mich diesem Problem annehmen kann? Im Moment weiss ich wirklich nicht so richtig weiter...


    Schon einmal herzlichen Dank
    Zitieren Zitieren Prozessvisualisierung: Daten in einem Datenbaustein sammeln  

  2. #2
    Registriert seit
    13.09.2009
    Beiträge
    44
    Danke
    9
    Erhielt 14 Danke für 12 Beiträge

    Standard

    Hallo Reibekuchen,

    wie neu ist denn das Thema für dich? Kannst du einen FB erstellen? Weißt du was IN, OUT, STAT, TEMP usw. heißt? Dann schau mal nach dem Thema "Indirekte Adressierung". Vielleicht reicht das schon für einen ersten Ansatz.
    Die Aufgabenstellung ist aber schon nicht ohne für einen Einsteiger...

    Gruß Christian

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

    Reibekuchen (07.05.2014)

  4. #3
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.224
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Vielleicht auch noch zusätzlich nach "FIFO" hier im Forum suchen, so etwas wäre sicher als Anregung zu gebrauchen.
    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

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

    Reibekuchen (07.05.2014)

  6. #4
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.197
    Danke
    926
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Nicht ganz unwichtig ist auch die Information, für welche SPS Du das Programm schreiben willst, welches Entwicklungssystem Du verwenden mußt und auf welchem Weg die Daten des "externen Gerätes" in Deine SPS kommen.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  7. Folgender Benutzer sagt Danke zu PN/DP für den nützlichen Beitrag:

    Reibekuchen (07.05.2014)

  8. #5
    Reibekuchen ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    07.05.2014
    Beiträge
    16
    Danke
    11
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke Euch

    @ Christian
    Also, grundsätzlich ist Programmieren für mich kein Neuland, jedoch war ich bisher immer in 'Hochsprachen' unterwegs.
    So ein Paar Basics kann ich schon, einen FB erstellen und ein Logikabfragen etc. das klappt schon.
    Mir fehlt nur für weiterreichende Sachen einfach die Praxis bzw. das Verständnis, was wofür eingesetzt wird etc.
    Gibt es zur indirekten Adressierung eine Literatur- bzw. Website empfehlung?

    @ Ralle
    Danke, das werde ich mir ansehen.

    @ Harald
    Grundsätzlich soll das Programm nicht auf Hardware laufen. Vorgabe ist, dass das Programm in AWL für ein SIMATIC S7 System gelöst wird. Dazu wird Step 7 verwendet.
    Was die Daten des "externen Gerätes" angeht, habe ich relativ freie Hand. Es soll sich um Daten wie Stückzahlen o.ä. handeln. Den Datenbaustein soll ich dabei selber "füttern".


    Sorry, wenn ich an einigen Stellen etwas 'dümmlich' beantwortet hab. Tretet mir notfalls nochmal auf die Füße

  9. #6
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.197
    Danke
    926
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Zitat Zitat von Reibekuchen Beitrag anzeigen
    Grundsätzlich soll das Programm nicht auf Hardware laufen.
    Auf was denn dann?
    Oder ist die ganze Aufgabe rein theoretisch?
    Unterstützt Dein "nicht-Hardware-System" wenigstens eine wie auch immer geartete indirekte oder indizierte Adressierung?

    Harald
    Geändert von PN/DP (08.05.2014 um 01:06 Uhr)
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  10. Folgender Benutzer sagt Danke zu PN/DP für den nützlichen Beitrag:

    Reibekuchen (11.05.2014)

  11. #7
    Reibekuchen ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    07.05.2014
    Beiträge
    16
    Danke
    11
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Die Aufgabe soll zu Hause gelöst und anschließend ausgedruckt abgegeben werden.
    Zur Simulation verwende ich S7-PLCSIM.

    Mit 'nicht auf Hardware' meine ich, dass ich es nicht auf einer SPS teste

  12. #8
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.197
    Danke
    926
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Können wir dann also davon ausgehen, daß Du das Programm in AWL oder SCL für eine theoretische S7-300-CPU in Step7 V5.x schreibst und zum Test simulierst?

    Deine Aufgabenstellung hast Du leider sehr schwammig formuliert. Wenn ich Dich richtig verstehe, dann würde ich Dein Problem so lösen, daß ich mir einen ANY-Pointer auf das Speicherziel [DB_Nr].[ANF] zusammenbastle (in TEMP) und dann den SFC20 BLKMOV benutze. Schaue Dir mal das Format des Datentyps ANY an.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  13. Folgender Benutzer sagt Danke zu PN/DP für den nützlichen Beitrag:

    Reibekuchen (11.05.2014)

  14. #9
    Registriert seit
    29.03.2004
    Beiträge
    5.741
    Danke
    143
    Erhielt 1.687 Danke für 1.226 Beiträge

    Standard

    Für die ganze Aktion wird wenn man es ordentlich macht überhaupt keine Indirekte oder Absolutadressierung benötigt, und auch kein Any-Gefrickel.

    Der Baustein der die Daten des Gerätes einsammelt, bekommt dazu einen Ausgang entweder als struct oder udt in dem die Daten liegen. In dem Datenbaustein wird ebenfalls ein identisch aufgebauter struct/udt angelegt, und der Sammelbaustein bekommt dieses als Parameter.
    Wenn du von "Hochsprachen"-Seite her kommst würdest du das doch genau so machen. Und nicht einer Funktion eine Adresse übergeben, und dann manuell irgendwelche Offsets daraufrechnen.

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

    Reibekuchen (11.05.2014)

  16. #10
    Registriert seit
    13.09.2009
    Beiträge
    44
    Danke
    9
    Erhielt 14 Danke für 12 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Reibekuchen,

    die indirekte Adressierung habe ich auch nur an Beispielen von Kollegen und viel googeln gelernt.
    Interessant ist z.B. das Dokument:
    https://people.fh-landshut.de/~sbr/V...2010_Teil2.pdf

    Oder auch hier im Forum gibts ne Menge, z.B. das hier:
    S7 Indirekte Adressierung


    Zitat Zitat von Thomas_v2.1 Beitrag anzeigen
    Für die ganze Aktion wird wenn man es ordentlich macht überhaupt keine Indirekte oder Absolutadressierung benötigt, und auch kein Any-Gefrickel.

    Der Baustein der die Daten des Gerätes einsammelt, bekommt dazu einen Ausgang entweder als struct oder udt in dem die Daten liegen. In dem Datenbaustein wird ebenfalls ein identisch aufgebauter struct/udt angelegt, und der Sammelbaustein bekommt dieses als Parameter.
    Wenn du von "Hochsprachen"-Seite her kommst würdest du das doch genau so machen. Und nicht einer Funktion eine Adresse übergeben, und dann manuell irgendwelche Offsets daraufrechnen.
    @ Thomas: Wenn ich das richtig verstanden habe funktioniert das doch nur, wenn du vorher den DB kennst? Wenn die DB-Nr. als Variable übergeben wird komm ich soweit ich weiß nicht um indirekte Adressierung herum.

    Gruß Christian

  17. Folgender Benutzer sagt Danke zu Schwerer_Ausnahmefehler für den nützlichen Beitrag:

    Reibekuchen (11.05.2014)

Ähnliche Themen

  1. Step 7 Daten per FTP in einem Datenbaustein ablegen
    Von Cleverly im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 17.01.2014, 10:26
  2. Daten sammeln im Programm
    Von Paul1987 im Forum CODESYS und IEC61131
    Antworten: 1
    Letzter Beitrag: 10.08.2009, 11:41
  3. Daten sammeln und schieben
    Von Forge_01 im Forum Programmierstrategien
    Antworten: 3
    Letzter Beitrag: 25.05.2008, 19:32
  4. Daten im Datenbaustein sortieren
    Von Golden Egg im Forum Stammtisch
    Antworten: 5
    Letzter Beitrag: 11.10.2006, 11:20
  5. wie lege ich daten in einem Datenbaustein mit arrays ab ?
    Von Tom100 im Forum Programmierstrategien
    Antworten: 7
    Letzter Beitrag: 03.06.2005, 09:03

Lesezeichen

Berechtigungen

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