Rex-C100 PID - CKC Tinner - Troubleshooting

Thread Starter

JK29

Joined Mar 22, 2019
32
What's up Circuits gurus?!

So happy I found this forum. I'm hoping someone is versed in the Rex-C100 CKC Tinner PID! I'm having some issues.... #cheapEbayPID

I'm currently using this PID for a tempering oven (I'm a custom knifemaker). I'm having some serious issues getting it to operate at a set temperature.

Here is a video of what it's doing:

00:00 - 00:26 ; PID is holding a temp above the set-point (But I don't think it's the actual temp of the oven... notice the discrepancy from the red number to the thermometer values)

00:26 - 1:29 ;PID drops below 399 and loses it's mind! ... I think the red number then comes back down to the actual temperature.



-----------------------

To elaborate on the issue... I charted this out with a stopwatch! PID was set and auto-tuned to 400F.


Exact testing set-up (Auto-Tuned to 400 with this set-up twice in a row) (Right cooking probe is what is charted in Orange Below):



It oscillates on about a 12 min cycle:



Notes/Misc:

  • Check out the sharp drops and gains on the PID temp.
  • I wonder if there is a frequency or dead-band setting that I could change? The oven stays shut off for a long time after it hits the 420 mark.
  • I feel like a ~57 degree fluctuation is unacceptable! LOL
  • My Rex-C100 is the knock-off version that only utilizes 3 digit codes instead of 4 digit codes for most of the options.
  • I can't get the df setting below 001

Thanks for any help!
JK29
 

MrChips

Joined Oct 2, 2009
34,758
Either the PID controller is busted or it needs tuning.
Disable auto-tuning.
Disable both integral and derivative control by setting the Integral Time and Derivative Time to max (3600 seconds).
Experiment with Proportional control first. P controls the power, i.e. how fast you want to ramp up the temperature. You ought to get some reasonable form of control even if there is deviation from the setpoint.
Start reducing the Integral Time. Integral control is to reduce the error from your setpoint. This ought to correct the error from the setpoint. For temperature control, many times PI control is good enough. Adjust P and I to get best settling time without too much oscillation. Only after the P and I controls are working should you attempt to introduce D control.

The purpose of Derivative control is to take care of short term perturbations. It will also help to reduce oscillations.

Edit: Set all three parameters P = 0, I = 0, D = 0 to turn off PID control.
 

Thread Starter

JK29

Joined Mar 22, 2019
32
Either the PID controller is busted or it needs tuning.
Disable auto-tuning.
Disable both integral and derivative control by setting the Integral Time and Derivative Time to max (3600 seconds).
Experiment with Proportional control first. P controls the power, i.e. how fast you want to ramp up the temperature. You ought to get some reasonable form of control even if there is deviation from the setpoint.
Start reducing the Integral Time. Integral control is to reduce the error from your setpoint. This ought to correct the error from the setpoint. For temperature control, many times PI control is good enough. Adjust P and I to get best settling time without too much oscillation. Only after the P and I controls are working should you attempt to introduce D control.

The purpose of Derivative control is to take care of short term perturbations. It will also help to reduce oscillations.
@MrChips Thanks a million for the help. I'll give this a go tomorrow.
 

Thread Starter

JK29

Joined Mar 22, 2019
32
@MrChips Just so I have this right... The P (Proportional control) will ramp to my set temperature faster when set to a lower value then when set to a higher value right? So a P of 001 would ramp faster than a P of 200.

The Integral Time will prevent overshooting my set point by shutting the power off to the heating elements before the actual set-point is reached.

That those statements accurate?
 

MrChips

Joined Oct 2, 2009
34,758
P controls the duty cycle of the relay output. Set it to 100 for fastest ramp up.
100 is 100% on.
030 is 30% on.

Integral time controls how long it takes to correct the error.

Derivative will control overshoot.
 

Thread Starter

JK29

Joined Mar 22, 2019
32
Thanks again @MrChips

With your help I've had some progress! PID Tuning Round #1:

P = 070
I= 999(max)
D=999(max)

SV set to 310F for this test

Looks like it will overshoot by around 40 degrees F then maintain a band of 35 degrees (around 350-315). The oscillation wave from peak to valley is around 5min.

This is a video with the above set-points (sped up to 800%):

0:00 - 00:30 - Temp dropping from around 350 to around 315
0:30 - 1:00 - Temp raising to around 345 from 315
1:00 - end - Repeat

 

Thread Starter

JK29

Joined Mar 22, 2019
32
@bertus I have! So,So results. Let me know what you think about these results below. I think I've gotten somewhere. @MrChips please done curse me... I changed a few variables at once, but I think I'm somewhere.

All of these test below are at a setpoint of 390F. I also built a "tempering cage" for my knives in an attempt to dampen out the noise and to protect the blade from direct impact from the elements. Picture below.

I'm not sure what I'm shooting for with this toaster oven set up... But I feel like a 5-10 degree delta is pretty good! It's way higher than the setpoint, but I'm happy to see it staying in a range... My normal tempering target is 395-410F

Test#1:
Auto-Tuned
Up Cycle > 380-398 in 5 min (18 delta)
Down Cycle > 398-382 in 2.5 min (16 delta)

Test#2 (Money shot?!)(Any ideas to tighten this one up?:
P=070; I=999; D=999
Down Cycle > 418-407 1.75 min (11 delta)
Up Cycle > 407-413 in 1.65 min (6 delta)
Down Cycle > 413-404 in 3.5min (9 delta)
Up Cycle > 404-414 in 2.13 min (10 delta)

Short Test #3:
P=001; D=000; I=000
Up Cycle > 385 - 400 in 5min (15 delta)
Didn't record the down cycle by accident.




*Bottom plate was drilled 1/2 the way though so the TC touches the center of the plate.

 

Thread Starter

JK29

Joined Mar 22, 2019
32
@MrChips In regards to "Test #2" in my previous post. What would be your next step? Lower the Integral control to get closer to my setpoint of 390? How big of steps do you recommend?
 

MrChips

Joined Oct 2, 2009
34,758
I misunderstood how they are using the P value.

For manual tuning:

Step #2
Set P = 0. This disables the PID controller resulting in simple ON/OFF control.

Step #3
P is a percentage of the temperature range.
You want to start with a larger number such as 100% and work downward to a smaller number.
If P is too small you will get oscillations. P control alone will not remove the error.

Step #4
Set I = 600 seconds and work towards a smaller number. This is the settling time to reduce the error.

Step #5
Start with D = small number and gradually increase.

Reference:
http://web-material3.yokogawa.com/Adjusting PID Manually (short).pdf
 

Thread Starter

JK29

Joined Mar 22, 2019
32
@MrChips You're the man... Saved me here. That reference was awesome.

These are the results of some of the test I've run recently:



I feel like holding a 2-3 degree window is pretty damn good! I'll continue to use these set-points and slightly adjust them. The cage helped for sure as well.

Thanks for all the help in this thread.

This is a video of it in operation sped up. Look right? The PID is pulsing the output very frequently to hold this tight range. Is that normal? I suspect it is.

 

MrChips

Joined Oct 2, 2009
34,758
Glad to hear you got it working satisfactorily.

Heater output pulsing is normal with PID enabled.
With P = 0, PID is turn off and the heater will only cycle ON/OFF when PV reaches SV.

With P turned on, the output is pulse width modulated (PWM) based on (error x 100 / P).
When PV is much below the set point (SV) the PWM % is large and then diminishes as PV approaches SV, i.e. PWM starts with high ramp and then diminishing ramp.

When SV is reached PWM will be constant (continuously pulsing) to hold PV = SV.
 

Thread Starter

JK29

Joined Mar 22, 2019
32
Here is some updated testing.

P=070; I=630; D=30
Setpoint @ 397 F

Some Notes and Curiosities:
  1. The PID ramps up to around 384 F then slows down and eases up to around 390F from ambient.
  2. I opened the oven to put in a piece of metal and taking a knife in and out for a temper cycle. (Around 75min in)
    • I will have to open the door and place metal into this oven twice during the build process of a knife.
  3. After the oven has been opened and a piece of cold steel put in, the oven will ramp to around 411F! (14 degrees over the setpoint)
  4. Then it will level off around 392 F.
Questions:
  1. Yall have suggestions for making the "second ramp" after the door has been opened not overshoot the set-point by so much?
    • Its strange to me that it won't overshoot in the first ramp, but it will in the second.

All in all it's working WAY better than it was! Thanks for the help

*Second (bottom) graph is just zoomed in

PID Testing by JK2900, on Flickr
 

Thread Starter

JK29

Joined Mar 22, 2019
32
I figured it out today... When I open the oven to place my blade inside. All I have to do is turn the PID off then back on and it won't over shoot.
 

Thread Starter

JK29

Joined Mar 22, 2019
32
Getting somewhere....

I'm about 5 degrees under the setpoint

And it looks like it will build by around 2 degrees over 60min (yellow line)

What parameter do yall think I should change next?

TUNING 4-11-19 by JK2900, on Flickr
 

MrChips

Joined Oct 2, 2009
34,758
Keep notes of your P, I, and D values and the performance.

In order to correct the steady-state error you need to improve the effect of the I value.
Try decreasing both P and I values by small steps each.
 

Thread Starter

JK29

Joined Mar 22, 2019
32
So here is a tuning update... been messing with the settings and recording the data all day:


Findings:


Getting aggressive with P makes big changes. I went from 70 to 75 and it over shot the temp by 12 degrees as seen in Figure #1 (Orange)

*Figure #1



Not sure what my conclusion with changing I is... but here is my data thus far zoomed in. The Green, Yellow, and Light Blue all have a P of 70 but I varied the "I" (350 , 400, 650 respectively)

*Figure #2



I ran a specific test on the I component with a P of 60 to see the difference. Looks like a smaller I will dampen the aggression of the peak and then slowly rise before leveling off.

*Figure #3


Lastly here is a comparison of P values when holding I and D flat. I was held at 400, D was held at 30. The Orange curve is at a P of 75, the Blue curve is at a P of 72, the yellow curve is at a P of 70, and the Brown curve is at a P of 60.

*Figure #4




If anyone has any tuning suggestions, I'm all ears!

Cheers,
JK29
 
Last edited:
Top