Basic Automation Question - Page 3

Discuss roast levels and profiles for espresso, equipment for roasting coffee.
BenKeith
Posts: 309
Joined: 10 years ago

#21: Post by BenKeith »

Yes, but I thought it was controlling the one in the HotTop by interfacing with the HotTop's control board, not connecting directly to the motor and eliminating the HotTops circuitry. You may be right and it may control any DC motor, I've never tried, but from reading what others have tried, I was under the impression it won't, but since I've not tried to, is why I also said "I don't think it will" not that it won't. However, if it will support any DC motor, I wouldn't know how to connect to it because I'm not sure how an SSR would react, or how the motor would react if you just tried to connect one directly. Normally you use something like a MOSFET controller with a PWM input, and a SSR is basically a MOSFET controller, but not to sure how it would work as a stand alone controller.

Let me also be very clear, I don't claim to be any kind of TC4 expert, I have three of them, and have been using two of them for over two years. I can only speak from my personal experience and things I have done.

You are also right about the aArtisanQ_PID being the first to add the ZCD and RoastLogger recently added it. I had those backwards. When I first started, I was using RoastLogger as my data logger and aArtisanQ_PID either 3.8 or 4.3 (can't remember now) in the TC4 because of the RoastLoggerTC4 didn't support ZCD. Anyway, both now support the AC fan control.

User avatar
turtle
Posts: 458
Joined: 11 years ago

#22: Post by turtle »

BenKeith wrote:Yes, but I thought it was controlling the one in the HotTop by interfacing with the HotTop's control board, not connecting directly to the motor and eliminating the HotTops circuitry.
There is an additional board (HTC) that the TC4(C) plugs into via an umbilical cord. The HTC is between the Hottop control panel and the Hottop main board and snakes out to the TC4C then from that to a laptop via USB

I installed my HTC inside the roaster and use my TC4C externally. The umbilical snakes out of the roaster to the TC4C I have 3 panel mount K-type connectors on the rear of the Hottop and use two jumper cables from the Hottop to the remote TC4C. I have a 3rd probe in the electronics compartment so that I can monitor how hot things are getting in there.





Mick - Drinking in life one cup at a time
I'd rather be roasting coffee

User avatar
greencardigan
Posts: 35
Joined: 13 years ago

#23: Post by greencardigan »

slickrock wrote:Folks who have TC4'd their DC fan Hottops would beg to differ. Set aside that the TC4 has buffer out circuitry meant to directly drive low power DC fans, Gallt's main sketch directly supports DC fan control - it even has dedicated command:

DCFAN,duty (added 13-April 2014)
----------
where duty = 0 to 100 (percent output)
Changes the PWM duty cycle on FAN_PORT to duty.
By default, FAN_PORT is DI03 on Arduino (same as IO3 port).
Limits the increase in duty to 25 points per second to
address fan inrush current on Hottop (and possibly other) roasters
No response from TC4 device.


It's the ArtisanQ_PID folks that branched away with a sketch that supports AC fan control with the addition components you mentioned. Over a year ago there was talk of merging the branches and using a build option to set mutually exclusive DC or AC fan control, but I'm not sure if that ever happened.
There hasn't been an any merge yet. No one seems to have time to do the coding.

However, PhilH from Homeroasters has modified aArtisanQ_PID to get PWM from the IO3 pins. See posts here. http://forum.homeroasters.org/forum/vie ... post_57708

I could have some spare time coming up soon (finished my Faema Due restoration) so I may be able to add the PWM in IO3 code to the official aArtisanQ_PID sketch.

User avatar
greencardigan
Posts: 35
Joined: 13 years ago

#24: Post by greencardigan »

I've added PWM control to aArtisanQ_PID. Updates sketches are available for testing.

http://forum.homeroasters.org/forum/vie ... post_59635

User avatar
slickrock
Posts: 272
Joined: 13 years ago

#25: Post by slickrock »

greencardigan wrote:I've added PWM control to aArtisanQ_PID. Updates sketches are available for testing.
Interesting...Questions:
  1. It looks like this sketch supports two modes: phase-angle control mode and PWM mode. Are the two mutually exclusive? Basically I need the combination of the two: Fast PWM on OT1 for Power and Phase-control for AC fan on OT2. Can this be done?
  2. How high of frequency can you go with PWM on OT1? I'll need at least 2.2Khz to drive my proportional gas valve without side effects (IOW, no heater SSR involved in my setup). Will the ICC logic be a problem?
  3. Does your sketch support full PID control and integration in Artisan v0.99? Specifically, not only the ability for Artisan to drive the SV PID setting every second to track designer profiles with Artisan (as opposed to using PID profiles stored in Arduino itself as was originally the case with aArtisanQ_PID ), but the ability of the READ command to return all metrics in the correct delimited format: T1-T4, SV, Power Duty, Fan Duty, Ambient, etc. so that Artisan can display these values in real-time on the graphs as extra devices?
Thanks ahead of time.
07/11/1991, 08/21/2017, 04/08/2024, 08/12/2045

User avatar
greencardigan
Posts: 35
Joined: 13 years ago

#26: Post by greencardigan »

Yes, at this stage they're mutually exclusive.

I'm thinking it would be possible to do what you require (a combination of PWM and Phase angle control) but I'll have to think about how it would need coding. OT1 and OT2 both use PWM capable output pins on the Arduino so that's good. I'm also running low on memory so may have to disable other features (possible the standalone mode with inbuilt roast profile support) to allow the PWM and phase angle control to be active at the same time.

I understand the 'slow PWM' on OT1 can be increased to 3.9kHZ and can be set in user.h but I have not tested these faster frequencies.
// Time Base for slow PWM
// When NOT using PHASE_ANGLE_CONTROL option
// choose one of the following for the PWM time base for heater output on OT1 or OT2
//#define TIME_BASE pwmN4sec  // recommended for Hottop D which has mechanical relay
//#define TIME_BASE pwmN2sec
#define TIME_BASE pwmN1Hz  // recommended for most electric heaters controlled by standard SSR
//#define TIME_BASE pwmN2Hz
//#define TIME_BASE pwmN4Hz
//#define TIME_BASE pwmN8Hz 
//#define TIME_BASE 15 // should result in around 977 Hz (TODO these need testing)
//#define TIME_BASE 7 // approx. 1.95kHz
//#define TIME_BASE 6 // approx. 2.2kHz
//#define TIME_BASE 3 // approx. 3.9kHz
Have you done any Arduino coding before? Maybe it wouldn't be too difficult to do a few tweaks to get a customized version with the Phase Angle Control mode doing analogue out on OT1.
Does your sketch support full PID control and integration in Artisan v0.99? Specifically, not only the ability for Artisan to drive the SV PID setting every second to track designer profiles with Artisan (as opposed to using PID profiles stored in Arduino itself as was originally the case with aArtisanQ_PID ), but the ability of the READ command to return all metrics in the correct delimited format: T1-T4, SV, Power Duty, Fan Duty, Ambient, etc. so that Artisan can display these values in real-time on the graphs as extra devices
Yes, aArtisan_Q_PID in Artisan mode (set in user.h) should behave the same as aArtisan. It will send AT, ET, BT, and if the PID is on, also Power, Fan , SV.

Roastlogger and my Android app are also supported :)

User avatar
slickrock
Posts: 272
Joined: 13 years ago

#27: Post by slickrock »

greencardigan wrote: Yes, aArtisan_Q_PID in Artisan mode (set in user.h) should behave the same as aArtisan. It will send AT, ET, BT, and if the PID is on, also Power, Fan , SV.
Good to hear.
greencardigan wrote: Yes, at this stage they're mutually exclusive... Maybe it wouldn't be too difficult to do a few tweaks to get a customized version with the Phase Angle Control mode doing analogue out on OT1... Have you done any Arduino coding before?

Not enough to even be dangerous. I can read and understand the code though.

For folks with larger gas drum roasters (in my case the North '67) doing analog on OT1 (for proportional control) and Phase Angle on OT3 (for AC fan control) would be sweet to say the least. With my very grin-worthy experience using the aArtisan sketch with Artisan (0.9x versions) background profile tracking, stand-alone profile support in your Q_PID branch feels like an arcane feature now, and worthy of excising if helps at achieving this capability. BTW, this in no way diminishes your many contributions to get this stand-alone PID roasting support with TC4 back in the old days, not to mention AC fan support - many kudos to you.
07/11/1991, 08/21/2017, 04/08/2024, 08/12/2045

User avatar
greencardigan
Posts: 35
Joined: 13 years ago

#28: Post by greencardigan »

Thanks, but remember that Jim wrote most of smart sections of the code.

The built in profiling is used by some. It's great when you don't have a dedicated roasting computer or don't enjoy having chaff going into your laptop cooling vents. That said, I no longer use the feature myself so maybe it will eventually have to go.

I'm having trouble getting the PWM from OT1 while retaining phase angle control on OT2. But I can get it working on IO5. I believe there is an IO5 jumper on the TC4C boards (at least there is on version 1.33 in the repository). On a TC4 board you have access to the IO5 pin on the Arduino headers. Anyway, keep an eye on my aArtisanQ_PID thread on homeroasters if you're interested.

Post Reply