topbanner.gif
Login
Username

Password




Not a member yet?
Click here to register.

Forgotten your password?
Request a new one here.
Shoutbox
You must login to post a message.

JackH
11-19-2018 12:58
welcome2 Heidi

allenb
11-15-2018 13:26
Cwilli62 Welcome

JackH
11-14-2018 10:26
Welcome joycan coffee drink

JackH
11-12-2018 08:50
welcome2 gtroaster15

JackH
11-09-2018 12:21
Welcome SPQR

Shoutbox Archive
Users Online
Guests Online: 2

Members Online: 0

Total Members: 5,574
Newest Member: sitanggang
Donations
Donations Bank

Latest Donations
PRABHATH COFFEE WORKS - 10.00
John Despres (Scene... - 25.00
snwcmpr - 10.00
Ozo - 20.00
Josh Woodrow - 10.00

View Thread

Homeroasters.org » DATALOGGERS - CONTROLLERS - RATE OF RISE METERS » Dataloggers/Controllers/Rate of Rise Meters
Who is here? 1 guest(s)
 Print Thread
TC4 with aArtisanQ_PID
greencardigan
Have you set up the 'Extra Devices' tab? Heater fan and SV values are not recorded by default. You have the specify TC4 channels 3-4 to get heater and fan logged.

See my video here showing Artisan setup for TC4. https://youtu.be/...
 
CJ098
Hello
I tried to add extra device TC4_56 and adjust the Fan and Heater value manually.
1. During the roast, the right side heater LCD just show 0 , no matter how it changed on left side heater slider.
2. During the roast, at the bottom of profile it shows the fan and heater value, however, it disappeared when I stopped the roast. I attached the screen snap shot for your reference. Thanks a lot for your help.
 
CJ098
Re-attach picture
 
CJ098
sorry, I don't know why the attached picture does not show.
I attached a .rar file.
CJ098 attached the following file:
pictures.rar [313.66kB / 22 Downloads]
 
greencardigan
TC4 5-6 is Heater then Fan. In your screenshot you have them swapped.
 
CJ098
Hello
Thanks a lot for your prompt response.
My original setting for TC4_56 is heart then fan. However, I found the fan value on left slider is inconsistent with the fan value on right side LCD. Besides, "6th" extra device on right side LCD seems no response. On the screen shot "test2", you can find the Fan value 98 on left side slider is the same with right side FAN LCD. but the left side heater value is 78, right side heater LCD value is 0.
 
CJ098
Problem solved, Since I used OT1 ICC control heater and IO3 to control DCFAN
So I modified the Heater and FAN display options in user.h as below. Then it works.
Download source  Code
////////////////////
// Heater and Fan Duty Dispay Options
// These should NOT need adjusting.  They control what gets streamed back to via serial
// These have no effect on operation and only affect what gets displayed/logged by Artisan
#ifdef PHASE_ANGLE_CONTROL
  #ifdef IO3_HTR_PAC // If using PWM on IO3 for a heater or DCFAN
    //#define HEATER_DUTY levelIO3 // Heater output is assumed levelIO3 with heater connected to IO3, command out when use DCFAN
  //#else // If using ICC control of a heater connected to OT1, Command out when use DCFAN
    #define HEATER_DUTY levelOT1 // Heater output is assumed levelOT1 with heater connected to OT1
  #endif
  #define FAN_DUTY levelIO3 // Fan output is assumed levelOT2 for phase angle control mode on OT2, DCFAN on IO3
#else // PWM Mode
  #define HEATER_DUTY levelOT1 // Heater output is assumed levelOT1 with heatre connected to OT1
  #define FAN_DUTY levelIO3 // Fan output is assumed levelIO3 for PWM control of fan connected to IO3
#endif


CJ098 attached the following image:
test6.png
 
greencardigan
Conversation continued here from the Gene/Artisan thread.

renatoa wrote:
Please include the flag for the two modes in User.h, and don't forget to comment with the biggest caps you find :) that P/I values from PoE(rror) are not working for PoM(eas).


MaKoMo wrote:

@greencardigan: shouldn't be there a TC4 PID command to switch the PID lib between those two modes from within Artisan? Could you add one? I plan to also add PoM mode to the Artisan Software PID and thus add such corresponding configuration to its GUI to toggle between the PoE and PoM modes. Thus if Artisan is configured to use the external TC PID, that user setting could just be send along a corresponding serial command.


renatoa wrote:

@MaKoMo & @greencardigan: if you have this opportunity to make a protocol change, please don't miss the great chance to add also a PID;LIMITS command, to pass the limits from Artisan Control dialog to the TC4 PID, and TC4 PID using them.

Was the most frustrating missing command for a long time... a permanent, 40% for example, minimum limit of power, would make my life a lot easier in my attempts to "perfect" rost profile.


I’m thinking we should modify the current PID tuning serial command? The PID library is expecting the P_ON_M or P_ON_E mode to be set at the same time as the PID parameters.
Download source  Code
myPID.SetTunings(PRO, INT, DER, P_ON_M)



So I think it makes sense to include them in the same command and set them at the same time.

So we could change the PID;T;p;i;d command and accept either:

PID;PONM;p;i;d or PID;PONE;p;i;d

Any thoughts on this Marko, renatoa, others? Otherwise a new command would work too.

I also think a PID;LIMIT;min;max command will be a good idea.
 
renatoa
Why not place the PonM/E flag as the last parameter, and make it optional, with default value PonE? this way others code built around TC4 will not be harmed... they can continue call the older version without recompiling.
 
greencardigan
Yes that's a good idea. However it would require a change to the cmdproc library. Currently it only accepts 5 parts in a command. The PID,T,p,i,d command already has 5 parts.
 
renatoa
What is T? I don't see this parameter in the lib I have, PID_v1, from 2017/11/14...

void PID::SetTunings(double Kp, double Ki, double Kd)
 
greencardigan
The T is part of the TC4 serial command for tuning the PID, nothing to do with the PID library.

I'm working on a solution and will hopefully have a version to test this weekend.
 
MaKoMo
What about adding simply a second tuning command that switches to P-on-M like

PIDM,T,p,i,d

also to keep additional memory demand low?

Anyhow, I trust you will find a good solution. I prepared things on the Artisan side and can issue any command that you come up with easily.
 
greencardigan
This is essentially what I did. However I have kept the PID part of the command constant and use either T or T_POM.

Adding a new PIDM base command would be much less memory efficient.

Anyhow I sent you an email earlier before I saw your post here. Once we agree on the new command I will post a version 6.6 of the TC4 sketch here for testing. it seems to be working fine but I don't have time to test it more yet.
 
greencardigan
I've attached a new version for testing. I have done very limited testing at this stage.

- Added support for PID_V1.2 library with Proportional on Measurement mode
- Added flag in user.h to set default PID mode
- Modified the PID tuning serial command. Now accepts PID;T_POM;ppp;iii;ddd to set P_ON_M mode.
- The existing command PID;T;ppp;iii;ddd now switches to P_ON_E mode.
- Added new PID;LIMIT;min;max serial command to allow the PID output limits to be set.
- Cleaned code to remove compile warnings

The zip file also includes the updated PID_v1 library which needs to replace the existing library in your Arduino libraries fiolder.

Marko has already made the corresponding changes to Artisan v1.4 beta build. ThumbsUp
greencardigan attached the following file:
aartisanq_pid_66test.zip [270.18kB / 14 Downloads]
 
MaKoMo
greencardigan wrote:

I've attached a new version for testing. I have done very limited testing at this stage.

- Added support for PID_V1.2 library with Proportional on Measurement mode
- Added flag in user.h to set default PID mode
- Modified the PID tuning serial command. Now accepts PID;T_POM;ppp;iii;ddd to set P_ON_M mode.
- The existing command PID;T;ppp;iii;ddd now switches to P_ON_E mode.
- Added new PID;LIMIT;min;max serial command to allow the PID output limits to be set.
- Cleaned code to remove compile warnings

The zip file also includes the updated PID_v1 library which needs to replace the existing library in your Arduino libraries fiolder.

Marko has already made the corresponding changes to Artisan v1.4 beta build. ThumbsUp


@greencardigan: Did some tests today with this version and the current Artisan v1.3 beta on my Hottop-P/TC4 and it seems to work as expected. Thanks for your work!

@renatoa: Did you had a chance to play with this updated Artisan Software PID and/or this updated TC4 PID version yes?
 
renatoa
No real TC4 here, so can't test greencardigan work.
But my actual controller, even if using a different control approach, looks and quacks like a TC4, so I can test commands coming from Artisan.
Will test also own Artisan PID next days... I can't drink as I roast Grin
 
renatoa
Ok, I did some tests, and the new PonM mode works well, as expected, at least to regulate the air temperature in a hotgun style roasting machine.
The PI values I found satisfactory by trial and error were P=16 and I=0.8
The response time of a 150C step action was been 28 seconds, stabilisation with no overshot.

For those interested to experiment, they must be aware that in this mode the I term is the main driving factor of the heater, while P is a braking factor, almost as D term !
The difference between the P/D brake effects is the following:
- D term brake is related to temperature variation speed, stronger when fast temperature variance, i.e. in the steepest slopes of the profile;
- P term brake is related to distance to setpoint, lower when approaching.

An example, in my scenario, if playing with values above, someone should expect the following behaviour:
- for I lower than 0.8, or P higher than 16 => longer response time, maybe even undershoot
- I higher than 0.8 or P lower than 16 => shorter response time with slight overshot, maybe oscillations. For example 0.9 will stabilize in 26 seconds with a single 0.5C degree overshot, followed by no oscillation. Same behaviour if P = 14
At I > 1 or P < 12 someone should expect oscillations.

Stability can be achieved for other value pairs too, but with different response time.
For example P = 8 and I = 0.3 exhibits similar stability at setpoint, but reach the target temperature in 35-40 seconds.
Someone could prefer this way, with low values, if a slower start of the heating is desirable. Lower I/P values are for gradually increasing power, maximum power being reached maybe even in 10 seconds, while higher I/P values are for instant maximum power applied to the heater.

During this test was also been used the new LIMITS feature, maximum being set at 184 (of 255), equivalent to 72% of total power. As expected, it worked :)
Edited by renatoa on 09-09-2018 02:14
 
Wiz Kalita
Is it possible to program a smooth curve for heater and fan power and force the TC4 to simply follow it? I find that on my popper ET follows output extremely closely and rapidly, so I believe I could get good results that way.
 
renatoa
This is not good, to have ET and BT curves closely, i.e. like this:

i.imgur.com/lrEIZk7.png

... it's a sign that your BT probe measure more air than beans.

ET must be higher than BT by more than 50 C degrees during drying, and diminishing this delta to about 20-30 C degrees in the development.
Check this graph, it comes from a really well done fluid bed machine, and these are the right temperature evolution you should expect during a roast.

imgur.com/LGlXuci.png

Unfortunately is very hard to achieve this on a popper, due to very turbulent air circulation, in a too small roast chamber, making an accurate BT reading almost a lottery.
For a popper I would drive my roast exclusively on ET, as I wrote in the other message earlier today, see "well tempered roaster" thread.
Edited by renatoa on 09-09-2018 02:07
 
Jump to Forum:

Similar Threads

Thread Forum Replies Last Post
Loading aArtisanQ_PID in Arduino Dataloggers/Controllers/Rate of Rise Meters 14 05-28-2018 15:32
Help with aArtisanQ_PID Specifying Temps Dataloggers/Controllers/Rate of Rise Meters 7 08-03-2017 14:05
TC4 aArtisanQ_PID or Standard Library Dataloggers/Controllers/Rate of Rise Meters 45 01-24-2016 07:17
aArtisanQ_PID 5,3 with TC4 display problem Dataloggers/Controllers/Rate of Rise Meters 14 01-23-2016 06:15
AartisanQ_PID 5.3 with TC4 and RoastLogger Dataloggers/Controllers/Rate of Rise Meters 6 12-14-2015 05:52
Homeroasters Association Logo, and all Content, Images, and Icons © 2005-2016 Homeroasters Association - Logos are the property of their respective owners.
Powered by PHP-Fusion Copyright © 2018 PHP-Fusion Inc
Released as free software without warranties under GNU Affero GPL v3
Designed with by NetriX