October 23 2017 01:06:37


Not a member yet?
Click here to register.

Forgotten your password?
Request a new one here.
bullet2.gif Active Forums
bullet2.gif FORUM INDEX
bullet2.gif Downloads
bullet2.gif News
bullet2.gif Forum FAQ
bullet2.gif Contact Me
bullet2.gif Photo Gallery
bullet2.gif Search
bullet2.gif User's Voice
Forum Threads
Newest Threads
bullet2.gif Bobby M15's drum
bullet2.gif RIP Vac Motor (?) Help!
bullet2.gif TC4 with aArtisanQ_PID
bullet2.gif Looking for TC4C board
bullet2.gif Newbie Arduino/aArti...
Hottest Threads
bullet2.gif TC4 with aArtisan... [260]
bullet2.gif SIGN UP FOR BULK ... [163]
bullet2.gif KKTO - My Humble ... [147]
bullet2.gif Bobby M15's drum [86]
bullet2.gif Dereks 1-2Kg drum... [78]
Users Online
bullet2.gif Guests Online: 4

bullet2.gif Members Online: 0

bullet2.gif Total Members: 5,072
bullet2.gif Newest Member: Cmartingo
BotSlap Panel
bullet2.gif Last check: 10/23/2017 00:45
bullet2.gif Slap count: 0
bullet2.gif Last checked ID: 6194
View Thread » DATALOGGERS - CONTROLLERS - RATE OF RISE METERS » Dataloggers/Controllers/Rate of Rise Meters
Who is here? 1 guest(s)
 Print Thread
TC4 with aArtisanQ_PID
Hi Brad,

I'd had a look at the user.h file and but left it as default at least just to try and get an output to work on OT1. Thanks for the pdf link, I'll take another look tonight and report back.
The outputs work fine if I load the RoastLogger sketch and use Roastlogger software to drive them.
Its Espresso, not Short Black
I suspect you will want the CONFIG_PWM option enabled as it does slow PWM output on OT1 for a heater and fast PWM out on IO3 for a DC fan.

Also check the other user.h options. There is some basic guidance in the user.h file but ask if you have any questions. Make sure you have the analogue input option commented out if you're not using them.
You do not mention ZCD (Zero-crossing detector) anywhere in you setup description. Default user.h settings assume you have ZCD on IO3 and use it for fast PWM control. If you donĀ“t have ZCD you have to change the configuration in user.h file and use slow PWM output.
Thanks Brad, RedAce
Makes sense now, I've changed it to CONFIG_PWM to get an output on OT1 and it works fine for the moment while I get familiar with Artisan and it's PID function.
After reading into it a bit more, I'll most likely end up wanting to also control the airflow which is driven by an AC motor so it looks like I'll be configuring it as CONFIG_PAC3 eventually as I'll need a ZCD for the airflow.
Since OT1, OT2 and I/O3 will be allocated to heat/air/ZCD, am I able to use any of the other pins on the TC4 as simple on/off outputs to control a few other things I plan to make buttons and or events for? If so, how do I refer to those outputs in Artisan?
Its Espresso, not Short Black
There are two commands in the Artisan sketches that should do this.

DWRITE and AWRITE. These can turn digital pins on/off or change the output on an analogue pin.

The commands should used like this (untested).



Just be careful which pins you write to as some are obviously used for OT1, OT2, IO3, analogue inputs etc. Check Jim's schematics if you're not sure.
Thank you Brad,
The digital pins work nicely.
Its Espresso, not Short Black
Hi All,

I would like to make a few changes to the TC4 Artisan sketches, but thought I should run my proposed changes past users here first.

Let me know what you think and if you see any issues with my proposals.

1. Always including heat, fan and SV in the serial output stream
Currently when in Artisan mode, the TC4 only sends 'ambient, ET, BT' to artisan unless the TC4 PID is active when it also includes 'heat duty, fan duty, SV'.

I would like to have at least the heat duty and fan duty values always included in the serial output stream regardless of the PID state.
This would allow the heat duty and fan duty values to be logged/graphed by Artisan when roasting manually or using Artisan's built in PID function.

2. Changing the PID;CHAN;X serial command
Currently the X in this command is referring to a logical channel. That is, the Xth channel in the serial stream. For example sending PID;CHAN;2 will set the TC4s PID channel to BT as the serial stream is always 'ET, BT, chan3, chan4'.

I would like to make the X refer to a physical channel. That is, the Xth thermocouple connector. This should make it more intuitive to set up in Artisan where physical channels are linked to ET and BT in the 'Device Assignment' dialog. Then in the 'Control' dialog, selecting a PID source channel would match either the ET or BT channel number as defined in the 'Device Assignment' dialog. See my diagram attached.

If you currently use Artisan with a TC4, especially with the PID features I would be interested to hear your thoughts.

greencardigan attached the following image:
I have made the above changes in aArtisanQ_PID.

Version 6_3 can be downloaded from GitHub here.
Howdy Brad, I had to re-read your proposed changes a couple of times to take it in. I can't see any down side to what you've done and looks to be quite an improvement in function and ability to see more of the needed sensed values regardless of on PID mode or not.

I'm going to assume the lack of feedback to your post was due to no one seeing an issue with it.

Either way, i really appreciate the continued labor of love you, Jim, Marko, Jack and all the others here have put into making the TC4 evolve and constantly improve.

1/2 lb and 1 lb drum, Siemens Sirocco fluidbed, presspot, chemex, cajun biggin brewer from the backwoods of Louisiana
Thanks Brad for still supporting Artisan! I just added links to your repository hosting the two main variants relevant for Artisan, Jims original aArtisan firmware (v3.10 from 2015) and your ongoing work on the aArtisanQ PID 6.
Thanks Marko, but note that I have not yet made the corresponding changes to Jim's original Artisan firmware. I was hesitant to make changes to it without hearing back from him.

Allen, I probably got no feedback as I didn't give enough time! If something isn't working I find it hard to stop until it's fixed.
Brad, I've just come across your recent videos on youtube and have to say they are brilliant especially the one that demonstrates the PID function.
Not sure if it's been asked before but is there any pros/cons to using Artisan's internal PID versus using the TC4's PID?
Its Espresso, not Short Black
Hi and thanks. I'm glad you find them helpful.

I don't think there's any real benefit either way. Marko suggests that the TC4 PID will perform better but I haven't really noticed much difference. But I haven't used the Artisan PID much yet.

I just thought of one minor difference if you're using a LCD with the TC4. The TC4 PID will display the set variable on the LCD. Using the Artisan PID it's harder to see what the current set variable is. I roast outside with my laptop inside running Artisan and connected via bluetooth so it's handy to have the info on the TC4's LCD.
Thanks Brad, I'll have to give them both a try soon as I'm just about finished rigging up my new roaster.
In regards to tuning the PID, with my old roaster running RoastLogger I used the auto tune function with several batch sizes to get the ballpark parameters which worked well.
With Artisan, can it do some sort of auto tune? If it not, I'm wondering if temporarily running RoastLogger to obtain the auto tune parameters to then use in Artisan would be useful?
Its Espresso, not Short Black
There is no auto tuning function in Artisan as far as I know.

The PID in RoastLogger is based on the same library as the TC4's PID. I'm not sure what Artisan uses, but using your RoastLogger values could be a good starting point.
Cheers, thanks for that. I'll give it a try and report back.
Its Espresso, not Short Black
About 10 seconds before the end of profile created by Artisan Designer, SV always jumps to an unreasonably high temperature. (aArtisanQ_6_3, backround follow TC4 PID, background follow Artisan PID is a little different problem).
Where can be a mistake?
I do not have this problem with the ramp / soak profile or the Android app.
Interesting. I can replicate this but I'm not sure yet what is causing it. In my test the SV was dropping once it reached the end of the background profile. See my attached screenshots. One with no look ahead and one with 10 seconds look ahead.

I'm assuming you have your look ahead set at 10 seconds which is why it changes 10 seconds early.

I suspect it is something to do with Artisan as the TC4 should only be sending back the SV as sent from Artisan.
greencardigan attached the following images:
10s_look_ahead_copy.jpg no_look_ahead_copy.jpg
I've confirmed that Artisan is sending a strange SV value to the TC4 when it reaches the end of the background profile it is following.

Looking at the Artisan source code I don't understand it enough to determine exactly what the cause is. And I don't know how to compile it myself so I can't test any modifications anyway.

Marko may have to investigate?
I expected Sv to fall to zero or stay at last value.
I tried it with another TC4, it still behaves the same way.
Jump to Forum:
Similar Threads
Thread Forum Replies Last Post
TC4 Shield / Arduino Uno / LCDapter Dataloggers/Controllers/Rate of Rise Meters 5 10/18/2017 02:37
FS: HTShield + TC4 +Arduino boards JAVA TRADING COMPANY 2 10/13/2017 17:45
Using a TC4 with Artisan Roaster Scope Dataloggers/Controllers/Rate of Rise Meters 4 10/10/2017 07:54
TC4 Roasting App Dataloggers/Controllers/Rate of Rise Meters 56 10/08/2017 14:17
Help with aArtisanQ_PID Specifying Temps Dataloggers/Controllers/Rate of Rise Meters 7 08/03/2017 17:05