INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

VISA-Empfang mit Polling- oder Interruptsteuerung?



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

14.07.2006, 13:29
Beitrag #1

Bernhard_ Offline
LVF-Neueinsteiger


Beiträge: 6
Registriert seit: Jul 2006

8.00
2006
kA


Deutschland
VISA-Empfang mit Polling- oder Interruptsteuerung?
Hallo allerseits,

als Anfänger arbeite ich bisher ich mit der Polling-Lesefunktion, habe damit aber regelmäßig Probleme mit Rahmensynchronisationsfehlern (ca. alle 20 s) und verlorenen oder abgeschnittenen Telegrammen (ca. jedes Zweite).
Das Programm erhält in Zeitabständen zwischen 20 und 5000 ms (meistens nahe 20 ms) Datenpakete mit einer Länge von 32 bis 35 Bytes mit 19200 (Später 57600) Baud.

Kommen meine Probleme vom Polling oder mache ich etwas anderes falsch?

Viele Grüße und danke im Voraus,
Bernhard
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.07.2006, 14:00
Beitrag #2

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
VISA-Empfang mit Polling- oder Interruptsteuerung?
Also die Schnittstelle ist eigentlich nicht voll ausgelastet:

1/0.02sek = 50 Hz
50 Hz*35Bytes=1750Bytes/sek
1750Bytes/sek ist << als 19200 Baud

Das heisst daran kann es nicht liegen.

Frameerror und fehlende Bytes kommen eigenlich entweder wegen der Auslastung oder wegen falschen Einstellungen.

Überprüfe die Einstellungen vom Sender und Empfänger, die sollen genau identisch sein.

Beim Initialisieren von VISA gibt es oben einen Flag "Abschlusszeichen". Lese im Help genau nach wozu es da ist. Wahrscheinlich musst du ihn auf False setzen. Ausserdem hast du wahrscheinlich in deiner Polling-While-Schleife eine Wartezeit. Die ist überflüssig, wenn du beim Init von VISA den Timeout eingegeben hast.

Gruss, Eugen

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.07.2006, 15:02
Beitrag #3

Bernhard_ Offline
LVF-Neueinsteiger


Beiträge: 6
Registriert seit: Jul 2006

8.00
2006
kA


Deutschland
VISA-Empfang mit Polling- oder Interruptsteuerung?
Hallo Eugen,
vielen Dank für deine schnelle Antwort.
Die Einstellungen von Sender und Empfänger stimmen überein, das Abschlusszeichen war auch deaktiviert.

Deinen Tipp mit dem Entfernen der Wartezeit habe ich befolgt, außerdem habe ich meinen Sender versuchsweise so eingestellt, dass er mindestens 1 s nach dem Senden eines Telgeramms wartet.
Leider zeigt "Empfangenes Telegramm" nichts mehr an und es wird auch nichts mehr verarbeitet.
Wenn ich hinter dem Lesen einen Breakpoint setze, dann sehe ich, dass Daten gelesen aber nicht verarbeitet werden.

Wo steckt jetzt mein dummer Anfängerfehler?

Viele Grüße,
Bernhard


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.07.2006, 15:41
Beitrag #4

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
VISA-Empfang mit Polling- oder Interruptsteuerung?
Hi,
was siehst du da mit nem Breakpoint genau? Woran siehst du, dass nichts verarbeitet wird? Hast du mal das Fehlercluster angeschaut?

Gruss
Achim

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.07.2006, 16:02
Beitrag #5

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
VISA-Empfang mit Polling- oder Interruptsteuerung?
Habe ich es richtig gesehen, dass die Initialisierung sich mit in der While-Schleife befindet?

Wenn ja, die Initialisierung braucht auch Zeit, also lieber aus der While-Schleife rausholen.

Gruss

EDIT: die Deinitialisierung allerdings auch.

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.07.2006, 16:07
Beitrag #6

Achim Offline
*****
*****


Beiträge: 4.223
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
VISA-Empfang mit Polling- oder Interruptsteuerung?
Genau, eugen hat recht! Nur 1xInit!

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Polling über USB RAW - Timeout funktioniert nicht MirkoB 3 5.132 06.09.2017 15:18
Letzter Beitrag: MirkoB
  VISA: (Hex 0xBFFF0015) bei VISA read und im VISA Test Panel rick 3 14.235 10.11.2013 12:16
Letzter Beitrag: Y-P
  Zugriff auf Ethernet-Port via TCP oder VISA Funktionen Fidel90 2 7.052 16.06.2011 08:07
Letzter Beitrag: Fidel90
  RS232 oder VISA tetef 22 16.734 24.02.2010 10:04
Letzter Beitrag: IchSelbst
  Serieller Empfang mit Timeout marc10k 6 6.021 05.11.2009 09:36
Letzter Beitrag: Lucki
  visa write; visa read zeitgesteuert ThomasDipl 8 11.471 20.11.2008 06:46
Letzter Beitrag: Achim

Gehe zu: