이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
Check logical expressions in If blocks (If 블록에 있는 논리식 검사)
검사 ID: mathworks.maab.na_0003
지침: na_0003: If 블록 사용법
설명
논리 표현식에서 부적절한 기본 표현식 구성이 있는지 If 블록을 확인하세요.
If 블록에서 기본 표현식이 복잡한 인스턴스를 식별합니다.
기본 표현식은 다음과 같이 정의됩니다.
입력
상수
상수 파라미터
0 또는
<,>,>=,<=,==,~=,|,&, 및~이외의 연산자를 포함하지 않는 괄호로 묶인 표현식
기본 표현의 예는 다음과 같습니다.
u15K(
u1>0)(
u1<=G)(
u1>U2)(~
u1)
허용되는 논리 표현식 예외의 예는 다음과 같습니다.
u1 | u2(
(u1 > 0) & (u1 < 20)(u1 > 0) & (u2 < u3)(u1 > 0) & (~u2)
이 표는 허용되지 않는 논리 표현의 예를 보여줍니다.
| 기본 표현식 | 근거 |
|---|---|
| 기본 표현식이 너무 많습니다. |
| 기본 표현식 내에 허용되지 않는 연산자가 있습니다. |
| 입력이 아닌 기본 표현식이 너무 많습니다. |
| 기본 표현식 내에 허용되지 않는 연산자가 있습니다. |
예외
다음 두 조건이 모두 충족되면 논리 표현식에는 두 개 이상의 기본 표현식이 포함될 수 있습니다.
기본 표현식이 모두 입력입니다.
논리 연산자가 한 가지 유형만 존재합니다.
허용되는 예외의 예는 다음과 같습니다.
u1 | u2 | u3 | u4 | u5u1 & u2 & u3 & u4
간단한 "If" 표현식
지침 na_0003의 문자적 해석에 따르면, 표현식 u1 < u2는 위반입니다. 그러나 해당 표현식은 일반적으로 사용되는 "If" 표현식 템플릿(<기본 표현식><연산자><기본 표현식>)을 따릅니다. 따라서 논리 연산자를 사용하지 않고 관계 연산자가 하나만 있는 경우, 표현식은 지침 na_0003을 충족하고 u1 < u2는 위반이 아닙니다.
이 검사에는 Simulink® Check™ 라이선스가 필요합니다.
파라미터화 검사
MAB 모델링 지침은 하위 ID를 하나만 제공하기 때문에 이 검사에는 하위 검사가 포함되지 않습니다.
참고로 NA-MAAB 및 JMAAB 모델링 표준 기관에서 사용하도록 권장하는 MAB 지침 하위 ID는 다음과 같습니다.
NA-MAAB — 권장 사항 없음
JMAAB — a
결과 및 권장 조치
| 상태 | 권장 조치 |
|---|---|
| 논리 표현식이 상수, 상수 파라미터, 입력으로 구성된 두 개 이상의 기본 표현식을 포함합니다. | 다음 중 하나를 고려해 보세요.
|
| 논리 표현식에 여러 관계 연산자를 사용하는 두 개 이상의 괄호로 묶인 표현식이 포함되어 있습니다. | 다음 중 하나를 고려해 보세요.
|
괄호로 묶인 표현식에 0 또는 <, >, >=, <=, ==, ~=, |, &, 또는 ~ 이외의 관계 연산자가 포함되어 있습니다. | 다음 중 하나를 고려해 보세요.
|
기능 및 제한 사항
<,>,>=,<=,==,~=,|,&및~중 하나만 사용하는 논리 표현식에는 플래그를 지정하지 않습니다.라이브러리 모델에서 실행됩니다.
라이브러리에 연결된 블록의 콘텐츠를 분석합니다. 기본적으로 입력 파라미터 Follow links는
on로 설정됩니다.마스크 처리된 서브시스템의 내용을 분석합니다. 기본적으로 입력 파라미터 마스크 내부 탐색는
그래픽로 설정됩니다.