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

Seite 2 von 10 ErsteErste 1234 ... LetzteLetzte
Ergebnis 11 bis 20 von 98

Thema: Programmierhilfe FUP

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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    In dem Du den Wert, den Du Schritte beim Aufruf des FBs zuweist, änderst.
    Standardmäßig steht dort 100. Bis zu 500 sind jetzt ohne Programmänderung möglich. Ansonsten müsste das Array vergrößert werden.
    Deswegen wird am Anfang geprüft, das Schritte nicht größer ist.

  2. #12
    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 hucki Beitrag anzeigen
    Code:
    VAR_INPUT
        Start1: BOOL;                               // Startbedingung 1
        Start2: BOOL;                               // Startbedingung 2
        Takt: BOOL;                                 // Impuls-Eingang
        Schritte: INT := 100;                       // Impulszahl bis zur Ausgabe
        Laenge: INT := 4;                           // Ausgabelänge des Impulses in Takten
    END_VAR
    
    VAR_OUTPUT
        Ausgabe: BOOL;                              // Impulsausgabe
    END_VAR
    
    VAR
        Takt_Old: BOOL;                             // Flankenmerker für Eingang Takt
        Start: BOOL;                                // Startbedingung erfüllt
        Schieberegister: ARRAY [0..500] OF BOOL;    // statische Variablen
        Ausgangszaehler: INT;                       // Zähler für Ausgabelänge
    END_VAR
    
    VAR_TEMP
        Schieben: BOOL;                             // positive Flanke Eingang Takt
        Index: INT;                                 // Array-Zeiger
    END_VAR
    Die Variablen musst Du (wie in jeder anderen Programmiersprache auch) auch in FUP deklarieren.
    Scheinbar mußt Du diesen Teil im TIA per Hand erledigen.
    Das sieht dann so aus, egal ob SCL oder FUP:

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

    Standard

    Der Vollständigkeit halber - der SCL-Code im TIA:


    und ein möglicher Aufruf im OB1 mit Deinen beiden Einstellungen:


    PS: Sorry, Du wolltest ja FUP. Ist zwar beim FB-Aufruf fast gleich zu KOP (das verwende ich im Normalfall, deswegen der vorige Screenshot), aber sicherheitshalber:
    Geändert von hucki (11.09.2013 um 07:05 Uhr) Grund: FUP-Bild nachgereicht

  4. #14
    EMZ ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    09.10.2012
    Beiträge
    202
    Danke
    25
    Erhielt 1 Danke für 1 Beitrag

    Standard

    hi hucki,

    so langsam bin ich echt am verweifeln.
    Ich blick einfach garnicht mehr durch.
    Ich finde deinen Datenbaustein "Schieneregister" nirgens.
    Und ich weiß auch garnicht wie ich einen Datenbaustein erstellen kann und auch abspielen.
    Ich habe schon alle Funktionen durchgeschaut aber keinen gleichen Datenbaustein gefunden.
    Ich bin noch glaub zu unerfahren für sowas.

    Und das oben mit der Schnittstelle bekomme ich auch nicht hin. Ich schreibe die gleichen Begriffe rein die du auch reingeschrieben hast, aber da kann ich dann den Defaultwert nicht ändern und auch keine häckchen setzen bei Sichtbar...

    Ich weiß nicht wie ich das hinkriege, ich hab bisher auch noch nie mit Datenbausteine gearbeitet.
    Also ich will jetzt die Realisierung mit Siemens LOGO machen, aber trotzdem möchte ich gerne wissen, wie ich sowas in S7 programmieren kann.


    Kannst du mir helfen bei dieser Aufgabe?
    Am besten mit einzelnen Schritten wie ich das öffne etc.


    LG EMZ

  5. #15
    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 EMZ Beitrag anzeigen
    so langsam bin ich echt am verweifeln.
    Ich blick einfach garnicht mehr durch.
    Ich finde deinen Datenbaustein "Schieneregister" nirgens.
    Und ich weiß auch garnicht wie ich einen Datenbaustein erstellen kann und auch abspielen.
    Ich habe schon alle Funktionen durchgeschaut aber keinen gleichen Datenbaustein gefunden.
    Ich bin noch glaub zu unerfahren für sowas.

    Und das oben mit der Schnittstelle bekomme ich auch nicht hin. Ich schreibe die gleichen Begriffe rein die du auch reingeschrieben hast, aber da kann ich dann den Defaultwert nicht ändern und auch keine häckchen setzen bei Sichtbar...

    Ich weiß nicht wie ich das hinkriege, ich hab bisher auch noch nie mit Datenbausteine gearbeitet.
    Das ist genau das, was ich hier:
    Zitat Zitat von hucki Beitrag anzeigen
    Da er aber bis dato noch nichts mit SCL gemacht hat, möchte er lieber eine Lösung in FUP. Obwohl m.M.n. seine Kenntnisse da auch nicht viel mehr als in SCL sind. Es würde also nicht viel Unterschied machen, obe er sich mit SCL oder FUP beschäftigt.
    gemeint habe. Auch Dein Wissen in FUP tendiert gegen Null. Es macht überhaupt keinen Unterschied, in welcher Sprache Dir das Programm serviert wird.
    Das kann man aber alles lernen.



    Zitat Zitat von EMZ Beitrag anzeigen
    Also ich will jetzt die Realisierung mit Siemens LOGO machen,
    Immer diese Meinungsumschwünge.





    Zitat Zitat von EMZ Beitrag anzeigen
    aber trotzdem möchte ich gerne wissen, wie ich sowas in S7 programmieren kann.

    Kannst du mir helfen bei dieser Aufgabe?
    Am besten mit einzelnen Schritten wie ich das öffne etc.
    Neues Projekt anlegen und die zu verwendende CPU auswählen, hast Du doch schon hinbekommen, oder? Ich nehm' mal irgend eine S7-1500, weil die sich im Gegensatz zu einer 1200er simulieren läßt (in Natura mußt Du natürlich genau die auswählen, die Du auch hast), und gebe ihr den Namen "Test-CPU".

    In der Projektansicht erst noch per Drag & Drop Ein- und Ausgänge aus dem Hardwarekatalog zur Gerätekonfiguration hinzufügen (bei der 1200er wahrscheinlich nicht notwendig):




    Jetzt klickst Du erst mal die CPU mit Rechts im linken Projektbaum an und wählst die Eigenschaften aus. Dort aktivierst Du sowohl das System- als auch das Taktmerkerbyte. Speziell Letzteres brauchen wir (zumindest testweise) für den Takteingang des SCL-Bausteins. Schaden tun beide nicht, deswegen aktiviere ich sie eigentlich immer.




    Danach gehts Du links auf Programmbausteine und "Neuen Baustein hinzufügen". FB auswählen, Sprache auf SCL stellen und dem FB einen Namen geben:




    Im FB als erstes die Schnittstelle öffnen und die gewünschten Variablen-Namen und deren Datentyp! eintragen. Und Kommentar ist immer sinnvoll. Den Rest macht TIA erst mal allein. Nur bei den beiden Variablen Schritte und Laenge gibst Du den Defaultwert vor. (Wenn Du Dir die Variablen in das Editor-Feld unterhalb kopierst, brauchst Du beim Eintragen nicht ständig zwischen den TIA- und 'nem anderen Fenster hin- und herwechseln.)
    Code:
    //INPUT:
    //    Start1           BOOL                    Startbedingung 1
    //    Start2           BOOL                    Startbedingung 2
    //    Takt             BOOL                    Impuls-Eingang
    //    Schritte         INT := 100              Impulszahl bis zur Ausgabe
    //    Laenge           INT := 4                Ausgabelänge des Impulses in Takten
    
    //OUTPUT:
    //    Ausgabe          BOOL                    Impulsausgabe
    
    //STATIC:
    //    Takt_Old         BOOL                    Flankenmerker für Eingang Takt
    //    Start            BOOL                    Startbedingung erfüllt
    //    Schieberegister  ARRAY [0..500] OF BOOL  statische Variablen
    //    Ausgangszaehler  INT                     Zähler für Ausgabelänge
    
    //TEMP:
    //    Schieben         BOOL                    positive Flanke Eingang Takt
    //    Index            INT                     Array-Zeiger
    



    Variablen wieder aus dem SCL-Feld löschen und dafür das eigentliche Programm hinein kopieren.
    Code:
        // Schrittbegrenzung
        IF #Schritte > 500 THEN
            #Schritte := 500;
        END_IF;
        
        // Startbedingung erfüllt?
        IF #Start1 AND #Start2 THEN
            #Start := true;
        END_IF;
        
        // Flankenerkennung Eingang Takt
        #Schieben := #Takt AND NOT #Takt_Old;
        #Takt_Old := #Takt;
        
        
        // Schieberegister
        IF #Schieben THEN
            
            // Register weiterschieben
            FOR #Index := #Schritte TO 1 BY -1 DO
                #Schieberegister [#Index] := #Schieberegister [#Index - 1];  
            END_FOR;
            
            // Startbedingung ins Schieberegister übernehmen
            #Schieberegister [0] := #Start;
            #Start := false;
            
            // Ausgang Schieberegister
            IF #Schieberegister [#Schritte] THEN
                #Ausgangszaehler := #Laenge;
            END_IF;
            
            // Ausgabe
            #Ausgabe := #Ausgangszaehler > 0;
            
            // Zähler Ausgabelänge
            IF #Ausgabe THEN
                #Ausgangszaehler := #Ausgangszaehler - 1;
            END_IF;
            
        END_IF;



    Jetzt den OB1 "Main" im Projektbaum doppelt anklicken, damit er im Editor-Feld angezeigt wird. Eventuell die Programmiersprache durch Rechtsklick auf den OB1 im Projektbaum auf FUP wechseln. Danach den FB1 "Schieberegister" aus dem Projektbaum per Drag & Drop ins Netzwerk 1 des OB1 im Editor ziehen. TIA fragt mit einem Pop-Up nach dem Instanz-DB. Einfach bestätigen und TIA legt den DB automatisch für Dich an.




    Jetzt noch die Ein- und Ausgänge des FBs beschalten und die von TIA automatisch vergebenen Symbole "Tag_x" unter PLC-Variablen in aussagekräftigere Namen ändern.




    Dann alles übersetzen:


  6. #16
    EMZ ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    09.10.2012
    Beiträge
    202
    Danke
    25
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Danke dir
    Habe es soweit geschafft. Mein einziges Problem ist der Merker M0.5
    Ich nehme an es ist ein Taktmerker. Ich will den in der Hardwarekonfi einschalten aber das Häckchen beim Taktmerker lässt sich nicht setzen. Aber ich weiß nicht warum?
    weißt du voran es liegen kann?
    TIA Portal ist gewöhnungsbedürftig.
    So langsam check ich das mit SCL.


    LG
    EMZ

  7. #17
    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 EMZ Beitrag anzeigen
    Mein einziges Problem ist der Merker M0.5
    Ich nehme an es ist ein Taktmerker. Ich will den in der Hardwarekonfi einschalten aber das Häckchen beim Taktmerker lässt sich nicht setzen. Aber ich weiß nicht warum?
    Das hier geht nicht?
    Zitat Zitat von hucki Beitrag anzeigen
    Jetzt klickst Du erst mal die CPU mit Rechts im linken Projektbaum an und wählst die Eigenschaften aus. Dort aktivierst Du sowohl das System- als auch das Taktmerkerbyte. Speziell Letzteres brauchen wir (zumindest testweise) für den Takteingang des SCL-Bausteins. Schaden tun beide nicht, deswegen aktiviere ich sie eigentlich immer.

    Kannst Du mal einen Screenshot machen? Was für 'ne CPU hast Du ausgewählt?

  8. Folgender Benutzer sagt Danke zu hucki für den nützlichen Beitrag:

    EMZ (12.09.2013)

  9. #18
    EMZ ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    09.10.2012
    Beiträge
    202
    Danke
    25
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Ok ich schicke dir ein screenshot heute nachmittag. Also wenn ich auf meine cpu doppelt draufklick und dann unter eigenschaften auf taktmerker gehe dann kommt da ein anderes Feld wie bei dir.
    Da steht auch.nicht System und taktmerker oder.so, sondern nur taktmerker. Ich hab eine 314 ner cpu. Schicke dir gegen 16 uhr ein screenshot.

  10. #19
    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 EMZ Beitrag anzeigen
    Also wenn ich auf meine cpu doppelt draufklick und dann unter eigenschaften auf taktmerker gehe dann kommt da ein anderes Feld wie bei dir.
    Da steht auch.nicht System und taktmerker oder.so, sondern nur taktmerker. Ich hab eine 314 ner cpu.
    Die 300er CPUen haben noch kein Systemmerkerbyte. Deshalb wird davon auch nichts angezeigt.

    Und auch die Symbolnamen für die einzelnen Takte muss man per Hand in der Variablentabelle erstellen. Das wird nicht wie bei der 1200/1500 von TIA übernommen.

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

    EMZ (12.09.2013)

  12. #20
    EMZ ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    09.10.2012
    Beiträge
    202
    Danke
    25
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ok habe jetzt eine 1200 CPU genommen.

    Also gestern gab es da keine Probleme.
    Heute nachdem ich die neue CPU genommen habe, ist bei mir Start 1 und Start 2 und Ausgangszähler rot.
    TIA meint ich soll diese Operanten definieren. Habe z.B. EIngang I124.0 eingegebn aber der nimmt den nicht.
    Was mache ich schon wieder falsch. Mit der Step 7 V5.5 Version bin ich viel besser klargekommen

    Anhang 21713
    Anhang 21715
    Anhang 21714



    Danke für jegliche Hilfe

    LG
    EMZ

Ähnliche Themen

  1. Sonstiges Siemens Logo Programmierhilfe
    Von EMZ im Forum Simatic
    Antworten: 36
    Letzter Beitrag: 08.11.2013, 10:08
  2. programmierhilfe
    Von holschin im Forum Suche - Biete
    Antworten: 1
    Letzter Beitrag: 09.12.2009, 09:31
  3. Suche Programmierhilfe S5
    Von Sarah2000 im Forum Suche - Biete
    Antworten: 1
    Letzter Beitrag: 21.07.2005, 09:29
  4. Programmierhilfe für S7
    Von Joe.Baer im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 26.04.2005, 13:29
  5. Programmierhilfe: Pumpensteuerung
    Von xpert im Forum Programmierstrategien
    Antworten: 4
    Letzter Beitrag: 28.01.2005, 13:33

Lesezeichen

Berechtigungen

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