Git Product home page Git Product logo

Comments (2)

bdring avatar bdring commented on June 3, 2024

Hey Mike,

Thanks a lot for the input, but it is a little too late to make any changes. The motherboard was prototyped twice, a couple of the modules were prototyped more than once and there is a lot of production hardware no order. I can give a little insight into my thought process on the layout.

Size

I wanted to appeal to small scale DIY CNC machine designers. I did not want a completed controller to end up being so large it would not be consider for small scale machines. I mocked up a basic set of modules and tried to see how much width I needed for the external interfaces. The widest was the 4x input module. It has 4 terminal blocks with 3 terminals each. There also needs to be a mounting screw along that edge. Placing the microcontroller interface on any edge except for the opposite side would have made the modules even wider.

One last thing I considered was a mini, budget, 3 axis version that is about 1/4 the size. This relies on the modules hanging off the motherboard. I have not finished the design, but here is a sneak peek.

Isolation

A lot of DIY CNC machines suffer from electrical noise and spikes. This can be difficult to fix and can be a mess of last minute fixes. This is especially true on the inputs. I wanted to design some "bulletproof" modules that you can expect to plug in and just work. Also, when you use relays that are connected to high current DC or AC, you want to isolate that. Putting the external interface as far away from the microcontroller interface seemed like the logical way to solve this.

Cooling

I did not consider underside cooling. The board currently does not support UART type drivers like the TMC2208. I am not sure why you would choose that driver unless you already had some. You will get better performance out of the TMC2130 and TMC5160 drivers. I assumed top side cooling would be sufficient and I placed 2 fan connectors, one on each end of the board near the drivers. I think if you really want to push some power, you should consider external drivers.

None of the current crop of CNC modules need cooling. If high current modules for motors are used, they should integrate their own cooling. The module socket connector is not designed to provide a lot of current anyway. The spec says that should also come from off board.

I would love to see what you come up with for an enclosure.

from 6-pack_cnc_controller.

MCTaylor17 avatar MCTaylor17 commented on June 3, 2024

Thanks for the response. I'm really loving your design philosophy. Sounds very reasonable to me. Especially the point about isolation considering most of the terminal would sit between it's own and a neighboring header. Considering you want 3rd party module development, isolating the headers like you have is really smart. Will save a collective ton of troubleshooting hours over the years 🙇‍♂️

My only question from the above is regarding module cooling. I was considering ducting for the modules because your video suggested there may be future support for additional drivers. I'm kinda hearing those will require their own power supply and cooling fan.

For myself, I don't have any plans for high power steppers just yet and part of designing an effective cooling case is to delay that need as long as possible. I think what I'll do is forget the modules and design strictly for cooling the steppers (and the ESP32 if you think it needs it?), just to keep things simple. No need to future proof and over engineer a simple enclosure. After all, I only need 4 or 5 steppers for what I have in mind. Once I hit 6 I'll start worrying 😂

from 6-pack_cnc_controller.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.