修复了UDP通信的BUG并优化了相关代码,增加了json报告功能

This commit is contained in:
zjk
2024-11-23 17:28:51 +08:00
parent abd91d0e88
commit 6374e60b91
14 changed files with 881 additions and 464 deletions
+5 -3
View File
@@ -28,15 +28,17 @@ message = valid_msg3
num_messages = 100
# 发送信息的时间间隔(秒)
interval = 0.1
interval = 1
for i in range(num_messages):
# 发送信息
sock.sendto(msg_CcuStateFbMsg().pack(), (target_ip, target_port))
mTest.fcuState += 1
sock.sendto(mTest.pack(), (target_ip, target_port))
time.sleep(interval)
sock.sendto(msg_CcuSetParamFbMsg().pack(), (target_ip, target_port))
time.sleep(interval)
sock.sendto(msg_disHighVolBusFbMsg().pack(), (target_ip, target_port))
mTest3.busbarAVoltage += 1
sock.sendto(mTest3.pack(), (target_ip, target_port))
time.sleep(interval)
sock.sendto(msg_disHighAVolBusFbMsg().pack(), (target_ip, target_port))
time.sleep(interval)
+12 -8
View File
@@ -7,14 +7,14 @@ class msg_CcuStateFbMsg:
self.id = 0x0051
self.length = 0x0000
self.currentWorkCondition = 0x00
self.fcuState = 0x01
self.fcuState = 80
self.fcuFaultLeve = 0x20
self.powerLimit = 0x00
self.totalPowerGeneration = 0x00
self.ch4o = 0x00
self.o2 = 0x00
self.fcuVoltage = 0x1230
self.fcuCurrent = 0x00
self.fcuVoltage = 0x0000
self.fcuCurrent = 0x0000
self.o2Level = 0x00
self.placeholder1 = 0x00
self.exchangerTemperature = 0x00
@@ -296,7 +296,8 @@ class msg_disHighVolBusFbMsg:
data += struct.pack('<H', self.reservedCurrent3)
for i in range(len(data)):
self.checkCode += data[i]
data += struct.pack('<I', self.checkCode)
checkCode_L = self.checkCode & 0xFF
data += struct.pack('<B', checkCode_L)
return data
class msg_disHighAVolBusFbMsg:
@@ -319,7 +320,7 @@ class msg_disHighAVolBusFbMsg:
self.bowFTDevice123Current = 0x0000
self.actuatorCurrent = 0x0000
self.mastSteeringGearControlBoxCurrent = 0x0000
self.xczCurrent = 0x0000
self.xczCurrent = 0x0001
self.bowRudderControlBoxCurrent = 0x0000
self.openWaterCoverStartCylinderCurrent = 0x0000
self.checkCode = 0x0000
@@ -351,7 +352,8 @@ class msg_disHighAVolBusFbMsg:
data += struct.pack('<H', self.openWaterCoverStartCylinderCurrent)
for i in range(len(data)):
self.checkCode += data[i]
data += struct.pack('<I', self.checkCode)
checkCode_L = self.checkCode & 0xFF
data += struct.pack('<B', checkCode_L)
return data
class msg_disHighBVolBusFbMsg:
@@ -416,7 +418,8 @@ class msg_disHighBVolBusFbMsg:
data += struct.pack('<H', self.plcControlPowerCurrent)
for i in range(len(data)):
self.checkCode += data[i]
data += struct.pack('<I', self.checkCode)
checkCode_L = self.checkCode & 0xFF
data += struct.pack('<B', checkCode_L)
return data
class msg_disLowBusFbMsg:
@@ -475,7 +478,8 @@ class msg_disLowBusFbMsg:
data += struct.pack('<H', self.emergency1BusbarVoltage)
for i in range(len(data)):
self.checkCode += data[i]
data += struct.pack('<I', self.checkCode)
checkCode_L = self.checkCode & 0xFF
data += struct.pack('<B', checkCode_L)
return data