FC1000: PARA_CNTRL

[hit  <- on your browser to return]

 

 

 

IF #Start THEN

    IF "DI OUT P01".Support."VC641 bit_Ms_act" AND "DI OUT P01".Support."VC641 bit_S1_act" THEN

        #tmp_diff_between_m_s1 := "DI OUT P01".Master.SSI_Position - "DI OUT P01".Slave1.SSI_Position;

        #tmp_diff_between_m_s1_enable := true;

    END_;

    IF "DI OUT P01".Support."VC641 bit_Ms_act" AND "DI OUT P01".Support."VC641 bit_S2_act" THEN

        #tmp_diff_between_m_s2 := "DI OUT P01".Master.SSI_Position - "DI OUT P01".Slave2.SSI_Position;

        #tmp_diff_between_m_s2_enable := true;

    END_IF;

    IF "DI OUT P01".Support."VC641 bit_Ms_act" AND "DI OUT P01".Support."VC641 bit_S3_act" THEN

        #tmp_diff_between_m_s3 := "DI OUT P01".Master.SSI_Position - "DI OUT P01".Slave3.SSI_Position;

        #tmp_diff_between_m_s3_enable := true;

    END_IF;

    IF "DI OUT P01".Support."VC641 bit_S1_act" AND "DI OUT P01".Support."VC641 bit_S2_act" THEN

        #tmp_diff_between_s1_s2 := "DI OUT P01".Slave1.SSI_Position - "DI OUT P01".Slave2.SSI_Position;

        #tmp_diff_between_s1_s2_enable := true;

    END_IF;

    IF "DI OUT P01".Support."VC641 bit_S1_act" AND "DI OUT P01".Support."VC641 bit_S3_act" THEN

        #tmp_diff_between_s1_s3 := "DI OUT P01".Slave1.SSI_Position - "DI OUT P01".Slave3.SSI_Position;

        #tmp_diff_between_s1_s3_enable := true;

    END_IF;

    IF "DI OUT P01".Support."VC641 bit_S3_act" AND "DI OUT P01".Support."VC641 bit_S2_act" THEN

        #tmp_diff_between_s3_s2 := "DI OUT P01".Slave3.SSI_Position - "DI OUT P01".Slave2.SSI_Position;

        #tmp_diff_between_s3_s2_enable := true;

    END_IF;

    IF  #tmp_diff_between_m_s1_enable OR

        #tmp_diff_between_m_s2_enable OR

        #tmp_diff_between_m_s3_enable OR

        #tmp_diff_between_s1_s2_enable OR

        #tmp_diff_between_s1_s3_enable OR

        #tmp_diff_between_s3_s2_enable THEN

        #CMD_Start_Valid:=true;

    END_IF;

        "DI OUT P01".MaDa.ActTolerance:= SQRT(SQR(#tmp_diff_between_m_s1) +

                                              SQR(#tmp_diff_between_m_s2) +

                                              SQR(#tmp_diff_between_m_s3) +

                                              SQR(#tmp_diff_between_s1_s2) +

                                              SQR(#tmp_diff_between_s1_s3) +

                                              SQR(#tmp_diff_between_s3_s2));

        #Offset_OverReached_or_Disabled := "DI OUT P01".MaDa.ActTolerance > #Max_Tolerance OR NOT CMD_Start_Valid;

END_IF;

 

[hit  <- on your browser to return]