Ace Furnace Consulting Ltd


Ace Furnace

The charcoal combustion controller works on a fixed supply of fuel (all the charcoal has to be burned) and controls furnace outlet temperature by modulation of the excess air rate. The set points of the two slave controllers are offset such that the char combustion system takes over from the oil burner which then switches off once sufficient charcoal is being produced.


A future enhancement will be to add oxygen trim control to this system necessitating another analogue loop and an oxygen analyser in the flue.


With a master / slave pair of temperature loops where the master control variable is the slave set point temperature it is generally required for the slave set point not to be less than the master set point. A way needed to be found to create a moving floor to the control variable of the master loop. This turned out to be very easy in the OCS. A PID block takes up 14 x 16 bit registers, for example from %R700 to %R714. The CV floor is held in the ninth register, in this example %R708. To achieve the moving CV floor it is only necessary to write a “MOVE” command to transfer the contents of the loop SP register to the CV floor location.


When tuning master / slave, never put integral terms in both loops; the best method is to tune the master as a PI loop and the slave as P only or PD. In some circumstances it may be appropriate for the master to be PID, in which case the slave should normally be P only. There are reasons for this that are outside the scope of this article.


The pressure control loops take signals from 4-20mA bidirectional transducers. As in both cases control is at or close to atmospheric pressure, a suitable range either side of the control point is needed. Sensors were sourced from Omega and provide an output of 12mA at atmospheric pressure and a range of -1.25 mbar for 4mA and 1.25 mbar for 20mA.


The pressure control loops have to provide sensitive and fast acting control of their respective fans, whilst also being stable. The challenge here comes down to front end filtering of the incoming signal as well as accurate tuning. The mechanical solution is to have a fine orifice to damp the sensor; however, the raw gas contains fine particulate and condensable matter that makes an orifice in the impulse line a liability. A better solution is a digital filter on the input.


The ladder for the input filter can be seen here. Note that the call function is not shown, this comprises a positive edge coil (P) triggered by the %S004 bit and a contact driven by the (P) coil is used to call the routine. This is essential as the %S004 bit is on for 50ms and off for 50ms.


Each time the filter is called, a new raw value is entered into the 70 word shift register and the oldest value is discarded. There is then a nested loop that adds up all the values using an indirectly addressed move (IMV) that steps through the shift register until the “avcount” value reaches the settable filter time. The loop then exits after updating the pressure value. The routine provides a constant rolling average pressure selectable from 0.1 s to 7 seconds.


The digital filter combined with an accurately commissioned loop provides stable and responsive control without the danger of a blocked orifice in the impulse line.


From an engineer’s point of view, the Horner OCS controller and Cscape software provides a convenient and cost effective control platform, a particular advantage being seamless integration between the touch screen graphics configuration and ladder logic programming.