Fahrzeuge
Über das ev-Modul können Fahrzeug-Profile konfiguriert werden.
Fahrzeuge werden anhand ihrer MAC-Adresse identifiziert, die sie z.B. beim Verbindungsaufbau
per ISO 15118 (Autocharge) übermitteln oder die per ev/inject_ev über die API vorgetäuscht werden kann.
Anhand des zugeordneten Profils können Ladevorgänge einem Benutzer zugeordnet (Autocharge)
und der Ladestand (SoC) des Fahrzeugs über Batteriekapazität und Ladeeffizienz geschätzt werden.
Auf dieser Hardware nicht unterstützt!
Auf dieser Hardware nicht unterstützt!
Auf dieser Hardware nicht unterstützt!
ev/state
Der Zustand des aktuell verbundenen Fahrzeugs.
{
"active_ev_index": 0,
"name": "ID.4",
"mac": "0A:1B:2C:D3:E4:F5",
"soc": 42.5,
"capacity": 77.0,
"charging_efficiency": 0.92
}
Ein Fahrzeug ist verbunden und wurde dem ersten Fahrzeug-Profil zugeordnet. Der geschätzte Ladestand beträgt 42,5 %.
| Name | Beschreibung |
|---|---|
active_ev_indexint | Index des zugeordneten Fahrzeug-Profils in |
namestring | Name des zugeordneten Fahrzeug-Profils. Leer, falls kein Fahrzeug verbunden ist oder das Fahrzeug keinem Profil zugeordnet werden konnte. |
macstring | MAC-Adresse des verbundenen Fahrzeugs im Format |
socfloat (%) | Aktueller Ladestand (SoC) des Fahrzeugs in Prozent. Wird entweder vom Fahrzeug übermittelt (ISO 15118-20), über |
capacityfloat (kWh) | Batteriekapazität des verbundenen Fahrzeugs in kWh. Wird dem zugeordneten Fahrzeug-Profil entnommen oder vom Fahrzeug übermittelt (ISO 15118-20). null, falls kein Fahrzeug verbunden ist. |
charging_efficiencyfloat | Ladeeffizienz des verbundenen Fahrzeugs: Verhältnis von gespeicherter zu verbrauchter Energie. Wird dem zugeordneten Fahrzeug-Profil entnommen. 0,92 falls kein Profil zugeordnet ist. |
ev/seen_macs
Die MAC-Adressen der zuletzt verbundenen Fahrzeuge (maximal 8). Hilfreich, um die MAC-Adresse eines Fahrzeugs zu ermitteln, das in ev/config konfiguriert werden soll.
| Index | Beschreibung | ||||||
|---|---|---|---|---|---|---|---|
[..]object | Eine gesehene MAC-Adresse
|
ev/inject_soc
Setzt den Ladestand (SoC) des aktuell verbundenen Fahrzeugs über die API. Ausgehend von diesem Wert wird der Ladestand anhand der geladenen Energie, der Batteriekapazität und der Ladeeffizienz weiter geschätzt.
# $HOST z.B. warp4-AbCd
Schreiben
curl http://$HOST/ev/inject_soc -d '{ "soc": 42.5 }'
oder abgekürzt:
curl http://$HOST/ev/inject_soc -d '42.5'
Setzt den Ladestand des verbundenen Fahrzeugs auf 42,5 %.
# $BROKER z.B. my_mosquitto.localdomain
# $PREFIX z.B. warp4/AbCd
Schreiben
mosquitto_pub -h $BROKER -t $PREFIX/ev/inject_soc -m '{ "soc": 42.5 }'
oder abgekürzt:
mosquitto_pub -h $BROKER -t $PREFIX/ev/inject_soc -m '42.5'
Setzt den Ladestand des verbundenen Fahrzeugs auf 42,5 %.
| Name | Beschreibung |
|---|---|
socfloat (%) | Ladestand in Prozent. Muss zwischen 0 und 100 liegen. |
ev/inject_ev
Täuscht vor, dass sich ein Fahrzeug mit der übergebenen MAC-Adresse verbunden hat. Hiermit kann über die API ein Fahrzeug identifiziert werden, das seine MAC-Adresse nicht selbst (per ISO 15118) übermittelt. Falls die MAC-Adresse einem Fahrzeug-Profil aus ev/config zugeordnet werden kann, werden dessen Einstellungen übernommen und (falls Autocharge aktiv ist) der Ladevorgang dem konfigurierten Benutzer zugeordnet.
# $HOST z.B. warp4-AbCd
Schreiben
curl http://$HOST/ev/inject_ev -d '{ "mac": "0A:1B:2C:D3:E4:F5" }'
oder abgekürzt:
curl http://$HOST/ev/inject_ev -d '"0A:1B:2C:D3:E4:F5"'
Täuscht vor, dass sich ein Fahrzeug mit der MAC-Adresse 0A:1B:2C:D3:E4:F5 verbunden hat.
# $BROKER z.B. my_mosquitto.localdomain
# $PREFIX z.B. warp4/AbCd
Schreiben
mosquitto_pub -h $BROKER -t $PREFIX/ev/inject_ev -m '{ "mac": "0A:1B:2C:D3:E4:F5" }'
oder abgekürzt:
mosquitto_pub -h $BROKER -t $PREFIX/ev/inject_ev -m '"0A:1B:2C:D3:E4:F5"'
Täuscht vor, dass sich ein Fahrzeug mit der MAC-Adresse 0A:1B:2C:D3:E4:F5 verbunden hat.
| Name | Beschreibung |
|---|---|
macstring | MAC-Adresse des Fahrzeugs im Format |
ev/config
Die konfigurierten Fahrzeug-Profile.
# $HOST z.B. warp4-AbCd
Lesen
curl http://$HOST/ev/config
{
"evs": [
{
"name": "ID.4",
"mac": "0A:1B:2C:xx:xx:xx",
"capacity": 77.0,
"charging_efficiency": 0.92,
"user_id": 2
},
{
"name": "Zoe",
"mac": "5C:AF:06:12:34:56",
"capacity": 52.0,
"charging_efficiency": 0.9,
"user_id": 0
}
]
}
Konfiguriert zwei Fahrzeug-Profile: Ein Fahrzeug mit wechselnder MAC-Adresse (nur die ersten drei Bytes werden zur Identifikation verwendet), dessen Ladevorgänge dem Benutzer mit der ID 2 zugeordnet werden, und ein Fahrzeug mit fester MAC-Adresse ohne Benutzerzuordnung.
Schreiben
curl http://$HOST/ev/config -d '{
"evs": [
{
"name": "ID.4",
"mac": "0A:1B:2C:xx:xx:xx",
"capacity": 77.0,
"charging_efficiency": 0.92,
"user_id": 2
},
{
"name": "Zoe",
"mac": "5C:AF:06:12:34:56",
"capacity": 52.0,
"charging_efficiency": 0.9,
"user_id": 0
}
]
}'
oder abgekürzt:
curl http://$HOST/ev/config -d '[
{
"name": "ID.4",
"mac": "0A:1B:2C:xx:xx:xx",
"capacity": 77.0,
"charging_efficiency": 0.92,
"user_id": 2
},
{
"name": "Zoe",
"mac": "5C:AF:06:12:34:56",
"capacity": 52.0,
"charging_efficiency": 0.9,
"user_id": 0
}
]'
Konfiguriert zwei Fahrzeug-Profile: Ein Fahrzeug mit wechselnder MAC-Adresse (nur die ersten drei Bytes werden zur Identifikation verwendet), dessen Ladevorgänge dem Benutzer mit der ID 2 zugeordnet werden, und ein Fahrzeug mit fester MAC-Adresse ohne Benutzerzuordnung.
# $BROKER z.B. my_mosquitto.localdomain
# $PREFIX z.B. warp4/AbCd
Lesen
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/ev/config
{
"evs": [
{
"name": "ID.4",
"mac": "0A:1B:2C:xx:xx:xx",
"capacity": 77.0,
"charging_efficiency": 0.92,
"user_id": 2
},
{
"name": "Zoe",
"mac": "5C:AF:06:12:34:56",
"capacity": 52.0,
"charging_efficiency": 0.9,
"user_id": 0
}
]
}
Konfiguriert zwei Fahrzeug-Profile: Ein Fahrzeug mit wechselnder MAC-Adresse (nur die ersten drei Bytes werden zur Identifikation verwendet), dessen Ladevorgänge dem Benutzer mit der ID 2 zugeordnet werden, und ein Fahrzeug mit fester MAC-Adresse ohne Benutzerzuordnung.
Schreiben
Mit MQTT auf $PREFIX/ev/config_update
mosquitto_pub -h $BROKER -t $PREFIX/ev/config_update -m '{
"evs": [
{
"name": "ID.4",
"mac": "0A:1B:2C:xx:xx:xx",
"capacity": 77.0,
"charging_efficiency": 0.92,
"user_id": 2
},
{
"name": "Zoe",
"mac": "5C:AF:06:12:34:56",
"capacity": 52.0,
"charging_efficiency": 0.9,
"user_id": 0
}
]
}'
oder abgekürzt:
mosquitto_pub -h $BROKER -t $PREFIX/ev/config_update -m '[
{
"name": "ID.4",
"mac": "0A:1B:2C:xx:xx:xx",
"capacity": 77.0,
"charging_efficiency": 0.92,
"user_id": 2
},
{
"name": "Zoe",
"mac": "5C:AF:06:12:34:56",
"capacity": 52.0,
"charging_efficiency": 0.9,
"user_id": 0
}
]'
Konfiguriert zwei Fahrzeug-Profile: Ein Fahrzeug mit wechselnder MAC-Adresse (nur die ersten drei Bytes werden zur Identifikation verwendet), dessen Ladevorgänge dem Benutzer mit der ID 2 zugeordnet werden, und ein Fahrzeug mit fester MAC-Adresse ohne Benutzerzuordnung.
| Name | Beschreibung | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
evsobject[..] | Liste der Fahrzeug-Profile (maximal 16).
|
Auf dieser Hardware nicht unterstützt!
Auf dieser Hardware nicht unterstützt!
ev/state
Der Zustand des aktuell verbundenen Fahrzeugs.
{
"active_ev_index": 0,
"name": "ID.4",
"mac": "0A:1B:2C:D3:E4:F5",
"soc": 42.5,
"capacity": 77.0,
"charging_efficiency": 0.92
}
Ein Fahrzeug ist verbunden und wurde dem ersten Fahrzeug-Profil zugeordnet. Der geschätzte Ladestand beträgt 42,5 %.
| Name | Beschreibung |
|---|---|
active_ev_indexint | Index des zugeordneten Fahrzeug-Profils in |
namestring | Name des zugeordneten Fahrzeug-Profils. Leer, falls kein Fahrzeug verbunden ist oder das Fahrzeug keinem Profil zugeordnet werden konnte. |
macstring | MAC-Adresse des verbundenen Fahrzeugs im Format |
socfloat (%) | Aktueller Ladestand (SoC) des Fahrzeugs in Prozent. Wird entweder vom Fahrzeug übermittelt (ISO 15118-20), über |
capacityfloat (kWh) | Batteriekapazität des verbundenen Fahrzeugs in kWh. Wird dem zugeordneten Fahrzeug-Profil entnommen oder vom Fahrzeug übermittelt (ISO 15118-20). null, falls kein Fahrzeug verbunden ist. |
charging_efficiencyfloat | Ladeeffizienz des verbundenen Fahrzeugs: Verhältnis von gespeicherter zu verbrauchter Energie. Wird dem zugeordneten Fahrzeug-Profil entnommen. 0,92 falls kein Profil zugeordnet ist. |
ev/seen_macs
Die MAC-Adressen der zuletzt verbundenen Fahrzeuge (maximal 8). Hilfreich, um die MAC-Adresse eines Fahrzeugs zu ermitteln, das in ev/config konfiguriert werden soll.
| Index | Beschreibung | ||||||
|---|---|---|---|---|---|---|---|
[..]object | Eine gesehene MAC-Adresse
|
ev/inject_soc
Setzt den Ladestand (SoC) des aktuell verbundenen Fahrzeugs über die API. Ausgehend von diesem Wert wird der Ladestand anhand der geladenen Energie, der Batteriekapazität und der Ladeeffizienz weiter geschätzt.
# $HOST z.B. warp-AbCd
Schreiben
curl http://$HOST/ev/inject_soc -d '{ "soc": 42.5 }'
oder abgekürzt:
curl http://$HOST/ev/inject_soc -d '42.5'
Setzt den Ladestand des verbundenen Fahrzeugs auf 42,5 %.
# $BROKER z.B. my_mosquitto.localdomain
# $PREFIX z.B. warp/AbCd
Schreiben
mosquitto_pub -h $BROKER -t $PREFIX/ev/inject_soc -m '{ "soc": 42.5 }'
oder abgekürzt:
mosquitto_pub -h $BROKER -t $PREFIX/ev/inject_soc -m '42.5'
Setzt den Ladestand des verbundenen Fahrzeugs auf 42,5 %.
| Name | Beschreibung |
|---|---|
socfloat (%) | Ladestand in Prozent. Muss zwischen 0 und 100 liegen. |
ev/inject_ev
Täuscht vor, dass sich ein Fahrzeug mit der übergebenen MAC-Adresse verbunden hat. Hiermit kann über die API ein Fahrzeug identifiziert werden, das seine MAC-Adresse nicht selbst (per ISO 15118) übermittelt. Falls die MAC-Adresse einem Fahrzeug-Profil aus ev/config zugeordnet werden kann, werden dessen Einstellungen übernommen und (falls Autocharge aktiv ist) der Ladevorgang dem konfigurierten Benutzer zugeordnet.
# $HOST z.B. warp-AbCd
Schreiben
curl http://$HOST/ev/inject_ev -d '{ "mac": "0A:1B:2C:D3:E4:F5" }'
oder abgekürzt:
curl http://$HOST/ev/inject_ev -d '"0A:1B:2C:D3:E4:F5"'
Täuscht vor, dass sich ein Fahrzeug mit der MAC-Adresse 0A:1B:2C:D3:E4:F5 verbunden hat.
# $BROKER z.B. my_mosquitto.localdomain
# $PREFIX z.B. warp/AbCd
Schreiben
mosquitto_pub -h $BROKER -t $PREFIX/ev/inject_ev -m '{ "mac": "0A:1B:2C:D3:E4:F5" }'
oder abgekürzt:
mosquitto_pub -h $BROKER -t $PREFIX/ev/inject_ev -m '"0A:1B:2C:D3:E4:F5"'
Täuscht vor, dass sich ein Fahrzeug mit der MAC-Adresse 0A:1B:2C:D3:E4:F5 verbunden hat.
| Name | Beschreibung |
|---|---|
macstring | MAC-Adresse des Fahrzeugs im Format |
ev/config
Die konfigurierten Fahrzeug-Profile.
# $HOST z.B. warp-AbCd
Lesen
curl http://$HOST/ev/config
{
"evs": [
{
"name": "ID.4",
"mac": "0A:1B:2C:xx:xx:xx",
"capacity": 77.0,
"charging_efficiency": 0.92,
"user_id": 2
},
{
"name": "Zoe",
"mac": "5C:AF:06:12:34:56",
"capacity": 52.0,
"charging_efficiency": 0.9,
"user_id": 0
}
]
}
Konfiguriert zwei Fahrzeug-Profile: Ein Fahrzeug mit wechselnder MAC-Adresse (nur die ersten drei Bytes werden zur Identifikation verwendet), dessen Ladevorgänge dem Benutzer mit der ID 2 zugeordnet werden, und ein Fahrzeug mit fester MAC-Adresse ohne Benutzerzuordnung.
Schreiben
curl http://$HOST/ev/config -d '{
"evs": [
{
"name": "ID.4",
"mac": "0A:1B:2C:xx:xx:xx",
"capacity": 77.0,
"charging_efficiency": 0.92,
"user_id": 2
},
{
"name": "Zoe",
"mac": "5C:AF:06:12:34:56",
"capacity": 52.0,
"charging_efficiency": 0.9,
"user_id": 0
}
]
}'
oder abgekürzt:
curl http://$HOST/ev/config -d '[
{
"name": "ID.4",
"mac": "0A:1B:2C:xx:xx:xx",
"capacity": 77.0,
"charging_efficiency": 0.92,
"user_id": 2
},
{
"name": "Zoe",
"mac": "5C:AF:06:12:34:56",
"capacity": 52.0,
"charging_efficiency": 0.9,
"user_id": 0
}
]'
Konfiguriert zwei Fahrzeug-Profile: Ein Fahrzeug mit wechselnder MAC-Adresse (nur die ersten drei Bytes werden zur Identifikation verwendet), dessen Ladevorgänge dem Benutzer mit der ID 2 zugeordnet werden, und ein Fahrzeug mit fester MAC-Adresse ohne Benutzerzuordnung.
# $BROKER z.B. my_mosquitto.localdomain
# $PREFIX z.B. warp/AbCd
Lesen
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/ev/config
{
"evs": [
{
"name": "ID.4",
"mac": "0A:1B:2C:xx:xx:xx",
"capacity": 77.0,
"charging_efficiency": 0.92,
"user_id": 2
},
{
"name": "Zoe",
"mac": "5C:AF:06:12:34:56",
"capacity": 52.0,
"charging_efficiency": 0.9,
"user_id": 0
}
]
}
Konfiguriert zwei Fahrzeug-Profile: Ein Fahrzeug mit wechselnder MAC-Adresse (nur die ersten drei Bytes werden zur Identifikation verwendet), dessen Ladevorgänge dem Benutzer mit der ID 2 zugeordnet werden, und ein Fahrzeug mit fester MAC-Adresse ohne Benutzerzuordnung.
Schreiben
Mit MQTT auf $PREFIX/ev/config_update
mosquitto_pub -h $BROKER -t $PREFIX/ev/config_update -m '{
"evs": [
{
"name": "ID.4",
"mac": "0A:1B:2C:xx:xx:xx",
"capacity": 77.0,
"charging_efficiency": 0.92,
"user_id": 2
},
{
"name": "Zoe",
"mac": "5C:AF:06:12:34:56",
"capacity": 52.0,
"charging_efficiency": 0.9,
"user_id": 0
}
]
}'
oder abgekürzt:
mosquitto_pub -h $BROKER -t $PREFIX/ev/config_update -m '[
{
"name": "ID.4",
"mac": "0A:1B:2C:xx:xx:xx",
"capacity": 77.0,
"charging_efficiency": 0.92,
"user_id": 2
},
{
"name": "Zoe",
"mac": "5C:AF:06:12:34:56",
"capacity": 52.0,
"charging_efficiency": 0.9,
"user_id": 0
}
]'
Konfiguriert zwei Fahrzeug-Profile: Ein Fahrzeug mit wechselnder MAC-Adresse (nur die ersten drei Bytes werden zur Identifikation verwendet), dessen Ladevorgänge dem Benutzer mit der ID 2 zugeordnet werden, und ein Fahrzeug mit fester MAC-Adresse ohne Benutzerzuordnung.
| Name | Beschreibung | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
evsobject[..] | Liste der Fahrzeug-Profile (maximal 16).
|