Communication method and system for interconnection and intercommunication between charging platforms
Through standardized data packet processing, peak cutting algorithm, data mapping and encryption processing, the problems of low docking efficiency and poor security of charging platforms are solved, efficient and secure interconnection of charging platforms are achieved, and transmission success rate and resource utilization rate are improved.
Patent Information
- Application Number
- CN202510609248.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-13
- Publication Date
- 2025-08-15
AI Technical Summary
The docking of traditional charging platforms requires customized development for different manufacturers, which has problems such as duplicate encoding and long development cycle; the key management system is scattered, security risks and high maintenance costs; the data acquisition mechanism lacks flexibility and cannot achieve dynamic configuration; the interface protocols of different platforms are poor in compatibility, making it difficult to meet the requirements of the China Power Unicom T102 series standards.
Through standardized data packet processing, peak cutting algorithm, data mapping, encryption and signature digest processing, combined with SSL/TLS encryption channels, interconnection between charging platforms is realized, and data transmission is optimized through big data analysis and intelligent diagnostic modules, supporting dynamic configuration and exception processing.
The docking efficiency has been improved by more than 70%, the access time of new enterprises has been shortened to within 2 hours, and the equipment data of 500+ charging operation companies has been supported at the same time. The message transmission success rate has been increased to 99.99%, and the system resource consumption has been reduced by 40%.
Smart Images

Figure CN120498694A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of electric vehicle charging facility management, and in particular to a communication method and system for interconnection between charging platforms. Background Art
[0002] The following problems exist in the existing technology: traditional charging platform docking requires customized development for different manufacturers, which leads to problems such as repeated coding and long development cycles; the key management system is decentralized, posing security risks and high maintenance costs; the data collection mechanism lacks flexibility and cannot achieve dynamic configuration; the interface protocols of different platforms have poor compatibility and are difficult to meet the requirements of the China Electricity Council T102 series standards. Summary of the Invention
[0003] In view of this, the present application provides a communication method and system for interconnection between charging platforms.
[0004] The present application discloses a communication method for interconnection between charging platforms, which includes:
[0005] Step 1: Obtain the platform standardized data package based on the original data of the charging pile;
[0006] Step 2: Standardize the data packets according to the platform to obtain the peak-shaving data stream;
[0007] Step 3: Obtain the CEC 102-X protocol interaction message based on the peak-shaving data flow;
[0008] Step 4: According to the CEC 102-X protocol interaction message, the data frame converted into the target platform is obtained;
[0009] Step 5: Get the encrypted data block and signature digest based on the data frame of the target platform;
[0010] Step 6: Based on the encrypted data block and signature digest, obtain the data that has been securely transmitted and verified;
[0011] Step 7: Based on the data that failed verification in step 6 or the abnormal data in steps 4 and 5, obtain the repaired data or alarm information.
[0012] Furthermore, the step 1 includes:
[0013] According to the messages reported by the charging piles, they are parsed according to different charging pile interaction protocols, and the parsed results are encapsulated into platform standardized data packets.
[0014] Furthermore, the step 2 includes:
[0015] Using a big data analysis platform, we import historical load data covering message transmission volume and system resource utilization over different time periods. We then use data mining algorithms to deeply mine this historical load data and build a prediction model. This model uses relevant factors, such as trends and periodic patterns in historical load data, to predict system resource requirements for future periods, providing a basis for traffic control in advance.
[0016] During peak electricity consumption periods, the system monitors in real time whether the current period falls within the preset peak period range; once it is determined to be a peak period, the exponential backoff algorithm is immediately activated to dynamically adjust the data collection frequency;
[0017] The system monitors network traffic in real time. When network traffic exceeds a preset threshold, it activates a token bucket algorithm. The token bucket algorithm generates tokens at a fixed rate, with each interactive message transmission consuming one token. Non-urgent tasks have a lower priority when acquiring tokens. Priority is given to the transmission of signature digests and encrypted data blocks.
[0018] The system outputs the data stream after peak clipping, that is, the data stream after frequency adjustment and flow control, and its transmission rhythm is adapted to the network load and system resource status.
[0019] Furthermore, the step 3 includes:
[0020] Users operate through a visual configuration interface that graphically displays data field options for various charging companies;
[0021] Formulate data mapping rules based on the target platform's private protocol and the CEC 102-X protocol; Based on the data mapping rules, accurately associate the fields of the standardized data packet with the fields of the target platform's private protocol;
[0022] Based on the data mapping rules, the system's built-in message generation engine runs automatically. The message generation engine automatically fills in the content of each field according to the selected data fields, data mapping rules, encrypted data blocks, and signature digests, in accordance with the message structure template of the China Electricity Union 102-X protocol, and generates interactive messages that comply with the China Electricity Union 102-X protocol.
[0023] Furthermore, the step 4 includes:
[0024] The system pre-stores and loads the protocol mapping table, and parses the field definition of the target platform's private protocol based on the target platform identifier through database query statements;
[0025] Based on the parsed field definitions, write the conversion program code. The conversion program code converts the fields in the CEC 102-X protocol into the fields of the target platform one by one according to the field correspondence.
[0026] In view of the differences in data types and lengths of different protocols, the code processing logic is used in the process of converting the fields in the China Electric Power Union 102-X protocol into the fields of the target platform one by one: if the length of the source protocol field is greater than the length of the target protocol field, a truncation or compression algorithm is used to ensure that the target platform does not have a parsing error; if the data type is incompatible, it is processed through a forced type conversion function combined with a data verification mechanism to finally generate a data frame that can be recognized by the target platform.
[0027] Furthermore, the step 5 includes:
[0028] The AES256 algorithm uses dynamic factors as seed values to generate a unique message key through encryption transformation. The message key is then used to encrypt the data frame. The encryption process uses block encryption mode, dividing the data frame into fixed-length blocks, which are encrypted group by group to generate encrypted data blocks. Dynamic factors include the current system timestamp and the packet sequence number.
[0029] The function that generates the parameter signature digest uses the HMAC-MD5 algorithm, using MD5 as the hash function. The entire message body is encrypted with the preset signature key, and then the MD5 message digest is used to form a new ciphertext. The parameter signature must be capitalized.
[0030] The order of parameter signatures is executed after being spliced in the order of message bodies. The splicing order is operator identification, parameter content, timestamp, and data packet sequence number.
[0031] Furthermore, the step 6 includes:
[0032] Utilize the SSL / TLS encryption library functions built into the operating system to establish an SSL / TLS encrypted channel. At the sending end, encapsulate the data frame and signature digest according to the established message encapsulation format, add header information, form a transmission message, and send it to the receiving end through the encrypted channel. The header information includes the source address, destination address, and message length.
[0033] After receiving the transmission message, the receiving end first uses the pre-shared message key to decrypt the data frame through the decryption algorithm to restore the original data content sent by our platform, that is, the standard data packet obtained in step 1. At the same time, the receiving end uses the same hash check algorithm as the sending end to recalculate the signature digest of the received data frame and compare it with the received original signature digest. If the two are completely consistent, it indicates that the data integrity and authenticity are guaranteed; if they are inconsistent, it is determined that an abnormality has occurred during the data transmission process.
[0034] Data that has been securely transmitted and verified ensures that it has not been tampered with during transmission and that its source is reliable.
[0035] Furthermore, the step 7 includes:
[0036] When data collection fails, for example, during the real-time data collection process in step 1, the charging pile raw data cannot be obtained due to network failure, sensor failure, etc., the system automatically starts the exponential backoff strategy to retry the operation; according to the set retry interval time sequence, the retry time is gradually extended until the maximum number of retries is reached. If the collection is still unsuccessful, the detailed error information is recorded;
[0037] If an exception occurs during the protocol conversion process in step 4, the system will automatically roll back the converted data and restore it to the state before the conversion. Detailed error information will be recorded in the local error log file for subsequent operation and maintenance troubleshooting. The error log includes the time the error occurred, the protocol version involved, the conversion steps, and the specific error description.
[0038] The system pushes abnormal information to the operation and maintenance system in a standardized alarm format through the cloud platform API. At the same time, combined with the built-in intelligent diagnosis module, it generates repair suggestion reports based on key factors to assist operation and maintenance personnel in quickly resolving problems. The repair suggestion reports cover possible causes of failures, recommended solution steps, and estimated repair time. Key factors include error type and historical processing experience.
[0039] The present application also discloses a communication system for interconnecting charging platforms, which implements the above-mentioned method, and includes:
[0040] The data packet module is used to obtain the platform standardized data packet based on the original data of the charging pile;
[0041] The data stream acquisition module is used to obtain the peak-shaving data stream based on the platform standardized data packets;
[0042] The interactive protocol module is used to obtain the China Electricity Council 102-X protocol interactive message based on the data flow after peak clipping;
[0043] The data frame module is used to convert the data frame of the target platform according to the CEC 102-X protocol exchange message;
[0044] The data acquisition module is used to obtain the encrypted data block and signature summary according to the data frame of the target platform;
[0045] A data processing module is used to obtain data that has been securely transmitted and verified based on the encrypted data block and the signature digest;
[0046] The abnormality judgment module is used to obtain repaired data or alarm information based on the data that failed verification in the data processing model or the abnormal data in the data frame module and the data acquisition module.
[0047] Due to the adoption of the above technical solution, this application has the following advantages: docking efficiency is improved by more than 70%, and the access time for new enterprises is shortened to within 2 hours; it supports the simultaneous management of equipment data of 500+ charging operators; the message transmission success rate is increased to 99.99%; and system resource consumption is reduced by 40%. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments recorded in the embodiments of the present application. For ordinary technicians in this field, other drawings can also be obtained based on these drawings.
[0049] Figure 1 This is a flow chart of a communication method for interconnection between charging platforms according to an embodiment of the present application. DETAILED DESCRIPTION
[0050] The present application is further described with reference to the accompanying drawings and embodiments. The embodiments described are only a part of the embodiments of the present application, not all of the embodiments. All other embodiments obtained by ordinary technicians in this field should fall within the scope of protection of the embodiments of the present application.
[0051] See also Figure 1 , the present application provides an embodiment of a communication method for interconnection between charging platforms, which includes:
[0052] Step 1: Obtain the platform standardized data package based on the original data of the charging pile;
[0053] The implementation code for step 1 is as follows:
[0054] @Transactional
[0055] @Override
[0056] public void addCecStation(CecStationDTO cecStationDTO){
[0057] log.info("addCecStation adds interconnected power station information: {}",JSONObject.toJSONString(cecStationDTO));
[0058] String addCecType = "2";
[0059] / / Analyze the constructed data
[0060] / / The billing template uses another interface and cannot be inserted here
[0061] / / CostTemplate costTemplate=new CostTemplate();
[0062] / / Add a new power station
[0063] Station station=new Station();
[0064] / ** /
[0065] station.setOperatorId(cecStationDTO.getOperatorId());
[0066] / *none* /
[0067] station.setOperatorName(cecStationDTO.getOperatorName());
[0068] / *none* /
[0069] station.setEquipmentOwnerId(cecStationDTO.getEquipmentOwnerId());
[0070] / *none* /
[0071] station.setChannelId(cecStationDTO.getChannelId());
[0072] if(ObjectUtil.isNotEmpty(cecStationDTO.getOperatorId())){
[0073] Org org=orgDomainService.queryOperatorTypeById(cecStationDTO.getOperatorId());
[0074] if(ObjectUtil.isNotEmpty(org)&&ObjectUtil.isNotEmpty(org.getChannelId())){
[0075] station.setChannelId(org.getChannelId());
[0076] } / *none* /
[0077] station.setStationCode(cecStationDTO.getId());
[0078] / ** /
[0079] station.setStationName(cecStationDTO.getStationName());
[0080] / ** /
[0081] station.setCountryCode(cecStationDTO.getCountryCode());
[0082] / *none* /
[0083] station.setProvinceCode(cecStationDTO.getProvinceCode());
[0084] / *none* /
[0085] station.setCityCode(cecStationDTO.getCityCode());
[0086] / ** /
[0087] station.setAreaCode(cecStationDTO.getAreaCode());
[0088] Step 2: Standardize the data packets according to the platform to obtain the peak-shaving data stream;
[0089] Step 3: Obtain the CEC 102-X protocol interaction message based on the peak-shaving data flow;
[0090] The implementation code for step 3 is as follows:
[0091]
[0092]
[0093] Step 4: According to the CEC 102-X protocol interaction message, the data frame converted into the target platform is obtained;
[0094] Step 5: Get the encrypted data block and signature digest based on the data frame of the target platform;
[0095] The implementation code for step 5 is as follows:
[0096]
[0097]
[0098] Step 6: Based on the encrypted data block and signature digest, obtain the data that has been securely transmitted and verified;
[0099] The implementation code for step 6 is as follows:
[0100] @Override
[0101] public String remoteRestart(Equipment equipment){
[0102] String resultFail = "0";
[0103] string resultSuccess="1";
[0104] if(ObjectUtil.isEmpty(equipment)||ObjectUtil.isEmpty(equipment.getId())){
[0105] return resultFail;
[0106] }
[0107] EquipmentPO equipmentPO=equipmentRepository.queryEquipmentById(equipment.getId());
[0108] if(ObjectUtil.isEmpty(equipmentPO)||ObjectUtil.isEmpty(equipmentPO.getIsOnline())){
[0109] return resultFail;
[0110] }
[0111] if(equipmentPO.getIsOnline()){
[0112] / / Send kafka online
[0113] String version = equipmentPO.getVersion();
[0114] if (EquipmentProtocolVersionEnum.UDP.getCode().equals(version)) {
[0115] / / TCP pile UDP is the terminal
[0116] List <connectorpo>connectorPOS=connectorRepository.queryConnectorPo(newConnectorRecordQuery(),ConnectorPO.builder().equipmentId(equipment.getId()).build());
[0117] if(ObjectUtil.isNotEmpty(connectorPOS)){
[0118] connectorPOS.forEach(po->{
[0119] TerminalRestartMessage terminalRestartMessage=newTerminalRestartMessage();
[0120] terminalRestartMessage.setConnectorCode(po.getConnectorCode());
[0121] terminalRestartMessage.setEquipmentCode(equipmentPO.getEquipmentCode());
[0122] terminalRestartMessage.setProtocol(Integer.parseInt(EquipmentProtocolVersionEnum.UDP.getCode()));
[0123] equipmentEventPublish.publishRemoteRestart(terminalRestartMessage);
[0124] log.info("publishRemoteRestart UDP,{}",JSONObject.toJSONString(terminalRestartMessage));
[0125] });
[0126] }
[0127] }else{
[0128] TerminalRestartMessage terminalRestartMessage = new TerminalRestartMessage();
[0129] terminalRestartMessage.setEquipmentCode(equipmentPO.getEquipmentCode());
[0130] terminalRestartMessage.setProtocol(Integer.parseInt(EquipmentProtocolVersionEnum.TCP.getCode()));
[0131] equipmentEventPublish.publishRemoteRestart(terminalRestartMessage);
[0132] log.info("publishRemoteRestart TCP, {}", JSONObject.toJSONString(terminalRestartMessage));
[0133] }
[0134] return resultSuccess;
[0135] } else {
[0136] @Resource
[0137] private CecQueryService queryService;
[0138] / **
[0139] * Get token
[0140] * /
[0141] @PostMapping(value = " / {channelCode} / query_token")
[0142] public CecResp query_token(@PathVariable("channelCode") String channelCode, @RequestBody CecBody cecBody) {
[0143] return queryService.query_token(channelCode,cecBody);
[0144] }
[0145] / **
[0146] *Query power station information
[0147] * /
[0148] @PostMapping(value=" / {channelCode} / query_stations_info")
[0149] public CecResp query_stations_info(@PathVariable("channelCode")StringchannelCode,
[0150] @RequestBody CecBody cecBody){
[0151] return queryService.query_stations_info(channelCode,cecBody);
[0152] }
[0153] / **
[0154] *Query operator information (Sichuan Province Regulatory Agreement)
[0155] * /
[0156] @PostMapping(value=" / {channelCode} / query_station_status")
[0157] public CecResp supervise_query_operator_info(GPathvariable("channelcode")String channelcode,
[0158] @RequestBody CecBody cecBody)i
[0159] return queryService.supervise_query_operator_info(channelCode,cecBody);
[0160] }
[0161] / **
[0162] *Query charging station status information (Sichuan Province Supervision Agreement)
[0163] * /
[0164] @PostMapping(value=" / {channelCode} / query_equip_business_policy")
[0165] public CecResp supervise_query_station_status(@Pathvariable("channelcode")string chanelcode,
[0166] @RequestBody cecBody cecBody){
[0167] Step 7: Based on the data that failed verification in step 6 or the abnormal data in steps 4 and 5, obtain the repaired data or alarm information.
[0168] The implementation code for step 7 is as follows:
[0169] @Resource
[0170] private CecConstants cecConstants;
[0171] @Override
[0172] public CecResp query_token(String channelCode,CecBody cecBody){
[0173] try{
[0174] log.info("query_token:{},{}",channelCode,JSONObject.toJSONString(cecBody));
[0175] QueryTokenDTO queryDTO=parseBody(channelCode,cecBody,QueryTokenDTO.class);
[0176] QueryTokenBiz queryTokenBiz=SpringUtil.getBean(QueryTokenBiz.class);
[0177] return queryTokenBiz.execute(queryDTO,new ResultTokenDTO());
[0178] }catch(Exception e){
[0179] log.error("query_token error:{}",channelCode,e);
[0180] throw new CecFlowException(e);
[0181] }
[0182] }
[0183] Optionally, step 1 includes:
[0184] According to the messages reported by the charging piles, they are parsed according to different charging pile interaction protocols, and the parsed results are encapsulated into platform standardized data packets.
[0185] Optionally, step 2 includes:
[0186] Using a big data analysis platform, we import historical load data covering message transmission volume and system resource utilization over different time periods. We then use data mining algorithms to deeply mine this historical load data and build a prediction model. This model uses relevant factors, such as trends and periodic patterns in historical load data, to predict system resource requirements for future periods, providing a basis for traffic control in advance.
[0187] During peak electricity consumption periods, the system monitors in real time whether the current period falls within the preset peak period range; once it is determined to be a peak period, the exponential backoff algorithm is immediately activated to dynamically adjust the data collection frequency;
[0188] The system monitors network traffic in real time. When network traffic exceeds a preset threshold, it activates a token bucket algorithm. The token bucket algorithm generates tokens at a fixed rate, with each interactive message transmission consuming one token. Non-urgent tasks have a lower priority when acquiring tokens. Priority is given to the transmission of signature digests and encrypted data blocks.
[0189] The system outputs the data stream after peak clipping, that is, the data stream after frequency adjustment and flow control, and its transmission rhythm is adapted to the network load and system resource status.
[0190] Optionally, step 3 includes:
[0191] Users operate through a visual configuration interface that graphically displays data field options for various charging companies;
[0192] Formulate data mapping rules based on the target platform's private protocol and the CEC 102-X protocol; Based on the data mapping rules, accurately associate the fields of the standardized data packet with the fields of the target platform's private protocol;
[0193] Based on the data mapping rules, the system's built-in message generation engine runs automatically. The message generation engine automatically fills in the content of each field according to the selected data fields, data mapping rules, encrypted data blocks, and signature digests, in accordance with the message structure template of the China Electricity Union 102-X protocol, and generates interactive messages that comply with the China Electricity Union 102-X protocol.
[0194] The implementation code for generating interactive messages that comply with the CEC 102-X protocol is as follows:
[0195] @0verride
[0196] public CecResp supervise_guery_stations_info(String channelcode,CecBody cecBody)
[0197] {
[0198] try{
[0199] QuerySupStationsInfoDTo queryDTO=parseBody(channelcode,cecBody,
[0200] QuerySupstationsInfoDTo.class);
[0201] / / 1: Get system configuration
[0202] CecConfigInfo channelConfig=new CeconfigInfo();
[0203] BeanUtil.copyProperties(cecConstants, channelConfig):
[0204] QuerySupStationsInfoBiz queryStationsInfoBiz=SpringUtil.getean(QuerySupstationsInfoBiz.class);
[0205] / / Supervisory query power station list
[0206] ReturnSupstationsInfoDT0 resultDT0=new ReturnSupstationsInfoDTo(qveryDT0.getOperatorID(),
[0207] channelconfig.getoperatorId()
[0208] return queryStationsInfoBiz.execute(qveryDTO,resultDTO)
[0209] catch(Exception e){
[0210] log.error("supervise_query_stations_info error:{}",channelcode e)
[0211] throw new CecFlowException(e);}
[0212] }
[0213] Optionally, step 4 includes:
[0214] The system pre-stores and loads the protocol mapping table, and parses the field definition of the target platform's private protocol based on the target platform identifier through database query statements;
[0215] Based on the parsed field definitions, write the conversion program code. The conversion program code converts the fields in the CEC 102-X protocol into the fields of the target platform one by one according to the field correspondence.
[0216] In view of the differences in data types and lengths of different protocols, the code processing logic is used in the process of converting the fields in the China Electric Power Union 102-X protocol into the fields of the target platform one by one: if the length of the source protocol field is greater than the length of the target protocol field, a truncation or compression algorithm is used to ensure that the target platform does not have a parsing error; if the data type is incompatible, it is processed through a forced type conversion function combined with a data verification mechanism to finally generate a data frame that can be recognized by the target platform.
[0217] Optionally, step 5 includes:
[0218] The AES256 algorithm uses dynamic factors as seed values to generate a unique message key through encryption transformation. The message key is then used to encrypt the data frame. The encryption process uses block encryption mode, dividing the data frame into fixed-length blocks, which are encrypted group by group to generate encrypted data blocks. Dynamic factors include the current system timestamp and the packet sequence number.
[0219] The function that generates the parameter signature digest uses the HMAC-MD5 algorithm, using MD5 as the hash function. The entire message body is encrypted with the preset signature key, and then the MD5 message digest is used to form a new ciphertext. The parameter signature must be capitalized.
[0220] The implementation code for forming a new ciphertext using the Md5 information digest is as follows:
[0221] @Override
[0222] ReturnResult <resulttokendto>executeProcess(QueryTokenDTO query){
[0223] return ReturnResult.success(resultTokenDTO);
[0224] }
[0225] int timeOut = 15*24*60*60;
[0226] ResultTokenDTO resultTokenDTO=new ResultTokenDTO();
[0227] resultTokenDTO.setOperatorID(operatorID);
[0228] / / 15 days validity
[0229] resultTokenDTO.setTokenAvailableTime(timeOut);
[0230] String token=SecureUtil.md5(channelId+query+System.currentTimeMillis());
[0231] resultTokenDTO.setAccessToken(token);
[0232] redisUtil.set(redisKey,resultTokenDTO,timeOut);
[0233] / / Here is a redundant token redis storage for quick verification of whether the token exists
[0234] redisUtil.set("CPO_TOKEN_INFO:"+token,"1",timeOut+600);
[0235] return ReturnResult.success(resultTokenDTO);
[0236] }
[0237] @Override
[0238] CecResp respBody(ReturnResult <resulttokendto>result,ResultTokenDTOdata){
[0239] CecResp cecResp=CecResp.success();
[0240] if(!ReturnResult.isSuccess(result)){
[0241] data.setSuccStat(1);
[0242] data.setFailReason(Integer.valueOf(result.getBusinessCode()));
[0243] data.setFailReasonMsg(result.getMsg());
[0244] cecResp.setData(JSONObject.toJSONString(data));
[0245] return cecResp;
[0246] }
[0247] cecResp.setData(JSONObject.toJSONString(result.getData()));
[0248] The order of parameter signatures is executed after splicing in the order of message bodies. The splicing order is operator identification (organization code), parameter content (transmitted data), timestamp, and data packet sequence number.
[0249] Optionally, step 6 includes:
[0250] Utilize the SSL / TLS encryption library functions built into the operating system to establish an SSL / TLS encrypted channel. At the sending end, encapsulate the data frame and signature digest according to the established message encapsulation format, add header information, form a transmission message, and send it to the receiving end through the encrypted channel. The header information includes the source address, destination address, and message length.
[0251] After receiving the transmission message, the receiving end first uses the pre-shared message key to decrypt the data frame through the decryption algorithm to restore the original data content sent by our platform, that is, the standard data packet obtained in step 1. At the same time, the receiving end uses the same hash check algorithm as the sending end to recalculate the signature digest of the received data frame and compare it with the received original signature digest. If the two are completely consistent, it indicates that the data integrity and authenticity are guaranteed; if they are inconsistent, it is determined that an abnormality has occurred during the data transmission process.
[0252] Data that has been securely transmitted and verified ensures that it has not been tampered with during transmission and that its source is reliable.
[0253] Optionally, step 7 includes:
[0254] When data collection fails, for example, during the real-time data collection process in step 1, the charging pile raw data cannot be obtained due to network failure, sensor failure, etc., the system automatically starts the exponential backoff strategy to retry the operation; according to the set retry interval time sequence, the retry time is gradually extended until the maximum number of retries is reached. If the collection is still unsuccessful, the detailed error information is recorded;
[0255] If an exception occurs during the protocol conversion process in step 4, the system will automatically roll back the converted data and restore it to the state before the conversion. Detailed error information will be recorded in the local error log file for subsequent operation and maintenance troubleshooting. The error log includes the time the error occurred, the protocol version involved, the conversion steps, and the specific error description.
[0256] The system pushes abnormal information to the operation and maintenance system in a standardized alarm format through the cloud platform API. At the same time, combined with the built-in intelligent diagnosis module, it generates repair suggestion reports based on key factors to assist operation and maintenance personnel in quickly resolving problems. The repair suggestion reports cover possible causes of failures, recommended solution steps, and estimated repair time. Key factors include error type and historical processing experience.
[0257] The present application also provides an embodiment of a communication system for interconnecting charging platforms, which implements the method described in the above embodiment, including:
[0258] The data packet module is used to obtain the platform standardized data packet based on the original data of the charging pile;
[0259] The data stream acquisition module is used to obtain the peak-shaving data stream based on the platform standardized data packets;
[0260] The interactive protocol module is used to obtain the China Electricity Council 102-X protocol interactive message based on the data flow after peak clipping;
[0261] The data frame module is used to convert the data frame of the target platform according to the CEC 102-X protocol exchange message;
[0262] The data acquisition module is used to obtain the encrypted data block and signature summary according to the data frame of the target platform;
[0263] A data processing module is used to obtain data that has been securely transmitted and verified based on the encrypted data block and the signature digest;
[0264] The abnormality judgment module is used to obtain repaired data or alarm information based on the data that failed verification in the data processing model or the abnormal data in the data frame module and the data acquisition module.
[0265] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application and not to limit them. Although the present application has been described in detail with reference to the above embodiments, ordinary technicians in the relevant field should understand that the specific implementation methods of the present application can still be modified or replaced by equivalents. Any modification or equivalent replacement that does not depart from the spirit and scope of the present application should be included in the scope of protection of the claims of the present application.< / resulttokendto> < / resulttokendto> < / connectorpo>
Claims
1. A communication method for interconnection between charging platforms, characterized in that: include: Step 1: Obtain the platform standardized data package based on the original data of the charging pile; Step 2: Standardize the data packets according to the platform to obtain the peak-shaving data stream; Step 3: Obtain the CEC 102-X protocol interaction message based on the peak-shaving data flow; Step 4: According to the CEC 102-X protocol interaction message, the data frame converted into the target platform is obtained; Step 5: Get the encrypted data block and signature digest based on the data frame of the target platform; Step 6: Based on the encrypted data block and signature digest, obtain the data that has been securely transmitted and verified; Step 7: Based on the data that failed verification in step 6 or the abnormal data in steps 4 and 5, obtain the repaired data or alarm information.
2. The method according to claim 1, characterized in that The step 1 comprises: According to the messages reported by the charging piles, they are parsed according to different charging pile interaction protocols, and the parsed results are encapsulated into platform standardized data packets.
3. The method according to claim 1, characterized in that The step 2 includes: Using a big data analysis platform, we import historical load data covering message transmission volume and system resource utilization over different time periods. We then use data mining algorithms to deeply mine this historical load data and build a prediction model. This model uses relevant factors, such as trends and periodic patterns in historical load data, to predict system resource requirements for future periods, providing a basis for traffic control in advance. During peak electricity consumption periods, the system monitors in real time whether the current period falls within the preset peak period range; once it is determined to be a peak period, the exponential backoff algorithm is immediately activated to dynamically adjust the data collection frequency; The system monitors network traffic in real time. When network traffic exceeds a preset threshold, it activates a token bucket algorithm. The token bucket algorithm generates tokens at a fixed rate, with each interactive message transmission consuming one token. Non-urgent tasks have a lower priority when acquiring tokens. Priority is given to the transmission of signature digests and encrypted data blocks. The system outputs the data stream after peak clipping, that is, the data stream after frequency adjustment and flow control, and its transmission rhythm is adapted to the network load and system resource status.
4. The method according to claim 1, wherein The step 3 comprises: Users operate through a visual configuration interface that graphically displays data field options for various charging companies; Formulate data mapping rules based on the target platform's private protocol and the CEC 102-X protocol; Based on the data mapping rules, accurately associate the fields of the standardized data packet with the fields of the target platform's private protocol; Based on the data mapping rules, the system's built-in message generation engine runs automatically. The message generation engine automatically fills in the content of each field according to the selected data fields, data mapping rules, encrypted data blocks, and signature digests, in accordance with the message structure template of the China Electricity Union 102-X protocol, and generates interactive messages that comply with the China Electricity Union 102-X protocol.
5. The method according to claim 1, wherein The step 4 comprises: The system pre-stores and loads the protocol mapping table, and parses the field definition of the target platform's private protocol based on the target platform identifier through database query statements; Based on the parsed field definitions, write the conversion program code. The conversion program code converts the fields in the CEC 102-X protocol into the fields of the target platform one by one according to the field correspondence. In view of the differences in data types and lengths of different protocols, the code processing logic is used in the process of converting the fields in the China Electric Power Union 102-X protocol into the fields of the target platform one by one: if the length of the source protocol field is greater than the length of the target protocol field, a truncation or compression algorithm is used to ensure that the target platform does not have a parsing error; if the data type is incompatible, it is processed through a forced type conversion function combined with a data verification mechanism to finally generate a data frame that can be recognized by the target platform.
6. The method according to claim 1, characterized in that The step 5 comprises: The AES256 algorithm uses dynamic factors as seed values to generate a unique message key through encryption transformation. The message key is then used to encrypt the data frame. The encryption process uses block encryption mode, dividing the data frame into fixed-length blocks, which are encrypted group by group to generate encrypted data blocks. Dynamic factors include the current system timestamp and the packet sequence number. The function that generates the parameter signature digest uses the HMAC-MD5 algorithm, using MD5 as the hash function. The entire message body is encrypted with the preset signature key, and then the MD5 message digest is used to form a new ciphertext. The parameter signature must be capitalized. The order of parameter signatures is executed after being spliced in the order of message bodies. The splicing order is operator identification, parameter content, timestamp, and data packet sequence number.
7. The method according to claim 1, characterized in that The step 6 comprises: Utilize the SSL / TLS encryption library functions built into the operating system to establish an SSL / TLS encrypted channel. At the sending end, encapsulate the data frame and signature digest according to the established message encapsulation format, add header information, form a transmission message, and send it to the receiving end through the encrypted channel. The header information includes the source address, destination address, and message length. After receiving the transmission message, the receiving end first uses the pre-shared message key to decrypt the data frame through the decryption algorithm to restore the original data content sent by our platform, that is, the standard data packet obtained in step 1. At the same time, the receiving end uses the same hash check algorithm as the sending end to recalculate the signature digest of the received data frame and compare it with the received original signature digest. If the two are completely consistent, it indicates that the data integrity and authenticity are guaranteed; if they are inconsistent, it is determined that an abnormality has occurred during the data transmission process. Data that has been securely transmitted and verified ensures that it has not been tampered with during transmission and that its source is reliable.
8. The method according to claim 1, characterized in that The step 7 comprises: When data collection fails, for example, during the real-time data collection process in step 1, the charging pile raw data cannot be obtained due to network failure, sensor failure, etc., the system automatically starts the exponential backoff strategy to retry the operation; according to the set retry interval time sequence, the retry time is gradually extended until the maximum number of retries is reached. If the collection is still unsuccessful, the detailed error information is recorded; If an exception occurs during the protocol conversion process in step 4, the system will automatically roll back the converted data and restore it to the state before the conversion. Detailed error information will be recorded in the local error log file for subsequent operation and maintenance troubleshooting. The error log includes the time the error occurred, the protocol version involved, the conversion steps, and the specific error description. The system pushes abnormal information to the operation and maintenance system in a standardized alarm format through the cloud platform API. At the same time, combined with the built-in intelligent diagnosis module, it generates repair suggestion reports based on key factors to assist operation and maintenance personnel in quickly resolving problems. The repair suggestion reports cover possible causes of failures, recommended solution steps, and estimated repair time. Key factors include error type and historical processing experience.
9. A communication system for interconnecting charging platforms, implementing the method according to any one of claims 1 to 8, characterized in that: include: The data packet module is used to obtain the platform standardized data packet based on the original data of the charging pile; The data stream acquisition module is used to obtain the peak-shaving data stream based on the platform standardized data packets; The interactive protocol module is used to obtain the China Electricity Council 102-X protocol interactive message based on the data flow after peak clipping; The data frame module is used to convert the data frame of the target platform according to the CEC 102-X protocol exchange message; The data acquisition module is used to obtain the encrypted data block and signature summary according to the data frame of the target platform; A data processing module is used to obtain data that has been securely transmitted and verified based on the encrypted data block and the signature digest; The abnormality judgment module is used to obtain repaired data or alarm information based on the data that failed verification in the data processing model or the abnormal data in the data frame module and the data acquisition module.
Citation Information
Patent Citations
Method and system for multi-section power distribution of direct current charging pile
CN119408450A
Charging pile group energy management method
CN119459425A
Charging information interconnection and intercommunication method and device, computer equipment and storage medium
CN119697217A
Charging pile intelligent site selection evaluation method and system
CN119962922A
Cited By
Multi-protocol compatible control method of smart home energy router
CN120856809A
Charging pile data access method and system based on medium and electric connection standard protocol, and medium
CN121000538A
Method and device for high-speed transmission of large files from PC (Personal Computer) to Android equipment based on serial port protocol
CN121367697A