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

Ergebnis 1 bis 3 von 3

Thema: libnodave - serielle Verbindung trennen

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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi,
    wie ich schon in einem anderen Thread geschrieben habe verwende ich libnodave.so und libnodave.dll unter Python. Da ich vorhabe mein Programm später als Dienst im Hintergrund laufen zu lassen mache ich mich momentan auf die Suche nach möglichen Fehlerquellen damit es stabil läuft.

    Mein System:
    SIMATIC S5 101U
    PC mit Ubuntu 9.10 (Physikalischer Rechner)
    virtuelle Maschine mit WinXP
    Verbindung mit USB to TTY Adapter

    Verbindungsaufbau und Datenaustausch funktioniert unter XP zufriedenstellend.
    Ich würde gerne eine Verbindung die funktioniert physikalisch trennen können (Kabel für tty-Schnittstelle abziehen) und die Verbindung automatisiert wieder neu initialisieren können. Nur irgendwie scheine ich mich ein wenig dumm anzustellen.

    Eine Verbindung stelle ich folgendermaßen her:
    Code:
    self.fds.rfd = self.dave.setPort(port, baud, parity)
    self.fds.wfd = self.fds.rfd
    
    self.di = self.dave.daveNewInterface(self.fds, name, localMPI, protocol, speed)
    self.dave.daveSetTimeout(self.di, time)
    self.dave.daveInitAdapter(self.di)
    
    self.dc = self.dave.daveNewConnection(self.di, mpi, rack, slot)
    self.dave.daveConnectPLC(self.dc)
    hierbei ist ``self.dave`` jeweils die library libnodave.

    Ich habe mir das Beispielprogramm ``testAS511.c`` angesehen. Wenn ich jetzt feststelle das die Verbindung nicht mehr funktioniert trenne die Verbindung indem ich die gleichen Funktionen wie im Testprogramm aufrufe:

    Code:
        daveDisconnectPLC(dc);
        daveFree(dc);
        daveDisconnectAdapter(di);
        daveFree(di);
    Beim neu verbinden bekomme ich den Fehler
    Code:
    COM8 - Verbindung *** Error in Exchange.ReqTrans request.
    COM8 - Verbindung *** Error in ReadS5Bytes.Exchange sequence.
    und ``daveConnectPLC()`` gibt mir als Rückgabewert nicht mehr 0 sondern -21.

    Momentan tappe ich noch ein Wenig im Dunkeln warum ich nicht einfach die Verbindung schließen und wieder neu herstellen kann. Evtl. hat ja mal jemand einen Hinweis für mich?

    Sebastian
    Zitieren Zitieren libnodave - serielle Verbindung trennen  

  2. #2
    Registriert seit
    27.11.2005
    Ort
    im Osten
    Beiträge
    1.183
    Danke
    141
    Erhielt 271 Danke für 248 Beiträge

    Standard

    Ich arbeite zwar nicht mit den seriellen Verbindungen, aber ruf mal beim Verbindungsabbau noch die Funktion "closeport" auf um den Seriellen Port zuschließen, dann könnte das funktionieren.
    Es ist nicht schwierig, mit noch nicht erreichten Zielen zu Leben; schwierig ist, ohne Ziele zu Leben !
    (Günther Kraftschik)

  3. #3
    waschtl ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    05.12.2010
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Super, genau das wars. Ich hatte schon die Datei nodave.h mehrmals überflogen, aber die Beschreibung der Funktion versteckt sich logischerweise in setport.h. Da hätte ich mich noch dumm und dämlich gesucht.
    Vielen Dank noch mal und schöne Feiertage - ich kann mich noch ein bisschen mit meiner SPS beschäftigen

    Sebastian

Ähnliche Themen

  1. Libnodave + Verbindung CPU
    Von Proxy im Forum Hochsprachen - OPC
    Antworten: 1
    Letzter Beitrag: 19.03.2011, 18:04
  2. Serielle Verbindung mit b&r CP470
    Von ghostbrain im Forum Sonstige Steuerungen
    Antworten: 6
    Letzter Beitrag: 19.02.2011, 14:36
  3. LibNoDave Verbindung trennen
    Von noeppkes im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 25.11.2008, 10:43
  4. libnodave Verbindung
    Von Mike1972 im Forum Simatic
    Antworten: 22
    Letzter Beitrag: 30.01.2008, 16:54
  5. FTP - Verbindung automatisch trennen
    Von CrazyCat im Forum Feldbusse
    Antworten: 22
    Letzter Beitrag: 20.11.2006, 09:22

Lesezeichen

Berechtigungen

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