Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Additional SVM variations #590

Open
wants to merge 17 commits into
base: master
Choose a base branch
from
Open

Additional SVM variations #590

wants to merge 17 commits into from

Conversation

Rampagy
Copy link

@Rampagy Rampagy commented Jan 16, 2023

@Rampagy Rampagy marked this pull request as ready for review January 16, 2023 16:39
motor/foc_math.c Outdated Show resolved Hide resolved
util/utils_math.h Outdated Show resolved Hide resolved
@Rampagy
Copy link
Author

Rampagy commented Jan 16, 2023

Adding picture for documentation purposes

image

@Teslafly
Copy link
Contributor

Doesn't vesc already use the ARS SVPWM type?
So you don't get any more voltage magnitude.

You do get to eliminate the dead time for the low side phase, but that can actually provide important balancing and make the dead time for all phases equal and easier to compensate for / ignore.
It also increases stress on the low side mosfet. (But enables asymmetrical hardware with more current on the bottom mosfet)

Have you tested this on any hardware at all? Tried with / without phase voltage filters?

This would also effect the voltage sensing for hardware with low side current shunts vs phase voltage shunts.

So this is not simple. and may not be desired in a lot of cases. It has actually been discussed before and not been found to be particularly valuable with it's tack on effects. At most this may be made selectable, but probably should not replace ARS SVPWM.

If you aren't you should join us in the vesc discord. (Discord) Especially if you are really into motor control. The #esc-firmware thread is probably where you want to be for discussing this in depth.

@Rampagy Rampagy changed the title Null=V0 svm implementation Additional SVM variations Jan 18, 2023
@vedderb
Copy link
Owner

vedderb commented Feb 20, 2023

Nice work! I think you got the the VESC Tool update right too.

Before merging I would like to see some more testing. As it looks to me now from the testing you did the additional methods reduce stability and whether they help with spreading heat or reducing the effects of dead time is not really confirmed. It would be good to see some experiments that show advantages and how current sensing and voltage sensing with phase filters is affected.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Feature request: Alternating Reversing sequence & Null=V0 space vector PWM
4 participants