
"MW300" := "IW0";
"MW300" := ROR(IN := "MW300", N := 1);
%DB2.DBB0 := "MB300";
//
"MW302" := "IW1";
"MB302":=ROL(IN := "MB302", N := 2);
"MW302" := ROL(IN := "MW302", N := 3);
%DB2.DBB1 :="MB303";
"COUNT1" := 0;
"COUNT11" := 0;
"COUNT2" := 0;
"COUNT22" := 0;
FOR #I := 0 TO 7 DO
IF "SS".SS[#I] = 0 THEN
"COUNT1" := "COUNT1" + 1;
ELSE
GOTO ONE;
END_IF;
END_FOR;
ONE:
FOR #I := 0 TO 7 DO
IF "SS".SS[7 - #I] = 0 THEN
"COUNT11" := "COUNT11" + 1;
ELSE
GOTO TWO;
END_IF;
END_FOR;
TWO:
FOR #I := 8 TO 15 DO
IF "SS".SS[#I] = 0 THEN
"COUNT2" := "COUNT2" + 1;
ELSE
GOTO THREE;
END_IF;
END_FOR;
THREE:
FOR #I := 8 TO 15 DO
IF "SS".SS[23 - #I] = 0 THEN
"COUNT22" := "COUNT22" + 1;
ELSE
GOTO FOUR;
END_IF;
END_FOR;
FOUR:
IF "正反转1" = 1 THEN
"CHA1" := INT_TO_REAL("COUNT1" - "COUNT11" ) / 30;
ELSE
"CHA1" := INT_TO_REAL( "COUNT22"-"COUNT2" ) / 30;
END_IF;
"MOTOR V" := INT_TO_WORD("SET V" + REAL_TO_INT("SET V" * "CHA1"));
"MOTOR2 V" := INT_TO_WORD("SET V" - REAL_TO_INT("SET V" * "CHA1"));