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

Seite 24 von 26 ErsteErste ... 142223242526 LetzteLetzte
Ergebnis 231 bis 240 von 253

Thema: Online Lehrgang bei SPS-Forum oder Hausaufgabe

  1. #231
    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 Andy033 Beitrag anzeigen
    Hier mal meine Lösung zur Tankaufgabe.
    Ich geh mal davon aus, dass du den Baustein getestet hast und er funktioniert, dadurch hat er schon eine Existenzberechtigung. Ordentlich kommentiert, Struktur erkennbar - nicht schlecht!

    ABER

    1. ich würd die Ansteuerung des Ventils, die ja offensichtlich über die Grenzstände funktioniert nicht über das berechnete Niveau verknüpfen.

    2. Du gehst in Deinem Baustein davon aus, dass sich der Füllstand um 1% je 0,5s erhöht. Was aber, wenn es nun 0,7s sind? Und sich Prozessbedingt auch noch ändert? Also vielleicht das Ventil nicht mehr ganz frei ist - könnte man das nicht über den reinen Berechnungs- und Vergleichsbaustein und die Erfahrungswerte der Befüllungs- und Entleerungszeit zum einen zur Anzeige bringen zum zweiten somit die Möglichkeit schaffen, dass der Baustein sich an die Anforderungen und nicht die Anforderungen an den Baustein anpasst - ohne das der Programmierer oder eine befähigte Person da noch dran rumdrehen muß?!


    Zitat Zitat von Andy033 Beitrag anzeigen
    - den out habe ich auf eine stat. Var gelegt weil ich auch lesend
    drauf zugreife und keinen in_out verwenden wollte eure meinung.
    Laß das nicht den Ralle lesen ... Zugriffe auf Instanzdatenbausteine sind, ich sag mal, "Naja..." ...
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  2. #232
    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 s.leuschke Beitrag anzeigen
    Hast Du manchmal einen Link, wo man sich über AWL Programmierung Info´s holen kann.
    also so aus der kalten ... ausbildungsunterlagen würd ich sagen, step 7-hilfe und viel geduld und spucke ... die operationsliste (für deine CPU bei http://support.automation.siemens.com) wäre auch nicht schlecht, da gibt es übrigens auch ein AWL-handbuch ... hab da selber noch nicht reinguckt ...
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  3. #233
    Avatar von waldy
    waldy ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    25.10.2003
    Beiträge
    1.425
    Danke
    297
    Erhielt 104 Danke für 69 Beiträge

    Standard

    Hi 4-er,
    ich weiss es nicht, bin ich vielleicht Dumm , nun ich kenne nicht Antwort auf deine Letzte Frage.

    gruß waldy

  4. #234
    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 waldy Beitrag anzeigen
    Hi 4-er,
    ich weiss es nicht, bin ich vielleicht Dumm , nun ich kenne nicht Antwort auf deine Letzte Frage.

    gruß waldy
    Aufgaben und Lösungen aus dem Online-Lehrgang
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  5. #235
    Avatar von waldy
    waldy ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    25.10.2003
    Beiträge
    1.425
    Danke
    297
    Erhielt 104 Danke für 69 Beiträge

    Standard

    Hallo,
    ich wolte nur fragen,
    bedeutet das ende unsere Lehrgang oder geht das noch weiter?

    gruß waldy

  6. #236
    Registriert seit
    06.07.2007
    Beiträge
    2.811
    Danke
    174
    Erhielt 274 Danke für 253 Beiträge

    Standard

    Also wenn ich 4Ls Absicht richtig deute, dann bleibt dieser Lehrgang so bestehen.
    Der andere Thread dient dann nur dazu die Aufgabe selber und die korrekten Lösungen noch einmal zusammemzufassen.
    A programmer is just a tool which converts caffeine into code.

  7. #237
    Registriert seit
    01.08.2006
    Ort
    Nordsaarland
    Beiträge
    1.205
    Danke
    94
    Erhielt 122 Danke für 107 Beiträge

    Standard

    Ohhhh wasssn Scheiß.... wer schreibt denn noch Programme in AWL... das muß in KOP sein.
    Und alles nur für Bitschuppser vom Straßenbau.
    Nein im Ernst, eine sehr gute IDEE. Hat was von einem guten Leitfaden, wenns um Problemansätze geht, die nicht kompliziert sind, aber wenn man auf dem Schlauch steht, oder auf der Leitung sitzt, gerade richtig kommen.
    Mach weiter so nette Gerade so im Zusammenhang mit FC und FB zum mehrmals Verwenden.
    Und nein Waldy, ich denke das diese Oline-Hausaufgaben-Schulung-Nachhilfe.(Wiemanns nennen will) weiter geht.
    Was nicht passt wird Passend gemacht.
    Mehr Powerrrrrr!! *Houwhouwhouw*
    Und Humor ist, wenn man trotzdem lacht.

  8. #238
    Avatar von waldy
    waldy ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    25.10.2003
    Beiträge
    1.425
    Danke
    297
    Erhielt 104 Danke für 69 Beiträge

    Standard

    Hallo,
    ja, das hoffe ich auch. Und warte auf neue Aufgabe von 4-er.

    Hier habe ich wirklich was Gutes gelernt .

    gruß waldy

  9. #239
    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 waldy Beitrag anzeigen
    Und warte auf neue Aufgabe von 4-er.
    hast du aufgaben 1-6 schon durch ... das würde mich wundern!

    btw: ich bin ab heut abend 22uhr wieder da und werde mich der problematik "tank mit virtuellen füllstand" mal widmen - zugegeben, hab es selber ja noch nicht umgesetzt

    bis dahin
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  10. #240
    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
    so, dann wollen wir uns in den gerade frei gewordenen 5 minuten mal der füllstands-erratungstheorie widmen.

    und damit am ende auch was hängen bleibt, werd ich nicht nur sturr die lösung präsentieren sondern versuchen step-bystep zu erklären, wie ich beim entwurf und der realisierung vorgehe.

    als erstes steht die idee im raum:

    wir erinnern uns, ein tank mit zwei meldungen aka min und max, zwischen denen der füllstand durch ein ablassventil gehalten wird soll anhand von erfahrungswerten über die ablass und befülldauer mit einem quasi-analogen füllstandssignal ausgestattet werden.

    das ganze wird ein FB, schon weil wir daten über mehrere zyklen speichern aber auch schnittstellen sparen möchten.

    sammeln wir also erstmal die variablen auf der eingangsseite:

    min und max würden sich anbieten, aber besser ist es gleich den prozess zu benennen, der repräsentiert wird, also befüllen und leeren
    dann hätten wir die beiden füllstandsmaßzahlen zwischen denen der füllstand gehalten wird, also low und high-level
    da wir mit zeiten operieren wollen, aber s5-timer und auch iec-timer irgendwie immer so als bastellösung daher kommen verwende ich bei meiner lösung den cpu-takt
    wir wollen dem baustein auch die möglichkeit geben sich zu initialisieren, also ein zusätzlicher freigabe-eingang
    weiter gedacht bräuchte man noch eine fehlerauswertung, also z.b. di zeit zum ablassen ist viel länger als die bei der initialisierung ermittelte, damit das aber nicht im 100ms bereich liegt nehme ich noch einen zusätzlichen eingang zur toleranzangabe hinzu

    ausgangsseitig hätten wir den quasianalogen füllstandswert und eine fehlermeldung

    für alle boolschen eingänge lege ich gleich noch hilfsmerker zur flankenauswertung im stat-bereich an, kann man immer gebrauchen und nach der implementierung die nicht benutzten wieder löschen.

    darüberhinaus brauchen wir noch die zeitwerte im statbereich, also: initialisierungszeit füllen und leeren und die aktuelle zeit.

    also würde unser baustein jetzt in etwa so aussehen:

    Code:
    *
    FUNCTION_BLOCK FB 2
    TITLE =
    VERSION : 0.1
    
    
    VAR_INPUT
      xPlcPulse : BOOL ;    
      xInit : BOOL ;    
      xFill : BOOL ;    
      xEmpty : BOOL ;    
      iLowLevel : INT ;    
      iHighLevel : INT ;    
      dTolerance : DINT ;    
    END_VAR
    VAR_OUTPUT
      iLevel : BOOL ;    
      xError : BOOL ;    
    END_VAR
    VAR
      xHelpFlagPlcPulse : BOOL ;    
      xHelpFlagInit : BOOL ;    
      xHelpFlagFill : BOOL ;    
      xHelpFlagEmpty : BOOL ;    
      xHelpFlagError : BOOL ;    
      dInitTimeFill : DINT ;    
      dInitTimeEmpty : DINT ;    
      dActualTime : DINT ;    
    END_VAR
    BEGIN
    NETWORK
    TITLE =
    
    //Anweisungsteil
    
    END_FUNCTION_BLOCK
    als nächstes geben wir dem anweisungsteil ein wenig struktur, also definieren was wir in welcher reihenfolge programmieren wollen:

    Code:
    *
    //----------------------- Init ------------------------//
    //ermitteln der "Erfahrungswerte" wenn Initialisierung //
    //angestoßen wurde.                                    //
    //Ermittelte Werte werden im Instanz-DB gespeichert.   //
    //Ende der Initialisierung, wenn für beide Vorgänge    //
    //ein Wert gefunden wurde.                             //
    //-----------------------------------------------------//
    
    
    
    //----------------------- Fill ------------------------//
    //wird nur abgearbeitet, wenn Init erfolgt ist!        //
    //Wird der Behälter gefüllt, wird der Füllstand in Ab- //
    //hängigkeit der Zeit berechnet und ausgegeben.        //
    //Es wird von einem linearen Verhalten ausgegangen!    //
    //-----------------------------------------------------//
    
    
    
    //----------------------- Empty -----------------------//
    //wird nur abgearbeitet, wenn Init erfolgt ist!        //
    //Wird der Behälter geleert, wird der Füllstand in Ab- //
    //hängigkeit der Zeit berechnet und ausgegeben.        //
    //Es wird von einem linearen Verhalten ausgegangen!    //
    //-----------------------------------------------------//
    
    
    
    //----------------------- Error -----------------------//
    //Auswertung der Zeiten.                               //
    //Ist beim Füllen oder Leeren eine erhebliche Zeit-    //
    //differenz aufgetreten (+- Toleranz) wird eine Fehler-//
    //meldung generiert                                    //
    //-----------------------------------------------------//
    und der rest ist eigentlich nur noch stures runterprogrammieren

    wer die beschreibung genau liest, dem wird auffalen, das mindestens eine statische-variable fehlt - deswegen mach ich solche beschreibungen, man kann so immernoch die IDB-bereiche besser und sinnvoll sortieren.

    so, jetzt wird aber erstmal der code generiert ... bis späta *g*
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

Ähnliche Themen

  1. Antworten: 10
    Letzter Beitrag: 10.03.2011, 14:58
  2. Neuer Online-Lehrgang
    Von diabolo150973 im Forum Stammtisch
    Antworten: 58
    Letzter Beitrag: 01.04.2010, 14:06
  3. Aufgaben und Lösungen aus dem Online-Lehrgang
    Von vierlagig im Forum Stammtisch
    Antworten: 7
    Letzter Beitrag: 29.08.2008, 18:07
  4. Schulung, Lehrgang oder Crashkurs für Step5
    Von diabolo150973 im Forum Suche - Biete
    Antworten: 4
    Letzter Beitrag: 19.06.2008, 19:42
  5. Forum wieder Online
    Von Markus im Forum Stammtisch
    Antworten: 1
    Letzter Beitrag: 21.03.2005, 21:49

Lesezeichen

Berechtigungen

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