gromit

RSLogix5000 Courses for structured text, SFC, and 5000 nuances

8 posts in this topic

I am very knowledgeable with RSLogix5 and RSLogix500, but want to become well-versed with RSLogix5000 advanced algorithms, strategies, and program types—(Ladder, Sequential Function Charts, Function Block Diag, Structured Text), and motion control, such as servo-controllers. . . mostly interested in structured text.

I’m also interested in the nuances of RSLogix5000, ControlLogix & CompactLogix regarding design, on-line programming, and off-line programming, etc.

Can anyone recommend a course or courses that cover this subject matter?

Thanks!

Share this post


Link to post
Share on other sites

Rockwell has courses.

The ST & SFC courses used to be 2-day courses each and usually taught the same week.

I don't know if that is still the case.

Function Block was a 3-day class

Motion Control/Servo involve multiple classes depending on expertise needed.

 

Share this post


Link to post
Share on other sites

Thanks McNasty. . . 

I failed to mention that Rockwell said that "The CCP154 has been move to PDO status; Private Delivery Only. Which means there are no open enrollment courses offered."

So, I was hoping that someone might know of another vendor who offers the course.

Share this post


Link to post
Share on other sites

Structured text isn't too hard to learn. Function block isn't hard either. I can't help with motion or SFC. I've never had the need to use either.

Making AOI's is a bit of a hill but even that isn't too bad with a little dedication and perseverance.

Do you have a specific application in mind?

Share this post


Link to post
Share on other sites

Mr. Lloyd, I was wanting to determine if I can follow structured text logic online or not in order to identify why particular outputs aren't activating and such.

Would also like to know if structured text logic can be modified online...and if so, does it follow the online edits protocol that ladder logic and FBE follows?

Share this post


Link to post
Share on other sites
Just now, gromit said:

Mr. Lloyd, I was wanting to determine if I can follow structured text logic online or not in order to identify why particular outputs aren't activating and such.

Would also like to know if structured text logic can be modified online...and if so, does it follow the online edits protocol that ladder logic and FBE follows?

You can tell the state of a tag in a structured text routine by hovering over it. There's probably another way, that just how I do it. You can edit structured text online as long as it's not in an AOI (add-On Instruction). I'm not sure what you mean by "does it follow the online edits protocol that ladder logic and FBE follows". If you mean you have to be careful then yes. Structured Text is just another form of language. It's not special, it just is.

Here's a few real world examples of ways that I use structured text

Mapping IO for a routine

// Motor Horsepower Calculations

// P-5010 Booster Pump Horsepower

P5010MHP.V := 480.0;
P5010MHP.A := Analog[48].PV;
P5010MHP.Pf := 0.97;
P5010MHP.Ef := 0.90;

In an AOI

// Assign constants

c1 := 3960.0; //Flow Rate Conversion Factor
c2 := 2.31; //Conversion Factor Water PSIG to FT
c3 := 0.7; //Conversion Factor Barrels an Hour to GPM

// Calculate Outputs

Hs := (Ps*c2)/Sg; //Suction Head Ft
Hd := (Pd*c2)/Sg; // Discharge Head Ft
PSID := (Pd-Ps); //Pump Differential Pressure
TDH := (PSID*c2)/Sg; //Total Dynamic Head

GPM := BPH*c3; //Gallons Per Minute

BHP := (GPM*TDH*Sg)/(c1*Eff); //Brake Horsepower
WHP := (GPM*TDH)/(c1); //Water Horsepower
 

You can get pretty elaborate with AOI creation

// Basic calculations for gas flow through an orifice plate

If Hw <= 0.0 THEN
    Hw := 0.00000000001;
    END_IF;

If Fpv <= 0.0 THEN
    Fpv := 1.0;
    END_IF;

B  := Bore / D;                // B ratio
B2 := B**2;                    // B squared
B3 := B**3;                    // B cubed
B4 := B**4;                    // B raised to the 4th power
Fpb   := 14.69595 / Pb;              // Pressure base factor
Ftb   := (459.67 + Tb) / 519.67;     // Terature base factor    
Fgr   := (1 / Sg)** 0.5;             // Flowing specific gravity factor
Ftf   := (519.67 / (459.67 + Tf)); // Flowing Terature factor
Psia  := Pf + Atm;
HwPf  := (Hw * Psia) ** 0.5;

// Determine values for Ko calculation

KoE1     := 830 - (5000 * B) + (9000 * B2) - (4200 * B3) + (530 / (D ** 0.5));
KoE      := Bore * KoE1;

Ke7T := B - 0.7;
Ke6T := (65 / (D **2)) + 3;
Ke5T := 0.5 - B;
Ke4T := 0.009 + (0.034 / D);
Ke3T := 0.07 + (0.05 / D) - B;
Ke2T := 0.4 * (( 1.6 - (1.0 / D))**5);
Ke1T := 0.5993 + (0.007/D) + (0.364 + 0.076 / (D ** 0.5)) * B4;


// Test for less than zero

    IF Ke7T < 0 THEN
    Ke7  := 0;       
   ELSE
    Ke7  := Ke7T ** 2.5;

END_IF;

    IF Ke6T < 0 THEN
    Ke6  := 0;       
   ELSE
    Ke6  := Ke6T;

END_IF;    

    IF Ke5T < 0 THEN
     Ke5  := 0;      
    ELSE
     Ke5  := Ke5T ** 1.5;

END_IF;

    IF Ke4T < 0 THEN
     Ke4  := 0;      
    ELSE
     Ke4  := Ke4T;

END_IF;

    IF Ke3T < 0 THEN
     Ke3  := 0;      
    ELSE
     Ke3  := Ke3T ** 2.5;

END_IF;

    IF Ke2T < 0 THEN
     Ke2  := 0;      
    ELSE
     Ke2  := Ke2T;                   

END_IF;

    IF Ke1T < 0 THEN
     Ke1  := 0;      
    ELSE
     Ke1  := Ke1T;
     
END_IF;     

K2K3   := Ke2 * Ke3;
K4K5   := Ke4 * Ke5;
K6K7   := Ke6 * Ke7;

Ke     := Ke1 + K2K3 - K4K5 + K6K7;

//Calculate Ko

Ko    := Ke / (1 + ((15 * KoE) / (Bore * 1000000)));

// Fb Calculation

Fb    := 338.178 * ( Bore ** 2 ) * Ko;


// Calculate Expansion Factor

Y1a   := (0.41 + (0.35 * B4));

Y1b   := Hw / ( 27.707 * Psia);   

Y1    := 1.0 - Y1a * (Y1b / k); // Upstream Expansion Factor

Y2    := Y1 * ( 1.0 / (1.0 - Y1b)) ** 0.5; // Downstream Expansion Factor

// Calculate Reynolds Number Factor

Fr1   := KoE1 / (12835 * 0.6453);
Fr    := 1 + (Fr1 / (Hw * Psia)) ** 0.5 ; // Reynolds Number Factor

// Calculate C'

Cprime := Fpb * Ftb * Fgr * Ftf * Fb * Fr * Y2 * Fpv; 

// Calculate Molecular Weight

MW := 28.964 * Sg; // Gas Molecular Weight

// Calculate Flow Rates

SCFH   := HwPf * Cprime; // Flow in SCFH    

MSCFD  := (SCFH * 24) / 1000;    // Flow in MSCFD

MMSCFD := (SCFH * 24) / 1000000;     // Flow in MMSCFD

LBHR   := (SCFH * MW) / 379.49;    // Flow in #/HR

Or Calculate Surge Margin for a Centrifugal Compressor

PsA := Ps + ATM; // Suction Pressure PSIA

Qscfh := (Q * 1000000.0) / 24.0; // Convert MMSCFD to SCFH
LbHr := (Qscfh * MW)/ 379.49; //Flow #/HR
w := LbHr / 60.0; // Flow Lb/Min
SCFM := Qscfh / 60.0; // Inlet Cubic Feet per Minute
ICFM := (w * 1545.0 * Tsr * Zs) / (MW * PsA * 144.0); // Inlet Cubic Feet per Minute

Tavg := (Ts + Td) / 2.0; // Average Temperature °F
Tsr := Ts + 459.67; // Suction Temperature °R
Tr := Tavg + 459.67; // Average Temperature °R
Zavg := (Zs + Zd) / 2.0; // Average Z Factor

Qr := ICFM / Qd; // Flow Relative to Design
Hr := H / Hd;  // Flow Relative to Design
Nr := N / Nd; // Speed Relative to Design
SM := (ICFM / SL) * 100.0; // Surge Margin Flow / Head

H1 := 1545.0 / MW;
H2 := (k - 1.0) / k;
H3 := (Zavg * Tsr) / H2;
Pr := (Pd + ATM) / (Ps + ATM); // Compression Ratio
H4 := (Pr ** H2) - 1.0;
H  := H1 * H3 * H4; // Adiabatic Head ft-lb/lb

SL := (H + B)/ M; // Surge Line

SMr := ((SM /(MaxE - MinE))* (MaxR - MinR)) + MinR; // Scale Surge Margin for Analog Output

Share this post


Link to post
Share on other sites
On 3/27/2017 at 10:06 PM, gromit said:

Mr. Lloyd, I was wanting to determine if I can follow structured text logic online or not in order to identify why particular outputs aren't activating and such.

Would also like to know if structured text logic can be modified online...and if so, does it follow the online edits protocol that ladder logic and FBE follows?

If you mean in terms of..Edit Rung, Sheet, etc.....make edits......Accept.....Test......Assemble   the answer is yes.

Share this post


Link to post
Share on other sites

That is clear.

Thanks!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now