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

Seite 3 von 5 ErsteErste 12345 LetzteLetzte
Ergebnis 21 bis 30 von 42

Thema: S7 <> PC über Ethernet

  1. #21
    Registriert seit
    17.06.2003
    Beiträge
    42
    Danke
    1
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Wird in Ihrem Projekt auch die Wirtschaftlichkeit
    betrachtet? Die 'teuren' Lizenzkosten sind ja oft nur
    ein kleiner Teil am Gesamtprojekt.
    Naja,

    es ist ja nicht so das wir nicht vorankommen....

    Wir machen ja ein Wartungs/Instandhaltungstool und unser Projekt besteht aus:

    1. S7-Steuerung bestehend aus einer S7-CPU315-2DP
    2. Den Ethernet-Prozessor
    3. Einer Feldsimulation inkl. Visualisierung der Gesamtanlage
    4. Einer Vollständigen Web-Administration für die Gruppen:

    Service: Betrachtung der Schaltspiele und Zustand der Aktoren
    Berechneter Wartungszeitraum
    Kaufleute: Automatische E-Mail-Versendung mit angegebenen Lieferzeiten
    Produktmerkmalen.
    etc.

    Würden wir auf Fertige Tools zurückgreifen (falls überhaupt in der Form vorhanden) wäre es zu teuer.

    Zu mindestens für unser Schulprojekt (und unseren Fiktiven Kunden )


    Warum quält ihr euch dann so, etwas, daß auf Linux entwickelt und mit Borlands Tools auf Windows portiert wurde, zuerst unter MSVC zum Laufen zu bringen?
    Naja, wir haben in der Schule mit MSVC gelernt, und es ist das einzige was mir zur Verfügung steht.
    Und das da Kompatiblitäts-Probleme auftauchen, habe ich mir nicht vorgestellt. Demnächst bekommen ich Borland und dann gehts weiter.



    Aber wenn es um die Demonstration a la 1 geht, und ihr wie ihr anderswo geschrieben habt, ihr immer nur einen DB oder einen Bereich daraus lesen wollt, kann ich euch auch das fertige Programm geben (mit BorlandC kompiliert).

    Danke, wir werden es erstmal selber versuchen (wegen des Lerneffekts), sollte es aber mit der Zeit knapp werden (Projektvorstellung ), würden wir gerne darauf zurückkommen.



    Für die Wirtschaftlichkeit bedeutet das, daß man immer die Einarbeitungszeit für das erste Projekt mit ansetzen muß.
    Mach ich Tag-Täglich, sonst würde ich nur Siemens-Komponenten bestellen.
    (In den Deltalogic-Produkten musste ich mich auch reinarbeiten ....)

    (Ein weiteres Kriterium unseres Projekts, ist die einfache erweiterung auf weitere Anlagen, oder einfache Portierung von neuen Anlagen!)


    Nun ist aufgetaucht, daß es eine Inkompatibilität zwischen Borland und MSVC zu geben scheint. Ein versierter C-Programmierer würde einfach die .DLL mit seinem MSVC neu erstellen und mir die nötigen Änderungen zur Verfügung stellen. Dafür wird er sicher nicht mehr als eine Stunde brauchen.
    So sehe ich das auch, es muss nicht an meiner Unwissenheit scheitern.
    Zur Zeit suche ich noch eine Lösung, hab zwar viele Ansätze ... ein paar Bücher ... aber ich arbeite dran.

    Zurück zum Hauptproblem:

    Bei MSVC gibt es das Tool "lib.exe", mit welcher sich die dll generieren lässt. Leider zeigt er auch mit lib.exe das die Datei beschädigt ist.

    Aber es kann auch daran liegen, das ich die falschen Parameter benutzte.
    Ich arbeite daran.


    .... Mühsam ernährt sich das Eichhörnchen ....
    Joker

  2. #22
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard

    Zitat Zitat von joker76
    Zurück zum Hauptproblem:

    Bei MSVC gibt es das Tool "lib.exe", mit welcher sich die dll generieren lässt. Leider zeigt er auch mit lib.exe das die Datei beschädigt ist.
    Sorry, bitte mehr Präzision! Was bitte läßt sich mit lib.exe generieren und woraus?
    1. Eine .DLL? Wenn ja, aus welchen Files?
    2. Oder doch eher die .lib-Datei aus der vorhandenen .DLL?
    Falls 2 richtig ist UND die entstehende .lib-Datei angeblich wieder nicht in Ordnung ist, hätte eine Vermutung, was schief gehen könnte und würde euch zu dem Zweck 2 oder drei Testfälle schicken wollen.

  3. #23
    Anonymous Gast

    Standard

    Folgenden Beitrag habe ich gefunden:

    Entweder Du lädst die Funktionen der DLL dynamisch, dann benötigst du
    keine
    > lib.
    > Oder du erstellst dir mit dem Kommandozeilentool lib.exe (VC++
    Lieferumfang)
    > eine passende lib.
    Jedoch schlägt bei mir der Versuch fehl, aus der DLL eine passende lib zu erstellen.

    Wollte mich Morgen etwas näher damit befasse, dann habe ich auch Borland.

  4. #24
    Registriert seit
    17.06.2003
    Beiträge
    42
    Danke
    1
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Böderweise war ich nicht eingelogt.

    Es wäre nett, weitere Versionen zu schicken, dann könnte wir morgen Abend damit testen.
    Joker

  5. #25
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard

    So also wird, wie ich vermutet habe, mit lib.exe eine .lib aus einer .dll erstellt. Lib.exe ist also das Gegenstück zu Borlands implib.exe.
    Nun wäre es natürlich gut, wenn du mir die Fehlermeldungen, die lib.exe produziert, nicht vorenthalten würdest.
    ICH SHE HIER WIRKLICH EIN PROBLEM UND DAS WAR AUCH IN DEN ANDEREN POSTINGS SCHON SO: ICH MUSS IMMER NACHFRAGEN!
    Zitat Zitat von joker76
    ...
    Es wäre nett, weitere Versionen zu schicken, dann könnte wir morgen Abend damit testen.
    So also wird, wie ich vermutet habe, mit lib.exe eine .lib aus einer .dll erstellt. Lib.exe ist also das Gegenstück zu Borlands implib
    Ich werde es versuchen. Allerdings "blind" Meine Vermutungen sind:
    1.#define LITTLEENDIAN beißt sich mit einer Definition in winsock2.h
    Es wird daher:
    #define LITTLE_ENDIAN
    2. Die globale Variable daveDebug in einer dynamischen Bibliothek ist unsauber: Wenn ein Programm sie auf einen Wert setzt, gilt der auch für alle anderen. Das kann ich nicht auf die Schnelle ändern, aber ich werde sie vor dem Compiler "verstecken". Anwenderprogramme müssen dann daveSetDebug() aufrufen, um sie zu verändern und können mit daveGetDebug() den Wert lesen.
    Du wirst dann auch ein neues header file nodave.h bekommen und verwenden müssen.
    Am besten legst du ein neues Arbeitsverzeichnis an, damit du mit den älteren Sachen unverändert weiterarbeiten kannst, wenn's nix bringt.

  6. #26
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard

    So, im Anhang libnodave mit leichten Änderungen. Es gibt KEIN Unterverzeichnis win. Alles steht in einem Verzeichnis.
    Vergleiche testISO_TCP.c, um die Änderungen zu sehen, die wegen daveDebug nötig sind.
    Angehängte Dateien Angehängte Dateien

  7. Folgender Benutzer sagt Danke zu Zottel für den nützlichen Beitrag:

    fldrgn (08.04.2008)

  8. #27
    Anonymous Gast

    Standard

    Ich habe mich oft gefragt, warum bei den kommerziell vertriebenen MPI-Treibern für jedes Programmiersystem (BC, VC, VB, Delphi usw.) getrennte DLLs dabei sind. Nun, wenn ich mir den Rattenschwanz hier ansehe, dann weis ich warum.

  9. #28
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard

    Zitat Zitat von Gast
    Ich habe mich oft gefragt, warum bei den kommerziell vertriebenen MPI-Treibern für jedes Programmiersystem (BC, VC, VB, Delphi usw.) getrennte DLLs dabei sind. Nun, wenn ich mir den Rattenschwanz hier ansehe, dann weis ich warum.
    Soweit ich weiß, ist etwa die AGLink.dll in allen Unterverzeichnissen dieselbe. Libnodave funktioniert darüberhinaus auch auf Linux auf PCs und, nach Angaben von Nutzern, auf Linux mit ARM-Prozessor und FreeBSD.

  10. #29
    Anonymous Gast

    Standard

    Hallo,
    ich weis aus eigener Erfahrung, dass eine z.B. mit BC erstellte LIB/DLL nicht binärkompatibel mit den LIB/DLL von VC ist. Es sind immer Konvertierungen notwendig, wenn der Hersteller der LIB nicht schon Vorkehrungen getroffen hat. Dazu gehören z.B. auch spezielle Schlüsselwörter bei den Export-Funktionen.
    Werden diese Kriterien nicht eingehalten, dann werden teilweise Funktionen nicht gefunden oder beim Aufruf passieren Abstürze.

    Gruß Borlander

  11. #30
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Borlander
    Hallo,
    ... Es sind immer Konvertierungen notwendig, wenn der Hersteller der LIB nicht schon Vorkehrungen getroffen hat. Dazu gehören z.B. auch spezielle Schlüsselwörter bei den Export-Funktionen. ...
    Es wäre jetzt schön gewesen, wenn du mir als Hersteller der .lib, gleich gesagt hättest, welche das sind.

Ähnliche Themen

  1. S7 über Ethernet an MP
    Von Nadya im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 23.04.2011, 08:03
  2. Antworten: 0
    Letzter Beitrag: 08.01.2010, 16:34
  3. Antworten: 33
    Letzter Beitrag: 10.02.2009, 21:14
  4. Antworten: 2
    Letzter Beitrag: 25.09.2008, 10:34
  5. DMX über Ethernet
    Von maxi im Forum Elektronik
    Antworten: 5
    Letzter Beitrag: 18.06.2006, 16:29

Lesezeichen

Berechtigungen

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