Welcome! Log In Create A New Profile

Advanced

First Motherboard

Posted by 87morpheus 
First Motherboard
February 20, 2014 02:26AM
I am new to reprap as well as 3d printers in general. I have been doing a lot of research and I have decided to build my own 3d printer instead of buying one. Although with all the research I have been doing, I could not decide which motherboard I should get. I do not plan to buy many upgrades to the motherboard, so I would like one that will last a long time. I was looking at the RUMBA board, but would there be one that will be better for a beginner?
Re: First Motherboard
February 20, 2014 06:55AM
Personally. I would go with a RAMPS. They are very well documented, easy to use and modular so if you break one bit, just replace it. Also RAMPS are available from many places, I think the RUMBA is currently only available from reprapdiscount.

Im sure other people with have something different to say, but thats my opinion.
Re: First Motherboard
February 20, 2014 09:25AM
Since you're new to 3D printing, I'd second RAMPS over RUMBA. The extra advantages that RUMBA has over RAMPS would be for a more advanced setup with two or three extruders, not typically the starting point for someone new to 3D printing. RAMPS is also 1/2 the price fully loaded or even less if you're lucky and find a complete deal for everything.
Re: First Motherboard
February 21, 2014 02:50AM
Thank you for the responses. RAMPS looks good to me, so I think that's what I am going to get.
Re: First Motherboard
March 06, 2014 04:23PM
Hmmmm..my only advice against RAMPS is how it deals with its MOSFETS...it has a flaw in design that makes them enter in resonance with the hotbed and, unless they are quite powerful, they tend to fry:

I have one myself and got it burnt in the first day...actually is just a matter of luck whether your provider has assembled the correct type of MOSFET or not. So, just for precaution, I would warn you to get some with the specifications of any of the above links, just in case.
However, for a first printer, an even better solution is to avoid ABS and focus in PLA. As PLA doesn't require of a hotbed you will be safely printing for a long time.

Happy printing! smiling smiley

EDIT: I also support RAMPS for all the good reasons given above

Edited 2 time(s). Last edit at 03/08/2014 02:26PM by ndujar.


www.poti-poti.org
Re: First Motherboard
March 06, 2014 05:18PM
Quote
ndujar
Hmmmm..my only advice against RAMPS is how it deals with its MOSFETS...it has a flaw in design that makes them enter in resonance with the hotbed and, unless they are quite powerful, they tend to fry:
That's why you can run down to your local RadioShack and pick up this guy for a few bucks. Takes care of a lot of the problem. A fan blowing on the RAMPS/heatsink/stepper drivers isn't going to hurt either...and is generally recommended for maximum lifespan so I've seen recommended.

Alternatively, you can just replace the mosfets. They aren't expensive and if you're at the point of building your own printer, you hopefully know how to solder/desolder a few leads.
Re: First Motherboard
March 07, 2014 05:03AM
Quote
ndujar
Hmmmm..my only advice against RAMPS is how it deals with its MOSFETS...it has a flaw in design that makes them enter in resonance with the hotbed and, unless they are quite powerful, they tend to fry:

    [*] [www.buildlog.net]
    [*] [www.soliforum.com]
    [*] [forums.robo3dprinter.com]


    I have one myself and got it burnt in the first day...actually is just a matter of luck whether your provider has assembled the correct type of MOSFET or not. So, just for precaution, I would warn you to get some with the specifications of any of the above links, just in case.
    However, for a first printer, an even better solution is to avoid ABS and focus in PLA. As PLA doesn't require of a hotbed you will be safely printing for a long time.

    Happy printing! smiling smiley

    What?


    _______________________________________
    Waitaki 3D Printer
    Re: First Motherboard
    March 07, 2014 08:51AM
    Quote
    waitaki
    Quote
    ndujar
    Hmmmm..my only advice against RAMPS is how it deals with its MOSFETS...it has a flaw in design that makes them enter in resonance with the hotbed and, unless they are quite powerful, they tend to fry:

      [*] [www.buildlog.net]
      [*] [www.soliforum.com]
      [*] [forums.robo3dprinter.com]


      I have one myself and got it burnt in the first day...actually is just a matter of luck whether your provider has assembled the correct type of MOSFET or not. So, just for precaution, I would warn you to get some with the specifications of any of the above links, just in case.
      However, for a first printer, an even better solution is to avoid ABS and focus in PLA. As PLA doesn't require of a hotbed you will be safely printing for a long time.

      Happy printing! smiling smiley

      What?


      Yes, it is all explained here: [spainlabs.com]

      For those who don't understand Spanish:

      Resulta que las salidas de la RAMPS controladas por mosfet no llevan ninguna diodos de flyback en antiparalelo para absorber los picos de tensión que aparecen al conmutar cargas inductivas. ¿Dónde hay bobinas en la impresora 3D? Pues la cama es bastante inductiva (aunque no exageradamente) por el hecho de ser una pista larga, los propios cables tienen inductancia parástita y la resistencia que calienta al hotend es una resistencia bobinada. Meter pulsos de gran corriente a cargas inductivas sin protección es muy mala idea. Pensaba que la inductancia no sería muy grande y, aunque no deba hacerse, habían dejado los mosfet sin protección para ahorrar costes.
      Pues bien, me ha dado por mirar si alguien había medido las inductancias parásitas de los elementos calefactores y efectivamente en reprap hay alguien al que le dio por medirlo e incluso simular los transitorios al conmutar:

      [www.reprap.org] ... th_MOSFETs

      Resumen: se provocan picos de tensión en el MOSFET de cerca de 70V. Más de 400 veces por segundo. [...]


      means:

      It happens to be that the outputs of the RAMPS controlled by MOSFET have no flyback diodes in antiparallel to absorb the tension peaks that appear when inductive loads are commuted. And where do you have coils in the 3d printer? Well, the hotbed is pretty inductive (although not dramatically) just by the fact of being a long track; wires have some parasite inductance and the resistor of the hotend is a wound up resistance *. Hitting inductive loads with high current, and doing it without protection is a very bad idea. I thought that this inductance would not be very big and, although it shouldn't be done, by design they left the MOSFET unprotected to save costs. But then, I though of having a look in case someone else had it measured, and there it was:

      [www.reprap.org] ... th_MOSFETs

      Summarizing, we are creating tension peaks in the MOSFET around 70V high. Over 400 times per second. [...]


      To me seems like a reasonable explanation...I didn't have the opportunity to check the proposed fix in that page but certainly I burnt three MOSFETs of the hotbed in that RAMPS of mine...


      www.poti-poti.org
      Re: First Motherboard
      March 07, 2014 08:39PM
      If you burnt three mosfets, something else must have caused that surely!


      _______________________________________
      Waitaki 3D Printer
      Re: First Motherboard
      March 08, 2014 12:17PM
      The link you posted is a good example for ... something else. When you read somebody using harsh language / tonality and looking down at other ppls, a warning sing should light up in your eyes. The guy did read a reprap page which explained some stuff, e.g. motivation for a freewheel diode, but understood what he wanted from it. Then took his view that to forum and used a superior attitude and harsh tone towards ramps developers. I consider this wrong on few different levels.

      Quote

      In fact neither is there the slightest isolation between the power part and the control part (another design flaw of the important RAMPS but that would require a complete redesign) it's more than likely shit and engage the interference by mass to other areas of the circuit. All very cool going. , we think it's a pretty reasonable explanation for why they were going to take the ass MOSFETs. Honestly I find it rather unfortunate when a f**king diode cents worth. And some optocouplers not worth much more. Apparently seen I think I will review the entire design of the RAMPS to see what surprises you ... In order to solve the problem going to an electronics store and a couple ye pilláis certain power diode.
      The isolation is only needed when there are different power supplies. The isolation adds delays to any signal, and thats no good, so isolation is a trade-off only to be used when necessary. If it would be only positive aspects to this, then all arduino boards would have optocouplers built in on all gpio. Also the guys behind ramps are guys which were in reprap, even admins, and did alot of things and while there is no need to emphasize that, they do have background and experience on their side, and i do respect and value that and their work and contributions. Generally i have nothing against criticism of anybody, but except with the part where some try to raise themselves this way. I dont mean to be a put down, but on some level, at least in my book, you have to do something first, and brag about it later. Even chickens do lay egg first, and start yakking after. Vice-versa doesnt quite work the same. If you want to learn from somebody, really take a good loook.

      Quote

      The MOSFET ramps joint endure maximum 60V.
      Ramps mosfet is a hexfet and if voltage gets too high it breaks down and conducts to ground. Check the datasheet symbol right side of that mosfet symbol and compare to the symbol of a the diodes, see which one matches, and read a bit about those. Their breakdown is mentioned in datasheet. It appears to coincide with the absolute max Vds value, but it may be a confusion as to which determines which, and what happens over the value. One would think the diode is there because it tries to protect the mosfet above its own max vds. I would rather have it the other way around. My pov is that the absolute max value is exactly that determined by the min breakdown, because above that point the mosfet simply no longer works because in breakdown mode the mosfet is simply entirely bypassed to ground. Absolute max in this case may not mean it immediately blows up. It doesnt mean it will explode, it means that diode creates a short to ground for voltages above that value, intended to sink transients to ground. If the transient is too big, temperatures too high, perhaps that diode will fail at some point, and will blow up eventually, but for ramps breakdown starts at 60v minimum, so perhaps wont blow up at 70v, will it. Not all mosfets work like so, but those do, and i am not against the freewheel diode, that is good, and the arguments for that are good, and its worth having, but its just not an universal panacea and neither lacking it is the root of all evil.

      Quote

      Up in the simulations, ringing (oscillations) appear horrible.
      Ofc they do, they are meant to prove a point. That was exactly the point. But remember they are simulations. Read the datasheet of that mosfet: in practice, you wont get 70V transient forming across a body diode with 30V breakdown rating.

      Quote

      Over 400 times per second.
      Now thats the part which is interesting and which got me to post in the first place. Over 400 times per second. Priceless. Dunno where the numbers comes from, or which tool measured that, but that would be interesting to know.

      To pwm or not to pwm - that is the question. If you dont pwm, because heat loss vs hysteresis, you only get switching at like 1-2 seconds or so. So if its something >400Hz, then you are pwm-ing. Most part of losses in modern smps come from switching losses being 1-2 orders of magnitude bigger than conduction losses - this is how good current mosfets conduction modes get. And the number of 400Hz, its interesting for being kinda low, because the arduino will pwm way beyond that, but if you use a poor multimeter tool or perhaps if your low pwm state is low enough, then perhaps that 400Hz is the lowest value you can get, - but not the max. Check around these forums and see whats the pwm frequency range.

      So if the fail is because of switching losses, its the pwm that causes it and its a different story. Looking at it differently, switching losses are because of pwm, and appear even if the load would be perfectly resistive. And it makes sense, since the arduino pwm is not terribly perfect waveform and pins have small power hence low dv/dt and longer transition in operating regions where losses are huge. Quick fix, stop trying to pwm the heated bed. Use bang-bang only, like 0%-100% = no pwm. And with a hysteresis like +-2 degrees, that will take seconds between on-off. The heat of mosfet transitions will have time to go away. Imo you will be fine with that. There is no need and no logic in trying to pwm the bed. I for one, use bang-bang even for extruder and im fine with it. Imho firmware defaults should be with heated bed on bang-bang and imo i personally would go that far to not even allow pwm on bed. And if the pwm is cause of fails through increasing switching losses, the freewheel diode wont really help. This is something for you to do, you can really test this. If you want a diode, the best place to put it is actually right on heated bed connector. Because thats where transient is generated then its better place there than on ramps, because ramps is further away. You can simply solder almost any diode across the heated bed connector, in reverse to normal flow, and try doing the same and try pwm the mosfet again, and i think it will fail when you pwm 12-13A in Khz range, with a pin with few mA current capacity and slow dv/dt. Even the fact that some mosfets do survive that its just a little short of miracle. Imo, pwm-ing the bed is not an electronic design fault, its more like user fault.
      Re: First Motherboard
      March 08, 2014 01:12PM
      Excellent argumentation NoobMan. Thank you very much...I didn't know all those things...smiling smiley
      Next time I will be more careful linking my sources...
      And just to make it clear: I totally believe RAMPS to be the best first motherboard smiling smiley

      Happy printing!


      www.poti-poti.org
      Re: First Motherboard
      March 08, 2014 02:18PM
      Yes i agree, its a good setup, and so are many others. You can also use the freewheeling / recirculation diode, thats would be a good addition, it has some impact, but i would not expect it to make miracles either. By far (very) the biggest difference should come when you do not pwm the bed, and only use 0%=off and 100%(255)=on, that is full off and full on. The implementation in firmware is different from one to another, sometimes things get strange. For example i know of one firmware if you select bang-bang in configuration, will actually make a sort of bang-bang between 10% pwm and 90% pwm, which is still pwm so its probably even worse than usual pid! So better check how things work in particular, check if you have minimum pwm and maximum pwm values for bang bag, and set them to 0 and 225 instead of any other values in between. Bottom line for heated bed, instead of pid, use bang-bang but double check to have no pwm at all, only constant state output, switching from 0v to 5v and then staying like that untill next change. This way the mosfet will have switching times between 1-2 seconds and more likely approx 5-10 seconds apart, at least mine is like so. Sort of depends on insulation and what value you choose for hysteresis. Mine with mediocre insulation and something like 2 degrees hysteresis is enough to have the mosfet switch very rarely and that means mosfet has really no stress, switching losses per time become neglectable and easily dissipated, and then most losses come from conduction losses only, and thats fine because its how it should be, and losses cant get any lower than that. This operation mode has minimal stress on heated bed mosfet.
      Re: First Motherboard
      March 08, 2014 02:40PM
      Aha NoobMan, so basically, if I follow your reasoning, the problems I had with my crispy MOSFETs could have been avoided by simply editing the line in my marlin that enables PID for the bed?:

      // Bed Temperature Control
      // Select PID or bang-bang with PIDTEMPBED. If bang-bang, BED_LIMIT_SWITCHING will enable hysteresis
      //
      // Uncomment this to enable PID on the bed. It uses the same frequency PWM as the extruder.
      // If your PID_dT above is the default, and correct for your hardware/configuration, that means 7.689Hz,
      // which is fine for driving a square wave into a resistive load and does not significantly impact you FET heating.
      // This also works fine on a Fotek SSR-10DA Solid State Relay into a 250W heater.
      // If your configuration is significantly different than this and you don't understand the issues involved, you probably
      // shouldn't use bed PID until someone else verifies your hardware works.
      // If this is enabled, find your own PID constants below.
      //#define PIDTEMPBED


      However, and although I ignored this particularities as a beginner (PWM? PID? OMG!!!), I am checking now the firmware given by the provider and i can see that PIDTEMPBED was disabled...eye rolling smiley...hmmm...can you please point out what am I missing?

      Thanks!


      www.poti-poti.org
      Re: First Motherboard
      March 08, 2014 03:20PM
      No, no PID at all for bed. Reprap PID is not actually "industrial" kind of pid at all, our reprap pid is actually implemented as calculation for pwm on-off times. The whole point is to avoid pwm, first thing that means to avoid PID for the bed. So, no PID at all. PID for bed is bad. Only bang-bang.

      Normally bang-bang means simply on-off. When temp reaches setpoint +2C (hysteresis) it will switch off. And then when the temp reaches setpoint -2C, it switches back on. Thats all for bang-bang, its supposed to be simple. It will quite a couple of seconds for bed temp to change with 4 degrees, so the mosfet will actually switch very very rarely. Only every now and then, like 10 seconds apart, maybe even more, but something like that.

      But, just saying, i dont really remember when and where, coz im old retard, but i do remember some settings like "maximum and minimum bang-bang- value .... xxx " which requires a value between 0-255 for pwm purposes for bang-bang. That means when its supposed to be switch on, it will pwm at max value, and when its supposed to be off, it will pwm at the lower value. And this kind of stuff basically defeats our purpose entirely. Because it still uses pwm, which is very bad for heated bed. So for example if you run into those kinds of settings, then choose minimum bang-bang to 0 and maximum bang-bang to 255. This will give no pwm at all. Zero means its full off, and 255 its full on, again basically no pwm at all. This is what i meant.
      Re: First Motherboard
      March 08, 2014 03:58PM
      I dont use marlin and i think took a long time since i checked it out, just now i looked at marlin from github page in configuration.h, and default configuration seems ok for as far as i can tell:
      // shouldn't use bed PID until someone else verifies your hardware works.
      // If this is enabled, find your own PID constants below.
      //#define PIDTEMPBED
      Do not enable this, basically do not enable PID for bed especially. For bed use bang-bang.

      #define MAX_BED_POWER 255 // limits duty cycle to bed; 255=full current
      This at 255 is ok, full on, no pwm. Any setting lower than 255 will make the bed use pwm (just as a note for a quick look i have not been able to find the equivalent value of the above, but for minimum, but i guess it should be zero somewhere).

      // If your bed has low resistance e.g. .6 ohm and throws the fuse you can duty cycle it to reduce the
      // average current. The value should be an integer and the heat bed will be turned on for 1 interval of
      // HEATER_BED_DUTY_CYCLE_DIVIDER intervals.
      //#define HEATER_BED_DUTY_CYCLE_DIVIDER 4
      Dunno how this is computed but looks like something i would stay away from, instead why not use a use higher rating fuse or a slow-blow fuse, i am not sure i understand the motivation of this.
      Re: First Motherboard
      March 08, 2014 05:05PM
      Quote
      NoobMan
      // If your bed has low resistance e.g. .6 ohm and throws the fuse you can duty cycle it to reduce the
      // average current. The value should be an integer and the heat bed will be turned on for 1 interval of
      // HEATER_BED_DUTY_CYCLE_DIVIDER intervals.
      //#define HEATER_BED_DUTY_CYCLE_DIVIDER 4
      Dunno how this is computed but looks like something i would stay away from, instead why not use a use higher rating fuse or a slow-blow fuse, i am not sure i understand the motivation of this.

      Well, a little of google triggered this:

      http://forums.reprap.org/read.php?1,147557,147557

      Which basically explains that the variable HEATER_BED_DUTY_CYCLE_DIVIDER is a tweak made by Dabble and, in his own words:

      You are correct that it is a software PWM, it is crude but appears to be effective. The rate seems to be very slow.
      The logic is that bed_is_on is incremented from 0 to HEATER_BED_DUTY_CYCLE_DIVIDER repeatedly. When bed_is_on is 0 i.e. for 1 out of HEATER_BED_DUTY_CYCLE_DIVIDER times, the heat bed is turned on.
      I found that a value of 4 i.e. turn on for 25% of the time, worked for me.


      Anyway, I also had it deactivated...

      In my case the most likely origin of failure were the PSU vs MOSFET specifications. I had the "official" P55NF06L:

      From the curve one can see that, at the 16A and 12V supplied by my PSU, it is out of the RDS safe limits for periods larger than 10ms (or frequencies of 100Hz)...Nevertheless, this MOSFET is supposed to work fine according to some other sources:
      http://www.soliforum.com/topic/2080/magic-smoke-on-ramps/

      Still, I would choose a IRL3803 (lower chart, to the right):


      Gives more confidence to me...with 12V it can still manage 30A...although is about 1€ more expensive..

      Edited 4 time(s). Last edit at 03/08/2014 06:29PM by ndujar.


      www.poti-poti.org
      Re: First Motherboard
      March 08, 2014 06:49PM
      Yes the IRL3808 looks better to me too, mainly because it has half the on-resistance of the other, so when it conducts it dissipates less. First check thingy i would look for Ids versus Vgs graph. So our Vgs is 5v, need to make sure 5v gate opens the mosfet enough for more than 12.5++A of current to pass. If it would open less than that, it would operate in partially opened manner and it would burn instantly. This is in a graph which shows Ids in relation to Vgs, possibly in relation to others but those are less important. So our Vgs=5v produces more than our target current (preferably much more), then the mosfet will be fully open for that current and will operate like it should. Second datasheet check, with the Ron and overall math of losses like I^2*Ron like in that reprap wiki page, we make sure that when mosfet conducts fully, it dissipates low power, and that is low enough to be manageable in temperature terms. But as in the posts before we talked about switching losses, its worth to say that these dont appear anywhere yet, but if we will get anything like that, then will just add up to the conduction losses. So the conduction losses should have a hefty headroom for other types of losses.

      When power mosfet can only be fully opened or closed, it works like a switch. The R(on) is a characteristic behaviour of a this situation where a mosfet conducts fully. Which is the only way these power mosfets are supposed to work. So almost all datasheet is centric to this situation. The Ron makes sense, this is why it has to be chosen a low value, small Ron means low conduction losses, but its not the only type of losses, there are switching losses. You can google "switching losses calculation". When the mosfet is partially opened, it works like an amplifier or a ttl gate with a pullup resistor, this is the domain of small signal mosfets. It produces a voltage output that depends on the gate voltage. In this situation the mosfet does not have a R(on) because it can not be modeled as a resistor. It has and entirely different model which implies relatively bigger losses than i2r. A small signal mosfet can operate in this mode because its in mA range and "bigger" losses only translate to less than 1A or so, in range of usual rating of a to-92 and its manageable for small ones, but not manageable for big power fet. So every time when mosfet gate goes from 0v to 5v, the mosfet changes from not conducting to fully conducting, and this transition means it goes fast through operation mode above where loses are big as mosfet is partially open and where R(on) model does not apply. Since we give the command to digitalwrite from zero going to 5v, the uC pin output has a rise time that should be in atmel datasheet. Also this pin has a low current output and tied to a fet gate with significant parasitic capacitance which needs to fully charge to get it to 5v. Even then, the mosfet itself has a rise time delay. So everything is "delayed", add up rise times, add up the delay of the gate charging, and there will be a small transition period when the mosfet is only partially opened and losses are huge. Small period but huge losses. If we have this transition often enough, it adds up and it forms switching losses. But one thing to note, our power mosfets datasheet do not provide much along the lines of this mode of operation because simply its not supposed to work like this.

      So, nor switching losses neither that inductive spike made by parasitic inductance, neither of these are shown in that Ron graph because that graph is only for fully conducting mosfet, and that Ron is only relevant in terms of full conduction, and irrelevant in any other cases. The state when mosfet is partly opened does not actually have Ron at all, its entirely different math, a nightmare in terms of power dissipation. But all in all, switching losses depend first thing on how often we switch, hence the simplest way to mitigate them is to lower the switching frequency, or to avoid switching if possible. Also depends on how fast we switch, but if we want to change that it will take expensive gate drivers, because those will have more energy, in comparable terms those will have 3-4-5 amps peaks capacity instead of the uC pin with has something in miliamps range.
      Re: First Motherboard
      March 08, 2014 07:19PM
      Also i think IRL3803 might be kind of better than ~08. Ultimatelly if you want to choose something thats better and smarter than the average fet, you can try IPS1011 from irl. But that is a different product class and probably much more expensive.
      Edit IPS1011 says in datasheet explicitly conduction losses=switching losses @200Hz, so pwm-ing this will be out of question, even if it should be anyway, it just lost a bit of appeal. Still seems a bit different than what mainstream uses so dunno.

      Edited 1 time(s). Last edit at 03/08/2014 07:34PM by NoobMan.
      Re: First Motherboard
      March 09, 2014 05:14AM
      So, summarizing and making a simple yet effective conclusion:

      First recommended option for a beginner's first motherboard:

      RAMPS 1.4 + (x1) IRL3803 MOSFET to have spare for the event of burning that of the hotbed...

      PROS (from lazzymonk and cdru):

      • Very well documented
      • Easy to use
      • Modular so if you break one bit, just replace it.
      • Available from many places
      • Low price

      CONS (from ndujar and noobman):

      • Potential problem with hotbed's MOSFET: Easily fixable by replacing with an IRL3803
      • Possibility of "only" two extruders: Should not be a problem as it is for beginning...two extruders can fulfill many needs and hours of learning...smiling smiley


      Happy printing! smiling smiley


      www.poti-poti.org
      Sorry, only registered users may post in this forum.

      Click here to login