MainCode/adalm1000_logger.py aktualisiert
Remove QQueue from the import line. Use collections.deque or queue.Queue instead. (C)
This commit is contained in:
parent
c2780a0fc5
commit
0b7ea8c3c8
@ -13,9 +13,9 @@ from PyQt5.QtWidgets import (QApplication, QMainWindow, QWidget, QVBoxLayout, QH
|
|||||||
QGridLayout, QLabel, QPushButton, QLineEdit, QFrame,
|
QGridLayout, QLabel, QPushButton, QLineEdit, QFrame,
|
||||||
QCheckBox, QMessageBox, QFileDialog, QProgressBar)
|
QCheckBox, QMessageBox, QFileDialog, QProgressBar)
|
||||||
from PyQt5.QtCore import (Qt, QTimer, pyqtSignal, pyqtSlot, QObject, QThread,
|
from PyQt5.QtCore import (Qt, QTimer, pyqtSignal, pyqtSlot, QObject, QThread,
|
||||||
QMutex, QMutexLocker, QQueue)
|
QMutex, QMutexLocker)
|
||||||
from PyQt5.QtGui import QColor, QPalette
|
from PyQt5.QtGui import QColor, QPalette
|
||||||
|
from collections import deque
|
||||||
import pysmu
|
import pysmu
|
||||||
import matplotlib
|
import matplotlib
|
||||||
matplotlib.use('Qt5Agg')
|
matplotlib.use('Qt5Agg')
|
||||||
@ -54,8 +54,8 @@ class MeasurementThread(QThread):
|
|||||||
def run(self):
|
def run(self):
|
||||||
"""Main measurement loop with enhanced error handling."""
|
"""Main measurement loop with enhanced error handling."""
|
||||||
self._running = True
|
self._running = True
|
||||||
voltage_window = QQueue()
|
voltage_window = deque()
|
||||||
current_window = QQueue()
|
current_window = deque()
|
||||||
|
|
||||||
self.status_signal.emit("Measurement started")
|
self.status_signal.emit("Measurement started")
|
||||||
|
|
||||||
@ -76,11 +76,11 @@ class MeasurementThread(QThread):
|
|||||||
raw_current = np.mean([s[0][1] for s in samples])
|
raw_current = np.mean([s[0][1] for s in samples])
|
||||||
|
|
||||||
if voltage_window.size() >= self.filter_window_size:
|
if voltage_window.size() >= self.filter_window_size:
|
||||||
voltage_window.dequeue()
|
voltage_window.append
|
||||||
current_window.dequeue()
|
current_window.append
|
||||||
|
|
||||||
voltage_window.enqueue(raw_voltage)
|
voltage_window.append(raw_voltage)
|
||||||
current_window.enqueue(raw_current)
|
current_window.append(raw_current)
|
||||||
|
|
||||||
voltage = np.mean(list(voltage_window))
|
voltage = np.mean(list(voltage_window))
|
||||||
current = np.mean(list(current_window))
|
current = np.mean(list(current_window))
|
||||||
@ -297,10 +297,10 @@ class BatteryTester(QMainWindow):
|
|||||||
self.error_signal.connect(self.handle_device_error)
|
self.error_signal.connect(self.handle_device_error)
|
||||||
|
|
||||||
# Initialize data buffers
|
# Initialize data buffers
|
||||||
self.time_data = QQueue()
|
self.time_data = deque()
|
||||||
self.voltage_data = QQueue()
|
self.voltage_data = deque()
|
||||||
self.current_data = QQueue()
|
self.current_data = deque()
|
||||||
self.phase_data = QQueue()
|
self.phase_data = deque()
|
||||||
|
|
||||||
# Test variables
|
# Test variables
|
||||||
self.test_phase = "Ready"
|
self.test_phase = "Ready"
|
||||||
@ -879,13 +879,13 @@ class BatteryTester(QMainWindow):
|
|||||||
def update_measurements(self, voltage: float, current: float, current_time: float):
|
def update_measurements(self, voltage: float, current: float, current_time: float):
|
||||||
"""Update measurements in the UI."""
|
"""Update measurements in the UI."""
|
||||||
if self.time_data.size() > 10000: # Limit data points
|
if self.time_data.size() > 10000: # Limit data points
|
||||||
self.time_data.dequeue()
|
self.time_data.append
|
||||||
self.voltage_data.dequeue()
|
self.voltage_data.append
|
||||||
self.current_data.dequeue()
|
self.current_data.append
|
||||||
|
|
||||||
self.time_data.enqueue(current_time)
|
self.time_data.append(current_time)
|
||||||
self.voltage_data.enqueue(voltage)
|
self.voltage_data.append(voltage)
|
||||||
self.current_data.enqueue(current)
|
self.current_data.append(current)
|
||||||
|
|
||||||
# Update UI
|
# Update UI
|
||||||
self.voltage_label.setText(f"{voltage:.4f}")
|
self.voltage_label.setText(f"{voltage:.4f}")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user