USBTMC
Introduction
Lorsque on branches certains appareils de mesures (oscilloscopes, multimètres, etc...) sur un ordinateur par un câble USB on voit apparaître un périphérique usbtmc. De quoi s'agit-il?
C'est un périphérique exploitant un driver au format USB Test and Measurement Class.
Certain appareils plus "bas de gamme" offrent une interface SCPI_uart qui utilise juste un driver USB/UART vers une console SCPI. Ici on a un mécanisme un peu plus performant mais aussi nécessitant un driver plus évolué.
On aura toujours l’accès en SCPI mais travers un protocole plus rapide.
Une page en français nous donne une description rapide : https://www.actutem.com/que-signifie-usbtmc/
Sur un Raspberry PI le driver est pré installé, il n'y a rien à faire. Pour Windows... je ne sais pas je créais une section ici si je l'apprends un jour.
Programmation
On se propose de travailler avec Python car c'est là que les librairies les plus simples sont écrites. La librairie s'appelle classiquement python-tmc et s'installe par :
Installation simple
sudo pip3 install python-usbtmc
Installation pour Debian >=12
Le contrôle des packages python est normalement pris en charge par l'OS. Cependant des modules spécifiques ne sont pas disponibles ainsi. Il faut alors créer un environnement virtuel.
cd
mkdir python-vurtual
cd python-vurtual/
python -m venv th-test # cette commmande à bien pris 'à à 50 econdes sur mon PI 400.
cd th-test/
source bin/activate
A ce niveau là un simple
which python
nous donne :
/home/<<username>>/python-vurtual/th-test/bin/python
On peut ensuite faire l'installation "dans cet environnement virtuel":
pip install python-usbtmc
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting python-usbtmc
Downloading https://www.piwheels.org/simple/python-usbtmc/python_usbtmc-0.8-py3-none-any.whl (10 kB)
Installing collected packages: python-usbtmc
Successfully installed python-usbtmc-0.8