What is OCA?
OCA is the abbreviation of the Open Charging Alliance, and the first version of the OCPP standard was announced in 2009. The purpose of OCA was to establish a system standard for electric vehicle charging stations.
Since its implementation, it has been widely recognized by the electric vehicle industry. The latest version is OCPP 2.0. However, it should be noted that OCPP is only widely recognized, but has not been approved as a formal standard by any national or international standards organization.
What is OCPP?
OCPP is an open source charging protocol, which means that electric vehicle charging pile manufacturers can use it without any conditions. OCPP is mainly to facilitate the interconnection between electric vehicle charging stations and remote servers, so that the remote server can accurately control the various functions of electric vehicle charging stations. In addition, OCPP allows charging pile manufacturers to freely switch remote servers and use the services of various network providers.
Working principle of OCPP
The working principle of OCPP is carried out through multiple processes at the same time, and different versions are slightly different. Here we briefly talk about their working principles, which can be divided into the following points:
Two-way communication
OCPP uses the WebSocket protocol for communication, so that the electric vehicle charging pile (client) and the central management system (server) can send and receive information. This is the same principle as when we use social software to chat with each other.
In this way, we can get real-time information about the charging status, energy consumed, number of charging times, etc. of the charging pile on the charging pile.
Coordination system
In OCPP, there is also a link to maintain information interaction with the power grid. By coordinating the load, power and current of the power grid, the charging time and output power can be flexibly controlled, which is the smart charging function displayed by many software.
Remote management and control
By sending information to our APP synchronously through the server, we can learn about the specific situation of charging. At the same time, we can communicate instructions with OCPP through the server on the APP to select information such as the output power and duration of charging. If we want to uniformly manage and control charging piles, we can also achieve it through the server.
Security
Since the OCPP protocol uses TLS/SSL encryption, even if it is intercepted by a Trojan or a middleman (a hacking technique), no information inside can be obtained. This ensures that the data is safe and reliable during transmission.
History of OCPP
- OCPP 1.0 was released in 2010, which established the most basic communication functions.
- OCPP 1.2 was released in 2012. Based on 1.0, this version added basic charging session management, device management and other functions.
- OCPP 1.5 was released in 2013. This version improved system compatibility and reliability, and further enhanced the flexibility and scalability of message transmission.
- OCPP 1.6 was launched in 2015. This protocol is a major update. It includes functions such as smart charging, remote diagnosis and message encryption, and supports the WebSocket protocol.
- OCPP 2.0 was released in 2018. This version has undergone major reforms, not only improving security, but also making improvements in energy management and smart charging, including support for complex billing and diagnostics.
- OCPP 2.0.1 was released in 2020 and is the latest version. Based on the previous functions, it can achieve plug-and-play functions through integration with ISO 15118, and supports automatic vehicle authentication. In addition, it also supports vehicle-to-grid (V2G) and realizes bidirectional charging.
Differences between OCPP 1.6 and OCPP 2.0
OCPP1.6 is the most popular version in commercial deployment. It is often compared with the latest version of OCPP 2.0. It is also a question that many readers are very concerned about. After consulting a lot of literature, we list several of the most important differences for comparison.
Architecture and message definition
OCPP 1.6: It adopts centralized message definition, and the architecture is relatively simple. The message transmission method is relatively fixed and cannot be effectively expanded.
OCPP 2.0: It adopts a decentralized approach and allows for custom extensions, which makes it more flexible in meeting specific user needs and can better adapt to different business scenarios and future changes.
Security
OCPP 1.6: TLS encryption is used to ensure the security of communication. Although the security is relatively high, if the attacker uses identity forgery technology, there is still a certain risk of data leakage.
OCPP 2.0: Security has been enhanced. On the basis of TLS encryption, OAuth 2.0/OpenID Connect user authentication has been added to prevent attackers from forging identity information, ensuring the secure transmission of data.
Smart charging function
OCPP 1.6: The first to introduce smart charging function, which can adjust the charging power according to the load of the power grid, thereby realizing functions such as load balancing, but the overall function is relatively limited.
OCPP 2.0: Further expands the smart charging function and fully supports the ISO 15118 standard, realizing many functions that OCPP1.6 does not have, such as plug-and-play, metering value, charging schedule, local authorization list, etc., and also supports V2G bidirectional power flow to improve energy utilization.
Communication protocol changes
OCPP 1.6: Data transmission is mainly carried out through SOAP/HTTP or limited WebSocket+JSON. In some complex network environments, performance bottlenecks may occur.
OCPP 2.0: SOAP protocol is no longer supported, but it is completely switched to JSON-based communication, which reduces the amount of data transmission and improves transmission efficiency.
Backward compatibility
OCPP 1.6: As an earlier version, it can perfectly compatible with all versions between.
OCPP 2.0: It is no longer backward compatible with versions below OCPP 1.6, which means that devices using OCPP 1.6 may not be able to communicate directly with OCPP 2.0 systems. .
Summary
Although OCPP 2.0 is far superior to OCPP1.6 in all aspects, its compatibility issues bring huge replacement costs. Therefore, the current mainstream application protocol is still based on OCPP1.6.