WO2022179220A1 - 数据通信处理方法及设备 - Google Patents
数据通信处理方法及设备 Download PDFInfo
- Publication number
- WO2022179220A1 WO2022179220A1 PCT/CN2021/133280 CN2021133280W WO2022179220A1 WO 2022179220 A1 WO2022179220 A1 WO 2022179220A1 CN 2021133280 W CN2021133280 W CN 2021133280W WO 2022179220 A1 WO2022179220 A1 WO 2022179220A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- server
- data
- communication protocol
- vehicle
- configuration file
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 466
- 238000003672 processing method Methods 0.000 title claims abstract description 28
- 238000000034 method Methods 0.000 claims abstract description 66
- 238000004590 computer program Methods 0.000 claims description 52
- 238000012545 processing Methods 0.000 claims description 21
- 230000014509 gene expression Effects 0.000 claims description 10
- 230000006870 function Effects 0.000 description 32
- 238000010586 diagram Methods 0.000 description 13
- 230000009286 beneficial effect Effects 0.000 description 8
- 230000008878 coupling Effects 0.000 description 8
- 238000010168 coupling process Methods 0.000 description 8
- 238000005859 coupling reaction Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/50—Service provisioning or reconfiguring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/38—Services specially adapted for particular environments, situations or purposes for collecting sensor information
Definitions
- the present application relates to the technical field of data communication, and in particular to a data communication processing method and device.
- the concept of the Internet of Vehicles originates from the Internet of Things, also known as the Internet of Vehicles.
- the Internet of Vehicles realizes all-round network links between vehicles and servers, vehicles and vehicles, and vehicles and roadside equipment.
- the Internet of Vehicles uses sensing technology to perceive the status information of vehicles, and uses wireless communication networks and modern intelligent information processing technology to realize intelligent management of traffic, as well as intelligent decision-making of traffic information services and intelligent control of vehicles.
- the vehicle and the server communicate through binary code streams. Therefore, the transmission format of the binary code stream needs to be agreed in advance through the communication protocol of the Internet of Vehicles.
- the vehicle collects vehicle data according to the communication protocol and sends it to the server.
- the server converts the binary code stream sent by the vehicle into corresponding data according to the communication protocol.
- the present application provides a data communication processing method and device, which can analyze data sent by vehicles through various communication protocols in a low-cost and flexible manner.
- the present application provides a data communication processing method, the method comprising:
- the server obtains the configuration file and the identification of the first vehicle, and searches for the first communication protocol based on the identification of the first vehicle.
- the above-mentioned configuration file is used to configure the first communication protocol, and the identification of the above-mentioned first vehicle is associated with the above-mentioned first communication protocol; the first communication protocol is for the above-mentioned first vehicle to collect its own data and/or send the collected data to the above-mentioned server. rule.
- the rules for vehicles to collect their own data and the rules for reporting data to the server can be specified by communication protocols. Due to the diversification of car companies, different communication protocols may be used by different vehicles.
- the server can be configured with a variety of different communication protocols, and the communication protocol adopted by the vehicle is associated with the identification of the corresponding vehicle, so that the server can specify the communication protocol adopted by the vehicle according to the identification of the vehicle, so as to be able to The data reported by the vehicle is correctly parsed based on the communication protocol adopted by the vehicle.
- the application does not need to deploy complex and cumbersome parsing codes for a specific communication protocol, which greatly saves manpower and material resources, saves storage resources and computing resources of servers, and improves the efficiency of service online.
- the data parsing service provided by the server in this application can be well adapted to various vehicle manufacturers and has good reusability. Moreover, since there is no need to deploy different parsing codes based on different protocols, there is no need to frequently upgrade and update, and it has better maintainability.
- the above-mentioned configuration file is stored in the above-mentioned server in the form of a preset model, and the preset model includes the expression forms of data types in multiple different communication protocols.
- the preset model can be applied to a variety of different communication protocols, so that a variety of different communication protocols can be configured and stored in the server, and it is possible to realize the above-mentioned low-cost and flexible service of parsing the data reported by the vehicle .
- the above data types include: validity data types, status data types, numerical data types, and character string data types.
- the above-mentioned preset model includes character string data types, which are an extended data type provided by this application, which can make this application applicable for scenarios with more communication protocols.
- the above-mentioned method further includes: the above-mentioned server determines that the above-mentioned configuration file conforms to a preset rule, and the preset rule is used to determine the rationality of the content of the above-mentioned configuration file.
- the data reported by the vehicle can be parsed correctly in the subsequent analysis based on the protocol, and the probability of parsing errors can be reduced.
- the above-mentioned server determining that the above-mentioned configuration file complies with a preset rule includes: the server determining that the maximum value of the first data in the configuration file is not greater than a specified maximum value, and determining the minimum value of the first data. not less than the specified minimum value.
- the first data may be data of a numerical data type, and the numerical data type may be, for example, a value type.
- the obtaining of the configuration file by the server includes: the server receiving registration information of the first vehicle, where the registration information includes the configuration file.
- the configuration file of the communication protocol is carried in the registration information of the vehicle and sent to the server, which can save the number of times the server receives information and save computing and communication resources.
- the present application provides a data communication processing method, the method comprising:
- the server obtains the configuration file and the identification of the first communication protocol, and searches for the first communication protocol based on the identification of the first communication protocol.
- the configuration file is used to configure the first communication protocol; the first communication protocol is a rule for the first vehicle to collect its own data and/or send the collected data to the above-mentioned server.
- the rules for vehicles to collect their own data and the rules for reporting data to the server can be specified by communication protocols. Due to the diversification of car companies, different communication protocols may be used by different vehicles.
- the server may be configured with a plurality of different communication protocols, and different communication protocols are configured with different communication protocol identifiers, so that the server can specify the communication protocol adopted by the vehicle according to the acquired identification of the communication protocol, so as to be able to The data reported by the vehicle is correctly parsed based on the communication protocol adopted by the vehicle.
- the present application does not need to deploy complex and cumbersome parsing codes for a specific communication protocol, which greatly saves human and material resources, and also saves server storage resources and computer resources, and can improve service. online efficiency.
- the data parsing service provided by the server in this application can be well adapted to various vehicle manufacturers and has good reusability.
- there is no need to deploy different parsing codes based on different protocols there is no need to frequently upgrade and update, and it has better maintainability.
- obtaining the identifier of the first communication protocol by the server includes: receiving the identifier of the first communication protocol from the first vehicle by the server.
- the identification of the communication protocol acquired by the above server is sent by the vehicle to the server, so that the server can find out the communication protocol adopted by the vehicle based on the identification of the communication protocol.
- the above-mentioned configuration file is stored in the above-mentioned server in the form of a preset model, and the preset model includes the expression forms of data types in multiple different communication protocols.
- the preset model can be applied to a variety of different communication protocols, so that a variety of different communication protocols can be configured and stored in the server, and it is possible to realize the above-mentioned low-cost and flexible service of parsing the data reported by the vehicle .
- the above-mentioned method further includes: the above-mentioned server determines that the above-mentioned configuration file conforms to a preset rule, and the preset rule is used to determine the rationality of the content of the above-mentioned configuration file.
- the subsequent data reported by the vehicle can be correctly parsed based on the protocol, reducing the probability of parsing errors.
- the present application provides a data communication processing method, the method comprising: a first vehicle sending an identification of the first vehicle to a server, where the identification is used to search for a first communication protocol, and the first communication protocol is the above-mentioned first communication protocol Rules for the vehicle to collect its own data and/or send the collected data to the above-mentioned server.
- the identification of the vehicle in the server is associated with the communication protocol adopted by the vehicle, and the vehicle sends its own identification to the server, so that the server can find the communication protocol adopted by the vehicle based on the identification of the vehicle, so that it can correctly Parse the data reported by subsequent vehicles.
- the present application provides a data communication processing method, the method comprising: a first vehicle sending an identification of a first communication protocol to a server, where the identification is used to search for the above-mentioned first communication protocol, and the first communication protocol is the above-mentioned first communication protocol.
- the communication protocol adopted by the vehicle in the server is associated with the identification of the communication protocol, and the vehicle sends the identification of the communication protocol adopted by itself to the server, so that the server can find the communication protocol adopted by the vehicle based on the identification. , so that the data reported by subsequent vehicles can be correctly parsed.
- the present application provides a server, the server comprising:
- an acquisition unit configured to acquire a configuration file and an identification of the first vehicle, the configuration file is used to configure a first communication protocol, and the identification of the first vehicle is associated with the first communication protocol;
- the first communication protocol is collected by the first vehicle own data and/or the rules for sending the collected data to the above-mentioned servers;
- a search unit configured to search for the above-mentioned first communication protocol based on the above-mentioned identifier of the above-mentioned first vehicle.
- the server further includes:
- the processing unit is configured to determine that the configuration file conforms to a preset rule, and the preset rule is used to determine the rationality of the content of the configuration file.
- the server may further include a receiving unit and a storage unit.
- a memory unit is used to store data or computer instructions.
- the receiving unit is used to receive messages or data.
- the receiving unit may be a transceiver or an interface
- the storage unit may be a memory
- the processing unit may be a processor
- the present application provides a server, where the server includes:
- an acquisition unit used to acquire a configuration file and an identifier of a first communication protocol, the configuration file is used to configure the first communication protocol;
- the first communication protocol is for the first vehicle to collect its own data and/or send the collected data to the above-mentioned server rules;
- a search unit configured to search for the first communication protocol based on the identifier of the first communication protocol.
- the above server further includes:
- the processing unit is configured to determine that the configuration file conforms to a preset rule, and the preset rule is used to determine the rationality of the content of the configuration file.
- the server may further include a receiving unit and a storage unit.
- a memory unit is used to store data or computer instructions.
- the receiving unit is used to receive messages or data.
- the receiving unit may be a transceiver or an interface
- the storage unit may be a memory
- the processing unit may be a processor
- the application provides a vehicle, the vehicle comprising:
- the sending unit is configured to send the identifier of the vehicle to the server, where the identifier is used to find a first communication protocol, where the first communication protocol is a rule for the vehicle to collect its own data and/or send the collected data to the server.
- the server may further include a storage unit for storing data or computer instructions.
- the transmitting unit may be a transceiver or an interface
- the storage unit may be a memory
- the application provides a vehicle, the vehicle comprising:
- a sending unit used for sending the identification of the first communication protocol to the server, the identification is used to find the first communication protocol, the first communication protocol is the rules for the vehicle to collect its own data and/or send the collected data to the server .
- the server may further include a storage unit for storing data or computer instructions.
- the transmitting unit may be a transceiver or an interface
- the storage unit may be a memory
- the present application provides a server, where the server may include a processor and a memory for implementing the data communication processing method described in the first aspect above.
- the memory is coupled to the processor, and when the processor executes the computer program stored in the memory, the method described in the first aspect or any possible implementation manner of the first aspect can be implemented.
- the server may also include a communication interface for the server to communicate with other servers, for example, the communication interface may be a transceiver, circuit, bus, module or other type of communication interface.
- the server may include:
- the processor is configured to acquire the configuration file and the identifier of the first vehicle, and search for the first communication protocol based on the identifier of the first vehicle.
- the configuration file is used to configure a first communication protocol, and the identification of the first vehicle is associated with the first communication protocol; the first communication protocol is a rule for the first vehicle to collect its own data and/or send the collected data to the server .
- the computer program in the memory in this application can be pre-stored or downloaded from the Internet when the server is used and stored, and this application does not specifically limit the source of the computer program in the memory.
- the coupling in the embodiments of the present application is an indirect coupling or connection between devices, units or modules, which may be in electrical, mechanical or other forms, and is used for information exchange between devices, units or modules.
- the present application provides a server, where the server may include a processor and a memory for implementing the data communication processing method described in the second aspect above.
- the memory is coupled to the processor, and when the processor executes the computer program stored in the memory, the method described in the second aspect or any possible implementation manner of the second aspect can be implemented.
- the server may also include a communication interface for the server to communicate with other servers, for example, the communication interface may be a transceiver, circuit, bus, module or other type of communication interface.
- the server may include:
- the processor is configured to obtain the configuration file and the identifier of the first communication protocol, and search for the first communication protocol based on the identifier of the first communication protocol.
- the configuration file is used to configure the first communication protocol; the first communication protocol is a rule for the first vehicle to collect its own data and/or send the collected data to the server.
- the computer program in the memory in this application can be pre-stored or downloaded from the Internet when the server is used and stored, and this application does not specifically limit the source of the computer program in the memory.
- the coupling in the embodiments of the present application is an indirect coupling or connection between devices, units or modules, which may be in electrical, mechanical or other forms, and is used for information exchange between devices, units or modules.
- the present application provides a vehicle, which includes a processor, a memory, and a communication interface for implementing the data communication processing method described in the third aspect.
- the memory is coupled to the processor, and when the processor executes the computer program stored in the memory, the processor can invoke the communication interface to implement the method described in the third aspect.
- the communication interface is used for the server to communicate with other servers.
- the communication interface may be a transceiver, circuit, bus, module or other type of communication interface.
- the computer program in the memory in this application can be pre-stored or downloaded from the Internet when the server is used and stored, and this application does not specifically limit the source of the computer program in the memory.
- the coupling in the embodiments of the present application is an indirect coupling or connection between devices, units or modules, which may be in electrical, mechanical or other forms, and is used for information exchange between devices, units or modules.
- the present application provides a vehicle, which includes a processor, a memory, and a communication interface for implementing the data communication processing method described in the fourth aspect.
- the memory is coupled to the processor, and when the processor executes the computer program stored in the memory, the processor can invoke the communication interface to implement the method described in the fourth aspect.
- the communication interface is used for the server to communicate with other servers.
- the communication interface may be a transceiver, a circuit, a bus, a module or other types of communication interfaces.
- the computer program in the memory in this application can be pre-stored or downloaded from the Internet when the server is used and stored, and this application does not specifically limit the source of the computer program in the memory.
- the coupling in the embodiments of the present application is an indirect coupling or connection between devices, units or modules, which may be in electrical, mechanical or other forms, and is used for information exchange between devices, units or modules.
- the present application provides a system, the system includes one or more servers, and the servers are the servers described in the ninth aspect or the tenth aspect.
- the present application provides a computer-readable storage medium, where the computer-readable storage medium stores a computer program, and the computer program is executed by a processor to implement the method described in any one of the first aspect; or, The above computer program is executed by a processor to implement the method described in any one of the above second aspects; or, the above computer program is executed by a processor to implement the method described in the above third aspect; or, the above computer program is executed by a processor In order to realize the method described in the fourth aspect.
- the present application provides a computer program product, when the computer program product is executed by a processor, the method described in any one of the first aspects above will be executed; or, when the computer program product is executed by the processor , the method described in any one of the above second aspects will be executed; or, when the above computer program product is executed by the processor, the method described in the above third aspect will be executed; or, the above computer program product will be executed by the processor. , the method described in the fourth aspect above will be executed.
- Figure 1 is a schematic diagram of the format of the data reported by the terminal equipment to the server;
- FIG. 2 shows a schematic diagram of a system architecture to which the data communication processing method provided by the embodiment of the present application is applicable;
- FIG. 3 is a schematic flowchart of a data communication processing method provided by an embodiment of the present application.
- FIG. 4 is a schematic flowchart of another data communication processing method provided by an embodiment of the present application.
- 9 to 12 are schematic diagrams of logical structures of an apparatus provided by an embodiment of the present application.
- FIG. 13 to FIG. 15 are schematic diagrams of hardware structures of a device provided by an embodiment of the present application.
- the first communication protocol described in the embodiments of the present application is a rule for the terminal device to collect its own data and/or send the collected data to the server.
- the first communication protocol may be a CAN bus communication protocol Wait.
- the first communication protocol is the CAN bus communication protocol as an example for introduction, which does not constitute a limitation to the application.
- the rules for the device to collect its own data and/or send the collected data to the server are defined by this.
- Controller area network (CAN)
- CAN is designed as a microcontroller communication system in the automotive environment, exchanging information between various components in the vehicle to form an automotive electronic control network.
- CAN control devices are embedded in components such as engine management systems, transmission controllers, instrumentation equipment, and electronic backbone systems.
- CAN's high performance and reliability have been recognized, in addition to the automotive field, CAN is also widely used in industrial automation, ships, medical equipment, industrial equipment and so on.
- Fieldbus is one of the hotspots of technology development in the field of automation today, and is known as the computer local area network in the field of automation. Its appearance provides a strong technical support for the distributed control system to realize real-time and reliable data communication between nodes.
- CAN data is the data of each component of the terminal equipment collected through the CAN bus in the terminal equipment (for the description of the terminal equipment, please refer to the relevant description in FIG. 2 below).
- the terminal device is a vehicle as an example.
- the CAN data collected through the CAN bus may include, for example, the status validity of the right rear tire indicator, the status of the rapid air leak indicator, and the state of the rapid air leak indicator.
- the data transfer object DTO is a data format whose purpose is to encapsulate data and realize data transfer between layers.
- subcode refers to the binary encoding of a piece of data, through which a unique DTO field can be matched when the server parses the data.
- the collection period refers to the period during which the terminal device collects the data of its various components through the CAN bus. For example, if the terminal device collects data every 1 millisecond, the collection period is 1 millisecond.
- the data collection cycles of different components may be different, or may be the same. This application does not limit the value of the collection period.
- the reporting period refers to the period in which the terminal device sends the data collected through the CAN bus to the server (for the description of the server, please refer to the relevant description in FIG. 2 below). For example, if the terminal device sends data to the server every 10 milliseconds, the reporting period is 10 milliseconds. This application does not limit the specific value of the collection period.
- the CAN data sent by the terminal device to the server is in the form of a binary code stream, that is, the terminal device encodes the collected multiple CAN data to obtain binary data corresponding to each CAN data, and then splices these binary data together to obtain a binary code. stream, and send the binary stream to the server.
- a binary code stream that is, the terminal device encodes the collected multiple CAN data to obtain binary data corresponding to each CAN data, and then splices these binary data together to obtain a binary code. stream, and send the binary stream to the server.
- FIG. 1 exemplarily shows a schematic diagram of the binary code of the CAN data part in the binary code stream sent by the terminal device to the server.
- the reported CAN data includes CAN data collected in three collection cycles as an example, and the present application does not limit the number of collection cycles included in the data reported each time in the specific embodiment.
- the binary code corresponding to each acquisition period includes the information of the data quantity and the acquisition period, each occupying a length of 2 bytes.
- the number of data refers to the number of data reported in the corresponding collection period.
- collection period 1 the data collected in this collection period 1 includes multiple pieces, which are respectively represented by data identifiers such as 1.1, 1.2, etc. Label each data.
- each data corresponds to a valid bit of 1 bit, which is used to indicate whether the data is valid. Exemplarily, if the valid bit is 1, it means that the data is invalid, and if the valid bit is 1 means the data is valid.
- FIG. 2 exemplarily shows a system architecture diagram used by the data communication processing method provided by the present application.
- the system architecture may include one or more (shown as n2 in FIG. 2 ) servers 210 , multiple (shown as n3 in FIG. 2 ) terminal devices 220 , and multiple (shown as n1 in FIG. 2 ) Illustrated) management device 230.
- the terminal device 220 and the management device 230 may communicate with the server 210 interactively.
- the multiple servers 210 may form a server cluster, or form a system such as a data center.
- the n1, n2 and n3 may be integers greater than one.
- the server 210 may be configured to acquire data of the terminal device 220 from the terminal device 220 so as to analyze the state of the terminal device 220 .
- the server 210 may be a physical server or a cloud server or the like.
- a communication interface is deployed in the server 210 for communicating with the management device 230 and the terminal device 220 .
- an add (post) interface, a modify (put) interface, a query (get) interface, a delete (delete) interface, etc. are deployed in the server 210 .
- the management device 230 can call the post interface to send a communication protocol to the server 210; the management device 230 can call the put interface to modify the communication protocol already stored in the server 210; the management device 230 can call the get interface to query the server 210 data, etc.; the management device 230 can call the delete interface to delete the data etc. stored in the server 210.
- the server 210 is also deployed with an application program or software platform for processing the data sent by the management device 230 and processing the data sent by the terminal device 220.
- the application program or software platform may be an Internet of Things management System: Massive connection (ocean connect, OC) software platform.
- Devices such as sensors, motors, instruments and meters in the terminal device 220 can be connected through the CAN bus, and the terminal device 220 can collect the status data of its various components through the CAN bus, and these data can be referred to as CAN data.
- the terminal device 220 can send the collected CAN data to the server 210, and then the server 210 can analyze the state of the terminal device 220 based on the CAN data.
- the terminal device 220 may be a vehicle, a roadside unit, a ship, a robot, or a numerically controlled machine tool, etc. As long as the device collects its own data and sends it to the server 210 through the CAN bus, it belongs to the terminal device described in this application.
- the management device 230 may be a server for managing the terminal device 220 , and an application program or software for managing the terminal device 220 is deployed on the management device 230 .
- the management device 230 can be used to manage various information of the terminal device 220 , such as the identification, online status, health status, user and CAN bus communication protocol used by the terminal device 220 .
- the management device 230 can also send the CAN bus communication protocol used by the terminal device 220 to the server 210, and the server 210 can store the protocol to facilitate subsequent analysis of the CAN data sent by the terminal device 220.
- the management device 230 may be a management device or the like in a manufacturing enterprise of the car, or the management device 230 may be a third-party management device or the like.
- the terminal device 220 may include multiple types or terminal devices manufactured by multiple manufacturers, and the management device 230 may also include corresponding management devices from multiple manufacturers, and so on.
- the CAN bus communication protocols used by the terminal equipment 220 produced by different manufacturers are not necessarily the same, that is, each manufacturer may have its own CAN bus communication protocol used in the terminal equipment manufactured by each manufacturer. superior.
- the CAN data received by the server 210 from the terminal devices 220 of different manufacturers may be collected and reported based on different CAN bus communication protocols, and the server 210 needs to parse the received data based on different CAN bus communication protocols.
- different CAN data refers to the CAN data sent by the terminal device to the server.
- the parsing code of CAN data is deployed on the server 210 to implement the parsing of the received CAN data, but the code can only parse the data of one CAN bus communication protocol.
- the code can only parse the data of one CAN bus communication protocol.
- multiple sets of codes need to be deployed, resulting in a lot of manpower and material resources, and at the same time, the storage resources and computing resources of the server 210 are occupied too much.
- due to the need to deploy multiple sets of parsing codes it requires a long research and development time. Restrict the efficiency of service online.
- the present application provides a data communication processing method, which can parse the data reported by a terminal device through various CAN bus communication protocols in a low-cost and flexible manner.
- a data communication processing method provided by the present application can be applied to the scenario shown in the above-mentioned FIG. 2 , and the method may include but is not limited to the following steps:
- the server acquires a configuration file and an identifier of a first vehicle, where the configuration file is used to configure a first communication protocol, and the identifier of the first vehicle is associated with the first communication protocol; the first communication protocol collects self-data for the first vehicle and/or rules for sending collected data to that server.
- the server may be, for example, the server 210 shown in FIG. 2 above, and the first vehicle may be the terminal device 220 shown in FIG. 2 above.
- a plurality of different communication protocols are configured in the server in the form of configuration files, and these communication protocols are all rules for terminal devices such as vehicles to collect their own data and/or send the collected data to the server.
- the identification of each vehicle in the server is associated with the communication protocol adopted by the vehicle, so that the communication protocol adopted by the vehicle can be found through the identification of the vehicle.
- the configuration file corresponding to the communication protocol includes the content of the communication protocol.
- the configuration file of the communication protocol is the communication protocol.
- the communication protocol sent to the server by the management device described in FIG. 7 and FIG. 8 may be a configuration file of the communication protocol.
- the server is pre-configured with a communication protocol adopted by the first vehicle, that is, the first communication protocol.
- the server may receive the configuration file of the first communication protocol from the management device, and then store the configuration file in the database.
- the server can obtain the configuration file of the first communication protocol through its own input device, for example, the staff directly inputs the content of the first communication protocol into the server to form the configuration file.
- the server After the server obtains the above-mentioned first communication protocol, it can generate an identifier of the first communication protocol and send it to the management device, and the management device sends the registration information of the first vehicle to the server, where the registration information includes the identifier of the first communication protocol and The identifier of the first vehicle, and then the server associates the identifier of the first vehicle with the first communication protocol, so as to facilitate subsequent inquiries.
- the server obtains the above-mentioned first communication protocol, it can generate an identifier of the first communication protocol and send it to the management device, and the management device sends the registration information of the first vehicle to the server, where the registration information includes the identifier of the first communication protocol and The identifier of the first vehicle, and then the server associates the identifier of the first vehicle with the first communication protocol, so as to facilitate subsequent inquiries.
- FIG. 7 For a specific implementation process, reference may be made to the description corresponding to FIG. 7 below, which will not be described in detail here.
- the configuration file of the first communication protocol acquired by the above-mentioned server is carried in the registration information of the first vehicle sent by the management device, and the registration information also includes the identification of the first vehicle, then, the server receives After the registration information is obtained, the identifier of the first vehicle can be associated with the first communication protocol, so as to facilitate subsequent inquiries.
- the server receives After the registration information is obtained, the identifier of the first vehicle can be associated with the first communication protocol, so as to facilitate subsequent inquiries.
- the first vehicle can establish a communication connection with the server, and send the identification of the first vehicle to the server for obtaining data of the corresponding communication protocol Format.
- the server searches for the first communication protocol based on the identifier of the first vehicle.
- the server establishes a communication connection with the first vehicle, and after receiving the identifier of the first vehicle from the first vehicle, searches for the first communication protocol adopted by the first vehicle based on the identifier of the first vehicle. Then, a corresponding data format request is generated based on the first communication protocol and sent to the first vehicle, and the first vehicle collects and reports data to the server based on the data format request. After receiving the data collected and reported by the first vehicle, the server can find the first communication protocol adopted by the first vehicle, and complete the analysis of the data based on the first communication protocol. For a specific implementation process, reference may be made to the description corresponding to FIG. 5 below, which will not be described in detail here.
- the present application provides another data communication processing method, which can be applied to the scenario shown in Fig. 2 above, and the method can include but is not limited to the following steps:
- the server obtains a configuration file and an identifier of a first communication protocol, where the configuration file is used to configure the first communication protocol; the first communication protocol is for the first vehicle to collect its own data and/or send the collected data to the server. rule.
- the server may be, for example, the server 210 shown in FIG. 2 above, and the first vehicle may be the terminal device 220 shown in FIG. 2 above.
- the server may receive the configuration file of the first communication protocol from a management device (for example, the management device 230 shown in FIG. 2 above), and store the configuration file in a database.
- a management device for example, the management device 230 shown in FIG. 2 above
- the configuration file corresponding to the communication protocol includes the content of the communication protocol.
- the configuration file of the communication protocol is the communication protocol.
- the server may generate an identification of the first communication protocol, associate the identification with the first communication protocol, send the identification to the management device, and then generate the first communication protocol.
- the identification of the communication protocol is stored in the first vehicle.
- the identification of the first communication protocol may be stored in the first vehicle when the first vehicle is produced, or the management device may send the first communication protocol to the first vehicle and store it, etc. .
- the identifier of the first communication protocol does not need to be generated by the server, but is sent by the management device to the server.
- the management device sends the first communication protocol to the server
- the identifier of the first communication protocol is sent to the server together.
- the server associates and stores the identifier of the first communication protocol with the first communication protocol for subsequent query.
- the identification of the first communication protocol is also stored in the first vehicle.
- the identification of the first communication protocol may be stored in the first vehicle when the first vehicle is produced, or the management device may send the first communication protocol to the first vehicle and store it, etc. .
- the first vehicle After associating the identifier of the first communication protocol with the first communication protocol in the server, the first vehicle can establish a communication connection with the server, and send the identifier of the first communication protocol stored in the first vehicle to the server to The data format used to obtain the corresponding communication protocol.
- the server searches for the first communication protocol based on the identifier of the first communication protocol.
- the server After receiving the identification of the first communication protocol from the first vehicle, the server searches for the first communication protocol adopted by the first vehicle based on the identification of the first communication protocol. Then, a corresponding data format request is generated based on the first communication protocol and sent to the first vehicle, and the first vehicle collects and reports data to the server based on the data format request. After receiving the data collected and reported by the first vehicle, the server can find the first communication protocol adopted by the first vehicle, and complete the analysis of the data based on the first communication protocol. For a specific implementation process, reference may be made to the description corresponding to FIG. 5 below, which will not be described in detail here.
- the embodiment shown in the above FIG. 4 does not need to associate the first communication protocol with the information of the vehicle, such as the identification of the vehicle, so the server may not store the relevant information of the vehicle, Thereby, the storage resources of the server can be saved.
- the configuration files of different communication protocols in the server can all be stored in the server in the form of a preset model.
- the preset model includes representations of data types in a number of different communication protocols. Exemplarily, the specific form of the preset model can be found in Table 1 and Table 2 below.
- Table 1 exemplarily shows a preset model provided by the present application for expressing various communication protocols uniformly in the server. It can be seen that the preset model includes the unique identifier of the communication protocol, and the identifier is the above-mentioned identifier. The identifier of the mentioned communication protocol. The type of the identification of the communication protocol is required to be a string type.
- the preset model also includes a period during which the terminal device using the communication protocol sends CAN data to the server, which is called a report period.
- the type of the reporting period is required to be an integer type.
- the preset model also includes a specific description of the format of each CAN data in the terminal device using the communication protocol.
- the description of the format of each CAN data can be represented in the form of a list. Exemplarily, reference can be made to Table 2, which is a list of CAN data formats in the preset model provided by this application.
- Table 2 The format requirements for CAN data in the preset model can be exemplarily seen in Table 2. It should be noted that, in the "is mandatory" in Table 2 above, Y indicates that the communication protocol must include the corresponding content, and N indicates that the communication protocol may or may not include the corresponding content. In addition to stipulating the format in which the terminal equipment collects and reports CAN data, Table 2 also provides constraints corresponding to each content, and constraints refer to the conditions that need to be met. The contents of Table 2 are explained one by one as follows:
- Data ID refers to the ID of the reported CAN data, and the type of the ID of the CAN data can be string.
- the CAN data reported by the vehicle includes the validity of the status of the right rear tire indicator, the status of the rapid air leak indicator, the validity of the state of the rapid air leakage indicator, the left front tire pressure value, and the validity of the left front tire pressure value.
- the identifiers of these CAN data can be "1", “2", “3", "4" and "5" in sequence.
- the identifiers of all CAN data required to be reported are consecutive integers.
- the identifiers of all CAN data reported above can also be constrained to characters such as continuous letters, or to a combination of regular characters (such as the data identifier shown in Figure 1), etc., This application does not limit this.
- Data type refers to the data type of CAN data, which can include valid data type, status data type, value data type and string data type. in:
- the valid data type is used to describe the validity of the status or data of the components of the terminal device. For example, it can be agreed that the value 0 is used to indicate invalid and the value 1 is used to indicate valid. For example, assuming that the component of the terminal device is a right rear tire indicator, for the status of the right rear tire indicator, 1 may be used to indicate that the status of the indicator is valid, and 0 may be used to indicate that the status of the indicator is invalid. For the temperature value of the right rear tire, you can also use 1 to indicate that the temperature value is valid, and 0 to indicate that the temperature value is invalid.
- the constraint requires that the data length of the valid data type is 1.
- the data length of the description validity may also be restricted to other lengths, such as 2 or 3, etc., which is not limited in this application.
- the status data type is used to describe the status of the components of the terminal device, which can be embodied in the form of enumeration.
- the length of the data describing the state of the component may be 1.
- the state of the fast leak indicator there are two states, namely not fast leak (not fast leakage) state and fast leak (fast leakage) state, then, 0 can be used to represent not fast leakage state , you can use 1 to represent the fast leakage state.
- the constraint requires that the length of the data of the status data type must be no greater than the maximum number of enumerations that can be represented by the data length, and the corresponding enumeration fields can be found in the DTO attribute for the enumeration status.
- the DTO attribute is the attribute of the data in DTO format obtained by the server after parsing the CAN data reported by the terminal device.
- the enumeration state can be found in the DTO attribute for the corresponding enumeration field, which ensures that each state parsed has a corresponding DTO field.
- the representation values of the two states can be added to the communication protocol and the data format requirements based on the above-mentioned conversion of the communication protocol; and the enumeration type of the left rear door of the DTO attribute must include two states, closed and open.
- the tire temperature corresponds to a total of 3 states, including the three states of normal (normal), high (high) and reserved (reserved).
- the value data type is used to describe the specific values of the components of the terminal device in certain aspects, such as the specific values used to describe the temperature and pressure of the components collected by the sensor, and so on.
- the server parses the CAN data reported by the terminal device, the data of the value data type needs to first convert the reported binary data into decimal data, and then calculate according to the precision and offset specified in the communication protocol to obtain the corresponding value.
- the calculated value needs to be not less than the specified minimum value and not greater than the specified maximum value.
- the calculation method is shown in formula (1).
- accuracy represents the accuracy
- offset represents the offset
- data represents the decimal value obtained according to the binary code stream
- value represents the final data obtained by calculation. It should be noted that the value must be within the range specified by the communication protocol.
- the constraint requires that the maximum value of the data of the value data type must be no greater than the specified maximum value, and the minimum value of the data of the value data type must be no less than the specified minimum value.
- the maximum value calculated according to the data length, precision, and offset must not be greater than the specified maximum value, and the calculated minimum value must not be less than the specified minimum value, that is, the following equations (2) and The relationship of formula (3):
- minimum represents the minimum value of the data
- maximum represents the maximum value of the data.
- the binary length of the data is L
- the maximum value of is the value calculated when data is the above D, that is, D*accuracy+offset.
- the constraint requires that the CAN data be clearly stated in the communication protocol as the data of the status data type.
- the constraint requires that the subcode of all CAN data reported by the terminal device cannot be repeated, that is, each CAN data has a unique subcode.
- the type of string data can be used to describe the manufacturer, type and other data of the terminal device collected by the terminal device, as well as to describe the collected error codes and error information, etc., and can also be used to transmit other text information.
- the binary code of data 1.1 is 10011010, the number of digits is 8, and the data 1.1 occupies the p-th to p+7th bits in the reported binary code stream, then, the binary code of the data 1.1 is specified in The position in the reported binary code stream can be specified as follows: the highest bit of the data 1.1 is the pth bit, and the lowest bit is the p+7th bit. It cannot be specified that the highest bit of the data 1.1 is the p+7th bit, and the lowest bit is the pth bit.
- the acquisition period of a CAN data needs to be able to divide the reporting period of the CAN data, that is, the reporting period is an integer multiple of the acquisition period.
- the data with the same collection period has continuous data identifiers.
- the identifiers of the three data with a collection period of 500 milliseconds can be set to be continuous, such as 1, 2, and 3.
- the identifiers of two data whose acquisition period is 200 milliseconds can also be set to be consecutive, eg, 4 and 5. If the flags of the data with the collection period of 500 milliseconds are set to 1, 3 and 4, and the flags of the data with the collection period of 200 milliseconds are set to 2 and 5, it is illegal.
- the reporting interval of each CAN data cannot overlap.
- FIG. 1 is used as an example for introduction.
- the reporting interval of data 1.1 can be the interval occupied by the binary code and valid bits of data 1.1
- the reporting interval of data 1.2 is the interval occupied by the binary code of data 1.2 and the valid bit. cannot occupy the same number of digits.
- the number of digits occupied by the reporting interval of data 1.1 is from the pth to p+9th
- the number of digits occupied by the reporting interval of data 1.2 is from the p+10th to the p+19th
- the number of bits occupied by the reporting interval of data 1 and 2 is from the p+9th to the p+18th, it is unreasonable, because both data occupy the p+9th bit, which makes it impossible to correctly parse the two data.
- the data format required by the server to the terminal device is also transmitted in the form of a binary code stream, and the issued data format also includes multiple CAN data collection requirements and reporting requirements.
- this The applied data format constraint requires that the binary bits occupied by the requirements of the data format of each CAN data in the binary code stream of the issued data format cannot overlap.
- the highest bit of the binary code required by the data format of a certain CAN data in the binary code stream cannot be at the lowest On the right side of the bit, the lowest bit cannot be on the left side of the highest bit, and the data length calculated from the highest bit and the lowest bit must be consistent with the length of the collected data.
- Fig. 5 shows the interaction flow of the terminal device obtaining the data format requirements corresponding to the communication protocol from the server and reporting the data, which may include but not limited to the following steps:
- the terminal device and the server interact to establish a communication connection.
- the terminal device may be the terminal device 220 shown in the foregoing FIG. 2
- the server may be the server 210 shown in the foregoing FIG. 2 .
- the terminal device can send a connection request to the server to request the server to establish a communication connection with itself.
- the connection request may include the identification of the terminal device.
- the identification of the vehicle may include a factory serial number of the vehicle, a vehicle identification number (VIN), or a license plate number of the vehicle, and the like.
- the server may return a connection establishment response message to the terminal device, thereby completing the establishment of the communication connection between the terminal device and the server.
- the server searches for the first communication protocol.
- the server needs to Issue data format requirements for terminal equipment to collect/report data to terminal equipment, and specify the data format for terminal equipment to collect/report data.
- the data format requirement is obtained by conversion based on the communication protocol adopted by the terminal device (which will be described in detail in step 303 below, and will not be described in detail here), therefore, the server needs to find the communication protocol corresponding to the terminal device first.
- the first communication protocol is the CAN bus communication protocol adopted by the terminal device.
- CAN bus communication protocols are stored in the server, and these CAN bus communication protocols have their own protocol identifiers. Different communication protocols can be uniquely identified in the server, that is, the unique correspondence can be found through the protocol identifiers.
- CAN bus communication protocol is the CAN bus communication protocol adopted by the terminal device.
- the specific implementation of the above-mentioned server searching for the first communication protocol may be: in the server, the identification of the terminal device is associated with the identification of the CAN bus communication protocol adopted by the terminal device, then the server can use the terminal device. Find the identifier of the communication protocol used by it, and then find the first communication protocol through the identifier of the protocol.
- the server directly associates the identification of the terminal device with the CAN bus communication protocol adopted by the terminal device, then the server can directly find the first communication protocol through the identification of the terminal device.
- the identifier of the terminal device stored in the server may be sent to the server when the management device registers the information of the terminal device with the server (for details, please refer to the description of the embodiments shown in FIG.
- the server can obtain the identifier of the terminal device, so that the first communication protocol can be found.
- the specific implementation of the above-mentioned server searching for the first communication protocol may be: the above-mentioned connection request includes the identification of the CAN bus communication protocol adopted by the terminal device, or, after the server and the terminal device establish a connection, The terminal device additionally sends the identification of the CAN bus communication protocol adopted by the terminal device to the server, then the server can find the above-mentioned first communication based on the identification of the CAN bus communication protocol adopted by the terminal device received from the terminal device. protocol.
- the server sends a data format requirement to the terminal device based on the first communication protocol.
- the data format requirement is used to specify the format of the data collected by the terminal device and/or the data sent to the server.
- the terminal device collects data through the CAN bus based on the CAN bus communication protocol it adopts. After collecting the data, it needs to convert the collected CAN data into a binary code stream and send it to the server.
- the CAN data The conversion into binary code stream is also based on the CAN bus communication protocol adopted by the terminal device. That is, the data format of the CAN data collected by the terminal device through the CAN bus, and the format of the binary code stream sent by the terminal device to the server are determined in accordance with the provisions of the CAN bus communication protocol adopted by the terminal device.
- the server since the server subsequently needs to parse the binary code stream of CAN data sent by the terminal device, in order to facilitate the server parsing, the server can convert the CAN bus communication protocol adopted by the terminal device into data format requirements according to preset rules. Then, the server sends the converted data format requirements to the terminal device, so that the terminal device collects data and sends data according to the data format requirements.
- the above preset rules are applicable to all CAN bus communication protocols stored in the server, including the above-mentioned first communication protocol. That is, the server can convert all CAN bus communication protocols into data format requirements corresponding to these CAN bus communication protocols according to the preset rule.
- the above preset rules require that the report period be specified in the communication protocol. And the type of the reporting period is required to be an integer type.
- the above preset rules also require the communication protocol to specify the specific description of the format of each CAN data in the terminal device using the communication protocol. A description of the format of each CAN data can be found in Table 2 above.
- the preset rules can specify the format and constraints for terminal equipment to collect and report CAN data. For the description of the format and constraints, reference may be made to the specific description of Table 2 above, and details are not repeated here.
- Table 1 and Table 2 exemplarily introduces the preset rules required by the server to convert the communication protocol into the data format. It should be noted that the preset rules described above are only an example. In a specific embodiment The preset rules are not limited to those described above.
- the server converts the communication protocol adopted by the terminal device, that is, the first communication protocol, into a data format requirement according to the preset rule, and sends the data format requirement to the terminal device.
- the terminal device collects the first data based on the data format requirement.
- the terminal device After receiving the data format requirements sent by the server, the terminal device parses and obtains the corresponding content, and then collects the data of each component in itself through the CAN bus based on the corresponding data format.
- the terminal device sends the first data to the server based on the data format requirement.
- the terminal device After the terminal device collects the CAN data, it generates a binary code stream of the CAN data according to the reporting format requirements of each CAN data in the data format requirements.
- the generated binary code stream of the CAN data can be called the first data.
- the server sends the first data.
- the server receives the first data, and parses the first data based on the first communication protocol.
- the server After receiving the first data from the terminal device, the server can first find the first communication protocol corresponding to the terminal device, and then analyze the first data based on the first communication protocol to obtain the actually reported CAN data of the terminal device.
- the data may indicate the status of the corresponding components in the terminal device, etc.
- the server can analyze the state of the terminal device based on the CAN data obtained by the analysis, and save the state of the terminal device in the database in real time.
- the server receives the binary code stream reported by the terminal device, that is, after the above-mentioned first data.
- the binary data of each CAN data can be parsed, and then, the actual CAN value is calculated according to the above formula (1), each CAN value corresponds to a certain state information, etc., so that the terminal can be known. The status of the corresponding parts of the equipment, etc.
- the management device may interact with the server to obtain the status information of the terminal device stored in the server.
- the server may interact with the server to obtain the status information of the terminal device stored in the server.
- FIG. 6 in the above step 506, after the server receives the first data and parses the first data based on the first communication protocol, the following steps may also be included but not limited to:
- the management device sends a status query request of the terminal device to the server.
- the status query request may include the identifier of the terminal device.
- the server acquires the status information of the terminal device based on the status query request.
- the server After receiving the status query request, the server obtains the identification of the terminal device by parsing, and finds the latest status information of the terminal device in the database through the identification.
- the server sends the state information of the terminal device to the management device.
- the server After acquiring the latest state information of the terminal device, the server encapsulates it into a message and sends it to the management device.
- the management device can know the state of the terminal device through the state information of the terminal device, so as to make corresponding judgments and controls. For example, it can determine whether the terminal device is abnormal. If it is abnormal, the user needs to be reminded to reduce accidental damage, etc. Wait.
- the server may not analyze the data, and may directly store the received data in the database. Then, the management device can interact with the server to obtain CAN data of the terminal device, and then the management device analyzes the state of the corresponding terminal device based on the CAN data.
- the identification of the terminal equipment is associated with the identification of the CAN bus communication protocol adopted by the terminal equipment, or the identification of the terminal equipment is associated with the identification of the terminal equipment in the server.
- the CAN bus communication protocol is directly related, which can be implemented by the embodiment shown in FIG. 7 . Referring to Figure 7, the following steps may be included but not limited to:
- the management device sends the foregoing first communication protocol to the server.
- the management device may configure the communication protocol adopted by the terminal device, and the following description will be given by taking the communication protocol adopted by the terminal device as the first communication protocol as an example.
- the management device may send the first communication protocol adopted by the terminal device to the server for storage in the server.
- the management device may call the post interface of the server to send the first communication protocol to the server.
- the server receives the first communication protocol, and generates an identifier of the first communication protocol.
- the server After the server receives the first communication protocol, since the server needs to manage a plurality of different communication protocols, in order to facilitate management, a unique identifier can be configured for each communication protocol. Therefore, the server can generate a unique identifier for the first communication protocol.
- the server sends the identifier of the first communication protocol to the management device.
- the management device After receiving the identifier of the first communication protocol sent by the server, the management device can associate the identifier of the first communication protocol with the information of the terminal device using the first communication protocol.
- the management device sends the registration information of the terminal device to the server, where the registration information includes the identifier of the terminal device and the identifier of the first communication protocol.
- the management device Before the terminal device establishes a communication connection with the server, the management device needs to register the information of the terminal device in the server. Therefore, the management device can send the registration information of the terminal device to the server, and the registration information can include the identification of the terminal device, the information of the user to which the terminal device belongs, the relevant status of the terminal device, and the communication protocol adopted by the terminal device. Information such as the identifier of the first communication protocol. It should be noted that the registration information of the terminal device may include any information related to the terminal device, which is not limited in this application.
- the server completes the registration based on the registration information, and associates the identifier of the terminal device, the identifier of the first communication protocol, and the first communication protocol.
- the server After receiving the above registration information, the server completes the registration operation of the terminal device based on the registration information.
- the registration operation may be, for example, storing the registration information in a database, etc., which is not limited in this application.
- the server also associates the identification of the terminal device and the identification of the first communication protocol in the registration information with the first communication protocol already stored in the server, so as to facilitate subsequent searching.
- the server may also find the first communication protocol based on the identification of the first communication protocol, and only associate the identification of the first communication protocol with the first communication protocol.
- the server sends registration response information to the management device.
- the server After the server completes the registration, it sends a registration completion response message to the management device to inform the management device that the registration is completed.
- the identification of the terminal equipment is associated with the identification of the CAN bus communication protocol adopted by the terminal equipment, or the identification of the terminal equipment is associated with the identification of the terminal equipment in the server.
- the CAN bus communication protocol is directly related, and can also be implemented by the embodiment shown in FIG. 8 . Referring to Figure 8, the following steps may be included but not limited to:
- the management device sends registration information of the terminal device to the server, where the registration information includes an identifier of the terminal device and a first communication protocol.
- the management device does not send the first communication protocol to the server separately, but carries the first communication protocol in the above registration information, They are sent to the management device together, so that some interaction steps can be saved, thereby saving bandwidth resources and computing resources of the two devices. Except for this difference, for the specific implementation of the other steps shown in FIG. 8 , refer to the corresponding descriptions of the steps shown in FIG. 7 above, which will not be repeated here.
- the server may check whether the first communication protocol meets the preset requirements. Specifically, the server can check whether the first communication protocol meets the preset requirements according to the constraints in the above preset rules (for example, the constraints shown in Table 2), and only if the first communication protocol meets the preset requirements , the server generates the identifier of the first communication protocol. If the first communication protocol does not meet the preset requirements, the server may send a message indicating that the first communication protocol is unqualified to the management device, for example, directly returning an error message and the like.
- the server may send a message indicating that the first communication protocol is unqualified to the management device, for example, directly returning an error message and the like.
- the connection request described in the above step 502 includes the identification of the CAN bus communication protocol adopted by the terminal device, or, after the server and the terminal device establish a connection, the terminal device additionally sends the server to the server.
- the identification of the CAN bus communication protocol adopted by the terminal equipment can be realized through the following two possible implementations:
- the first possible implementation manner the management device may acquire the identifier of the first communication protocol according to the implementation shown in FIG. 7 or FIG. 8 and possible implementations thereof, and then the management device may communicate the first communication protocol with the first communication protocol.
- the identifier of the protocol is sent to the above-mentioned terminal device, and the terminal device stores the identifier of the first communication protocol.
- the management device is the management device of the manufacturer, during the manufacturing process of the terminal device, the identifier of the first communication protocol is stored therein, and the identifier of the first communication protocol comes from the above management The identity the device received from the server.
- the identification of the first communication protocol may be carried in the connection request; or, after the connection between the server and the terminal device is established, the terminal device may additionally send the first communication protocol to the server. 's identification.
- the server may not store the mapping relationship between the identifier of the terminal device and the identifier of the first communication protocol, or may not store the mapping relationship between the identifier of the terminal device and the first communication protocol.
- the management device sends a first communication protocol to the server, and the first communication protocol may be sent by the management device to the server alone (for example, refer to the embodiment shown in FIG. 7 above) Alternatively, the first communication protocol may be carried by the management device in the registration information of the terminal device and sent to the server (for example, refer to the embodiment shown in FIG. 8 above).
- the management device may also send the identifier of the first communication protocol to the server, and then the server associates the first communication protocol with the received protocol identifier , for subsequent inquiries.
- the unique identifier of the communication protocol is provided by the management device, not generated by the server.
- the management device may send the identifier of the first communication protocol to the terminal device in advance, or store the protocol identifier therein when the terminal device is produced. Therefore, when the terminal device sends a connection request to the server, the identification of the first communication protocol may be carried in the connection request; or, after the connection between the server and the terminal device is established, the terminal device may additionally send the first communication protocol to the server. 's identification.
- the identifier of the first communication protocol sent by the management device to the server needs to satisfy that the identifier is the unique protocol identifier in the server, otherwise, the server can regenerate a new unique identifier for the first communication protocol.
- the above-mentioned server receives the first communication protocol and its protocol identifier from the management device, and before associating them, may first check whether the first communication protocol meets the preset requirements. Specifically, the server can check whether the first communication protocol meets the preset requirements according to the constraints in the above preset rules (for example, the constraints shown in Table 2), and only if the first communication protocol meets the preset requirements , the server associates the first communication protocol and its protocol identifier. If the first communication protocol does not meet the preset requirements, the server may send a message indicating that the first communication protocol is unqualified to the management device, for example, directly returning an error message and the like.
- the server may send a message indicating that the first communication protocol is unqualified to the management device, for example, directly returning an error message and the like.
- a plurality of different communication protocols can be configured in the server, and the communication protocol adopted by the vehicle is associated with the identification of the corresponding vehicle or the identification of the communication protocol, so that the server can
- the identification or the identification of the communication protocol specifies the communication protocol adopted by the vehicle, so that the data reported by the vehicle can be correctly parsed based on the communication protocol adopted by the vehicle.
- the present application does not need to deploy complex and cumbersome parsing codes for a specific communication protocol, which greatly saves human and material resources, and also saves server storage resources and computer resources, and can improve service. online efficiency.
- the data parsing service provided by the server in this application can be well adapted to various vehicle manufacturers and has good reusability.
- since there is no need to deploy different parsing codes based on different protocols there is no need to frequently upgrade and update, and it has better maintainability.
- each device includes corresponding hardware structures and/or software modules for performing each function.
- the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is performed by hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Skilled artisans may implement the described functionality using different methods for each particular application, but such implementations should not be considered beyond the scope of this application.
- the device may be divided into functional modules according to the foregoing method examples.
- each functional module may be divided corresponding to each function, or two or more functions may be integrated into one module.
- the above-mentioned integrated modules can be implemented in the form of hardware, and can also be implemented in the form of software function modules. It should be noted that, the division of modules in the embodiments of the present application is schematic, and is only a logical function division, and there may be other division manners in actual implementation.
- FIG. 9 shows a schematic diagram of a possible logical structure of the device, and the device may be the above-mentioned server, or may be a chip in the server, or may be the server processing system, etc.
- the apparatus 900 includes an acquisition unit 901 and a search unit 902 . in:
- Obtaining unit 901 configured to obtain a configuration file and an identifier of a first vehicle, where the configuration file is used to configure a first communication protocol, and the identifier of the first vehicle is associated with the first communication protocol; the first communication protocol is the first vehicle Rules for collecting own data and/or sending collected data to the device 900 .
- the obtaining unit 901 can perform the operations described in step 301 shown in FIG. 3 .
- the searching unit 902 is configured to search for the first communication protocol based on the identifier of the first vehicle.
- the search unit 902 may perform the operations described in step 302 shown in FIG. 3 .
- the configuration file is stored in the device 900 in the form of a preset model, where the preset model includes expressions of data types in multiple different communication protocols.
- the apparatus 900 further includes: a processing unit, configured to determine that the configuration file complies with a preset rule, and the preset rule is used to determine the rationality of the content of the configuration file.
- the processing unit is specifically configured to: determine that the maximum value of the first data in the configuration file is not greater than a specified maximum value, and determine that the minimum value of the first data is not less than a specified minimum value.
- the obtaining unit 901 is specifically configured to: receive registration information of the first vehicle, where the registration information includes the configuration file.
- the above-mentioned apparatus 900 may further include a receiving unit and a storage unit.
- a memory unit is used to store data or computer instructions.
- the receiving unit is used to receive messages or data.
- the receiving unit may be a transceiver or an interface
- the storage unit may be a memory
- the processing unit may be a processor
- FIG. 10 shows a schematic diagram of a possible logical structure of the device, and the device may be the above-mentioned server, or may be a chip in the server, or may be the server processing system, etc.
- the apparatus 1000 includes an acquisition unit 1001 and a search unit 1002 . in:
- the obtaining unit 1001 is used to obtain a configuration file and an identifier of a first communication protocol, the configuration file is used to configure the first communication protocol; the first communication protocol collects its own data for the first vehicle and/or sends the collected data to The device 1000 rules.
- the obtaining unit 1001 may perform the operations described in step 401 shown in FIG. 4 .
- the searching unit 1002 is configured to search for the first communication protocol based on the identifier of the first communication protocol.
- the search unit 1002 may perform the operations described in step 402 shown in FIG. 4 .
- the obtaining unit 1001 is specifically configured to: receive the identifier of the first communication protocol from the first vehicle.
- the configuration file is stored in the device 1000 in the form of a preset model, where the preset model includes expressions of data types in multiple different communication protocols.
- the apparatus 1000 further includes: a processing unit, configured to determine that the configuration file complies with a preset rule, and the preset rule is used to determine the rationality of the content of the configuration file.
- the above apparatus 1000 may further include a receiving unit and a storage unit.
- a memory unit is used to store data or computer instructions.
- the receiving unit is used to receive messages or data.
- the receiving unit may be a transceiver or an interface
- the storage unit may be a memory
- the processing unit may be a processor
- FIG. 11 shows a schematic diagram of a possible logical structure of the apparatus, and the apparatus may be the above-mentioned terminal device (for example, the above-mentioned first vehicle), or the A chip in a terminal device, or it may be a processing system in the terminal device, or the like.
- the apparatus 1100 includes a sending unit 1101 . in:
- the sending unit 1101 is configured to send an identifier of the vehicle to a server, where the identifier is used to find a first communication protocol, where the first communication protocol is a rule for the vehicle to collect its own data and/or send the collected data to the server.
- the server may further include a storage unit 1102 for storing data or computer instructions.
- the sending unit 1101 may be a transceiver or an interface
- the storage unit 1102 may be a memory
- FIG. 12 shows a possible schematic diagram of the logical structure of the apparatus, and the apparatus may be the above-mentioned terminal device (for example, the above-mentioned first vehicle), or the A chip in a terminal device, or it may be a processing system in the terminal device, or the like.
- the apparatus 1200 includes a sending unit 1201 . in:
- the sending unit 1201 is used to send the identification of the first communication protocol to the server, where the identification is used to find the first communication protocol, and the first communication protocol is for the vehicle to collect its own data and/or send the collected data to the server. rule.
- the server may further include a storage unit 1202 for storing data or computer instructions.
- the sending unit 1201 may be a transceiver or an interface
- the storage unit 1202 may be a memory
- FIG. 13 is a schematic diagram of a possible hardware structure of the device provided by the present application, and the device may be the server in the method described in the foregoing embodiment.
- the device 1300 includes: a processor 1301 , a memory 1302 and a communication interface 1303 .
- the processor 1301 , the communication interface 1303 , and the memory 1302 may be connected to each other or to each other through a bus 1304 .
- the memory 1302 is used to store computer programs and data of the device 1300, and the memory 1302 may include, but is not limited to, random access memory (RAM), read-only memory (ROM), memory Erase programmable read only memory (erasable programmable read only memory, EPROM) or portable read only memory (compact disc read-only memory, CD-ROM), etc.
- RAM random access memory
- ROM read-only memory
- EPROM erasable programmable read only memory
- portable read only memory compact disc read-only memory
- the processor 1301 can not only call the program codes in the memory 1302 to realize some functions, but also cooperate with other The components (eg, the communication interface 1303 ) together perform other functions (eg, the function of receiving or sending data) described in the embodiment of FIG. 9 .
- the number of the communication interfaces 1303 may be multiple, and is used to support the device 1300 to communicate, such as receiving or sending data or signals.
- the processor 1301 may be a central processing unit, a general purpose processor, a digital signal processor, an application specific integrated circuit, a field programmable gate array or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof.
- a processor may also be a combination that performs computing functions, such as a combination comprising one or more microprocessors, a combination of a digital signal processor and a microprocessor, and the like.
- the processor 1301 can be used to read the program stored in the above-mentioned memory 1302, and perform the following operations:
- the configuration file and the identification of the first vehicle are obtained, and the first communication protocol is searched based on the identification of the first vehicle.
- the above-mentioned configuration file is used to configure the first communication protocol, and the identification of the above-mentioned first vehicle is associated with the above-mentioned first communication protocol; the first communication protocol is for the above-mentioned first vehicle to collect its own data and/or to send the collected data to the above-mentioned device 1300. the rule of.
- the above-mentioned configuration file is stored in the above-mentioned device 1300 in the form of a preset model, and the preset model includes the expression forms of data types in multiple different communication protocols.
- the data types include: validity data types, status data types, numerical data types, and character string data types.
- the processor 1301 further performs the following operation: it is determined that the above-mentioned configuration file conforms to a preset rule, and the preset rule is used to determine the rationality of the content of the above-mentioned configuration file.
- the above-mentioned determining that the configuration file complies with a preset rule includes: determining that the maximum value of the first data in the configuration file is not greater than a specified maximum value, and determining that the minimum value of the first data is not less than a specified value. the minimum value of .
- the first data may be data of a numerical data type, and the numerical data type may be, for example, a value type.
- the obtaining of the configuration file includes: receiving registration information of the first vehicle through the communication interface 1303 , where the registration information includes the configuration file.
- FIG. 14 is a schematic diagram of a possible hardware structure of the device provided by the present application, and the device may be the server in the method described in the foregoing embodiment.
- the device 1400 includes: a processor 1401 , a memory 1402 and a communication interface 1403 .
- the processor 1401 , the communication interface 1403 , and the memory 1402 may be connected to each other or to each other through a bus 1404 .
- the memory 1402 is used to store computer programs and data of the device 1400, and the memory 1402 may include, but is not limited to, random access memory (RAM), read-only memory (ROM), memory Erase programmable read only memory (erasable programmable read only memory, EPROM) or portable read only memory (compact disc read-only memory, CD-ROM), etc.
- RAM random access memory
- ROM read-only memory
- EPROM erasable programmable read only memory
- portable read only memory compact disc read-only memory
- the software or program codes required to perform the functions of all or part of the units in FIG. 10 are stored in the memory 1402 .
- the processor 1401 can not only call the program codes in the memory 1402 to realize some functions, but also cooperate with other The components (such as the communication interface 1403 ) together perform other functions (such as the function of receiving or sending data) described in the embodiment of FIG. 10 .
- the number of communication interfaces 1403 may be multiple, and is used to support the device 1400 to communicate, such as receiving or sending data or signals.
- the processor 1401 may be a central processing unit, a general purpose processor, a digital signal processor, an application specific integrated circuit, a field programmable gate array or other programmable logic device, a transistor logic device, a hardware component, or any combination thereof.
- a processor may also be a combination that performs computing functions, such as a combination comprising one or more microprocessors, a combination of a digital signal processor and a microprocessor, and the like.
- the processor 1401 can be used to read the program stored in the above-mentioned memory 1402, and perform the following operations:
- the configuration file and the identifier of the first communication protocol are acquired, and the first communication protocol is searched based on the identifier of the first communication protocol.
- the configuration file is used to configure the first communication protocol; the first communication protocol is a rule for the first vehicle to collect its own data and/or send the collected data to the above-mentioned device 1400 .
- the obtaining of the identifier of the first communication protocol includes: receiving the identifier of the first communication protocol from the first vehicle through the communication interface 1403 .
- the above-mentioned configuration file is stored in the above-mentioned device 1400 in the form of a preset model, and the preset model includes the expression forms of data types in multiple different communication protocols.
- the above-mentioned processor 1401 further performs the following operation: it is determined that the above-mentioned configuration file complies with a preset rule, and the preset rule is used to determine the rationality of the content of the above-mentioned configuration file.
- FIG. 15 is a schematic diagram of a possible hardware structure of the device provided by the present application, and the device may be the terminal device (eg, may be the first vehicle described above) in the method described in the foregoing embodiment.
- the device 1500 includes: a processor 1501 , a memory 1502 and a communication interface 1503 .
- the processor 1501 , the communication interface 1503 , and the memory 1502 may be connected to each other or to each other through a bus 1504 .
- the memory 1502 is used to store computer programs and data of the device 1500, and the memory 1502 may include, but is not limited to, random access memory (RAM), read-only memory (ROM), memory Erase programmable read only memory (erasable programmable read only memory, EPROM) or portable read only memory (compact disc read-only memory, CD-ROM), etc.
- RAM random access memory
- ROM read-only memory
- EPROM erasable programmable read only memory
- portable read only memory compact disc read-only memory
- the processor 1501 not only calls the program codes in the memory 1502 to implement some functions, but also Other functions (such as the function of receiving or sending data) described in the embodiment of FIG. 11 or FIG. 12 may be completed in cooperation with other components (such as the communication interface 1503 ).
- the number of the communication interfaces 1503 may be multiple, and is used to support the device 1500 to communicate, such as receiving or sending data or signals.
- the processor 1501 may be a central processing unit, a general purpose processor, a digital signal processor, an application specific integrated circuit, a field programmable gate array or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof.
- a processor may also be a combination that performs computing functions, such as a combination comprising one or more microprocessors, a combination of a digital signal processor and a microprocessor, and the like.
- the processor 1501 can be used to read the program stored in the above-mentioned memory 1502, and perform the following operations:
- the identifier of the first vehicle is sent to the server, where the identifier is used to find the first communication protocol, where the first communication protocol is the rule for the first vehicle to collect its own data and/or send the collected data to the server.
- the processor 1501 can be used to read the program stored in the above-mentioned memory 1502, and perform the following operations:
- the identifier of the first communication protocol is sent to the server, where the identifier is used to find the first communication protocol, and the first communication protocol is the rule for the first vehicle to collect its own data and/or send the collected data to the server.
- Embodiments of the present application further provide a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, and the computer program is executed by a processor to implement any one of the foregoing embodiments and possible embodiments thereof. The operation done by the server.
- Embodiments of the present application further provide a computer-readable storage medium, where a computer program is stored in the computer-readable storage medium, and the computer program is executed by a processor to implement any one of the foregoing embodiments and possible embodiments thereof.
- the operation done by the terminal device (such as the above-mentioned first vehicle).
- the embodiments of the present application also provide a computer program product, when the computer program product is read and executed by a computer, the operations performed by the server in any one of the foregoing embodiments and possible embodiments thereof will be executed.
- the embodiments of the present application also provide a computer program product, when the computer program product is read and executed by a computer, the terminal device (for example, the above-mentioned first vehicle) in any one of the foregoing embodiments and its possible embodiments The action will be executed.
- the embodiments of the present application also provide a computer program, which, when executed on a computer, enables the computer to implement the operations performed by the server in any one of the foregoing embodiments and possible embodiments.
- the embodiments of the present application also provide a computer program, which, when executed on a computer, will enable the computer to implement the terminal device in any one of the foregoing embodiments and its possible embodiments (for example, the foregoing first vehicle) operations.
- An embodiment of the present application further provides a system, where the system includes the server described in any one of the foregoing embodiments and possible embodiments, and the server may be, for example, the server 210 shown in FIG. 1 .
- the data communication processing method and device provided by the present application can analyze data sent by vehicles through various communication protocols in a low-cost and flexible manner.
- first, second and other words are used to distinguish the same or similar items with basically the same function and function, and it should be understood that between “first”, “second” and “nth” There are no logical or timing dependencies, and no restrictions on the number and execution order. It will also be understood that, although the following description uses the terms first, second, etc. to describe various elements, these elements should not be limited by the terms. These terms are only used to distinguish one element from another. For example, a first image may be referred to as a second image, and, similarly, a second image may be referred to as a first image, without departing from the scope of various described examples. Both the first image and the second image may be images, and in some cases, may be separate and distinct images.
- the size of the sequence number of each process does not mean the sequence of execution, and the execution sequence of each process should be determined by its function and internal logic, and should not be used in the embodiment of the present application. Implementation constitutes any limitation.
- references throughout the specification to "one embodiment,” “an embodiment,” and “one possible implementation” mean that a particular feature, structure, or characteristic associated with the embodiment or implementation is included herein. in at least one embodiment of the application. Thus, appearances of "in one embodiment” or “in an embodiment” or “one possible implementation” in various places throughout this specification are not necessarily necessarily referring to the same embodiment. Furthermore, the particular features, structures or characteristics may be combined in any suitable manner in one or more embodiments.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Small-Scale Networks (AREA)
Abstract
本申请实施例公开了一种数据通信处理方法及设备,该方法包括:服务器获取配置文件和第一车辆的标识,该配置文件用于配置第一通信协议,该第一车辆的标识关联该第一通信协议;该第一通信协议为该第一车辆采集自身数据和/或将采集的数据发送给该服务器的规则;该服务器基于该第一车辆的标识,查找该第一通信协议。本申请能够低成本且灵活地解析车辆通过各种不同的通信协议发送的数据。
Description
本申请要求于2021年02月24日提交中国专利局、申请号为202110206223.3、申请名称为“数据通信处理方法及设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及数据通讯技术领域,具体涉及数据通信处理方法及设备。
车联网的概念源于物联网,又称为车辆物联网。车联网通过新一代信息通信技术,实现车与服务器、车与车、车与路侧设备等全方位网络链接。车联网是利用传感技术感知车辆的状态信息,并借助无线通信网络与现代智能信息处理技术实现交通的智能化管理,以及实现交通信息服务的智能决策和车辆的智能化控制。在采集车辆状态信息时,考虑到通信***的性能,车辆与服务器之间是通过二进制码流进行通信的。因此,需要提前通过车联网的通信协议约定该二进制码流的传输格式,车辆根据该通信协议采集车辆数据并发送给服务器,服务器根据该通信协议将车辆发送的二进制码流转换成对应的数据。
但是,随着车联网的发展,各个汽车企业推出越来越多不同的车联网通信协议,因此,如何低成本且灵活地解析车辆通过各种不同的通信协议发送的数据是本领域技术人员急需解决的技术问题。
发明内容
本申请提供一种数据通信处理方法及设备,能够低成本且灵活地解析车辆通过各种不同的通信协议发送的数据。
第一方面,本申请提供一种数据通信处理方法,该方法包括:
服务器获取配置文件和第一车辆的标识,并基于该第一车辆的标识查找第一通信协议。上述配置文件用于配置该第一通信协议,上述第一车辆的标识关联上述第一通信协议;该第一通信协议为上述第一车辆采集自身数据和/或将采集的数据发送给上述服务器的规则。
在车联网中,车辆采集自身的数据的规则以及向服务器上报数据的规则可以通过通信协议来规定,由于车企的多元化,不同的车辆采用的通信协议可能不同。在本申请中,服务器中可以配置有多种不同的通信协议,并且将车辆所采用的通信协议与对应车辆的标识关联,以使得服务器可以根据车辆的标识明确车辆所采用的通信协议,从而能够基于车辆所采用的通信协议正确解析出车辆上报的数据。本申请无需针对一个具体的通信协议部署复杂繁琐的解析代码,极大地节省了人力物力,也节省了服务器的存储资源和计算资源,提高了服务上线的效率。另外,本申请中服务器所提供的数据解析服务,可以很好地适配各种不同的车辆生产制造商,具有很好地复用性。且,由于无需基于不同的协议部署不同的解析代码,从而无需频繁升级更新,具有更好的可维护性。
一种可能的实施方式中,上述配置文件通过预设模型的形式存储在上述服务器中,该预设模型包括多种不同通信协议中的数据种类的表达形式。
在本申请中,该预设模型可以适用于多种不同的通信协议,从而使得服务器中可以配置并存储多种不同的通信协议,为实现上述低成本且灵活地解析车辆上报数据的服务提供可能。
一种可能的实施方式中,上述数据种类包括:有效性数据种类、状态数据种类、数值数据种类和字符串数据种类。
在本申请中,考虑到通信协议中的数据种类的丰富性,上述预设模型中包括字符串数据种类,该字符串数据种类是本申请提供的一种扩展的数据种类,能够使得本申请适用于更多的通信协议的场景。
一种可能的实施方式中,上述方法还包括:上述服务器确定上述配置文件符合预设规则,该预设规则用于判定上述配置文件的内容的合理性。
在本申请中,通过检验通信协议对应的配置文件的合理性,能够在后续基于协议解析车辆上报的数据时可以正确解析,减少解析出错的概率。
一种可能的实施方式中,上述服务器确定上述配置文件符合预设规则,包括:该服务器确定该配置文件中第一数据的最大值不大于规定的最大值,并确定该第一数据的最小值不小于规定的最小值。
该第一数据可以是数值数据种类的数据,该数值数据种类例如可以是value种类。
一种可能的实施方式中,上述服务器获取配置文件,包括:该服务器接收上述第一车辆的注册信息,该注册信息包括上述配置文件。
在本申请中,将通信协议的配置文件携带在车辆的注册信息中发送给服务器,可以节省服务器接收信息的次数,节省计算和通信资源。
第二方面,本申请提供一种数据通信处理方法,该方法包括:
服务器获取配置文件和第一通信协议的标识,并基于该第一通信协议的标识查找该第一通信协议。该配置文件用于配置该第一通信协议;该第一通信协议为第一车辆采集自身数据和/或将采集的数据发送给上述服务器的规则。
在车联网中,车辆采集自身的数据的规则以及向服务器上报数据的规则可以通过通信协议来规定,由于车企的多元化,不同的车辆采用的通信协议可能不同。在本申请中,服务器中可以配置有多个不同的通信协议,不同的通信协议配置有不同的通信协议标识,以使得服务器可以根据获取的通信协议的标识明确车辆所采用的通信协议,从而能够基于车辆所采用的通信协议正确解析出车辆上报的数据。相比于现有的方案,本申请无需针对一个具体的通信协议部署复杂繁琐的解析代码,极大地节省了人力物力资源的同时,也节省了服务器的存储资源和计算机资源,且可以提高了服务上线的效率。另外,本申请中服务器所提供的数据解析服务,可以很好地适配各种不同的车辆生产制造商,具有很好地复用性。且,由于无需基于不同的协议部署不同的解析代码,从而无需频繁升级更新,具有更好的可维护性。
一种可能的实施方式中,上述服务器获取上述第一通信协议的标识,包括:上述服务器接收来自上述第一车辆的上述第一通信协议的标识。
在本申请中,上述服务器获取的通信协议的标识是由车辆发送给服务器的,从而使得服务器可以基于通信协议的标识查找到该车辆所采用的通信协议。
一种可能的实施方式中,上述配置文件通过预设模型的形式存储在上述服务器中,该预设模型包括多种不同通信协议中的数据种类的表达形式。
在本申请中,该预设模型可以适用于多种不同的通信协议,从而使得服务器中可以配置并存储多种不同的通信协议,为实现上述低成本且灵活地解析车辆上报数据的服务提供可能。
一种可能的实施方式中,上述方法还包括:上述服务器确定上述配置文件符合预设规则,该预设规则用于判定上述配置文件的内容的合理性。
在本申请中,通过检验通信协议对应的配置文件的合理性,能够使得后续基于协议解析 车辆上报的数据时可以正确解析,减少解析出错的概率。
第三方面,本申请提供一种数据通信处理方法,该方法包括:第一车辆向服务器发送该第一车辆的标识,该标识用于查找第一通信协议,该第一通信协议为上述第一车辆采集自身数据和/或将采集的数据发送给上述服务器的规则。
在本申请中,在服务器中车辆的标识与车辆所采用的通信协议关联,车辆将自身的标识发送给服务器,使得服务器可以基于该车辆的标识查找到该车辆所采用的通信协议,从而可以正确解析后续车辆上报的数据。
第四方面,本申请提供一种数据通信处理方法,该方法包括:第一车辆向服务器发送第一通信协议的标识,该标识用于查找上述第一通信协议,该第一通信协议为上述第一车辆采集自身数据和/或将采集的数据发送给上述服务器的规则。
在本申请中,在服务器中车辆所采用的通信协议与该通信协议的标识关联,车辆将自身采用的通信协议的标识发送给服务器,使得服务器可以基于该标识查找到该车辆所采用的通信协议,从而可以正确解析后续车辆上报的数据。
第五方面,本申请提供一种服务器,该服务器包括:
获取单元,用于获取配置文件和第一车辆的标识,上述配置文件用于配置第一通信协议,上述第一车辆的标识关联上述第一通信协议;上述第一通信协议为上述第一车辆采集自身数据和/或将采集的数据发送给上述服务器的规则;
查找单元,用于基于上述第一车辆的标识,查找上述第一通信协议。
一种可能的实施方式中,该服务器还包括:
处理单元,用于确定上述配置文件符合预设规则,上述预设规则用于判定上述配置文件的内容的合理性。
可选地,该服务器还可以包括接收单元和存储单元。存储单元用于存储数据或计算机指令。接收单元用于接收消息或数据。
另外,该方面中,服务器其他可选的实施方式可参见上述第一方面的相关内容,此处不再详述。
作为示例,接收单元可以为收发器或接口,存储单元可以为存储器,处理单元可以为处理器。
第六方面,本申请提供一种服务器,上述服务器包括:
获取单元,用于获取配置文件和第一通信协议的标识,上述配置文件用于配置上述第一通信协议;上述第一通信协议为第一车辆采集自身数据和/或将采集的数据发送给上述服务器的规则;
查找单元,用于基于上述第一通信协议的标识查找上述第一通信协议。
一种可能的实施方式中,上述服务器还包括:
处理单元,用于确定上述配置文件符合预设规则,上述预设规则用于判定上述配置文件的内容的合理性。
可选地,该服务器还可以包括接收单元和存储单元。存储单元用于存储数据或计算机指令。接收单元用于接收消息或数据。
另外,该方面中,服务器其他可选的实施方式可参见上述第二方面的相关内容,此处不再详述。
作为示例,接收单元可以为收发器或接口,存储单元可以为存储器,处理单元可以为处理器。
第七方面,本申请提供一种车辆,该车辆包括:
发送单元,用于向服务器发送上述车辆的标识,该标识用于查找第一通信协议,该第一通信协议为该车辆采集自身数据和/或将采集的数据发送给该服务器的规则。
可选地,该服务器还可以包括存储单元,存储单元用于存储数据或计算机指令。
作为示例,发送单元可以为收发器或接口,存储单元可以为存储器。
第八方面,本申请提供一种车辆,该车辆包括:
发送单元,用于向服务器发送第一通信协议的标识,该标识用于查找该第一通信协议,该第一通信协议为该车辆采集自身数据和/或将采集的数据发送给该服务器的规则。
可选地,该服务器还可以包括存储单元,存储单元用于存储数据或计算机指令。
作为示例,发送单元可以为收发器或接口,存储单元可以为存储器。
第九方面,本申请提供一种服务器,该服务器可以包括处理器和存储器,用于实现上述第一方面描述的数据通信处理方法。该存储器与处理器耦合,处理器执行存储器中存储的计算机程序时,可以实现上述第一方面或第一方面任一种可能的实现方式所述的方法。该服务器还可以包括通信接口,通信接口用于该服务器与其它服务器进行通信,示例性的,通信接口可以是收发器、电路、总线、模块或其它类型的通信接口。
在一种可能的实现中,该服务器可以包括:
存储器,用于存储计算机程序;
处理器,用于获取配置文件和第一车辆的标识,基于该第一车辆的标识查找该第一通信协议。该配置文件用于配置第一通信协议,该第一车辆的标识关联该第一通信协议;该第一通信协议为该第一车辆采集自身数据和/或将采集的数据发送给该服务器的规则。
需要说明的是,本申请中存储器中的计算机程序可以预先存储也可以使用该服务器时从互联网下载后存储,本申请对于存储器中计算机程序的来源不进行具体限定。本申请实施例中的耦合是装置、单元或模块之间的间接耦合或连接,其可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。
第十方面,本申请提供一种服务器,该服务器可以包括处理器和存储器,用于实现上述第二方面描述的数据通信处理方法。该存储器与处理器耦合,处理器执行存储器中存储的计算机程序时,可以实现上述第二方面或第二方面任一种可能的实现方式所述的方法。该服务器还可以包括通信接口,通信接口用于该服务器与其它服务器进行通信,示例性的,通信接口可以是收发器、电路、总线、模块或其它类型的通信接口。
在一种可能的实现中,该服务器可以包括:
存储器,用于存储计算机程序;
处理器,用于取配置文件和第一通信协议的标识,基于该第一通信协议的标识查找该第一通信协议。该配置文件用于配置该第一通信协议;该第一通信协议为第一车辆采集自身数据和/或将采集的数据发送给该服务器的规则。
需要说明的是,本申请中存储器中的计算机程序可以预先存储也可以使用该服务器时从互联网下载后存储,本申请对于存储器中计算机程序的来源不进行具体限定。本申请实施例中的耦合是装置、单元或模块之间的间接耦合或连接,其可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。
第十一方面,本申请提供一种车辆,该车辆包括处理器、存储器和通信接口,用于实现上述第三方面描述的数据通信处理方法。该存储器与处理器耦合,处理器执行存储器中存储的计算机程序时,可以调用通信接口实现上述第三方面所述的方法。该通信接口用于该服务 器与其它服务器进行通信,示例性的,通信接口可以是收发器、电路、总线、模块或其它类型的通信接口。
需要说明的是,本申请中存储器中的计算机程序可以预先存储也可以使用该服务器时从互联网下载后存储,本申请对于存储器中计算机程序的来源不进行具体限定。本申请实施例中的耦合是装置、单元或模块之间的间接耦合或连接,其可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。
第十二方面,本申请提供一种车辆,该车辆包括处理器、存储器和通信接口,用于实现上述第四方面描述的数据通信处理方法。该存储器与处理器耦合,处理器执行存储器中存储的计算机程序时,可以调用通信接口实现上述第四方面所述的方法。该通信接口用于该服务器与其它服务器进行通信,示例性的,通信接口可以是收发器、电路、总线、模块或其它类型的通信接口。
需要说明的是,本申请中存储器中的计算机程序可以预先存储也可以使用该服务器时从互联网下载后存储,本申请对于存储器中计算机程序的来源不进行具体限定。本申请实施例中的耦合是装置、单元或模块之间的间接耦合或连接,其可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。
第十三方面,本申请提供一种***,该***包括一个或多个服务器,该服务器为上述第九方面或第十方面所述的服务器。
第十四方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行以实现上述第一方面任意一项所述的方法;或者,上述计算机程序被处理器执行以实现上述第二方面任意一项所述的方法;或者,上述计算机程序被处理器执行以实现上述第三方面所述的方法;或者,上述计算机程序被处理器执行以实现上述第四方面所述的方法。
第十五方面,本申请提供一种计算机程序产品,该计算机程序产品被处理器执行时,上述第一方面任意一项所述的方法将被执行;或者,上述计算机程序产品被处理器执行时,上述第二方面任意一项所述的方法将被执行;或者,上述计算机程序产品被处理器执行时,上述第三方面所述的方法将被执行;或者,上述计算机程序产品被处理器执行时,上述第四方面所述的方法将被执行。
上述第五方面至第十五方面提供的方案,用于实现或配合实现上述第一方面至第四方面中对应提供的方法,因此可以与第一方面至第四方面中对应的方法达到相同或相应的有益效果,此处不再进行赘述。
下面将对本申请实施例中所需要使用的附图作介绍。
图1所示为终端设备向服务器上报的数据的格式示意图;
图2所示为本申请实施例提供的数据通信处理方法适用的***架构示意图;
图3所示为本申请实施例提供的一种数据通信处理方法的流程示意图;
图4所示为本申请实施例提供的另一种数据通信处理方法的流程示意图;
图5至图8为本申请实施例提供的设备之间的交互流程图;
图9至图12为本申请实施例提供的一种装置的逻辑结构示意图;
图13至图15为本申请实施例提供的设备的硬件结构示意图。
为了便于理解,下面首先介绍一下本申请实施例涉及到的技术术语。
需要说明的是,本申请实施例所述的第一通信协议为终端设备采集自身数据和/或将采集的数据发送给服务器的规则,示例性地,该第一通信协议可以是CAN总线通信协议等。后面实施例的描述中主要以第一通信协议为CAN总线通信协议为例进行介绍,这不构成对本申请的限制,本申请中所述的第一通信协议可以是满足“第一通信协议为终端设备采集自身数据和/或将采集的数据发送给服务器的规则”这一定义的其它的通信协议。
1、控制器局域网络(controller area network,CAN)
CAN被设计作为汽车环境中的微控制器通讯***,在车载的各个部件之间交换信息,形成汽车电子控制网络。比如:发动机管理***、变速箱控制器、仪表装备、电子主干***等部件中,均嵌入CAN控制装置。
CAN的高性能和可靠性已被认同,除了汽车领域,CAN还被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。现场总线是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。它的出现为分布式控制***实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。
2、CAN数据
CAN数据就是终端设备(关于终端设备的描述可以参见下面图2中的相关描述)中通过CAN总线采集到的该终端设备各个部件的数据。为了便于理解,以终端设备为车辆为例介绍,对于车辆,其通过CAN总线采集到的CAN数据例如可以包括右后胎指示器状态有效性、快速漏气指示器状态、快速漏气指示器状态有效性、左前胎压值、左前胎压值有效性、左前胎温值、左前胎温值有效性、右前胎压值、右前胎压值有效性、右前胎温值、右前胎温值有效性、左后胎压值、左后胎压值有效性、左后胎温值有效性、右后胎压值、右后胎压值有效性、右后胎温值和右后胎温值有效性等等。
3、数据传输对象(data transfer object,DTO)
数据传输对象DTO是一种数据的格式,目的为进行数据封装,实现层与层之间的数据传递。
4、子码(subcode)
在本申请中,subcode指的是对一个数据的二进制编码,通过该二进制编码可以在服务器解析数据时匹配到唯一的DTO字段。
5、采集周期
在本申请中,采集周期指的是终端设备通过CAN总线采集自身各个部件的数据的周期。例如,终端设备每隔1毫秒采集一次数据,那么采集周期为1毫秒。
不同的部件的数据的采集周期可以不同,或者也可以相同。本申请对采集周期的取值不做限定。
6、上报周期
在本申请中,上报周期指的是终端设备将通过CAN总线采集到的数据发送给服务器(关于服务器的描述可以参见下面图2中的相关描述)的周期。例如,终端设备每隔10毫秒向服务器发送一次数据,那么上报周期为10毫秒。本申请对采集周期的具体取值不做限定。
7、CAN数据二进制码流
终端设备向服务器发送的CAN数据是二进制码流的形式,即终端设备将采集到的多个CAN数据分别编码得到各个CAN数据对应的二进制数据,然后,将这些二进制数据拼接在一起得到一个二进制码流,并将该二进制码流发送给服务器。为了便于理解该CAN数据的二 进制码流,示例性地,可以参见图1。
图1示例性示出了终端设备向服务器发送的二进制码流中CAN数据部分的二进制码的示意图。图1中以上报的CAN数据包括3个采集周期采集到的CAN数据为例说明,本申请对具体实施例中每次上报的数据包括的采集周期的个数不做限制。可以看到每个采集周期对应的二进制码中都包括数据数量和采集周期的信息,各占2个字节的长度。该数据数量指的是在对应的采集周期内上报的数据的个数,以采集周期1为例,该采集周期1内采集到的数据包括多个,分别以数据标识例如1.1、1.2等等来标记各个数据。每个数据占二进制码流的长度根据通信协议的规定确定,本方案对此不做限制。另外,在图1中还可以看到每个数据都对应有1位的有效位,用于指示该数据是否有效,示例性地,若该有效位为1表示该数据无效,若该有效位为1表示该数据有效。
为了更好的理解本申请实施例提供的一种数据通信处理方法,下面对本申请实施例适用的场景进行示例性地介绍。
参见图2,图2示例性示出了一种本申请提供的数据通信处理方法使用的***架构图。该***架构可以包括一个或多个(图2中以n2个为例示出)服务器210、多个(图2中以n3个为例示出)终端设备220和多个(图2中以n1个为例示出)管理设备230。其中,终端设备220和管理设备230可以与服务器210交互通信。多个服务器210可以组成服务器集群,或者组成数据中心等***。该n1、n2和n3可以是大于1的整数。
服务器210可以用于从终端设备220获取终端设备220的数据,以便于分析终端设备220的状态。示例性地,服务器210可以是一个物理服务器或者云服务器等。服务器210中部署有通信接口用于与管理设备230和终端设备220进行通信。例如,服务器210中部署有添加(post)接口、修改(put)接口、查询(get)接口和删除(delete)接口等。其中,管理设备230可以调用该post接口向服务器210发送通信协议等;管理设备230可以调用该put接口修改已经存储在服务器210中的通信协议等;管理设备230可以调用该get接口向服务器210查询数据等;管理设备230可以调用该delete接口删除存储在服务器210中的数据等。
另外,服务器210中还部署有用于处理管理设备230发送过来的数据以及处理终端设备220发送过来的数据的应用程序或软件平台,示例性地,该应用程序或者软件平台可以是一种物联网管理***:海量连接(ocean connect,OC)软件平台。
终端设备220中的传感器、电机、仪器仪表等设备可以通过CAN总线连接,终端设备220可以通过CAN总线采集到自身各个部件的状态数据,这些数据可以称为CAN数据。终端设备220可以将采集到的CAN数据发送给服务器210,然后服务器210可以基于这些CAN数据分析终端设备220的状态。示例性地,终端设备220可以是车辆、路侧单元、船只、机器人或者数控机床设备等等,只要是通过CAN总线采集自身的数据发送给服务器210的设备都属于本申请所述的终端设备。
管理设备230可以是用于管理终端设备220的服务器,管理设备230上面部署了用于管理终端设备220的应用程序或软件等。管理设备230可以用于管理终端设备220的各种信息,例如终端设备220的标识、上线状态、健康状态、所属的用户以及终端设备220使用的CAN总线通信协议等信息。在本申请中,管理设备230还可以向服务器210发送终端设备220使用的CAN总线通信协议,服务器210可以存储该协议,以便于后续解析终端设备220发送来的CAN数据。示例性地,假设终端设备220为汽车,管理设备230可以是该汽车的生产制造企业中的管理设备等,或者管理设备230可以是第三方的管理设备等。
在本申请中,终端设备220可以包括多种类型,或者多种生产制造商生产制造的终端设备,管理设备230也可以对应地包括多种生产制造商的管理设备等等。
随着技术的不断发展,不同的生产制造商生产的终端设备220所使用的CAN总线通信协议不一定相同,即各个生产制造商可以有各自推出的CAN总线通信协议使用在各自生产制造的终端设备上。在这种情况下,服务器210从不同生产制造商的终端设备220接收到的CAN数据可以是基于不同的CAN总线通信协议采集并上报的,服务器210需要基于不同的CAN总线通信协议解析接收到的不同的CAN数据。在本申请中,上报数据指的是终端设备向服务器发送的CAN数据。
通常,服务器210上通过部署CAN数据的解析代码来实现对接收到的CAN数据的解析,但是该代码只能解析一种CAN总线通信协议的数据,若想解析多种不同的CAN总线通信协议的数据,则需要部署多套代码,导致需要耗费大量的人力物力,同时对服务器210的存储资源和计算资源占用过多,另外,由于需要部署多套解析代码,需要较长的研发时间,极大地制约服务上线的效率。为了解决这些问题,本申请提供了一种数据通信处理方法,能够低成本且灵活地解析终端设备通过各种不同的CAN总线通信协议上报的数据。
参见图3,本申请提供的一种数据通信处理方法可以应用于上述图2所示的场景中,该方法可以包括但不限于如下步骤:
301、服务器获取配置文件和第一车辆的标识,该配置文件用于配置第一通信协议,该第一车辆的标识关联该第一通信协议;该第一通信协议为该第一车辆采集自身数据和/或将采集的数据发送给该服务器的规则。
示例性地,该服务器例如可以是上述图2所示的服务器210,该第一车辆可以是上述图2所示的终端设备220。
服务器中以配置文件的形式配置了多个不同的通信协议,这些通信协议均为车辆等终端设备采集自身数据和/或将采集的数据发送给该服务器的规则。另外,在服务器中各个车辆的标识与该车辆所采用的通信协议关联,以便于通过车辆的标识可以查找到该车辆采用的通信协议。
需要说明的是,该通信协议对应的配置文件包括该通信协议的内容,对于服务器来说,通信协议的配置文件即为该通信协议。可选的,下面图7和图8中所描述的管理设备(例如上述图2所示的管理设备230)向服务器发送的通信协议可以是该通信协议的配置文件。
以上述第一车辆和第一通信协议为例,上述服务器中预先配置了上述第一车辆采用的通信协议即该第一通信协议。可选的,服务器可以从管理设备接收到该第一通信协议的配置文件,然后将该配置文件存储在数据库中。或者,可选的,服务器可以通过自身的输入设备获取到该第一通信协议的配置文件,例如,工作人员直接将该第一通信协议的内容输入到该服务器中形成配置文件的情况。
服务器获取到上述第一通信协议之后,可以生成该第一通信协议的标识发送给管理设备,管理设备将第一车辆的注册信息发送给服务器,该注册信息中包括该第一通信协议的标识和该第一车辆的标识,然后,服务器将该第一车辆的标识与该第一通信协议关联,以便于后续的查询。具体的实现过程可以参见下面对图7对应的描述,此处暂不详述。
一种可能的实施方式中,上述服务器获取的第一通信协议的配置文件携带在管理设备发送的第一车辆的注册信息中,该注册信息中还包括该第一车辆的标识,那么,服务器接收到该注册信息之后,可以将该第一车辆的标识与该第一通信协议关联,以便于后续查询。具体的实现过程可以参见下面对图8对应的描述,此处暂不详述。
在服务器中关联了第一车辆的标识和第一通信协议之后,第一车辆可以与服务器建立通信连接,并将该第一车辆自身的标识发送给服务器,以用于获取对应的通信协议的数据格式。
302、该服务器基于该第一车辆的标识,查找该第一通信协议。
服务器与上述第一车辆建立通信连接,并从第一车辆接收到该第一车辆的标识之后,基于该第一车辆的标识查找到该第一车辆所采用的第一通信协议。然后,基于该第一通信协议生成对应的数据格式要求下发给该第一车辆,该第一车辆基于该数据格式要求采集并上报数据给服务器。服务器接收到第一车辆采集上报的数据之后,可以找到该第一车辆采用的第一通信协议,基于该第一通信协议完成对该数据的解析。具体的实现过程可以参见下面对图5对应的描述,此处暂不详述。
参见图4,本申请提供另一种数据通信处理方法,该方法可以应用于上述图2所示的场景中,该方法可以包括但不限于如下步骤:
401、服务器获取配置文件和第一通信协议的标识,该配置文件用于配置该第一通信协议;该第一通信协议为第一车辆采集自身数据和/或将采集的数据发送给该服务器的规则。
示例性地,该服务器例如可以是上述图2所示的服务器210,该第一车辆可以是上述图2所示的终端设备220。
在本申请实施例中,服务器可以从管理设备(例如上述图2所示的管理设备230)接收到该第一通信协议的配置文件,将该配置文件存储在数据库中。需要说明的是,该通信协议对应的配置文件包括该通信协议的内容,对于服务器来说,通信协议的配置文件即为该通信协议。
可选的,服务器接收到上述第一通信协议后,可以生成该第一通信协议的标识,将该标识与该第一通信协议关联,并将该标识发送给管理设备,然后,将该第一通信协议的标识存储在该第一车辆中。示例性地,可以是在生产该第一车辆时将该第一通信协议的标识存储在该第一车辆中,或者可以是管理设备将该第一通信协议发送给该第一车辆并存储等等。
或者,可选的,第一通信协议的标识无需服务器生成,而是由管理设备发送给服务器,例如,管理设备向服务器发送第一通信协议时将该第一通信协议的标识一起发送给服务器。然后,服务器将该第一通信协议的标识与该第一通信协议关联并存储,以用于后续的查询。另外,该第一通信协议的标识还存储在第一车辆中。示例性地,可以是在生产该第一车辆时将该第一通信协议的标识存储在该第一车辆中,或者可以是管理设备将该第一通信协议发送给该第一车辆并存储等等。
在服务器中关联了第一通信协议的标识和该第一通信协议之后,第一车辆可以与服务器建立通信连接,并将该第一车辆自身存储有的第一通信协议的标识发送给服务器,以用于获取对应的通信协议的数据格式。
402、该服务器基于该第一通信协议的标识查找该第一通信协议。
服务器从第一车辆接收到第一通信协议的标识之后,基于该第一通信协议的标识查找到该第一车辆所采用的第一通信协议。然后,基于该第一通信协议生成对应的数据格式要求下发给该第一车辆,该第一车辆基于该数据格式要求采集并上报数据给服务器。服务器接收到第一车辆采集上报的数据之后,可以找到该第一车辆采用的第一通信协议,基于该第一通信协议完成对该数据的解析。具体的实现过程可以参见下面对图5对应的描述,此处暂不详述。
上述图4所示的实施例相比于上述图3所示的实施例,服务器中可以不用将第一通信协议与车辆的信息例如车辆的标识关联,那么服务器中可以不存储车辆的相关信息,从而可以节省服务器的存储资源。
一种可能的实施方式中,上述图3和图4所示的实施例中,服务器中不同的通信协议的 配置文件均可以通过预设模型的形式存储在服务器中。该预设模型包括多种不同通信协议中的数据种类的表达形式。示例性地,该预设模型的具体形式可以参见下面表1和表2。
表1
名称 | 是否必选 | 类型 | 说明 |
id | Y | string | 通信协议的唯一标识 |
report period | Y | integer | 数据上报周期 |
data format | Y | list<data format> | 各个CAN数据的格式的具体描述 |
表1示例性示出了本申请提供的一种在服务器中统一表达各种不同的通信协议的预设模型,可以看到,该预设模型中包括通信协议的唯一标识,该标识即为上述提到的通信协议的标识。该通信协议的标识的类型要求为字符串(string)类型。
该预设模型中还包括采用该通信协议的终端设备将CAN数据发送给服务器的周期,称为上报周期(report period)。该上报周期的类型要求为整数(integer)型。
该预设模型中还包括采用该通信协议的终端设备中的各个CAN数据的格式的具体描述。每一个CAN数据的格式的描述可以是以列表(list)的形式来表示。示例性地,可以参见表2,表2为本申请提供的预设模型中CAN数据的格式的list。
表2
在表2中可以示例性地看到预设模型中CAN数据的格式要求。需要说明的是,上述表2中的“是否必选”中,Y表示通信协议中必须包括对应的内容,N表示通信协议中可以包括或者不包括对应的内容。表2中除了规定终端设备采集和上报CAN数据的格式,还给出了各项内容对应的约束,约束指的是需要满足的条件。下面逐一解释表2中的各项内容:
数据标识(data id):指的是上报的CAN数据的标识,CAN数据的标识的类型可以为string型。例如,假设终端设备为车辆,车辆上报的CAN数据包括右后胎指示器状态有效性、快速漏气指示器状态、快速漏气指示器状态有效性、左前胎压值、左前胎压值有效性,那么这些CAN数据的标识依次可以是“1”、“2”、“3”、“4”和“5”。
另外,在约束中可以看到,要求上报的所有的CAN数据的标识为连续的整数。可选的,在具体实施例中,上述上报的所有的CAN数据的标识也可以约束为连续的字母等字符,或者约束为有规律的字符的组合(例如图1所示的数据标识)等,本申请对此不作限制。
数据种类(type):指的是CAN数据的数据种类,可以包括有效性(valid)数据种类、状态(status)数据种类、数值(value)数据种类和字符串(string)数据种类。其中:
valid数据种类,用于描述终端设备的部件的状态或数据的有效性。例如,可以约定,用数值0表示无效(invalid),用数值1表示有效(valid)。例如,假设终端设备的部件为右后胎指示器,对于该右后胎指示器的状态,可以用1表示该指示器的状态有效,0表示该指示器的状态无效。对于右后胎的温度值,也可以用1表示该温度值有效,0表示该温度值无效。
约束中要求该valid数据种类的数据长度为1。可选的,在具体实施例中该描述有效性的数据长度也可以约束为其它的长度,例如2或3等等,本申请对此不做限制。
status数据种类,用于描述终端设备的部件的状态,可以以枚举的形式体现。该描述部件状态的数据的长度可以为1。例如,对于门的状态,一般是两个状态:关闭(closed)状态和开启(open)状态,那么,可以用0表示门的closed状态,可以用1表示门的open状态。又例如,对于快速漏气指示器的状态,其有两种状态,分别为不快速漏气(not fast leakage)状态和快速漏气(fast leakage)状态,那么,可以用0表示not fast leakage状态,可以用1表示fast leakage状态。
约束中要求status数据种类的数据的长度必须不大于该数据长度所能表示的最大枚举个数,且枚举的状态都可以在DTO属性中找到对应枚举字段。DTO属性为服务器将终端设备上报的CAN数据解析后得到的DTO格式的数据的属性。枚举的状态都可以在DTO属性中找到对应枚举字段的这个要求,可以保证解析的每一个状态都有对应的DTO字段。
为了便于理解,示例性地,例如,假设左后门状态的数据长度为1,则最大枚举个数为2,可以用0表示该左后门的closed状态,可以用1表示该左后门的open状态,因而可以在通信协议和上述基于通信协议转换得到的数据格式要求中添加该两个状态的表示数值;且DTO属性左后门(left rear door)的枚举类型必须包括closed和open两种状态。
又例如,假设轮胎温度的数据长度为2,则最大枚举个数为4,而轮胎温度对应状态共3个,包括一般(normal)、高(high)和预留(reserved)这三个状态,可以用0表示normal,用1表示high,用2或3表示reserved状态,因而可以在通信协议和上述基于通信协议转换得到的数据格式要求中添加该两个状态,则在解码过程中。且DTO属性中轮胎温度的枚举类型必须包括normal、high和reserved这三种状态,这样服务器解析终端设备上报的轮胎温度时可以基于0=normal、1=high和2~3=reserved这一规则来解析。
value数据种类,用于描述终端设备的部件的在某些方面的具体的数值,例如用于描述通过传感器采集到的部件的温度和压力的具体数值等等。在服务器解析终端设备上报的CAN数据的过程中,value数据种类的数据需要先将上报的二进制数据转换为十进制数据,再根据通信协议中规定的精度和偏移量进行计算,得到对应的数值,该计算得到的数值需要不小于规定的最小值,且不大于规定的最大值。计算方法如式(1)所示。
value=accuracy*data+offset (1)
式(1)中,accuracy表示精度,offset表示偏移量,data表示根据二进制码流获得的十进制数值,value表示计算得到的最终数据。需要注意的是,value必须位于通信协议规定的范围之内。
约束中要求value数据种类的数据的最大值必须不大于规定的最大值,且要求value数据种类的数据的最小值必须不小于规定的最小值。为了满足这个约束,根据数据长度、精度、偏移量计算得到的最大值必须不大于规定的最大值,且计算得到的最小值必须不小于规定的最小值,即需要满足如下式(2)和式(3)的关系:
minimum≥offset (2)
maximum≤D*accuracy+offset (3)
其中,minimum表示数据的最小值,maximum表示数据的最大值。假设数据的二进制长度为L,则D表示该二进制数据转换成十进制数据后的最大值,即D=2^L-1。例如,假设数据的二进制长度为7,则D=2^7-1=127。由于value数据种类的数据是通过上述式(1)计算得到,因此可知,该value数据种类的数据规定的最小值为data为0时计算得到的值,即为offset;该value数据种类的数据规定的最大值为data为上述D时计算得到的值,即为D*accuracy+offset。
在表2中可以看到,若描述的CAN数据为value数据种类的数据,那么,约束中要求最大值(maximum)、最小值(minimum)、精度(accuracy)和偏移量(offset)这几个参数是必须在通信协议中明确说明的。
若描述的CAN数据为status数据种类的数据,那么,约束中要求在通信协议中明确说明该CAN数据为status数据种类的数据。
对于子码(subcode),由于服务器需要通过subcode匹配到唯一的DTO字段,因此,约束中要求终端设备上报的所有CAN数据的subcode不能重复,即每个CAN数据都有唯一的subcode。
string数据种类,可用于描述终端设备采集的该终端设备自身的生产制造商、类型等数据,也可用于描述采集的错误码和错误信息等,还可用于传输其他文本信息等。
在表2中,若描述的CAN数据为valid数据种类的数据,那么,终端设备上报该CAN数据的长度为1。
假设终端设备上报的二进制码流的各个二进制位从左到右排列,那么,该二进制码流中的某个CAN数据的二进制码的最高位不能在最低位的右侧,最低位不能在最高位的左侧。为了便于理解,示例性地,可以参见图1,以图1中的数据1.1为例说明。假设数据1.1的二进制码为10011010,位数为8位,且该数据1.1占用上报的二进制码流中的第p位至第p+7这8位,那么,在规定该数据1.1的二进制码在上报的二进制码流中的位置时可以这样规定:数据1.1的最高位为第p位,最低位为第p+7位。而不能规定为数据1.1的最高位为第p+7位,最低位为第p位。
另外,由最高位和最低位计算得到的数据长度必须与上报数据长度一致。
一个CAN数据的采集周期须要可以整除该CAN数据的上报周期,即上报周期为采集周期的整数倍。
可选的,在表2中采集周期相同的数据,其数据标识是连续的。例如,采集周期为500毫秒的数据有三个,采集周期为200毫秒的数据有两个,则该三个采集周期为500毫秒的数据的标识可以设置为连续的例如1、2和3,另外,两个采集周期为200毫秒的数据的标识也可以设置为连续的例如4和5。若采集周期为500毫秒的数据的标识设置为1、3和4,而采集周期为200毫秒的数据的标识设置为2和5,则是不符合规则的。
终端设备上报的二进制码流中,各个CAN数据的上报区间不能有重叠。为了便于理解,还是以图1为例介绍。以数据1.1和数据1.2示例,数据1.1的上报区间可以是数据1.1的二进制码和有效位占用的区间,数据1.2的上报区间为数据1.2的二进制码和有效为占用的区间,该两个区间之间不能占用相同的位数。例如,数据1.1的上报区间占用的位数为第p位至第p+9位,那么,数据1.2的上报区间占用的位数为第p+10位至第p+19位是合理的,但是,假如数据1、2的上报区间占用的位数为第p+9位至第p+18位则是不合理的,因为两个数据都占用了第p+9位,导致无法正确解析出该两个数据。
另外,在服务器向终端设备下发数据格式要求的报文中也是以二进制码流的形式在传输,该下发的数据格式也包括了多个CAN数据的采集要求和上报要求,同样地,本申请的数据格式约束中要求该下发的数据格式的二进制码流中各个CAN数据的数据格式的要求所占用的二进制位不能重叠。
假设服务器向终端设备下发的数据格式要求的二进制码流的各个二进制位从左到右排列,那么,该二进制码流中的某个CAN数据的数据格式要求的二进制码的最高位不能在最低位的右侧,最低位不能在最高位的左侧,且由最高位和最低位计算得到的数据长度必须与采 集数据长度一致。
上述主要基于表1和表2示例性地介绍了本申请提供的一种在服务器中统一表达各种不同的通信协议的预设模型,需要说明的是,上述所述的预设模型仅为一个示例,在具体实施例中的预设模型不限于上述所介绍的内容。
为了更好地理解本申请提供的一种数据通信处理方法,下面基于设备之间的交互流程图进一步介绍。
参见图5,图5所示为终端设备从服务器获取对应通信协议的数据格式要求并上报数据的交互流程,可以包括但不限于如下步骤:
501、终端设备和服务器交互建立通信连接。
在具体实施例中,终端设备可以是上述图2所示的终端设备220,服务器可以是上述图2所示的服务器210。
终端设备可以向服务器发送连接请求,用于请求服务器与自身建立通信连接。该连接请求可以包括终端设备的标识。示例性地,假设终端设备为车辆,那么车辆的标识可以包括车辆的出厂编号、车辆识别号码(vehicle identification number,VIN)或者车辆的车牌号等。
服务器接收到该连接请求之后,可以向终端设备返回一个连接建立的响应消息,从而完成终端设备和服务器之间通信连接的建立。
502、服务器查找第一通信协议。
在终端设备和服务器建立通信连接之后,由于在本申请中,不同的终端设备可能采用不同的通信协议采集/上报自身的数据给服务器,为了快速灵活地解析基于不同通信协议上报的数据,服务器需要向终端设备下发终端设备采集/上报数据的数据格式要求,规定终端设备采集/上报数据的数据格式。该数据格式要求是基于终端设备采用的通信协议转换得到的(下面步骤303中会详细介绍,此处暂不详述),因此,服务器需要先查找到终端设备对应采用的通信协议。
具体的,该第一通信协议为终端设备采用的CAN总线通信协议。在具体实施例中,服务器中存储有多种CAN总线通信协议,且这些CAN总线通信协议都有各自的协议标识,可以在服务器中唯一标识不同的通信协议,即通过协议标识可以查找到唯一对应的CAN总线通信协议。
一种可能的实施方式中,上述服务器查找第一通信协议的具体实现可以是:服务器中将终端设备的标识与该终端设备采用的CAN总线通信协议的标识关联,那么,服务器可以通过该终端设备的标识查找到其使用的通信协议的标识,进而通过该协议的标识查找到该第一通信协议。或者,服务器中将终端设备的标识与该终端设备采用的CAN总线通信协议直接关联,那么,服务器可以通过该终端设备的标识可以直接查找到该第一通信协议。该服务器中存储的终端设备的标识可以是管理设备向服务器注册该终端设备的信息时发送给该服务器的(具体可以参见下面图7和图8所示实施例的描述,此处暂不详述)。另外,上述终端设备和服务器交互建立通信连接的过程中服务器可以获取到该终端设备的标识,从而可以查找到该第一通信协议。
另一种可能的实施方式中,上述服务器查找第一通信协议的具体实现可以是:上述连接请求中包括了该终端设备采用的CAN总线通信协议的标识,或者,服务器和终端设备建立连接之后,终端设备另外向服务器发送了该终端设备采用的CAN总线通信协议的标识,那么,服务器可以基于从该终端设备中接收到的该终端设备采用的CAN总线通信协议的标识,查找 到上述第一通信协议。
503、服务器基于该第一通信协议向终端设备发送数据格式要求。
具体的,该数据格式要求用于规定该终端设备采集的数据和/或向服务器发送的数据的格式。
在具体实施例中,终端设备通过CAN总线采集数据,是基于其采用的CAN总线通信协议来采集的,采集完数据之后,需要将采集的CAN数据转换成二进制码流发送给服务器,该CAN数据转换成二进制码流也是基于终端设备采用的CAN总线通信协议来转换的。即,终端设备通过CAN总线采集的CAN数据的数据格式,以及终端设备向服务器发送的二进制码流的格式都是遵循该终端设备所采用的CAN总线通信协议中的规定来确定的。
基于上述的描述,由于服务器后续需要解析终端设备发送的CAN数据的二进制码流,那么为了便于服务器解析,服务器可以将终端设备采用的CAN总线通信协议按照预设规则转换成数据格式要求。然后,服务器将转换得到的数据格式要求发送给终端设备,以使得终端设备按照该数据格式的要求采集数据和发送数据。
需要说明的是,上述预设规则适用于服务器中存储的所有CAN总线通信协议,包括上述第一通信协议。即,服务器可以将该所有的CAN总线通信协议按照该预设规则转换成这些CAN总线通信协议各自对应的数据格式要求。
为了便于理解上述预设规则,可以参见上述表1和表2。上述预设规则要求通信协议中明确上报周期(report period)。且该上报周期的类型要求为整数(integer)型。上述预设规则还要求通信协议中明确采用该通信协议的终端设备中的各个CAN数据的格式的具体描述。每一个CAN数据的格式的描述可以参见上述表2。在表2中可以看到,预设规则可以规定终端设备采集和上报CAN数据的格式和约束。关于该格式和约束的描述可以参见上述对表2的具体描述,此处不再赘述。
上述主要基于表1和表2示例性地介绍了上述服务器将通信协议转换成数据格式要求的预设规则,需要说明的是,上述所述的预设规则仅为一个示例,在具体实施例中的预设规则不限于上述所介绍的内容。
服务器按照上述预设规则将上述终端设备采用的通信协议即第一通信协议转换成数据格式要求后,将该数据格式要求发送给终端设备。
504、终端设备基于该数据格式要求采集第一数据。
终端设备接收到服务器发送的数据格式要求之后,解析获取对应的内容,然后基于对应的数据格式通过CAN总线采集自身中的各个部件的数据。
505、终端设备基于该数据格式要求向服务器发送该第一数据。
终端设备采集得到CAN数据之后,按照数据格式要求中各个CAN数据的上报格式要求,生成CAN数据的二进制码流,可以称该生成的CAN数据的二进制码流为第一数据,然后,终端设备向服务器发送该第一数据。
506、服务器接收该第一数据,并基于第一通信协议解析该第一数据。
服务器接收来自终端设备的第一数据之后,首先可以查找到该终端设备对应的第一通信协议,然后,基于该第一通信协议解析该第一数据得到实际上报的终端设备的CAN数据,这些CAN数据可以指示终端设备中对应的部件的状态等情况。然后,服务器可以基于解析得到的CAN数据分析终端设备的状态,并将终端设备的状态实时地保存到数据库中。
具体的,由于该第一通信协议已经规定了该终端设备上报的各个CAN数据在二进制码流中的位置以及数据的长度,因此,服务器接收到终端设备上报的二进制码流即上述第一数据 之后,根据该第一通信协议即可解析出各个CAN数据的二进制数据,然后,按照上述式(1)计算出实际的CAN数值,每个CAN数值都对应某一种状态信息等,从而可以获知终端设备的对应的部件的状态等情况。
可选的,管理设备(例如图1所示的管理设备230)可以与服务器交互,获取服务器中存储的终端设备的状态信息。示例性地,可以参见图6。在图6中,上述步骤506、服务器接收该第一数据,并基于第一通信协议解析该第一数据之后,还可以包括但不限于如下步骤:
507、管理设备向服务器发送该终端设备的状态查询请求。
该状态查询请求中可以包括该终端设备的标识。
508、服务器基于该状态查询请求获取该终端设备的状态信息。
服务器接收到该状态查询请求之后,解析得到该终端设备的标识,通过该标识在数据库中查找到该终端设备最新的状态信息。
509、服务器向管理设备发送该终端设备的状态信息。
服务器获取到该终端设备最新的状态信息之后,将其封装成报文发送给管理设备。管理设备可以通过该终端设备的状态信息了解该终端设备的状态,以便于做出相应的判断和控制,例如,可以判断终端设备是否异常,若异常,则需要提醒用户,以减少意外的损害等等。
一种可能的实施方式中,上述服务器接收到终端设备上报的CAN数据之后,也可以不对这些数据进行分析,可以直接将接收到的数据存储在数据库中。然后,管理设备可以与服务器交互获取到终端设备的CAN数据,然后,由管理设备基于这些CAN数据分析对应终端设备的状态。
一种可能的实施方式中,上述步骤502中所述的服务器中将终端设备的标识与该终端设备采用的CAN总线通信协议的标识关联,或者服务器中将终端设备的标识与该终端设备采用的CAN总线通信协议直接关联,可以通过图7所示的实施方式来实现。参见图7,可以包括但不限于如下步骤:
701、管理设备向服务器发送上述第一通信协议。
在具体实施例中,管理设备可以配置终端设备采用的通信协议,下面还是以终端设备采用的通信协议为第一通信协议为例介绍。
管理设备可将终端设备采用的第一通信协议发送给服务器,以用于存储在服务器中。
示例性地,管理设备可以调用服务器的post接口将该第一通信协议发送给服务器。
702、服务器接收该第一通信协议,并生成该第一通信协议的标识。
服务器接收到该第一通信协议之后,由于服务器要管理多个不同的通信协议,为了便于管理,可以为每个通信协议配置一个唯一标识,因此,服务器可以为第一通信协议生成一个唯一标识。
703、服务器向管理设备发送该第一通信协议的标识。
管理设备接收到服务器发送的第一通信协议的标识之后,可以将该第一通信协议的标识关联到采用该第一通信协议的终端设备的信息中。
704、管理设备向服务器发送上述终端设备的注册信息,该注册信息包括该终端设备的标识和第一通信协议的标识。
终端设备与服务器建立通信连接之前,管理设备需要将终端设备的信息注册到服务器中。因此,管理设备可以向服务器发送终端设备的注册信息,该注册信息可以包括该终端设备的 标识、该终端设备所属的用户的信息、该终端设备的相关状态以及该终端设备所采用的通信协议即第一通信协议的标识等信息。需要说明的是,该终端设备的注册信息可以包括该终端设备相关的任意信息,本申请对此不做限制。
705、服务器基于该注册信息完成注册,并关联该终端设备的标识、第一通信协议的标识和该第一通信协议。
服务器接收到上述注册信息之后,基于该注册信息完成该终端设备的注册操作,该注册操作例如可以是将该注册信息存储在数据库等等,本申请对此不做限制。另外,服务器还将注册信息中终端设备的标识、第一通信协议的标识与服务器中已经存储的第一通信协议关联,以便于后续查找。
可选的,服务器也可以是基于该第一通信协议的标识查找到该第一通信协议,仅将该第一通信协议的标识和该第一通信协议进行关联。
706、服务器向管理设备发送注册响应信息。
服务器完成注册之后,向管理设备发送一个注册完成的响应信息,以告知管理设备完成了注册。
一种可能的实施方式中,上述步骤502中所述的服务器中将终端设备的标识与该终端设备采用的CAN总线通信协议的标识关联,或者服务器中将终端设备的标识与该终端设备采用的CAN总线通信协议直接关联,还可以通过图8所示的实施方式来实现。参见图8,可以包括但不限于如下步骤:
801、管理设备向服务器发送终端设备的注册信息,该注册信息包括该终端设备的标识和第一通信协议。
802、基于该注册信息完成注册,生成该第一通信协议的标识,并关联该终端设备的标识、第一通信协议的标识和该第一通信协议。
803、发送注册响应信息。
本申请实施例中,相比于上述图7所示的实施例,主要的区别是管理设备不单独将第一通信协议发送给服务器,而是将该第一通信协议携带在上述注册信息中,一起发送给管理设备,从而可以节省一些交互步骤,进而节省带宽资源和两个设备的计算资源。除了该区别之外,图8所示的其它步骤的具体实现参见上述对图7中所示的步骤的对应描述,此处不再赘述。
一种可能的实施方式中,上述图7和图8所示的实施例中,服务器在生成该第一通信协议的标识之前,可以先检查一下该第一通信协议是否符合预设的要求。具体的,服务器可以按照上述预设规则中的约束(例如表2中所示的约束)来检查该第一通信协议是否符合预设的要求,只有在第一通信协议符合预设要求的情况下,服务器才生成该第一通信协议的标识。如果该第一通信协议不符合预设要求,那么,服务器可以向管理设备发送一个指示该第一通信协议不合格的消息,例如直接返回一个错误消息等等。
一种可能的实施方式中,上述步骤502中所述的连接请求中包括了该终端设备采用的CAN总线通信协议的标识,或者,服务器和终端设备建立连接之后,终端设备另外向服务器发送了该终端设备采用的CAN总线通信协议的标识,可以通过如下两种可能的实施方式来实现:
第一种可能的实施方式:管理设备可以根据上述图7或图8所示的实施方式及其可能的实施方式获取到上述第一通信协议的标识,然后,该管理设备可以将该第一通信协议的标识 发送给上述终端设备,终端设备将该第一通信协议的标识存储起来。或者,由于该管理设备为生产制造商的管理设备,因此,终端设备在生产制造的过程中,该第一通信协议的标识就被存储于其中,而该第一通信协议的标识来自于上述管理设备从服务器接收到的标识。从而,在终端设备向服务器发送连接请求时,可以在连接请求中携带该第一通信协议的标识;或者,在服务器和终端设备建立连接之后,终端设备可以另外向服务器发送了该第一通信协议的标识。可选的,在本实施方式中,服务器中可以不用存储终端设备的标识与该第一通信协议的标识的映射关系,或者,不用存储该终端设备的标识与该第一通信协议的映射关系。
第二种可能的实施方式:在具体实施例中,管理设备向服务器发送第一通信协议,该第一通信协议可以是管理设备单独发送给服务器(例如可以参见上述图7所示的实施方式),或者,该第一通信协议可以是管理设备将其携带在终端设备的注册信息中发送给服务器(例如可以参见上述图8所示的实施方式)。在本实施方式中,管理设备在向服务器发送第一通信协议的同时,还可以把该第一通信协议的标识一起发送给服务器,然后,服务器将该第一通信协议及接收到的协议标识关联,以备后续查询。在本实施方式中,通信协议的唯一标识是由管理设备提供的,而不是服务器生成的。这种情况下,管理设备可以提前就将第一通信协议的标识发送给终端设备,或者在生产该终端设备时将协议标识存储与其中。从而,在终端设备向服务器发送连接请求时,可以在连接请求中携带该第一通信协议的标识;或者,在服务器和终端设备建立连接之后,终端设备可以另外向服务器发送了该第一通信协议的标识。
需要说明的是,管理设备向服务器发送的第一通信协议的标识需要满足该标识是服务器中唯一的协议标识,否则,服务器还是可以重新为该第一通信协议生成一个新的唯一的标识。
一种可能的实施方式中,上述服务器接收到来自管理设备的第一通信协议及其协议标识,将其关联之前,可以先检查一下该第一通信协议是否符合预设的要求。具体的,服务器可以按照上述预设规则中的约束(例如表2中所示的约束)来检查该第一通信协议是否符合预设的要求,只有在第一通信协议符合预设要求的情况下,服务器才将该第一通信协议及其协议标识进行关联。如果该第一通信协议不符合预设要求,那么,服务器可以向管理设备发送一个指示该第一通信协议不合格的消息,例如直接返回一个错误消息等等。
综上所述,在本申请中,服务器中可以配置有多个不同的通信协议,并且将车辆所采用的通信协议与对应车辆的标识或该通信协议的标识关联,以使得服务器可以根据车辆的标识或该通信协议的标识明确车辆所采用的通信协议,从而能够基于车辆所采用的通信协议正确解析出车辆上报的数据。相比于现有的方案,本申请无需针对一个具体的通信协议部署复杂繁琐的解析代码,极大地节省了人力物力资源的同时,也节省了服务器的存储资源和计算机资源,且可以提高了服务上线的效率。另外,本申请中服务器所提供的数据解析服务,可以很好地适配各种不同的车辆生产制造商,具有很好地复用性。且,由于无需基于不同的协议部署不同的解析代码,从而无需频繁升级更新,具有更好的可维护性。
上述主要对本申请实施例提供的数据通信处理方法进行了介绍。可以理解的是,各个设备为了实现上述对应的功能,其包含了执行各个功能相应的硬件结构和/或软件模块。结合本文中所公开的实施例描述的各示例的单元及步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对设备进行功能模块的划分,例如,可以对应各个 功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用对应各个功能划分各个功能模块的情况下,图9示出了装置的一种可能的逻辑结构示意图,该装置可以是上述的服务器,或者可以是该服务器中的芯片,或者可以是该服务器中的处理***等。该装置900包括获取单元901和查找单元902。其中:
获取单元901,用于获取配置文件和第一车辆的标识,该配置文件用于配置第一通信协议,该第一车辆的标识关联该第一通信协议;该第一通信协议为该第一车辆采集自身数据和/或将采集的数据发送给该装置900的规则。该获取单元901可以执行图3所示的步骤301中所述的操作。
查找单元902,用于基于该第一车辆的标识,查找该第一通信协议。该查找单元902可以执行图3所示的步骤302中所述的操作。
一种可能的实施方式中,该配置文件通过预设模型的形式存储在该装置900中,该预设模型包括多种不同通信协议中的数据种类的表达形式。
一种可能的实施方式中,该装置900还包括:处理单元,用于确定该配置文件符合预设规则,该预设规则用于判定该配置文件的内容的合理性。
一种可能的实施方式中,该处理单元具体用于:确定该配置文件中第一数据的最大值不大于规定的最大值,并确定该第一数据的最小值不小于规定的最小值。
一种可能的实施方式中,该获取单元901具体用于:接收该第一车辆的注册信息,该注册信息包括该配置文件。
可选地,上述装置900还可以包括接收单元和存储单元。存储单元用于存储数据或计算机指令。接收单元用于接收消息或数据。
作为示例,接收单元可以为收发器或接口,存储单元可以为存储器,处理单元可以为处理器。
图9所示装置900中各个单元的具体操作以及有益效果可以参见上述方法实施例中对应的描述,此处不再赘述。
在采用对应各个功能划分各个功能模块的情况下,图10示出了装置的一种可能的逻辑结构示意图,该装置可以是上述的服务器,或者可以是该服务器中的芯片,或者可以是该服务器中的处理***等。该装置1000包括获取单元1001和查找单元1002。其中:
获取单元1001,用于获取配置文件和第一通信协议的标识,该配置文件用于配置该第一通信协议;该第一通信协议为第一车辆采集自身数据和/或将采集的数据发送给该装置1000的规则。该获取单元1001可以执行图4所示的步骤401中所述的操作。
查找单元1002,用于基于该第一通信协议的标识查找该第一通信协议。该查找单元1002可以执行图4所示的步骤402中所述的操作。
一种可能的实施方式中,该获取单元1001具体用于:接收来自该第一车辆的该第一通信协议的标识。
一种可能的实施方式中,该配置文件通过预设模型的形式存储在该装置1000中,该预设模型包括多种不同通信协议中的数据种类的表达形式。
一种可能的实施方式中,该装置1000还包括:处理单元,用于确定该配置文件符合预设 规则,该预设规则用于判定该配置文件的内容的合理性。
可选地,上述装置1000还可以包括接收单元和存储单元。存储单元用于存储数据或计算机指令。接收单元用于接收消息或数据。
作为示例,接收单元可以为收发器或接口,存储单元可以为存储器,处理单元可以为处理器。
图10所示装置1000中各个单元的具体操作以及有益效果可以参见上述方法实施例中对应的描述,此处不再赘述。
在采用对应各个功能划分各个功能模块的情况下,图11示出了装置的一种可能的逻辑结构示意图,该装置可以是上述的终端设备(例如可以是上述第一车辆),或者可以是该终端设备中的芯片,或者可以是该终端设备中的处理***等。该装置1100包括发送单元1101。其中:
发送单元1101,用于向服务器发送该车辆的标识,该标识用于查找第一通信协议,该第一通信协议为该车辆采集自身数据和/或将采集的数据发送给该服务器的规则。
可选地,该服务器还可以包括存储单元1102,存储单元1102用于存储数据或计算机指令。
作为示例,发送单元1101可以为收发器或接口,存储单元1102可以为存储器。
图11所示装置1100中各个单元的具体操作以及有益效果可以参见上述方法实施例中对应的描述,此处不再赘述。
在采用对应各个功能划分各个功能模块的情况下,图12示出了装置的一种可能的逻辑结构示意图,该装置可以是上述的终端设备(例如可以是上述第一车辆),或者可以是该终端设备中的芯片,或者可以是该终端设备中的处理***等。该装置1200包括发送单元1201。其中:
发送单元1201,用于向服务器发送第一通信协议的标识,该标识用于查找该第一通信协议,该第一通信协议为该车辆采集自身数据和/或将采集的数据发送给该服务器的规则。
可选地,该服务器还可以包括存储单元1202,存储单元1202用于存储数据或计算机指令。
作为示例,发送单元1201可以为收发器或接口,存储单元1202可以为存储器。
图12所示装置1200中各个单元的具体操作以及有益效果可以参见上述方法实施例中对应的描述,此处不再赘述。
图13所示为本申请提供的设备的一种可能的硬件结构示意图,该设备可以是上述实施例所述方法中的服务器。该设备1300包括:处理器1301、存储器1302和通信接口1303。处理器1301、通信接口1303以及存储器1302可以相互连接或者通过总线1304相互连接。
示例性的,存储器1302用于存储设备1300的计算机程序和数据,存储器1302可以包括但不限于是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmable read only memory,EPROM)或便携式只读存储器(compact disc read-only memory,CD-ROM)等。
在实现图9所示实施例的情况下,执行图9中的全部或部分单元的功能所需的软件或程序代码存储在存储器1302中。
在实现图9实施例的情况下,如果是部分单元的功能所需的软件或程序代码存储在存储器1302中,则处理器1301除了调用存储器1302中的程序代码实现部分功能外,还可以配合其他部件(如通信接口1303)共同完成图9实施例所描述的其他功能(如接收或发送数据的功能)。
通信接口1303的个数可以为多个,用于支持设备1300进行通信,例如接收或发送数据或信号等。
示例性的,处理器1301可以是中央处理器单元、通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理器和微处理器的组合等等。处理器1301可以用于读取上述存储器1302中存储的程序,执行如下操作:
获取配置文件和第一车辆的标识,并基于该第一车辆的标识查找第一通信协议。上述配置文件用于配置该第一通信协议,上述第一车辆的标识关联上述第一通信协议;该第一通信协议为上述第一车辆采集自身数据和/或将采集的数据发送给上述设备1300的规则。
一种可能的实施方式中,上述配置文件通过预设模型的形式存储在上述设备1300中,该预设模型包括多种不同通信协议中的数据种类的表达形式。该数据种类包括:有效性数据种类、状态数据种类、数值数据种类和字符串数据种类。
一种可能的实施方式中,处理器1301还执行如下操作:确定上述配置文件符合预设规则,该预设规则用于判定上述配置文件的内容的合理性。
一种可能的实施方式中,上述确定上述配置文件符合预设规则,包括:确定该配置文件中第一数据的最大值不大于规定的最大值,并确定该第一数据的最小值不小于规定的最小值。该第一数据可以是数值数据种类的数据,该数值数据种类例如可以是value种类。
一种可能的实施方式中,上述获取配置文件,包括:通过通信接口1303接收上述第一车辆的注册信息,该注册信息包括上述配置文件。
图13所示设备1300中各个单元的具体操作以及有益效果可以参见上述方法实施例中对应的描述,此处不再赘述。
图14所示为本申请提供的设备的一种可能的硬件结构示意图,该设备可以是上述实施例所述方法中的服务器。该设备1400包括:处理器1401、存储器1402和通信接口1403。处理器1401、通信接口1403以及存储器1402可以相互连接或者通过总线1404相互连接。
示例性的,存储器1402用于存储设备1400的计算机程序和数据,存储器1402可以包括但不限于是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmable read only memory,EPROM)或便携式只读存储器(compact disc read-only memory,CD-ROM)等。
在实现图10所示实施例的情况下,执行图10中的全部或部分单元的功能所需的软件或程序代码存储在存储器1402中。
在实现图10实施例的情况下,如果是部分单元的功能所需的软件或程序代码存储在存储器1402中,则处理器1401除了调用存储器1402中的程序代码实现部分功能外,还可以配合其他部件(如通信接口1403)共同完成图10实施例所描述的其他功能(如接收或发送数据的功能)。
通信接口1403的个数可以为多个,用于支持设备1400进行通信,例如接收或发送数据 或信号等。
示例性的,处理器1401可以是中央处理器单元、通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理器和微处理器的组合等等。处理器1401可以用于读取上述存储器1402中存储的程序,执行如下操作:
获取配置文件和第一通信协议的标识,并基于该第一通信协议的标识查找该第一通信协议。该配置文件用于配置该第一通信协议;该第一通信协议为第一车辆采集自身数据和/或将采集的数据发送给上述设备1400的规则。
一种可能的实施方式中,上述获取上述第一通信协议的标识,包括:通过通信接口1403接收来自上述第一车辆的上述第一通信协议的标识。
一种可能的实施方式中,上述配置文件通过预设模型的形式存储在上述设备1400中,该预设模型包括多种不同通信协议中的数据种类的表达形式。
一种可能的实施方式中,上述处理器1401还执行如下操作:确定上述配置文件符合预设规则,该预设规则用于判定上述配置文件的内容的合理性。
图14所示设备1400中各个单元的具体操作以及有益效果可以参见上述方法实施例中对应的描述,此处不再赘述。
图15所示为本申请提供的设备的一种可能的硬件结构示意图,该设备可以是上述实施例所述方法中的终端设备(例如可以是上述第一车辆)。该设备1500包括:处理器1501、存储器1502和通信接口1503。处理器1501、通信接口1503以及存储器1502可以相互连接或者通过总线1504相互连接。
示例性的,存储器1502用于存储设备1500的计算机程序和数据,存储器1502可以包括但不限于是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmable read only memory,EPROM)或便携式只读存储器(compact disc read-only memory,CD-ROM)等。
在实现图11或图12所示实施例的情况下,执行图11或图12中的全部或部分单元的功能所需的软件或程序代码存储在存储器1502中。
在实现图11或图12实施例的情况下,如果是部分单元的功能所需的软件或程序代码存储在存储器1502中,则处理器1501除了调用存储器1502中的程序代码实现部分功能外,还可以配合其他部件(如通信接口1503)共同完成图11或图12实施例所描述的其他功能(如接收或发送数据的功能)。
通信接口1503的个数可以为多个,用于支持设备1500进行通信,例如接收或发送数据或信号等。
示例性的,处理器1501可以是中央处理器单元、通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,数字信号处理器和微处理器的组合等等。处理器1501可以用于读取上述存储器1502中存储的程序,执行如下操作:
向服务器发送该第一车辆的标识,该标识用于查找第一通信协议,该第一通信协议为上述第一车辆采集自身数据和/或将采集的数据发送给上述服务器的规则。
或者,处理器1501可以用于读取上述存储器1502中存储的程序,执行如下操作:
向服务器发送第一通信协议的标识,该标识用于查找上述第一通信协议,该第一通信协议为上述第一车辆采集自身数据和/或将采集的数据发送给上述服务器的规则。
图15所示设备1500中各个单元的具体操作以及有益效果可以参见上述方法实施例中对应的描述,此处不再赘述。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行以实现上述各个实施例及其可能的实施例中任意一个实施例中服务器所做的操作。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行以实现上述各个实施例及其可能的实施例中任意一个实施例中终端设备(例如上述第一车辆)所做的操作。
本申请实施例还提供一种计算机程序产品,当该计算机程序产品被计算机读取并执行时,上述各个实施例及其可能的实施例中任意一个实施例中服务器所做的操作将被执行。
本申请实施例还提供一种计算机程序产品,当该计算机程序产品被计算机读取并执行时,上述各个实施例及其可能的实施例中任意一个实施例中终端设备(例如上述第一车辆)所做的操作将被执行。
本申请实施例还提供一种计算机程序,当该计算机程序在计算机上执行时,将会使该计算机实现上述各个实施例及其可能的实施例中任意一个实施例中服务器所做的操作。
本申请实施例还提供一种计算机程序,当该计算机程序在计算机上执行时,将会使该计算机实现上述各个实施例及其可能的实施例中任意一个实施例中终端设备(例如上述第一车辆)所做的操作。
本申请实施例还提供一种***,该***包括上述各个实施例及其可能的实施例中任意一个实施例中所述的服务器,该服务器例如可以是图1所示的服务器210。
综上所述,本申请提供的数据通信处理方法及设备,能够低成本且灵活地解析车辆通过各种不同的通信协议发送的数据。
本申请中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。还应理解,尽管以下描述使用术语第一、第二等来描述各种元素,但这些元素不应受术语的限制。这些术语只是用于将一元素与另一元素区别分开。例如,在不脱离各种所述示例的范围的情况下,第一图像可以被称为第二图像,并且类似地,第二图像可以被称为第一图像。第一图像和第二图像都可以是图像,并且在某些情况下,可以是单独且不同的图像。
还应理解,在本申请的各个实施例中,各个过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
还应理解,术语“包括”(也称“includes”、“including”、“comprises”和/或“comprising”)当在本说明书中使用时指定存在所陈述的特征、整数、步骤、操作、元素、和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元素、部件、和/或其分组。
还应理解,说明书通篇中提到的“一个实施例”、“一实施例”、“一种可能的实现方式”意味着与实施例或实现方式有关的特定特征、结构或特性包括在本申请的至少一个实施例中。 因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”、“一种可能的实现方式”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (28)
- 一种数据通信处理方法,其特征在于,所述方法包括:服务器获取配置文件和第一车辆的标识,所述配置文件用于配置第一通信协议,所述第一车辆的标识关联所述第一通信协议;所述第一通信协议为所述第一车辆采集自身数据和/或将采集的数据发送给所述服务器的规则;所述服务器基于所述第一车辆的标识,查找所述第一通信协议。
- 根据权利要求1所述的方法,其特征在于,所述配置文件通过预设模型的形式存储在所述服务器中,所述预设模型包括多种不同通信协议中的数据种类的表达形式。
- 根据权利要求1或2所述的方法,其特征在于,所述方法还包括:所述服务器确定所述配置文件符合预设规则,所述预设规则用于判定所述配置文件的内容的合理性。
- 根据权利要求3所述的方法,其特征在于,所述服务器确定所述配置文件符合预设规则,包括:所述服务器确定所述配置文件中第一数据的最大值不大于规定的最大值,并确定所述第一数据的最小值不小于规定的最小值。
- 根据权利要求1至4任一项所述的方法,其特征在于,所述服务器获取配置文件,包括:所述服务器接收所述第一车辆的注册信息,所述注册信息包括所述配置文件。
- 一种数据通信处理方法,其特征在于,所述方法包括:服务器获取配置文件和第一通信协议的标识,所述配置文件用于配置所述第一通信协议;所述第一通信协议为第一车辆采集自身数据和/或将采集的数据发送给所述服务器的规则;所述服务器基于所述第一通信协议的标识查找所述第一通信协议。
- 根据权利要求6所述的方法,其特征在于,所述服务器获取所述第一通信协议的标识,包括:所述服务器接收来自所述第一车辆的所述第一通信协议的标识。
- 根据权利要求6或7所述的方法,其特征在于,所述配置文件通过预设模型的形式存储在所述服务器中,所述预设模型包括多种不同通信协议中的数据种类的表达形式。
- 根据权利要求6至8任一项所述的方法,其特征在于,所述方法还包括:所述服务器确定所述配置文件符合预设规则,所述预设规则用于判定所述配置文件的内容的合理性。
- 一种数据通信处理方法,其特征在于,所述方法包括:第一车辆向服务器发送所述第一车辆的标识,所述标识用于查找第一通信协议,所述第一通信协议为所述第一车辆采集自身数据和/或将采集的数据发送给所述服务器的规则。
- 一种数据通信处理方法,其特征在于,所述方法包括:第一车辆向服务器发送第一通信协议的标识,所述标识用于查找所述第一通信协议,所述第一通信协议为所述第一车辆采集自身数据和/或将采集的数据发送给所述服务器的规则。
- 一种服务器,其特征在于,所述服务器包括:获取单元,用于获取配置文件和第一车辆的标识,所述配置文件用于配置第一通信协议,所述第一车辆的标识关联所述第一通信协议;所述第一通信协议为所述第一车辆采集自身数据和/或将采集的数据发送给所述服务器的规则;查找单元,用于基于所述第一车辆的标识,查找所述第一通信协议。
- 根据权利要求12所述的服务器,其特征在于,所述配置文件通过预设模型的形式存储在所述服务器中,所述预设模型包括多种不同通信协议中的数据种类的表达形式。
- 根据权利要求12或13所述的服务器,其特征在于,所述服务器还包括:处理单元,用于确定所述配置文件符合预设规则,所述预设规则用于判定所述配置文件的内容的合理性。
- 根据权利要求14所述的服务器,其特征在于,所述处理单元具体用于:确定所述配置文件中第一数据的最大值不大于规定的最大值,并确定所述第一数据的最小值不小于规定的最小值。
- 根据权利要求12至15任一项所述的服务器,其特征在于,所述获取单元具体用于:接收所述第一车辆的注册信息,所述注册信息包括所述配置文件。
- 一种服务器,其特征在于,所述服务器包括:获取单元,用于获取配置文件和第一通信协议的标识,所述配置文件用于配置所述第一通信协议;所述第一通信协议为第一车辆采集自身数据和/或将采集的数据发送给所述服务器的规则;查找单元,用于基于所述第一通信协议的标识查找所述第一通信协议。
- 根据权利要求17所述的服务器,其特征在于,所述获取单元具体用于:接收来自所述第一车辆的所述第一通信协议的标识。
- 根据权利要求17或18所述的服务器,其特征在于,所述配置文件通过预设模型的形式存储在所述服务器中,所述预设模型包括多种不同通信协议中的数据种类的表达形式。
- 根据权利要求17至19任一项所述的服务器,其特征在于,所述服务器还包括:处理单元,用于确定所述配置文件符合预设规则,所述预设规则用于判定所述配置文件 的内容的合理性。
- 一种车辆,其特征在于,所述车辆包括:发送单元,用于向服务器发送所述车辆的标识,所述标识用于查找第一通信协议,所述第一通信协议为所述车辆采集自身数据和/或将采集的数据发送给所述服务器的规则。
- 一种车辆,其特征在于,所述车辆包括:发送单元,用于向服务器发送第一通信协议的标识,所述标识用于查找所述第一通信协议,所述第一通信协议为所述车辆采集自身数据和/或将采集的数据发送给所述服务器的规则。
- 一种服务器,其特征在于,所述服务器包括处理器和存储器,其中,所述存储器用于存储计算机程序,所述处理器用于执行所述存储器中存储的计算机程序,使得所述服务器执行如权利要求1至5任一项或者如权利要求6至9任一项所述的方法。
- 一种车辆,其特征在于,所述车辆包括处理器和存储器,其中,所述存储器用于存储计算机程序,所述处理器用于执行所述存储器中存储的计算机程序,使得所述车辆执行如权利要求10或者如权利要求11所述的方法。
- 一种***,其特征在于,所述***包括一个或多个服务器,所述服务器为权利要求12至16任一项所述的服务器;或者,所述服务器为权利要求17至20任一项所述的服务器。
- 一种***,其特征在于,所述***包括一个或多个服务器,所述服务器为权利要求23所述的服务器。
- 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现权利要求1至5任意一项所述的方法;或者,所述计算机程序被处理器执行以实现权利要求6至9任意一项所述的方法;或者,所述计算机程序被处理器执行以实现权利要求10所述的方法;或者,所述计算机程序被处理器执行以实现权利要求11所述的方法。
- 一种计算机程序产品,其特征在于,所述计算机程序产品被处理器执行时,权利要求1至5任意一项所述的方法将被执行;或者,所述计算机程序产品被处理器执行时,权利要求6至9任意一项所述的方法将被执行;或者,所述计算机程序产品被处理器执行时,权利要求10所述的方法将被执行;或者,所述计算机程序产品被处理器执行时,权利要求11所述的方法将被执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP21927644.1A EP4287585A4 (en) | 2021-02-24 | 2021-11-25 | DATA COMMUNICATION PROCESSING METHOD AND DEVICE |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110206223.3A CN114979191A (zh) | 2021-02-24 | 2021-02-24 | 数据通信处理方法及设备 |
CN202110206223.3 | 2021-02-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022179220A1 true WO2022179220A1 (zh) | 2022-09-01 |
Family
ID=82973575
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/133280 WO2022179220A1 (zh) | 2021-02-24 | 2021-11-25 | 数据通信处理方法及设备 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4287585A4 (zh) |
CN (1) | CN114979191A (zh) |
WO (1) | WO2022179220A1 (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103428627A (zh) * | 2012-05-22 | 2013-12-04 | ***通信集团江苏有限公司 | 物联网***中数据的传送方法、物联网***及相应装置 |
US20140195102A1 (en) * | 2013-01-09 | 2014-07-10 | Martin D. Nathanson | Vehicle communications via wireless access vehicle environment |
CN106559337A (zh) * | 2015-09-24 | 2017-04-05 | 中兴通讯股份有限公司 | 车联网信息传输方法及相关设备 |
CN110722947A (zh) * | 2019-10-26 | 2020-01-24 | 深圳市元征科技股份有限公司 | 一种车辆控制方法及装置 |
CN112019609A (zh) * | 2020-08-18 | 2020-12-01 | 深圳市汇川技术股份有限公司 | 基于物联网的设备监控方法、装置、设备及计算机介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170142187A1 (en) * | 2015-10-18 | 2017-05-18 | Juan R. Pimentel | Method for Uploading All of In-Vehicle Data to the Cloud in an Efficient, Automated, Secure, and Reliable Fashion |
CN105554059B (zh) * | 2015-11-25 | 2018-09-25 | 北京华油信通科技有限公司 | 基于北斗导航技术的物流运输智能感知与位置服务*** |
US10750336B2 (en) * | 2016-12-22 | 2020-08-18 | Geotab Inc. | System and method for managing a fleet of vehicles including electric vehicles |
US10315520B2 (en) * | 2017-04-04 | 2019-06-11 | Southwest University | Apparatuses and methods of an in-vehicle gateway system for monitoring and controling in-vehicle subsystems |
US11159658B2 (en) * | 2018-07-23 | 2021-10-26 | Moj.Io, Inc. | Homogenization of telematics data through unified messaging protocol |
US10936461B2 (en) * | 2018-12-21 | 2021-03-02 | Upstream Security, Ltd. | System and method for sequence-based anomaly detection and security enforcement for connected vehicles |
-
2021
- 2021-02-24 CN CN202110206223.3A patent/CN114979191A/zh active Pending
- 2021-11-25 EP EP21927644.1A patent/EP4287585A4/en active Pending
- 2021-11-25 WO PCT/CN2021/133280 patent/WO2022179220A1/zh unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103428627A (zh) * | 2012-05-22 | 2013-12-04 | ***通信集团江苏有限公司 | 物联网***中数据的传送方法、物联网***及相应装置 |
US20140195102A1 (en) * | 2013-01-09 | 2014-07-10 | Martin D. Nathanson | Vehicle communications via wireless access vehicle environment |
CN106559337A (zh) * | 2015-09-24 | 2017-04-05 | 中兴通讯股份有限公司 | 车联网信息传输方法及相关设备 |
CN110722947A (zh) * | 2019-10-26 | 2020-01-24 | 深圳市元征科技股份有限公司 | 一种车辆控制方法及装置 |
CN112019609A (zh) * | 2020-08-18 | 2020-12-01 | 深圳市汇川技术股份有限公司 | 基于物联网的设备监控方法、装置、设备及计算机介质 |
Non-Patent Citations (1)
Title |
---|
See also references of EP4287585A4 |
Also Published As
Publication number | Publication date |
---|---|
EP4287585A4 (en) | 2024-07-17 |
CN114979191A (zh) | 2022-08-30 |
EP4287585A1 (en) | 2023-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110933146B (zh) | 一种数据转换方法、装置和服务器 | |
CN108093070B (zh) | 一种物联网数据服务中间件*** | |
CN110083088B (zh) | 信号控制转换装置以及信号控制转换方法 | |
US10666718B2 (en) | Dynamic data transport between enterprise and business computing systems | |
CN109768970B (zh) | 一种基于可配置的通用协议生成方法 | |
CN108881251B (zh) | 一种任意二进制设备接入解析与标准化的***及方法 | |
CN111064627A (zh) | 一种电力物联终端即插即用管理*** | |
CN110912782B (zh) | 一种数据采集方法、装置及存储介质 | |
CN109861998B (zh) | 一种基于北斗短报文协议的插件式动态解析***及方法 | |
WO2010081317A1 (zh) | 一种服务访问方法及*** | |
CN114089713A (zh) | 一种基于uds的通信方法、ecu及上位机 | |
WO2022179220A1 (zh) | 数据通信处理方法及设备 | |
CN117528571B (zh) | 一种智能网关机无线传感器自动识别接入方法及其*** | |
CN114039808A (zh) | 基于can的多通道的can/lin/sent转发协议 | |
CN116156012B (zh) | 通用的异构物联网设备标准化接入和数据解析***与方法 | |
CN101964788B (zh) | 面向半导体制造装备功能仿真的通信协议模式配置方法 | |
CN102594871B (zh) | 一种数据封装方法、***、适配器及物联网中间件 | |
CN116634042A (zh) | 大数据报文解析方法、装置及存储介质 | |
US20200311040A1 (en) | Dynamically rendering an application programming interface for internet of things applications | |
CN113630368B (zh) | 自动云联仪表的通信方法、***、终端以及介质 | |
CN110417704B (zh) | 一种基于异构网融合的物联网网关预加载方法及装置 | |
CN115396368B (zh) | 基于节点寻址及数据封装的高效复合型网络数据传输方法 | |
WO2021197327A1 (zh) | 信号处理方法及相关设备 | |
CN116401146B (zh) | 一种数据交互方法、装置、存储介质、服务器及车辆 | |
CN116909521A (zh) | 一种开放式跨平台通讯软件***及运行方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21927644 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2021927644 Country of ref document: EP Effective date: 20230901 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |