Electric bike pedal assist system

Hi,

I am making a proof of concept and would like to use an arduino platform to recieve two analog inputs and generate an V+ output to a PLC for use in a pedal assist system I've created.

Looking to see if this is possible and advisable.

My system would use the arduino to recieve hall sensor pulses ( 5v signal ) from an electric bike hub motor's commutation to the PLC. Pulses from a crank ( hall ) sensor would also be recieved by the arduino.

The two inputs would be computed to create an output. The output would be a v+ signal to the PLC to generate an effective throttle signal which sends power to the motor.

The sytem is initiated by crank hall pulse input.

The input compution is as follows.

Motor hall input creates a base curve using a single if/then statement. Crank hall input modifies this curve. e.g. ( as crank cadence increases, base curve is made to send a higher V+ value at a given wheel speed.

The basic concept is:

An assist system that sends power to the motor in a linear fashion proportional to wheel speed. The riders pedaling increases power ( at a given wheel speed ) as pedal cadence increases.

Can anyone advise me on the pheasability of this for an arduino platform.

Any questions?

Thanks a lot,

Chase Johnson

If we assume that motor power is proportional to throttle signal input, why not just let the throttle output from the controller be proportional to crank cadence?

¿Can you take a step backwards?:

What's the base idea?: to make a power servo controlled by the crank (pedal) rate?

Regards

Are the cranks not going to be connected to the wheels in the normal way? If they are, the ratio of crank speed to wheel speed can't exceed the gear ratio.

A useful measure would be power (Watts) applied to the pedal. If the power provided by the human exceeds a limit the motor is used to reduce load on the human. You can get a power measurement with strain gages in the cranks (measuring the flex of the crank)..

in Europe electric bikes must be controlled by pedal assist, they are not allowed to have a throttle in which case they are classified as mopeds or even motorcycles.

johnwasser:
Are the cranks not going to be connected to the wheels in the normal way? If they are, the ratio of crank speed to wheel speed can't exceed the gear ratio.

A useful measure would be power (Watts) applied to the pedal. If the power provided by the human exceeds a limit the motor is used to reduce load on the human. You can get a power measurement with strain gages in the cranks (measuring the flex of the crank)..

I think it would feel very awkward to have the cranks spinning in thin air. Thats what gears are for. You can have derailleurs with 27 different ratios or closed hub gears with 14 covering almost the same.

There has to be a difference between two things if you are to generate a signal to increase or reduce something.

There can't be any difference between the crank speed and the wheel speed (without changing gear) so I can't see how crank and wheel speed sensors can tell you anything useful.

I don't know how to detect the force on the pedals but that would seem to be a suitable mechanism for generating a signal from which to control the motor.

If you have an Arduino I don't understand why you would also need a PLC?

...R

nilton61:
If we assume that motor power is proportional to throttle signal input, why not just let the throttle output from the controller be proportional to crank cadence?

The goal is efficiency. It's important to factor in motor speed. As the motor speed increases, it's ability to accept current also increases. As crank cadence increases the rider is putting a substantial amount of torque into the system and if any time is appropriate to allocate a higher amount of current to the motor it would be under high rider output when the motor is unloaded.

vffgaston:
¿Can you take a step backwards?:

What's the base idea?: to make a power servo controlled by the crank (pedal) rate?

Regards

The idea is to maximize efficiency and to encourage and reward rider assistance.

Using the motor's efficiency curve as a guide, the motor is given more power as wheel speed increases ( because at low speed it turns excess current in waste heat. Secondly, as the rider spins a higher cadence, the system adds power proportional to that.

So essentially there are two inputs manipulating an output. 1) Wheel speed ( which is the dominant factor influencing output) and then 2) crank cadence.

As a prototype I would like to use an Arduino to recieve the two inputs and send a throttle signal to the controller as would normally occur in a pedal only situation.

Robin2:
There has to be a difference between two things if you are to generate a signal to increase or reduce something.

There can't be any difference between the crank speed and the wheel speed (without changing gear) so I can't see how crank and wheel speed sensors can tell you anything useful.

I don't know how to detect the force on the pedals but that would seem to be a suitable mechanism for generating a signal from which to control the motor.

If you have an Arduino I don't understand why you would also need a PLC?

...R

There is a difference between crank speed and wheel speed because the application is for multi-speed bikes.

The reason the Arduino is needed is because in this prototype I will be sending a throttle signal to the PLC to give the right assist under the right conditions..

If you know of a programable PLC that could take palce of the Arduino and the current PLC then that would be ideal..

Let me know if you have any ideas for that.

I think one thing I should have mentioned earlier is that this is for multi-speed bikes.

A single speed setup would actually work better using a torque sensing system which are currently being used by e-bike makers

I think I understand what you're attempting to achieve and your logic is quite sound. Some years ago I looked into building my own electric bicycle, but as you say, the law (in the uk at least) is an ass, in this area. I even found sites dedicated to disguising the electrical parts, such is the difficulty in keeping within the law.

I aborted my plans before I even started but i think your approach is quite doable. You mention a "PLC" do you have the specs for this or is it likely to be a separate circuit of your own.

BTW As an asside. A guy down the road got a 12v barbie doll car working for his 5 year old daughter. As he took it for a quick test drive (barely able to get his behind perched on top of it), he ventured out onto the footpath. Unfortunately a passing plod on foot patrol stopped him and gave him a breath test (which he failed). He lost his driving licence due to "being in charge of a motor vehicle under the influence"

As for the PLC.. I am using an infineon controller eBike battery, motors and Electric Bike kits | EM3ev

I just want to figure out if an aurduino could recieve the two inputs and send an anolog V+ output to this controller's throttle circuit.

sorry about you're friend. It's just the cost of democracy gone too far

Saamilapp:
As for the PLC… I am using an infineon controller http://em3ev.com/store/index.php?route=product/product&path=38&product_id=77

I notice “we strongly recommend our matching Throttle” and give no clue as to what their “matching throttle” actually does. It could be a series of switches or a potentiometer but I can’t find any further info on that.

If you can’t find a decent datasheet for it, I’d be inclined to build a driver circuit from scratch. In fact the heart of it seems to be an IC that is quite well documented. Unfortunately I can’t find details of the implementation used by that particular PLC.

sorry about you’re friend. It’s just the cost of democracy gone too far

Yes it transpires that the only mode of transport that you are allowed to use, without risking your driving licence is a horse. Even riding a bicycle under the influence of alcohol, with no power results in a ban from driving if you’re caught.

Greensprings:
I say put a load sensor onto an idler sprocket between the drive and wheel
the harder the rider pedels, the tigher the chain and thus, the larger force read by the load sensor

convert the load reading into a driver signal for the assist motor

this will create a feedback control loop as the motor begins to do more work than the human, the tension will drop and the assist will accordingly drop.

you probably could devise a system where the motor could sence that the human is trying to drive it out of phase and react, some sort of VFD - Inductance-Back EMF deal

Well thats a nice thought.. They make torque sensing bottom brackets for that purpose..

My premise is precisely not to measure torque from the rider. It's the wrong approach for efficiency. Torque sensing encourages lazy pedaling. It's perfectly fine to be lazy.. Thats what a throttle is for ( in countries that permit it )

The real value of a pedal assist is a natural feel and an efficient delivery.. 1) For that you want current delivered proportionate to motor rpm. 2) current increasing as cadence increases

I'd also incorporate a reed switch under the saddle. With a magnet in the back pocket and a judicous placement of your glutious maximus, you'd be able to put it into full steam ahead mode with no obvious visible throttle :wink:

I still think making the throttle signal proportional to the crank cadence will give you the desired behavior. Maybe with some different settings for different riders or you can determine rider fitness by measuring average cadence.
What motor power are you planning to use?

nilton61:
throttle signal proportional to the crank cadence

Isn't that identical to making it proportional to wheel speed?

...R

Hi,

I suspect the biggest problem is working out just how much power the cyclist is providing himself. Simply looking at the speed of the crank won't tell you anything about the force being applied. What about downhill? what about when the cyclist is coasting?

I'm a keen cyclist, I know lots of manufacturers have brought out cycle power meters over the last few years. Generally they announce the product 3 months before launch date, and then the launch date slips and slips. Occasionally they release a product in blaze of publicity, then it quietly gets withdrawn a few months later when everyone realise it doesn't actually work very well.

I was lucky enough to test some of the long-awaited Garmin power pedals recently, they do actually seem to work reasonably well you may want to look at hacking into these to see if you can use the power from these to judge how much electrical power to add.