Angenommen ich will ein Oszilloskop von einem C++ Programm aus über Ethernet steuern. Da gibt es ja diese standardisierten SCPI Befehle. Dann gibt es auch noch NI-VISA. Ich bin da lizenzrechtlich nicht so ganz durchgestiegen. Wenn die Software verkauft wird, muss ich dann Lizenzgebühren an NI zahlen. Und wenn ja, ist es möglich/vernünftig die Kommunikation über Ethernet mit SCPI Befehlen selber zu programmieren?
M. M. schrieb: > ist es möglich/vernünftig die > Kommunikation über Ethernet mit SCPI Befehlen selber zu programmieren? Ich mache das seit Jahren so. Du brauchst kein VISA. SCPI besteht darin Kommando-Strings an ein Messgerät zu senden und/oder Daten vom Mesgerät zu empfangen. Es ist schnittstellen- unabhängig, d.h. SCPI Datenverkehr kann über alle möglichen Schnittstellen passieren. Über welche es möglich ist hängt vom Gerät ab. Zum Steuern über LAN (oder z.B. Serial) öffnet man eine TCP- Verbindung als Client und schickt darüber einfach LF-delimited Strings (LF dient als Separator für einzelne Kommandos). Empfangen von Datenstrings funktioniert auf dem gleichen Socket. Oft scheitert die TCP-Verbindung daran den richtigen Port zu verwenden, er ist bei Messgeräten oft 5025. Das müsste aber aus dem Handbuch des Gerätes zu entnehmen sein. Noch Fragen? Ja man muss sich halt mit der Socket-Programmierung auseinandersetzen, das ist der Preis der VISA-Freiheit.
ich verwende pyVisa um Geräte über python und visa mit usb anzusteuern, geht wohl aber auch über Ethernet. Is gratis verfügbar, weiß aber nicht wie das mit lizenz funktioniert schau mal auf deren Seite.
SCPI ist ein Befehlssatz, um Messgeräte mit ähnlichen Eigenschaften über dieselben Befehle anzusprechen. VISA ist eine Herstellerübergreifende Bibliothek, um verschiedene Messgeräte mit unterschiedliche Schnittstellen über die gleiche Art anzusprechen. Auch über verschiedene Rechner hinweg.
Für Ethernet würde ich das auch einfach von Hand machen. Ist wirklich kein Hexenwerk und ich glaube nichtmal, dass eine Bibliothek so Komplexität wie Disconnects etc. sinnvoll abstrahieren und damit vereinfachen kann.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.