0725更新

ModbusPack
zhangxuxutm 2 years ago
parent 2fc18b7504
commit 661686bba8

@ -6,6 +6,7 @@ from matplotlib.backends.qt_compat import QtCore, QtWidgets
from matplotlib.backends.backend_qt5agg import (FigureCanvas, NavigationToolbar2QT as NavigationToolbar)
from matplotlib.figure import Figure
from PyQt5.QtCore import QThread
import matplotlib.ticker as ticker
import matplotlib.pyplot as plt
@ -25,9 +26,9 @@ class ActualTrend(QtWidgets.QMainWindow):
self.varName = varName
self._main = QtWidgets.QWidget()
self.setCentralWidget(self._main)
layout = QtWidgets.QVBoxLayout(self._main)
_main = QtWidgets.QWidget()
self.setCentralWidget(_main)
layout = QtWidgets.QVBoxLayout(_main)
dynamic_canvas = FigureCanvas(Figure(figsize=(5, 3)))
@ -45,26 +46,30 @@ class ActualTrend(QtWidgets.QMainWindow):
self._timer = dynamic_canvas.new_timer(
1000, [(self._update_canvas, (), {})])
self._timer.start()
def _update_canvas(self):
# self.n += 1
varName = self.varName
varMM = ModbusVarManage.getByName(varName)
if varMM:
minY, maxY = ModbusVarManage.getByName(varName)[-2], ModbusVarManage.getByName(varName)[-1]
minY = -100
maxY = 100
if not minY or not maxY:
minY = -100
maxY = 100
else:
minY = float(minY)
maxY = float(maxY)
if varMM:
minY, maxY = varMM[-2], varMM[-1]
minY = float(minY)
maxY = float(maxY)
self._dynamic_ax.clear()
acttime = time.strftime('%H:%M:%S', time.localtime(time.time()))
# print(acttime)
if varName != '':
uid = MBTCPMApp.backend.get('ModBus').decode('utf-8')
if MBTCPMApp.backend.get('ModBus') is not None:
uid = MBTCPMApp.backend.get('ModBus').decode('utf-8')
else:
return
# print(uid)
res = AsyncResult(uid) # 参数为task id
if res.result:
@ -85,8 +90,13 @@ class ActualTrend(QtWidgets.QMainWindow):
self._dynamic_ax.plot(pos_list, value_list, 'bo-', linewidth=2)
# self._dynamic_ax.set_xlim(0,10)
self._dynamic_ax.set_ylim(minY,maxY)
self._dynamic_ax.set_ylim(minY, maxY)
self._dynamic_ax.figure.canvas.draw()
def closeEvent(self, event):
# 判断是否点击了窗口的关闭按钮
if event.type() == event.Close:
self._timer.stop()
if __name__ == "__main__":
qapp = QtWidgets.QApplication(sys.argv)

@ -1 +1 @@
nuitka --windows-disable-console --standalone --mingw64 --show-memory --show-progress --nofollow-import-to=numpy,pandas,celery,peewee,PIL,cffi,pycparser,pyserial,pywin32,modbus_tk,matplotlib,redis,pyecharts --enable-plugin=pyqt5,numpy,eventlet,gevent,multiprocessing --include-package=model,project,protocol,UI,utils,windoweffect,redis,pythonnet,uuid,logging,openpyxl,matplotlib,importlib,prettytable --output-dir=o bin.py
nuitka --windows-disable --mingw64 --show-memory --show-progress --nofollow-import-to=numpy,pandas,celery,peewee,PIL,cffi,pycparser,pyserial,pywin32,modbus_tk,matplotlib,redis,pyecharts --enable-plugin=pyqt5,numpy,eventlet,gevent,multiprocessing --include-package=model,project,protocol,UI,utils,windoweffect,redis,pythonnet,uuid,logging,openpyxl,matplotlib,importlib,prettytable --output-dir=o bin.py
Loading…
Cancel
Save