Welcome! Log In Create A New Profile

Advanced

RepRap Host: Extruder Exerciser target temp / auto heat control

Posted by RoundSparrow 
RepRap Host: Extruder Exerciser target temp / auto heat control
January 04, 2008 11:47AM
So the RepRap Host software Extruder Exerciser...

It doesn't seem to turn off the heater when the desired temperature is reached. It just seems to be a GUI control with no underlying intelligence. In fact, it will keep heater on forever...

Given that a lot of us are testing the Extruder _without_ the robot hooked up... is there another suggested place we can test that does have smart temperature and motor controls?

Zach - I saw you using some software that was turning the motor on/off as certain temps were hit. Was that the standard print mode or were you using some other software?

Thanks.
Re: RepRap Host: Extruder Exerciser target temp / auto heat control
January 04, 2008 12:02PM
Starting to dig into the RepRap host software a bit....

I'm using the Ardrino electronics which I understand emulate the PIC....

I notice temps jump from:

current temp 253.37409728877196
to
current temp 277.33466086834505

Looking at the code, there seems to be a "raw" temperature that is based on value numbers 3 or 4 (looks to me this is what the electronics are sending to the host computer).

Is this the standard behavior, really to go 253c to 277c and no values in between? Is this due to limits of the Thermistor or the electronics?

Edited 1 time(s). Last edit at 01/04/2008 12:24PM by RoundSparrow.
Re: RepRap Host: Extruder Exerciser target temp / auto heat control
January 04, 2008 01:42PM
I think a lot of this has to do with the RC value of the thermistor circuit. As the temperature increases, the resistance of the thermistor decreases. This translates to a shorter pulse width on the RC circuit. The shorter the pulse width, the lower the "raw" value will be.

The problem comes in when you start getting into the single digits. The difference between 50 and 49 is 2% but the difference between 4 and 3 is 25%. As the raw number gets smaller, the temperature precision decreases.

The trick is to come up with a set of values that gives you decent precision over the most critical temperature range. I found, with the thermistor I was using, the raw value was coming up as 2 when I was at about 80C. I increased the C3 value from .01uF to .2uF and got much better resolution.

I wonder if a different thermistor might help. Maybe something with a more appropriate range. According to this: [www.mouser.com] the operation range is -50C to 150C, which is great for CAPA but really doesn't cut it for HDPE. I'm thinking something that tops out at 300C would be better.
Re: RepRap Host: Extruder Exerciser target temp / auto heat control
January 04, 2008 03:30PM
Having a hard time keeping up with all the learning winking smiley But I remember now there was discussion of a higher temp thermistor. But I'm assuming some software change is required. I'll dig around on the forum.
Re: RepRap Host: Extruder Exerciser target temp / auto heat control
January 04, 2008 04:35PM
Steve:

You could be a huge help here!

The new arduino stuff is simply emulating the temperature circuit. We take an analog reading of a thermistor, translate that to celsius and use that internally on the Arduino. When the host requests or transmits the temperature, its done as a PIC timer value.

The values for thermistor beta and capacitor are simply hardcoded into the code! The Arduino calculates celsius to pic timer and vice versa for backwards compatibility. If you can simply give us the ideal values to get the proper resolution up to say 250C, then we could update the firmware so that it would give good values.

what do you say?
Re: RepRap Host: Extruder Exerciser target temp / auto heat control
January 04, 2008 05:27PM
We're working with a 0-255 range, right? With 0 being maximum temperature and 255 being minimum? I'm guessing that we'd want a temperature range of 20C-300C to translate to a timer value range of, say, 250-100. I think that'd work out to a worst-case resolution of about 4 degrees over the working range. Something like that.

If you could send me info on the emulation formula you're using, I think I could manage to come up with something. You'll need values for Rz, beta and C3, right?
Re: RepRap Host: Extruder Exerciser target temp / auto heat control
January 04, 2008 08:30PM
Alright, I picked apart the code and I think I see what it's doing. Assuming vRefFactor=7 and tempScaler=4 (those are the defaults), it looks like a good set of values is:

cap=0.000003
Rz=4837
beta=550

I *think* I've got that right.

There aren't any real thermistors like that but, since you're emulating, it shouldn't matter.
Re: RepRap Host: Extruder Exerciser target temp / auto heat control
January 05, 2008 09:03PM
i'll try that out tomorrow.

you seriously rock steve! is there any sort of process you used to determine these, or just playing with values until you got something that worked well (and how did you determine that in the first place?)
Re: RepRap Host: Extruder Exerciser target temp / auto heat control
January 05, 2008 11:29PM
I took the equations from GenericExtruder.java and dumped them into a spreadsheet. From there I just played with the numbers until I got a decent set of values that would cover the desired temperature spread.

One thing I've learned from all this is that the current setup doesn't seem to work well for high temperatures. The relationship between temperature and the picTemp value (the R/C timer output) looks like this (temperature is X, picTemp is Y):



Lots of resolution at low temperatures but almost none at high temperatures.

As far as I can tell, there are three ways to fix that.
1. Decrease beta.
2. Increase C3.
3. Increase Rz.

Decreasing beta would be best but there don't seem to be a lot of thermistors around with low beta values. Increasing C3 seems to work fairly well up to a point. A higher Rz might be worth looking at.

Edited 1 time(s). Last edit at 01/05/2008 11:30PM by Steve DeGroof.
Steve,

Take a look at this post from NOPHEAD's blog.

[hydraraptor.blogspot.com]

There are 2 pieces to this problem.

Getting good data in from the thermistor.

Normalizing the data to look like what the host software is expecting to see.

Nophead's resistor network takes care of the first.

I think Zach is working on the second.



N.T.

I hope you are not running the extruder up to the temperatures you mentioned , it is not safe.

WRT the standard electronics the Standard 10k thermistor is unsuitable above ~ 155 C as it's resistance is too low (~25 ohms @ 250C) a 100K thermistor >200ohm at 250 C makes this problem go away.

Best
Re: RepRap Host: Extruder Exerciser target temp / auto heat control
January 07, 2008 08:12AM
> I hope you are not running the extruder up to the
> temperatures you mentioned , it is not safe.

How high is unsafe? As 240c has been reported as a workingtemp by nophead for HDPE. Problem I've observed is the poor resolution of the thermistor makes it pretty easy to go to 277c before the host software knows...
Re: RepRap Host: Extruder Exerciser target temp / auto heat control
January 07, 2008 08:20AM
I wanted to say that I overlooked this Wiki page; [reprap.org] [ExtruderIO] which may be a good reference on this topic.
Re: RepRap Host: Extruder Exerciser target temp / auto heat control
January 11, 2008 08:55PM
Update: Three cheers for Steve Degroof! Those values worked great, and now the Arduino code is 100% compatible with the current protocol.

I'm making a sourceforge release as we speak.
Sorry, only registered users may post in this forum.

Click here to login