|
|
|
@ -158,8 +158,9 @@ func getDeviceStatus2Real(rpc towgo.JsonRpcConnection) {
|
|
|
|
d.DeviceStatus = *read
|
|
|
|
d.DeviceStatus = *read
|
|
|
|
scanLoopCount := configuredLoopCount()
|
|
|
|
scanLoopCount := configuredLoopCount()
|
|
|
|
displayLoopCount := monitorDisplayLoopCount()
|
|
|
|
displayLoopCount := monitorDisplayLoopCount()
|
|
|
|
|
|
|
|
alarmDisplayEnabled := scanConfigManager.GetAlarmDisplayEnabled()
|
|
|
|
d.ScanDeviceCount = scanLoopCount
|
|
|
|
d.ScanDeviceCount = scanLoopCount
|
|
|
|
d.AlarmDisplayEnabled = scanConfigManager.GetAlarmDisplayEnabled()
|
|
|
|
d.AlarmDisplayEnabled = alarmDisplayEnabled
|
|
|
|
loops := make([]DeviceStatusLoop, displayLoopCount)
|
|
|
|
loops := make([]DeviceStatusLoop, displayLoopCount)
|
|
|
|
var wg sync.WaitGroup
|
|
|
|
var wg sync.WaitGroup
|
|
|
|
for i := 0; i < displayLoopCount; i++ {
|
|
|
|
for i := 0; i < displayLoopCount; i++ {
|
|
|
|
@ -178,7 +179,7 @@ func getDeviceStatus2Real(rpc towgo.JsonRpcConnection) {
|
|
|
|
loop.A = parametersRead.DCCurrent
|
|
|
|
loop.A = parametersRead.DCCurrent
|
|
|
|
kw := float64(loop.V*loop.A) / 1000
|
|
|
|
kw := float64(loop.V*loop.A) / 1000
|
|
|
|
loop.Kw = float32(math.Round(kw*1000) / 1000)
|
|
|
|
loop.Kw = float32(math.Round(kw*1000) / 1000)
|
|
|
|
if idx < scanLoopCount {
|
|
|
|
if alarmDisplayEnabled && idx < scanLoopCount {
|
|
|
|
loop.Faults = m9z.BuildLoopFaults(uint(idx+1), parametersRead.AlarmStatus, parametersRead.AlarmCode)
|
|
|
|
loop.Faults = m9z.BuildLoopFaults(uint(idx+1), parametersRead.AlarmStatus, parametersRead.AlarmCode)
|
|
|
|
loop.HasFault = len(loop.Faults) > 0
|
|
|
|
loop.HasFault = len(loop.Faults) > 0
|
|
|
|
loop.FaultMsg = joinLoopFaultMessages(loop.Faults)
|
|
|
|
loop.FaultMsg = joinLoopFaultMessages(loop.Faults)
|
|
|
|
@ -196,7 +197,7 @@ func getDeviceStatus2Real(rpc towgo.JsonRpcConnection) {
|
|
|
|
return d.Loops[i].Index < d.Loops[j].Index
|
|
|
|
return d.Loops[i].Index < d.Loops[j].Index
|
|
|
|
})
|
|
|
|
})
|
|
|
|
for _, loop := range d.Loops {
|
|
|
|
for _, loop := range d.Loops {
|
|
|
|
if loop.HasFault && loop.Index < scanLoopCount {
|
|
|
|
if alarmDisplayEnabled && loop.HasFault && loop.Index < scanLoopCount {
|
|
|
|
recordLoopFaults(cuid, uint(loop.Index+1), loop.V, loop.Faults)
|
|
|
|
recordLoopFaults(cuid, uint(loop.Index+1), loop.V, loop.Faults)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
@ -207,9 +208,10 @@ func getDeviceStatus2Real(rpc towgo.JsonRpcConnection) {
|
|
|
|
func buildDemoDeviceStatus2() *DeviceStatus {
|
|
|
|
func buildDemoDeviceStatus2() *DeviceStatus {
|
|
|
|
displayLoopCount := monitorDisplayLoopCount()
|
|
|
|
displayLoopCount := monitorDisplayLoopCount()
|
|
|
|
scanLoopCount := configuredLoopCount()
|
|
|
|
scanLoopCount := configuredLoopCount()
|
|
|
|
|
|
|
|
alarmDisplayEnabled := scanConfigManager.GetAlarmDisplayEnabled()
|
|
|
|
d := &DeviceStatus{
|
|
|
|
d := &DeviceStatus{
|
|
|
|
ScanDeviceCount: scanLoopCount,
|
|
|
|
ScanDeviceCount: scanLoopCount,
|
|
|
|
AlarmDisplayEnabled: scanConfigManager.GetAlarmDisplayEnabled(),
|
|
|
|
AlarmDisplayEnabled: alarmDisplayEnabled,
|
|
|
|
Loops: make([]DeviceStatusLoop, displayLoopCount),
|
|
|
|
Loops: make([]DeviceStatusLoop, displayLoopCount),
|
|
|
|
}
|
|
|
|
}
|
|
|
|
d.Mode = 0
|
|
|
|
d.Mode = 0
|
|
|
|
@ -233,7 +235,7 @@ func buildDemoDeviceStatus2() *DeviceStatus {
|
|
|
|
kw := float64(loop.V*loop.A) / 1000
|
|
|
|
kw := float64(loop.V*loop.A) / 1000
|
|
|
|
loop.Kw = float32(math.Round(kw*1000) / 1000)
|
|
|
|
loop.Kw = float32(math.Round(kw*1000) / 1000)
|
|
|
|
|
|
|
|
|
|
|
|
if i < scanLoopCount {
|
|
|
|
if alarmDisplayEnabled && i < scanLoopCount {
|
|
|
|
switch i {
|
|
|
|
switch i {
|
|
|
|
case 0:
|
|
|
|
case 0:
|
|
|
|
loop.Faults = m9z.BuildLoopFaults(uint(i+1), 0x01, "01 00")
|
|
|
|
loop.Faults = m9z.BuildLoopFaults(uint(i+1), 0x01, "01 00")
|
|
|
|
|