I'm looking at import alternators because they are smaller and lighter, and have the potential to make the power I need at the speed I want (100W @ 300 RPM) with the voltage I wish to use (12V)
I'm using the Zilog Z8 MC chip that was designed as a dedicated motor controller (everything but the FET driver and some discrete components) because I'm familiar with programming the Z8 from when I designed toys back in the early 1990s. I love the Z8 uController.
I'm setting the program to run the motor as a sensorless BLDC motor for mechanical and electrical simplicity, as the controller will support this and it only requires inserting a few bytes of code into the program. I'm also setting the program to limit RPM so as to not overspeed my legs
Duty cycle of the PWM will depend on what it takes to maintain 300 RPM. If the motor is turning faster than 300 RPM then no assist will be applied, but below 300 more or less assist will be applied to maintain the set point. One benefit is this will develop a steady cadence of about 100 RPM at the cranks. I'm still in the flowchart phase of writing the program as I decide everything I need to get done as well as everything I want to be done, also certain things about the program can't be decided on until I know the number of poles in the stator and the rotor.
One thing I have decided on was to have the duty cycle for the rotor and the stator the same. It's very unlikely that the no load RPM of the motor will be anywhere near 300 RPM with a full power applied to the rotor, so the torque levels can be adjusted by changing the rotor duty cycle with the duty cycle on the stator, so that as the motor moves further below 300 RPM the controller makes each cycle from the stator make that much more torque by putting the same duty cycle on the rotor, so that at max power the controller is just switching unmodulated DC from phase to phase while running max current through the rotor. I realize this might make a bit more than 100W, but then 100W was just a ballpark figure.
An interesting thing about the Z8 MC is it has current monitoring capability and the ability to send that data to another device as well as monitoring voltage. It could behave as a bare bones version of the Cycle Analyst along with running the motor.
