Author Topic: Board Check request (ATmega BLDC motor controller)  (Read 6704 times)

0 Members and 1 Guest are viewing this topic.

Offline Kean

  • Supporter
  • ****
  • Posts: 2054
  • Country: au
  • Embedded systems & IT consultant
    • Kean Electronics
Re: Board Check request (ATmega BLDC motor controller)
« Reply #25 on: January 29, 2018, 03:40:51 am »
As suggested by ar__systems, you should really consider the path of your return currents a bit more.
I didn't see a problem with having a ground pour on the top layer, but you do probably want to adjust the ground plane(s) so they separate the high return currents (for the motor), from the digital logic.

As it is Q2, Q4, and Q6 that will cause any high return currents, and you have a partly separated ground plane already along the lower edge of the PCB going from the VIN connector to these MOSFETs, I would break the ground plane at right near the BLDC connector.  That way all the noisy return currents for the motor can only take that path, and not through the centre of the PCB.

If you re-add any top layer ground plane, I would just keep it away from these high current traces in the lower 1/3rd of the PCB.  At a minimum I'd put some top layer ground pours and via stitching around the power circuits, and the quartz crystal / ATmega.
 

Offline cgroen

  • Supporter
  • ****
  • Posts: 631
  • Country: dk
    • Carstens personal web
Re: Board Check request (ATmega BLDC motor controller)
« Reply #26 on: January 29, 2018, 08:33:24 am »
Hozone,
please take this for what it is, just some random points to look at. Most is just cosmetics, PCB layout is (kind of) an art. I always try to avoid 90 deg corners, "ugly routing" where you change angles at "funny places", angles out from pads, change of trace thickness "at random" (I have not looked at the "electrical" part of it, return loops, currents) etc...

I have drawn a few red circles around some of the places on your board (more than the ones I highlighted, but you get the idea), hope this helps. Otherwise its a good job, the only thing that will really help is to design a bunch of boards, look at videos/description from others (Robert Feranec is a food inspiration). Generally watching videos of people that does the layout process "live" is very good.
Practice, Practice and practice ;)

« Last Edit: January 29, 2018, 08:36:08 am by cgroen »
 

Offline hozoneTopic starter

  • Regular Contributor
  • *
  • Posts: 108
Re: Board Check request (ATmega BLDC motor controller)
« Reply #27 on: January 30, 2018, 08:41:52 pm »
@cgroen and @Kean thank you.

@Kean I know, I do not consider ret currents, I have to study on that task, I'm an IT boy. Said That, I've restricted the bottom ground on Mosfet, can it be a way to solve the noisy return?

@cgroen I must admit I do not get all the points on your hightlight, but I hope the attached board Is sligthly better. Thank you for your video tutorial suggestions.. I will watch R.Feranec video!

Thanks!
 

Offline hozoneTopic starter

  • Regular Contributor
  • *
  • Posts: 108
Re: Board Check request (ATmega BLDC motor controller)
« Reply #28 on: January 30, 2018, 08:50:10 pm »
@cgroen, or maybe for the bottom connection you mean something like this?  :-//
 

Offline Kean

  • Supporter
  • ****
  • Posts: 2054
  • Country: au
  • Embedded systems & IT consultant
    • Kean Electronics
Re: Board Check request (ATmega BLDC motor controller)
« Reply #29 on: February 08, 2018, 02:51:06 am »
@Kean I know, I do not consider ret currents, I have to study on that task, I'm an IT boy. Said That, I've restricted the bottom ground on Mosfet, can it be a way to solve the noisy return?

Yes, what you've done will help a lot with reducing noise seen by the digital section.
 

Offline Mattylad

  • Regular Contributor
  • *
  • Posts: 143
  • Country: gb
Re: Board Check request (ATmega BLDC motor controller)
« Reply #30 on: February 08, 2018, 08:30:10 pm »
Hi, sorry not been back on for a bit (had a car accident and a busy life).

The track out of the bottom of C13 can run on top under R12 and C14 to get to Q5.
The track from the bottom of R12 can run the same way above the previous track to get to Q6

See where the top pad of the crystal, the diagonal track exits it - this is forming what is called an "acid trap".
Although this is highly reduced with modern manufacturing techniques it is stil not completely removed so it is best to always design your tracking without "angles of less than 90 degrees" where acid can get trapped (and then later in board life eat through the copper breaking the track).

Can IC2, L1, D1 all copme down a little so that C1 can fit directly above them to make that little path between L1 and C1 as short as possible.
Then C10 move left a bit more to bring it closer.
Unless there is something physical in the way.

Increase the track width from the terminal block to IC2 (via C10) to match the rest of the track.
You may as well, you have the room and it will only be a benefit.

(on the legend, add + and - marks (both!) outside of the body so can be seen with cap in situe.
You may like to duplicate the +/- mark inside the body to make it easier to see during insertion.

Why square vias? I have never understood why people still use those, AFAIK they went out with tape and crepe pads.

The via next to the Q7 text, move it down a lot further, closer to the horizontal top track (less of a break in the bottom GND then).

Looking at your GND, to get from the IC2 area to the RH edge the current have to either go through the small bit by D4 or under the crystal and through, above, down and around IC1.
Move the via just above where iit says D4 straight up to really improve that path.

The track that goes on the bottom underneath the IC, down to the via by the D4 text, unroute it and reroute it on top up, left, around the crystal, down then figure out th rest of the path.
That way you will be able to flood GND undernath all the IC and not split it (thats bad).

Any split in the GND return paths is bad.
That long bottom track from C7/C8/C9 is splitting the return path of the tracks to IC1 and sending them on a windy path.
IMO it would be better if you could minimise this.

The track from C13 into the left pad of Q3, why go on the bottom - its double sided yes? Just go into the top of the pad.
Ditto C14-Q5


If your able to reassign any ports to enable you to track out better, without having to go onto the other said to reach the destination then its generally a good idea to do so. (unless this causes big problems in coding).

Don't forget what has been said about the mounting holes and keeping the copper clear of them.

Mattylad.
CID+
Matty
CID+
 

Offline hozoneTopic starter

  • Regular Contributor
  • *
  • Posts: 108
Re: Board Check request (ATmega BLDC motor controller)
« Reply #31 on: February 09, 2018, 01:38:04 pm »
Hello and thank you @Mattylad, I've done almost all the step you tell me, can you tell me if I made something wrong? Thank you!
Edit2: Image 2 has cleaner ICSP paths
Edit3: @cgroen fix - thank you

1> Done - The track out of the bottom of C13 can run on top under R12 and C14 to get to Q5
2> Done the same but on C14 - The track from the bottom of R12 can run the same way above the previous track to get to Q6
3> Hope this is the right way - See where the top pad of the crystal, the diagonal track exits it - this is forming what is called an "acid trap".
4> Done - Can IC2, L1, D1 all copme down a little so that C1 can fit directly above them to make that little path between L1 and C1 as short as possible.
5> Do you mean the "big" mosfet power line width? - Increase the track width from the terminal block to IC2 (via C10) to match the rest of the track.
6> Done... But I'm thinking about CMD caps, at least C11 and C1 - (on the legend, add + and - marks (both!)
7> Done, to round - Why square vias?
8> Done - The via next to the Q7 text
9> Done - Looking at your GND, to get from the IC2 area to the RH edge the current have
10> Done - The track that goes on the bottom underneath the IC, down to the via by the D4 text
11> I have to me a lot of thing to do this, but the tips about the return path on GND will help me on upcoming boards - Any split in the GND return paths is bad. That long bottom track from C7/C8/C9
12> Done - mounting holes
« Last Edit: February 09, 2018, 01:51:40 pm by hozone »
 

Offline cgroen

  • Supporter
  • ****
  • Posts: 631
  • Country: dk
    • Carstens personal web
Re: Board Check request (ATmega BLDC motor controller)
« Reply #32 on: February 09, 2018, 01:43:24 pm »
hozone,
its getting better!
However, you still have some "less than 90 degree" exists from pads, some 90 deg corners and some quirks (see below)

 

Offline hozoneTopic starter

  • Regular Contributor
  • *
  • Posts: 108
Re: Board Check request (ATmega BLDC motor controller)
« Reply #33 on: February 09, 2018, 01:49:36 pm »
@cgroen thank you, I do not notice them. Fixed on the Cattura3 of the above post.
 

Offline ar__systems

  • Frequent Contributor
  • **
  • Posts: 516
  • Country: ca
Re: Board Check request (ATmega BLDC motor controller)
« Reply #34 on: February 12, 2018, 04:51:45 pm »

I didn't see a problem with having a ground pour on the top layer, but you do probably want to adjust the ground plane(s) so they separate the high return currents (for the motor), from the digital logic.
To be clear, I'm not saying the ground plane in the top is a problem per ce. I'm saying, if the ground plane in the bottom is not thought through, adding it to the top is not going to make things any better. :)
 

Offline hozoneTopic starter

  • Regular Contributor
  • *
  • Posts: 108
Re: Board Check request (ATmega BLDC motor controller)
« Reply #35 on: December 17, 2018, 07:58:06 pm »
Hello,

Finally I've the time to populate and test the board.
I attached here a picture of the first version of this board.
First of all: the board is working, that's good for me!!! :)
But of course it has some issues.
The 5V regulator has a wrong pinout - Vin/Vout inverted.
Block terminal out/in and switch pitch is not suitable with the one I've here.
For this reason I've fixed that design issues, now the board is been produced. I will keep you updated with the new one.

Thank you!
 

Offline hozoneTopic starter

  • Regular Contributor
  • *
  • Posts: 108
Re: Board Check request (ATmega BLDC motor controller)
« Reply #36 on: February 02, 2019, 08:16:20 pm »
Revisisted version is here.
I've populated 2 of this boards. They works, but on both different problems happears.
Board 1: can not run in CCW the sensorless motor, just in CW, sensored works in both directions.
Board 2: sometimes it hangs when changing direction, Seems that the micro get stuck and does not "get" the direction change.
I think both the problems are due to soldering problem or stress on components, as example on board 2 I've solder 2 times the ATmega. Can it be that i damaged something while soldering, or should it be EMC? Or something else?
For info: the proto board made with through hole components on proto multi hole boards works like a charm, with the same firmware of course.
Thank you!
 

Offline hozoneTopic starter

  • Regular Contributor
  • *
  • Posts: 108
Re: Board Check request (ATmega BLDC motor controller)
« Reply #37 on: March 10, 2019, 07:12:30 pm »
Quick follow up.
I have soldered a new one, this one is perfect. I think it was something related to my SMD soldering skills |O
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf