Epicyclic retro-direct 2 speed transmission

Ultimately, I'd like complete automation - changeover triggered by speed/torque.

What I meant above though, was something like.

- Switch to initiate sequence.

- Throttle setting overridden.

- Brake to zero.

- Reverse on registering zero.

- Power up to throttle setting.

Does this make sense?
 
Yes it makes sense, all the functions are there in the controller i.e the e-brake wire, this shuts the throttle down and engages the ebrake so should be simple to have one switch to do all via a few electronic switches, I dont see any reason why a speed/torque sensor could not be incorporated to initiate the switching process to make the whole setup automatic. :D
 
The easy way to do this is with a throttle conditioner processor, using a cheap and simple to programme microcontroller, something like a baby 8 pin Picaxe 08M. This could be powered from the throttle wires, take the throttle voltage as an analogue input voltage, maybe take a signal from one of the Halls to detect motor speed and output two signals, a digital forward/reverse signal to DX3 and an analogue voltage output to the throttle input on the controller.

Functionally, this would work as a fully auto transmission controller, by sensing maximum motor rpm in low gear mode, then initiating the close throttle - switch direction - open throttle sequence. The only tricky bit would be getting the throttle conditioning right, which might take a bit of playing about with some variables in the code, but as the Picaxe is programmed is a simple version of Basic, changing the code is an absolute doddle, especially for something as simple as this.

An even simpler option would be to just use the same sort of circuit, but without motor speed sensing and without the auto change feature, this being replaced by a 'gear change' switch input, or maybe a paddle change type switch. This would work by sensing the throttle voltage and gear change switch/buttons/paddles and then doing the close throttle - change direction - open throttle back to true throttle setting. This would pretty much exactly replicate a clutchless gear change sequence on a motorcycle or race car transmission with a dog engagement box.

If someone want something like this then I would be prepared to knock up a prototype as an experiment for them to try, but it wouldn't be for a couple of weeks as I'm busy until close to the end of the month.

Jeremy
 
OK, I'll get on with knocking one up as an experiment. I reckon it should fit inside the controller case, as the circuit board will only be around an inch square. This would probably only work with the Infineon/XieChang type controllers, or, perhaps, any other controller that uses the same control logic.

With the throttle processor fitted inside the case, all that would be fed out would be a couple of extra wires to a gear change switch plus the normal three wires to the throttle.

Jeremy
 
cool, I had some of my stuff come in the post today but I am still waiting on a few more bits and pieces. I bought MOD1 gears but now they are here Im not totally sure they will be man enough for my application :cry: but on a plus note it gives me something to play with :D
 
Miles said:
Did you get the gears from HPC?

No I got them from technobots not the biggest selection of stuff but they are a bit cheaper and I have always found there stuff to be reasonable quality for the price.
 
I did a bit of work last night and knocked up a simple 1" square circuit board layout for a throttle/gear switch interface:

Throttle interface.jpg

One thing I've realised is that this small board could be multi-purpose:

- It has the ability to sense up to three analogue voltages (with ten bit resolution),

- Generate PPM or PWM signals that can either create an analogue voltage output or drive an RC controller with a stream of position pulses, like a servo tester

- Accept up to three digital inputs (at the expense of analogue inputs)

- Output up to three digital outputs (at the expense of other inputs)

- Send and receive RS232 serial data (via the programming port that can be used as another interface connection)

In normal use one analogue input will be used to measure the throttle voltage and the PWM pin will be used to generate the throttle output voltage that goes to the controller. One of the other input/outputs will be used as the gear change switch line and the last one will be used as the controller reverse line driver.

However, if you weren't using this as a retrodirect controller, you could use the same board, with some reprogramming of the Picaxe, to do other things, like act as an interface between a standard Hall throttle and an RC controller, or even provide throttle torque control instead of throttle speed control.

To implement torque control all that needs to be done is to hook up the shunt voltage sense connection on the controller to one of the analogue inputs and use this to give an actual torque feedback signal. The throttle voltage input would come from the throttle to the board and the Picaxe code would compare the demanded torque (from the throttle input voltage) to the delivered torque (from the shunt voltage) and output an appropriate throttle voltage to the controller. The result would be fairly good torque control, which many have said feels better than speed control.

There are probably other uses for this simple little board, limited only by the small number of I/O ports and the limited programme memory.

Jeremy
 
That seems quite a nice little pic that could be very usefully for all this sort of thing. I have not worked with any of this sort of stuff for nearly 15 years :shock: I think I will have to start brushing up on it all again :) .
 
Interesting... Could it handle the output from one of these?

http://www.thun.de/thun_eng/sensor_technology_video.html

See attached doc. for specification.
 

Attachments

  • Datenblatt X-CELL_GB.pdf
    1.2 MB · Views: 121
Probably, depending on how frequently you wanted to poll the torque data. The limit would be set by the code; the more code that needs to run between each torque measurement, the slower the sampling rate.

If you just wanted to implement a pedal torque controlled throttle, then I reckon it should handle it OK, as you could average the torque sensor output only would only need to sample it a few times a second. If you wanted to try and measure instantaneous crank velocity, using the cosine output, then it might struggle a bit.

Jeremy
 
I want to use the torque reading to control the throttle but, the idea is to keep the pedal input below a settable maximum. It's probably more difficult to implement than it might seem.......

I might not need to read velocity at all.
 
This sounds reasonably practical, as you wouldn't want the throttle rate of change to be too fast, so I'm reasonably sure that this little microcontroller could handle it. I quite like the principle, because it would probably feel as if you had bionic legs.

I assume that the basic control loop would be no crank torque = no throttle, moderate crank torque = minimal throttle (enough to keep the motor just spinning) and crank torque over a pre-set threshold = high throttle proportional to the amount the crank torque is over the threshold. To work effectively I think the controller might have to work in torque control mode, with the throttle controller sensing motor current as well. Then again, it might be that the rider would just adapt and automatically ease off on the pedals.

Jeremy
 
Yes, that's the idea. I imagined the motor only being activated at just below the threshold level (with sufficient hysteresis). Torque control mode seems to be the way to go...
 
Jeremy Harris said:
it would probably feel as if you had bionic legs
Sounds like the ideal control system to me. Do you want to dispense with a manual throttle completely Miles? Maybe just a torque assist control knob on the controller?
 
Malcolm said:
Do you want to dispense with a manual throttle completely Miles? Maybe just a torque assist control knob on the controller?
Yes. Replace the manual throttle with a knob on the handlebar to change the threshold setting on-the-fly.

I've always wanted to have this system. The direct proportional system with 3 or 4 levels, that's normally used on pedelecs, seems a bit primitive....
 
Miles said:
The direct proportional system with 3 or 4 levels, that's normally used on pedelecs, seems a bit primitive....

With the exception of two pedelec units (the true torque sensing Panasonic bottom bracket motor and the cheap Chinese spring loaded torque switch crank) I'm pretty sure that all the common pedelec units just use crank speed control, rather than torque control. They only seem to sense crank rpm with some allowing some degree of manual switched speed selection.

I made a crude torque sensor for my recumbent, but couldn't get it to work very well. I used an idler wheel on the top of the chain, to deflect the chain down slightly. The idler was mounted on a fixed alloy arm fitted with strain gauges. When the chain tension increased as a consequence of pushing harder on the cranks, the alloy arm deflected slightly, giving a reading on the strain gauge output.

The big problem was that noise from chain bounce when going over bumps was always much greater than the wanted signal, making it very difficult to get a decent, usable torque signal, so I gave up on the idea. That bottom bracket torque sensor seems like a far better solution, as it will probably give a fairly clean signal.

In terms of having some manual control over such a system, without needing to reprogramme variables in the code, I think it should be possible to use spare analogue inputs to sense the output from a couple of controls, one to set the crank torque threshold and the other to vary the slope of the throttle increase with torque characteristic (in effect, changing the gain of the control loop). Without some manual means of easily adjusting these settings I think it might take a while to hit on the right settings by changing the code after each test.

Jeremy
 
Miles said:
I want to use the torque reading to control the throttle but, the idea is to keep the pedal input below a settable maximum. It's probably more difficult to implement than it might seem.......

I might not need to read velocity at all.


This would be a clever way to impliment phase current control. Taking an actual phase current measurements is much harder than getting an input from a torque sensor, and both should be roughly equal (assuming no saturation).
 
Building a high speed torque sensor is fairly easy. The way it's done on helicopter engines I've flown below is to use a thinned section of shaft, made from fatigue resistant steel, with an optical or hall angular position sensor either side of the thinned section. As torque increases the thinned section of shaft twists and the phase difference between the angular position sensors on either side indicates torque. A sensor like this is fairly easy to build, but would extend the effective length of the motor.

Another option is to use strain gauges on the motor shaft, with the sensing circuit built into, or around the shaft, powered by a small internal generator and some magnets. The torque signal can either be coupled via a rotary transformer or transmitted using a short range wireless link to the outside world.

Jeremy
 
Back
Top