Compact Field Oriented Controller, ASI + Grin, limited run

I'm setting up a pair of PhaseRunner's on a 2WD mountain bike. The rear motor is a 9C 2810 DD and the front motor is a BMC V4TT. It is up and running and I'm starting to fine tune the PhaseRunner's. I'm having some occasional issues with the PhaseRunner driving the BMC tripping off but I haven't tried any adjustments yet to fix that. The 9C worked instantly and has been fine, except for the complete lack of response to regen settings. I haven't looked into that yet either. So far just running AutoTune settings based on Justin's new software package.

The setup runs buttery smooth and silent, aside from a very small gear whine. The BMC is very torquey, in fact I'm going to limit it to 1300W to fit recommendations and to keep it from overpowering the 2810. The clutch lockup is silent.

Using a pair of torque throttle controllers solves a lot of the issues associated with 2WD systems such as matching motor Kvs (not much of an issue with torque control), and motors fighting each other that just doesn't happen here.

The small PhaseRunners are specially appropriate for a 2WD system with their size and low cable count. There's a lot to pack onto a 2WD system and these make it easier in a number of ways.

Thanks for a great building block!

Here are the PhaseRunners mounted side by side on the bike over the triangle bag and under the top tube. The aluminum provides extra heatsinking which so far has not been required. The test cables are way too long so there's a lot of extra wire bundled up behind the seatpost:

d8BzSkif3CMxujS-HU_uPeFrIisGWaTj-8u3qK3WMI16E1KtPC74NmOPtqDbAxfteWb2R-P0Wl6dgLKaCxHDfFs04ixub5bQYOmYWY7feD3Xbe8Tb4tWgh3RWyyL0-k25aDAKg4ee3qwCiX35sfhJ7IrW8ihNpzw1MgzJiKsRhMVLXkctEClB4mBxR3c4Xwt3Snf_C1PJ--qKJdzKDtGdqmjkP4iq2NDzrsqV2lKCe4od3KBu1ZCh0SUMdYRUVU2NI0wNJdIsXHc4lArnTKITz2HrKYyB8spgMH7WW8YtnEJ27FV5QcbyiyIKSR4Fu327ijkrd-HLMxQ3czQz5OCTUdwLVX6Lmmalbv5G_Wybx1nQUfRqBafdBlZF5mxwxrapiiNpetx1Ab-o7wo6jCfT40N2DMkjxENYMcbpHqqrRInkSW9-sk1aQqKZXnjCm3mhIiFvKVrH8ZnN67riuqi-UHnQLpzNLYeu88fBkr9Eu1RkxJdQX1h-2fSlR6rj1XHd8Djn9ficHJyCdhdyjYX-krHMe9gxyEXJ0RKJlzk6AyDu1rPYP1JbRB6J2CkpFBw9Sljk7dlSoCBZih_vMZqR4TjXyvKJkxNQlPZKOrRSjkGDQhOnQ=w872-h560-no


Battery is 72V, throttle is Magura spanned to about 1-4V with resistors and driving both PhaseRunner throttle inputs.

More info in the last few pages of my Bonanza2WD thread (around page 25) linked below.
 
For those annoyed by the 6,7 blinking pattern;

It has to do with the "ColdBatteryFoldback" temperature settings.

By default they are set to be 0 and 0, this is apparently giving a warning, even though it is the recommended default.

To fix this on the PhaseWarmup software you'll have to change these parameters. To do this,

1. Click Edit on the Top Menu Bar
2. Click "Edit Parameters"
3. In the new window, click the + icon
4. Scroll down to "Cold battery foldback starting temperature" select and then "add"
5. Change "Cold Battery Foldback Starting temperature" from 0 to 1, click write.
6. The 6,7 warning should stop.

We'll have a manual out shortly that among other things, will detail flash patterns, warnings etc.
 
TRRRR said:
Hello, my phase runner is cutting out when I go over bumps in the road with a fault 9, instantaneous phase over current error.
Any advice on what to try with this one?

Hey TRRRR, if it's not loose connector related, it's also possible that when you hit the bumps you are causing a brief but sudden accelleration/decelleration of the motor itself and this is causing the controller to loose sync with the motor. Just a theory, but I would try increasing the PLL bandwidth and see if that makes the issue go away. I have an eZee fast wind hub and increased the PLL bandwidth to 0.6 which eliminated the instantaneous phase overcurrent errors that had previously occurred.
 
Hey everyone, we've been tackling a lot of things in the background the past several months and haven't had much chance to post here but I'll get to that now.

First thing is that the most recent 0.97 Version of the Phaserunner Software Suite was released on our website last week.
http://www.ebikes.ca/downloads/?file=PhaserunnerSoftware_Windows
http://www.ebikes.ca/downloads/?file=PhaserunnerSoftware_Linux
http://www.ebikes.ca/downloads/?file=PhaserunnerSoftware_Mac

This should address the communication errors that people would sometimes get with older/slower computers, and asides from a number of small tweaks and bug fixes it also brings a new "feedback bandwidth tuning" tab in the Basic Setup pane:
FeedbackParameters.jpg

People had been having difficulty with the eZee, BMC, and MAC motors experiencing phase overcurrent faults when starting with the default PLL bandwidth of 0.39 rads, and so now this can be easily accessed to increase it to 0.5-0.7 rads for this family of geared motors.

As well, for people pushing phase current limits to the point of thermal rollback, we've also added the ability to display and plot the motor controller internal temperature on the dashboard pane.
ControllerTemperaturePlot.jpg

And finally, the most agonizing thing to produce but ready at last, a draft of an official phaserunner user manual!
I'm very interested to hear feedback and suggestions from people on this document, if this covers all bases that you otherwise previously had questions about, or if there are items still missing or inadequately explained. I know it could use a detailed troubleshooting section, but hopefully with the more clear setup and usage instructions there should be less troubleshooting required in the first place.
 

Attachments

  • PhaserunnerManualDraft2.pdf
    1.2 MB · Views: 169
Having just started to program two newly received Phaserunners this morning, the arrival of the draft manual couldn't have been timed better ... THANK YOU Grin!!

Also, in the "somebody's got a sense of humor up there" (I'm the US, so Vancouver is 'up' from here) department:
(quote from the "8.2 Mechanical" section of the draft manual)

"Waterproofing: 100% Potted Electronics, Connectors Not So Much" :lol:
 
Alan B said:
PhaseRunner draft manual is excellent.
Might make sense to add the depth of the M4 threads into the heatsink, it is important to avoid overlength screws.

Hey great point, I've just included that on the edits list.

rowbiker said:
Having just started to program two newly received Phaserunners this morning, the arrival of the draft manual couldn't have been timed better ... THANK YOU Grin!!
Also, in the "somebody's got a sense of humor up there" (I'm the US, so Vancouver is 'up' from here) department:
"Waterproofing: 100% Potted Electronics, Connectors Not So Much"

Heh, I figure every formal document needs at least one casual line thrown in to keep things interesting! Glad to year that this arrived in timely fashion for your initial setup. Any other suggestions/feedback on the draft manual from people who've struggled a bit setting up their systems initially would be most welcome. I've been quite pleased with the wildly enthusiastic response we've received from most people who've purchased and configured these initial run phaserunners for their ebikes; there have been a few difficult situations but I was bracing for a lot more to be honest.
 
This type of innovation is definitely the main key to more usable/usefull small EV's. The potential of brushless motor control is surprisingly very largely untapped for ebikes, needing mainly only proper hardware config and then suitable firmware and software. Good job imo!

The manual is well done- I easily got a feel for what to expect and how to use the product!
I like the 'hidden wires' approach, a simple solution, simply laid out.

I doubt Grin is planning on it (?) but a version with 80-100a battery current capability might be very desirable to the larger EV'ers/ offroaders/ racers! Keep it coming Grin!
 
I see a few using q100 motor with this controller.
I have q100h, can some one help me out with the right KV/pole count on this motor?
Mine is 260rpm/36v
Is it (260/36)*reduction ratio 12.6=91rpm/v that I should type in the software?
What about pole pairs(could it be 8 on this motor?) Should I type in 8*12.6=101 in the pole pairs window?
Thx!
 
nutspecial said:
This type of innovation is definitely the main key to more usable/usefull small EV's. The potential of brushless motor control is surprisingly very largely untapped for ebikes, needing mainly only proper hardware config and then suitable firmware and software. Good job imo!

The manual is well done- I easily got a feel for what to expect and how to use the product!
I like the 'hidden wires' approach, a simple solution, simply laid out.

I doubt Grin is planning on it (?) but a version with 80-100a battery current capability might be very desirable to the larger EV'ers/ offroaders/ racers! Keep it coming Grin!

While its not packaged as awesomely as the phaserunner... ASI does make larger controllers.
If I ever start modifying one of those hub motor moped scooters, I plan to drop one of their larger controllers into it. :lol:
 
Allex said:
I see a few using q100 motor with this controller.
I have q100h, can some one help me out with the right KV/pole count on this motor?

When I dyno tested a q100 that some years ago I got an effective pole pair count of ~65 by comparing the commutation frequency to the motor RPM. So use 65 as the # poles, and then an initial KV of 260/36 = 7.2 RPM/V. I'll add this in the motor table in the user manual, and if there are other popular hubs that people know the inner details of for the #poles then let me know and I can include them too.

Also, I should say if you get it wrong it's not the end of the world, but the computed Kv and displayed RPM values will also be off by the same amount, as well as any speed limiting that is enabled if you've put in your wheel size.
 
Thats great. Except CA with FW3.0 refuses to set pole count@65. Whenever I save it, it goes back to 60?
CA shows a speed of 80km/h on 14s while phaserunner software reads 53km/h which should be correct.
 
Allex said:
Thats great. Except CA with FW3.0 refuses to set pole count@65. Whenever I save it, it goes back to 60?
CA shows a speed of 80km/h on 14s while phaserunner software reads 53km/h which should be correct.

With a geared hub motor like this, you should not be using a CA-DP devices as the speed indicator since it will only show speed when the motor is running, once you let go of the throttle the speed will be 0. You should have the -DPS model of CA with a separate speedo sensor and spoke magnet. You can convert your CA3-DP into a CA3-DPS device easily enough, see this document here:
http://www.ebikes.ca/documents/CycleAnalystSpeedo.pdf
The magnet sensor from any random wired bike computer will normally work fine.

If for some reason you really want to get the speed from the motor commutation rather than from the hub/wheel and don't mind that it will show 0 speed when you stop throttling, then you can always set your effective wheel circumference smaller to compensate for the different pole count and then the displayed speed reading will be correct.
 
Thank you for your help Justin!
Here is a short video. In reality, when driving under load, you cannot hear the motor only a very low pitch noise coming from it. But it is a fact that bafang BBS02 is less quiet in comparison.
My next mission is to get rid of thr delay. It seems like I have a noticeable lag when running the throttle via CA...
[youtube]-2Oo5FMbLio[/youtube]
 
Justin, how much current can I safely pull from the 5V throttle connector on the PhaseRunner? How about the Hall Sensor +5 line?

I also notice in the manual it refers to a "forwards/reverse" wire, probably meant "forward/reverse". This error is repeated at least another time.

Thanks for the great controller! It is working well with the high turn 9C 2810 motor, but the phase current is a bit low for a lower voltage winding. A 12 FET version in a similar (perhaps just longer) of this would be fantastic!
 
Hello,
A question about the current rate of the Phase runner. I would like know if there is some way the battery current to be increased to about 50 amps. I made all the adjusments and everything works really good, but trying to set 50A battery current has no result in reality. I check in the dashboard menu, it reaches max 43A. I use MXUS 45H 4T motor. The battery voltage limits are well adjusted too. I think there is some hidden menu, which is directly related to the current limit.
Thank you in advance for any help!
 
Hi,

I have got my BAC2000 working sensorless with an Astro 3220 4T using the Bacdoor software. I am running with a pack of 16S 16 amp hours Kokam lithium polymer cells. 67 volt full charge. I have worked through many of the settings and the motor works but not perfectly. Under full throttle, the current suddenly drops to zero and then comes back up in about .32 of a second. It happens around twice during a three second full throttle run.

The autotune gave me Ls of 17 uHenries and Rs of 21 mOhms. I copied those in and autotune '2' gave me Kv of 1 and RPM of 11,983. Astro says a Kv of 169 rpm per volt. 11983 / 67 gives 179 rpm per volt so Kv of 1 in pu is close. I tried .9448 but it did not change anything.

I measured phase to phase resistance before I installed the motor and got .0367, .0340, .0387 ohms which is close to the .032 that Astro claims. Should Rs be 35 mOhms? Does this mean I should change Ls and how much? What about Current regulator bandwidth, it seems to be used to calculate Kp and Ki. How do I determine what is the right setting?

Another minor problem I am having is getting motor temperature to read correctly. I have a KTY84/130 sensor in the windings. I activated it under command settings bit 5 and put in correct values under protection and fault settings, motor. It shows a value now in motor temperature but that value does not change. Reading the voltage directly, I can see the voltage value has changed.

I would appreciate any suggestions. I have attached my motor configuration. The motor feels good and there is plenty of setting to play with. This is for an electrathon vehicle. Thanks who ever posted their 3210 motor configuration, that help get me going.

Thanks for any suggestions.

View attachment astro3220a.xml
 
1, Try bigger current Regulator bandwidth & PLL bandwidth;
2, Then try smaller Speed regulator Kp, such as 5, 4, 3;
3, Correctly set up Gear ratio & Wheel diameter;
U can link you notebook to your controller and try to repeat the No Power Output fault, to find out what happen.
 
I have the phase runner set up with a 9C rear motor (i think with the lowest winding for a big wheel) running sensorless. Ran the auto set up (set it to 9 KV and 23 poles) and the wheel spins up nicely with no load. If I sit on the bike and push the throttle at a standstill, there is a lot of stuttering and it usually doesn't go anywhere. If I have a rolling start it seems to work fine. This in a 29" wheel. I changed the autostartup spin up time time in the sensorless setting to 1000ms as suggested somewhere earlier in the thread. The autostart max rpm is set to 26. The phase runner blinks 6 times, pauses , then 7 times if that helps. The user manual doesnt say what this means.

Which settings do I change to fix this stuttering problem (increase rpm? more spinup time? or...?)

thanks
 
Lakebod,

If the error messages are the same as the Bacdoor program:

6 FLASHES Communication Timeout The controller has not received a valid
communications packet over an elapsed time
that exceeds the Command timeout threshold

7 Flashes Instantaneous Phase Current The instantaneous motor phase current
measurement has exceeded the
Instantaneous overcurrent trip threshold and
the bridge has been disabled

Often a loose phase wire will give the over current trip but there are some settings that will do the same. Wrong rated motor speed is one example.
 
Hi iser,

Thanks for the suggestions. The current regulator bandwidth was 1500 radians. I have tried 0, 1,000, and 2,500. It does not seem to effect the current drop out.

I do not see a PLL bandwidth, nor do I see a specific way to change Kp. The Bacdoor program says when Current Regulator is non zero, it is used with Rs and Ls to calculate Kp and Ki terms.

I have not tried matching the gearing to reality because the current drop outs happen at different speeds, so I was guessing it was not related.
 
<Under full throttle, the current suddenly drops to zero and then comes back up in about .32 of a second. It happens around twice during a three second full throttle run.>

I found the answer. The regenerative brake pedal resting voltage was very close to the regenerative brake "on" minimium setting. Under acceleration, the brake signal would fluctuate just enough to fool the controller into thinking I wanted regen. The controller would cut the throttle, the brake signal voltage would drop to below the minimum setting, the controller would respond to the throttle signal again. Rinse, Repeat.

So next question: Does anyone know the format of the serial signal from the controller? The controller is reading amps, volts and rpm and outputs it to the Bacdoor program. I can read the serial signal into an Arduino, but what will the format be?
 
So next question: Does anyone know the format of the serial signal from the controller? The controller is reading amps, volts and rpm and outputs it to the Bacdoor program. I can read the serial signal into an Arduino, but what will the format be?

U want make a handhold debug terminal based on Arduino?
 
iser said:
So next question: Does anyone know the format of the serial signal from the controller? The controller is reading amps, volts and rpm and outputs it to the Bacdoor program. I can read the serial signal into an Arduino, but what will the format be?

U want make a handhold debug terminal based on Arduino?

No. I want to make my Arduino Driver Displays Unit read amps, volts, rpm direct from the controller so that I can see per lap Power usage and lap times. I use an external shunt and voltage dividing circuit now.
 
Back
Top