Messdaten per GPIB auswerten

Hallo,

ich habe beim letzten DMM-Kauf eines mit GPIB 'erwischt' (reiner Zufall, dass es die GPIB-Option installiert hatte, es passte ansonsten von den Features her am besten). Hatte mir dann gleich noch eine IEEE488 ISA-Karte mitschicken lassen (jaaa, von Singer...). Die ist beim Installieren eines neuen Rechners jetzt mit in die Konfig gewandert und tut soweit auch, ich kann jedenfalls die ID per Software auslesen, die Verbindung klappt also (). Da das alles wie gesagt reiner Nebeneffekt war, habe ich mich noch kein Stück weit mit den möglichen Anwendungsfällen auseinander gesetzt.

Jetzt habe ich aber einen: ich müsste zu einem Messwert immer direkt die Hälfte und das Doppelte dessen Betrages sehen können. Und zwar nicht als angezeigtes Produkt am DMM (das könnte es direkt selber) sondern immer parallel zum eigentlichen Messwert, dafür fehlt dem DMM aber ein entsprechend umfangreiches Display. Ist man dafür auf eine Programmiersprache am Computer angewiesen, die sich am GPIB 'bedient', müsste man also ein eigenes Programm dafür schreiben? An Freeware-Suites dazu bin ich irgendwie nicht fündig geworden, gibt's da nichts in die Richtung oder wenigstens eine Art Repository? Im Programmieren bin ich leider zu unfit dafür.

Danke und Grüße, Niko

Reply to
Nikolaus Riehm
Loading thread data ...

Am 07.10.2010 00:36 schrieb Nikolaus Riehm:

In die Klammer sollte eigentlich noch rein: "Die IEE488-Karte ist von National Instruments und ich kann mit deren Measurement & Automation Explorer *IDN? senden und das DMM meldet seine ID zurück (ist ein Philips PM 2535)."

Grüße, Niko

Reply to
Nikolaus Riehm

Wenn es nicht teuer werden soll kommst Du um einige Programmiererei nicht rum. Falls Du das versuchen willst, gibt es hier vielleicht brauchbare Routinen:

formatting link

Die elegantere Methode waere SCADA Software, aber das kostet. Ich benutze ab und zu diese hier:

formatting link

Muss man aber vorher sehen ob die Karte unterstuetzt wird. NI koennte in dieser Richtung was zugeknoepft sein und dann muesstest Du LabView verwenden. Das kostet allerdings gut Geld. Kann mich dunkel erinnern dass es bei Euch mal solche SW als Beigabe zu einer Computerzeitschrift gab, m.W. aber nur fuer Linux. Was man ja in einer VM betreiben kann. Vielleicht erinnert sich jemand oder hat die CD noch.

Lohnen kann es sich auch nach Fertigloesungen zu suchen. Fuer manche Serien wie diese gibt es Routinen die die Messwerte in Excel oder Word reinsaugen, und ab da duerfte es selbst fuer uns Nicht-Programmierer ein Kinderspiel sein:

cp.literature.agilent.com/litweb/pdf/5968-0162EN.pdf

--
Gruesse, Joerg

http://www.analogconsultants.com/
 Click to see the full signature
Reply to
Joerg

Nikolaus Riehmschrieb: "

Du kannst selbst ein Programm schreiben, wenn du eine dafür geeignete Library verwendest z.B. ftp://ftp.agilent.com/pub/mpusup/pc/iop/iopnotes/ph0_toc.html oder es mit div. Messgerätesoftware wie LabView oder LabWindows versuchst.

Dirk

Reply to
Dirk Ruth

Dirk Ruthschrieb: "

Nachtrah: Falls du eine geeignete Software und Beispiele suchst, dann könntest du hier fündig werden

formatting link

Reply to
Dirk Ruth

Danke, schau ich mir mal an. Müsste halt in 'Echtzeit' laufen, sich also ständig updaten, nicht nur als Screencopy.

Das war bei meinem 'neuen' gebrauchten Mixed-Signal-Scope (HP 54645D) auch dabei, allerdings via RS-232 und witzigerweise funktioniert die Excel-Toolbar reibungsloser als das stand-alone Programm. Ach warte mal, das bringt mich grad auf eine Idee: das Scope kann zwei Math-Functions in die Screen-Messungen reinnehmen. Wenn ich die jeweils auf die Hälfte und das 2fache des Kanals einstelle, müsste ich eigentlich alle drei Werte gleichzeitig sehen können (halt weniger genau als mit dem DMM, aber zum Eintrimmen könnte das reichen, den Abschluss schaffen meine Nerven dann auch noch händisch am DMM). Probier ich morgen gleich mal aus.

Grüße, Niko

Reply to
Nikolaus Riehm

Am Wed, 06 Oct 2010 16:31:09 -0700 schrieb Joerg:

Das war die c't von heise:

formatting link
Labview in einer älteren Version gibts manchmal auch als Beilage zu Büchern zu Labview.

HTH Martin

Reply to
mblume

Naja, das Programmieren beschränkt sich, wenn du das "zu Fuß" machen willst, auf das Absenden von ASCII-Kommandos und das Empfangen der Antworten. Ist am Ende nicht viel anders, als wenn du eine seriöse Schnittstelle als Verbindung hättest.

Wir machen sowas in der Firma mit einer Tüte von Python-Scripts, weil man damit alles prima automatisieren kann. Prinzipiell ist aber jede x-beliebige Scriptsprache geeignet, sofern sie in der Lage ist, zur Laufzeit dynamische Bibliotheken (DLL oder .so) zu laden und auf diese zuzugreifen.

Was du natürlich brauchst, ist einen Treiber für die Karte und eine Bibliothek, die das API nach oben abbildet. Das API ist primitivst, auch 3rd-party-Implementierungen halten sich praktisch immer an das von National Instruments vorgegebene API, das vermutlich noch aus CP/M-Zeiten stammt. ;-)

Für Linux gibt's eine Opensource-Reimplementierung von Treiber und Bibliothek (linux-gpib auf sourceforge), FreeBSD bringt das selbst im System mit. Wenn du mit Windows geplagt bist :), solltest du aber die Treiber und Bibliothek trotzdem (nach Registrierung) kostenlos von NI bekommen können, nur LabView ist meines Wissens kostenpflichtig.

Wenn dich die Details zur Python-Script-Programmierung interessieren, mail me.

--
cheers, J"org               .-.-.   --... ...--   -.. .  DL8DTL

http://www.sax.de/~joerg/                        NIC: JW11-RIPE
 Click to see the full signature
Reply to
Joerg Wunsch

obIngrid:

OK, ich sehe gerade in der anderen Nachricht von dir, dass du dies ja bereits hast.

--
cheers, J"org               .-.-.   --... ...--   -.. .  DL8DTL

http://www.sax.de/~joerg/                        NIC: JW11-RIPE
 Click to see the full signature
Reply to
Joerg Wunsch

Nikolaus Riehm schrieb:

Hallo Niko,

Das schaut doch prima aus. Auf der Arbeit verwende ich ein USB Interface von National Instruments. Wenn Du schon "Kontakt" zu dem Gerät hast, dann geht sicherlich auf Labview oder eine Scriptsprache, mit der man "GPIB" kann.

Ich verwende Tcl. Phython, Perl oder sonstwas ist sicher auch ok. Labview schaut erst mal ganz nett aus, andererseits ist alles grafisch. Komplexere Abläufe werden dann doch schnell unübersichtlich auf zig Blättern. In Form von Scrips ist IMHO vieles besser lesbar, erweiterbar und wieder verwendbar.

Letztendlich solltest Du nach Möglichkeit selber herumprobieren.

Viele Grüße,

Christoph

Reply to
Christoph Brinkhaus

Sehr witzig :) Eine ISA-488-Karte in die VM mitschleppen dürfte aufwändiger sein als eine neu zu entwickeln und dafür selbst einen Treiber + Auswertungssoftware zu schreiben...

@Niko, Du alter Alte-Messtechnik-Junkie - wie kann ich Dich verstehen! Hast Du keine Studentenversion von Labview?

Reply to
Stefan Huebner

Am 07.10.2010 20:44 schrieb Christoph Brinkhaus:

Wie würde dann die Abfrage erfolgen? Einfach per Schleife fortlaufend pollen? Programmier-technisch bin ich wie gesagt nicht auf der Höhe, außer einigen Mnemonics aus 8085 und Z-80 Zeiten (immerhin auf selbst gebastelten Systemen *g*) und DOS-Batch-Gekrüppel hab ich da kaum Berührungspunkte gehabt. Einfaches Polling müsste aber auch unerfahren relativ leicht gehen, oder?

Hm, das scheint mir auch so. Zumal ich das gleiche Verfahren für den Counter benutzen könnte (der hat auch GPIB), da wäre es auch nicht unpraktisch, ganzzahlige Vielfache und Teile des aktuellen Messwerts im AUge zu behalten um oktavweise Stimmungen schneller zu erledigen.

Grüße und Danke, Niko

Reply to
Nikolaus Riehm

Am 07.10.2010 11:29 schrieb mblume:

Na Klasse, die ganzen c't Software-CDs habe ich Anfang des Jahres entsorgt ("OpenOffice kann ich mir aktueller runterladen und den ganzen anderen Kram braucht man doch nie!" - das hab ich jetzt davon.

Oha, die NI-Aktion mit der Registrierung für die Windows-Version von LabView ist eh schon ausgelaufen. Guter Anlass, ein Linux auf den Messrechner zu nudeln (VMs are evil!).

Danke und Grüße, Niko

Reply to
Nikolaus Riehm

Am 07.10.2010 20:56 schrieb Stefan Huebner:

Da installier ich einfach ein natives Linux auf den Rechner. Kann man ja schnell neu booten und die Kiste steht am zweiten Messplatz, die eigentliche Windows-DOSe läuft dann unbehelligt weiter.

Den Studentenpass hab ich schon vor langer Zeit in die Schublade gelegt und für eine LabView-Vollversion sind die Billanzen noch zu schlecht

*lach*... Jetzt saß ich halt mit Taschenrechner da und hab nach jedem Trimmen schnell getippt. Die Idee mit dem Oszi kam erst danach, probier ich beim nächsten Kandidaten mal aus (wird klassischerweise ein Minimoog, da fliegt man ja im Blindflug durch ;-)

Grüße, Niko

PS: der Polymoog läuft wieder, waren noch ein paar Kleinigkeiten und ein blöder Kabelbruch im Multicore vom Polypedal. Ich find ihn ja vom Sound her schon ziemlich brauchbar, keine Ahnung was die Leute da immer zu schimpfen haben.

Reply to
Nikolaus Riehm

Nikolaus Riehm schrieb:

Hallo,

einfach pollen sollte man da nicht, man sollte einen Timer benutzen um so oft wie nötig abzufragen, aber nicht wesentlich häufiger um den Rechner nicht unnötig zu belasten.

Bye

Reply to
Uwe Hercksen

Gräm Dich nicht. Viel zu Vieles auf diesen CDs ist heute Demo-Kram oder noch schlimmer "Nach Registrierung Demo-Kram". Das kriegt man immer wieder (wenn man mal 30 Tage zum Testen hat, in denen man alles andere liegenlassen kann). Denn die Hersteller wollen doch immer noch verkaufen :-).

Grüße, H.

Reply to
Heinz Schmitz

Aehm, zum Stimmen eines Instruments? GPIB? ...

Das habe ich viel einfacher gemacht, mit AP Tuner. Inzwischen haben wir Klavier und Gitarre allerdings verschenkt und die Hammond Orgel braucht das nicht. Ok, einmal muss ich noch Stimmen, um das der Familie die jetzt das Klavier hat zu zeigen.

--
Gruesse, Joerg

http://www.analogconsultants.com/
 Click to see the full signature
Reply to
Joerg

on

Viel Spa=C3=9F, wenn Du mit LabView an den seriellen Port willst. Das geh= t unter Linux wenigstens nur, wenn das VISA-Toolkit installiert ist, was allerdings nicht *nur* serielle Ports sondern Kommunikation mit allen m=C3=B6glichen Arten von Messger=C3=A4ten implementiert, und dazu ein Kernelmodul haben will, was alle m=C3=B6glichen und unm=C3=B6glichen Schweinereien macht. Das hat zur Folge, dass normaler 4 Kernelversion nach dem Release der VISA-Version das Modul nicht mehr kompiliert.

Unter Windows hat man diese Probleme generell nicht.

Gru=C3=9F, Michael Karcher

Reply to
Michael Karcher

Ich sach doch immer, Frickelware ...

Dafuer ein paar andere. Aber SCADA und solche Sachen lassen sich damit recht einfach implementieren. Das ist sogar mir als Nicht-Programmierer gelungen. Irgendwann Ende dieses Jahres muss ich wieder, automatisches Durchfahren von Netzteilen von 350Hz bis 450Hz und so. Das kann man sich beinahe alles zusammenklicken und muss sich um den Datenpfad zum Laborgeraet keine grossen Gedanken machen.

--
Gruesse, Joerg

http://www.analogconsultants.com/
 Click to see the full signature
Reply to
Joerg

Zum Stimmen *eines* Instruments sicher nicht. Zum Stimmen *vieler* Instrumente schon eher. Zum Stimmen *vieler* Instrumente mit mehr als

*einer* Stimme bestimmt. Und zum Stimmen *vieler* Instrumente mit mehr als *einer* Stimme plus jeweils noch einen Filter hinten dran dann ganz sicher. Die Möglichkeiten sind da, warum soll man sie nicht nutzen? Du machst die Layouts ja auch nicht mehr mit Edding, Butterbrotpapier und Belichtungslampe, oder? Obwohl das mal *wirklich* gusseisern wäre... ;-)

Ist halt praktisch, wenn man gleich drei oder vier Oktaven in Abhängigkeit sieht, das erspart beim Einstellen der Oktavspreizung schnell mal zwei bis drei Durchläufe (pro Stimme!). Inzwischen hat man das zwar auch schon im Gefühl ("dreh ich's Tuning gleich etwas höher, weil's nachher durch die geänderte Spreizung ja doch wieder runter kommt"), aber mit nackten Zahlen danaben kann das schneller gehen und auch gerne mal ohne Ohren, die haben ja auch nicht ununterbrochen Lust.

Grüße, Niko

Reply to
Nikolaus Riehm

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.