Compensations, signal preparing, baning.
Compensations
1. Compensating the zero position of the throttle arm
Compensating the zero position is not as simple as it is imagined. The result is connecting the "Reset" leg to zero volt. For this purpose we need a FET and a comparator (or an operational amplifier – so called op. amp.) for controlling the FET. The main thing, that if we have 0V on the „Control” leg, the "Reset" should be active. The situation is a bit easier because of the fact, that the 0…5V control signal must be created as well, we don’t have it from the basics. The throttle arm has 0,8…4,2V range as a response signal depending on the actual angle of the throttle arm for a 5V Vcc. The 0,8V signal is very godd for us to use it as one of the comparator inputs. The output signal of the throttle arm is connected to the "-" of the comparator and a 0,81V signal is created to the "+" which can be done by a simple potmeter from the 5V Vcc. When the throttle arm is in "0" position, the output will be 0,8V and the reference is 0,81. Mathematicaly 0,8V < 0,81V, so "U-" < "U+" and the Vcc will appear in the output, which opens the FET and activates the "Reset" leg of the 555 IC. When the output signal of the throttle arm exceeds the 0,81V, the output will be 0V and the "Reset" won’t be active any more. The output of the 555 IC will serve PWM signal according to the input voltage on the "Control" leg.
2. Compensating the full throttle
I don’t care about the 100% fill out factor, but it can be solved with a comparator that the "Gate" of the FET can be connected to Vcc via another FET if the output signal of the throttle arm is 4,2V. I would like to note that the output of the 555 IC is better to be detached in this case with another FET to be sure that the output of 555 will not be damaged. I think it’s not as critical as having an output signal at the basepoint of the throttle arm.
Signal preparation
1. Signal adjusting
The "Control" signal must be adjusted between 0...5V to have approx. 0...100% fill out factor in the output. For this purpose 0,8V must be subtracted from the 0,8...4,2V signal (a 0...3,4V signal will remain) and it should be multiply with 1,47 (3,4*1,47=5). For this purpose the best to use two op. amp. The 0,81V is already created for the "Reset" leg control, this can be used for the subtraction, so it should be connected to the "-" in put (U1) and the throttle signal should be connected to the "+" input (U2). (The Vcc of the op. amp. is 9VDC, othervise the output signal cannot reach 5VDC)
The subtraction circuit (R1 = R2):
The multiplying is done by a non invertin amplifier. The amplifying factor is: 1+(R2/R1), so R2/R1=0,47 and because of this e.g.: R2=470kΩ; R1=1MΩ.
The multiplyer circuit:
Baning
1. Current limit
One of the two important banings is the power limiting current limit. The motor can bear biger voltage and the biger attending current, but nothing is endless. Keeping the factory values are resulting a long life to the motor. Current limit is used in the controller to keep it. The current is converted to voltage by a monitor resistor which is connected to the motor serial. We can do several different things with this voltage. We can activate the "Reset" leg of the 555 IC with the help of a comparator or we can modify the signal level of the throttle arm after compensation ("-" input of the op. amp.).
1.a. Activating the Reset leg and the effect of the activation
If we activate the "Reset" leg one signal will be surely missed from the output. Because of this reason the motor will receive a signal with less fill out factor, which is equal with smaller output voltage, which attends smaller current. It looks drastic, but it happens so fast, that theoreticaly we cannot observe it. Practice will prove or deny.
1.b. Reducing the throttle arm signal
The voltage on the monitor resistor can be used for reducing the adjusted throttle arm’s signal, so the throttling is reduced automaticaly by the system. Again some notes. Reducing should not be continuous, because in this case we limit the drivability, so the limitation must be activated only over a certain current level. The op. amp. is powered by a single power supply (9V), so the output cannot go under 0V. Because of this very reason a reference voltage should be applied to the "-" input, which determines the current level of the "step in" point. This voltage can be counted from the value of the monitor resistor and the adjusting current level. My plan is to use 0,01Ω for monitoring and the current limit is 12,5A. The "step in" point is somewhere at 10A, so when we have 100mV on the monitor resistor. So, the reference voltage must be 100mV at the negative input. At 12,5A the difference will be 25mV between the two inputs.
After this we have to define the amplification factor. The reducing can be planed to be able to reduce the imput signal to 0V. In this case the 25mV signal must be amplified to 5V, so the factor must be 200. It’s extremly big, so the system must be investigated to determine the level of the reduction to keep the current under the wished level.
In my case at 36V the current will be 12,5A if I just go ahead. This current is 1,5-2 times biger in case of acceleration. The batteries serve 12*3,8V, approx. 43V in loaded and charged case. The current is proportional with the voltage, so in case of starting the voltage of the motor is reduced to approx. 18V to keep the current limit. This is the theory. Unfortunately I cannot measure it because I have no equipment for such big current measurement and I don’t have such strong power supply which can bear a measurement series with such high power. Practice will show which is the point that should be softened in the system.
According to the theory I must reduce 25V from the 43V input, which is around 60%. The 60% of the 5V is 3V, so the 25mV must be amplified to 3V. It’s a 120 times multiplying.
2. Battery current limit
3. Battery deep charge protection