Logic working mode for multiple connectors

pull/1/head
Terekhin Alexandr 2 years ago
parent 776819ea00
commit 0017a237ab
Signed by: didinst
GPG Key ID: D2EF94423C23BF12
  1. 24
      yabl/init.go
  2. 2
      yabl/protocol.go

@ -212,16 +212,20 @@ func (c *converter) initialize() {
object: c.logicErrorsInstance, object: c.logicErrorsInstance,
} }
c.logicWorkingMode = &LogicWorkingMode{unit: 0} for i := uint(0); i <= CONNECTOR_COUNT; i++ {
fields = []*field{ key := key{can.CAN_ID_049, i}
{length: 5, setter: c.logicWorkingMode.setTargetContactorMode, name: FTargetContactorMode}, lwm := &LogicWorkingMode{unit: unit(i)}
{length: 2, setter: c.logicWorkingMode.setAvailability, name: FAvailability}, c.logicWorkingMode[i] = lwm
} fields = []*field{
c.protocolMap[key{can.CAN_ID_049, 0}] = action{ {length: 5, setter: lwm.setTargetContactorMode, name: FTargetContactorMode},
fields: fields, {length: 2, setter: lwm.setAvailability, name: FAvailability},
interval: 1000, }
name: PLogicWorkingMode, c.protocolMap[key] = action{
object: c.logicWorkingMode, fields: fields,
interval: 1000,
name: PLogicWorkingMode,
object: lwm,
}
} }
for i := uint(0); i < CONTACTOR_MAX; i++ { for i := uint(0); i < CONTACTOR_MAX; i++ {

@ -42,7 +42,7 @@ type converter struct {
logicAuthArray [CONNECTOR_MAX]*LogicAuth logicAuthArray [CONNECTOR_MAX]*LogicAuth
logicEnergyMode [CONNECTOR_MAX]*LogicEnergyMode logicEnergyMode [CONNECTOR_MAX]*LogicEnergyMode
logicErrorsInstance *LogicErrors logicErrorsInstance *LogicErrors
logicWorkingMode *LogicWorkingMode logicWorkingMode [CONNECTOR_MAX]*LogicWorkingMode
contactorInternalStateArray [CONTACTOR_MAX]*ContactorInternalState contactorInternalStateArray [CONTACTOR_MAX]*ContactorInternalState
contactorInternalErrorsInstance *ContactorInternalErrors contactorInternalErrorsInstance *ContactorInternalErrors
contactorsInternalForce *ContactorsInternalForce contactorsInternalForce *ContactorsInternalForce

Loading…
Cancel
Save