Das Python-Paket unterstützt die Programmierung aller 200 Produkte (mit Samplingraten von 5 MS/s bis 10 GS/s) von Spectrum Instrumentation .
Technische Details
Python verfügt über eine Sammlung von Bibliotheken und Frameworks (wie NumPy), um Programmierzyklen zu optimieren. Das spcm-Paket ermöglicht es, die Vorteile der Python-Programmiersprache zu nutzen, indem es eine objektorientierte Programmierschnittstelle (OOP – Object-Oriented Programming) bietet, die speziell für die Test- und Messprodukte von Spectrum entwickelt wurde.
Das spcm-Paket enthält den vollständigen Quellcode sowie detaillierte Beispiele, ist auf GitHub verfügbar und unter der MIT-Lizenz kostenlos.
Wie funktioniert das?
- Das Python-Paket verwaltet das automatische Öffnen und Schließen von Karten, Kartengruppen und Ethernet-Instrumenten sowie die Zuweisung von Speicher für die Datenübertragung.
- Sämtliche gerätespezifische Funktionen sind in Blöcke eingeteilt. Dazu gehören Takt- und Triggereinstellungen, Hardware-Kanaleinstellungen, direkter Speicherzugriff (DMA) und Kartensynchronisation sowie Produktfunktionen wie Block Average, DDS und Pulse Generator.
- Das Paket unterstützt die Verwendung realer Größen und Einheiten (z.B. „10 MHz“), so dass Treibereinstellungen direkt im bevorzugten Einheitensystem programmiert werden können. Dadurch entfällt die manuelle Konvertierung kryptischer API-Einstellungen.
- Das Paket enthält auch Hilfen bei Berechnungen mit NumPy und Matplotlib, so dass Daten, die von diesen Programmbibliotheken stammen oder für diese bestimmt sind, mit den Toolboxen dieser Pakete verarbeitet werden können.
- Beispiele finden sich im GitHub-Repository. Die Installation des Pakets ist durch die Verfügbarkeit im PiP-Repository einfach. Nach der Installation von Python wird das Paket mit einem Befehl geöffnet: $ pip install spcm
- Benutzer können das Python-Paket in ihre eigenen Programme einbinden oder auf das Repository verzweigen, um weitere Funktionen hinzuzufügen. Das spcm-Paket wird direkt von den Ingenieuren bei Spectrum Instrumentation betreut, wobei regelmäßig Updates und neue Funktionen veröffentlicht werden.









