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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: LIBNODAVE 64Bit Bitte um Hilfe

  1. #1
    Registriert seit
    01.04.2013
    Beiträge
    5
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,
    Nach längerer Einlesephase hab ich mein erstes Libnodave mini Projekt am Laufen. Jedoch bring ich es unter Win7 64 bit nicht hin.
    Ich hab die VB Vorlagen aus dem Paket verwendet und lese zur Zeit ein Bit aus der Steuerung(unter Win XP 32bit). Jetzt wollte ich es mit VB2012 in der Win7 64bit noch einmal versuchen da kommen alle möglichen Fehler!
    Ich hab auch schon im Forum bezüglich libnodave_jfkmod64.dll gelesen. Ich finde aber leider keine Vorlage/Beispiel für VB und einem 64bit OS.
    Kann mir da vielleicht jemand weiterhelfen. Bin totaler Anfänger.

    Besten Dank COMRI
    Zitieren Zitieren LIBNODAVE 64Bit Bitte um Hilfe  

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

    Standard

    Hier:
    DotNetSimaticDatabaseProtokoller

    Hat der Jochen mit Hilfe von Libnodave ein Projekt, da gibt es, so weit ich mich erinnere, eine DLL für 64 Bit, die brauchst.
    Zumindest den Hinweis wie du die bauen musst.

    Lade dir die Source und schau nach.


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

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

    Standard

    Hy,

    lad dir einfach meine ganze Codesammlung von hier: DotNetSiemensPLCToolBoxLibrary - Home Dort ist die libnodave (allerdings eine von mir gemoddete Version) in einer 32Bit und in einer 64Bit Variante enthalten. Wenn du meine ToolBoxLib zur Kommunikation verwendest, wählt diese automatisch die richtige libnodave aus.

    Auch ist ein kleines VB Beispiel Programm dabei.

    Achtung: die Kommunikation über den Simatic Treiber (s7onlinx.dll) läuft nur in 32Bit da Step 7 auch unter Win7 64Bit ein 32Bit Programm ist! Wobei im Moment gibts glaub auch noch Probleme wenn man als 32 Bit Compiliert, da Siemens die definitionen seiner Zugangspunkte nicht mehr in der registry ablegt (muss Ich mir mal noch anschauen...)
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  4. #4
    Comri ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    01.04.2013
    Beiträge
    5
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke für die Infos bin noch am Testen.

    SG

  5. #5
    Registriert seit
    27.03.2013
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo,

    lese schon länger im Forum mit. Bin jetzt an einem Punkt wo ich nicht mehr weiter komme, deshalb heut mein erster Beitrag.

    Sollte das Thema hir nicht passend sein, dann bitte verschieben.

    Kurze Beschreibung der Konstellation:



    ISO over TCP:



    LibNoDave wird schon länger unter Win XP / Win XP embedded eingesetzt (Delphi 7). Dort gibt es eine 32Bit-Anwendung (D7) die über eine selbst geschriebene DLL (D7) (in ihr wird die Komponente „NoDaveComponent“ verwendet) letztendlich dann die „LibNoDave.dll“ anspricht. Wie gesagt: Läuft so weit.



    Aktuell:



    Die Anwendung läuft nun unter Delphi 2010 (Unicode, 32Bit). Die eigene DLL gibt es jetzt als Delphi 7 und Delphi 2010 Version. Unter Win XP läuft diese Konstellation (auch D2010 DLL) problemlos.



    Unter Win 7 64 Bit läuft diese Konstellation nicht / nicht zuverlässig!



    Tests mit „NoDaveDemo.exe“:


    Momentan gibt es 2 Versionen (Delphi 7 Original / Delphi 2010)


    Getestet wurde mit LibNoDave.dll V0.8.4.4, V0.8.4.6 und der modifizierten libnodave_jfkmod.dll


    Die Ergebnisse sind für alle DLLs auf den ersten Blick gleich:


    Unter Windows XP läuft quasi alles, D7 und D2010.


    Unter Windows 7 64Bit ergibt sich folgendes Bild:
    Verhalten von Delphi 7 Testprogramm und Delphi 2010 Testprogramm ist gleich. Debug-Möglichkeit ist unter Win 7 nur innerhalb D2010 vorhanden.


    Bei allen Tests ist es so das das Demoprogramm nach entsprechenden Einträgen (DB, Offset, .......) und Aktivierung durch „Start“ mit hoher Wahrscheinlichkeit für ungefähr 20 sec (Windows?) einfriert. Danach besteht entweder keine Verbindung (und alles ist „beim alten“), oder die Verbindung kommt zustande und ein zyklischen Lesen des DBs stottert vor sich hin. Will heißen das das zyklische Lesen immer wieder von teilweise langen Pausen (ca. 20 sec.) unterbrochen wird. Sinnvolle Daten werden dabei aber gelesen.


    Kommt die Verbindung nicht zustande wird je nach DLL-Version ein „openSocketw.c: bind Socket error: No error“ gemeldet.


    Innerhalb Delphi 2010 wird vor einer fehlgeschlagenen Verbindung innerhalb der „NoDaveComponent.pas“, innerhalb der Procedere „TnoDave.DoConnect“ die Funktion „openSocket „ mit korrekt versorgten Parametern aufgerufen. In der Regel ist der Rückgabewert nach ca. 20 sec (Windows?) „0“, in seltenen Fällen „-1“ (bei funktionierender Verbindung ist der Rückgabewert > 0).


    Tests mit 32Bit-Anwendung:


    Die Ergebnisse der 32Bit-Anwendung und des Demoprogramms sind vergleichbar.


    Und nun?


    Nach vielen Tests bin ich jetzt an dem Punkt wo ich erst einmal nicht mehr weiter weiß. Hat eventuell jemand eine Idee?


    Viele Grüße
    Stephan

  6. #6
    Registriert seit
    27.03.2013
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo,

    hat keiner eine Idee / einen Gedanken der das Thema weiter bringen könnte?

    Was könnte noch getestet werden um mehr Klarheit zu bekommen?

    Viele Grüße
    Stephan

  7. #7
    Comri ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    01.04.2013
    Beiträge
    5
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    So Entschuldigung daß ich mich so lange nicht gemeldet habe.
    Hatte es in der Schule etwas stressig aber jetzt habe Ich Ferien und wieder Zeit.

    Nun bei meinem Problem mit den 64 Bit bin ich leider nicht weiter gekommen.

    Ich hab einige Tutorials durchstudiert wie man eine DLL in einem VB Projekt verwendet bei mir will es scheinbar nicht funktionieren.
    Bei meinem 32Bit Projekt habe ich auf ein Beispiel Projekt aufgesetzt.
    Ich hab den Verbindungsaufbau und Abfrage gleich gelassen.
    Wenn ich dann ein Bit lesen will kann ich das mit zb.
    res = dc.readBits(libnodave.daveFlags, 0, MBG1, 1, buf)

    Wie kann ich das dann mit der DotNetSiemensPLCToolBoxLibrary von Jochen machen?

    Wenn ich das Projekt mit VB2012 öffne sind alle C# und das VB Projekte in einem Ordner.
    Ich habe dann das VB Projekt mit der rechten Maustaste als Startprojekt festgelegt. Es Startet dann auch.

    Gibt es eine Beschreibung wie man mit einem neuen Projekt beginnent die DLLs einfügen und ein laufendes Programm hin bekommt. Ich habe versucht das VB Projekt aus DotNetSiemensPLCToolBoxLibrary heraus zu kopieren aber dann bekomme ich 37 verschidene Fehler.
    Ich hab immer wieder das Problem das ich nicht den ganzen zusammen Hang verstehe wie ich zu einem lauffähigen Programm komme wenn ich ein Musterprogramm verwende wo jeder Ersteller individuell Programmiert.
    Entschuldig die Fragestellung ich bin Anfänger in VB und libnodave.

    Besten Dank für die Antwort Comri

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

    Standard

    Schau dirmal den Thread hier an :
    http://www.sps-forum.de/hochsprachen...oolboxlib.html
    da gibts ein einfaches Beispielprogramm
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  9. Folgender Benutzer sagt Danke zu Jochen Kühner für den nützlichen Beitrag:

    Comri (10.07.2013)

  10. #9
    Comri ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    01.04.2013
    Beiträge
    5
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke für die schnelle Antwort. Werde es mir heute noch zu gemüte ziehen.
    Sg Comri

  11. #10
    Comri ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    01.04.2013
    Beiträge
    5
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Super jetzt hat es bei mir auch mit einem komplett neuen Projekt funktioniert. Danke erst mal.

    Eine Frage für mein Verständnis habe ich noch. Die zwei DLLs libnodave_jfkmod.dll und libnodave_jfkmod.dll füge ich über Hinzufügen und Vorhandenes Element hinzu. Dann erscheinen sie auch in der Projektmappe.
    Die DotNetSiemensPLCToolBoxLibrary.dll füge ich jedoch wie im Musterprojekt als Verweis ein und Importiere dann folgendes:
    Imports DotNetSiemensPLCToolBoxLibrary.DataTypes
    Imports DotNetSiemensPLCToolBoxLibrary.Communication

    Imports DotNetSiemensPLCToolBoxLibrary.DataTypes.Blocks

    Imports DotNetSiemensPLCToolBoxLibrary
    Imports DotNetSiemensPLCToolBoxLibrary.Projectfiles
    Imports DotNetSiemensPLCToolBoxLibrary.DataTypes.Blocks.Step7V5
    Imports DotNetSiemensPLCToolBoxLibrary.DataTypes.Projectfolders.Step5
    Imports DotNetSiemensPLCToolBoxLibrary.DataTypes.Blocks.Step5

    Was importiere ich denn da alles? Und warum wird die eine DLL als Verweis und die Anderen direkt importiert?


    Imports DotNetSiemensPLCToolBoxLibrary.DataTypes und Imports DotNetSiemensPLCToolBoxLibrary.Communication Verstehe ich ja noch. Aber die anderen?

    Entschuldigt die Dumme Frage aber ich möchte es von Grund auf verstehen und das geht für mich leider nicht mit einem Hallo Welt Progrämmchen. Ich würde später auch gerne andere DLLs für andere Steuerungen testen bzw. mal ein Musterprogramm erstellen
    Danke für eure Hilfe.

Ähnliche Themen

  1. Antworten: 9
    Letzter Beitrag: 24.09.2013, 18:09
  2. Libnodave auf 64Bit kompilieren???
    Von trolly70 im Forum Hochsprachen - OPC
    Antworten: 63
    Letzter Beitrag: 04.03.2012, 23:01
  3. Neuling sucht Hilfe - 64bit Twincat ...
    Von Markus_CX9001 im Forum CODESYS und IEC61131
    Antworten: 1
    Letzter Beitrag: 20.11.2011, 17:06
  4. Win7: 32 oder 64bit? ...und wenn 64bit: dann auch eine VM mit 32bit dazu?
    Von Perfektionist im Forum PC- und Netzwerktechnik
    Antworten: 9
    Letzter Beitrag: 29.07.2010, 15:34
  5. LibNodave 64bit write error on Linux
    Von 3electrons im Forum Hochsprachen - OPC
    Antworten: 3
    Letzter Beitrag: 23.04.2010, 19:42

Lesezeichen

Berechtigungen

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