×
INTELLIGENT WORK FORUMS
FOR ENGINEERING PROFESSIONALS

Log In

Come Join Us!

Are you an
Engineering professional?
Join Eng-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Eng-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

Jobs

SLC 500

SLC 500

SLC 500

(OP)
I'm working on an SLC 500 based combustion control system. My fuel gas valve moves much quicker than the air control valve due to the size of the FCV on the FD fan. When increasing TIC output I end up with CO exceeding 30ppm for 30 seconds. There is no 'cross-linking' in the program for 'lead-lag' control, so I'm looking at alterantive methods of slowing the fuel gas valve when the TIC output increases.
Does anyone have any proposals.
I'm thinking of directing the output word to a PID instruction then to the output.
The other way is to use the 'RMP' instruction, but this looks complicated

Thanks

RE: SLC 500

If I understand you correctly, you want to maitain a co level of 300 PPM. This tells me that you have some device to measure the co level. If this device outputs a current or voltage that is proportional to the co level that is being sensed and you know the mathematical, perhaps ratiometric relationship between the flow rate of fuel induced and the co produced, you can use an analog signal fed to a servo valve to control the flow of fuel.

best regards, PLCSAVVY

RE: SLC 500

The RMP instruction should be the right one for your application. Maybe there are program examples on ABs website.

Otherwise, program your own "ramp" function, like this:

(psudocode)

IF intermediatevalue1 > outputvalue THEN
  (IF timetick THEN
    (intermediatevalue2:=intermediatevalue2 + rampvalue
     IF intermediatevalue2 > intermediatevalue1 THEN
      (intermediatevalue2 := intermediatevalue1)
    )
  )

IF intermediatevalue1 < outputvalue THEN
  (IF timetick THEN
    (intermediatevalue2:=intermediatevalue2 - rampvalue
     IF intermediatevalue2 < intermediatevalue1 THEN
      (intermediatevalue2 := intermediatevalue1)
    )
  )

outputvalue := intermediatevalue2

RE: SLC 500

I think you're saying that you don't have feedback signals for air flow and fuel flow, but are individually controlling both of these actuators from the output of a single PID loop.

Often, this is done with a single output (called "firing rate") from the controller, and the fuel and air valves are mechanically linked to a single actuator. The linkage creates the proper relationship between fuel valve position and air damper position for each firing rate.

I would consider developing a piecewise linear curve for proper fuel valve position and air damper position at various firing rates. This might be done by ramping firing up manually, and tweaking each position to get an acceptable CO level. Then add some logic that calculates those positions on the fly based on the firing rate output from your PID.

RE: SLC 500

(OP)
I have a ratio table linking TIC output to individual valves within the PLC. The problem is the physical size difference in the FD air valve & FG valves. The FD air valve is 32 inch, the gas valve is 4 inch. When the TIC output increases the gas valve moves much faster to set point than the air valve leading to CO excursions above 30ppm. What I'm looking for is a good method of employing a 'ramp' on the gas valve only to prevent this.
I started programming Friday, the first attempt wasn't quite right but I think I'm closer now.
Thanks for all your help

RE: SLC 500

You can use high and low signal selectors for the lead lag functions to make air increase before fuel and remove fuel before air.  You should find material on the web for this.

John

RE: SLC 500

It really sounds like you need to ramp the output to limit the rate of change, so both valves move at the same speed.

I would write the code much as JesperMP has suggested, although he has not clearly defined the variables.

I would put it simpler. This is my standard ramping logic.

You need to set up a clock pulse, say 1 second.
Define your Maximum Rate of change per second RATE
Each second check
If your required position is greater than your output, then add Rate to your output.
If your required position is less than your output, then subtract Rate from your output.
If your required position is within RATE to your output, set OUTPUT to the required position.

RE: SLC 500

(OP)
Thanks all, I solved the problem last week using a solution similar to Killemall.

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Eng-Tips Forums free from inappropriate posts.
The Eng-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Eng-Tips forums is a member-only feature.

Click Here to join Eng-Tips and talk with other members!


Resources