2021-12-14 02:29 AM
Hi,
as explained into the title, i am developing a firmware on this board which is stable. i have bought a new set of board and after flashed, the firmware becames unstable :unamused_face:
Searching a reason why i have seen that the MCU revision is not the same: Y with my first board set on which the firmware is stable, X with the second set giving unstability. Please what is the problem ? what i need to adapt ?
2021-12-14 05:35 AM
Hello @coren.1 ,
The revision X is a bug fix version of the revision Y. It fixes an ADC issue when regular conversion are interrupted by an injected conversion.
We are not aware of any regression introduced by the revision X.
What kind of instability do you see ?
Best Regards
Cedric
2021-12-14 06:23 AM
My firmware is sensorless.
I set a speedRef to reach at the end of start-up
with revision Y, i observe 0,2A current consumption at speedRef and it is stable, with revision X current consumption increases from 0,2 A without limit it seems
2021-12-14 06:34 AM
Could you try to decrease the KP speed and see how does it behave. (start by a division by 2 for instance)
Cedric
2021-12-14 06:37 AM
I take the time to re-wire an X card, I do this test and get back to you
2021-12-14 07:12 AM
Since I changed my startup procedure, I didn't have to re-test an "X".
There, I noticed from the alignment a higher bcp current then at the end of the starting procedure a difference of about 0.6 A (25.2V)), then the current increases
With the Y version, the alignment does not create such a high current and the current rise is very gradual.
2021-12-14 07:58 AM
it is clear that from the call to HAL_TIM_PWM_start && HAL_TIMex_PWM_start, equivalent to the start of the alignment procedure, the current in case X jumps by 0.5 / 0.6 A
then increases quicker and goes higher than with Y. besides, I noticed smoke by leaving too long time this card. I am impressed
2021-12-14 01:26 PM
that was the value of the deadtime. I changed it from 1F to 33 and that made it possible to find a stable firmware. But 2 things, I do not understand why and especially now the temperature, so far very low, reached values too high. I have to find the right settings again
2021-12-15 01:38 AM
Please, could you, if possible, what are the modification(s) between the revision Y and revision X that could explain the different behaviour of a firmware, especially why need to change the deadtime value moreover this is not a true solution because it increases the temperature ?
2021-12-15 09:46 AM
Hello @coren.1 ,
I checked with people in charge of the production, and there are no other changes done on the board when we switched from revision Y to revision X.
On our side, we did several tests with both version X and Y.
Here is a screen shot of the current measured with version X :
The plots represent 5 sequences of start stop. Each sequence is composed of two parts, one open loop start that consumes more current and a small current as soon as the observer takes the control.
Here is the same measurement done with version Y:
Both versions produce very similar results.
Could you tell us a bit more about your software environment. Do you use the motorcontrol SDK, if yes which version ?
You mentioned a call to HAL_TIM_PWM_start && HAL_TIMex_PWM_start, but those functions are not part of the SDK delivery.
Best regards
Cedric