Who is here? 1 guest(s)
 Print Thread
TC4ESP
zamunda
Hello,

Progress!
Just reconnected the setup per USB to my computer, opened Artisan and now the SSR responds to the slider!

What I see now:
- When setting slider to '0', SSR stops blinking: good!
- When moving the slider, value changes but blinking rate on SSR remains the same: good!
- When setting the slider value > 80 the value showed at the right remains '80', any idea why?

And why is the ambient value showing '25'?

Thanks again!
zamunda attached the following images:
bbb.png aaa_3.jpg

########################
### A lot can happen over coffee ###
########################
 
zamunda
Hello,

Quote

renatoa wrote:

The duty should vary, i.e. the ratio between on/off, the period is fixed, one second.
Small changes are unnoticeable visually, you should have a large value jump, like 25-75% to see the change in the on/off ratio.


You're right, large jumps makes evident difference in duties...

However, I noticed that the heater-value at the right varies but does not pass '80' and does not go below '40', it only reacts if slider > 40 and < 80. Is this a setting?

Thanks!
Edited by zamunda on 10/29/2021 1:26 PM
########################
### A lot can happen over coffee ###
########################
 
renatoa
Yes, MIN/MAX_OT1 in user.h

Time for some TC4 lessons Grin
 
miyankizu
Hello friends is this okay for ad8495 ?

US $6.92 44? Off | Amplifier Module Thermocouple Type K Electronic Component Board AD8495 ARMZ
https://a.aliexpress.com/_vqm44E
 
zamunda
Hello,

The thermocouples arrived and so I started soldering the pins, was my first experience with soldering but went out right I think.

Connected this set-up to Artisan and heater control is working as before...

However, BT and ET still show "-0.0" values (only connected one TC).

Do I have to recompile since I am using K-type? Or could there be any other reason temp is not showing yet?
zamunda attached the following images:
aaa.jpeg screenshot_2021-11-01_at_202954.jpg

########################
### A lot can happen over coffee ###
########################
 
zamunda
Hello,

Found this in user.h

////////////////////
// Thermocouple Input Options
// TC type is selectable by input channel
// permissable options: typeT, typeK, typeJ
#define TC_TYPE1 tcLinear
//#define TC_TYPE2 typeK
//#define TC_TYPE3 ...
//#define TC_TYPE4 ...

..guess this should be read:
#define TC_TYPE1 typeK
//#define TC_TYPE2 typeK
//#define TC_TYPE3 ...
//#define TC_TYPE4 ...

...if using CH1????
########################
### A lot can happen over coffee ###
########################
 
renatoa
typeK is for the original TC4 design, where you connect the TC(s) directly to ADC input(s).
For the TC amp used in TC4ESP you have to use tcLinear option.
This option assume there is a hardware, like a TC dedicated amp, who performs the scale linearization, because the type K TC has a S shaped scale.
Also, that hardware performs cold junction compensation, which for original TC4 is done by software.
The result of the signal processing above is a voltage that shows directly the temperature for the whole scale, 5mV for each Celsius degree, voltage that needs just to be measured, and no further processing needed. The most immediate advantage is speed, only 70 ms needed for a measurement, compared to 300 ms for TC4.
Edited by renatoa on 11/02/2021 4:41 AM
 
zamunda
Hello Renatoa,

Quote


typeK is for the original TC4 design, where you connect the TC(s) directly to ADC input(s).
For the TC amp used in TC4ESP you have to use tcLinear option.
This option assume there is a hardware, like a TC dedicated amp, who performs the scale linearization, because the type K TC has a S shaped scale.
Also, that hardware performs cold junction compensation, which for original TC4 is done by software.
The result of the signal processing above is a voltage that shows directly the temperature for the whole scale, 5mV for each Celsius degree, voltage that needs just to be measured, and no further processing needed. The most immediate advantage is speed, only 70 ms needed for a measurement, compared to 300 ms for TC4.


Thanks for your reply...so for the AD8495, I have to use "tcLinear"? and connect 1 cable from "out" to CH1+ according the documentation (https://github.com/renatoa/TC4-shield/blob/master/hardware/TC4ESP/TC4ESP-SSR_bb.jpg)?

That is what I tested but did not gave me any results within Artisan...

Thanks for any hints...

Regards
########################
### A lot can happen over coffee ###
########################
 
renatoa
Not only ONE cable... you have to connect all of them, that drawing is just for the signal paths, powering the modules is implied.
Also, please note for the AD module only, there is need for a custom connection to ADC, how to and reason explained here:
https://github.co...warning.md
Edited by renatoa on 11/02/2021 4:40 AM
 
zamunda

Quote

renatoa wrote:

Not only ONE cable... you have to connect all of them, that drawing is just for the signal paths, powering the modules is implied.
Also, please note for the AD module only, there is need for a custom connection to ADC, how to and reason explained here.


OK, you're right, you mean this info I guess:
https://github.com/renatoa/TC4-shield/blob/master/hardware/TC4ESP/AD849x%20connecting%20warning.md
https://github.com/renatoa/TC4-shield/blob/master/hardware/TC4ESP/Amp-ADC%20connection.jpg

I will look into it and try to get it worked.

Thanks!
########################
### A lot can happen over coffee ###
########################
 
Will2
I apologize for not communicating with you often enough.
I have many other responsibilities.
In April 2021, I did several experiments with TC4ESP.
Not everything worked for me, I don't remember exactly.

up.picr.de/42383303pu.jpg
Viliam
 
Will2
I should add information to the previous post.

I haven't tried since April.
At that time, if I remember correctly, ESP did not communicate with the Artisan roaster scope application. Although through the same computer through the serial monitor the response was correct.
Today I tried connecting from another laptop, it works.

I am also aware that I cannot use potentiometers, ie analog control. For me, button operation is not very intuitive.
If I need to decide quickly, I never know which button and how long to press. Maybe the reason is that I have my habits of using TC4 and fluidbed roaster.
Then I still miss that I can't use phase angle control for the fan. As you know, I use a fluid motor for a vacuum cleaner. Never mind, I'll use "PWM 2A AC Light Dimmer LED 50Hz 60Hz" instead.

What I really like about TC4ESP and I consider it a great advantage is the ability to move the points for cold end measurements closer to the k-type terminals.

On the contrary, I do not need Wifi or Bluetooth from ESP.

So I would combine the benefits of TC4ESP and old TC4 by using newer boards, maybe different Arduino, with higher memory and the possibility of analog inputs.

So that I keep Brad's aArtisanQ_PID as much as possible and it would be enough to upload only one sketch to Arduino, then switch my buttons to 3 modes: stand alone, artisan, android.
I haven't roasted coffee with TC4ESP yet, if I have enough time, I'll either continue to try roasting TC4ESP + fluidbed roaster.
Viliam
 
renatoa
You can use analog pots, if connecting them to CH3/CH4 of ADC, supposedly unused for temperatures, and activate this alternate use of CH3/4 with ANLG1ADC3 / ANLG2ADC4 defines.
The pots used for this purpose should be trimmed to output 0-2V for the whole rotating range, corresponding to 0-100 values of HTR/FAN.
Combined usage of buttons/pot is possible, for example buttons for heater with a pot for the fan, or viceversa. Just activate the ch3 or ch4 only.
Edited by renatoa on 11/06/2021 4:48 PM
 
renatoa
A notice for the both setups shown these days: you are stressing too much the usb plug on the ESP boards, imo.
You risk broke of the PCB and traces exfoliating.
Please ensure a support for the cable weight as close to the board as possible.
 
CamMor89
Does this work with ESP32?
 
renatoa
Not yet completely, some functions missing.
 
Will2
Today I tried connecting tc4ESp and ARTISAN from laptop.
The sliders and buttons work, I used the same settings as for tc4, it was necessary to change OT2 to IO3, according to the LCD 4x20 TC4ESP commands received correctly. But part of the code for fast PWM output on D4 (IO2) or D5 (IO14) seems to be missing, so the fan does not work, even though the display shows fan values in% (I use AC fan for FB). Slow PWM on D0 (IO16) works normally.
Furthermore, TC4ESp does not seem to send Arduino TC4 78 channels to ARTISAN channels, so TC4 SV reading is missing, Ambient value is displayed as 25, I don't know where.
Is it related to the various sketches that can be uploaded?
Viliam
 
renatoa

Quote

Will2 wrote:
...
part of the code for fast PWM output on D4 (IO2) or D5 (IO14) seems to be missing
...

It is there and working, already used it for a popper, code here:
https://github.co...6.cpp#L312


Quote

Will2 wrote:

Furthermore, TC4ESp does not seem to send Arduino TC4 78 channels to ARTISAN channels, so TC4 SV reading is missing,
Ambient value is displayed as 25, I don't know where.
Is it related to the various sketches that can be uploaded?


The packet structure is from original TC4 code and not modified.
Check code here: https://github.co...D.ino#L476
Setpoint value seems added to the packet only when PID is working.
You can verify this is true visualizing packet format in Artisan serial log, and check values count. Should be as bellow:
AT, t1, t2, t3, t4, HTR, FAN, SV (or nothing for no PID active).

AT is hardcoded internally as 25C, because is not used in TC4ESP, cold junction compensation being done in hardware.

Which various sketches ? There is only one source in github.
Edited by renatoa on 11/12/2021 7:42 AM
 
Will2

Quote


It is there and working, already used it for a popper, code here:
https://github.co...6.cpp#L312


Thank you Renato,
these files haven't been published in april, I'll try.




Quote


Which various sketches ? There is only one source in github.


I thought AlternativeUI, how is it possible to run only that one?
Viliam
 
renatoa
Not published yet
 
Will2
I used new libraries, now:

- works fast pwm on D4 (IO2), AC fan connected to "PWM 2A AC Light Dimmer LED 50Hz 60Hz"
- slow pwm on D0 (IO16) does not work, so now we will look in the code on which the pin will be
- ambient value shows the value 0.0
Viliam
 
Will2

Quote

Will2 wrote:
...
- slow pwm on D0 (IO16) does not work, so now we will look in the code on which the pin will be
...


should be on D5!
Viliam
 
renatoa
You are right, the libraries are out of sync with main code.
For obscure reasons, too long to explain, the heater output pin have to be defined twice, in two places, here:
https://github.co...M16.h#L138
and here:
https://github.co...ser.h#L183

Please, make them point both to same pin, either D0 or D5, as you like, all the others are busy.
The initial version was on D0, but later I found that this pin is used in the flashing process, so if your heater-SSR circuit is plugged at the moment of flashing a sketch, you can have heater burning, without fan ! which is not desirable for fluid bed machines.
For this reason moved OT1/HTR to D5 and left D0 unused.

The complete actual pins usage is below:


/*
D0(IO16) - unused, no interrupt, no PWM or I2C support; HIGH at boot used to wake up from deep sleep
D1(IO5)  - I2C, SCL
D2(IO4)  - I2C, SDA
D3(IO0)  - unused, pulled up, connected to FLASH button, boot fails if pulled LOW
D4(IO2)  - OT2/IO3, pulled up, output only
D5(IO14) - OT1, heater control
D6(IO12) - ZCD Int
D7(IO13) - BT Rx
D8(IO15) - BT Tx
Rx(IO3) - USB Rx
Tx(IO1) - USB Tx
A0       - ADC input, for buttons pad
*/

Edited by renatoa on 11/12/2021 1:38 PM
 
Will2

Quote

renatoa wrote:

...
For obscure reasons, too long to explain, the heater output pin have to be defined twice, in two places, here:
...


OK it works.
Heats to D5 even if the output pin is not defined twice in 2 places. Now I need to understand how the buttons pad works.
It will be difficult for Fluidbed to use the preset roasting philosophy.

Specify once again (16.11.2021):
The heater works on D5, no matter how it is defined in user.h (it doesn't matter if D5, or D0, or 14, or 16)
ARTISAN automatic steering does not work.
Manual control from ARTISAN works.

There are 2 different libraries on the GitHub repository, but also 2 different files:


aArtisanESP 1_0_1 (bottons do not works, accepts commands, does not respond to READ command):
https://github.co...sanESP.ino



aArtisanESP 1_0 (bottons works - not well, receives commands, responds to READ command):
https://github.co...sanESP.zip

up.picr.de/42453043ui.jpg
Edited by Will2 on 11/16/2021 8:56 AM
Viliam
 
renatoa

Quote

The heater works on D5, no matter how it is defined in user.h (it doesn't matter if D5, or D0, or 14, or 16)

Yes, true for slow PWM only. For ICC (CONFIG_PAC2) is used the pin defined in user.h.
These are both TC4 legacy code, same behavior there too.


Quote

ARTISAN automatic steering does not work.

Please detail.
You means profile following using PID ? Yes, it works, with TC4 PID, not used Artisan PID.

Will check what is different in the archives above and come back.

Quote

It will be difficult for Fluidbed to use the preset roasting philosophy.

What you mean ? Using board embedded profiles ?
The attached graph is of a roast done today on a FB, following a board profile defined as below:


int16_t time[50] = {  0, 59, 91, 120, 150, 179, 209, 241, 272, 300, 329, 359, 387, 413, 445, 470, 484, 0 };
int16_t temp[50] = { 25, 70, 92, 110, 126, 140, 152, 163, 172, 179, 185, 190, 194, 197, 200, 202, 203, 0 };


You can define 9 such custom profiles in board memory, and playback them.
The master profile was been designed in Artisan designer, then exported as .csv, to use the data points, picking enough points to describe the profile.
renatoa attached the following image:
1611_fb_sim.png

Edited by renatoa on 11/16/2021 9:33 AM
 
Jump to Forum: