사용자 도구

사이트 도구

English

codesysmanual:caseinstruction

CASE 명령문

중첩 된 IF 문과 비교하여 CASE를 사용할 때의 장점은 하나의 동일한 조건 테스트과 관련된 다양한 결과를 일목요연하게 정리할 수 있다는 것입니다. 사용법은 다음과 같습니다.

CASE 조건식 OF1:              명령문_A;2:              명령문_B;3,4,6:    명령문_C;7..12:       명령문_D;
  :
  값N:              명령문_X;
ELSE
  다른명령문;
END_CASE;
  • <조건식> 값이 <값1>이면 명령문_A가 실행됩니다. <값2>이면 명령문_B이 실행됩니다.
  • <조건식>은 단일 변수또는 산술식을 써도 됩니다. (이때 결과는 정수값이 됩니다. 실수 아님! 주의요망)
  • 각 결과에 대해 여러 명령을 실행할 수 있습니다.
  • <조건식>이 나열된 <값x>와 일치하는게 하나도 없으면 ELSE 뒤에 오는 <다른명령문>이 실행됩니다.

다음은 다양한 사용예입니다.

CASE %MW1 OF
  1: %QX2.0 := TRUE;
  2: %QX2.1 := TRUE:
  3..5: %QX2.2 := TRUE;
END_CASE;
CASE A ‐ B OF
  4:Out := TRUE;
  7:IF B>0 THEN Result := %MW5;
    ELSE Result := %MW4;
    END_IF;
END_CASE;
RE(clk := PhotoSwitch, Q => New_item); (* A product is in place *)
 
IF New_item THEN
  CASE Color OF                        (* Checks color *)
         Green: Piston1 := TRUE;
         Green_count := Green_count + 1;
  Red :  Piston2 := TRUE;
         Red_count := Red_count + 1;
  Blue : Piston3 := TRUE;
         Blue_count := Blue_count + 1;
  ELSE
         Error_count := Error_count + 1;
  END_CASE;
END_IF;

CODESYS

codesysmanual/caseinstruction.txt · 마지막으로 수정됨: 2020/12/09 01:02 저자 Comfile Technology