The present disclosure relates to a system communicating between a center device and a master device as well as a target device installed in a vehicle, and a data structure of data used for the system.
A related art discloses the technology in which a server delivers the ECU update programs to in-vehicle devices based on OTA (Over The Air) and the vehicle rewrites the update programs.
According to one example, an in-vehicle communication system includes a center device that transmits update data to a target device as an electronic control unit installed in a vehicle, a master device that is installed in the vehicle, receives the update data as a distribution package, and transfers the update data to the target device, and the target device that writes the update data transferred from the master device into a storage portion. The center device transmits reprogramming policy metadata to the master device. The master device requests the center device for download metadata. The master device interprets the download metadata, acquires necessary data, and perform data update control of the target device.
The above and other objects, features, and advantages of the present disclosure will become more apparent from the following detailed description made by reference to the accompanying drawings. In the drawings:
In recent years, there has been an increase in the scale of application programs for vehicle control and diagnosis installed in electronic control units (ECUs) for vehicles along with diversified vehicle controls such as driving support functions and automatic driving functions. There has been also an increase in chances of reprogramming to rewrite ECU application programs due to version upgrades such as function improvements. For example, the development of communication networks also promotes connected car technologies. Under these circumstances, for example, a related art discloses the technology in which a server delivers the ECU update programs to in-vehicle devices based on OTA (Over The Air) and the vehicle rewrites the update programs.
The update program is rewritten according to a storage method and a streaming method. The storage method downloads all update programs from the center device to the vehicle memory and then performs updates. The streaming method performs updates while downloading update programs from the center device to the vehicle. In terms of the package structure to distribute update programs according to the ECU platform, the specifications of JASPAR (Japan Automotive Software Platform and Architecture) specify data requirements applicable to the Classic Platform (CP) running on a static OS (Operating System) compliant to the standards body AUTOSAR (AUTomotive Open System ARchitecture). AUTOSAR specifies data requirements applicable to a new type of adaptive platform (AP) running on a dynamic OS.
The ECUs installed on vehicles may mixedly use storage and streaming methods or CP and AP types. In the future, the onboard ECUs may be compatible with in-vehicle Linux (registered trademark) such as Automotive Grade Linux (AGL) or may optionally use smartphones, for example, to download data. However, the current OTA technology does not take into account the above-described variations of communication modes.
The present disclosure has been made in consideration of the foregoing. The present disclosure provides an in-vehicle communication system, a data structure of reprogramming policy metadata, and a data structure of download metadata used for that system capable of communication through the use of flexible data formats without regard to diversification of platforms or distribution methods for electronic control units.
According to one aspect of the present disclosure, An in-vehicle communication system comprising: a center device that transmits update data as a distribution package to an electronic control unit as a target device installed in a vehicle; a master device that is installed in the vehicle, receives the distribution package, and transfers the update data to the target device; and the target device that writes the update data transferred from the master device to a storage portion. The center device transmits reprogramming policy metadata indicating configuration information on the distribution package to the master device. The reprogramming policy metadata has a three-layer structure including a distribution layer to store communication protocol and communication destination information, a master layer to store information on a platform of the master device, and a target layer to store information on a platform of the target device. When interpreting the reprogramming policy metadata and determining that the distribution package is compatible with a subject vehicle, the master device requests the center device for download metadata that stores control information for acquiring data needed for each of the three layers. When the center device transmits the download metadata to the master device and the master device interprets the download metadata and acquires necessary data, the master device performs data update control of the target device.
According to another aspect of the present disclosure, an in-vehicle communication system comprising: a center device that transmits update data to a target device as an electronic control unit installed in a vehicle; a master device that is installed in the vehicle, receives the update data as a distribution package, and transfers the update data to the target device; the target device that writes the update data transferred from the master device into a storage portion. The center device transmits reprogramming policy metadata indicating configuration information on the distribution package to the master device. When interpreting the reprogramming policy metadata and determining that the distribution package is compatible with a subject vehicle, the master device requests the center device for download metadata indicating information for acquiring the update data for the target device. When the center device transmits the download metadata to the master device, the master device interprets the download metadata, acquires necessary data, and perform data update control of the target device.
According to another aspect of the present disclosure, an in-vehicle communication system comprising: a center device that transmits update data to a target device as an electronic control device installed in a vehicle; and a master device that is installed in the vehicle, receives the update data as a distribution package, and transfers the update data to the target device. The center device transmits reprogramming policy metadata indicating configuration information on the distribution package to the master device. When the master device interprets the reprogramming policy metadata and determines that the distribution package is compatible with a subject vehicle, the master device requests the center device for download metadata indicating information for acquiring update data for the target device. When the center device transmits the download metadata to the master device, the master device interprets the download metadata to obtains necessary data and performs data update control including writing update data into a storage unit of the target device.
The reprogramming policy metadata represents the configuration information on the distribution package. In other words, the reprogramming policy metadata contains information representing the package configuration type. The main purpose of reprogramming policy metadata is to allow the vehicle to verify the contents of the data and prevent package delivery errors. The download metadata stores control information to acquire data. In other words, the download metadata specifies the contents so that the master device can identify the information on downloading update data corresponding to each of multiple target ECUs. The metadata is organized into a three-layer structure of distribution, master, and target. It is possible to flexibly define transfer methods, platform types, and distribution package types, regardless of a possible increase therein, and update data on the target device.
The in-vehicle communication system according to one example, the reprogramming policy metadata includes, as parameters for the master layer, platform type information on the master device and control method type information on a platform. The reprogramming policy metadata includes, as parameters for the target layer, platform type information on the target device, control method type information on a platform, and type information on a data transfer method from the center device to the target device. The master device compares each of the information with design configuration information managed by the master device itself to determine whether the distribution package is compatible with the subject vehicle.
The design configuration information relates to a vehicle mounted with the master device and the target device and to the hardware and software of the master device and the target device. The above-described type information is contained in parameters of reprogramming policy metadata for the master and target layers, enabling the master device to interpret the type information and transfer data to the target device.
The in-vehicle communication system according to one example, the download metadata includes, as parameters for each layer, URI (Uniform Resource Identifier) of a data acquisition destination, a hash value attached to data, ID of the target device, and type information on data transfer method from the center device. The download metadata includes, as parameters for the master layer and the target layer, platform type information on the master device and the target device. The master device acquires data needed for each layer at necessary timing based on each of the information and performs data update control of the target device.
The above-described information is contained in the parameters of each layer of download metadata, enabling the master device to interpret this information and transfer data to the target device based on more specific procedures.
As illustrated in
The expediential classifications are used for the server, the database, and various processing portions in the server according to the present embodiment. There may be available other modes to achieve similar functions. The OTA master is divided into various processing portions for explanatory convenience. For example, the OTA master may be integrated or divided into multiple units in terms of software or hardware.
The PKG generation logic DB 4 stores data corresponding to each piece of information to generate RP metadata and DL metadata. A metadata specification portion 6 performs processing to specify items and data formats for the RP and DL metadata. An RP metadata generation portion 7 generates RP metadata. The encryption/signature processing portion 8 encrypts the generated RP metadata and adds a digital signature to it.
A DL metadata generation portion 9 generates DL metadata. A calculation portion 10 calculates the data size of the update data and calculates a hash value of the update data. An encryption/signature processing portion 11 encrypts the generated DL metadata and adds a digital signature to it. A PKG body generation portion 12 generates the body part of a distribution package including update data, for example.
The PKG generation server 2 transfers the RP metadata, DL metadata, and distribution package, generated by the above-described processing portions, to the distribution server 3. The distribution server 3 accesses the design configuration information DB 5 and acquires the configuration information on a vehicle where the distribution package is transmitted. The distribution server 3 then supplies the configuration information to the distribution package.
As illustrated in
An RP metadata analysis processing portion 34 analyzes RP metadata received by the OTA master 32. A decryption/signature verification portion 35 performs verification by using the digital signature given to the RP metadata and decrypts the RP metadata.
An DL metadata analysis processing portion 36 analyzes DL metadata received by the OTA master 32. A calculation portion 37 calculates the data size of the update data and calculates a hash value of the update data. The update data is a parameter of the DL metadata. A decryption/signature verification portion 38 performs verification by using the digital signature given to the DL metadata and decrypts the DL metadata.
A PKG body acquisition portion 39 acquires the body part of a distribution package received by the OTA master 32. A transfer portion 40 transfers the update data included in the acquired distribution package to the target ECU 33. An analysis portion 41 analyzes items and data formats of the RP and DL metadata.
«Reprogramming Policy Metadata»
The RP metadata illustrated in
<RP Metadata Version>
The RP metadata version stores version information such as “1.0.0” or “2.0.0.”
<Communication Layer>
The distribution layer stores information on the protocol used to communicate with the OTA center 1 such as Uptane (registered trademark) or OMA-DM (Open Mobile Alliance-Device Management), “cellular” indicating the OTA master 32 as a communication method, and other information such as a smartphone or USB memory to be described later.
<Master Layer>
The master layer stores information on the OTA master 32 whose platform (PF) is AP, CP, AGL (Automotive Grade Linux), or Android (registered trademark), for example. The specifications according to the general incorporated association JASPAR specify the data requirements applicable to the classic platform (CP) running on the static OS according to the standardizing body AUTOSAR in terms of the package structure to distribute update programs appropriate for the ECU platforms. AUTOSAR specifies the data requirements applicable to a new type of adaptive platform (AP) running on a dynamic OS. AGL represents an onboard Linux. Android represents Android Automotive OS.
Moreover, the master layer stores information on the control method such as “parameter” for processing according to parameters set according to a specific format or “script” for processing based on a freer description format without the use of a specific format, for example.
<Target Layer>
This information corresponds to the target ECU 33. The PF, the transfer method, and the control method conform to those described above. The target ID represents an ID corresponding to the target ECU 33 and is stored as an option.
«Download Metadata»
The DL metadata illustrated in
<Distribution Layer>
When the communication protocol is Uptane, for example, the distribution layer provides information to acquire Uptane metadata and stores the corresponding URI, data name, data size, hash value, target ID, and transfer method, for example.
<Master Layer>
The master layer provides information to acquire Vehicle PKG, for example, and stores the same items as the distribution layer. Multiple master layers may be available.
<Target Layer>
The master layer provides information to acquire Software PKG, for example, and stores the same items as the distribution layer. Vehicle PKG and Software PKG are described on pages 50, 52, and 53 of “Specification of Update Configuration Management AUTOSAR AP R20-11, Document ID No. 706,” for example. Refer to the related description in the document.
The description below explains the differences between AP and CP. AP and CP represent software platforms. The software platform is also called a software architecture. CP stands for AUTOSAR Classic Platform. AP stands for AUTOSAR Adaptive Platform. ECUs that operate based on the CP specifications may be referred to as CP ECUs or CP's ECUs. ECUs that operate based on the AP specifications may be referred to as AP ECUs or AP's ECUs.
AP and CP differ in operating systems (OSs) or development languages used. CP ECU and AP ECU differ in the structures of receivable packages. The difference in the package structures mainly originates from the difference in ECU processing performances. Generally, CP ECU indicates low processing performance. The specification data contained in the package is also written in binary. The package data structure is easy to interpret and process even on ECUs with low processing performance.
Contrastingly, AP ECUs indicate high processing performance, making it possible to install a parser function that analyzes structural character data written in some language and converts the data into a program-friendly data structure. The data structure can use an object-oriented data format such as JSON (JavaScript Object Notation) instead of simple binary data. The package data structure is flexible.
Four different software PKGs corresponding to the target layers are used for the platforms AP, CP, AGL, and Android corresponding to UCM (Update Configuration Management) 1 through 4. The platforms AGL and Android are not specified in AUTOSAR but may be also available when the ECU adopts these platforms. The UCM is explained in AUTOSAR and a detailed description is omitted for purposes of brevity.
In
The description below explains the operations of the present embodiment. In the OTA center 1, as illustrated in
The PKG generation server 2 confirms the inside of the PKG generation logic DB 4 based on the PF type (AP/CP) of the central ECU 32B in the update target system information (S4). If the PF type is AP (S5; YES), the PKG generation server 2 generates DL metadata based on JSON (S6) and fills in RP metadata items from the update target system information (S7). If the PF type is CP (S5; NO), the PKG generation server 2 generates DL metadata in binary (S8) and proceeds to step S7.
The PKG generation server 2 allows the calculation portion 10 to calculate the data size and the hash value of DL metadata and fills in the corresponding items (S9). The PKG generation server 2 then fills in items for the target ID and the transfer method from the update target system information (S10). The PKG generation server 2 acquires a DL metadata file name from a reprogramming setup file to settle the DL metadata (S11). The encryption/signature processing portion 8 performs an encryption/signature process on the RP metadata (S12). The encryption/signature processing portion 11 performs an encryption/signature process on the DL metadata (S13). The process then transmits the package body, the RP metadata, and the DL metadata to the distribution server 3 (S14).
If all items match (YES), the OTA master 32 specifies the package structure based on the RP metadata (S24) and acquires the DL metadata from the OTA center 1 (S25). The OTA master 32 decrypts the DL metadata and verifies its signature (S26). If the verification result causes an error, the OTA master 32 returns error status information to the OTA center 1 (S29). If the verification result is successful, the OTA master 32 downloads data for the master layer and the target layer from the URI specified in the DL metadata (S30, S31).
The OTA master 32 configures an update program for each target ECU 33 (S32) and updates the program (reprogramming) for each platform and OTA method in each package structure of the target ECU 33 (S33). From here, the process branches to steps S34(1) through S34(4). When the central ECU 32B is CP, the process branches to steps S34(5) through S34(8) in
Step S34(1) applies to rewriting when the combination of central and target ECUs is AP-AP and the target ECU 33 uses the OTA method of storage. In this case, the UCM master/UCM performs an update according to the procedure described in the AUTOSAR Specification (SWS) (S35(1)). Step S34(2) applies to rewriting when the combination thereof is AP-AP and the OTA method is streaming. The process performs steps S38 through S45 in FIG. 13 of Japanese Patent Application No. 2021-32593 (S35(2)). The contents of Japanese Patent Application No. 2021-32593 are incorporated by reference as descriptions of technical elements in this specification.
Step S34(3) applies to rewriting when the combination is AP-CP and the OTA method is storage. In this case, the UCM master and a flushing adapter perform an update according to the procedure described in the AUTOSAR Specification (SWS) (S35(3)). Step S34(4) applies to rewriting when the combination is AP-CP and the OTA method is streaming. In this case also, the process proceeds to step S35(3).
Step S34(5) as illustrated in
Step S34(7) applies to rewriting when the combination is CP-CP and the OTA method is storage. In this case, the OTA master performs an update according to the procedure described in paragraphs through and FIGS. 115 through 118 of JP 2020-27633 A (S35(7)). Step S34(8) applies to rewriting when the combination is CP-CP and the OTA method is streaming. The process is similar to step S35(2) (S35(8)). The contents of JP 2020-27633 A are incorporated by reference as descriptions of technical elements in this specification.
According to the present embodiment as above, the OTA center 1 transmits RP metadata to the OTA master 32. The RP metadata provides configuration information on distribution packages. The RP metadata has a three-layer structure composed of a distribution layer to store communication protocols and communication destination information; a master layer to store information on the platform of the OTA master 32; and a target layer to store information on the platform of the target ECU 33.
The OTA master 32 interprets the RP metadata and determines that the distribution package is compatible with the subject vehicle. Then, the OTA master 32 requests the OTA center 1 to supply the DL metadata that stores control information for acquiring the data needed for each of the three layers. OTA center 1 transmits the DL metadata to the OTA master 32. Then, the OTA master 32 interprets the DL metadata, acquires the necessary data, and perform data update control on the target ECU 33.
The RP metadata mainly specifies the contents of a distribution package the OTA center 1 transmits to the OTA master 32. The DL metadata mainly specifies the contents of update data the OTA master 32 transmits to the target ECU 33. The metadata is organized into a three-layer structure of distribution, master, and target. It is possible to flexibly define transfer methods, platform types, and distribution package types, regardless of a possible increase therein, and update data on the target ECU 33.
Specifically, the RP metadata includes master layer parameters such as platform type information on the OTA master 32 and control method type information on the platform. Target layer parameters include type information on the platform of the target ECU 33, type information on the platform control method, and type information on the data transfer method from the OTA center 1 to the target ECU 33. The OTA master 32 compares the above-described information with the design configuration information managed in the OTA master 32 to determine whether the distribution package is compatible with the subject vehicle.
The above-described type information is included in the master and target layer parameters of the RP metadata. The OTA master 32 can interpret these pieces of type information and transfer data to the target ECU 33.
The DL metadata includes parameters for each layer such as the URI of the data acquisition destination, the hash value given to the data, the ID of the target ECU 33, and type information on the data transfer method from the OTA center 1. Parameters in the master layer and the target layer include type information on platforms of the OTA master 32 and the target ECU 33. Based on each piece of the information, the OTA master 32 acquires data needed for each layer at the required timing and controls the data update for the target ECU 33. The above-described information is included in the parameters of the DL metadata for each layer. The OTA master 32 can interpret the information and transfer data to the target ECU 33 based on more specific procedures.
The mutually corresponding parts in the second and first embodiments are designated by the same reference numerals and a detailed description is omitted for simplicity. As illustrated in
In
The user references the campaign information displayed on the smartphone 42, checks the update data size, and then selects a download destination for the distribution package. The download destination is a mobile storage terminal such as a USB memory device connected to “cellular” signifying the OTA master 32, the smartphone 42, or the car navigation system. The distribution server 3 receives the selection result (S43) and the smartphone 42 or the USB memory may be selected (S44; YES). In this case, the distribution server 3 uses e-mail, for example, to notify the smartphone 42 of the download destination link information (S45).
The user downloads the distribution package from the distribution server 3 based on the above-described notification and saves the distribution package in the directory specified on the smartphone 42 or the USB memory (S46). Thereafter, a download completion notification may be received from smartphone 42 (S47; YES). Then, the distribution server 3 receives the “notification for synchronization” again from the OTA master 32 (S48) similar to step S41. The PKG generation server 2 generates RP metadata and DL metadata as illustrated in the first embodiment (S49). Then, the distribution server 3 transmits each metadata to the OTA master 32 (S50, S51).
As illustrated in
As illustrated in
According to the second embodiment as above, the OTA center 1 notifies the smartphone 42 of the information on update data. The user uses the smartphone 42 to specify the destination of the update data to the smartphone 42 or the USB memory. The OTA center 1 transmits the update data to the smartphone 42 or the USB memory. The OTA center 1 stores communication destination information in the smartphone 42 or the USB memory and successively transmits the RP metadata and the DL metadata to the OTA master 32. The OTA master 32 receives the distribution package from the smartphone 42 or the USB memory according to the communication destination information.
As above, the OTA master 32 can receive the distribution package transmitted from the OTA center 1 via the smartphone 42 or the USB memory and can transfer the update data to the target ECU 33. It is possible to more flexibly update the data in the target ECU 33.
Conventionally, update data is distributed to multiple target ECUs based on the storage method by archiving multiple packages corresponding to the target ECUs in one zip file. As illustrated in
Suppose information on the master layer for download metadata is comparable to one set (such as URI, data name, or data size). Then, the storage method distributes update data to multiple target ECUs by writing multiple sets of the information on the master layer for download metadata. In other words, this information is written in as many pieces as the target ECUs. Null or blank is set to the target layer.
As illustrated in
As illustrated in
As illustrated in
The OTA master receives installation completion notifications from all target ECUs 33 (S82, S83; YES, S84; YES). If the installation is successful (S85; YES), the OTA master instructs the target ECU 33 to execute activation (S86). If the installation is unsuccessful (S85; NO), the OTA master issues a rollback to be performed on the failed target ECU 33 and the target ECU 33 dependent on that ECU 33 (S87).
According to the third embodiment as above, the OTA center 1 distributes update data to the OTA master 32 and the target ECU 33 based on the storage method by dividing corresponding multiple distribution packages into multiple zip files. This makes it possible to decompress the received zip files and successively advance the process.
Conventionally, the entire update data transmitted from the OTA center to the vehicle is encrypted and signed. For example, suppose the data size is 2 GB. The signature verification cannot be performed until 2 GB of data is completely downloaded. However, depending on the contents, data transmitted from the OTA center does not necessarily require the encryption or the signature. Processing efficiency can be improved by applying the encryption and the signature to only important data such as billing-related data in the update data.
As illustrated in
Encryption type information:
The description below explains the operations of the fourth embodiment. As illustrated in
The PKG generation server 2 transfers the encrypted and signed data and the obfuscated plaintext to the distribution server 3 (S93). The distribution server 3 transmits these data to the OTA master 32 (S94).
As illustrated in
According to the fourth embodiment as above, the transmitting side encrypts and signs only some files or data in the distribution package transmitted from the OTA center 1 to the OTA master 32. The receiving side decrypts the files or data and verifies the signature thereof. It is possible to reduce the time required for processing such as encryption and decryption.
According to the fifth embodiment, as illustrated in
According to the fifth embodiment as above, the user can use the navigation system 43 or PC 45 to write the necessary information or distribution package acquired from the OTA center to the USB memory 44. The update data can be downloaded from the USB memory 44 via the navigation system 43 and then from the OTA master 32 to the target ECU 33.
The contents of RP metadata and DL metadata may be changed as appropriate according to individual designs.
The mobile information terminal is not limited to the smartphone 42 or the PC 45.
The mobile storage terminal or a mobile storage medium is not limited to the USB memory 44 or the SD card.
Although the present disclosure has been described in accordance with the embodiments, it is understood that the present disclosure is not limited to the embodiments and structures disclosed therein. The present disclosure incorporates various modifications and variations within the scope of equivalents. Furthermore, various combination and configuration, and other combination and configuration including one, more than one or less than one element may be made in the present disclosure.
Means and/or functions provided by each device or the like may be provided by software recorded in a substantive memory device and a computer that can execute the software, software only, hardware only, or some combination of them. For example, if the control device is provided by an electronic circuit that is hardware, the control device may be provided by a digital circuit or an analog circuit that includes a large number of logic circuits. The substantive memory device corresponds to a non-transitory computer readable storage medium.
The controller and the method according to the present disclosure may be implemented by a dedicated computer provided by constituting a processor and a memory programmed to execute one or more functions embodied by a computer program. Alternatively, the control unit and the method described in the present disclosure may be implemented by a dedicated computer provided by forming a processor with one or more dedicated hardware logic circuits. Alternatively, the control unit and the method described in the present disclosure may be implemented by one or more dedicated computers including a combination of a processor and a memory programmed to execute one or multiple functions and a processor including one or more hardware logic circuits. The computer program may also be stored on a computer-readable and non-transitory tangible recording medium as an instruction executed by a computer.
Number | Date | Country | Kind |
---|---|---|---|
2021-107835 | Jun 2021 | JP | national |
The present application is a continuation application of International Patent Application No. PCT/JP2022/022158 filed on May 31, 2022 which designated the U.S. and claims the benefit of priority from Japanese Patent Application No. 2021-107835 filed on Jun. 29, 2021. The entire disclosures of all of the above applications are incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/JP2022/022158 | May 2022 | US |
Child | 18389895 | US |