You are on page 1of 5

LP TRNH S7-300 DNG NGN NG SCL

Ngn ng SCL (STRUCTURED CONTROL LANGUAGE) l cch lp trnh ca Step 7 bn cnh cc cch lp trnh LAD, STL, FBD, GRAPH. Cch vit chng trnh SCL da theo Pascal , thng ng dng vit cc thut ton phc tp , cc hm ton hc, qun l d liu v cng thc pha ch, ti u qu trnh. Chng trnh SCL t trong folder Sources

Bm chut phi vo Sources, chn Insert New Object, SCL Source

Nguyn c Thnh

Bm chut vo menu Insert thm cc khun mu chng trnh c sn vo

Th t lp trnh l lp trnh cc khi b gi trc sau mi n khi gi

Nguyn c Thnh

Sau y l template cho cc khi FUNCTION FCxxx : INT VAR_INPUT //Input Variables END_VAR VAR_OUTPUT //Output Variables END_VAR VAR_INOUT END_VAR VAR_TEMP // Temporary Variables END_VAR // Statement Section ; FCxxx := 100; END_FUNCTION FUNCTION_BLOCK FBxxx VAR_INPUT //Input Variables END_VAR

Nguyn c Thnh

VAR_OUTPUT //Output Variables END_VAR VAR_IN_OUT END_VAR VAR_TEMP // Temporary Variables END_VAR VAR // Static Variables END_VAR // Statement Section ; END_FUNCTION_BLOCK DATA_BLOCK DBxxx FBxxx // // Block Comment... // BEGIN END_DATA_BLOCK ORGANIZATION_BLOCK OBxxx VAR_TEMP // Reserved info : ARRAY[0..19] OF BYTE; // Temporary Variables END_VAR // Statement ; END_ORGANIZATION_BLOCK V d khi hm v hm
FUNCTION FC11: REAL VAR_INPUT x1: REAL ; x2: REAL ; x3: REAL ; x4: REAL ; END_VAR VAR_OUTPUT Q2: REAL ; END_VAR BEGIN // Return value from function

Nguyn c Thnh

FC11:= SQRT( (x2 - x1)**2 + (x4 - x3) **2 ) ; Q2:= x1 ; END_FUNCTION FUNCTION_BLOCK FB11 VAR_INPUT V1 : INT := 7 ; END_VAR VAR_OUTPUT V2 : REAL ; END_VAR VAR FX1, FX2, FY1, FY2 : REAL ; END_VAR BEGIN IF V1 = 7 THEN FX1 := 1.5 ; FX2 := 2.3 ; FY1 := 3.1 ; FY2 := 5.4 ; //Call function FC11 and supply parameters //using the static variables. V2 := FC11 (X1:= FX1, X2 := FX2, Y1 := FY1, Y2 := FY2) ; END_IF ; END_FUNCTION_BLOCK

Sau khi bin tp chng trnh, ta save ri compile, cc khi s xut hin trong

folder Blocks

Nguyn c Thnh

You might also like