908 views|2 replies

1668

Posts

0

Resources
The OP
 

Why are battery management systems (BMS) developed using Simulink? [Copy link]

First, not only the battery management system (BMS), but also many automotive controller development and testing are developed using Simulink. Second, it is the company that makes this decision, not an engineer, so this issue should be analyzed from the perspective of the company, not from the perspective of an engineer who is proficient in C code.

From the company's perspective, why do you prefer to use Simulink to develop controllers? There may be several reasons:

1. Simulink development not only lowers the company's recruitment threshold, but also reduces the adverse impact of personnel turnover on the team.


Undoubtedly, it is easier to get started with Simulink than C. Nowadays, almost everyone who graduates from automotive majors (even those who graduate from science and engineering majors) knows Simulink, but not many people are familiar with C. When companies are recruiting, it is much easier to recruit people who are familiar with Simulink than those who are familiar with C. Therefore, the difficulty of recruitment is reduced, and the salary can be lower (after all, more Simulink people are competing).

Job-hopping is a very normal thing in the automotive industry. If C is used to develop controllers, the departure of an engineer may cause heavy losses to the team, and it will take a long time to recruit another suitable code engineer. If Simulink is used to develop controllers, the departure of an engineer will have relatively little impact on the team, as there are many people who can take his place.

To put it bluntly, Simulink engineers are relatively easy to be replaced. This is not a good thing for engineers, but it is certainly not a bad thing for companies.

2. The Simulink module has a large amount of information, the model is easy to read, and it is easier to manage and inherit than C code.


Simulink is a graphical modeling. In most cases, Simulink models are more readable than C code, so they are easier to manage and inherit. Imagine if your predecessors in the team wrote a bunch of controller codes. If the codes are not standardized and not well commented, reading these codes will definitely make you scratch your head. Simulink models also have similar problems, but the impact is relatively smaller. No matter how poorly the predecessors built their models, as long as they encapsulate the subsystems independently, it is easy to read.

Moreover, a Simulink module may contain dozens, hundreds or even more lines of code, which means that Simulink can convey more information in a smaller volume. So if you know both C code and Simulink, and you are given a C program and a Simulink model corresponding to the same algorithm, it is likely that the time you spend reading Simulink will be less than the time you spend reading C program.

Based on the two advantages of readability and information content, Simulink models are easier to manage and inherit.

3. Simulink implements algorithms faster than C code


This is actually because the Simulink module contains more information. The function you want to implement with hundreds of lines of code may be implemented with one or several Simulink modules. Of course, it is not ruled out that some functions are much more convenient to implement with code than with Simulink modules, but in most cases it is the other way around. Moreover, Simulink has S-Function, which can integrate code, that is, you don’t have to use Simulink modules for all modeling. You can also use your handwritten code, or the form of module + code to implement your complete algorithm.

Of course, what is ultimately burned into the controller is still code. At this time, Simulink can use Embeded Coder to automatically generate code.

4. Simulink can accelerate controller development and testing in multiple stages


In addition to the faster algorithm implementation mentioned in point 3, Simulink can also speed up controller development and testing in some other ways. For example, the Simulink control algorithm model can be directly downloaded to the rapid control prototype (RCP) device to control the real controlled object in the form of a prototype controller, quickly verifying and iterating the algorithm.

3 and 4 above are very important. Simulink can accelerate the development of controllers, shorten the development cycle of controllers, and promote the launch of new cars as soon as possible, which is very important for car companies. Especially in recent years, various new forces have entered the automotive industry, bringing up the pace of the entire automotive industry, and the development cycle of new cars has been required to be greatly shortened.

In general, Simulink is a tool that is simpler and has a lower threshold than C. Using such a tool may not be a good thing for individuals, but it is not a bad thing for a company.

This post is from Automotive Electronics

Latest reply

The main reasons why battery management systems (BMS) are usually developed using Simulink include the following: Modeling and simulation: Simulink provides powerful modeling and simulation functions, which can easily build a model of the battery system and simulate and verify the system. Through simulation, the behavior and performance of the system can be better understood. Multi-physics modeling: The battery management system involves multiple physical fields such as batteries, charging, discharging, and temperature control. Simulink has multi-physics modeling capabilities, which can integrate modeling components from different fields and perform cross-disciplinary modeling and simulation. Automatic code generation: Simulink can generate embedded code for different hardware platforms, making it easy to transform the design into actual implementation. The control algorithm in the BMS can be designed directly in Simulink and generate code that can be used for real-time control hardware. Visual programming: Simulink provides an intuitive graphical programming environment, making the control algorithm design more intuitive and easy to understand, and also facilitating cooperation and communication between teams. Adjustability and rapid prototyping: Simulink allows users to flexibly adjust model parameters and algorithms, making it easy to debug and optimize the system. At the same time, users can quickly create prototypes and quickly verify design concepts. Simulink toolbox support: Simulink provides a wealth of toolboxes and functional modules, including control system design, signal processing, optimization algorithms, etc., to facilitate users to design various complex control algorithms and systems.  Details Published on 2024-3-28 09:16

31

Posts

0

Resources
2
 
BMS is mainly used in electric vehicles, and car companies generally adopt the V process development method, so the development of BMS naturally uses the model-based development method like the development of VCU and MCU. Advantages: fast development speed, easy to implement algorithms, and easy to understand graphical languages. Some toolboxes can be used right away. For example, if you want to keep the state of the previous cycle, just add a Delay module. If you want to write it in C language, you need to create a variable, assign values at the appropriate location, and read at the appropriate location; if you do VCU power-on and power-off logic development and fault handling, it is very convenient to use Stateflow, while it is much more troublesome to write in C language. It is convenient to carry out SIL verification. Using signal excitation, algorithms and logic can be simulated and verified on the computer; the designed SOC and SOH algorithms can be run and tested on the computer. Generate high-reliability code, which is a development method recognized by ISO26262, and can also generate code that meets the AUTOSAR standard. Generate A2L files, and debugging and calibration based on CCP/XCP is very convenient.
This post is from Automotive Electronics
 
 

1

Posts

0

Resources
3
 
The main reasons why battery management systems (BMS) are usually developed using Simulink include the following: Modeling and simulation: Simulink provides powerful modeling and simulation functions, which can easily build a model of the battery system and simulate and verify the system. Through simulation, the behavior and performance of the system can be better understood. Multi-physics modeling: The battery management system involves multiple physical fields such as batteries, charging, discharging, and temperature control. Simulink has multi-physics modeling capabilities, which can integrate modeling components from different fields and perform cross-disciplinary modeling and simulation. Automatic code generation: Simulink can generate embedded code for different hardware platforms, making it easy to transform the design into actual implementation. The control algorithm in the BMS can be designed directly in Simulink and generate code that can be used for real-time control hardware. Visual programming: Simulink provides an intuitive graphical programming environment, making the control algorithm design more intuitive and easy to understand, and also facilitating cooperation and communication between teams. Adjustability and rapid prototyping: Simulink allows users to flexibly adjust model parameters and algorithms, making it easy to debug and optimize the system. At the same time, users can quickly create prototypes and quickly verify design concepts. Simulink toolbox support: Simulink provides a wealth of toolboxes and functional modules, including control system design, signal processing, optimization algorithms, etc., to facilitate users to design various complex control algorithms and systems.
This post is from Automotive Electronics
 
 
 

Guess Your Favourite
Just looking around
Find a datasheet?

EEWorld Datasheet Technical Support

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号
快速回复 返回顶部 Return list