Artisan and Phidgets control of AC heater using SSR

Discuss roast levels and profiles for espresso, equipment for roasting coffee.
STG

#1: Post by STG »

I've got OUT1100, VINT hub, and an AC SSR.

I want to control an AC heating element. I figured I could do a pulse to control duty cycle using a slider / PWM command but I'm not entirely sure that's possible. At least not that I can see with the commands available.

Has anyone had any success with this?

User avatar
CarefreeBuzzBuzz

#2: Post by CarefreeBuzzBuzz »

I suggest you really study the Artisan Blog and Release Notes and then communicate with the Artisan Mailing List. The Blog is linked on the main page, and mailing list is linked in the Quick Start Guide. You might also get answers here.

What I can tell you is there are many controls and commands possible. I am not versed in your particular desired set up.

Michael
Artisan.Plus User-
Artisan Quick Start Guide
http://bit.ly/ArtisanQuickStart

STG (original poster)

#3: Post by STG (original poster) »

Thanks for your reply. I have read through that but I did not see anything really. Pulse() and delay() are the closest but I need to somehow repeat those over and over again to achieve what I need.

Marrow

#4: Post by Marrow »

I have success with this but needed a special proportional control SSR.

Artisan with the Phidget Out 1100 and a non-zero crossing SSR can only ever turn the element on or off, there is no way to program a slider or buttons to turn the ssr on for x time off for x time, though it may be possible to use the PID function this would be automatic and wouldn't be of any use if you want to roast manually but with computer control. Artisan will not allow you to alter the duty cycle of the Phidget out 1100, it will only allow you to PWM (which will be 0-5v) in other words it either triggers the SSR with 5v or it doesn't do it at all.

I initially ran into trouble using a standard non zero crossing ssr. These will only turn on or off at every zero cross, turning the power on for only half a cycle results in DC, which might not be a problem itself but it's not ideal. To use a zero crossing SSR you need to trigger it with voltage, you can rapidly turn the SSR on and off a few times a second but it's not ideal. While you can't use the artisan controls and the phidget out 1100 to do this, you can use a 5v output pin. I tested this method with a simple python script and altered the duty cycle of the Out 1100 between 0 and 1 (testing even 0.01) which worked but not very well at all, I tried using it on a heating element and the resolution of adjustment was poor - it was basically full power, 50% or off (according to an attached power monitor). I tested it on a light and could see it rapidly flickering rather than dimming. It was possible to program buttons in Artisan to 'call' these phython scripts but the problem was the Phidget Out 1100 was being hogged by Artisan so the scripts couldn't run alongside artisan, I assume it would work if I were using a 5v out pin though....

Long story short I did get it working with an SSR like this: http://www.crydom.com/en/products/catal ... ontrol.pdf

Now in artisan I can use the PWM command with the Phidget Out 1100 to trigger the SSR between 0-5v and it will proportionally control AC applied to the heater (even though the Out 1100 is a digital I/O it is PWM enabled and it is 5v out so it works meaning the more expensive 12v out Phidgets aren't necessary). If you look on ebay there are a few proportional SSRs available in the USA that are much cheaper than the one I bought.

STG (original poster)

#5: Post by STG (original poster) replying to Marrow »

This is extremely helpful, thank you! I'm a mechanical not an electrical guy. It became readily apparent that I just don't know enough about SSRs and electronics in general and what I was trying to do isn't possible with the equipment I had. Like you said if Artisan had some sort of duty cycle output, it may be possible. But not as it sits.

I've since moved on from trying to control the heat gun; I bought a Huky. But I'm definitely interested in controlling its fan through artisan. There are PWM DC fans I know of. I'll maybe explore that route. Anyway, thanks again for your reply.

User avatar
MaKoMo

#6: Post by MaKoMo »

Marrow wrote:Artisan will not allow you to alter the duty cycle of the Phidget out 1100, it will only allow you to PWM (which will be 0-5v) in other words it either triggers the SSR with 5v or it doesn't do it at all.
The above sentence is confusing. The OUT1100 implements the PWM interface according to the devices documentation and thus Artisan allows to alter its duty cycle via the
PWM Command: out(<channel>,<value>[,<sn>])
. However, the OUT1100 is not a voltage output device that can output a specific voltage (other Phidget modules like the OUT1000 can do this).

ira
Team HB

#7: Post by ira »

If you have a standard SSR that switches at zero crossing you need to set the PWM frequency to something like 1 cycle per 2 or more seconds. If you one of the ones that turns on and off instantly you can switch faster but there is not reason. I think I PWM mine with a 10 second cycle time. Heaters are slow enough it makes no difference.

Ira

User avatar
MaKoMo

#8: Post by MaKoMo replying to ira »

The OUT1100 has a default PWM frequency of 15,625.0 Hz which can be lowered to 100.0Hz and increased to 20,000.0Hz with the next Artisan version and the latest Phidget OUT1100 firmware 120. Still this is a fast PWM signal and might not be appropriate for this application.

Marrow

#9: Post by Marrow »

MaKoMo wrote:The above sentence is confusing. The OUT1100 implements the PWM interface according to the devices documentation and thus Artisan allows to alter its duty cycle via the
PWM Command: out(<channel>,<value>[,<sn>])
. However, the OUT1100 is not a voltage output device that can output a specific voltage (other Phidget modules like the OUT1000 can do this).
The Out 1100 is 5v digital output that is PWM enabled. You can't alter the voltage but you can average the voltage. According to Phidgets documentation: "A DutyCycle of 0.5 translates to an output that is high half the time, which results in an average output voltage of (output voltage x 0.5)". So by using the PWM slider to alter the duty cycle you effectively adjust the voltage between 0 and 5v, which doesn't help when you have an SSR that switches at 5v.

I could find no way of using the PWM slider to effectively turn the SSR on/off rapidly multiples times a second, and I couldn't find a way of doing it over a longer time frame either (e.g 10 seconds). The only success I've had is with a proportional control SSR that will vary AC output relative to a 0-5v DC input, indicating the PWM command in atisan does average the voltage between 0-5v as the Phidgets documentation would suggest.

User avatar
MaKoMo

#10: Post by MaKoMo replying to Marrow »

Artisan is just driving the Phidget module via its API. Artisan is not averaging anything here. The PWM signal produced by the module is a fast PWM one. Minimum frequency is 100Hz as I noted above. So there is no way to generate a slow PWM signal that alternates only a few times per seconds. The Yoctopuce PWM Tx module is able to produce a slow PWM signal down to just a few modulations per second.