I made a relay h-bridge by using two 40 amp single pole double throw relays. I used this h-bridge, and another, to each drive a wheel chair motor fused at 20 amps each. I control the direction of each motor via an arduino uno driving a few transistors that I use to drive the relay coils. Thus I am able to get four driving conditions(directions) by selecting the direction of the left and right motor.
*Forward(turn both motors clockwise in the same direction) *Reverse(turn both motors counterclockwise in the same direction)
*Left(turn left motor clockwise and the right motor counterclockwise) *Right (turn left motor counterclockwise and the right motor clockwise see image attached below.
This system worked fine, allowing me to drive a machine that the two motors propelled via each driving a wheel on each side of a four wheels cart. The two non driven wheels are caster wheels.
I then added N-mosfet low side switches to each motor relay h-bridge by removing the ground connection in the h-bridge and connecting these ground wires to the respective mosfet drains. See second image.
All worked well and I was able to PWM the motors for variable speeds. Now the last thing I wanted to add for this project was variable duty cycle, or different duty cycle, to each wheel. to run the motors at slightly different speeds so as to have the cart veer a little left or a little more right or to make larger arcing turns rather than the skid steer turns I was doing with the relay h-bridges. No mater what I tried it seems that while I send each motor a different Duty cycle, both mosfets/motors sync up i.e turn on at the higher duty cycle being sent to the n-mosfet feeding one side of the system.
Even if I stopped sending the one side pair of mosfets a gate signal(grounding the gate at the gate driver board) while sending the other pair of mosfets their pwm pulses, the pair not being sent any signals still turns on in sync with the PWM. Also, now that I run the motors via sending them different PWM duty cycles, I am getting mosfet failures every so often. I suspect that the driven mosfet is always inducing the non-driven mosfet side; how, I do not know. I am using 56 ohm gate resistors. Each motor is fused at 20 amps, I think the drawl per motor is between 10 -15 amps when riding on the ground. During this testing the cart is on a test stand free wheel spinning.
I have done everything I can think of via manipulation of the gates to no avail. The protection diodes are Shotcky diodes 30 amps each. I have a pair across each mosfet as they were dual anode single cathode 220 packages.
I suspect that I am losing mosfets when sending differing PWM signals because the induced turn on mechanism is not sharp or clean thus maybe sending the gate of the off mosfet into the linear region although all visually looks good with motors turning in sync, although each should be doing their own thing(turn rate. I am using the Arduino Uno, PWWM is on pin 10 and 11(different timers), 500 hz.
I am looking a this as being a circuit problem. I am using a logic mosfet part number FKI06269 (60 volts, 24 amps). Two in parallel on the low side for each motor.
The motor drive protection diodes and mosfets sit on a solderable perf board about 2.5 feet from the arduino. I am using 14 gauge wire to this board for most connections but the gate drives feeds are 22 gauge. I use individual wire feeds for the left side motor protection components and the right side motor protection components as well as the left mosfet drivers and the right mosfet drivers. I am using 5 k ohm pull down resistors on each gate but have gone as low as 500 ohms when trying to eliminate my problem. While the drawing represents the circuit I understand the pull down resistors are not shown.
If someone can give me their thoughts on what the problem is, or may be, I would appreciate the insights.