IPM Motor Simulation and FOC Software
- Bigpie
- Posts: 1595
- Joined: Wed Apr 10, 2019 8:11 pm
- Location: South Yorkshire, UK
- Has thanked: 75 times
- Been thanked: 304 times
Re: IPM Motor Simulation and FOC Software
I've not updated to 5.24 yet, still on 5.20Pete not had chance to workout the critical current value and verify the flux linkage. Will give it a go soon though and try your fix.
VW Beetle 2003
Outlander front generator
Prius Gen 3 inverter (EVBMW logic board)
Outlander charger
3x Golf GTE batteries
Chademo Charging
Outlander water heater
Outlander front generator
Prius Gen 3 inverter (EVBMW logic board)
Outlander charger
3x Golf GTE batteries
Chademo Charging
Outlander water heater
- johu
- Site Admin
- Posts: 5791
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 157 times
- Been thanked: 1025 times
- Contact:
Re: IPM Motor Simulation and FOC Software
Thanks for checking. The block removes juddering at low speed that I traced down to uq changing sign. When I stopped it from changing sign, the issue disappeared. So again, not super scientific.
I noticed on the Prius motor frequency jumps straight from 0 to 7 Hz because of them resolution limitation (that maybe could be fixed). How about changing it to 10 Hz for now?
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
-
- Posts: 1801
- Joined: Sun Apr 03, 2022 1:57 pm
- Has thanked: 102 times
- Been thanked: 347 times
Re: IPM Motor Simulation and FOC Software
The same line of code is there in 5.20, see line 116 on the logging version, so could still be it.
Was this on the Prius Gen2 or Leaf? If the former could it have been the current offset bug with the intelligent drivers? Can't really think why changing sign should be an issue.johu wrote: ↑Mon Nov 28, 2022 2:42 pm
Thanks for checking. The block removes juddering at low speed that I traced down to uq changing sign. When I stopped it from changing sign, the issue disappeared. So again, not super scientific.
I noticed on the Prius motor frequency jumps straight from 0 to 7 Hz because of them resolution limitation (that maybe could be fixed). How about changing it to 10 Hz for now?
10Hz would be better than 30Hz. You can see on the above plots where is starts to become an issue and even 5Hz doesn't completely get rid of it.
- Bigpie
- Posts: 1595
- Joined: Wed Apr 10, 2019 8:11 pm
- Location: South Yorkshire, UK
- Has thanked: 75 times
- Been thanked: 304 times
Re: IPM Motor Simulation and FOC Software
currently
replace with
right?
*EDIT* Also is it worth adding release builds to the wiki so more people can play without having to build? Tie the release builds to the OI version?
Code: Select all
qController.SetMinMaxY(dir < 0 ? -qlimit : 0, dir > 0 ? qlimit : 0);
Code: Select all
qController.SetMinMaxY(dir <= 0 ? -qlimit : 0, dir >= 0 ? qlimit : 0);
*EDIT* Also is it worth adding release builds to the wiki so more people can play without having to build? Tie the release builds to the OI version?
VW Beetle 2003
Outlander front generator
Prius Gen 3 inverter (EVBMW logic board)
Outlander charger
3x Golf GTE batteries
Chademo Charging
Outlander water heater
Outlander front generator
Prius Gen 3 inverter (EVBMW logic board)
Outlander charger
3x Golf GTE batteries
Chademo Charging
Outlander water heater
-
- Posts: 1801
- Joined: Sun Apr 03, 2022 1:57 pm
- Has thanked: 102 times
- Been thanked: 347 times
Re: IPM Motor Simulation and FOC Software
My preference would be to lose that line completely to allow the controller to always use the full range. The latest code disables the line above 30Hz and my suggestion for now is to drop this frequency as low as possible, but the ideal would be to get rid of it completely.
Really need Johannes thoughts here though as he knows the details of why and when it was added and what the implications of removing it would be.
Edit - sorry, brains not working! I dont mean lose the line, I mean lose the limits by losing the if statement in the new code! In the 5.20 code that line would be replaced by
Really need Johannes thoughts here though as he knows the details of why and when it was added and what the implications of removing it would be.
Edit - sorry, brains not working! I dont mean lose the line, I mean lose the limits by losing the if statement in the new code! In the 5.20 code that line would be replaced by
Code: Select all
qController.SetMinMaxY(-qlimit, qlimit);
Re: IPM Motor Simulation and FOC Software
ok wow, will have to try another day to install qt as the laptop im currently working on doesn't have a spare 215GB free! lol
-
- Posts: 1801
- Joined: Sun Apr 03, 2022 1:57 pm
- Has thanked: 102 times
- Been thanked: 347 times
Re: IPM Motor Simulation and FOC Software
Wow indeed!
Pretty sure my install is nowhere near that. Must be some optional components that can be deselectected. Does it try to install any android support or support for other platforms? If so then they can all be deselected.
Edit - thinking about it the last qt install I did was to a virtual pc and that would have only been 10-20GB total disk space so there must be a lot of stuff that can be left out.
Pretty sure my install is nowhere near that. Must be some optional components that can be deselectected. Does it try to install any android support or support for other platforms? If so then they can all be deselected.
Edit - thinking about it the last qt install I did was to a virtual pc and that would have only been 10-20GB total disk space so there must be a lot of stuff that can be left out.
-
- Posts: 1801
- Joined: Sun Apr 03, 2022 1:57 pm
- Has thanked: 102 times
- Been thanked: 347 times
Re: IPM Motor Simulation and FOC Software
That sounds more like it
If it installs previous versions you too can probably lose them too. Fairly sure that features can be added after install if needed but never tried it.
If it installs previous versions you too can probably lose them too. Fairly sure that features can be added after install if needed but never tried it.
Re: IPM Motor Simulation and FOC Software
So I got the sim up and running after the cat woke me up at 5am, all I can say is wow thank you so much, I found settings in half an hour that stopped the over current trip I was getting on mg1, improved oscillation and found more power too! I don’t think I would have found this tune with hrs of on road tuning, it’s close enough to really life to be a complete game changer
-
- Posts: 1801
- Joined: Sun Apr 03, 2022 1:57 pm
- Has thanked: 102 times
- Been thanked: 347 times
Re: IPM Motor Simulation and FOC Software
No problem, thanks for the thanks!
Great to hear it seems close(ish) to reality and is being useful
If you're into C/C++ it's worth having a play with the Qt debugger. The ability to set break points, step though code and see the value of variables makes it much easier to debug code and understand how the it all works. I know my understanding of the OI code would be a lot worse if I hadn't been able to use it.
Great to hear it seems close(ish) to reality and is being useful
If you're into C/C++ it's worth having a play with the Qt debugger. The ability to set break points, step though code and see the value of variables makes it much easier to debug code and understand how the it all works. I know my understanding of the OI code would be a lot worse if I hadn't been able to use it.
Re: IPM Motor Simulation and FOC Software
ok Im struggling with the simulator, despite the first time i used it everything working fine, I now cant build a version that seems to work right, the hrottle reduction trace is missing from motor currents and it seems to not give me the same results twice, ive tried starting completely from scratch but still get the same issue, ive also tried compling in ubuntu using Johannes instructions in his readme but get the error:
/usr/bin/qmake -o Makefile ../IPMMotorSim/IPMMotorSim.pro -spec linux-g++ CONFIG+=debug CONFIG+=qml_debug
make: /usr/bin/qmake: Command not found
make: *** [Makefile:563: Makefile] Error 127
/usr/bin/qmake -o Makefile ../IPMMotorSim/IPMMotorSim.pro -spec linux-g++ CONFIG+=debug CONFIG+=qml_debug
make: /usr/bin/qmake: Command not found
make: *** [Makefile:563: Makefile] Error 127
-
- Posts: 898
- Joined: Fri Apr 26, 2019 5:40 pm
- Has thanked: 291 times
- Been thanked: 177 times
Re: IPM Motor Simulation and FOC Software
On the DIY EC forums, the topic of the Toyota Highlander MGR came up (because both the Outlander Hybrid and the IS300H are not sold in North America, but the Highlander Hybrid is).
I went into a bit of detail about why the MGR was abandoned in favor of the Outlander. Something about the MGR being designed for 600v and basically no one could manage to pull decent power out of it. There was some hope that field weakening might change that, but then that kinda flopped IIRC. My memory was too loose to make recommendations.
... Might this simulator and new developments/improvements code-wise help turn the corner on the MGR and why it was getting next to no power? Or, is that deservedly still put to rest as a viable EV platform?
I went into a bit of detail about why the MGR was abandoned in favor of the Outlander. Something about the MGR being designed for 600v and basically no one could manage to pull decent power out of it. There was some hope that field weakening might change that, but then that kinda flopped IIRC. My memory was too loose to make recommendations.
... Might this simulator and new developments/improvements code-wise help turn the corner on the MGR and why it was getting next to no power? Or, is that deservedly still put to rest as a viable EV platform?
- celeron55
- Posts: 776
- Joined: Thu Jul 04, 2019 3:04 pm
- Location: Finland
- Has thanked: 28 times
- Been thanked: 110 times
- Contact:
Re: IPM Motor Simulation and FOC Software
I'm going to run tests with MGR in a real car, but cannot spare the time currently as I started another project while waiting for FW development.
My guess is that at 350V it will be possible to get it up to 25kW or 30kW. Previously only about 15kW was possible.
My guess is that at 350V it will be possible to get it up to 25kW or 30kW. Previously only about 15kW was possible.
- Romale
- Posts: 451
- Joined: Fri May 20, 2022 4:16 pm
- Location: Romania
- Has thanked: 214 times
- Been thanked: 49 times
Re: IPM Motor Simulation and FOC Software
recently, with the wheels removed, I checked the latest firmware from a voltage of 120 volts (motor leaf gen 2) I tried increasing the fw from -100 to -500. at -500, I got a furious acceleration up to 14000 rpm and was not reset by pressing the brake. even when I turned on the neutral, the speed dropped to 12000 rpm and only stopped the power off for the controller.
I don't know if it's important or not, but I decided to let you know.
If this had happened in motion, my car would have raced like a horse at a speed of 200 + km / h.
At the same time, a limit of 400 Hz is set. It seems to me that it is very important to get real speed limits from the controller according to the fmax line in all modes. it is especially scary to set up an syncofs, there is always a motor accelerates to breakneck speeds even from 25 volts
I don't know if it's important or not, but I decided to let you know.
If this had happened in motion, my car would have raced like a horse at a speed of 200 + km / h.
At the same time, a limit of 400 Hz is set. It seems to me that it is very important to get real speed limits from the controller according to the fmax line in all modes. it is especially scary to set up an syncofs, there is always a motor accelerates to breakneck speeds even from 25 volts
evil neodymium
- mjc506
- Posts: 343
- Joined: Wed Sep 09, 2020 9:36 pm
- Location: Wales, United Kingdom
- Has thanked: 30 times
- Been thanked: 28 times
Re: IPM Motor Simulation and FOC Software
The simulator won't help with setting offsets (but will simulate the effects of a bad offset)
Setting the resolver offset really is a fundamental step, and has to be done right (as you've discovered!), the controller can really do very little to control a motor if it isn't where it thinks it is.
- johu
- Site Admin
- Posts: 5791
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 157 times
- Been thanked: 1025 times
- Contact:
Re: IPM Motor Simulation and FOC Software
I suppose the speed limiter now needs to be moved/added to the core control loop. It could just ramp down idref and iqref as a final step before entering the controllers. It's probably more graceful to leave the existing limiter in place and set this one at 50 Hz higher or so.
I currently cannot test except in the simulator. I can write some code but someone would need to test it
I currently cannot test except in the simulator. I can write some code but someone would need to test it
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
- mjc506
- Posts: 343
- Joined: Wed Sep 09, 2020 9:36 pm
- Location: Wales, United Kingdom
- Has thanked: 30 times
- Been thanked: 28 times
Re: IPM Motor Simulation and FOC Software
I'm not sure what the current speed limiter actually does, but...
Existing speed limit + 50Hz = hard backoff of currents? (won't help during regen)
Existing speed limit + 100Hz = fault?
Existing speed limit + 50Hz = hard backoff of currents? (won't help during regen)
Existing speed limit + 100Hz = fault?
-
- Posts: 1801
- Joined: Sun Apr 03, 2022 1:57 pm
- Has thanked: 102 times
- Been thanked: 347 times
Re: IPM Motor Simulation and FOC Software
Afraid I can't help too much with that. I know you can build Qt projects from the command line but you have to make sure that qmake is run correctly and that all the paths are set up right. I allays build from within Qt and this is the process that works for me viewtopic.php?p=49176#p49176Ev8 wrote: ↑Wed Dec 07, 2022 8:02 pm ok Im struggling with the simulator, despite the first time i used it everything working fine, I now cant build a version that seems to work right, the hrottle reduction trace is missing from motor currents and it seems to not give me the same results twice, ive tried starting completely from scratch but still get the same issue, ive also tried compling in ubuntu using Johannes instructions in his readme but get the error:
/usr/bin/qmake -o Makefile ../IPMMotorSim/IPMMotorSim.pro -spec linux-g++ CONFIG+=debug CONFIG+=qml_debug
make: /usr/bin/qmake: Command not found
make: *** [Makefile:563: Makefile] Error 127
One thought, have you got the motor and resolver pole pairs set to the same value? For some reason the simulator really doesn't like it if they are set different (should have a look to see why but have never got round to it).
Bit tricky this. When above fmax i's going to be well into field weakening (above base freq) so any hard backoff or shutdown will cause very strong regen as the motor voltage rises uncontrollably. Johannes' ramping of id and iq would probably be a safer approach.
- Romale
- Posts: 451
- Joined: Fri May 20, 2022 4:16 pm
- Location: Romania
- Has thanked: 214 times
- Been thanked: 49 times
Re: IPM Motor Simulation and FOC Software
I am a great master of accelerating motors to huge uncontrolled speeds
I will be a tester with pleasure
evil neodymium
- mjc506
- Posts: 343
- Joined: Wed Sep 09, 2020 9:36 pm
- Location: Wales, United Kingdom
- Has thanked: 30 times
- Been thanked: 28 times
Re: IPM Motor Simulation and FOC Software
Certainly be a good rev limiterPete9008 wrote: ↑Thu Dec 08, 2022 5:40 pm Bit tricky this. When above fmax i's going to be well into field weakening (above base freq) so any hard backoff or shutdown will cause very strong regen as the motor voltage rises uncontrollably. Johannes' ramping of id and iq would probably be a safer approach.
- johu
- Site Admin
- Posts: 5791
- Joined: Thu Nov 08, 2018 10:52 pm
- Location: Kassel/Germany
- Has thanked: 157 times
- Been thanked: 1025 times
- Contact:
Re: IPM Motor Simulation and FOC Software
Indeed, I think it will only step in effect when either your syncofs is far out and ud creates way too much accidental iq OR your freewheeling the motor in which case the unwanted regen wouldn't hurt much. Still, ramping is more gradual and would ultimately also result in killing off field weakening.
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
-
- Posts: 3265
- Joined: Mon Dec 24, 2018 1:37 pm
- Location: Slovenia
- Has thanked: 80 times
- Been thanked: 234 times
- Contact:
Re: IPM Motor Simulation and FOC Software
Hi Jjohu wrote: ↑Thu Dec 08, 2022 2:15 pm I suppose the speed limiter now needs to be moved/added to the core control loop. It could just ramp down idref and iqref as a final step before entering the controllers. It's probably more graceful to leave the existing limiter in place and set this one at 50 Hz higher or so.
I currently cannot test except in the simulator. I can write some code but someone would need to test it
I can offer to test some further hgh speed OI functionality. That would be a good project during winter if you like.
My hardware:
1.Hyundai HSG motor with resolver setup. Now this is very approprite fo testing. It has a belt drive that i could connect to some load. I can use my Volt inverter and gen2 OI board
2. I could just buy another HSG and use its belt drive to get into singularity... minus the friction losses . Seriously the more i think about it the more logical this step seems.
3. I have 360Vdc 9kW VW Passat battery in my workshop perfect for experimenting. I already setup my car simulator so i can connect OI as in any car with throttle pedal precharge and contactor.
4. As for the serial connection i have both wifi ESP module and TTL cable.
It would be a small setup and not much expenses invested for potentially huge gains:).
I am not a software engineer and high math problems can be confusing so i would leave firmware solutions to you. You can give me instructions which parameters to observe during testing.