Calibration method and apparatus
By using common communication hardware and spreadsheet files, the calibration packets that comply with the communication protocol are sent to the electronic control unit, which solves the problems of high cost of calibration software and hardware in the prior art and is a simpler and more economical calibration method for electronic control unit.
Patent Information
- Application Number
- PCT/CN2024/097113
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-12-01
- Filing Date
- 2024-06-03
- Publication Date
- 2025-06-05
AI Technical Summary
The calibration software and communication hardware used in the calibration method of the existing electronic control unit are expensive, costly, complex in operation and inconvenient use.
The upper computer and the electronic control unit are connected through a common communication hardware, and a spreadsheet file that stores the attributes of at least one calibration variable is loaded, and a calibration message that conforms to the first communication protocol is sent to the electronic control unit based on the spreadsheet file, so that the electronic control unit can execute the calibration command based on the predetermined calibration protocol stack.
It realizes simpler and more convenient calibration of electronic control units, reduces costs, and does not require the use of expensive calibration software and dedicated communication hardware, simplifying the calibration operation process.
Smart Images

Figure CN2024097113_05062025_PF_FP_ABST
Abstract
Description
Calibration method and device
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS
[0002] This application is based on the Chinese patent application with application number: 202311645687.X and application date of December 1, 2023, and claims the priority of the Chinese patent application. The entire content of the Chinese patent application is hereby introduced into this application as a reference. Technical Field
[0003] The present application relates to the field of automotive technology, and more specifically, to a calibration method and device for an electronic control unit, an electronic control unit, and a carrier. Background Art
[0004] Currently, online calibration of automotive electronic control unit (ECU) parameters is achieved by integrating a software protocol stack based on the Controller Area Network (CAN) Calibration Protocol (CCP) or the Universal Measurement and Calibration Protocol (XCP), developed by the Application Systems Standardization Working Group (ASAP), into the ECU. This is combined with supporting calibration software (also known as calibration software) and communication hardware connecting the host computer and the ECU. However, existing ECU calibration methods utilize expensive calibration software and communication hardware, which are complex and inconvenient to use.
[0005] Summary of the Invention
[0006] The present application provides an electronic control unit calibration method and device, an electronic control unit, and a carrier to achieve simpler and more convenient electronic control unit calibration.
[0007] In a first aspect, an embodiment of the present application provides a calibration method for an electronic control unit, which is applied to a host computer, characterized in that the host computer and the electronic control unit are connected via communication hardware; the communication hardware is capable of communicating based on a first communication protocol; and the method includes:
[0008] Loading a spreadsheet file; the spreadsheet file is used to store attributes of at least one calibration variable;
[0009] Based on the spreadsheet file, a calibration message that complies with the first communication protocol is sent to the electronic control unit, so that the electronic control unit executes the calibration command carried by the calibration message based on a predetermined calibration protocol stack to calibrate the electronic control unit; the physical layer of the predetermined calibration protocol stack adopts the first communication protocol.
[0010] In the above technical solution, a host computer and an electronic control unit are connected via universal communication hardware. A spreadsheet file storing the attributes of at least one calibration variable is loaded, and a calibration message is sent to the electronic control unit based on the spreadsheet file. This allows the electronic control unit to execute the calibration command carried in the calibration message based on a predetermined calibration protocol stack, thereby calibrating the electronic control unit. Calibration can be achieved using the spreadsheet file and the predetermined calibration protocol stack, simplifying the calibration operation and making it more convenient to use. In addition, due to the low price and high cost-effectiveness of universal communication hardware, the cost of integrating this type of calibration protocol stack into the electronic control unit is low, eliminating the need for expensive calibration software and dedicated communication hardware, which can significantly reduce the cost of calibrating the electronic control unit.
[0011] In some embodiments, the sending, based on the electronic spreadsheet file, a calibration message that complies with the first communication protocol to the electronic control unit includes:
[0012] obtaining, based on the attributes of the target calibration variable in the electronic spreadsheet file, an operation code and an operand of a calibration command for calibrating the target calibration variable;
[0013] Encapsulating the operation code and the operand based on the first communication protocol to generate the calibration message;
[0014] The calibration message is sent to the electronic control unit.
[0015] In the above technical solution, based on the attributes of the target calibration variables stored in the spreadsheet, the operation code and operand of the calibration command are obtained, and based on the first communication protocol, the operation code and operand are encapsulated to generate a calibration message. This can simplify the calibration process and eliminate the very complicated operation of using special calibration software, making the entire calibration process simpler and more convenient.
[0016] In some embodiments, obtaining an operation code and an operand of a calibration command for calibrating the target calibration variable based on the attribute of the target calibration variable in the spreadsheet file includes:
[0017] In a case where the attributes include a read / write attribute, a component identification number, a unit, a data type, a conversion coefficient, and an address offset, and do not include a virtual mapping attribute, a base set automatic reconstruction attribute, a paged access attribute, and a byte sequence access attribute, determining the operation code based on the read / write attributes, and obtaining the operand based on the unit, the data type, the conversion coefficient, and the address offset;
[0018] In a case where the attributes include read-write attributes, component identification numbers, units, data types, conversion coefficients, address offsets, virtual mapping attributes, base set automatic reconstruction attributes, paging access attributes, and byte sequence access attributes, the operation code is determined based on the read-write attributes, and the operand is obtained based on the units, the data types, the conversion coefficients, the address offsets, the virtual mapping attributes, the base set automatic reconstruction attributes, the paging access attributes, and the byte sequence access attributes.
[0019] In the above technical solution, by constructing the calibration variables in the NVM calibration mode, the operation code of the calibration instruction is determined based on the read and write properties of the target tag variable, and the operand of the calibration instruction is obtained based on the unit, data type, conversion coefficient, address offset, virtual mapping property, basic set automatic reconstruction property, paging access property and byte sequence access property of the target tag variable. This can realize the calibration in the NVM calibration mode, and can flush the final value of the calibration variable confirmed after the RAM calibration mode to the mass-produced products, so as to solidify the product-level calibration value in stages.
[0020] In some embodiments, encapsulating the operation code and the operand based on the first communication protocol to generate the calibration message includes:
[0021] determining an operation command number field in the calibration message based on the operation code, determining a component identification number field in the calibration message based on the component identification number, determining a data field in the calibration message based on the operand, and determining a frame length field in the calibration message based on the operation code, the component identification number, and the operand;
[0022] Based on the first communication protocol, the operation command number field, the component identification number field, the data field and the frame length field are encapsulated to generate the calibration message.
[0023] In some embodiments, before loading the spreadsheet file, the method further includes:
[0024] receiving a first input;
[0025] In response to the first input, the spreadsheet file is generated.
[0026] In some embodiments, before sending a calibration command that complies with the first communication protocol to the electronic control unit based on the spreadsheet file, the method further includes:
[0027] receiving a second input; wherein the second input is used to indicate the type of the communication hardware;
[0028] Based on the type of the communication hardware, the communication hardware is driven.
[0029] In some embodiments, the application layer of the predetermined calibration protocol stack does not adopt the controller area network calibration protocol and does not adopt the general measurement and calibration protocol.
[0030] In a second aspect, an embodiment of the present application provides a calibration method for an electronic control unit, which is applied to an electronic control unit, wherein the electronic control unit is connected to a host computer via communication hardware; the communication hardware is capable of communicating based on a first communication protocol; the method includes:
[0031] Receiving a calibration message that complies with the first communication protocol and is sent by the host computer; the calibration message is sent by the host computer based on a spreadsheet file; the spreadsheet file is used to store attributes of at least one calibration variable;
[0032] Based on a predetermined calibration protocol stack, the calibration command carried in the calibration message is executed to calibrate the electronic control unit; the physical layer of the predetermined calibration protocol stack adopts the first communication protocol.
[0033] In some embodiments, executing the calibration command carried in the calibration message to calibrate the electronic control unit based on a predetermined calibration protocol stack includes:
[0034] Parsing the calibration message based on the predetermined calibration protocol stack to obtain the calibration command;
[0035] The calibration command is executed to calibrate the electronic control unit.
[0036] In a third aspect, an embodiment of the present application provides a calibration device for an electronic control unit, which is applied to a host computer, wherein the host computer is connected to the electronic control unit via communication hardware; the communication hardware is capable of communicating based on a first communication protocol; the device includes:
[0037] A loading module for loading a spreadsheet file; the spreadsheet file is used to store attributes of at least one calibration variable;
[0038] a sending module, configured to send a calibration message conforming to the first communication protocol to the electronic control unit based on the electronic spreadsheet file;
[0039] The calibration message is used to enable the electronic control unit to execute the calibration command carried in the calibration message based on a predetermined calibration protocol stack to calibrate the electronic control unit; the physical layer of the predetermined calibration protocol stack adopts the first communication protocol.
[0040] In some embodiments, the sending module includes:
[0041] an acquiring unit, configured to acquire an operation code and an operand of a calibration command for calibrating the target calibration variable based on the attribute of the target calibration variable in the electronic spreadsheet file;
[0042] a generating unit, configured to encapsulate the operation code and the operand based on the first communication protocol to generate the calibration message;
[0043] A sending unit is used to send the calibration message to the electronic control unit.
[0044] In some embodiments, the acquiring unit is specifically configured to:
[0045] In a case where the attributes include a read / write attribute, a component identification number, a unit, a data type, a conversion coefficient, and an address offset, and do not include a virtual mapping attribute, a base set automatic reconstruction attribute, a paged access attribute, and a byte sequence access attribute, determining the operation code based on the read / write attributes, and obtaining the operand based on the unit, the data type, the conversion coefficient, and the address offset;
[0046] In a case where the attributes include read-write attributes, component identification numbers, units, data types, conversion coefficients, address offsets, virtual mapping attributes, base set automatic reconstruction attributes, paging access attributes, and byte sequence access attributes, the operation code is determined based on the read-write attributes, and the operand is obtained based on the units, the data types, the conversion coefficients, the address offsets, the virtual mapping attributes, the base set automatic reconstruction attributes, the paging access attributes, and the byte sequence access attributes.
[0047] In some embodiments, the generating unit is specifically configured to:
[0048] determining an operation command number field in the calibration message based on the operation code, determining a component identification number field in the calibration message based on the component identification number, determining a data field in the calibration message based on the operand, and determining a frame length field in the calibration message based on the operation code, the component identification number, and the operand;
[0049] Based on the first communication protocol, the operation command number field, the component identification number field, the data field and the frame length field are encapsulated to generate the calibration message.
[0050] In some embodiments, the calibration device of the electronic control unit further includes:
[0051] A receiving module, configured to receive a first input;
[0052] A generating module is configured to generate the electronic spreadsheet file in response to the first input.
[0053] In some embodiments, the receiving module is further configured to receive a second input; the second input is configured to indicate a type of the communication hardware;
[0054] The calibration device of the electronic control unit also includes:
[0055] A driver module is used to drive the communication hardware based on the type of the communication hardware.
[0056] In some embodiments, the application layer of the predetermined calibration protocol stack does not adopt the controller area network calibration protocol and does not adopt the general measurement and calibration protocol.
[0057] In a fourth aspect, an embodiment of the present application provides a calibration device for an electronic control unit, which is applied to an electronic control unit, wherein the electronic control unit is connected to a host computer via communication hardware; the communication hardware is capable of communicating based on a first communication protocol; the device includes:
[0058] a receiving module, configured to receive a calibration message sent by the host computer in accordance with the first communication protocol; the calibration message is sent by the host computer based on a spreadsheet file; the spreadsheet file is configured to store attributes of at least one calibration variable;
[0059] An execution module is used to execute the calibration command carried in the calibration message to calibrate the electronic control unit based on a predetermined calibration protocol stack; the physical layer of the predetermined calibration protocol stack adopts the first communication protocol.
[0060] In some embodiments, the execution module includes:
[0061] A parsing unit, configured to parse the calibration message based on the predetermined calibration protocol stack to obtain the calibration command;
[0062] An execution unit is used to execute the calibration command.
[0063] In a fifth aspect, an embodiment of the present application provides an electronic control unit, comprising a calibration device for the electronic control unit as described in the fourth aspect.
[0064] In a sixth aspect, an embodiment of the present application provides a vehicle, characterized in that it includes an electronic control unit as described in the fifth aspect.
[0065] In the seventh aspect, the present application provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the calibration method of the electronic control unit as described in the first or second aspect above is implemented.
[0066] In an eighth aspect, the present application provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the calibration method of the electronic control unit as described in the first aspect above is implemented.
[0067] In the ninth aspect, the present application provides a chip, which includes a processor and a communication interface, the communication interface and the processor are coupled, and the processor is used to run programs or instructions to implement the calibration method of the electronic control unit as described in the first aspect or the second aspect.
[0068] In a tenth aspect, the present application provides a computer program product, comprising a computer program, which, when executed by a processor, implements the calibration method for an electronic control unit as described in the first or second aspect above. BRIEF DESCRIPTION OF THE DRAWINGS
[0069] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other relevant drawings can be obtained based on these drawings without creative work.
[0070] FIG1 is a schematic diagram of an application scenario of a calibration method for an electronic control unit provided in some embodiments of the present application;
[0071] FIG2 is a schematic diagram of a flow chart of a calibration method for an electronic control unit according to some embodiments of the present application;
[0072] FIG3 is a schematic diagram of the functional architecture of a communication program of a host computer provided in some embodiments of the present application;
[0073] FIG4 is a schematic diagram of a human-machine interface of a host computer provided in some embodiments of the present application;
[0074] FIG5 is a second flow chart of a calibration method for an electronic control unit provided in some embodiments of the present application;
[0075] FIG6 is a schematic diagram of the architecture of a predetermined calibration protocol stack provided in some embodiments of the present application;
[0076] FIG7 is a schematic diagram of a structure of a calibration device for an electronic control unit according to some embodiments of the present application;
[0077] FIG8 is a second structural diagram of a calibration device for an electronic control unit provided in some embodiments of the present application;
[0078] FIG9 is a schematic structural diagram of an electronic device provided in some embodiments of the present application. DETAILED DESCRIPTION
[0079] To make the purpose, technical solutions, and advantages of the embodiments of this application more clear, the technical solutions in the embodiments of this application will be clearly described below in conjunction with the drawings in the embodiments of this application. Obviously, the described embodiments are part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0080] Unless otherwise defined, all technical and scientific terms used in this application have the same meanings as commonly understood by those skilled in the art to which this application belongs. The terms used in the specification of this application are for the purpose of describing specific embodiments only and are not intended to limit this application. The terms "including" and "having" and any variations thereof in the specification and claims of this application and the above-mentioned drawings are intended to cover non-exclusive inclusions. The terms "first" and "second" in the specification and claims of this application or the above-mentioned drawings are used to distinguish different objects, rather than to describe a specific order or a primary-secondary relationship.
[0081] References to "embodiments" in this application mean that a particular feature, structure, or characteristic described in connection with the embodiment may be included in at least one embodiment of the application. The appearance of this phrase in various places in the specification does not necessarily refer to the same embodiment, nor does it constitute an independent or alternative embodiment that is mutually exclusive of other embodiments. It is understood, both explicitly and implicitly, by those skilled in the art that the embodiments described in this application may be combined with other embodiments.
[0082] In the description of this application, it should be noted that, unless otherwise expressly specified or limited, the terms "mounted," "connected," "connected," and "attached" should be understood in a broad sense. For example, they may refer to fixed connections, detachable connections, or integral connections; they may refer to direct connections, indirect connections through an intermediate medium, or internal connections between two components. Those skilled in the art will understand the specific meanings of the above terms in this application based on specific circumstances.
[0083] The term "and / or" in this application simply describes an association between related objects, indicating that three possible relationships exist. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. In addition, the character " / " in this application generally indicates that the related objects are in an "or" relationship.
[0084] The term "multiple" in this application refers to more than two (including two). Similarly, "multiple groups" refers to more than two groups (including two groups), and "multiple pieces" refers to more than two pieces (including two pieces).
[0085] The electronic control unit mentioned in the embodiments of this application is a comprehensive control device for an engine or electric motor. Engines and electric motors are widely used in various vehicles such as automobiles, ships, and aircraft to drive the vehicles. A vehicle is a means of transport, which refers to equipment used to transport people or goods.
[0086] The ECU is composed of large-scale integrated circuits. Its primary function is to calculate, process, and judge information input from various sensors based on the programs and data stored in its memory, thereby outputting corresponding control instructions to other components on the vehicle. This memory can include random access memory (RAM) and non-volatile memory (NVM).
[0087] The RAM mentioned above can be any static random-access memory (SRAM) or any dynamic random-access memory (SRAM).
[0088] The NVM may include any type of read-only memory (ROM) and / or any type of flash memory. The ROM may be, but is not limited to, any type of programmable read-only memory (PROM), any type of electrically alterable read-only memory (EAROM), any type of erasable programmable read-only memory (EPROM), or any type of electrically erasable programmable read-only memory (EEPROM or E2PROM). The flash memory may be non-volatile NOR flash. The flash memory may be, but is not limited to, any type of program flash (PFlash) or any type of data flash (DFlash).
[0089] In recent years, with the advancement of electronic control technology, the ECU, as a crucial control node in a vehicle, can precisely control the vehicle's engine (or motor), chassis, and transmission system, thereby improving vehicle performance and safety. To achieve precise control of the vehicle's engine and / or motor, the vehicle's ECU must be calibrated. The quality of this calibration determines the maximum potential of the ECU within the given hardware and software, and this quality directly impacts the electronic control system development cycle and the engine's ultimate performance.
[0090] The inventors of the present application have discovered that general online automobile ECU calibration requires dedicated software and hardware, is complex to operate, and is inconvenient to use.
[0091] Based on the above considerations, in order to solve the problem of how to simplify the operation of ECU calibration, the inventors conducted in-depth research and designed a fully independent calibration software tool chain and a method for ECU calibration based on this tool chain, so as to realize ECU calibration based on general hardware and lightweight software.
[0092] The electronic control units disclosed in the embodiments of this application can be, but are not limited to, electronic control units for various types of vehicles, such as automobiles, ships, or aircraft. Therefore, the electronic control unit calibration method and apparatus provided in the embodiments of this application can be applicable to, but are not limited to, the calibration of electronic control units for various types of vehicles, such as automobiles, ships, or aircraft.
[0093] The following describes in detail the calibration method and device for the electronic control unit, the electronic control unit, and the vehicle provided in the embodiments of the present application through specific embodiments and their application scenarios in conjunction with the accompanying drawings.
[0094] The electronic control unit calibration method may be applied to a host computer or ECU, and may be specifically executed by hardware or software in the host computer or ECU.
[0095] The host computer may be a terminal. The terminal may include, but is not limited to, a portable communication device such as a mobile phone or tablet computer having a touch-sensitive surface (e.g., a touch screen display and / or a touch pad). It should also be understood that in some embodiments, the terminal may not be a portable communication device, but rather a desktop computer having a touch-sensitive surface (e.g., a touch screen display and / or a touch pad).
[0096] In the following embodiments, a terminal including a display and a touch-sensitive surface is described. However, it should be understood that the terminal may include one or more other physical user interface devices such as a physical keyboard, a mouse, and a joystick.
[0097] As shown in Figure 1, it is a schematic diagram of an application scenario of the electronic control unit calibration method provided in some embodiments of the present application. In this application scenario, a host computer 110 is connected to an electronic control unit 120 via communication hardware 130.
[0098] In some embodiments, the operating system of the host computer 110 may include Android, iOS, Windows, macOS, Unix, or Linux.
[0099] The electronic control unit 120 integrates a new software protocol stack for ECU calibration. The new software protocol stack is called a predetermined calibration protocol stack. The predetermined calibration protocol stack has complete functions for calibrating the ECU, and its physical layer adopts a first communication protocol. In some embodiments, the application layer of the predetermined calibration protocol stack can adopt a custom protocol, and does not need to adopt the CCP protocol or the XCP protocol. The embodiment of the present application does not limit the protocols adopted by the other layers of the predetermined calibration protocol stack. The embodiment of the present application also does not limit the specific protocol content of the various protocols adopted by the predetermined calibration protocol stack.
[0100] The predetermined calibration protocol stack can be used only to implement the calibration function, and not to implement any other functions. Therefore, the predetermined calibration protocol stack can be very lightweight, and the cost of integrating the predetermined calibration protocol stack into the electronic control unit 120 is low.
[0101] In some embodiments, the predetermined calibration protocol stack may include: a calibration protocol stack, a calibration service task, and a non-volatile memory driver. The calibration service task is used to ensure that the electronic control unit 120 can correctly perform various operations according to the calibration protocol stack.
[0102] The predetermined calibration protocol stack supports various types of memories, including EEPROM, PFLASH, DFLASH and other types of non-volatile memories.
[0103] In some embodiments, the electronic control unit 120 may be installed with software for implementing each layer protocol of the predetermined calibration protocol stack to integrate the predetermined calibration protocol stack.
[0104] Communication hardware 130 supports the first communication protocol and can serve as an intermediary device for communication, enabling bidirectional communication between the host computer 110 and the electronic control unit 120 based on the first communication protocol. Communication hardware 130 is general-purpose hardware that enhances the versatility and convenience of the device. The first communication protocol is a universal communication protocol used for internal vehicle communications.
[0105] In some embodiments, the first communication protocol may be, but is not limited to, the CAN protocol, the Local Interconnect Network (LIN) protocol, the FlexRay protocol, the Media Oriented Systems Transport (MOST) protocol, or any vehicle-applicable Ethernet protocol (e.g., an Ethernet protocol specifically for automotive Ethernet or an Ethernet protocol specifically for marine Ethernet). The specific first communication protocol employed is not limited in the present embodiment.
[0106] The communication hardware 130 may be connected to the electronic control unit 120 in a manner supported by the first communication protocol.
[0107] For example, when the first communication protocol is the CAN protocol, the connection method supported by the CAN protocol is the CAN bus, and the communication hardware 130 can be connected to the electronic control unit 120 through the CAN bus; when the first communication protocol is an Ethernet protocol dedicated to in-vehicle Ethernet, the connection method supported by the Ethernet protocol is a network cable, and the communication hardware 130 can be connected to the electronic control unit 120 through a network cable.
[0108] In some embodiments, the communication hardware 130 may also be connected to the host computer 110 in a manner supported by the first communication protocol.
[0109] In some embodiments, the communication hardware 130 further supports a second communication protocol, so that it can be connected to a communication interface of the host computer 110 , and the communication protocol used by the communication interface is the second communication protocol.
[0110] In some embodiments, the second communication protocol may be, but is not limited to, a serial communication protocol such as Universal Serial Bus (USB), EIA-485, or Peripheral Component Interconnect Express (PCI-Express or PCIe), or a parallel communication protocol such as IEEE 1284. The specific second communication protocol employed is not limited in the present embodiment.
[0111] In some embodiments, the communication hardware 130 may be a universal interface card. For example, the first communication protocol supported by the communication hardware 130 may be a variable-rate CAN (CAN with Flexible Data rate, CAN-FD) protocol, the second communication protocol supported by the communication hardware 130 may be USB, and the communication hardware 130 may be a CAN-FD interface card such as USBCANFD-100U, USBCANFD-200U, or USBCANFD-100U-mini. For another example, the first communication protocol supported by the communication hardware 130 may be a variable-rate CAN (CAN with Flexible Data rate, CAN-FD) protocol, the second communication protocol supported by the communication hardware 130 may be PCIe, and the communication hardware 130 may be a CAN-FD interface card such as PCIeCANFD-400U or PCIeCANFD-200U.
[0112] In some embodiments, the first communication protocol is the CAN-FD protocol. The CAN-FD protocol can be a lightweight protocol that can efficiently utilize bandwidth. The communication hardware 130 uses a CAN-FD interface card, the development cost of which is not much different from the development cost of a traditional CAN interface card, and is well compatible with the traditional CAN protocol, but supports variable rates and longer data lengths. Compared with the FlexRay protocol, the development cost is much smaller, the additional overhead ratio is much smaller, and the FlexRay protocol is not friendly to ECU flashing. Compared with the Ethernet protocol, the development cost is much smaller, the additional overhead ratio is much smaller, and it has better applicability to vehicles.
[0113] The electronic control unit 120 may include a microcontroller unit (MCU) 121, at least one random access memory 122, and at least one non-volatile memory 123. The MCU 121 is installed with the aforementioned predetermined calibration protocol stack.
[0114] Calibration is an indispensable part of the development process of the electronic control system of any vehicle. In the development process of the electronic control system, after the hardware design and software design stages of the electronic control unit are completed, the calibration stage begins. The performance of the electronic control system mainly depends on the quality of various map spectra (MAPs), curves and parameters. The calibration work of the ECU is to optimize the control parameters in the ECU so that it meets the power, economy, reliability, safety, and pollution discharge of the engine and determines the requirements of fuel combustion and / or battery charging and discharging under various working conditions. In order to achieve the above purpose, the staff of ECU calibration must obtain (read operation) and calibrate (write operation) different control parameters, analyze the performance changes brought about by the changes in the values of the control parameters, and complete the calibration after repeated iterative updates. The above control parameters are the calibration variables in the embodiments of the present application.
[0115] In the embodiment of the present application, the predetermined calibration protocol stack can support two calibration modes: RAM calibration mode and NVM calibration mode. RAM calibration mode refers to a mode in which calibration is performed by reading and writing RAM. NVM calibration mode refers to a mode in which calibration is performed by reading and writing NVM.
[0116] Accordingly, a read operation refers to reading the value of a calibration variable from the random access memory 122 or the non-volatile memory 123. A write operation refers to writing a predetermined value of a calibration variable (which may be referred to as a "calibration value") into the random access memory 122 or the non-volatile memory 123.
[0117] In some embodiments, in RAM calibration mode, the values of the calibration variables are read from random access memory 122 and written to random access memory 122; while in NVM calibration mode, the values of the calibration variables are read from non-volatile memory 123 and written to non-volatile memory 123.
[0118] RAM calibration mode is suitable for tentative, exploratory, or iterative calibration of a calibration variable during R&D. During calibration, only the value of the calibration variable in the ECU's real-time RAM 122 is rewritten, while the value in the non-volatile memory 123 is not. This reduces the number of NVM writes and extends the NVM's lifespan.
[0119] The NVM calibration mode is suitable for relatively fixed calibration during the R&D process. It is more suitable for flashing the final value of the calibration variable confirmed by the RAM calibration mode into mass-produced products to solidify the product-level calibration value in stages.
[0120] It should be noted that the write operation is a narrow sense of calibration, and the broad sense of calibration includes both read and write operations. Unless otherwise specified that calibration refers only to the write operation, the calibration in the embodiments of this application refers to the broad sense of calibration.
[0121] Each calibration variable can have multiple attributes. The attributes of a calibration variable can be used to indicate the calibration variable's identification, read / write type, or storage address.
[0122] Both the random access memory 122 and the non-volatile memory 123 can be used to store properties of calibration variables. Properties of a calibration variable can be stored in at least one random access memory 122 and / or at least one non-volatile memory 123.
[0123] In the embodiment of the present application, since host computer 110 does not use currently available calibration software, host computer 110 does not use an A2L file for calibration description. Instead, a widely available, universally formatted spreadsheet file can be used instead of an A2L file for calibration description. Calibration description refers to describing the calibration variables, specifically, describing the various attributes of the calibration variables.
[0124] In some embodiments, the format of the spreadsheet file can be a common format such as xls, xlsx, xlsm, xml, csv, et or ett. The specific format of the spreadsheet file is not limited in the embodiments of the present application.
[0125] In actual execution, the host computer 110 may load a spreadsheet file storing the attributes of at least one calibration variable.
[0126] For any calibration variable, the host computer 110 can determine the calibration command used to calibrate the calibration variable based on the attributes of the calibration variable stored in the spreadsheet; after determining the calibration command, the host computer 110 can generate a calibration message carrying the calibration command, and the calibration message complies with the first communication protocol; after generating the calibration message, the host computer 110 can send the calibration message to the electronic control unit 120 through the communication link from the host computer 110 to the electronic control unit 120 via the communication hardware 130.
[0127] Based on the aforementioned predetermined calibration protocol stack, the electronic control unit 120 can receive the calibration message from the communication hardware 130; after receiving the calibration message, based on the aforementioned predetermined calibration protocol stack, the electronic control unit 120 can obtain the calibration command from the calibration message; after obtaining the calibration command, the calibration command can be executed to calibrate the calibration variable and complete the addressing and data reading and writing of the calibration variable.
[0128] The calibration process can be implemented stably and reliably, and can meet various functions of conventional calibration, including reading and rewriting the values of calibration variables stored in the memory of the electronic control unit.
[0129] Reading the calibration variable values stored in the memory of the electronic control unit can specifically include at least one of the following reading methods: single reading and periodic reading of the value of a single calibration variable (not all calibration quantities), single reading and periodic reading of the values of multiple calibration variables (not all calibration quantities), or single reading and periodic reading of the values of all calibration variables.
[0130] Rewriting the values of calibration variables stored in the memory of the electronic control unit may specifically include at least one of the following rewriting methods: rewriting the value of a single calibration variable (not all calibration quantities), rewriting the values of multiple calibration variables (not all calibration quantities), or rewriting the values of all calibration variables.
[0131] According to the calibration method of the electronic control unit provided in the embodiment of the present application, a host computer and an electronic control unit are connected through universal communication hardware, and a spreadsheet file storing the attributes of at least one calibration variable is loaded. Based on the spreadsheet file, a calibration message is sent to the electronic control unit, so that the electronic control unit executes the calibration command carried in the calibration message based on a predetermined calibration protocol stack to calibrate the electronic control unit. Calibration can be achieved through the spreadsheet file and the predetermined calibration protocol stack, which can simplify the calibration operation and make it more convenient to use. In addition, due to the low price and high cost performance of universal communication hardware, the cost of integrating this type of calibration protocol stack into the electronic control unit 120 is low, and there is no need to use expensive calibration software and dedicated communication hardware, which can greatly reduce the cost of electronic control unit calibration. In addition, universal communication hardware is easy to obtain and is not affected by the difficulty in purchasing the above-mentioned dedicated communication hardware or the long delivery cycle caused by the shortage of dedicated chips, and will not affect the development process of the electronic controller and its downstream products. Furthermore, specialized calibration software is not required; it is only necessary to ensure that the electronic control unit can successfully receive the calibration message and correctly obtain the calibration commands carried by the calibration message. This simplifies the calibration process and eliminates the complex operations required to use specialized calibration software, making the entire calibration process simpler and more convenient. Furthermore, the use of a universal spreadsheet file for calibration descriptions makes entry almost "zero-threshold," eliminating the need for professional training for ECU calibration staff, reducing training costs. Furthermore, the spreadsheet file can be written in the ECU calibration staff's native language or another language they are proficient in, reducing human resource costs.
[0132] The calibration method for an electronic control unit provided in an embodiment of the present application may be executed by an electronic device or a functional module or functional entity in the electronic device that can implement the calibration method for the electronic control unit. The electronic devices mentioned in the embodiment of the present application include but are not limited to mobile phones, tablet computers, computers, cameras, and wearable devices. The calibration method for an electronic control unit provided in an embodiment of the present application is described below using an electronic device as an example of the execution subject.
[0133] According to some embodiments of the present application, referring to FIG. 2 , FIG. 2 is a flow chart illustrating a method for calibrating an electronic control unit according to some embodiments of the present application. The present application provides a method for calibrating an electronic control unit, which is applied to a host computer 110 . The method for calibrating an electronic control unit may include steps 210 and 220 .
[0134] The host computer 110 is connected to the electronic control unit 120 via the communication hardware 130 ; the communication hardware 130 can communicate based on the first communication protocol.
[0135] In actual execution, the electronic device serving as the execution subject may be the host computer 110 .
[0136] Before executing step 210, it is necessary to first connect the host computer 110 and the electronic control unit 120 via the communication hardware 130. Due to the functional requirements of the electronic control unit 120 itself, it can communicate with the engine (or motor), braking system, or multimedia system included in the vehicle through the universal communication protocol it already supports for internal communication within the vehicle. One of the above-mentioned supported communication protocols can be used as the first communication protocol, and the appropriate communication hardware 130 can be selected, rather than introducing an unsupported communication protocol into the electronic control unit 120, thereby avoiding increasing the complexity and workload of the calibration work and avoiding the introduction of additional costs.
[0137] Step 210: Load a spreadsheet file; the spreadsheet file is used to store attributes of at least one calibration variable.
[0138] In actual implementation, any of the aforementioned common formats of spreadsheet files can be used to store the attributes of the calibration variables. The number of calibration variables stored in the spreadsheet file is greater than or equal to one.
[0139] In some embodiments, before step 210, after the other electronic device sends the electronic spreadsheet file, the electronic spreadsheet file sent by the other electronic device may be received, thereby acquiring the electronic spreadsheet file.
[0140] In some embodiments, before step 210 , the spreadsheet file may be generated based on user input, thereby obtaining the spreadsheet file.
[0141] After obtaining the spreadsheet file, the spreadsheet file can be loaded into a communication program for communicating with the electronic control unit 120. In the embodiment of the present application, ECU calibration can be achieved based on the communication program, and the communication program can replace the currently widely used calibration software.
[0142] In some embodiments, the above communication program can be, but is not limited to, written in a programming language such as Python.
[0143] In some embodiments, refer to Figure 3, which is a schematic diagram of the functional architecture of the communication program of the host computer provided in some embodiments of the present application. As shown in Figure 3, the communication program function may include but is not limited to loading a spreadsheet file, and a series of functions related to the read operation of the calibration variables and a series of functions related to the write operation of the calibration variables implemented based on the spreadsheet file. The above series of functions related to the read operation of the calibration variables may include but are not limited to: executing a read instruction for calibration, executing a send instruction, executing a receive instruction, writing a spreadsheet file, updating a spreadsheet file and displaying a spreadsheet file, etc. The above series of functions related to the write operation of the calibration variables may include but are not limited to: executing a write instruction for calibration, executing a send instruction and executing a receive instruction.
[0144] Step 220: Based on the spreadsheet file, a calibration message that complies with the first communication protocol is sent to the electronic control unit 120, so that the electronic control unit 120 executes the calibration command carried in the calibration message based on a predetermined calibration protocol stack to calibrate the electronic control unit 120; the physical layer of the predetermined calibration protocol stack adopts the first communication protocol.
[0145] In actual execution, after the communication program loads the spreadsheet file, it can use one calibration variable, a class of calibration variables, or all calibration variables stored in the spreadsheet file as target calibration variables, and perform the following processing on the target calibration variables:
[0146] Determining, based on the attributes of each calibration variable included in the target calibration variable stored in the electronic form, a calibration command for calibrating each calibration variable included in the target calibration variable;
[0147] generating a calibration message carrying the calibration command, wherein the calibration message complies with the first communication protocol;
[0148] The calibration message is sent to the electronic control unit 120 .
[0149] In some embodiments, the aforementioned type of calibration variables may be calibration variables stored in the same sheet of a spreadsheet file.
[0150] In some embodiments, the aforementioned type of calibration variables may be calibration variables having the same target attribute. The target attribute may be at least one of the aforementioned attributes.
[0151] In some embodiments, the calibration command may be a single command or a batch of commands including multiple commands.
[0152] Because the physical layer of the predetermined calibration protocol stack utilizes the first communication protocol, the electronic control unit 120 can receive the calibration message from the communication hardware 130. Based on the protocol employed by the application layer of the predetermined calibration protocol stack, the electronic control unit 120 can retrieve the calibration command from the calibration message. After receiving the calibration command, the electronic control unit 120 can execute the calibration command to calibrate each calibration variable included in the target calibration variable, i.e., read the value of the calibration variable through a read operation, or rewrite the value of the calibration variable through a write operation.
[0153] In some embodiments, step 220 further includes:
[0154] receiving an observation message that complies with the first communication protocol and is sent by the electronic control unit 120; the observation message carries the value of the target calibration variable read by the electronic control unit 120 from its own memory;
[0155] Write the values of the target calibration variables carried in the observation message into a spreadsheet file.
[0156] In some embodiments, after writing the value of the target calibration variable carried in the observation message into the spreadsheet file, the spreadsheet file may also be displayed so that the user can observe the target calibration variable.
[0157] It can be understood that, through the above steps, it is possible to observe or rewrite the values of variables based on the spreadsheet file.
[0158] In some embodiments, the application layer of the predetermined calibration protocol stack can adopt a customized protocol, and it is not necessary to adopt the controller local area network calibration protocol or the general measurement and calibration protocol, so that the application layer protocol of the predetermined calibration protocol stack can be simpler, the predetermined calibration protocol stack is more lightweight, and its implementation is also simpler.
[0159] According to the calibration method of the electronic control unit provided in the embodiment of the present application, a host computer and an electronic control unit are connected through universal communication hardware, and a spreadsheet file storing the attributes of at least one calibration variable is loaded. Based on the spreadsheet file, a calibration message is sent to the electronic control unit, so that the electronic control unit executes the calibration command carried in the calibration message based on a predetermined calibration protocol stack to calibrate the electronic control unit. Calibration can be achieved through the spreadsheet file and the predetermined calibration protocol stack, which can simplify the calibration operation and make it more convenient to use. In addition, due to the low price and high cost performance of universal communication hardware, the cost of integrating this type of calibration protocol stack into the electronic control unit 120 is low, and there is no need to use expensive calibration software and dedicated communication hardware, which can greatly reduce the cost of electronic control unit calibration. In addition, universal communication hardware is easy to obtain and is not affected by the difficulty in purchasing the above-mentioned dedicated communication hardware or the long delivery cycle caused by the shortage of dedicated chips, and will not affect the development process of the electronic controller and its downstream products. Furthermore, specialized calibration software is not required; it is only necessary to ensure that the electronic control unit can successfully receive the calibration message and correctly obtain the calibration commands carried by the calibration message. This simplifies the calibration process and eliminates the complex operations required to use specialized calibration software, making the entire calibration process simpler and more convenient. Furthermore, the use of a universal spreadsheet file for calibration descriptions makes entry almost "zero-threshold," eliminating the need for professional training for ECU calibration staff, reducing training costs. Furthermore, the spreadsheet file can be written in the ECU calibration staff's native language or another language they are proficient in, reducing human resource costs.
[0160] According to some embodiments of the present application, a calibration message that complies with the first communication protocol is sent to the electronic control unit 120 based on a spreadsheet file, including: based on the attributes of the target calibration variable in the spreadsheet file, obtaining the operation code and operand of the calibration command used to calibrate the target calibration variable.
[0161] In actual implementation, the target calibration variable may be at least one calibration variable selected by a user or determined based on a preset rule.
[0162] The preset rules may include, but are not limited to, the target attribute being a specific value or being stored in the same form in a spreadsheet file.
[0163] The calibration command consists of an opcode and an operand. The properties of the calibration variable can be divided into at least two categories: one for determining the opcode and the other for determining the operand. The opcode and operand can be obtained from the properties of the target calibration variable.
[0164] Based on the first communication protocol, the operation code and the operand are encapsulated to generate a calibration message.
[0165] In actual execution, the operation code and operand of the calibration command for calibrating the target calibration variable may be encapsulated based on the first communication protocol to obtain a calibration message that complies with the first communication protocol.
[0166] Once the operation code and operand of an operation command are determined, the operation command is determined. Since the calibration message carries the operation code and operand of the calibration command for calibrating the target calibration variable, the calibration message carries the calibration command for calibrating the target calibration variable.
[0167] Send a calibration message to the electronic control unit 120.
[0168] In actual execution, after the calibration message is generated, the calibration message may be sent to the electronic control unit 120 via the communication hardware 130 .
[0169] According to the calibration method of the electronic control unit provided in the embodiment of the present application, the operation code and operand of the calibration command are obtained based on the attributes of the target calibration variable stored in the electronic spreadsheet, and the operation code and operand are encapsulated based on the first communication protocol to generate a calibration message. This can simplify the calibration process and eliminate the very complicated operation of using special calibration software, making the entire calibration process simpler and more convenient.
[0170] According to some embodiments of the present application, obtaining an opcode and an operand of a calibration command for calibrating the target calibration variable based on an attribute of the target calibration variable in a spreadsheet file includes:
[0171] In a case where the attributes include a read-write attribute, a component identification number, a unit, a data type, a conversion factor, and an address offset, and do not include a virtual mapping attribute, a base set automatic reconstruction attribute, a paged access attribute, and a byte sequence access attribute, determining an operation code based on the read-write attribute, and obtaining an operand based on the unit, the data type, the conversion factor, and the address offset;
[0172] When the attributes include a read / write attribute, a component identification number, a unit, a data type, a conversion factor, an address offset, a virtual mapping attribute, a base set automatic reconstruction attribute, a paged access attribute, and a byte sequence access attribute, an operation code is determined based on the read / write attribute, and an operand is obtained based on the unit, the data type, the conversion factor, the address offset, the virtual mapping attribute, the base set automatic reconstruction attribute, the paged access attribute, and the byte sequence access attribute. The calibration command is used to perform a read operation or a write operation on a random access memory in the electronic control unit 120.
[0173] In actual implementation, access to NVM requires pre-building the corresponding virtual memory. Virtual memory can be constructed based on the paging of physical memory, resulting in pages of discrete data. Page-based access allows for efficient access, significantly reducing the read and write time of data stored in NVM (typically by more than 50%). Access to RAM, however, does not require building virtual memory. Therefore, reading and writing NVM requires the virtual mapping attribute, the basic set automatic reconstruction attribute, the paged access attribute, and the byte sequence access attribute.
[0174] Therefore, whether the target calibration variable is stored in the random access memory 122 or the non-volatile memory 123 can be determined based on whether the virtual mapping attribute, the base set automatic reconstruction attribute, the paged access attribute, and the byte sequence access attribute are included.
[0175] Without including the virtual mapping attribute, the basic set automatic reconstruction attribute, the paged access attribute and the byte sequence access attribute, the target calibration variable is stored in the random access memory 122, and the calibration command is used to perform a read operation or a write operation on the random access memory 122 in the electronic control unit 120.
[0176] In the case of including the virtual mapping attribute, the basic set automatic reconstruction attribute, the paged access attribute and the byte sequence access attribute, the target calibration variable is stored in the non-volatile memory 123, and the calibration command is used to perform a read operation or a write operation on the non-volatile memory 123 in the electronic control unit 120.
[0177] For any tag variable stored in the random access memory 122, the attributes of the tag variable stored in the spreadsheet file include at least read / write attributes, component identifier (CID), unit, data type, conversion factor (Gain), and address offset (Offset). It is understood that for the tag variable, the attributes of the tag variable stored in the spreadsheet file may include other attributes or may not include other attributes.
[0178] The read / write attribute of a tag variable is used to indicate whether the value of the tag variable is to be rewritten or read, and the specific method of reading. In other words, the read / write attribute of a tag variable is used to indicate whether the memory operation is to be read or written.
[0179] For example, the read-write attribute of the tag variable is R, indicating a single read of the tag variable's value; the read-write attribute of the tag variable is R10ms, indicating a periodic read of the tag variable's value with a period of 10ms; the read-write attribute of the tag variable is W, indicating a rewrite of the tag variable's value.
[0180] The CID of a marker variable is used to indicate the component that the marker variable is used to control. The CID of each calibration variable is uniformly compiled and unique.
[0181] The data type of the tag variable may include, but is not limited to, at least one of an 8-bit binary number, a 16-bit binary number, a 32-bit binary number, an array of multiple 8-bit binary numbers, an array of multiple 16-bit binary numbers, and an array of multiple 32-bit binary numbers.
[0182] The conversion factor of the marker variable is used to convert the computer value of the marker variable into a physical value.
[0183] The address offset of the tag variable is used to determine the address of the tag variable in the random access memory 122.
[0184] The virtual mapping attribute is used to indicate whether to map the NVM to the virtual memory.
[0185] The Base collection automatic reconstruction property is used to indicate whether to perform automatic reconstruction of the Base collection.
[0186] The page access attribute is used to indicate whether page access is performed.
[0187] The byte sequence access attribute is used to indicate whether access is performed according to the byte sequence.
[0188] In some embodiments, the attributes of the tag variable stored in the electronic spreadsheet file may further include at least one of a read value or a write value. The read value is a value read from the memory, and the write value is a target value to be written to the memory.
[0189] When the read-write attribute indicates that the value of the tag variable is to be rewritten, the attribute of the tag variable stored in the spreadsheet file also includes the write value; when the read-write attribute indicates that the value of the tag variable is to be read, the attribute of the tag variable stored in the spreadsheet file also includes the read value.
[0190] Since the read-write attribute of the tag variable is used to indicate whether the value of the tag variable is to be rewritten or read, and the specific reading method, the operation code of the calibration command can be determined based on the read-write attribute.
[0191] For example, when the read-write attribute indicates writing the value of the tag variable, the operation code of the calibration command can be determined as the operation code corresponding to the write operation; when the read-write attribute indicates a single reading of the value of the tag variable, the operation code of the calibration command can be determined as the operation code corresponding to the single read operation; when the read-write attribute indicates a periodic reading of the value of the tag variable, the operation code of the calibration command can be determined as the operation code corresponding to the periodic read operation.
[0192] When the attributes include read-write attributes, component identification numbers, units, data types, conversion coefficients and address offsets, and do not include virtual mapping attributes, basic set automatic reconstruction attributes, paged access attributes and byte sequence access attributes, based on the units, data types, conversion coefficients and address offsets of the target tag variables, the source of the data required for the operation performed by the calibration command can be determined, thereby obtaining the operands of the calibration command.
[0193] When the attributes include read-write attributes, component identification numbers, units, data types, conversion coefficients, address offsets, virtual mapping attributes, basic set automatic reconstruction attributes, paging access attributes and byte sequence access attributes, based on the units, data types, conversion coefficients, address offsets, virtual mapping attributes, basic set automatic reconstruction attributes, paging access attributes and byte sequence access attributes of the target tag variable, the source of the data required for the operation performed by the calibration command can be determined, thereby obtaining the operands of the calibration command.
[0194] According to the calibration method of the electronic control unit provided by the embodiment of the present application, by constructing the calibration variables under different calibration modes, the calibration mode can be determined more flexibly based on the type of attributes of the calibration variables. By constructing the calibration variables under the RAM calibration mode, based on the read-write attributes of the target tag variable, the operation code of the calibration instruction is determined, and based on the unit, data type, conversion coefficient and address offset of the target tag variable, the operand of the calibration instruction is obtained, the calibration under the RAM calibration mode can be realized, and the task of tentative, exploratory and repetitive calibration of the calibration variable can be completed. By constructing the calibration variables under the NVM calibration mode, based on the read-write attributes of the target tag variable, the operation code of the calibration instruction is determined, and based on the unit, data type, conversion coefficient, address offset, virtual mapping attribute, basic set automatic reconstruction attribute, paging access attribute and byte sequence access attribute of the target tag variable, the operand of the calibration instruction is obtained, the calibration under the NVM calibration mode can be realized, and the final value of the calibration variable confirmed after the RAM calibration mode can be written to the mass-produced product to solidify the calibration value of the product level in stages.
[0195] According to some embodiments of the present application, based on the first communication protocol, the operation code and the operand are encapsulated to generate a calibration message, including: determining the operation command number field in the calibration message based on the operation code, determining the component identification number field in the calibration message based on the component identification number, determining the data field in the calibration message based on the operand, and determining the frame length field in the calibration message based on the operation code, the component identification number and the operand.
[0196] In actual implementation, the message conforming to the first communication protocol may include an operation command number field, a component identification number field, a data field, and a frame length field.
[0197] The operation command code (CMD) corresponds to the operation code. Therefore, the operation command code field in the calibration message can be determined based on the operation code of the calibration command.
[0198] The data field is the data transmitted in the message, and therefore, the data field in the calibration message can be determined based on the operand of the calibration command.
[0199] The frame length field is used to indicate the frame length of the calibration message. Therefore, the frame length field in the calibration message can be determined based on the length of each field included in the calibration message, that is, based on the operation code of the calibration command, the component identification number, and the operand of the calibration command.
[0200] Based on the first communication protocol, the operation command number field, the component identification number field, the data field and the frame length field are encapsulated to generate a calibration message.
[0201] In actual execution, the operation command number field, component identification number field, data field and frame length field obtained through the above steps can be encapsulated in accordance with the format specified by the first communication protocol to generate a calibration message that complies with the first communication protocol.
[0202] According to the calibration method of the electronic control unit provided in the embodiment of the present application, the operation command number field in the calibration message is determined based on the operation code, the component identification number field in the calibration message is determined based on the component identification number, the data field in the calibration message is determined based on the operand, and the frame length field in the calibration message is determined based on the operation code, the component identification number and the operand. Based on the first communication protocol, the operation command number field, the component identification number field, the data field and the frame length field are encapsulated to generate a calibration message. The structure of the calibration message is simpler, so that the bandwidth can be used more efficiently.
[0203] According to some embodiments of the present application, before loading the spreadsheet file, the method further includes: receiving a first input.
[0204] In actual implementation, reference may be made to FIG4 , which is a schematic diagram of a human-machine interface of a host computer provided in some embodiments of the present application. A spreadsheet file may be obtained through the human-machine interface of the host computer 110 as shown in FIG4 .
[0205] As shown in Figure 4, the read / write properties (Read / Write), component identification number (CID), read value (Read Value), write value (Write Value), unit (Unit), data type (Data Type), conversion factor (Gain), address offset (Offset), virtual mapping properties, basic set automatic reconstruction properties, page access properties, and byte sequence access properties of the calibration variables are defined in the human-machine interface.
[0206] The first input is an input for editing a spreadsheet file. The first input may be input via a keyboard, input via a mouse click, handwriting input, or voice input, etc. The specific form of the first input is not specifically limited in the embodiments of the present application.
[0207] In response to the first input, a spreadsheet file is generated.
[0208] In actual execution, after receiving the first input, a response is made to the first input, and data determined based on the first input is filled into a template of the spreadsheet to generate a spreadsheet file.
[0209] According to the calibration method of the electronic control unit provided in the embodiment of the present application, a spreadsheet file is generated through a human-computer interface, making calibration description simpler and more convenient.
[0210] According to some embodiments of the present application, before sending a calibration command conforming to the first communication protocol to the electronic control unit 120 based on the spreadsheet file, the method further includes: receiving a second input; the second input is used to indicate the type of the communication hardware 130.
[0211] In actual execution, the type of the communication hardware 130 may be determined based on the human-machine interface of the host computer 110 .
[0212] The second input is an input for indicating the type of the communication hardware 130. The second input may be input through a keyboard, input through a mouse click operation, handwriting input, or voice input, etc. The specific form of the second input is not specifically limited in the embodiment of the present application.
[0213] After receiving the second input, the type of the communication hardware 130 may be determined based on the information carried in the second input that indicates the type of the communication hardware 130. The information may be, but is not limited to, the model of the communication hardware 130.
[0214] Based on the type of the communication hardware 130 , the communication hardware 130 is driven.
[0215] In actual implementation, after the type of the communication hardware 130 is determined, the communication hardware 130 may be driven based on a driver for the hardware of that type.
[0216] In some embodiments, the driver of the communication hardware 130 may be, but is not limited to, written in a programming language such as Python.
[0217] The embodiment of the present application drives the communication hardware 130 by determining the type of the communication hardware 130 through the second input, and can quickly adapt to various types of communication hardware 130 without being bound to use a unique hardware. This can increase the flexibility of the calibration hardware selection and improve the applicability of the calibration method.
[0218] According to some embodiments of the present application, referring to FIG. 5 , FIG. 5 is a second flow chart of a method for calibrating an electronic control unit provided in some embodiments of the present application. The present application also provides a method for calibrating an electronic control unit, applied to an electronic control unit 120. The method for calibrating an electronic control unit may include steps 510 and 520.
[0219] The electronic control unit 120 is connected to the host computer 110 via the communication hardware 130 ; the communication hardware 130 can communicate based on the first communication protocol.
[0220] In actual execution, the electronic device serving as the execution subject may be the electronic control unit 120 .
[0221] Step 510: Receive a calibration message that complies with the first communication protocol and is sent by the host computer 110; the calibration message is sent by the host computer based on a spreadsheet file; the spreadsheet file is used to store attributes of at least one calibration variable.
[0222] In actual execution, the calibration message may be received through a communication link from the host computer 110 to the electronic control unit 120 via the communication hardware 130 .
[0223] The process of the host computer 110 sending the calibration message based on the electronic spreadsheet file can be referred to the above embodiment and will not be described again here.
[0224] Step 520 : Based on a predetermined calibration protocol stack, execute the calibration command carried in the calibration message to calibrate the electronic control unit 120 ; the physical layer of the predetermined calibration protocol stack adopts the first communication protocol.
[0225] In actual implementation, because the physical layer of the predetermined calibration protocol stack utilizes the first communication protocol, the electronic control unit 120 can receive the calibration message from the communication hardware 130. Based on the protocol employed by the application layer of the predetermined calibration protocol stack, the electronic control unit 120 can retrieve the calibration command from the calibration message. After receiving the calibration command, the electronic control unit 120 can execute the calibration command to calibrate each calibration variable included in the target calibration variable, i.e., read the target calibration variable through a read operation or rewrite the target calibration variable through a write operation.
[0226] In some embodiments, step 520 may further include:
[0227] the value of the target calibration variable read from the memory of the electronic control unit 120;
[0228] Based on the value of the target calibration variable, an observation message that complies with the first communication protocol is sent to the host computer 110; the observation message carries the value of the target calibration variable.
[0229] In some embodiments, referring to FIG6 , FIG6 is a schematic diagram of the architecture of a predetermined calibration protocol stack provided in some embodiments of the present application. As shown in FIG6 , the predetermined calibration protocol stack Cal_Protocol_Stack may include: node hardware, a protocol stack for calibration, a service task for calibration, and a non-volatile memory driver (NVM Driver).
[0230] Node hardware is hardware that communicates with other devices. Exemplarily, the node hardware can be CAN node hardware.
[0231] The service task for calibration may include multiple subtasks, so as to ensure that the electronic control unit 120 can correctly perform various operations according to the protocol stack for calibration through the above subtasks.
[0232] The non-volatile memory driver can include two levels: the physical memory level and the virtual memory level. The physical memory level and the virtual memory level correspond to each other. The physical memory level can include EEPROM and PFlash. Both EEPROM and PFlash can interact bidirectionally with the virtual memory level. The virtual memory level can include two instructions and toolkits. The two instructions are NVM Read and NVM Write. The toolkit includes Byte Read, Byte Write, Page Read, and Page Write.
[0233] Based on the above architecture, the predetermined calibration protocol stack Cal_Protocol_Stack can be used to receive calibration messages from the CAN-FD interface card and complete the addressing and data reading and writing of calibration variables based on the calibration commands carried by the calibration messages.
[0234] According to the calibration method of the electronic control unit provided in the embodiment of the present application, a host computer and an electronic control unit are connected through universal communication hardware, and a spreadsheet file storing the attributes of at least one calibration variable is loaded. Based on the spreadsheet file, a calibration message is sent to the electronic control unit, so that the electronic control unit executes the calibration command carried in the calibration message based on a predetermined calibration protocol stack to calibrate the electronic control unit. Calibration can be achieved through the spreadsheet file and the predetermined calibration protocol stack, which can simplify the calibration operation and make it more convenient to use. In addition, due to the low price and high cost performance of universal communication hardware, the cost of integrating this type of calibration protocol stack into the electronic control unit 120 is low, and there is no need to use expensive calibration software and dedicated communication hardware, which can greatly reduce the cost of electronic control unit calibration. In addition, universal communication hardware is easy to obtain and is not affected by the difficulty in purchasing the above-mentioned dedicated communication hardware or the long delivery cycle caused by the shortage of dedicated chips, and will not affect the development process of the electronic controller and its downstream products. Furthermore, specialized calibration software is not required; it is only necessary to ensure that the electronic control unit can successfully receive the calibration message and correctly obtain the calibration commands carried by the calibration message. This simplifies the calibration process and eliminates the complex operations required to use specialized calibration software, making the entire calibration process simpler and more convenient. Furthermore, the use of a universal spreadsheet file for calibration descriptions makes entry almost "zero-threshold," eliminating the need for professional training for ECU calibration staff, reducing training costs. Furthermore, the spreadsheet file can be written in the ECU calibration staff's native language or another language they are proficient in, reducing human resource costs.
[0235] According to some embodiments of the present application, based on a predetermined calibration protocol stack, a calibration command carried in a calibration message is executed to calibrate the electronic control unit 120, including: based on the predetermined calibration protocol stack, parsing the calibration message and obtaining the calibration command.
[0236] In actual execution, the calibration message can be parsed based on the protocol adopted by the application layer of the aforementioned predetermined calibration protocol stack to obtain each field in the calibration message; based on each field, the operation code and operand of the calibration command can be obtained to obtain the calibration command.
[0237] The calibration command is executed to calibrate the electronic control unit 120 .
[0238] In actual execution, after obtaining the calibration command, the electronic control unit 120 may execute the calibration command to calibrate each calibration variable included in the target calibration variable, that is, read through a read operation or rewrite through a write operation.
[0239] According to the calibration method of the electronic control unit provided in the embodiment of the present application, based on a predetermined calibration protocol stack, the calibration message is parsed and the calibration command is obtained. There is no need to use expensive calibration software. It is only necessary to ensure that the electronic control unit can successfully receive the calibration message and correctly obtain the calibration command carried by the calibration message. This can simplify the calibration process and eliminate the very complicated operation of using special calibration software. The entire calibration process is simpler and more convenient.
[0240] According to some embodiments of the present application, refer to FIG7 , which is one of the structural schematic diagrams of an electronic control unit calibration device provided in some embodiments of the present application. The present application also provides an electronic control unit calibration device, which is applied to a host computer 110, wherein the host computer 110 is connected to the electronic control unit 120 via communication hardware 130; the communication hardware 130 is capable of communicating based on a first communication protocol; the device includes:
[0241] The loading module 710 is used to load a spreadsheet file; the spreadsheet file is used to store the attributes of at least one calibration variable;
[0242] The sending module 720 is used to send a calibration message that complies with the first communication protocol to the electronic control unit 120 based on the electronic spreadsheet file;
[0243] The calibration message is used to enable the electronic control unit 120 to execute the calibration command carried in the calibration message based on a predetermined calibration protocol stack to calibrate the electronic control unit 120; the physical layer of the predetermined calibration protocol stack adopts the first communication protocol.
[0244] According to the calibration device of the electronic control unit provided in the embodiment of the present application, the host computer and the electronic control unit are connected through universal communication hardware, and a calibration message is sent to the electronic control unit based on the electronic spreadsheet file by loading a spreadsheet file storing the attributes of at least one calibration variable, so that the electronic control unit executes the calibration command carried by the calibration message based on a predetermined calibration protocol stack to calibrate the electronic control unit. The calibration can be achieved through the spreadsheet file and the predetermined calibration protocol stack, which can simplify the calibration operation and make it more convenient to use. In addition, due to the low price and high cost performance of universal communication hardware, the cost of integrating this type of calibration protocol stack into the electronic control unit 120 is low, and there is no need to use expensive calibration software and dedicated communication hardware, which can greatly reduce the cost of electronic control unit calibration. In addition, universal communication hardware is easy to obtain and is not affected by the difficulty of purchasing the above-mentioned dedicated communication hardware or the long delivery cycle caused by the shortage of dedicated chips, and will not affect the development process of the electronic controller and its downstream products. Furthermore, specialized calibration software is not required; it is only necessary to ensure that the electronic control unit can successfully receive the calibration message and correctly obtain the calibration commands carried by the calibration message. This simplifies the calibration process and eliminates the complex operations required to use specialized calibration software, making the entire calibration process simpler and more convenient. Furthermore, the use of a universal spreadsheet file for calibration descriptions makes entry almost "zero-threshold," eliminating the need for professional training for ECU calibration staff, reducing training costs. Furthermore, the spreadsheet file can be written in the ECU calibration staff's native language or another language they are proficient in, reducing human resource costs.
[0245] According to some embodiments of the present application, the sending module 720 includes:
[0246] an acquisition unit, for acquiring an operation code and an operand of a calibration command for calibrating the target calibration variable based on an attribute of the target calibration variable in the electronic spreadsheet file;
[0247] A generating unit, configured to encapsulate the operation code and the operand based on the first communication protocol to generate a calibration message;
[0248] The sending unit is used to send a calibration message to the electronic control unit 120.
[0249] According to some embodiments of the present application, the acquisition unit may be specifically configured to:
[0250] In a case where the attributes include a read-write attribute, a component identification number, a unit, a data type, a conversion factor, and an address offset, and do not include a virtual mapping attribute, a base set automatic reconstruction attribute, a paged access attribute, and a byte sequence access attribute, determining an operation code based on the read-write attribute, and obtaining an operand based on the unit, the data type, the conversion factor, and the address offset;
[0251] When the attributes include read-write attributes, component identification number, unit, data type, conversion coefficient, address offset, virtual mapping attribute, basic set automatic reconstruction attribute, paging access attribute and byte sequence access attribute, the operation code is determined based on the read-write attributes, and the operand is obtained based on the unit, data type, conversion coefficient, address offset, virtual mapping attribute, basic set automatic reconstruction attribute, paging access attribute and byte sequence access attribute.
[0252] According to some embodiments of the present application, the generating unit may be specifically configured to:
[0253] Determining an operation command number field in the calibration message based on the operation code, determining a component identification number field in the calibration message based on the component identification number, determining a data field in the calibration message based on the operand, and determining a frame length field in the calibration message based on the operation code, the component identification number, and the operand;
[0254] Based on the first communication protocol, the operation command number field, the component identification number field, the data field and the frame length field are encapsulated to generate a calibration message.
[0255] According to some embodiments of the present application, the calibration device of the electronic control unit further includes:
[0256] A receiving module, configured to receive a first input;
[0257] The generating module is configured to generate a spreadsheet file in response to a first input.
[0258] According to some embodiments of the present application, the receiving module is further configured to receive a second input; the second input is configured to indicate the type of the communication hardware 130;
[0259] The calibration device of the electronic control unit also includes:
[0260] The driver module is configured to drive the communication hardware 130 based on the type of the communication hardware 130 .
[0261] According to some embodiments of the present application, refer to FIG8 , which is a second structural diagram of an electronic control unit calibration device provided in some embodiments of the present application. The present application also provides an electronic control unit calibration device, which is applied to an electronic control unit 120. The electronic control unit 120 is connected to a host computer 110 via communication hardware 130. The communication hardware 130 is capable of communicating based on a first communication protocol. The device includes:
[0262] The receiving module 810 is configured to receive a calibration message that complies with the first communication protocol and is sent by the host computer 110; the calibration message is sent by the host computer based on a spreadsheet file; the spreadsheet file is configured to store attributes of at least one calibration variable;
[0263] The execution module 820 is configured to execute the calibration command carried in the calibration message to calibrate the electronic control unit 120 based on a predetermined calibration protocol stack; the physical layer of the predetermined calibration protocol stack adopts the first communication protocol.
[0264] According to the calibration device of the electronic control unit provided in the embodiment of the present application, the host computer and the electronic control unit are connected through universal communication hardware, and a calibration message is sent to the electronic control unit based on the electronic spreadsheet file by loading a spreadsheet file storing the attributes of at least one calibration variable, so that the electronic control unit executes the calibration command carried by the calibration message based on a predetermined calibration protocol stack to calibrate the electronic control unit. The calibration can be achieved through the spreadsheet file and the predetermined calibration protocol stack, which can simplify the calibration operation and make it more convenient to use. In addition, due to the low price and high cost performance of universal communication hardware, the cost of integrating this type of calibration protocol stack into the electronic control unit 120 is low, and there is no need to use expensive calibration software and dedicated communication hardware, which can greatly reduce the cost of electronic control unit calibration. In addition, universal communication hardware is easy to obtain and is not affected by the difficulty of purchasing the above-mentioned dedicated communication hardware or the long delivery cycle caused by the shortage of dedicated chips, and will not affect the development process of the electronic controller and its downstream products. Furthermore, specialized calibration software is not required; it is only necessary to ensure that the electronic control unit can successfully receive the calibration message and correctly obtain the calibration commands carried by the calibration message. This simplifies the calibration process and eliminates the complex operations required to use specialized calibration software, making the entire calibration process simpler and more convenient. Furthermore, the use of a universal spreadsheet file for calibration descriptions makes entry almost "zero-threshold," eliminating the need for professional training for ECU calibration staff, reducing training costs. Furthermore, the spreadsheet file can be written in the ECU calibration staff's native language or another language they are proficient in, reducing human resource costs.
[0265] According to some embodiments of the present application, the execution module includes:
[0266] A parsing unit, configured to parse the calibration message and obtain the calibration command based on a predetermined calibration protocol stack;
[0267] The execution unit is used to execute the calibration command.
[0268] According to some embodiments of the present application, the present application further provides an electronic control unit, comprising the aforementioned calibration device for the electronic control unit applied to the electronic control device.
[0269] According to some embodiments of the present application, the present application further provides a vehicle, comprising an electronic control unit of the aforementioned calibration device including an electronic control unit.
[0270] The vehicle may be, but is not limited to, a car, a ship, an airplane, or other types of vehicles. The vehicle may be a fuel vehicle, an electric vehicle (EV), or a hybrid electric vehicle (HEV).
[0271] The calibration device of the electronic control unit in the embodiment of the present application can be an electronic device or a component in the electronic device, such as an integrated circuit or a chip. The electronic device can be a terminal or other devices other than a terminal. For example, the electronic device can be a mobile phone, a tablet computer, a laptop computer, a PDA, a vehicle-mounted electronic device, a mobile Internet device (MID), an augmented reality (AR) / virtual reality (VR) device, a robot, a wearable device, an ultra-mobile personal computer (UMPC), a netbook or a personal digital assistant (PDA), etc. It can also be a server, a network attached storage (NAS), a personal computer (PC), a television (TV), a teller machine or a self-service machine, etc., and the embodiment of the present application does not specifically limit it.
[0272] The calibration device of the electronic control unit in the embodiment of the present application can be a device having an operating system. The operating system can be an Android operating system, an iOS operating system, or other possible operating systems, which are not specifically limited in the embodiment of the present application.
[0273] The calibration device for the electronic control unit provided in the embodiment of the present application can implement each process implemented in the method embodiments of Figures 1 to 6. To avoid repetition, they will not be described here.
[0274] In some embodiments, as shown in Figure 9, an embodiment of the present application also provides an electronic device 900, including a processor 910, a memory 920, and a computer program stored on the memory 920 and executable on the processor 910. When the program is executed by the processor 910, each process of the method embodiment for calibrating the above-mentioned electronic control unit is implemented, and the same technical effect can be achieved. To avoid repetition, it will not be described here.
[0275] It should be noted that the electronic devices in the embodiments of the present application include the mobile electronic devices and non-mobile electronic devices mentioned above.
[0276] An embodiment of the present application also provides a non-transitory computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the various processes of the above-mentioned method embodiment for calibrating the electronic control unit are implemented, and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.
[0277] The processor is the processor in the electronic device described in the above embodiment. The readable storage medium includes a computer readable storage medium, such as a computer read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
[0278] An embodiment of the present application further provides a computer program product, including a computer program, which implements the above-mentioned method for calibrating the electronic control unit when executed by a processor.
[0279] The processor is the processor in the electronic device described in the above embodiment. The readable storage medium includes a computer readable storage medium, such as a computer read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
[0280] An embodiment of the present application further provides a chip, which includes a processor and a communication interface, wherein the communication interface is coupled to the processor, and the processor is used to run programs or instructions to implement the various processes of the above-mentioned electronic control unit calibration method embodiment, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.
[0281] It should be understood that the chip mentioned in the embodiments of the present application can also be called a system-level chip, a system chip, a chip system or a system-on-chip chip, etc.
[0282] It should be noted that, in this article, the terms "comprise", "include" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the statement "comprises a ..." does not exclude the presence of other identical elements in the process, method, article or device comprising the element. In addition, it should be noted that the scope of the methods and devices in the embodiments of the present application is not limited to performing functions in the order shown or discussed, and may also include performing functions in a substantially simultaneous manner or in the opposite order according to the functions involved. For example, the described method may be performed in an order different from that described, and various steps may also be added, omitted, or combined. In addition, the features described with reference to certain examples may be combined in other examples.
[0283] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus the necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art can be embodied in the form of a computer software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), including a number of instructions for enabling a terminal (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in each embodiment of the present application.
[0284] The embodiments of the present application are described above in conjunction with the accompanying drawings, but the present application is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of this application, ordinary technicians in this field can also make many forms without departing from the purpose of this application and the scope of protection of the claims, all of which are within the protection of this application.
[0285] Throughout this specification, reference to terms such as "one embodiment," "some embodiments," "illustrative embodiments," "examples," "specific examples," or "some examples" means that the specific features, structures, materials, or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.
[0286] Although the embodiments of the present application have been shown and described, those skilled in the art will appreciate that various changes, modifications, substitutions, and variations may be made to the embodiments without departing from the principles and intent of the present application, and that the scope of the present application is defined by the claims and their equivalents.
[0287] It should be noted that, unless there is any conflict, the embodiments and features in the embodiments of this application can be combined with each other.
[0288] The above are merely preferred embodiments of the present application and are not intended to limit the present application. Those skilled in the art will readily appreciate that various modifications and variations are possible. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of the present application shall be included within the scope of protection of the present application.
Claims
1. A calibration method for an electronic control unit, applied to a host computer, characterized in that: The host computer is connected to the electronic control unit via communication hardware; the communication hardware is capable of communicating based on a first communication protocol; the method comprises: Loading a spreadsheet file; the spreadsheet file is used to store properties of at least one calibration variable; Based on the electronic spreadsheet file, a calibration message that complies with the first communication protocol is sent to the electronic control unit, so that the electronic control unit executes the calibration command carried by the calibration message based on a predetermined calibration protocol stack to calibrate the electronic control unit; the physical layer of the predetermined calibration protocol stack adopts the first communication protocol.
2. The calibration method of the electronic control unit according to claim 1, characterized in that: The step of sending a calibration message conforming to the first communication protocol to the electronic control unit based on the electronic spreadsheet file comprises: Based on the attribute of the target calibration variable in the electronic spreadsheet file, obtaining an operation code and an operand of a calibration command for calibrating the target calibration variable; Based on the first communication protocol, encapsulate the operation code and the operand to generate the calibration message; The calibration message is sent to the electronic control unit.
3. The calibration method of the electronic control unit according to claim 2, characterized in that: The obtaining, based on the attribute of the target calibration variable in the electronic spreadsheet file, an operation code and an operand of a calibration command for calibrating the target calibration variable comprises: In a case where the attributes include a read-write attribute, a component identification number, a unit, a data type, a conversion coefficient, and an address offset, and do not include a virtual mapping attribute, a base set automatic reconstruction attribute, a paged access attribute, and a byte sequence access attribute, determining the operation code based on the read-write attribute, and obtaining the operand based on the unit, the data type, the conversion coefficient, and the address offset; or, In a case where the attributes include read-write attributes, component identification numbers, units, data types, conversion coefficients, address offsets, virtual mapping attributes, base set automatic reconstruction attributes, paging access attributes, and byte sequence access attributes, the operation code is determined based on the read-write attributes, and the operand is obtained based on the units, the data types, the conversion coefficients, the address offsets, the virtual mapping attributes, the base set automatic reconstruction attributes, the paging access attributes, and the byte sequence access attributes.
4. The calibration method of the electronic control unit according to claim 3, characterized in that: The step of encapsulating the operation code and the operand based on the first communication protocol to generate the calibration message includes: Determine an operation command number field in the calibration message based on the operation code, determine a component identification number field in the calibration message based on the component identification number, determine a data field in the calibration message based on the operand, and determine a frame length field in the calibration message based on the operation code, the component identification number and the operand; Based on the first communication protocol, the operation command number field, the component identification number field, the data The field and the frame length field are encapsulated to generate the calibration message.
5. The method for calibrating an electronic control unit according to any one of claims 1 to 4, characterized in that: Before loading the electronic spreadsheet file, the method further includes: receiving a first input; In response to the first input, the spreadsheet file is generated.
6. The method for calibrating an electronic control unit according to any one of claims 1 to 5, characterized in that: Before sending a calibration command that complies with the first communication protocol to the electronic control unit based on the electronic spreadsheet file, the method further includes: receiving a second input; the second input being used to indicate a type of the communication hardware; Based on the type of the communication hardware, the communication hardware is driven.
7. The method for calibrating an electronic control unit according to any one of claims 1 to 6, characterized in that: The application layer of the predetermined calibration protocol stack does not use the controller area network calibration protocol and does not use the general measurement and calibration protocol.
8. A calibration method for an electronic control unit, applied to an electronic control unit, characterized in that: The electronic control unit is connected to the host computer via communication hardware; the communication hardware is capable of communicating based on a first communication protocol; the method comprises: Receiving a calibration message that complies with the first communication protocol and is sent by the host computer; the calibration message is sent by the host computer based on an electronic spreadsheet file; the electronic spreadsheet file is used to store attributes of at least one calibration variable; Based on a predetermined calibration protocol stack, the calibration command carried in the calibration message is executed to calibrate the electronic control unit; the physical layer of the predetermined calibration protocol stack adopts the first communication protocol.
9. The calibration method of the electronic control unit according to claim 8, characterized in that: The step of executing the calibration command carried in the calibration message based on a predetermined calibration protocol stack to calibrate the electronic control unit includes: Based on the predetermined calibration protocol stack, parsing the calibration message to obtain the calibration command; The calibration command is executed to calibrate the electronic control unit.
10. A calibration device for an electronic control unit, applied to a host computer, characterized in that: The host computer is connected to the electronic control unit via communication hardware; the communication hardware is capable of communicating based on a first communication protocol; the device comprises: A loading module, used to load a spreadsheet file; the spreadsheet file is used to store the attributes of at least one calibration variable; A sending module, configured to send a calibration message conforming to the first communication protocol to the electronic control unit based on the electronic spreadsheet file; The calibration message is used to enable the electronic control unit to execute the calibration command carried in the calibration message based on a predetermined calibration protocol stack to calibrate the electronic control unit; the physical layer of the predetermined calibration protocol stack adopts the first communication protocol.
11. A calibration device for an electronic control unit, applied to an electronic control unit, characterized in that: The electronic control unit is connected to the host computer via communication hardware; the communication hardware is capable of communicating based on a first communication protocol; the device comprises: A receiving module, used for receiving a calibration message sent by the host computer and conforming to the first communication protocol; the calibration message is sent by the host computer based on an electronic spreadsheet file; the electronic spreadsheet file is used for storing attributes of at least one calibration variable; An execution module is used to execute the calibration command carried in the calibration message to calibrate the electronic control unit based on a predetermined calibration protocol stack; the physical layer of the predetermined calibration protocol stack adopts the first communication protocol.
12. An electronic control unit, characterized in that: A calibration device comprising an electronic control unit as claimed in claim 11.
13. A carrier, characterized in that: Comprising an electronic control unit as claimed in claim 12.
14. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the calibration method of the electronic control unit as described in any one of claims 1-9 is implemented.
15. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the calibration method of the electronic control unit as described in any one of claims 1 to 9 is implemented.
16. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the calibration method of the electronic control unit as claimed in any one of claims 1 to 9 is implemented.
Citation Information
Patent Citations
Instruction display, input and storage method used for embedded system
CN101482814A
Control method based on CCP or XCP protocol
CN111781909A
Data calibration method, device and equipment and storage medium
CN115903747A
Method and device for realizing virtual calibration of automobile based on virtual simulation platform
CN115981286A
Vehicle calibration diagnosis method based on MCD and vehicle
CN116483046A
Cited By
Data acquisition method, electronic equipment and storage medium
CN120711041A