Advanced vehicle simulator to Virtual Vehicle Composer

Hello,I am currently working on the virtual vehicle composer app provided by Matlab, and I was wondering what are the parameters that I have to change in order to get my VVC model to act the same as the (very primitive) advisor model. I have already calibrated the engine, transmission and TCU, however I believe that I have missed some parameters since the model doesn't behave exactly the same. Thank you...

 Accepted Answer

Hi Bardia,
I remember using ADVISOR many years ago. Good times :) A few thoughts for you to consider:
  1. I don't think it's reasonable to expect ADVISOR and the VVC models to match exactly. ADVISOR is a 30 year-old Simulink model that uses different component models and different controllers than what is in the VVC. You can parameterize the vehicle models similarly to get similar responses, but they will never match exactly.
  2. If you want to more closely align simulation results, start by making subsystem test harnesses. Once you've parameterized your components the same way, feed the same open-loop inputs to them and compare the results.
  3. Some components may be very difficult to match. For example, VVC uses Magic Formula tire models. Those are very commonly used today, but were not published when ADVISOR first came out. Don't expect every component to behave the same because they aren't always using the same equations under the hood.
  4. Consider the impact of the controller. ADVISOR is a backward-facing model, which means it prescribes the vehicle's velocity and determines the energy required to meet that velocity. VVC is a forward-facing model, which means it prescribes a target velocity, then uses a driver and controller model to try to get the vehicle as close to the target velocity as possible. This will of course have a big impact on how the simulations behave.
Hope that helps,
Mike

6 Comments

I appreciate your answer Mr.Sasena, which does help a lot. and you are exactly right, since ADVISOR uses a ode45 method and (usually) 1 second step time for solving the problem yet VVC uses a ode23tb approach with a very smaller time step (which makes my job a bit difficult, I will get to it later :) ).
However in the past few days I had a good amount of success in simulating the VVC model in accordance to ADVISOR. My simulations were done in 9 different drive cycles with a maximum error of 3.5% for fuel consumption in the NEDC cycle. My problem with this cycle stems from the EXTREME torque oscillation when the throttle is closed (In the VVC model). I was wondering if there is any remedy to this problem. I will insert an image for you to see.
Thank you in advance for your help.
I would look at the driver model to see what kind of accel and brake commands you're getting. You might want to play with the gains on the driver to smooth out the response while maintaining the speed within the target velocity.
Hi Mike. Thank you for the direction to focus on the driver gains.
I’m using the VVC with WOT driver to size components for a car wrt 0 to 100kph timings. But the default signal accelfdbk signal starts to drop from value 1 , before 100 kph or even simulation time. Planning to look at driver gains. Any further advice is appreciated. Btw good to connect back from gm times. Thanks
Hi again. I would start by looking at the WOT parameters in the Drive Cycle Source block. For example, there's a parameter in there that says when to start decelerating the vehicle. It's possible you have that set too low for the vehicle, so it starts braking before hitting your target speed.
Hi Mike. Thanks for the suggestions. I will take a look at the start deceleration time/parameter. Is it also possible that, accelfdbk can drop due to low or zero EM1 torque available at that rpm even before reaching target vehicle speed? May be the EM1 spd trq curve is ill defined in my case.
Thanks very much.
Yes, that's possible as well. You can check the max torque curve to see if the breakpoints for speed cover your use case. For example, if your WOT test is bringing the motor to 15000 RPM, but your max torque curve is only defined up to 10000 RPM, you could have problems with the mapped motor extrapolating torque outputs.

Sign in to comment.

More Answers (0)

Categories

Find more on Powertrain Blockset in Help Center and File Exchange

Products

Release

R2024a

Asked:

on 23 Apr 2025

Commented:

on 12 Aug 2025

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!