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

Seite 6 von 8 ErsteErste ... 45678 LetzteLetzte
Ergebnis 51 bis 60 von 78

Thema: Strukturiertes Programmieren durch Programmbausteine

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


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von KingHelmer Beitrag anzeigen
    Habe ich große Mengen an Variablennamen zu ändern (als Beispiel), dann kann ich dies ganz locker in word oder einem .txt bearbeiten und einfach in das ST Programm einfügen.
    Mit FUP oder anderen "visuellen" Sprachen geht das leider nicht.
    geht das nicht? die Darstellung in eine Textsprache umstellen oder besser noch in der "visuellen" Sprache [sic!] die Funktion Suchen/Ersetzen verwenden?
    um an die Welt anzuknüpfen in der ich die meiste Zeit unterwegs bin: Bei Step7 kann ich Operanden- oder Symbolvorrang für das gesamte Programm wählen und mit der Funktion "Umverdrahten" oder mit der Änderung des Symbols programmweite Änderungen durchführen - klingt komisch...
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

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

    Standard

    Zitat Zitat von KingHelmer Beitrag anzeigen

    Habe ich große Mengen an Variablennamen zu ändern (als Beispiel), dann kann ich dies ganz locker in word oder einem .txt bearbeiten und einfach in das ST Programm einfügen.
    Mit FUP oder anderen "visuellen" Sprachen geht das leider nicht.

    Ich handhabe es so, dass ich alles, was den Anwender angeht (vieleicht die ersten beiden Bausteinebenen) mit FUP zuweise. Alles andere ist ausschließlich ST und kann schön von Projekt zu projekt einfach kopiert werden anstatt umständlich exportiert/importiert oder als .lib angelegt.
    Also dafür gibt es doch Quellen in Step 7 z.B. und das funktioniert perfekt.
    Ich schreibe viel in irgendeinem Editor und kompiliere es.

    Und in ST bzw SCL Netzwerke mit umfangreichen Bitverknüpfungen zu debuggen, das ist es Erlebnis. Doch muss nicht wirklich sein.


    bike
    "Any fool can write code that a computer can understand.
    Good programmers write code that humans can understand."
    --Martin Fowler

  3. #53
    Registriert seit
    27.06.2009
    Ort
    am Nordharz
    Beiträge
    3.717
    Danke
    443
    Erhielt 919 Danke für 740 Beiträge

    Standard

    Zitat Zitat von Bapho Beitrag anzeigen
    Code:
    if DB1.DBX0.0       // Auto FC1 Zeile 20
         or DB1.DBX0.1  // Hand FC1 Zeile 40
       OR DB1.DBX0.2 // Einrichten FC1 Zeile 60
       then
       A1.0:=true; // Lampe EIN 
    else 
       A1.0:=false; // Lampe AUS
    end_if;
    Genau sowas ist für mich das Paradebeispiel für 'ne IF-THEN-Orgie unter SCL/ST (ungeachtet der Absolutadressierung)

    Ich würde da immer eine Zuweisung bevorzugen:
    Code:
    A1.0 := DB1.DBX0.0       // Auto FC1 Zeile 20
        OR DB1.DBX0.1  // Hand FC1 Zeile 40
        OR DB1.DBX0.2; // Einrichten FC1 Zeile 60

  4. #54
    Registriert seit
    01.10.2012
    Beiträge
    203
    Danke
    12
    Erhielt 56 Danke für 36 Beiträge

    Standard

    Ich habe das Gefühl ich werde missverstanden.

    Ich lass das ganze Code Zeugs mal weg und möchte nochmal meinen Standpunkt zum Thema verdeutlichen. "strukturiertes Programmieren"
    Wie ich oben schon schrub geht es mir dabei ums Prinzip.
    Ich betreue komplexe Fertigungszellen, so etwa in der Größenordnung von 6 Maschinen mit je eigener SPS, Roboter, Messautomaten, Laser, vor- uind nachgelagerte Anlagen + übergeordnetes Leitsystem. Diese Kisten sind fast alle, ausser Leitsystem, mit DP/DP Kopplern mit der Zellensps verbunden. Warenträger läuft ein, ID wird beim Leitsystem aungefragt, Material ID + Rezepte + Kommisionierdaten werden zurückgeschickt und die Zelle reagiert entsprechend darauf.
    Wenn das Material fertig bearbeitet ist, wird der Warenträger wieder abgemeldet und weitergeschickt, inkl. diverser Meldungen wie NIO, Zustand der Anlagen usw.
    Das der ganze Spass recht anfällig ist, liegt in der Natur der Sache, hat das Leitsystem richtig geantwortet, ist überhaupt ein Telegramm raus, ist auf einem Band ein Ini kaputt, hat der Robi übergriffen, ist eine Maschine in Störung usw. usf.
    Man kann sowas bis zu einem bestimmten Punkt im Programm abfangen bzw. konkrete Meldungen ausgeben, aber es wird immer zu unvorhergesehenen Zuständen kommen und dann muß der Instandhalter zügig den Fehler finden und dafür ist unbedingt eine klar strukturierte und verständliche Programmierung notwendig, gepflegte und kommentierte Varablentabellen und regelmäßige Unterweisungen.
    Meine Erfahrungen haben folgendes gezeigt, meterlange UND Verknüpfungen in FUP sind für die meisten Leute unverständlich, SCL/ST wird meist in Servickursen sehr stiefmütterlich behandelt, super laufende Anlagen die komplett in AWL sind, inkl. massenweise indirekter Adressierung + Sprunglisten sind für Instandhalter fast nicht zur durchschauen.
    Deswegen von mir das Beispiel mit der verschachtelten Zuweisung. Jemand der nicht jeden Tag damit zu tun hat, beißt sich dann an sowas die Zähne aus.
    Auch wenn ihr mich dafür verteufelt, ich mache endlose if/then Orgien, ordentlich und sinnvoll in beschriftete FC/FB verpackt mit Kommentaren zu den Querverweisen. Das mag sich auf den ersten Blick schlecht lesen lassen, ok, aber bei der Fehlersuche kann man sich ratzbatz zum Problem durchhangeln, die Leute wollen das ja nicht alles von oben bis unten lesen, nur über die QVL hinspringen und sehen wo es klemmt.

    Außerdem hab ich euch alle lieb und jetzt sage ich gfanz laut JEHOVAAA!
    Geändert von Bapho (27.05.2014 um 17:55 Uhr)
    Nüchtern betrachtet war es besoffen besser.

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

    Dass das mit FUP nicht geht war ja klar, gib den Leuten KOP! Da kann man mit dem Finger das Signal verfolgen ...
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  6. #56
    Registriert seit
    01.10.2012
    Beiträge
    203
    Danke
    12
    Erhielt 56 Danke für 36 Beiträge

    Standard

    Zitat Zitat von vierlagig Beitrag anzeigen
    Dass das mit FUP nicht geht war ja klar, gib den Leuten KOP! Da kann man mit dem Finger das Signal verfolgen ...
    da ist der Meter dann horizontal statt vertikal
    Nüchtern betrachtet war es besoffen besser.

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

    Zitat Zitat von Bapho Beitrag anzeigen
    da ist der Meter dann horizontal statt vertikal
    Ja UND der überbezahlte Instandhalter wird es verstehen - versprochen!
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

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

    Standard

    Zitat Zitat von Bapho Beitrag anzeigen
    Ich habe das Gefühl ich werde missverstanden.

    Ich lass das ganze Code Zeugs mal weg und möchte nochmal meinen Standpunkt zum Thema verdeutlichen. "strukturiertes Programmieren"
    Wie ich oben schon schrub geht es mir dabei ums Prinzip.
    Ich betreue komplexe Fertigungszellen, so etwa in der Größenordnung von 6 Maschinen mit je eigener SPS, Roboter, Messautomaten, Laser, vor- uind nachgelagerte Anlagen + übergeordnetes Leitsystem. Diese Kisten sind fast alle, ausser Leitsystem, mit DP/DP Kopplern mit der Zellensps verbunden. Warenträger läuft ein, ID wird beim Leitsystem aungefragt, Material ID + Rezepte + Kommisionierdaten werden zurückgeschickt und die Zelle reagiert entsprechend darauf.
    Wenn das Material fertig bearbeitet ist, wird der Warenträger wieder abgemeldet und weitergeschickt, inkl. diverser Meldungen wie NIO, Zustand der Anlagen usw.
    Das der ganze Spass recht anfällig ist, liegt in der Natur der Sache, hat das Leitsystem richtig geantwortet, ist überhaupt ein Telegramm raus, ist auf einem Band ein Ini kaputt, hat der Robi übergriffen, ist eine Maschine in Störung usw. usf.
    Man kann sowas bis zu einem bestimmten Punkt im Programm abfangen bzw. konkrete Meldungen ausgeben, aber es wird immer zu unvorhergesehenen Zuständen kommen und dann muß der Instandhalter zügig den Fehler finden und dafür ist unbedingt eine klar strukturierte und verständliche Programmierung notwendig, gepflegte und kommentierte Varablentabellen und regelmäßige Unterweisungen.
    Meine Erfahrungen haben folgendes gezeigt, meterlange UND Verknüpfungen in FUP sind für die meisten Leute unverständlich, SCL/ST wird meist in Servickursen sehr stiefmütterlich behandelt, super laufende Anlagen die komplett in AWL sind, inkl. massenweise indirekter Adressierung + Sprunglisten sind für Instandhalter fast nicht zur durchschauen.
    Deswegen von mir das Beispiel mit der verschachtelten Zuweisung. Jemand der nicht jeden Tag damit zu tun hat, beißt sich dann an sowas die Zähne aus.
    Auch wenn ihr mich dafür verteufelt, ich mache endlose if/then Orgien, ordentlich und sinnvoll in beschriftete FC/FB verpackt mit Kommentaren zu den Querverweisen. Das mag sich auf den ersten Blick schlecht lesen lassen, ok, aber bei der Fehlersuche kann man sich ratzbatz zum Problem durchhangeln, die Leute wollen das ja nicht alles von oben bis unten lesen, nur über die QVL hinspringen und sehen wo es klemmt.

    Außerdem hab ich euch alle lieb und jetzt sage ich gfanz laut JEHOVAAA!

    Also langsam solltest du dir Gedanken mache, ob du vielleicht dein Problem völlig falsch beschrieben hast.

    Es gibt in vielen Firmen den Ansatz zu standardisieren.
    Dass in in einem bestimmten Baustein diese, in einem anderen ein andere Funktion ausprogrammiert wird und so schnell bei Störungen zum Ziel gekommen wird. (HMI - lite / transline 2000)
    Aber so wie du schreibst, kann dir vermutlich niemand folgen.

    Und noch ein Hinweis:
    Wenn die Instandhaltung ein PG brauchen, dann ist das ein Tiefschlag für die Programmierer (sagt ein anderer User hier, aber der hat absolut recht)


    bike
    "Any fool can write code that a computer can understand.
    Good programmers write code that humans can understand."
    --Martin Fowler

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

    Zitat Zitat von bike Beitrag anzeigen

    Und noch ein Hinweis:
    Wenn die Instandhaltung ein PG brauchen, dann ist das ein Tiefschlag für die Programmierer (sagt ein anderer User hier, aber der hat absolut recht)
    Das ist doch Blödsinn!
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  10. #60
    Registriert seit
    07.03.2004
    Beiträge
    4.369
    Danke
    946
    Erhielt 1.158 Danke für 831 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    [SV]
    Hilfe! bike zitiert mich, gibt mir recht und ich ihm.
    [/SV]
    If you open your Mind too much, your Brain will fall out.

  11. Folgender Benutzer sagt Danke zu zotos für den nützlichen Beitrag:

    vierlagig (27.05.2014)

Ähnliche Themen

  1. Dokumentation erstellte Programmbausteine
    Von husox81 im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 19.04.2010, 18:15
  2. Programmbausteine schachteln
    Von Seraph im Forum Programmierstrategien
    Antworten: 9
    Letzter Beitrag: 02.11.2009, 22:59
  3. Strukturiertes bibliotheksfähiges Programm
    Von Snake im Forum CODESYS und IEC61131
    Antworten: 3
    Letzter Beitrag: 15.10.2008, 11:30
  4. Opensource SPS-Programmbausteine
    Von Anonymous im Forum Programmierstrategien
    Antworten: 8
    Letzter Beitrag: 06.01.2006, 08:18
  5. Opensource SPS-Programmbausteine
    Von Der Nörgler im Forum Stammtisch
    Antworten: 9
    Letzter Beitrag: 25.11.2005, 19:52

Lesezeichen

Berechtigungen

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