lesezeit bei serieller Schnittstelle

  • Hallo Leute,


    ich habe ein Kamerasystem an einen KR3 angeschlossen. Über die serielle Schnittstelle lese ich lediglich 3 variablen. die lesezeit beträgt jedoch über eine Sekunde! das kann doch nicht normal sein?
    Muss ich den Port (Kanal) jedesmal öffnen und wieder schliessen oder kann der offen bleiben? ich habe etwa alle 15 Sekunden eine Messung.
    Kennt sich da jemand aus?


    THX!

  • Schritt für Schritt zum Roboterprofi!
  • Hallo :)
    der Kanal kann immer offen bleiben
    - schick mir bitte die serial.ini und welchen port Du benutzt
    - wartest Du mit timeout oder benutzt Du einen Interrupt auf $data_serx ?
    Gruss Paul

    Wer nach allen Seiten offen ist kann nicht ganz dicht sein

  • Guten Morgen,
    serial.ini ist ok. Deine übertragenen Daten dürfen nicht binär sein, sondern nur ASCII !
    Woher weisst Du dass das Einlesen 1 sec dauert ? Wie ist der Kommunikationsablauf ?
    Schickst Du alle 15 sec einen Request zur Kamera?
    Paul

    Wer nach allen Seiten offen ist kann nicht ganz dicht sein

  • Ich habe ein Programm für die Datenübertragung, welches ich aufrufe. Dort öffne ich den Kanal, lese die drei Variablen mit CREAD und schliesse den Kanal wieder. Ich sende sonst keine Request zur Kammera. Das System sendet ASCII, was ich auch im TELNET sehen kann. Die Zeit habe ich mit einem Timer gemessen: Starten vor dem Aufruf des Programm, stoppen nach Bearbeitung des Programms. (mit $Advance=0)

  • Du weisst also nicht ob ein Telegramm von der Kamera da ist wenn Du CREAD aufrufst?
    Die Kamaera scheint zyklisch Telegramme zu schicken.
    Vorschlag: Du öffnest den Kanal nur einmal (Hauptprogramm), kein CCLOSE,
    Du schreibst eine Interruptfunktion die aufgerufen wird wenn $DATA_SER3>0 ist.
    Dann dürfte die Einlesezeit optimiert sein
    Gruss

    Wer nach allen Seiten offen ist kann nicht ganz dicht sein

  • :merci: das mit dem kanal ging ganz gut und half bereits ein wenig. für den interrupt hatte ich keine Zeit mehr. ich werde es bei der nächsten Anwendung probieren. Bin nun ganz zufrieden!
    vielen Dank

Erstelle ein Benutzerkonto oder melde dich an um zu kommentieren

Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können

Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Geht einfach!
Neues Benutzerkonto erstellen
Anmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden