ramping analog output

golferjam

Member
Join Date
Dec 2007
Location
Tallapoosa GA
Posts
2
help, trying to ramp analog output 1746-no8i one channels sends pressure valve for hydraulic pressure I want to increase pressure at a given rate. I have looked at the manual and can set configurations, but does pid have to be used for a simple ramp up? anyone have some ladder logic examples
 
Depending on the processor and firmware level you are dealing with there is a ramp instruction (RMP). I have never used it but it may be an option.

Here is a pseudo-code concept for a ramp if the RMP doesn't do the trick for you.



IF (Target > RampedValue)

RampedValue = RampedValue + RampRate
IF (RampedValue > Target)

RampedValue = Target

END_IF

END_IF

IF (Target < RampedValue )

RampedValue = RampedValue - RampRate
IF ( RampedValue < Target)

RampedValue = Target

END_IF

END_IF



This is just a linear ramp but you can change anything at any time and it won't cause it any trouble.

Keith
 
If I understand correctly, I have done this by simply scaling a timer and feeding the acc value into the analog output. For example...start a TON when you want to start ramping. The timer might go from zero to 100,000 which could be scaled zero to 100% with the analog output raw values. The timer PRE is the actual length of time you want the ramp to take from 0 to 100. Hope this is clearer than mud.
 
ramping issue

golferjam said:
help, trying to ramp analog output 1746-no8i one channels sends pressure valve for hydraulic pressure I want to increase pressure at a given rate. I have looked at the manual and can set configurations, but does pid have to be used for a simple ramp up? anyone have some ladder logic examples

the RMP function did work with sending the result to the analog output. it also has different ramps besides linear.

thanks for the idea
 
bluenoser337 said:
If I understand correctly, I have done this by simply scaling a timer...

If you use this method, be sure to clamp the timer.ACC at the timer.PRE (or the result).

The timer ACC can be a few ms greater than the PRE resulting in a final ramp value greater than 100% of what you intend.

I use this frequently...

Example:
(Insert ramp start logic here) -> TON T4:0
DIV
...Source A: T4:0.acc
...Source B: T4:0.pre
...Destination: F8:0
GRT
...Source A: F8:0
...Source B: 1
......MOV Source: 1 Destination: F8:0

Then F8:0 becomes a multiplier that will ramp from 0.0 to 1.0 over a period determined by T4:0.pre

Insert a GRT T4:0.acc T4:0.acc -> MOV T4:0.pre T4:0.acc before the divide...Or: After the divide, clamp F8:0 to 1.0.

If you know the final value you are ramping toward and it does not need to "self correct", then you should not need PID.

Just multiply F8:0 by your final raw value and send it to the card.

On the other hand PID may provide useful features too.

Paul
 
Last edited:
y=mx+c
Y=analog output
m=Rate of increase or decrease
x=time interval !!
c=offset if any

Given the time frame in which the required output
should be achieved m can be calculated
Or
Given the m, time interval will differ.

Will this wont solve the problem?
 

Similar Topics

Hello I have a small problem i have done program for hydraulic unit So one regulation valve is controlled in 4-20 mA to extend or retract a...
Replies
6
Views
2,470
Hi, I am a PCL nubie! I have only a little PLC programming experience (3 PLCs mostly Boolean stuff) and have bitten more than I can chew this...
Replies
8
Views
3,929
I am kinda stuck and need some assistance. I am working on a project that will control two pump. The PLC controls the speed of the pumps via an...
Replies
3
Views
1,934
The application I am working on calls for the analog out (10vdc) be ramped (variable). So, if the program calls for 350 tons of pressure from 0...
Replies
5
Views
2,081
Hi All, I came up with this for ramping the PWM pin on the micro 820. I'm new to ladder logic so I am not sure if this will even work? Once...
Replies
6
Views
350
Back
Top Bottom