I’ve been looking at designs for speed controllers (mostly Jaguars, because I can get my hands on those schematics). Frankly, they’re overpriced, and if I want to build my own robot (outside of FIRST), I’d much rather design my own (or at least make a hearty attempt).
Attached is the schematic to the Jaguar Speed Controller. The majority of the actual motor controlling portion of the design is on the 2nd page on the right. Basically, it’s an H-Bridge, controlled by two MOSFET drivers (one for each side) and each leg of the H-Bridge is made up of 3 MOSFETs.
My issue is this: By looking at the design and not knowing what signals CTRLA, CTRLB, PWMA, and PWMB are (since they’re coming out of the microcontroller, I don’t know what they are unless I were to have the uncompiled firmware for the Jaguar), I can’t see this thing working in theory. After carefully studying the datasheet for the MOSFET driver, I learned that if the signal coming into PWM is high, HDRV is high (opening the MOSFETs it controls) and LDRV is low (closing the MOSFETs it controls).
Knowing this, given the following situation (set up the same as a Jaguar, only simplified for understanding)
http://img.skitch.com/20100831-kin17jnmtr5g7jkfh6g1mju91s.jpg
Assuming the PWM square waves are aligned, when the PWM signal is HIGH, both Q1 and Q2 are on, but since Q3 and Q4 are not, there is no current flow. Similarly, when the PWM signal is LOW, Q3 and Q4 are on and Q1 and Q2 are not, and there is still no current flow.
If the PWM square waves are inverse of each other (or any other alignment), when one is high and the other is low, current will flow (e.g. when the left side is high and the right is low, current will flow from Q1 to Q4). However, since the wave then inverts, it would then switch which MOSFETs are open, thus switching the motor direction, which doesn’t sound like it would work out too well…
There is one other possibility still: What if they aren’t putting a PWM input into the PWM pin, but rather the OD (Output Disable) and a HIGH or LOW into PWM, depending on motor direction?
OD pulls both HDRV and LDRV low (closing their MOSFETs) if it is low.
http://img.skitch.com/20100831-dgeuxc3k9ax8km3p3h7cmd5ece.jpg
When PWM is HIGH on the left side, then Q1 is open and Q3 is closed. If it is LOW, Q1 is closed and Q3 is open. The same goes for the other side. Then the PWM into OD would close whichever is open when it is low. This would essentially create a magnified PWM power source, which is the goal of a speed controller.
The second setup works, but I’m skeptical to believe that is how it functions, because that is not the specified use for OD in the datasheet. However, it doesn’t seem to work any other way. Anyone know what’s going on for a fact, or have an oscilloscope and a Jaguar and is willing to test this out?
Jaguar Schematic Rev B.pdf (56 KB)
Jaguar Schematic Rev B.pdf (56 KB)