In this article we are going to discuss about a high level controller of an electric vehicle, named Vehicle Control System (VCS). In an production vehicle, the vehicle control system is very complex, distributed on several electronic control modules and with a lot of interactions with other vehicle systems (braking, heating and ventilation, battery management, etc.). The purpose of this article is to understand how a high level simplified controller works and what is the main information exchanged between modules.
From the hardware point of view, we are going to consider four systems of the electric vehicle:
- high voltage battery
- vehicle (body)
From the software (controller) point of view, we are going to consider several control systems:
- electric machine control system (EMCS)
- stability control system (SCS)
- battery management system (BMS)
- driver mode system (DMS)
- vehicle control system (VCS)
The Electric Machine Control System (EMCS) is basically the inverter. It is called electric machine because it can be a motor (positive torque) or a generator (negative torque), depending on the driver inputs (accelerator and brake pedal position). The EMCS receives the torque request from the vehicle control system (VCS) and the modulates the stator phases (for permanent magnet electric machine) in order to obtain the required torque.
The EMCS also performs diagnostics on the electric machines and sends out the status. For example, in case of thermal protection, the electric machine control system (EMCS) informs the vehicle control system (VCS) that it can not apply the requested torque and sends out the torque limit (derated torque).
An example of EMCS are the Rinehart Motion Systems PM100 and PM150 family of propulsion inverters. They are suitable for a range of applications like high-performance vehicles, professional motor-sport, heavy vehicle hybrid propulsion, static energy conversion, hybrid range extender or integrated starter generator (ISG) controller.
The PM family of propulsion inverters are designed for on-road and off-road electric (EV) or hybrid vehicle (HEV) applications. Their main purpose is to convert DC power from a high voltage battery to 3-phase AC power required by the electric machine.
- cooling circuit connections (input/output)
- communication and input-output ports
- high voltage battery connections (DC)
- 3-phase output connections (AC)
|DC Voltage – operating [V]||50 – 400||100 – 800||50 – 400||50 – 800|
|DC Overvoltage trip [V]||420||840||420||840|
|Max. DC Voltage – non-operating [V]||500||900||500||900|
|Motor current (continuous) [A]||300||150||450||225|
|Motor current (peak) [A]||350||200||450||300|
|Ouput electrical power (peak) [kVA]||100||100||150||150|
|DC bus capacitance [μF]||440||280||880||560|
|Size, length x height x width [mm]||200 x 87 x 314||200 x 87 x 436|
Source: Reinhart Motion Systems
Communication and input-output ports summary:
- 6 (0-5V) analog inputs
- 2 selectable PT100/PT1000 RTD inputs
- 8 digital inputs STB/STG
- 4 high side driver outputs
- 2 low side driver outputs
- 1 resolver interface
- 1 quadrature encoder
- 1 sin-cos encoder
- 2 CAN 2.0A/B ports
- 1 1MB RS232 programming port
The analog inputs can be used for various sensors (position, pressure, etc.). The RTD (Resistance Temperature Detector) inputs are used for temperature sensors connection. The resolver, quadrature encoder and sin-cos encoder are inputs from position/speed sensors (rotation). The CAN (Controller Area Network) is used as a communication protocol with other modules (e.g VCS). The programming port is used to flash the module with a different software algorithm or software calibration.
The Stability Control System (SCS) has multiple functions for which it exchanges information with the Vehicle Control System (VCS). The main function is to control the braking system and to provide accurate vehicle speed information to the other systems. It also send out the braking torque request to the VCS, which will apply it to the electric machines, via EMCS. The idea is that the braking request from the driver, read through the braking pedal position, does not translate automatically into foundation brake (hydraulic) activation. Instead, the electric machines are going into generator mode, providing negative torque and the vehicle is slowed down, recuperating electrical energy in the same time.
For vehicle stability purposes, the SCS calculates the maximum torque limits for both electric machines. For example, if the vehicle is rolling on a low friction surface (e.g. snow or ice), the electric machine torque is limited in order to avoid wheel slip and possible vehicle instability. For energy recuperation purposes, the VCS informs SCS what is the maximum braking torque that can be applied. This torque limit is calculated based on the nominal torque capability of the electric machine or the derated value (send by EMCS).
The main purpose of the Battery Management System (BMS) is to monitor the high voltage battery in terms of cell voltage balancing, state of charge (SOC) and state of health (SOH). For thermal protection purposes, it also limits the maximum current (positive or negative) of the battery.
As an example we can look at Orion BMS designed and manufactured by Ewert Energy Systems. Main features:
- Monitors every cell voltage
- Field programmable and upgradable
- Intelligent cell balancing (efficient passive balancing)
- Enforces minimum and maximum cell voltages
- Enforces maximum current limits
- Enforces temperature limits
- Professional and robust design
- Monitors state of charge (SOC)
- Retains data about battery history
- Integration with 3rd party smartphone apps (Torque, EngineLink)
- Compatible with almost all lithium-ion cells
- One-click setup for many common battery types
- Supports 4-180 cells in series per BMS module
- State of health (SOH)
- Open circuit cell voltage
- Charge current limit
- Discharge current limit
- Internal resistance (for each individual cell as well as the total pack)
- No cell tap boards or external circuitry
- Fast cell voltage polling (every 30 ms typical)
- High immunity to electromagnetic interference (EMI) and other noise
- High accuracy cell voltage measurement
Two programmable CAN bus interfaces:
- CAN2.0B (11-bit and 29-bit IDs supported)
- Independently operate at different baud rates
- Fully customizable message formatting
- Field upgradable firmware and settings using CAN interface
- One-click setup for many common chargers and inverters
- OBD2 protocol compatible (supports many scan tools)
- Can be used with CANOpen and J1939 applications
Input / Output
- Easy interfacing with chargers and loads
- On/off outputs for controlling charge and discharge
- 0 – 5V analog outputs for gradual current reduction (improves usable range of battery)
- Thermal management controls for battery cooling / heating
- Diagnostic trouble codes quickly identify and diagnose battery problems
- Freeze frame data records exact conditions when a fault occurred.
- Supports OBD2 automotive protocol for storage of diagnostic trouble codes and polling of live data
- Unit tracks total number of battery cycles
- Records number and duration of over-temperature and over-current events
- All BMS parameters can be logged using PC utility software
- Optional data logging display can record any parameters to a memory card
- Isolation fault detection
- Multiple BMS units may be used in series
- Automotive grade locking connectors
- Temperature compensation for improved monitoring in different temperatures
The Driver Mode System (DMS) provides the interface between the driver and the vehicle. The driver can select (input):
- the position of the shift lever (park, reverse, neutral, drive)
- the torque demand (by accelerator pedal position)
- the brake demand (by brake pedal position)
- vehicle speed setpoint (for cruise control)
All this information is fed to the VCS which makes decisions regarding the value of the electric machine torque and direction of rotation. The electric machine torque is fed back to the DMS and can be used to display the powertrain mode (acceleration or braking) and the level or energy recuperation.
The Vehicle Control System (VCS) is the master controller of the vehicle. Its main function is to decide the electric machine mode (motor/generator) and the torque value. The control logic is taking into account the state of the electric machine(s), the state of the high voltage battery, the state of the vehicle and the inputs from the driver. In the image below there is a simplified high level state machine which can be used as a electric vehicle (EV) master controller.
When the vehicle is powered up (ignition key ON) the VCS goes into Initialisation state. Function on the vehicle speed and driver inputs (shift lever position, accelerator pedal position, brake pedal position) it can go in Acceleration, Coasting or Energy recuperation state. In the table below is a description of the states entry conditions.
|Entry conditions||Ignition key ON||shift lever in Drive (D) |
AP position > 0 %
BP position = 0 %
|shift lever in Drive (D) |
vehicle speed > 0 kph
AP position = 0 %
BP position = 0 %
|shift lever in Drive (D) |
AP position = 0 %
BP position >= 0 %
|Output||None||EM torque > 0 Nm |
EM state = MOTOR
|EM torque = 0 Nm |
EM state = MOTOR
|EM torque < 0 Nm |
EM state = GENERATOR
AP – accelerator pedal
BP – brake pedal
EM – electric machine
In the Acceleration state, the default sub-state is Nominal, which means that there is no torque limitation on the electric machine(s) or power limitation on the high voltage battery. Depending on the level of torque requested by the driver (by the position of acceleration pedal), the torque can be applied only on the front axle (Front Wheel Drive, FWD) or both axles (All Wheel Drive, AWD). In case of thermal protection (of electric machine or battery), the vehicle can go into Torque limitation state, which limits the maximum torque which can be applied to the electric machine and the maximum electrical current going in or out the battery.
In the Coasting state the VCS doesn’t apply any traction or braking torque on the electric machine(s), in order to make fully use of the kinetic energy of the vehicle for motion. The torque setpoint for the electric machines is 0 Nm.
In the Energy recuperation state, the electric machines become generators and produce electrical energy. Depending on the value of the brake pedal position, the torque (negative) applied at the electric machine is variable. Also, the total negative torque can be split between Front and Rear axle, depending on the vehicle state and driving conditions.
This is a simplified example of an electric vehicle (EV) controller but it gives a very good overview on what information is exchanged between different control modules and what the mode of operation might be, depending on the input signals.