Passa al contenuto principale

Modulo smartCORE batMON

Descrizione​

Il modulo batmon rappresenta l'interfaccia del monitoraggio batteria smartIO batMON verso lo smartCORE. In questo modo diversi parametri della batteria

  • a sistema in funzione vengono scritti in smartCHANNELS sotto forma di dati live
  • durante la fase di riposo del sistema vengono acquisiti come dati storici e, durante la fase di accensione del sistema, scaricati dal batMON e salvati in un apposito file.

Stati operativi​

Il diagramma seguente illustra gli stati operativi del batMON.

batMON States

Interfacce e protocolli utilizzati​

  • CAN bus
  • Formato OSF

Configurazione JSON​

Nella sezione seguente viene descritta l'intera configurazione JSON del modulo e vengono illustrati i singoli parametri.

Configurazione di esempio (minima)​

{
"module":"Batmon",
"factory":"batmon",
"config":{}
}

Configurazione di esempio (massima)​

{
"module":"Batmon",
"factory":"batmon",
"config":{
"priority":80,
"timeoutMs":1000,
"readBufferSize":8192,
"writeBufferSize":8192,
"canInterface":"can1",
"fileName":"/sde/<tag>/<date>/<date>_<time>.osf",
"fileTag":"preview",
"measurementTimeChannelName":"Batmon.Parameter.MeasurementTime",
"shutDownTimeChannelName":"Batmon.Parameter.ShutDownTime",
"bootTimeChannelName":"Batmon.Parameter.BootTime",
"wakeUpTimeChannelName":"Batmon.Parameter.WakeUpTime",
"voltageDropDelayTimeChannelName":"Batmon.Parameter.VoltageDropDelayTime",
"vAlwaysOffChannelName":"Batmon.Parameter.VAlwaysOff",
"vAlwaysOnChannelName":"Batmon.Parameter.VAlwaysOn",
"powerSupplyVoltageChannelName":"Batmon.PowerSupplyVoltage",
"powerSupplyCurrentChannelName":"Batmon.PowerSupplyCurrent",
"temperatureMOSFETChannelName":"Batmon.TemperatureMOSFET",
"temperatureChannelName":"Batmon.Temperature",
"resistanceChannelName":"Batmon.Resistance",
"operatingModeChannelName":"Batmon.PluginState",
"configurationErrorChannelName":"Batmon.ConfigurationError",
"batteryStatusChannelName":"Batmon.BatteryStatus",
"terminal15StatusChannelName":"Batmon.Terminal15Status",
"shutDownCounterChannelName":"Batmon.ShutDownCounter",
"bootCounterChannelName":"Batmon.BootCounter",
"wakeUpEventChannelName":"Batmon.WakeUpEvent",
"shutDownEventChannelName":"Batmon.ShutDownEvent",
"requestEnergySaveChannelName":"Batmon.RequestEnergySave",
"aboutToShutDownChannelName":"Batmon.AboutToShutDown",
"criticalPowerStateChannelName":"Batmon.CriticalPowerState",
"lowPowerStateChannelName":"Batmon.LowPowerState",
"firmwareVersionsChannelName":"firmwareVersions",
"wakeUpTime":3600,
"measurementTime":60,
"shutDownTime":90,
"bootTime":900,
"voltageDropDelayTime":10,
"voltageAlwaysOnMV":23000,
"voltageAlwaysOffMV":20500,
"canIdValues123":120,
"canIdValues456":121,
"canIdStatus":125,
"canIdSetRtcRXD":10,
"canIdSetRtcTXD":11,
"canIdRXD":128,
"canIdTXD":129,
"canIdParameter1":130,
"canIdParameter2":131,
"canIdParameter3":132
}
}

Elenco dei parametri​

Nome parametroObbligatorioTipo di datiIntervallo di valori sensatoDefaultDescrizione
priorityNoINT1 ... 9980Priorità di scheduling dell'interfaccia CAN bus
timeoutMsNoINT1 ...1000Intervallo tra le parti del modulo eseguite periodicamente
readBufferSizeNoINT1 ...8192Numero di messaggi CAN bus in buffer (direzione di lettura)
writeBufferSizeNoINT1 ...8192Numero di messaggi CAN bus in buffer (direzione di scrittura)
canInterfaceNoSTRING"can0", "can1", ..."can1"Interfaccia CAN bus
fileNameNoSTRINGmodello di percorso OSF valido"/sde/<tag>/<date>/<date>_<time>.osf"File OSF storico
fileTagNoSTRING"preview"Attributo tag del file OSF storico
measurementTimeChannelNameNoSTRING"<module>.Parameter.MeasurementTime"Canale con il parametro impostato dell'intervallo di misura
shutDownTimeChannelNameNoSTRING"<module>.Parameter.ShutDownTime"Canale con il parametro impostato del tempo di arresto
bootTimeChannelNameNoSTRING"<module>.Parameter.BootTime"Canale con il parametro impostato del tempo di boot
wakeUpTimeChannelNameNoSTRING"<module>.Parameter.WakeUpTime"Canale con il parametro impostato del tempo di riattivazione
voltageDropDelayTimeChannelNameNoSTRING"<module>.Parameter.VoltageDropDelayTime"Canale con il parametro impostato del tempo di tolleranza per cali di tensione
vAlwaysOffChannelNameNoSTRING"<module>.Parameter.VAlwaysOff"Canale con il parametro impostato della soglia di commutazione inferiore
vAlwaysOnChannelNameNoSTRING"<module>.Parameter.VAlwaysOn"Canale con il parametro impostato della soglia di commutazione superiore
powerSupplyVoltageChannelNameNoSTRING"<module>.PowerSupplyVoltage"Tensione di alimentazione (U_Sup)
powerSupplyCurrentChannelNameNoSTRING"<module>.PowerSupplyCurrent"Corrente di alimentazione (I_Sup)
temperatureMOSFETChannelNameNoSTRING"<module>.TemperatureMOSFET"Temperatura del MOSFET (T_MOS)
temperatureChannelNameNoSTRING"<module>.Temperature"Temperatura del batMON (T_bM)
resistanceChannelNameNoSTRING"<module>.Resistance"Resistenza del batMON (R_bM)
operatingModeChannelNameNoSTRING"<module>.PluginState"Stato del plug-in batMON (valore grezzo della state machine)
configurationErrorChannelNameNoSTRING"<module>.ConfigurationError"Errore di configurazione batMON
batteryStatusChannelNameNoSTRING"<module>.BatteryStatus"Stato batteria batMON
terminal15StatusChannelNameNoSTRING"<module>.Terminal15Status"Stato del morsetto 15 batMON
shutDownCounterChannelNameNoSTRING"<module>.ShutDownCounter"Conto alla rovescia batMON entro il quale l'arresto deve essere completato
bootCounterChannelNameNoSTRING"<module>.BootCounter"Conto alla rovescia batMON entro il quale l'avvio del sistema deve essere completato
wakeUpEventChannelNameNoSTRING"<module>.WakeUpEvent"Evento di riattivazione batMON
requestEnergySaveChannelNameNoSTRING"<module>.RequestEnergySave"Latch BOOL: viene impostato non appena, dall'avvio del modulo, è stato richiesto almeno una volta il risparmio energetico (modalità ECO, fronte di spegnimento KL15 in funzionamento AlwaysOn o comando di arresto confermato); reset solo al riavvio del modulo
aboutToShutDownChannelNameNoSTRING"<module>.AboutToShutDown"Canale booleano batMON per la notifica dell'imminente arresto
criticalPowerStateChannelNameNoSTRING"<module>.CriticalPowerState"Canale booleano batMON per la notifica di uno stato di tensione critico
lowPowerStateChannelNameNoSTRING"<module>.LowPowerState"Canale booleano batMON per la notifica di uno stato di tensione bassa
firmwareVersionsChannelNameNoSTRING"<module>.FirmwareVersion"Canale STRING con le informazioni sulle versioni FW e PIC FW
wakeUpTimeNoINT600 ... 72003600Tempo di riattivazione batMON [s]
measurementTimeNoINT30 ... 30060Intervallo di misura batMON [s]
shutDownTimeNoINT30 ... 12090Tempo di arresto batMON [s]
bootTimeNoINT60 ... 120900Tempo di boot batMON [s]
voltageDropDelayTimeNoINT10Tempo di tolleranza per cali di tensione batMON [s]
voltageAlwaysOnMVNoINT(voltageAlwaysOffMV + 2000) ... 15000023000Soglia di accensione funzionamento continuo batMON [mV]
voltageAlwaysOffMVNoINT18500 ... (voltageAlwaysOnMV - 2000)20500Soglia di spegnimento batMON [mV]
canIdValues123NoINTCAN ID valido/univoco120CAN ID batMON per il messaggio (U_Sup,I_Sup,T_MOS)
canIdValues456NoINTCAN ID valido/univoco121CAN ID batMON per il messaggio (T_bM)
canIdStatusNoINTCAN ID valido/univoco125CAN ID batMON per il messaggio di stato
canIdSetRtcRXDNoINTCAN ID valido/univoco10CAN ID batMON per l'impostazione dell'RTC
canIdSetRtcTXDNo/ScartatoINTCAN ID valido/univoco11CAN ID batMON per l'impostazione dell'RTC (conferma)
canIdParameter1NoINTCAN ID valido/univoco130CAN ID batMON per il primo Parameter Report Frame
canIdParameter2NoINTCAN ID valido/univoco131CAN ID batMON per il secondo Parameter Report Frame
canIdParameter3NoINTCAN ID valido/univoco132CAN ID batMON per il terzo Parameter Report Frame

Parameter Enums​

Stato del plug-in (OperatingMode)

ValoreEnumStato
0bsInitInizializzazione
1bsBootAvvio
2bsBootInternComAvvio: comunicazione interna
3bsSynchronizeRtcAvvio: sincronizzazione RTC
4bsGetFirmwareVersionAvvio: lettura versione firmware
5bsGetHistoryAvvio: caricamento dati storici
6bsGetParameterAvvio: lettura parametri
7bsUpdateParameterAvvio: scrittura parametri
8bsWakeupRiattivazione
9bsRunningFunzionamento normale
10bsCmdShutdownFunzionamento normale: elaborazione del comando di arresto
11bsResynchronizeRtcFunzionamento normale: risincronizzazione RTC
12bsNotifyShutDownAnnuncio dell'arresto
13bsAboutToShutDownArresto avviato
14bsPostponeShutDownArresto ritardato
15bsShutdownArresto

Stato del dispositivo batMON smartIO

ValoreSignificato
0iniziale dopo un avvio a freddo / reset
1Standby (monitoraggio del timer di stato di riposo, delle tensioni, del morsetto 15, ...)
2Acceso (MOSFET acceso, monitoraggio della tensione di ingresso)
3Avvio del sistema (attesa dell'avvio del sistema)
4Monitoraggio (attesa della condizione di arresto del sistema)
5Spegnimento (attesa dello spegnimento del sistema)
6Spento (MOSFET spento, i condensatori vengono scaricati)

Errore di configurazione

ValoreEnumSignificato
-3VoltageAlwaysOnTooHighvoltageAlwaysOnMV troppo alto
-2VoltageAlwaysOnTooLowvoltageAlwaysOnMV troppo basso
-1VoltageAlwaysOffTooLowvoltageAlwaysOffMV troppo basso
0OKOK
1WrongMeasurementTimemeasurementTime errato
2WrongShutdownTimeshutDownTime errato
3WrongBootTimebootTime errato
4WrongWakeUpTimewakeUpTime errato
5WrongVAlwaysOnvoltageAlwaysOnMV errato
6WrongVAlwaysOffvoltageAlwaysOffMV errato
7WrongVoltageDropDelayTimevoltageDropDelayTime errato

Stato della batteria

ValoreSignificato
0sconosciuto
1permanentemente acceso
2modalità di risparmio energetico
3permanentemente spento
4permanentemente spento (al di sotto della tensione di accensione dell'alimentatore)

Stato del morsetto 15

ValoreSignificato
0sconosciuto/non presente
1fronte di accensione
2fronte di spegnimento

Evento di riattivazione

ValoreEnumSignificatoModalità operativa successiva
0eWakeUp_nonenessun eventonon definita
1eWakeUp_KL15_ONFronte di accensione del morsetto 15Prelievo dei dati storici + funzionamento continuo
2eWakeUp_Ubatt_Always_OFFU_batt sotto la soglia Always-OFFAllarme + arresto
3eWakeUp_Ubatt_Always_ONU_batt sopra la soglia Always-ONPrelievo dei dati storici + funzionamento continuo
4eWakeUp_Ubatt_TimerRiattivazione periodica in modalità di risparmio energetico (timer)Prelievo dei dati storici + modalità di risparmio energetico
5eWakeUp_Ubatt_LowPower(obsoleto)Prelievo dei dati storici + modalità di risparmio energetico
6eWakeUp_CAN_TimerRiattivato dopo sospensione richiesta attivamente via CANPrelievo dei dati storici + funzionamento continuo

Evento di arresto

ValoreEnumSignificatoDescrizione
0eShutdown_nonenessunonessun evento
1eShutdown_KL15Morsetto 15Arresto tramite il morsetto 15 (ad es. chiave di accensione)
2eShutdown_Ubatt_Always_OFFU_batt sotto la soglia Always-OFFArresto, poiché U_batt è scesa sotto il valore di soglia Always-OFF
3eShutdown_CANMessaggio CAN busArresto a causa di un messaggio CAN bus
4eShutdown_OverCurrentSovracorrente (errore)Arresto a causa del superamento della corrente
5eShutdown_OverTemperatureSovratemperatura (errore)Arresto a causa del superamento della temperatura
6–8—RISERVATO
9eShutdown_MOSFET_FailureGuasto del MOSFET (errore)Arresto a causa di un guasto del MOSFET
10ePowerOff_KL15_Ubatt_Always_OFFMorsetto 15 e soglia Always-OFFArresto, poiché U_batt è scesa sotto il valore di soglia Always-OFF (morsetto 15 presente)
11ePowerOff_ECO_ModeModalità EcoArresto dopo la misura, U_batt al di sotto della soglia Always-ON
12ePowerOff_Underrange_IntrexisSottosogliaTensione inferiore alla tensione di accensione del MOSFET
15eShutdown_Unknownsconosciutoevento di arresto sconosciuto

Funzioni Call-Interface​

requestDelayedShutdown​

Funzione per il ritardo dell'arresto

ParametroTipoDescrizione
senderSTRINGIdentificativo univoco del mittente (ad es. istanza del modulo)
delayINTRitardo [ms] < 64k

Informazioni sul modulo​

InformazioneValore
AutoreoptiMEAS GmbH
da smartCORE0.101
Tipo di moduloProducer e Consumer (request energy save)
DipendenzesmartMODULE "canbus" o "candbc" (su smartDEVICES), interfaccia CAN bus funzionante (sulle altre piattaforme)