이 페이지는 기계 번역을 사용하여 번역되었습니다. 영어 원문을 보려면 여기를 클릭하십시오.
관계 연산자와 논리 연산자
이 예제는 Simulink® 블록, Stateflow® 차트 및 MATLAB® 함수 블록을 사용하여 관계 연산자와 논리 연산자를 구현하는 방법을 보여줍니다.
관계 연산자 또는 논리 연산자를 위한 모델 패턴 — Simulink 블록
모델에 논리 연산을 포함하려면 논리 및 비트 연산 라이브러리의 Logical Operator 블록을 사용하십시오.
1. 예제 모델 ex_data_type_SL을 엽니다.

Logical Operator 블록은 모델 내에서 OR 연산을 수행합니다. 연산자를 변경하려면 블록을 더블 클릭한 다음, 연산자 필드를 메뉴에 있는 연산자 중 하나로 설정하십시오.
Logical Operator 블록을 Relational Operator 블록으로 대체하면 관계 연산자를 구현할 수 있습니다.
2. 모델을 구축하고 코드를 생성하려면 Ctrl+B를 누르십시오.
논리 연산자 OR을 구현하는 코드는 ex_logical_SL.c 파일 내의 ex_logical_SL_step 함수에 있습니다.
/* Exported block signals */
boolean_T u1; /* '<Root>/u1' */
boolean_T u2; /* '<Root>/u2' */
boolean_T y1; /* '<Root>/y1' */
/* Model step function */
void ex_logical_SL_step(void)
{
/* Outport: '<Root>/y1' incorporates:
* Inport: '<Root>/u1'
* Inport: '<Root>/u2'
* Logic: '<Root>/Logical Operator'
*/
y1 = (u1 || u2);
}
관계 연산자 및 논리 연산자를 위한 모델 패턴 — Stateflow 차트
1. 예제 모델 ex_data_type_SF를 엽니다.

Stateflow 차트에서, 관계 연산 또는 논리 연산 작업은 한 접합점에서 다른 접합점으로의 전이에서 이루어집니다. 관계 진술은 전환을 조건부로 허용하기 위한 조건을 명시합니다. 이 경우, 문장은 대괄호 안에 들어갑니다.
2. 모델을 구축하고 코드를 생성하려면 Ctrl+B를 누르십시오.
논리 연산자 OR을 구현하는 코드는 ex_logical_SF.c 파일 내의 ex_logical_SF_step 함수에 있습니다.
/* Exported block signals */
boolean_T u1; /* '<Root>/u1' */
boolean_T u2; /* '<Root>/u2' */
boolean_T y1; /* '<Root>/Logical Operator' */
/* Model step function */
void ex_logical_SF_step(void)
{
/* Chart: '<Root>/Logical Operator' incorporates:
* Inport: '<Root>/u1'
* Inport: '<Root>/u2'
*/
y1 = (u1 || u2);
}
관계 연산자 및 논리 연산자를 위한 모델링 패턴 — MATLAB 함수 블록
이 예제는 관계 연산자를 사용하여 생성된 코드에 연산자를 포함시키는 MATLAB 함수 블록의 방법을 보여줍니다.
1. 예제 모델 ex_logical_ML을 엽니다.

2. MATLAB 함수 블록에는 이 함수가 포함되어 있습니다:
function y1 = fcn(u1, u2) y1 = u1 > u2; end
3. 모델을 구축하고 코드를 생성하려면 Ctrl+B를 누르십시오.
코드 생성은 ex_data_type_ML.c에 표시됩니다:
/* Exported block signals */
real_T u1; /* '<Root>/u1' */
real_T u2; /* '<Root>/u2' */
boolean_T y; /* '<Root>/MATLAB Function' */
/* Model step function */
void ex_logical_ML_step(void)
{
/* MATLAB Function: '<Root>/MATLAB Function' incorporates:
* Inport: '<Root>/u1'
* Inport: '<Root>/u2'
*/
y = (u1 > u2);
}