Advise for circuit, and pcb layout

Hi!

So I am designing a pcb for my robot, and I would greatly appreciate some constructive criticism.
I have attached the eagle schematic and board file.
I use 2 arduino's because I have 2 I2C devices and their address cant be changed for some reason... :stuck_out_tongue:
and I am using BTN7971B For my motor controller as I will be controlling 4 fairly high power motors
I have attached the circuit which I based the design on for the motor controller, and also I am using a lm2576 for 5v regulation for which
I have also attached the original circuit.
, basically If you wold have any advise/ tips on the layout/circuit please advise.
It's not finished, things like the pin outs to my sensor, the outline for the pcb are missing but most of the main circuitry is there.
One thing I am sure I will need to change is all the small capacitors being replaced for a larger one, any suggestions on a
suitable value for those capacitors would be great.
So any advise or suggestions would be much appreciated

Thanks

lm2576_5v_3a_switching_supply.jpg

test 2014.brd (152 KB)

test 2014.sch (697 KB)

BTN7970.pdf (53.5 KB)

I will try and take a look later and post hopefully at least a few helpful things.

I am not a professional and am only in school now for electrical engineering so take any advice with a grain of salt, but I will definitely take a look.

If you want more eyes, post images, not data files. Not everyone uses the same software as you... Try to keep the image width less than 1000 pix please.

Definitely - not only that, but not everyone has the same version as you... convert
.sch and .brd to .png please.

not everyone has the same version as you

Maybe that was the issue because when I opened the schematic drawing everything was arranged oddly and and there were electrical connections and junctions in weird places. It looks good though from what I have seen so far. I may not have have too much to add unfortunately.

I am curious though: if you used transistor with the base hooked up to a digital pin (maybe two) could you then disconnect one I2C device from the I2C bus, send your command, then reconnect it, disconnect the other and similarly send to the second device? That way you could control multiple devices with same ID from one Arduino.

Sorry guys, I have attached the images,

wes000000:
I am curious though: if you used transistor with the base hooked up to a digital pin (maybe two) could you then disconnect one I2C device from the I2C bus, send your command, then reconnect it, disconnect the other and similarly send to the second device? That way you could control multiple devices with same ID from one Arduino.

I guess that would be an option, but I need sensor data instantaneously from both devices I can't really afford to wait a couple of ms between readings.

schematic.png

9500+ wide? Get real - resize down to ~1000.

And the schematic isn't there at all for me.


Rob

Sorry, my bad I just taught larger would be better for viewing, again my mistake
new one attached.

I'll have a good look, meanwhile, how hot will these chips get, I see no thermal planes and they are very close together.


Rob

Well I don't think that heat will be an issue(hopefully)
because They are rated to handle 44A and my motor technically only have a
stall current of 10A and a no load current of 600mA so I don't think it will be an issue.
However If you think it's necessary, I can add it in.

Ok, when I see a huge driver chip like that I assume large currents.

However If you think it's necessary, I can add it in.

Look at the on resistance, x that by 600mA to get the watts generated, x that by the C/W value that should be in the data sheet. That will tell you how many degrees above ambient the chip will run. Add that value to the expected ambient temp and if the result is over the max junction temp you will have problem.

Clear :slight_smile:

Now the schematics I really don't understand. You seem to have GND from each pair going to a header (and from there I assume a motor). How do two GND lines control a motor?

The drawing has lines all over the place including through components, and as far as I can tell the pin names don't match those in the data sheet. For examples you have pin 2 as "EF", in the data sheet it's "IN". There is no EF on the chip unless we're looking at different data sheets. Can you post a link to the one you are using?

And the mess of resistors between the optos and the driver is indecipherable.

The purpose of a schematic is to make a design clear, this one does not do that I'm afraid.


Rob

How does 12V get into the board? I don't see a connector for that.
This board will mount on top of a Mega? You can't supply motor power from the Mega - the Mega input connector is not rated for that much current, and neither is the header. Add one specifically for the board, and pass 12V to the Mega if you want just 1 power connector.

Those devices have a worst case Ron of 0.5 ohms (full temperature range), 0.2ohms
(typical for a cool device).

At their rated current of 5A they will be dissipating about ~ 10W each or so, so large
metal heatsink is mandatory. Up to about 1.3A they will survive without one I estimate.

Where did the 44A figure come from?

Hi!

Graynomad:
Ok, when I see a huge driver chip like that I assume large currents.

However If you think it's necessary, I can add it in.

Look at the on resistance, x that by 600mA to get the watts generated, x that by the C/W value that should be in the data sheet. That will tell you how many degrees above ambient the chip will run. Add that value to the expected ambient temp and if the result is over the max junction temp you will have problem.

Clear :slight_smile:

Now the schematics I really don't understand. You seem to have GND from each pair going to a header (and from there I assume a motor). How do two GND lines control a motor?

The drawing has lines all over the place including through components, and as far as I can tell the pin names don't match those in the data sheet. For examples you have pin 2 as "EF", in the data sheet it's "IN". There is no EF on the chip unless we're looking at different data sheets. Can you post a link to the one you are using?

And the mess of resistors between the optos and the driver is indecipherable.

The purpose of a schematic is to make a design clear, this one does not do that I'm afraid.


Rob

Yes that is a different chip but it's the same package, (I can't find a library for the BTN7971b)
I attached the pdf in my first post, but here is the link :
http://goo.gl/vOsZpO
Sorry for my schematic, this is only my 3 rd pcb, I am still learning alot.
I will try and fix that In the morning,
Otherwise if you have any suggestions on the layout/circuit
or If you recommend I change any values of capacitors or resistors, please advise!

CrossRoads:
How does 12V get into the board? I don't see a connector for that.
This board will mount on top of a Mega? You can't supply motor power from the Mega - the Mega input connector is not rated for that much current, and neither is the header. Add one specifically for the board, and pass 12V to the Mega if you want just 1 power connector.

Yes I still need to add a connector for my battery, i know.
The mega will be mounted on the board, I am planing on powering the mega from the 12->5v converter and use that to give the motor IC's 5V power.

MarkT:
Those devices have a worst case Ron of 0.5 ohms (full temperature range), 0.2ohms
(typical for a cool device).

At their rated current of 5A they will be dissipating about ~ 10W each or so, so large
metal heatsink is mandatory. Up to about 1.3A they will survive without one I estimate.

Where did the 44A figure come from?

datasheet: http://goo.gl/vOsZpO
HS/LS Continuous Drain Current: Max: 44A

Yes that's the same data sheet I was looking at, honestly life is too short to mentally convert between chips because the wrong model in on the schematic. And I made comment or two you haven't addressed.

If you can produce a readable schematic (hint, look at the schem on page 22 of the data sheet, I don't think your circuit is anything like that but I really can't tell without too much strain on my old brain) and answer the questions I'll look again.


Rob

Graynomad:
Yes that's the same data sheet I was looking at, honestly life is too short to mentally convert between chips because the wrong model in on the schematic. And I made comment or two you haven't addressed.

If you can produce a readable schematic (hint, look at the schem on page 22 of the data sheet, I don't think your circuit is anything like that but I really can't tell without too much strain on my old brain) and answer the questions I'll look again.


Rob

Hi
Working on the new schematic,
so you suggest I create my own eagle part for the BTN7971B ?
And also I am not 100% sure why the resistors are "indecipherable"
I tried cleaning It up a bit, I have attached a pic of the work in progress, hope its better
and I also attached the schematic which I based my design on, hope that helps as well.
Thanks

Yes, create a new symbol.
Also try a search at newark.com for BTN7971, they often eagle symbols that one can download after registering & then logging in.
Unzips as a script file.
In eagle control panel, open a new library, run the script, save the resulting symbol.

The way you drew it up is just a mess.

The redrawn one is still pretty messy. For example the junction between pins 7 are overlapped on top of the IC.

I would work on a new symbol and try and move the schematic wires around to get rid of all the junctions and wires running through the ICs themselves.

That schematic is just plain wrong, it does not match the reference at all as far as I can tell.

The "indecipherable" resistors on you schem are connected between the control signals, on the reference they are connected to VIN.

The ref schem has pins 4 and 8 connected together to drive the motor, you only have pin 4 connected to the motor and don't have a pin 8 at all.

It is not possible to advise any further without a decent drawing, and there's no point at all in commenting on the PCB until the schematic is correct.

Hopefully making a better schematic is what you are doing now :slight_smile:


Rob