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

Ergebnis 1 bis 6 von 6

Thema: S7 Bausteine mit Excel Macro übertragen

  1. #1
    Registriert seit
    31.07.2009
    Ort
    Weißensee
    Beiträge
    46
    Danke
    5
    Erhielt 3 Danke für 3 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    gib es eine Möglichkeit S7 Bausteine mittels Excelmacro über Profinet in eine S7 CPU zu kopieren?

    Hintergrund meiner Frage ist, wir haben eine Anlage mit 36 Arbeitsplätzen wo jeder eine eigenne CPU hat, die untereinander uber Profinet verbunden sind. Das S7 Project ist auf allen Arbeitsplätzen bis auf 2 Ausnahmen identisch. Wenn ich jetzt eine Änderung an einem Arbeitsplatz vorneme muss ich diese in jeden AP einzeln einspielen.

    Ich stelle mir vor ich habe ein Masterprojekt welches ich mittels Macro automatisch auf alle AP übertragen kann, gut währe noch wenn ich die zu überspielenden Bausteine aussuchen könnte.
    Zitieren Zitieren S7 Bausteine mit Excel Macro übertragen  

  2. #2
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 420 Danke für 337 Beiträge

    Standard

    Mit libnodave kannst du Bausteine auf die SPS schreiben, und auch auslesen. So könntest du den Bytecode eines Bausteines mit libnodave aus einer SPS lesen, und damit auch wieder in eine andere schreiben.
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  3. #3
    Registriert seit
    29.03.2004
    Beiträge
    5.731
    Danke
    143
    Erhielt 1.685 Danke für 1.225 Beiträge

    Standard

    Wenn auf den Rechnern Step7 installiert ist geht das über die Kommandoschnittstelle.

    Ich hatte hier mal ein einfaches Beispiel in C# gepostet:
    http://www.sps-forum.de/showpost.php...93&postcount=7

    Die Objekthierarchie ist mit VBA in Excel identisch, also sollte das dort prinzipiell genauso funktionieren.

  4. #4
    Registriert seit
    31.07.2009
    Ort
    Weißensee
    Beiträge
    46
    Danke
    5
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Ich denke ich werde das mal mit der Kommandoschnittstelle versuchen.
    Ist es möglich die Kommandoschnittstelle mit PLCSIM zu testen, d.h. kann ich über die Kommandoschnittstelle Bausteine auf eine simulierte CPU übertragen und das über ProfiNet.

  5. #5
    Registriert seit
    29.03.2004
    Beiträge
    5.731
    Danke
    143
    Erhielt 1.685 Danke für 1.225 Beiträge

    Standard

    Zitat Zitat von ErwinLSE Beitrag anzeigen
    Ist es möglich die Kommandoschnittstelle mit PLCSIM zu testen, d.h. kann ich über die Kommandoschnittstelle Bausteine auf eine simulierte CPU übertragen und das über ProfiNet.
    In Plcsim laden sollte vom eigenen Rechner aus gehen. Laden von Bausteinen über Netzwerk funktioniert hingegen nicht.
    Du kannst aber Plcsim mit einer entsprechenden Simulationsdatei starten, und in dieser könntest du vorher das gewünschte Projekt hinterlegen.

  6. #6
    Registriert seit
    31.07.2009
    Ort
    Weißensee
    Beiträge
    46
    Danke
    5
    Erhielt 3 Danke für 3 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    habe jetzt mal was programmiert, es sollen Bausteine erst im Projekt in eine andere Station kopiert und dann auf die CPU übertragen werden. Es funktioniert auch soweit nur manchmal sieht es so aus als wäre Excel abgestürzt und nach einer gewissen Zeit ist Excel wieder bedienbar und die Bausteine wurden auch kopiert. Mein Problem ist das ich wärend Excel nicht mehr reagiert keine Textausgaben machen kann was das Tool gerade macht.
    Kann man an dem Code noch was ändern das Excel nicht einfriert?

    Code:
     
    Sub FC_kopieren()
        Dim test As Object
        Dim ziel As Object
        Dim dummy As Object
        Dim zeile As Integer, spalte As Integer
        Dim station As String, baustein As String
        
        Dim letzteZeile As Integer
        
           
        letzteZeile = 156
        
        Call ProjektOeffnen
        global_Simatic.AutomaticSave = False
        For zeile = 4 To letzteZeile
            For spalte = 3 To 34
                If ThisWorkbook.Sheets("Tabelle1").Cells(zeile, spalte) <> "" Then
                    station = ThisWorkbook.Sheets("Tabelle1").Cells(3, spalte)              'Station in die kopiert wird
                    baustein = ThisWorkbook.Sheets("Tabelle1").Cells(zeile, 2)              'Baustein der kopiert werden soll
                    ThisWorkbook.Sheets("Tabelle1").Cells(2, 8) = "kopiere " & baustein & " nach " & station
                    Set ziel = global_Project.Programs(station).Next("Bausteine")  'Ziel vom kopieren festlegen
                    '++++++++++++++++++++++++++++++  Baustein löschen wenn vorhanden  +++++++++++++
                    For Each dummy In ziel.Next
                      If dummy = baustein Then
                        dummy.Remove
                        Exit For
                      End If
                    Next dummy
                    Set dummy = Nothing
                    '++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
                    Set test = global_Project.Programs("M1020").Next("Bausteine").Next(baustein).Copy(ziel)   ' kopieren
                    test.Download (S7OverwriteAll)
                    
                End If
            Next spalte
            ThisWorkbook.Sheets("Tabelle1").Cells(2, 8) = "Autosave" & zeile & " " & spalte
            global_Simatic.Save
       Next zeile
    
        Call CloseProject
    End Sub
    Geändert von ErwinLSE (05.03.2011 um 10:51 Uhr)

Ähnliche Themen

  1. Antworten: 5
    Letzter Beitrag: 29.08.2011, 20:51
  2. Fehlersichere SPS Bausteine übertragen
    Von ottopaul im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 14.11.2008, 19:06
  3. Bausteine (nicht) übertragen
    Von Chefmech im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 06.08.2008, 10:50
  4. Safety Bausteine in PLCSIM übertragen?
    Von reminder im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 19.06.2008, 22:55
  5. Bausteine mit Libnodave übertragen
    Von ronnie.b im Forum Hochsprachen - OPC
    Antworten: 0
    Letzter Beitrag: 08.03.2008, 10:58

Stichworte

Lesezeichen

Berechtigungen

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