WO2023246128A1 - 软件模型架构、电池管理系统控制器和车辆 - Google Patents

软件模型架构、电池管理系统控制器和车辆 Download PDF

Info

Publication number
WO2023246128A1
WO2023246128A1 PCT/CN2023/076339 CN2023076339W WO2023246128A1 WO 2023246128 A1 WO2023246128 A1 WO 2023246128A1 CN 2023076339 W CN2023076339 W CN 2023076339W WO 2023246128 A1 WO2023246128 A1 WO 2023246128A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
calibration
output
model
input
Prior art date
Application number
PCT/CN2023/076339
Other languages
English (en)
French (fr)
Inventor
岳翔
沈晓峰
化崇儒
Original Assignee
比亚迪股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 比亚迪股份有限公司 filed Critical 比亚迪股份有限公司
Publication of WO2023246128A1 publication Critical patent/WO2023246128A1/zh

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60LPROPULSION OF ELECTRICALLY-PROPELLED VEHICLES; SUPPLYING ELECTRIC POWER FOR AUXILIARY EQUIPMENT OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRODYNAMIC BRAKE SYSTEMS FOR VEHICLES IN GENERAL; MAGNETIC SUSPENSION OR LEVITATION FOR VEHICLES; MONITORING OPERATING VARIABLES OF ELECTRICALLY-PROPELLED VEHICLES; ELECTRIC SAFETY DEVICES FOR ELECTRICALLY-PROPELLED VEHICLES
    • B60L58/00Methods or circuit arrangements for monitoring or controlling batteries or fuel cells, specially adapted for electric vehicles
    • B60L58/10Methods or circuit arrangements for monitoring or controlling batteries or fuel cells, specially adapted for electric vehicles for monitoring or controlling batteries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3644Software debugging by instrumenting at runtime
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/60Other road transportation technologies with climate change mitigation effect
    • Y02T10/70Energy storage systems for electromobility, e.g. batteries

Definitions

  • the present disclosure relates to the technical field of software model development, and more specifically, to a software model architecture, a battery management system controller and a vehicle.
  • the embedded software model architecture is used in many scenarios because of its strong model visibility, easy maintenance, and automatic code generation, which is suitable for writing complex logic.
  • the embedded software model architecture needs to be debugged and updated.
  • the existing model is debugged offline, due to the external function calling function in the model's processing unit, the entire model will be unable to locate the corresponding function. The simulation failed, so some function modules need to be manually deleted. Every time the model is modified and needs to be tested offline, the model needs to be modified, resulting in heavy workload, low efficiency, and the risk of abnormal model function due to incorrect modifications.
  • One purpose of the present disclosure is to provide a new technology solution for software model architecture, battery management system controller and vehicle.
  • a software model architecture which model architecture includes: a first function calling unit, a logic unit, and a second function calling unit connected in sequence;
  • the first function calling unit is used to read the function value of the external function and output the function value to the logic unit;
  • the logic unit is used to execute preset calculation logic according to the function value, and output the first calculation result to the second function calling unit;
  • the second function calling unit is used to write the first calculation result into an external function
  • the logic unit when the model architecture is in an offline debugging state, the logic unit is in a mutually independent separation state from the first function calling unit and the second function calling unit respectively.
  • the logic unit when the logic unit is in an offline debugging state, the logic unit is connected to an output observer, and the logic unit is used for:
  • the model architecture is debugged according to the input working condition information, and the debugging results are output to the output observer, and the output observer is used to display the debugging results.
  • model architecture also includes: an input calibration unit and an output calibration unit,
  • the input calibration unit is used to calibrate the received signal to be calibrated to obtain input calibration data when the model architecture is in an online debugging state, where the signal to be calibrated includes the input received by the input calibration unit.
  • the signal and the function value of the external function read by the first function calling unit;
  • the logic unit is used to execute preset calculation logic according to the input calibration data, and output a second calculation result to the output calibration unit;
  • the output calibration unit is used to calibrate the second calculation result to obtain output calibration data, and output the output calibration data through the output end of the model architecture.
  • the first input end of the input calibration unit is the input end of the model architecture, and the second input end of the input calibration unit is connected to the output end of the first function calling unit;
  • the output end of the input calibration unit is connected to the first end of the logic unit, and the second end of the logic unit is connected to the input end of the output calibration unit;
  • the first output end of the output calibration unit is the output end of the model architecture, and the second output end of the output calibration unit is connected to the input end of the second function calling unit.
  • the output calibration unit is also configured to send the output calibration data to the second function calling unit, so that the second function calling unit writes the output calibration data into an external function.
  • the input calibration unit is configured with a calibration switch and a signal corresponding to the signal to be calibrated.
  • the corresponding calibration value when the model architecture is in an online debugging state, the input calibration unit performs calibration on the received signal to be calibrated, including:
  • the signal to be calibrated is calibrated according to the calibration switch and the calibration value, where the calibration switch includes an on state and a closed state, and the calibration value includes the signal to be calibrated itself or a preset value corresponding to the signal to be calibrated. .
  • the calibration unit calibrates the signal to be calibrated according to the calibration switch and the calibration value, including:
  • the model architecture also includes a model auxiliary unit, which is used to store model information,
  • the model information includes the model version number, model project number and model scheduling cycle of the model architecture.
  • model auxiliary unit is used for:
  • a battery management system controller is also provided.
  • the battery management system controller includes a control chip and a software model architecture provided on the control chip.
  • the software model architecture is any of the components of the first aspect. The software model architecture described above.
  • a vehicle including the battery management system controller described in the second aspect.
  • the software model architecture of this embodiment reads the function value of the external function through the first function calling unit and outputs the function value to the logic unit, so that the logic unit executes the preset according to the function value. Calculate logic, output the first calculation result, and write the first calculation result into an external function through the second function calling unit. While realizing the function of the model architecture itself, the read and write functions of the separate logic unit can be realized.
  • the model architecture is in offline debugging state In this state, the logic unit can be separated from the first function calling unit and the second function calling unit respectively, so that there is no external function calling function inside the logic unit, which facilitates offline debugging of the logic unit and greatly improves the debugging efficiency of the model.
  • Figure 1 is a software model architecture provided by this embodiment
  • Figure 2 is a schematic diagram of the offline debugging status of the model architecture provided in this embodiment
  • Figure 3 is another model architecture provided by this embodiment.
  • Figure 4 is a calibration flow chart of the input calibration unit provided by the embodiment.
  • FIG. 5 is a schematic structural block diagram of the battery management system controller provided in this embodiment.
  • Figure 6 is a structural block diagram of the vehicle provided by this embodiment.
  • any specific values are to be construed as illustrative only and not as limiting. Accordingly, other examples of the exemplary embodiments may have different values.
  • One application scenario of the embodiment of the present disclosure is the scenario of software model development.
  • Embedded software model development in the automotive field increasingly adopts model design to meet the growing functional requirements.
  • models are more visual, easier to maintain, and can automatically generate code, making them suitable for writing Complex logic.
  • the model architecture divides different functions by setting up different areas and sections, and then builds logical models and fills in codes in different areas, ultimately realizing the effective operation of the entire model function. Subsequent model maintenance, transplantation, and expansion can be completed according to clear instructions of the architecture. A good model architecture can make maintenance work more effective with half the effort.
  • the existing model architecture is generally divided into several units. The units and the outside are connected through signals. The functions between the units are independent. Each unit is filled with models or codes, and each unit executes different calculation logic. As the product is updated and iterated, the embedded software model architecture needs to be debugged and updated.
  • the debugging software is used to simulate and debug the model on the computer desktop. Since the external function calling function of the existing model is integrated in each unit, during offline debugging, the simulation of the entire model will fail because the corresponding function cannot be located, so some modules need to be manually deleted. Every time the model is modified and needs to be tested offline, the model needs to be modified, resulting in a heavy workload, low efficiency, and the risk of incorrect modifications that may cause abnormal model function.
  • the software when the existing model is debugged online, the software can be flashed into the microcontroller.
  • the debugging software can be used to debug the software functions.
  • the existing model does not have batch calibration input and output units, the output signals of the model input cannot be modified on a large scale.
  • the inventor proposed a software model architecture, which realizes the functional isolation of function calls and functional units by separating the external function calling function from the functional unit, and achieves rapid implementation and switching of model offline testing. . And by adding a calibration unit, batch calibration of signals during online debugging can be realized, and online debugging can be quickly realized.
  • Figure 1 is a software model architecture of this embodiment.
  • the model architecture 100 includes: a first function calling unit 101, a logic unit 102 and a second function calling unit 103 connected in sequence, where the first function calling unit The output terminal of the logic unit is connected to the input terminal of the logic unit, and the output terminal of the logic unit is connected to the input terminal of the second function calling unit.
  • the first function calling unit is used to read the function value of the external function and output the function value to the logic unit.
  • the external functions are functions outside the model architecture to enable the software model to perform its own logical calculations.
  • the first function calling unit only has the function of reading data.
  • the function value of the external function can be read, thereby not affecting the function of the logic unit when the software model is running normally.
  • the connection between the first function calling unit and the logic unit can be disconnected to reduce the need to manually delete the function calling function, thereby improving the efficiency of offline debugging of the model.
  • the logic unit is used to execute preset calculation logic according to the function value, and output the first calculation result to the second function calling unit.
  • the logic unit may include multiple functional units, and each functional unit executes different preset logic to implement different preset functions. Specific preset logic can be realized by manually writing a program.
  • the input terminal of the logic unit can also receive input signals to implement normal calculation logic based on the input signals, obtain calculation results, and output them to the outside of the model through the output terminal of the logic unit.
  • the logic unit can also receive the function value output by the first function calling unit, and can also output the calculation result to the second function calling unit.
  • the second function calling unit is used to write the first calculation result into the external function. That is, the second function calling unit may receive the first calculation result output by the logic unit in the model.
  • the first calculation result may be a signal value or a function value.
  • the second function calling unit can use the first calculation result as an input parameter of the external function, so that the first calculation result participates in the calling and execution of the external function.
  • the first function calling unit can call the function value of the external function, and the logic unit performs calculation according to the function value and outputs the second calculation result.
  • the second function calling unit can use the second calculation result as an input parameter of the external function, thereby realizing the software model framework of this embodiment. normal operation of the structure.
  • the logic unit when the model architecture is in an offline debugging state, the logic unit is in an independent state of separation from the first function calling unit and the second function calling unit respectively. In this way, the logic unit can be isolated and placed in an offline debugging environment to facilitate offline debugging of the logic unit.
  • there is no function calling unit in the logical unit there is no need to manually search and delete the function calling unit, which can reduce the possibility of model functional abnormalities caused by function calling errors.
  • Figure 2 is a schematic diagram of the offline debugging state of the model architecture in this embodiment.
  • the logic unit 102 is connected to the output observer 201.
  • the logic unit is used to: receive input working condition information; debug the model architecture according to the input working condition information, output the debugging results to the output observer, and output Observers are used to display debugging results.
  • the input working condition information may include the driving speed of the car, battery voltage, etc.
  • the input end of the logic unit can be used to receive input working condition information, and the output end of the logic unit is connected to the output observer.
  • the logic unit executes the preset function based on the input working condition information such as the car's driving speed and battery voltage. Calculate logic and output debugging results that characterize whether the model is suitable to the output observer.
  • the output observer is used to display debugging results so that debuggers can observe them easily.
  • the output observer can also store preset debugging results, and compare the debugging results output by the logic unit with the preset debugging results, so as to more intuitively observe whether the model meets expectations.
  • the software model architecture of this embodiment reads the function value of the external function through the first function calling unit and outputs the function value to the logic unit, so that the logic unit executes the preset calculation logic according to the function value and outputs the first calculation result, and writes the first calculation result to the external function through the second function calling unit. While realizing the function of the model architecture itself, the reading and writing functions of the logical unit can be separated. When the model architecture is in the offline debugging state, the logic unit can be separated from the first function calling unit and the second function calling unit respectively, so that there is no external function calling function inside the logic unit, so as to facilitate the offline debugging of the logic unit, which can greatly Improve model debugging efficiency.
  • Figure 3 is another model architecture provided by this embodiment.
  • the model architecture of this embodiment not only includes the first function calling unit 101, the logic unit 102 and the second function calling unit 103 shown in Figure 1, but also includes : Input calibration unit 104 and output calibration unit 105.
  • the first input end of the input calibration unit is the input end of the model architecture
  • the second input end of the input calibration unit is connected to the output end of the first function calling unit
  • the output end of the input calibration unit is connected to the first end of the logic unit, and the logic unit
  • the second end of the unit is connected to the input end of the output calibration unit
  • the first output end of the output calibration unit is the output end of the model architecture
  • the second output end of the output calibration unit is connected to the input end of the second function calling unit.
  • the input calibration unit is used to calibrate the received signal to be calibrated, obtain the input calibration data, and output it to the logic unit.
  • the logic unit is used to execute preset calculation logic according to the input calibration data, and output the second calculation result to the output calibration unit.
  • the output calibration unit is used to calibrate the second calculation result to obtain output calibration data, and output the above output calibration data through the output terminal of the model architecture.
  • the input calibration unit when the model architecture is in a non-online debugging state, that is, in a normal operating state, the input calibration unit can be in a dormant state. That is to say, when the model is in a non-online debugging state, the input calibration unit does not calibrate the input signal so that the logic unit executes the preset operating logic.
  • the calibration function of the model architecture can be triggered.
  • the output calibration unit can also be in a sleep state.
  • the operating principle of the model architecture is shown in Figure 1, and offline debugging can also be achieved. That is, the model architecture shown in Figure 3 can achieve both offline debugging and online debugging, which can improve the applicability of the model.
  • the signal to be calibrated received by the input calibration unit includes the input signal received by the calibration unit and the function value of the external function read by the first function calling unit.
  • the input signals received by the calibration unit may be signals required for normal operation of the model, such as vehicle operating data.
  • the function value of the external function read by the first function calling unit may be the return value of the external function set by the staff to implement a certain function of the vehicle.
  • the input calibration unit can fuse all signals that are about to be input to the logic unit and calibrate them before outputting them to the logic unit. Calibrate the input signal to achieve online calibration of the model input signal Simulation and calibration are used to simulate different test conditions and increase the type and quantity of test conditions.
  • the logic unit may include multiple functional units, such as functional unit 1 and functional unit 2 as shown in Figure 3 .
  • the output calibration unit of this embodiment can calibrate the second calculation result output by the logic unit to obtain output calibration data. And output the above-mentioned output calibration data through the output end of the model architecture, and send the output calibration data to the second function calling unit, so that the second function calling unit writes the output calibration data into the external function. Calibrating the output signal can realize online simulation and calibration of the model output signal, thereby simulating different test conditions and increasing the type and quantity of test conditions.
  • the input calibration unit is configured with a calibration switch and a calibration value corresponding to the signal to be calibrated.
  • the input calibration unit performs calibration on the received signal to be calibrated, including:
  • the input calibration unit can calibrate the signal to be calibrated according to the calibration switch and calibration value.
  • the calibration switch includes an open state and a closed state, and the calibration value includes the signal to be calibrated itself or a preset value corresponding to the signal to be calibrated.
  • debugging signals can be input to the model through the Explicit Control Protocol (Explicit Control Protocol, XCP) tool.
  • Explicit Control Protocol Explicit Control Protocol, XCP
  • the input calibration unit calibrates the signal to be calibrated according to the calibration switch and the calibration value, including: receiving a calibration instruction input by the user, and the calibration instruction is used to control the on or off state of the calibration switch; wherein, the calibration instruction is the calibration switch When it is turned on, the calibration value corresponding to the signal to be calibrated is output; when the calibration instruction is that the calibration switch is closed, the signal to be calibrated is output.
  • FIG 4 is a calibration flow chart of the input calibration unit in this embodiment.
  • the value corresponding to the calibration switch may be True.
  • the input calibration unit turns on the calibration function and outputs the calibration value corresponding to the signal to be calibrated.
  • the corresponding value of the calibration switch is not True, the input calibration unit turns off the calibration function, and the output data is the signal to be calibrated, that is, the input signal of the input calibration unit remains unchanged.
  • the data output by the input calibration unit in this embodiment is configured as a global variable, so as to facilitate Calls to data during debugging. That is, the calibration value and calibration switch are defined in software as global variables that can be read and written.
  • the output calibration unit is also configured with a calibration switch and a calibration value that corresponds to the second calculation result output by the logic unit.
  • the output calibration unit can calibrate the second calculation result according to the calibration switch and the calibration value.
  • the calibrated data is then output through the output terminal of the model, and the calibrated data is written into the second function calling unit.
  • This embodiment provides a model architecture, including a first function calling unit, a logic unit, a second function calling unit, an input calibration unit and an output calibration unit.
  • the model input signal and the function value called by the first function calling unit are calibrated through the input calibration unit, the output data of the logic unit is calibrated through the output calibration unit, and then output through the output terminal of the model, and the calibrated data is written Enter the second function calling unit to calibrate the input and output signals of the model.
  • the model architecture of this embodiment also includes a model auxiliary unit 106.
  • the model auxiliary unit 106 is used to store model information.
  • the model information includes the model version number, model project number and model scheduling cycle of the model architecture. It facilitates users to retrieve model information, supports online tracing of model versions and verification of run cycles, and improves the efficiency of troubleshooting problems.
  • the model auxiliary unit 106 can be provided in the logic unit, and the model auxiliary unit 106 is used to: receive query instructions input by the user when the software model architecture is in an online debugging state; and output model information according to the query instructions.
  • the user sends a query instruction to the model auxiliary unit through the XCP tool, and the model auxiliary unit retrieves the stored model information in response to the query instruction, so that the user can observe the model version number and project number, which can support the positioning of the model version and project, thus Reverse quick troubleshooting model to improve the accuracy and efficiency of troubleshooting.
  • the model scheduling period in this embodiment can be obtained by observing the model scheduling counter. Each time a pair of models is scheduled, the value of the model scheduling counter is incremented by 1. By obtaining the time interval of each increase of the observed model scheduling counter, the model scheduling cycle is confirmed to verify the stability of the software model. If the time interval is more stable, it indicates that the stability of the software model is better.
  • Figure 5 is a schematic structural block diagram of a battery management system controller according to an embodiment.
  • the battery management system controller 500 includes a control chip 501 and a software model architecture 502 provided on the control chip 501.
  • the software model architecture 502 is the software model architecture shown in FIG. 1 or FIG. 3 . The specific structure and function of each module are described in the above embodiments, and will not be described again to avoid repetition.
  • the battery management system controller provided in this embodiment can read the function value of the external function through the first function calling unit of the software model architecture, and output the function value to the logic unit, so that the logic unit executes preset according to the function value. Design calculation logic and output the first calculation result. And the first calculation result is written into the external function through the second function calling unit. While realizing the function of the model architecture itself, the reading and writing functions of the logical unit can be separated.
  • the logic unit can be separated from the first function calling unit and the second function calling unit respectively, so that there is no external function calling function inside the logic unit, so as to facilitate the offline debugging of the logic unit, which can greatly Improve the debugging efficiency of the model and the debugging efficiency of the battery management system controller.
  • FIG. 6 is a schematic structural block diagram of a vehicle according to an embodiment.
  • the vehicle 600 includes the battery management system controller 500 of the above embodiment.
  • the battery management system controller 500 includes a control chip 501 and a software model architecture 502 provided on the control chip.
  • the software model architecture 502 is the software model architecture shown in FIG. 1 or FIG. 3 .
  • Embedded software development in the vehicle field increasingly adopts model design to meet growing functional requirements. It can be seen from this that the vehicle 600 using the battery management system controller 500 of this embodiment can improve the debugging efficiency of the vehicle because the battery management system controller 500 has the software model architecture 502 .
  • Logical elements of the invention may be systems, methods and/or computer program products.
  • a computer program product may include a computer-readable storage medium having computer-readable program instructions thereon for causing a processor to implement various aspects of the invention.
  • Computer-readable storage media may be tangible devices that can retain and store instructions for use by an instruction execution device.
  • the computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the above.
  • Non-exhaustive list of computer-readable storage media include: laptop disks, hard drives, random access memory (RAM), read-only storage (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital versatile disk (DVD), memory stick , a floppy disk, a mechanical encoding device, such as a punched card or a raised structure in a groove with instructions stored thereon, and any suitable combination of the above.
  • RAM random access memory
  • ROM read-only storage
  • EPROM or flash memory erasable programmable read-only memory
  • SRAM static random access memory
  • CD-ROM compact disk read-only memory
  • DVD digital versatile disk
  • memory stick a floppy disk
  • mechanical encoding device such as a punched card or a raised structure in a groove with instructions stored thereon, and any suitable combination of the above.
  • computer-readable storage media are not to be construed as transient signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or through electrical wires transmitted electrical signals.
  • Computer-readable program instructions described herein may be downloaded from a computer-readable storage medium to various computing/processing devices, or to an external computer or external storage device over a network, such as the Internet, a local area network, a wide area network, and/or a wireless network.
  • the network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and/or edge servers.
  • a network adapter card or network interface in each computing/processing device receives computer-readable program instructions from the network and forwards the computer-readable program instructions for storage on a computer-readable storage medium in the respective computing/processing device .
  • Computer program instructions for performing operations of the present invention may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or instructions in one or more programming languages.
  • the computer-readable program instructions may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server implement.
  • the remote computer can be connected to the user's computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (such as an Internet service provider through the Internet). connect).
  • LAN local area network
  • WAN wide area network
  • an external computer such as an Internet service provider through the Internet. connect
  • an electronic circuit such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA)
  • the electronic circuit can Computer readable program instructions are executed to implement various aspects of the invention.
  • These computer-readable program instructions may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus, thereby producing a machine that, when executed by the processor of the computer or other programmable data processing apparatus, , resulting in an apparatus that implements the functions/actions specified in one or more blocks in the flowchart and/or block diagram.
  • These computer-readable program instructions can also be stored in a computer-readable storage medium. These instructions cause the computer, programmable data processing device and/or other equipment to work in a specific manner. Therefore, the computer-readable medium storing the instructions includes An article of manufacture that includes instructions that implement aspects of the functions/acts specified in one or more blocks of the flowcharts and/or block diagrams.
  • Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other equipment, causing a series of operating steps to be performed on the computer, other programmable data processing apparatus, or other equipment to produce a computer-implemented process , thereby causing instructions executed on a computer, other programmable data processing apparatus, or other equipment to implement the functions/actions specified in one or more blocks in the flowcharts and/or block diagrams.
  • each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions that embody one or more elements for implementing the specified logical function(s).
  • Executable instructions may occur out of the order noted in the figures. For example, two consecutive blocks may actually execute substantially in parallel, or they may sometimes execute in the reverse order, depending on the functionality involved.
  • each block of the block diagram and/or flowchart illustration, and combinations of blocks in the block diagram and/or flowchart illustration can be implemented by special purpose hardware-based systems that perform the specified functions or acts. , or can be implemented using a combination of specialized hardware and computer instructions. It is well known to those skilled in the art that implementation through hardware, implementation through software, and implementation through a combination of software and hardware are all equivalent.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Power Engineering (AREA)
  • Mechanical Engineering (AREA)
  • Sustainable Energy (AREA)
  • Sustainable Development (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Transportation (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本公开提供了一种软件模型架构、电池管理系统控制器和车辆,模型架构包括:依次连接的第一函数调用单元、逻辑单元和第二函数调用单元;第一函数调用单元用于读取外部函数的函数值,并输出函数值至逻辑单元;逻辑单元用于根据函数值执行预设计算逻辑,并输出第一计算结果至第二函数调用单元;第二函数调用单元用于将第一计算结果写入外部函数;其中,在模型架构处于离线调试状态下,逻辑单元分别与第一函数调用单元和第二函数调用单元处于相互独立的分离状态。

Description

软件模型架构、电池管理系统控制器和车辆
本公开要求于2022年06月24日提交中国专利局的申请号为202210734035.2、申请名称为“软件模型架构、电池管理系统控制器和车辆”的中国专利申请的优先权,其全部内容通过引用结合在本公开中。
技术领域
本公开涉及软件模型开发技术领域,更具体地,涉及一种软件模型架构、电池管理系统控制器和车辆。
背景技术
嵌入式软件模型架构,因其具有模型可视型强,维护方便,且可以自动生成代码,适用于复杂逻辑的编写等特点,被应用于很多场景中。
随着产品的更新迭代,需要对嵌入式软件模型架构进行调试更新,而现有模型在离线调试时,由于模型的处理单元中有外部函数的调用功能,会导致整个模型因无法定位相应函数而仿真失败,故需要人工手动删除部分函数模块,每次修改模型需要离线测试时,都需要改动模型,导致工作量大,效率低下,且有改动错误而引发模型功能异常的风险。
由此可知,对现有模型进行改进是亟需解决的问题。
发明内容
本公开的一个目的是提供一种软件模型架构、电池管理系统控制器和车辆的新技术方案。
根据本公开的第一方面,提供了一种软件模型架构,所述模型架构包括:依次连接的第一函数调用单元、逻辑单元和第二函数调用单元;
所述第一函数调用单元用于读取外部函数的函数值,并输出所述函数值至所述逻辑单元;
所述逻辑单元用于根据所述函数值执行预设计算逻辑,并输出第一计算结果至所述第二函数调用单元;
所述第二函数调用单元用于将所述第一计算结果写入外部函数;
其中,在所述模型架构处于离线调试状态下,所述逻辑单元分别与所述第一函数调用单元和第二函数调用单元处于相互独立的分离状态。
可选地,在所述逻辑单元处于离线调试状态下,所述逻辑单元连接输出观测器,所述逻辑单元用于:
接收输入工况信息;
根据所述输入工况信息对所述模型架构进行调试,输出调试结果至所述输出观测器,所述输出观测器用于显示所述调试结果。
可选地,所述模型架构还包括:输入标定单元和输出标定单元,
所述输入标定单元用于在所述模型架构处于在线调试状态下,对接收到的待标定信号进行标定,得到输入标定数据,其中,所述待标定信号包括所述输入标定单元接收到的输入信号和所述第一函数调用单元读取的外部函数的函数值;
所述逻辑单元用于根据所述输入标定数据执行预设计算逻辑,并输出第二计算结果至所述输出标定单元;
所述输出标定单元用于对所述第二计算结果进行标定,得到输出标定数据,并通过所述模型架构的输出端输出所述输出标定数据。
可选地,所述输入标定单元的第一输入端为所述模型架构的输入端,所述输入标定单元的第二输入端连接第一函数调用单元的输出端;
所述输入标定单元的输出端连接所述逻辑单元的第一端,所述逻辑单元的第二端连接所述输出标定单元的输入端;
所述输出标定单元的第一输出端为所述模型架构的输出端,所述输出标定单元的第二输出端连接第二函数调用单元的输入端。
可选地,所述输出标定单元还用于将所述输出标定数据发送至所述第二函数调用单元,以使所述第二函数调用单元将所述输出标定数据写入外部函数。
可选地,所述输入标定单元配置有标定开关和与所述待标定信号一一 对应的标定值;所述输入标定单元在所述模型架构处于在线调试状态下,对接收到的待标定信号进行标定,包括:
根据所述标定开关和所述标定值对待标定信号进行标定,其中,所述标定开关包括开启状态和关闭状态,所述标定值包括待标定信号自身或者与所述待标定信号对应的预设值。
可选地,所述标定单元根据所述标定开关和标定值对待标定信号进行标定,包括:
接收用户输入的标定指令,所述标定指令用于控制所述标定开关的开启或关闭状态;
其中,在所述标定指令为标定开关开启的情况下,输出与所述待标定信号对应的标定值;
在所述标定指令为标定开关关闭的情况下,输出所述待标定信号。
可选地,所述模型架构还包括模型辅助单元,所述模型辅助单元用于存储模型信息,
所述模型信息包括所述模型架构的模型版本号、模型项目号和模型调度周期。
可选地,所述模型辅助单元用于:
在所述软件模型架构处于在线调试状态下,接收用户输入的查询指令;
根据所述查询指令输出所述模型信息。
根据本公开的第二方面,还提供了一种电池管理系统控制器,所述电池管理系统控制器包括控制芯片以及设置在控制芯片上的软件模型架构,软件模型架构为第一方面任一所述的软件模型架构。
根据本公开的第二方面,还提供了一种车辆,所述车辆包括第二方面所述的电池管理系统控制器。
本申请的一个有益效果在于,本实施例的软件模型架构,通过第一函数调用单元读取外部函数的函数值,并输出函数值至逻辑单元,以使逻辑单元根据所述函数值执行预设计算逻辑,并输出第一计算结果,并通过第二函数调用单元将第一计算结果写入外部函数,在实现模型架构自身功能的同时,可以实现分离逻辑单元的读写功能。在模型架构处于离线调试状 态下,可以将逻辑单元分别与第一函数调用单元和第二函数调用单元分离,使得逻辑单元内部不存在外部函数调取功能,以便于逻辑单元的离线调试,可以大大提高模型的调试效率。
通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本公开的实施例,并且连同其说明一起用于解释本公开的原理。
图1是本实施例提供的一种软件模型架构;
图2是本实施例提供的模型架构离线调试状态示意图;
图3是本实施例提供的另一模型架构;
图4是实施例提供的输入标定单元的标定流程图;
图5是本实施例提供的电池管理系统控制器的结构示意框图;
图6是本实施例提供的车辆的结构框图。
具体实施方式
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步 讨论。
本公开实施例的一个应用场景为软件模型开发的场景。
汽车领域的嵌入式软件模型开发,越来越多地采用模型设计,以满足日益增长的功能需求,相对比手写代码,模型的可视型强,维护方便,且可以自动生成代码,适用于编写复杂的逻辑。
模型架构通过设立不同的区域和板块,来划分不同的功能,然后在不同的区域内搭建逻辑模型和填写代码,最终实现整个模型功能的有效运转。后续模型的维护、移植和扩展,可以根据架构清晰指示来完成,良好的模型架构,可以使维护工作事半功倍。
现有的模型架构一般分为若干个单元,单元之间、单元与外部,通过信号相连,单元之间的功能独立,每个单元内填充模型或代码,每一单元各自执行不同的计算逻辑。随着产品的更新迭代,需要对嵌入式软件模型架构进行调试更新,而现有模型在离线调试时,通过在电脑桌面,利用调试软件对模型进行仿真调试。由于现有模型的外部函数的调用功能集成在每一单元内,在离线调试时,会导致整个模型因无法定位相应函数而仿真失败,因此需要人工手动删除部分模块。每次修改模型需要离线测试时,都需要改动模型,导致工作量大,效率低下,且有改动错误而引发模型功能异常的风险。
另外现有模型在线调试时,可以通过将软件刷入至单片机中,在线运行时,利用调试软件进行软件功能的调试。但是由于现有模型没有批量标定输入输出的单元,不能大规模修改模型输入的输出信号,为达到在线调试的目的,需要在软件外部额外调试CAN报文,并通过CAN报文信号来模拟和观测少量的模型输入输出信号。在该方案下,由于CAN通信负载的限制,不能模拟所有输入输出信号,导致模拟工况的覆盖度不足,以及问题排查速度缓慢。
针对以上实施方式存在的技术问题,发明人提出了一种软件模型架构,通过将外部函数的调用功能从功能单元中分离,实现函数调用和功能单元的功能隔离,达到模型离线测试快速实现和切换。并通过添加标定单元,实现在线调试时对信号的批量标定,可以快速实现在线调试。
图1是本实施例的一种软件模型架构,参考图1,该模型架构100包括:依次连接的第一函数调用单元101、逻辑单元102和第二函数调用单元103,其中,第一函数调用的输出端连接逻辑单元的输入端,逻辑单元的输出端连接至第二函数调用单元的输入端。
本实施例中,第一函数调用单元用于读取外部函数的函数值,并输出函数值至逻辑单元。其中外部函数为模型架构外部的函数,以使软件模型进行自身逻辑计算。
第一函数调用单元仅具有读取数据的功能,当该软件模型与外部设备连接的情况下,可以读取外部函数的函数值,从而不影响逻辑单元在软件模型正常运行时的功能。当需要对模型进行调试时,可以断开第一函数调用单元与逻辑单元的连接,以减少人工删除函数调用功能的情况,从而可以提高模型的离线调试效率。
本实施例中,逻辑单元用于根据函数值执行预设计算逻辑,并输出第一计算结果至第二函数调用单元。
其中,逻辑单元可以包括多个功能单元,每一功能单元执行不同的预设逻辑,以实现不同的预设功能。具体的预设逻辑可以通过人为写入程序来实现。
本实施例中,在模型正常运行过程中,逻辑单元的输入端还可以接收输入信号,以实现根据输入信号执行正常的计算逻辑,得到计算结果,并通过逻辑单元的输出端输出至模型外部。同时,逻辑单元还可以接收第一函数调用单元输出的函数值,也可以将计算结果输出至第二函数调用单元。
本实施例中,第二函数调用单元用于将第一计算结果写入外部函数。即,第二函数调用单元可以接收模型中的逻辑单元输出的第一计算结果。其中,该第一计算结果可以是信号值,也可以是函数值。第二函数调用单元可以将第一计算结果作为外部函数的输入参数,使第一计算结果参与外部函数的调用和执行。
由此可知,第一函数调用单元可以调用外部函数的函数值,逻辑单元根据该函数值进行计算,并输出第二计算结果。第二函数调用单元可以将第二计算结果作为外部函数的输入参数,从而实现本实施例的软件模型架 构的正常运行。
同时,在模型架构处于离线调试状态下,逻辑单元分别与第一函数调用单元和第二函数调用单元处于相互独立的分离状态。从而可以将逻辑单元独立出来,放入离线调试环境中,便于逻辑单元的离线调试。此时由于逻辑单元中不存在函数调用单元,因此不需要人工寻找删除函数调用单元,可以降低因函数调用错误而引发模型功能异常的可能性。
其中,参考图2,图2为本实施例的模型架构离线调试状态示意图。在逻辑单元处于离线调试状态下,逻辑单元102连接输出观测器201,逻辑单元用于:接收输入工况信息;根据述输入工况信息对模型架构进行调试,输出调试结果至输出观测器,输出观测器用于显示调试结果。
例如,输入工况信息可以包括汽车的行驶速度、电池电压等。在离线调试状态下,逻辑单元的输入端可以用于接收输入工况信息,逻辑单元的输出端连接至输出观测器,逻辑单元根据汽车的行驶速度、电池电压等输入工况信息执行预设的计算逻辑,并输出表征模型是否合适的调试结果至输出观测器。输出观测器用于显示调试结果,以便于调试人员进行观测。同时输出观测器也可以存储预设的调试结果,将逻辑单元输出的调试结果和预设的调试结果进行对比,从而更加直观的观测到模型是否符合预期。
本实施例的模型架构,在测试人员检测到逻辑单元的逻辑发生变化时,只需更新逻辑单元,便可进行复测,进而可以实现逻辑单元的快速切换,提高调试效率。
本实施例的软件模型架构,通过第一函数调用单元读取外部函数的函数值,并输出函数值至逻辑单元,以使逻辑单元根据所述函数值执行预设计算逻辑,并输出第一计算结果,并通过第二函数调用单元将第一计算结果写入外部函数。在实现模型架构自身功能的同时,可以实现逻辑单元的读写功能的分离。在模型架构处于离线调试状态下,可以将逻辑单元分别与第一函数调用单元和第二函数调用单元分离,使得逻辑单元内部不存在外部函数调取功能,以便于逻辑单元的离线调试,可以大大提高模型的调试效率。
图3为本实施例提供的另一模型架构,参考图3,本实施例的模型架构不仅包括图1所示的第一函数调用单元101、逻辑单元102和第二函数调用单元103,还包括:输入标定单元104和输出标定单元105。
其中,输入标定单元的第一输入端为模型架构的输入端,输入标定单元的第二输入端连接第一函数调用单元的输出端;输入标定单元的输出端连接逻辑单元的第一端,逻辑单元的第二端连接输出标定单元的输入端;输出标定单元的第一输出端为模型架构的输出端,输出标定单元的第二输出端连接第二函数调用单元的输入端。
本实施例中,在模型架构处于在线调试状态下,输入标定单元用于对接收到的待标定信号进行标定,得到输入标定数据,输出至逻辑单元。逻辑单元用于根据输入标定数据执行预设计算逻辑,并输出第二计算结果至输出标定单元。输出标定单元用于对第二计算结果进行标定,得到输出标定数据,并通过模型架构的输出端输出上述输出标定数据。
需要说明的是,在模型架构处于非在线调试状态,也就是正常运行状态下,输入标定单元可以处于休眠状态。也就是在模型处于非在线调试状态下,输入标定单元不对输入信号进行标定,以使逻辑单元执行预设的运行逻辑。
在模型架构处于在线调试状态下,可以触发模型架构的标定功能。
另外,在输入标定单元可以处于休眠状态的情况下,输出标定单元也可以处于休眠状态。此时,模型架构的运行原理如图1所示,同样可以实现离线调试,即图3所示的模型架构既可以实现离线调试也可以实现在线调试,可以提高模型的适用性。
本实施例中,输入标定单元接收到的待标定信号包括标定单元接收到的输入信号和第一函数调用单元读取的外部函数的函数值。标定单元接收到的输入信号可以是模型正常运行所需的信号,如车辆的运行数据。第一函数调用单元读取的外部函数的函数值可以是工作人员为实现车辆的某一功能而设置的外部函数的返回值。
输入标定单元可以对所有即将输入逻辑单元的信号进行融合并标定后输出至逻辑单元。对输入信号进行标定,可以实现模型输入信号的在线 模拟和标定从而模拟不同测试工况,提高测试工况的种类和数量。
本实施例中,逻辑单元内部可以包括多个功能单元,如图3所示的功能单元1和功能单元2。
对应地,本实施例的输出标定单元可以对逻辑单元输出的第二计算结果进行标定,得到输出标定数据。并通过模型架构的输出端输出上述输出标定数据,以及将输出标定数据发送至第二函数调用单元,以使第二函数调用单元将输出标定数据写入外部函数。对输出信号进行标定,可以实现模型输出信号的在线模拟和标定,从而模拟不同测试工况,提高测试工况的种类和数量。
本实施例中,输入标定单元配置有标定开关和与待标定信号一一对应的标定值,输入标定单元在所述模型架构处于在线调试状态下,对接收到的待标定信号进行标定,包括:输入标定单元可以根据标定开关和标定值对待标定信号进行标定。其中,标定开关包括开启状态和关闭状态,标定值包括待标定信号自身或者与待标定信号对应的预设值。
需要说明的是,在本实施例的模型在线调试或离线调试状态下,均可以通过显式控制协议(Explicit Control Protocol,XCP)工具向模型输入调试信号。
本实施例中,输入标定单元根据标定开关和标定值对待标定信号进行标定,包括:接收用户输入的标定指令,标定指令用于控制标定开关的开启或关闭状态;其中,在标定指令为标定开关开启的情况下,输出与待标定信号对应的标定值;在标定指令为标定开关关闭的情况下,输出待标定信号。
例如,用户可以通过XCP工具输入标定指令,该标定指令可以控制标定开关的开启或关闭。图4为本实施例输入标定单元的标定流程图,参考图4,在标定开关开启状态下,标定开关对应的值可以是True。在标定开关为True时,输入标定单元开启标定功能,输出与待标定信号对应的标定值。在标定开关对应的值为非True时,输入标定单元关闭标定功能,输出的数据为待标定信号,也就是保持输入标定单元的输入信号不变。需要说明的是,本实施例的输入标定单元输出的数据被配置为全局变量,以便于 调试过程中对数据的调用。即,标定值和标定开关在软件上定义为可读可写的全局变量。
同理,输出标定单元也配置有标定开关和与逻辑单元输出的第二计算结果一一对应的标定值,输出标定单元可以根据标定开关和标定值对第二计算结果进行标定。再将标定后的数据通过模型的输出端输出,以及将标定后的数据写入第二函数调用单元。
本实施例提供一种模型架构,包括第一函数调用单元、逻辑单元、第二函数调用单元、输入标定单元和输出标定单元。通过输入标定单元对模型输入信号和第一函数调用单元调取的函数值进行标定,通过输出标定单元对逻辑单元的输出数据进行标定,再通过模型的输出端输出,以及将标定后的数据写入第二函数调用单元,可以对模型的输入输出信号进行标定。实现模型输入和输出信号的在线模拟和标定,从而模拟不同测试工况,提高测试工况的种类和数量。
参考图3,本实施例的模型架构还包括模型辅助单元106,模型辅助单元106用于存储模型信息,模型信息包括模型架构的模型版本号、模型项目号和模型调度周期。以便于用户调取模型信息,支持模型版本的在线追溯和运行周期的验证,提高排查问题的效率。
其中,模型辅助单元106可以设置在逻辑单元中,模型辅助单元106用于:在软件模型架构处于在线调试状态下,接收用户输入的查询指令;根据查询指令输出模型信息。
例如,用户通过XCP工具向模型辅助单元发送查询指令,则模型辅助单元响应于查询指令调取存储的模型信息,以便于用户观测模型版本号和项目号,可以支持模型版本和项目的定位,从而反向快速排查模型,提高问题排查的准确性和效率。
本实施例的模型调度周期可以通过观测模型调度计数器获取,每对模型调度一次,则模型调度计数器的数值加1。通过获取观测模型调度计数器每次增加的时间间隔,进行模型调度周期的确认,从而验证软件模型的稳定性。如果时间间隔越稳定,表明软件模型的稳定性越好。
图5是根据一个实施例的电池管理系统控制器的结构示意框图。
电池管理系统控制器500包括控制芯片501以及设置在控制芯片501上的软件模型架构502,软件模型架构502为图1或图3所示的软件模型架构。具体的各模块的结构和功能在上述实施例中均有描述,为避免重复在此不在赘述。
本实施例提供的一种电池管理系统控制器可以通过软件模型架构的第一函数调用单元读取外部函数的函数值,并输出函数值至逻辑单元,以使逻辑单元根据所述函数值执行预设计算逻辑,并输出第一计算结果。并通过第二函数调用单元将第一计算结果写入外部函数。在实现模型架构自身功能的同时,可以实现逻辑单元的读写功能的分离。在模型架构处于离线调试状态下,可以将逻辑单元分别与第一函数调用单元和第二函数调用单元分离,使得逻辑单元内部不存在外部函数调取功能,以便于逻辑单元的离线调试,可以大大提高模型的调试效率,提升电池管理系统控制器的调试效率。
图6是根据一个实施例的车辆的结构示意框图,车辆600包括上述实施例的电池管理系统控制器500。
电池管理系统控制器500包括控制芯片501以及设置在控制芯片上的软件模型架构502,软件模型架构502为图1或图3所示的软件模型架构。
车辆领域的嵌入式软件开发,越来越多地采用模型设计,以满足日益增长的功能需求。由此可知,使用本实施例的电池管理系统控制器500的车辆600,由于电池管理系统控制器500中具有软件模型架构502,因此可以提高车辆的调试效率。
本发明的逻辑单元可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储 器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品 的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽 性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。

Claims (11)

  1. 一种软件模型架构,其特征在于,所述模型架构包括:依次连接的第一函数调用单元、逻辑单元和第二函数调用单元;
    所述第一函数调用单元用于读取外部函数的函数值,并输出所述函数值至所述逻辑单元;
    所述逻辑单元用于根据所述函数值执行预设计算逻辑,并输出第一计算结果至所述第二函数调用单元;
    所述第二函数调用单元用于将所述第一计算结果写入外部函数;
    其中,在所述模型架构处于离线调试状态下,所述逻辑单元分别与所述第一函数调用单元和第二函数调用单元处于相互独立的分离状态。
  2. 根据权利要求1所述的模型架构,其特征在于,在所述逻辑单元处于离线调试状态下,所述逻辑单元连接输出观测器,所述逻辑单元用于:
    接收输入工况信息;
    根据所述输入工况信息对所述模型架构进行调试,输出调试结果至所述输出观测器,所述输出观测器用于显示所述调试结果。
  3. 根据权利要求1或2所述的模型架构,其特征在于,所述模型架构还包括:输入标定单元和输出标定单元,
    所述输入标定单元用于在所述模型架构处于在线调试状态下,对接收到的待标定信号进行标定,得到输入标定数据,其中,所述待标定信号包括所述输入标定单元接收到的输入信号和所述第一函数调用单元读取的外部函数的函数值;
    所述逻辑单元用于根据所述输入标定数据执行预设计算逻辑,并输出第二计算结果至所述输出标定单元;
    所述输出标定单元用于对所述第二计算结果进行标定,得到输出标定数据,并通过所述模型架构的输出端输出所述输出标定数据。
  4. 根据权利要求3所述的模型架构,其特征在于,
    所述输入标定单元的第一输入端为所述模型架构的输入端,所述输入标定单元的第二输入端连接第一函数调用单元的输出端;
    所述输入标定单元的输出端连接所述逻辑单元的第一端,所述逻辑单元的第二端连接所述输出标定单元的输入端;
    所述输出标定单元的第一输出端为所述模型架构的输出端,所述输出标定单元的第二输出端连接第二函数调用单元的输入端。
  5. 根据权利要求3所述的模型架构,其特征在于,
    所述输出标定单元还用于将所述输出标定数据发送至所述第二函数调用单元,以使所述第二函数调用单元将所述输出标定数据写入外部函数。
  6. 根据权利要求3所述的模型架构,其特征在于,所述输入标定单元配置有标定开关和与所述待标定信号一一对应的标定值,所述输入标定单元在所述模型架构处于在线调试状态下,对接收到的待标定信号进行标定,包括:
    根据所述标定开关和所述标定值对待标定信号进行标定,其中,所述标定开关包括开启状态和关闭状态,所述标定值包括待标定信号自身或者与所述待标定信号对应的预设值。
  7. 根据权利要求6所述的模型架构,其特征在于,所述标定单元根据所述标定开关和所述标定值对待标定信号进行标定,包括:
    接收用户输入的标定指令,所述标定指令用于控制所述标定开关的开启或关闭状态;
    其中,在所述标定指令为标定开关开启的情况下,输出与所述待标定信号对应的标定值;
    在所述标定指令为标定开关关闭的情况下,输出所述待标定信号。
  8. 根据权利要求1至7任一项所述的模型架构,其特征在于,所述模 型架构还包括模型辅助单元,所述模型辅助单元用于存储模型信息,
    所述模型信息包括所述模型架构的模型版本号、模型项目号和模型调度周期。
  9. 根据权利要求8所述的模型架构,其特征在于,所述模型辅助单元用于:
    在所述软件模型架构处于在线调试状态下,接收用户输入的查询指令;
    根据所述查询指令输出所述模型信息。
  10. 一种电池管理系统控制器,其特征在于,所述电池管理系统控制器包括控制芯片以及设置在所述控制芯片上的软件模型架构,所述软件模型架构为权利要求1-9任一所述的软件模型架构。
  11. 一种车辆,其特征在于,所述车辆包括权利要求10所述的电池管理系统控制器。
PCT/CN2023/076339 2022-06-24 2023-02-16 软件模型架构、电池管理系统控制器和车辆 WO2023246128A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210734035.2 2022-06-24
CN202210734035.2A CN117311672A (zh) 2022-06-24 2022-06-24 软件模型架构、电池管理系统控制器和车辆

Publications (1)

Publication Number Publication Date
WO2023246128A1 true WO2023246128A1 (zh) 2023-12-28

Family

ID=89241381

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/076339 WO2023246128A1 (zh) 2022-06-24 2023-02-16 软件模型架构、电池管理系统控制器和车辆

Country Status (2)

Country Link
CN (1) CN117311672A (zh)
WO (1) WO2023246128A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010049489A (ja) * 2008-08-21 2010-03-04 Toshiba Corp デバッグ支援装置およびデバッグ支援プログラム
CN109684202A (zh) * 2018-11-27 2019-04-26 国电南瑞科技股份有限公司 一种在应用中调试嵌入式系统程序中函数功能的方法
CN109783374A (zh) * 2018-12-27 2019-05-21 北京百度网讯科技有限公司 自动驾驶领域的代码处理方法、装置、设备和计算机存储介质
CN110347610A (zh) * 2019-07-23 2019-10-18 中电智能科技有限公司 一种嵌入式代码调试系统及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010049489A (ja) * 2008-08-21 2010-03-04 Toshiba Corp デバッグ支援装置およびデバッグ支援プログラム
CN109684202A (zh) * 2018-11-27 2019-04-26 国电南瑞科技股份有限公司 一种在应用中调试嵌入式系统程序中函数功能的方法
CN109783374A (zh) * 2018-12-27 2019-05-21 北京百度网讯科技有限公司 自动驾驶领域的代码处理方法、装置、设备和计算机存储介质
CN110347610A (zh) * 2019-07-23 2019-10-18 中电智能科技有限公司 一种嵌入式代码调试系统及方法

Also Published As

Publication number Publication date
CN117311672A (zh) 2023-12-29

Similar Documents

Publication Publication Date Title
US10565093B1 (en) Providing cognitive intelligence across continuous delivery pipeline data
US8935573B2 (en) Reliable unit testing through cached mocking
US10761963B2 (en) Object monitoring in code debugging
US8205120B2 (en) Intelligent test framework
US20170177765A1 (en) Test case generation
CN112527748B (zh) 用于分析用户操作行为的方法、装置、设备以及存储介质
US10255167B2 (en) Analytically selecting which tests are to be executed in a continuous delivery process
US10747656B2 (en) Systems and methods for mobile automation testing by emulating human behaviors
US10565091B2 (en) Method and apparatus for automatic cross-system program debugging
WO2019019647A1 (zh) 应用程序测试范围确定方法、系统、服务器和存储介质
US10394774B2 (en) Determining when a change set was delivered to a workspace or stream and by whom
CN115938188A (zh) 船舶机电装备故障信息模拟的维修数据导入方法及系统
US10067971B2 (en) Tracking model element changes using change logs
WO2023246128A1 (zh) 软件模型架构、电池管理系统控制器和车辆
EP3547143B1 (en) System and method for model-based and behaviour-driven testing
US20160170847A1 (en) Generating a data structure to maintain error and connection information on components and use the data structure to determine an error correction operation
US9280627B1 (en) GUI based verification at multiple abstraction levels
US9852048B2 (en) Simulating process variable changes during process runtime
Van Mierlo Explicitly modelling model debugging environments
WO2018020338A1 (en) System, method, and apparatus for crowd-sourced gathering of application execution events for automatic application testing and replay
US20120054557A1 (en) System and method for testing peripheral component interconnect express switch
WO2023020238A1 (en) Balancing cycle stealing with early mode violations
US11244096B2 (en) Simulating operation of an electronic device tracing using port mirroring
US11474794B2 (en) Generating mock services based on log entries
US11169895B2 (en) Emulation latch to capture state

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23825787

Country of ref document: EP

Kind code of ref document: A1