MaslowCNC / Electronics

This is the main control board for the Maslow CNC router. It is designed to mate with an Arduino Mega 2560
https://www.MaslowCNC.com
The Unlicense
133 stars 55 forks source link

New board design discussion. #23

Closed JDogHerman closed 6 years ago

JDogHerman commented 7 years ago

Since this shield has lots of room on it what if there was thru-hole passive components holes added to the board in addition to smb. That way the board could be built as a kit easier for mortals.

BarbourSmith commented 7 years ago

It might seem like there is a lot of space, but a lot of the open copper is actually left intentionally open because we have a lot of current flowing across the board. I'm open to the idea if someone can design one that looks good, but I think we'd be better off doing a second board that's the through hole version if we want that

JDogHerman commented 7 years ago

If the XH connector housing was moved down it would allow for more room for the A+ B+ motor lines to be widened and permit though hole diodes to be added. (in addition to reducing the trace length)

The current limiting resistor and LEDs have plenty of board room and the filter caps could be moved closer to the supply rather than near the H-Bridges. #27

In addition if the MP3 H-Bridge was moved to the right it would help provide less thermal coupling with the other H-Bridge.

BarbourSmith commented 7 years ago

Those are great points! If you make those changes, I'd be more than happy to merge them. My only reservation is that I think I'm going to redesign with a new H-bridge chip so we're probably going to see a lot of changes soon

JDogHerman commented 7 years ago

@BarbourSmith what H-bridge chip are you thinking? Maybe I can help propose a layout with the new chip in mind.

BarbourSmith commented 7 years ago

That would be great! I'm thinking about using the L6206 (https://www.digikey.com/product-detail/en/stmicroelectronics/L6206PD013TR/497-3643-1-ND/677626)

JDogHerman commented 7 years ago

Interesting. The L6206 has integrated diodes, and higher current capacities, but if thermal considerations havn't been built into the PCB. The heat will skyrocket with 62 C/W! 🔥

BarbourSmith commented 7 years ago

Good spot, that's something we need to consider. 62C/W is nuts, how does anyone keep that cool?

JDogHerman commented 7 years ago

Looks like you can get it down to 15C/W by having it

Mounted on a multilayer FR4 PCB with a dissipating copper surface on the top side of 6 cm2 (with a thickness of 35 µm), 16 via holes and a ground layer.

then maybe adding heatsinks and active cooling could keep it cool. ❄️

Also did you see that digikey has limited numbers of this pn?

BarbourSmith commented 7 years ago

I (clearly) didn't do too much research into finding a replacement part yet, and I'm rapidly becoming convinced that the L6206 is not the best choice. Are there any other candidates out there that look more promising?

JDogHerman commented 7 years ago

What features are you hoping to achieve? More current? Higher voltage? Better thermal characteristics? Faster switching?

BarbourSmith commented 7 years ago

I'd say the #1 thing we need is durability. I'd like a chip that we can short without blowing it up, and which doesn't overheat easily. Other than that our needs are for a pretty basic 12v 2A+ H-Bridge

JDogHerman commented 7 years ago

Have you seen this? TLE5206-2GCT-ND

Low Thermal Resistance, Internal inductive diodes, Short circuit protection with a error pin so software could alert the user that there was an issue. Cost isn't bad but it will require one for each motor.

Better pcb thermal design features and a heat sink would still be necessary but the chip should have better reliability since it will have more headroom (5A vs 2A) vs the existing chip 497-3624-1-ND.

In addition since there will be one per motor, the heat will be spread out more. This might even allow a smaller (cheaper) heatsink. So the additional cost of having one per motor could be offset by no longer needing to have a non custom heatsink (with a lower profile) and no external flyback diodes.

BarbourSmith commented 7 years ago

Crikey, I love it! Excellent find! The price is pretty reasonable even with one needed per motor. The board will still be a couple $ more, but for full output short circuit protection it's absolutely worth it.

I'll see if I can throw together a board to test them this weekend, when I have PCBs made, I'd be more than happy to send you some to test too if you'd be interested.

blurfl commented 7 years ago

I’d like to test or help with the design too, if I might. When laying it out, here are some things to think about:

JDogHerman commented 7 years ago

@BarbourSmith that sounds great. If you want help with ideas on the design of the PCB let me know. I would be thrilled to test or help design. Just let me know how I can help. We could even add this as a project to github.

@blurfl I too would think a new method for identifying board revisions might be nice. In fact if there was interest in changing the H-Bridge communication path to SPI there are other chip that could fill that need.

blurfl commented 7 years ago

Having SPI available would make it possible to add SD card support.

BarbourSmith commented 7 years ago

Any and all help is more than welcome, if you want to have a go at putting together a board with the TLE206 or any other chip that you think is worth a go I would love to try it out!

I agree that adding an SPI interface could be nice. My general preference is to keep the whole machine as simple and low cost as possible to keep it reliable and affordable, but that doesn't mean we couldn't have the pins broken out to attach an SD card daughter board. Going to SPI for the motor controllers is also an option. I used the simplest most reliable interface for the boards so far because I wanted to focus on getting as simple and robust a system as possible built, but now that we have a stable platform to work from, there's no reason not to try new things.

JDogHerman commented 7 years ago

Here is an SPI H-Bridge I was also looking at. https://www.digikey.com/product-detail/en/infineon-technologies/TLE6209RAUMA2/TLE6209RCT-ND/2231220

blurfl commented 7 years ago

That’a an interesting chip - bigger and more expensive, but it makes the detailed failure info available.

Have you seen anything that could take the burden of interfacing with the motor encoders? That’s presently handled using interrupts on the Mega, and the code for that is inline assembly in order to keep up. I think it might be limiting how fast we can travel. Surely something else could watch the encoder pulses and provide direction and step count when queried. I’ve seen this LSI-LS7184, but they aren’t widely available.

blurfl commented 7 years ago

I see there is an SPI version, LS7366, that includes the counter as well, but only available from the manufacturer :(

blurfl commented 7 years ago

@JDogHerman, it doesn't look like the TLE5206 will do speed control. Am I missing something? I'm disappointed, I like the TO220 thru-hole option.

Never mind, I found it - you need to be able to PWM both the motor control pins. Not a drop-in replacement as far as the firmware is concerned, but not impossible. That also means that the error flag won't need another pin. Do you have any experience with the Locked Anti-Phase Control mode?

mrfugu commented 7 years ago

If you're considering a significant re-design of the Shield board, please consider adding the necessary provisions to allow installation of a cheap (iOS compatible) Bluetooth Module .

dmouw25 commented 7 years ago

Is there any description / datasheet for the motors used? I can't find it in the wiki. Thinking about starting a redesign of the board with better heatsinking of the ICs, and better diodes, but want more details on the motors before I start the design phase. Board would be optimized for automated assembly, not hand assembly.

blurfl commented 7 years ago

A description from the wiki: Motor/Gearbox/Encoder (291:1 reduction gearbox with worm gear to prevent back driving motor, 30kg/cm torque, 20 rpm, 12 volts)

Some discussion on the forum, here.

mrfugu commented 7 years ago

@dmouw25 In tinkering with the shield, attempting to get a bluetooth module integrated, I'll note that it would be very useful if all the unused pins, but most especially the digital pins, passed (unmolested) through the shield and were able to be accessed from 'above'.

JDogHerman commented 7 years ago

I created a branch design using the TLE5206-2G not sure how people feel about it but here it is. https://github.com/jdogherman/electronics/tree/TLE5206-2G-Board

blurfl commented 7 years ago

This looks good! I wonder if a few more vias non the M1-, M2- and M3- lines would be advisable. Not much current capacity in a via! Alternately, make those larger to allow a wire thru-soldered. Looks like it might be possible to alter this for the thru-hole, standing heat sink version :)

JDogHerman commented 7 years ago

@blurfl good point! I have updated the design with 4 vias per leg.

blurfl commented 7 years ago

I'm not seeing the 4-via version in your repository yet? Are all the signals the same, only the H-bridges changed?

JDogHerman commented 7 years ago

wow somehow I missed adding the new file. It's there now. The signals are all the same but the 12v lines have more vias.

blurfl commented 7 years ago

I hate to say, but the commit show 0 changes in 0 changed files. GitHub is a fickle mistress...

JDogHerman commented 7 years ago

Sorry been under the weather and I must not be thinking too clearly. I see the changes on https://github.com/JDogHerman/Electronics/commit/d9fb86bcf717d573a443468bce3ea259ec66f5bf Can you check that you can see the changes?

blurfl commented 7 years ago

@JDogHerman, I've been looking at the TLE5205 and TLE5206 again lately. Have you looked at the firmware changes to drive these?

blurfl commented 6 years ago

I have a working board using the TLE5206. It requires changes to System.cpp and Motor.cpp for new pins and a different method of controlling the chip,

blurfl commented 6 years ago

With the release of the TLE5206 board in the Community Garden, most of the ideas have been implemented with the exception of the connection for a Bluetooth module. Would it make sense to close this?