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

Seite 7 von 8 ErsteErste ... 5678 LetzteLetzte
Ergebnis 61 bis 70 von 79

Thema: LibNodave mit Routing usw...

  1. #61
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von bool Beitrag anzeigen
    GEEEEEEEESCHAAAAAAAAFT !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    Der Ansatz war schon richtig, fds.rdf darf oder muss ggf sogar = 0 sein!
    Ich hatte nur noch das "fds.wfd = fds.rfd" mit deaktiviert, als ich grade eben die Schleife auskommentiert habe.

    Es muss also einfach un knapp heissen:

    fds.rfd = libnodave.openS7online(S7Online_Accesspoint, CInt(hWnd))
    fds.wfd = fds.rfd

    ... und schon gehts, der Reconnect funzt und die S7Online Adapterparameter sind nach dem Disconnect wieder editierbar.

    Vielen Dank vor allem an Jochen Kühner, dessen Wrapper mit Logfunktion hier Licht ins Dunkel gebracht hat.

    Viele Grüsse,

    bool
    Dann haben wir nun endlich dieses problem gelöst...
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  2. #62
    Registriert seit
    06.08.2011
    Beiträge
    12
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo zusammen.

    Hab dasselbe Problem gehabt, welches dann schliesslich in diesem Thread gelöst wurde.
    Doch es scheint, dass ich noch eine falsche/alte DLL benutzte.
    => Entwickle in vb.net 2008
    => benutze libnodave.net.dll vom 12.07.2009.

    Hier gibts aber den Parameter zur Handle-Angabe noch nicht:

    fds.rfd = libnodave.openS7online("S7ONLINE", me.handle)

    Wo krieg ich die aktuellste DLL her?

    Besten Dank für eure Hilfe
    Zitieren Zitieren aktuellste libnodave.net.dll ??  

  3. #63
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Die orginale libnodave bkommst du unter http://libnodave.sourceforge.net/
    Der handle parameter ist immer noch drinn, du kannst aber auch 0 übergeben, das macht nix!

    Meine erweiterte Version (mit Routing, Ethernetsupport über S7Online) bekommst du unter http://siemensplctoolboxlib.codeplex.com/

    Mfg.
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten
    Zitieren Zitieren Hmm...  

  4. #64
    Registriert seit
    06.08.2011
    Beiträge
    12
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Seit einigen Wochen suche ich eine Lösung für folgendes problem:
    ich entwickle ein kleines hilfe tool in VB.NET zum schnell-anzeigen von aktuellen steuerungswerten aufgrund von der symbolischen adresse.

    Der sps code in unserer firma wird in SCL (step7) geschrieben d.h.wir benutzen symbolische adressierung mit strukturen: z.b.:
    MEIN_DB.BEREICH1.VALUE
    Gibt es eine möglichkeit, um aus diesem string-Ausdruck die zugehörige absolut adresse zu ermitteln? auf die selbe weise wie es die Variablentabelle tut? Eine funktion, die mir die abs. adresse aufgrund der symb. zurückgibt?

    Mittels dieser abs. adresse möchte ich dann über OPC den wert aus der sps lesen und anzeigen...

    vielen dank für eure hilfe.
    Zitieren Zitieren absolut Adresse aus symbolischer Adresse ???  

  5. #65
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Mhmm... Mit meiner lib kannst du das Step 7 Projekt laden, und dann denn DB öffnen und die Adressen auslesen!
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  6. #66
    Registriert seit
    06.08.2011
    Beiträge
    12
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    hallo jochen.
    hast du ein VB.NET beispiel? kenne deine lib leider noch nicht so gut.
    Reicht es wenn ich deine libnodave.net.dll einbinde?
    besten dank

  7. #67
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Geh doch mal auf http://siemensplctoolboxlib.codeplex.com/ und lad dir den Source herunter! Dort ist auch ein kleines Vb.net Programm enthalten...

    Aber auch das Beispiel Programm ExampleWpfVisualization sollte sich einfach in Vb umsetzen lassen, da es fast. Nur xaml und ganz wenig code enthält!
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten
    Zitieren Zitieren Jo  

  8. #68
    Registriert seit
    06.08.2011
    Beiträge
    12
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo Jochen.

    Hab deine Lib(s) bereits heruntergeladen und eine paar Bsp angeschaut - doch leider noch nichts gefunden, was mich weiterbringt.

    Hab auch noch das Bsp unter http://s7net.codeplex.com/ angeschaut.
    Thema: http://www.sps-forum.de/showthread.php?t=40006
    Hier muss aber der Struct von der SPS Welt auch auf Seite Applikation nachgebildet werden, was für meinen Anwendungsbereich zu wenig dynamisch ist.

    Suche eine einfache Umwandlungsfunktion von einem STRING (mehrfach verschalteteter struct)
    SymbolDB_X.[struct_1].[struct_2].[struct_3]
    zur zugehörigen absolut Adresse
    DBxxx.DBx yy

    Also sowas:
    SymbolDB_1000.Modul1.Temp4.Value => DB3826.DBW22

    Der Benutzer soll später nicht browsen müssen (Projectfiles.SelectProjectPart.SelectTAG o.ä.), sondern aus einem String den ich vom SCL Code her einlese soll direkt die abs. Adresse und dann der akt. Wert ermittelt werden.

    Hat Deine Lib bereits eine ähnliche Funktion?

    Besten Dank für die Hilfe und Denkanstösse....

    Zitieren Zitieren Umwandlungsfunktion Simbolisch => Absolut Adresse  

  9. #69
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Zitat Zitat von Sersch Beitrag anzeigen
    Suche eine einfache Umwandlungsfunktion von einem STRING (mehrfach verschalteteter struct)
    SymbolDB_X.[struct_1].[struct_2].[struct_3]
    zur zugehörigen absolut Adresse
    DBxxx.DBx yy

    Also sowas:
    SymbolDB_1000.Modul1.Temp4.Value => DB3826.DBW22
    So direkt nicht, aber das kannst du damit auf jeden Fall realisieren!

    Vielleicht komme Ich morgen dazu dir ein bisschen Beispielcode zu posten!

    Aber der Nutzer braucht dazu auf jeden Fall auch das Projektfile, das ist dir klar, oder? Da auf der SPS die Symbolischen Namen nicht gespeichert werden!
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  10. #70
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.745
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Code:
    Dim searchValue As String
            Dim db As String
    
            Dim tag As PLCTag
            Dim prj As Step7ProjectV5
            Dim fld As Projectfolders.Step7V5.BlocksOfflineFolder
            Dim blk As S7DataBlock
    
            searchValue = "SymbolDB_1000.Modul1.Temp4.Value"
            db = searchValue.Split(".")(0)
            searchValue = searchValue.Substring(db.Length + 1)
            prj = New Step7ProjectV5("C:\\Offenau_.s7p", False)
    
            
            fld = prj.BlocksOfflineFolders(1)
    
            For Each projectBlockInfo As S7ProjectBlockInfo In fld.readPlcBlocksList()
                If Not projectBlockInfo.SymbolTabelEntry Is Nothing And projectBlockInfo.SymbolTabelEntry.Symbol = db Then
                    blk = fld.GetBlock(projectBlockInfo)
                End If
            Next
    
            If Not blk Is Nothing Then
                For Each s7DataRow As S7DataRow In s7DataRow.GetChildrowsAsList(blk.GetArrayExpandedStructure())
                    If s7DataRow.StructuredName = searchValue Then
                        tag = s7DataRow.PlcTag
                    End If
                Next
            End If
    so ungefähr könnte gehen... ist aber ohne größeres fehlerhandling, etc...

    fld = prj.BlocksOfflineFolders(1) musst du natürlich anpassen, oder alle Folder durchlaufen.

    Du musst aber die neuste Version meiner Lib nutzen, da die prj.BlocksOfflineFolders Auflistung leider in den alten Versionen nicht gefüllt wurde!

    Mfg.
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

Ähnliche Themen

  1. Probleme mit Libnodave und Routing
    Von Thorsten Schier im Forum Hochsprachen - OPC
    Antworten: 17
    Letzter Beitrag: 10.08.2010, 13:34
  2. LibNodave mit Routing und Connection Library...
    Von Jochen Kühner im Forum Hochsprachen - OPC
    Antworten: 0
    Letzter Beitrag: 21.06.2010, 11:49
  3. LibNoDave und Connection Library mit Routing...
    Von Jochen Kühner im Forum Hochsprachen - OPC
    Antworten: 2
    Letzter Beitrag: 27.05.2010, 08:06
  4. LibNodave TCP MPI Routing
    Von Jochen Kühner im Forum Hochsprachen - OPC
    Antworten: 4
    Letzter Beitrag: 10.05.2010, 22:30
  5. Routing?
    Von smoe im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 30.01.2004, 23:00

Lesezeichen

Berechtigungen

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