Apr-01-2019, 06:34 AM
I'm reaching a server which takes distance data from ultrasonic sensor. (Server was created at another side with Arduino.) I have to show this data on Raspberry Pi, so I want to do GUI. I have two .py file.
1) Client module
2) GUI
I want to take data on client over GUI code. Data will be taken from URL WebPage (TCP/IP)
Where/How I should add data taken from server to GUI code? (Embedding client. py to GUI.py)
Any suggestions would be greatly appreciated
Client.py
1) Client module
2) GUI
I want to take data on client over GUI code. Data will be taken from URL WebPage (TCP/IP)
Where/How I should add data taken from server to GUI code? (Embedding client. py to GUI.py)
Any suggestions would be greatly appreciated
Client.py
import socket HOST = '192.168.1.59' # The server's hostname or IP address, NodeMCU IP Address PORT = 80 # The port used by the server, PORT NUMBER in ARDUINO CODE with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: s.connect((HOST, PORT)) s.sendall(b'Hello, world') data = s.recv(1024)GUI.py
from PyQt5 import QtCore, QtGui, QtWidgets class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(800, 600) self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.label = QtWidgets.QLabel(self.centralwidget) self.label.setGeometry(QtCore.QRect(30, 30, 600, 300)) font = QtGui.QFont() font.setFamily("Calibri") font.setPointSize(20) self.label.setFont(font) self.label.setAlignment(QtCore.Qt.AlignCenter) self.label.setObjectName("label") self.labelDistance = QtWidgets.QLabel(self.centralwidget) self.labelDistance.setGeometry(QtCore.QRect(150, 150, 400, 300)) font = QtGui.QFont() font.setFamily("Calibri") font.setPointSize(20) self.labelDistance.setFont(font) self.labelDistance.setAlignment(QtCore.Qt.AlignCenter) self.labelDistance.setObjectName("labelDistance") self.labelcm = QtWidgets.QLabel(self.centralwidget) self.labelcm.setGeometry(QtCore.QRect(150, 150, 700, 300)) font = QtGui.QFont() font.setFamily("Calibri") font.setPointSize(20) self.labelcm.setFont(font) self.labelcm.setAlignment(QtCore.Qt.AlignCenter) self.labelcm.setObjectName("labelcm") MainWindow.setCentralWidget(self.centralwidget) self.menubar = QtWidgets.QMenuBar(MainWindow) self.menubar.setGeometry(QtCore.QRect(0, 0, 259, 21)) self.menubar.setObjectName("menubar") MainWindow.setMenuBar(self.menubar) self.statusbar = QtWidgets.QStatusBar(MainWindow) self.statusbar.setObjectName("statusbar") MainWindow.setStatusBar(self.statusbar) self.retranslateUi(MainWindow) QtCore.QMetaObject.connectSlotsByName(MainWindow) def retranslateUi(self, MainWindow): _translate = QtCore.QCoreApplication.translate MainWindow.setWindowTitle(_translate("MainWindow", "Distance Measurement")) self.label.setText(_translate("MainWindow", "Obsctacle Distance")) self.labelDistance.setText(_translate("MainWindow", "0")) self.labelcm.setText(_translate("MainWindow", "cm"))When GUI code runs: (0 is default value)