Cours:Oscillogbf : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
(Mise en place)
(Mise en place avec QtCreator)
Ligne 5 : Ligne 5 :
 
*créer un nouveau projet :
 
*créer un nouveau projet :
 
**Application (Qt for Python)  {{Rouge|Window UI}}
 
**Application (Qt for Python)  {{Rouge|Window UI}}
 +
**choisir {{Rouge|PySide2}}
 +
**choisir la version {{Rouge|Python 3.x.x}} {{Vert|<big>'''sans'''</big>}} Virtual Environnement
  
 
==QPushButton==
 
==QPushButton==

Version du 5 février 2025 à 10:01

python et Qt

Mise en place avec QtCreator

  • créer un nouveau projet :
    • Application (Qt for Python) Window UI
    • choisir PySide2
    • choisir la version Python 3.x.x sans Virtual Environnement

QPushButton

import sys
import pyvisa

from PySide2 import QtCore, QtGui, QtWidgets
from PySide2.QtWidgets import QApplication, QWidget, QFileDialog, QPushButton
from PySide2.QtUiTools import QUiLoader


def appui_bouton():
    print("Appui sur le bouton")
    print(gbf.query('*IDN?'))


loader = QUiLoader()
app = QtWidgets.QApplication(sys.argv)
window = loader.load("form.ui", None)
window.my_push_button = window.findChild(QPushButton, "pushButton_2")
window.show()

window.my_push_button.clicked.connect(appui_bouton)

materiel=pyvisa.ResourceManager()
print(materiel.list_resources())
gbf=materiel.open_resource('TCPIP::10.98.35.144::INSTR')

app.exec_()

liens

Tests

banc de mesure  : 1 scope DS1074 + 1 gbf DG822


le script (basique ...) qui gère le tout :


#!/bin/bash

IPSCOPE=192.168.1.111

freq=100

while true; do
      # 1 sinus ampl=5V, offset nul, dephasage nul
      ./dg822_write.py ":sour1:appl:harm $freq,5,0,0"
      sleep 2
      # demande un AUTo mode au scope
      lxi scpi -a $IPSCOPE "AUT"
      sleep 5
      let "freq += 100"
      done

les commandes python :


#!/usr/bin/python3

import sys
import pyvisa
rm=pyvisa.ResourceManager()
inst=rm.open_resource('USB0::6833::1603::DG8A231301537::0::INSTR')

print("commande = ",sys.argv[1])
commande=sys.argv[1]

inst.write(commande)