The DC Motor Driver shield is Infineon's evaluation board for their very capable 1/2 H-Bridge driver IC BTN8982 .
They have designed a nice and easy to use schematic in the Arduino form factor. That makes it easy to set up a test bed to evaluate the drivers.
That design form is also a reason for annoyance. It's a great product that can find its way into many motor applications - but the shield is not done right.
When you unbox the shield you stand in awe. A very nice (yes: beautiful) board. Much thought has been put in heat management - that is so well executed that it can serve as an example on how to deal with heat on a PCB.
Then you try to stack it on an Arduino Yun, or even the most used UNO. And that doesn't look good. The high power contacts are straight above grounded connectors. If you want to use bolts or decent connectors for the high current wiring, you have to use multiple stacking headers to get a safe clearance.
Then you try to stack an LCD shield on top. The big upright cap is in the way of any shield out there in the market. So in stead of evaluating the drivers, the reviewer will spend time in replacing that cap, ordering an extra batch of stacking headers, and throwing arms in the air.
And as extra fuel on the fire, the example code that is announced in the Quick Start Guide (typically the first thing you look for when acquiring a shield), it's not there. either that, or I am blind and can't find it.
It's a shame. These easy to avoid design decisions will blur reviews that otherwise would have been all positive. And the H-Bridges deserve a positive review.
The specs for the BTN8982 are respectable:
They can manage motors over a decent voltage and current range:
250 W continuous
8 - 18 V (nominal values, a wider range is acceptable)
55 A (not on this shield - the traces on this evaluation board allow up to 30 A).
To meet EMI regulations, you can lower the slew rates of your PWM signal.
Protections and current measurement sensing on board.
And they are easy to drive. The duty cycle of your PWM signal determines the motor speed.
I am going to pimp this shield into a more useful format and continue blogging about its capabilities once my stacking headers arrive from Chenzen.
Out of the package, the board looks very well made and of high quality. There are however a few things that immediately drew my attention:
no headers on the board or in the box
a huge vertically mounted capacitor
no (screw) terminals, but instead big ring shaped pads
Top and bottom view of the shield
This was already the case with the RGB LED Shield. My main problem with this is that you cannot start using the shield right away. If you have anticipated for the missing headers, the only remaining task is to solder them on. Else, you're stuck with an unusable shield until you are able to find a fitting pair of headers, which would probably delay you a day or two.
The fact that no headers are soldered on does give you the option to choose your own header type though: stackable, long, short, ... Whatever type suits your needs.
My suggestion remains the same as last time: include a pair of tall stackable headers in the box, preferably even soldered on.
The huge capacitor in the middle of the board really sticks out: about 25mm! One of the advantages of the BTN8982TA, is that it has very low board space consumption for the features it offers. I personally feel the capacitor obsoletes that advantage completely. It also prevents other shields to be stacked on top of this one, which seems like a big problem as other shields with displays or prototyping areas require to be on top.
Couldn't the capacitor have been put on its side ?
No (screw) terminals
One of the things I liked very much about the RGB LED Shield, were the screw-less terminals for both the power supply and the RGB LED strip. I was expecting something similar for this shield, but instead found big ring shaped pads. This will require soldering as opposed to the terminals, which makes it less practical for testing different types of motors and power supplies.
Is there a specific reason (except cost), why pads would be better than (screw) terminals ?
I was looking for some sample code to use the shield with an Arduino, but I couldn't find any!
Unfortunate, but not a disaster as the shield seems easy enough to control.
This is the test sketch I came up with for testing:
There are two tests I wanted to perform using the motors I had at hand:
half-bridge configuration: controlling two unidirectional DC motors
H-bridge configuration: controlling a single bidirectional DC motor
But first ... finding a set of suitable headers to be able to use the shield and make some practical modifications.
I've ordered tall stackable headers for Arduino, but it will take some days until they get here. In the mean time, I've been experimenting with what I had at hand.
The first tests was to use different size male headers with an Arduin UNO. Using the typical size male headers, there was contact between the shield's VBAT connector and the UNO's USB port, which would create a very nasty short circuit. With a different size male headers the problem was resolved for the UNO.
Testing different size headers to avoid contact between shield and USB port on the UNO
The next test was about finding suitable headers for the YUN. The Arduino YUN has a vertically mounted USB port and an ethernet port, which are sure to cause problems as they are taller than the UNO's USB port. The tall headers working for the UNO were too short for the YUN and had to be combined with intermediate female headers.
Finding an appropriate combination of headers for the YUN
I'll be posting an update as soon as I receive the tall stackable headers I've ordered. In the mean, this will have to do
UPDATE: Extra tall stacking headers have arrived! The clearance for the YUN is just enough, I did put some tape on the bottom of the shield to avoid direct contact. With the capacitor on its side, it is possible to plug in another shield on top of the motor shield, although it should have long headers.
Motor shield with extra tall stacking headers
There are two modifications I made, based on the feedback given during my first observations: laying the capacitor on its side and using screw terminals.
Screw terminals and capacitor on its side
Single bidirectional motor
To use a single bidirectional motor with the shield, following steps were taken:
connect the motor to OUT1 and OUT2
connect a power supply (I used 12V/2A)
set INH1 and INH2 to HIGH
use IN1 for direction 1, IN2 for direction 2
Two unidirectional motors
To use a two unidirectional motors with the shield, following steps were taken:
connect the motor 1 to OUT1 and GND, motor 2 to OUT2 and GND
connect a power supply (I used 12V/2A)
set INH1 and INH2 to HIGH
use IN1 to control motor 1, IN2 for motor 2
Here's a video of the different modes in action:
You don't have permission to edit metadata of this video.