from PyQt5 import QtCore from pyModbusTCP.client import ModbusClient import time import struct from itertools import chain def float32ToIEEE754Int(num): convertNum = struct.unpack(' 32767: disAndSpeed[0] = disAndSpeed[0] - 65536 motorState = self._client.read_coils(0,8) motorState = [motorState[1],motorState[2],motorState[3],motorState[6],motorState[7]] return response,disAndSpeed,motorState # endregion def _switch(self,lang): if lang == "0000": self._send0000() elif lang == "0001": self._send0001() elif lang == "0010": self._send0010() elif lang == "0011": self._send0011() elif lang == "0100": self._send0100() elif lang == "0101": self._send0101() elif lang == "0110": self._send0110() elif lang == "0111": self._send0111() elif lang == "1000": self._send1000() elif lang == "1001": self._send1001() elif lang == "1010": self._send1010() elif lang == "1011": self._send1011() elif lang == "1100": self._send1100() elif lang == "1101": self._send1101() elif lang == "1110": self._send1110() elif lang == "1111": self._send1111() elif lang == "00001111": self._send00001111() elif lang == "00001011": self._send00001011() elif lang == "00001100": self._send00001100() elif lang == "10001011": self._send10001011() elif lang == "10001100": self._send10001100() elif lang == "01000000": self._send01000000() elif lang == "00100000": self._send00100000() def openAll(self): self._outputFlag = True self._outputBit = "1111" def closeAll(self): self._outputFlag = True self._outputBit = "0000" def openBuzzer(self): self._outputFlag = True self._outputBit = "0001" def openRedLight(self): self._outputFlag = True self._outputBit = "0010" def openRedLight_closeDetctLight(self): self._outputFlag = True self._outputBit = "00100000" def openYellowLight(self): self._outputFlag = True self._outputBit = "0100" def openYellowLight_closeDetctLight(self): self._outputFlag = True self._outputBit = "01000000" def openGreenLight(self): self._outputFlag = True self._outputBit = "1000" def openAllLight(self): self._outputFlag = True self._outputBit = "00001111" def openAILight(self): self._outputFlag = True self._outputBit = "00001011" def openAOILight(self): self._outputFlag = True self._outputBit = "00001100" def detectStart_1(self): self._outputFlag = True self._outputBit = "10001011" def detectStart_2(self): self._outputFlag = True self._outputBit = "10001100" def detectEndNG(self): self._outputFlag = True self._outputBit = "0011" def goHome(self): self._goHomeFlag = True def updataDisSpeed(self, Dis,Speed): # if self._dis + Dis == 0: # self._dis = Dis # self._speed = Speed # self._updataFlag = True self._dis = Dis self._speed = Speed self._updataFlag = True def open(self): if self.connect: self.running = True def stop(self): if self.connect: self.running = False def close(self): if self.connect: self.running = False time.sleep(1) self._client.close()