속도 제한기(Rate Limiter, RLIM)
이 정보는
CompactLogix
5370, ControlLogix
5570, Compact GuardLogix
5370, GuardLogix
5570, Compact GuardLogix
5380, CompactLogix
5380, ControlLogix
5580, GuardLogix
5580 및 ControlLogix 5590 컨트롤러에 적용됩니다.속도 제한기(Rate Limiter, RLIM) 명령어는 시간 경과에 따른 신호 변화량을 제한합니다.
사용 가능한 언어
래더 다이어그램
이 명령어는 래더 다이어그램 로직에서는 사용할 수 없습니다.
펑션 블록

구조화된 텍스트
RLIM(RLIM_tag);
피연산자
펑션 블록
피연산자 | 유형 | 형식 | 설명 |
RLIM 태그 | RATE_LIMITER | 구조 | RLIM 구조 |
RATE_LIMITER 구조
입력 매개 변수 | 데이터 유형 | 설명 |
EnableIn | BOOL | 활성화 입력. 거짓이면 명령어가 실행되지 않고 출력이 업데이트되지 않습니다. 기본값은 참입니다. |
입력 | REAL | 명령어의 아날로그 신호 입력. 유효값 = 모든 부동 소수점 수 기본값 = 0.0 |
IncRate | REAL | 초당 최대 출력 증가율 유효하지 않으면 명령어는 IncRate = 0.0를 설정하고 Status에 적절한 비트를 설정합니다. 유효값 = 0.0보다 모든 부동 소수점 수기본값 = 0.0 |
DecRate | REAL | 초당 최대 출력 감소율 유효하지 않으면 명령어는 DecRate = 0.0를 설정하고 Status에 적절한 비트를 설정합니다. 유효값 = 0.0보다 모든 부동 소수점 수기본값 = 0.0 |
ByPass | BOOL | 알고리즘 우회를 요청합니다. 참이면 Out = In입니다. 기본값은 거짓입니다. |
TimingMode | DINT | 타이밍 실행 모드 선택. 0 = 기간 모드 1 = 오버 샘플링 모드 2 = 실시간 샘플링 모드 유효값 = 0~2 기본값 = 0 |
OversampleDT | REAL | 오버 샘플링 모드에 대한 실행 시간. 값 = 0~4194.303초 기본값 = 0 |
RTSTime | DINT | 실시간 샘플링 모드에 대한 모듈 업데이트 기간 유효값 = 1~32,767ms 기본값 = 1 |
RTSTimeStamp | DINT | 실시간 샘플링 모드에 대한 모듈 타임 스탬프 값. 유효값 = 0~32,767ms 기본값 = 0 |
출력 매개 변수 | 데이터 유형 | 설명 |
EnableOut | BOOL | 명령어의 활성화 여부를 나타냅니다. Out이 오버플로되는 경우 거짓으로 해제됩니다. |
Out | REAL | 알고리즘의 계산된 출력. |
DeltaT | REAL | 업데이트 간 경과 시간. 컨트롤 알고리즘에서 프로세스 출력 계산에 사용되는 경과 시간(초)입니다. |
상태 | DINT | 펑션 블록의 상태. |
InstructFault (Status.0) | BOOL | 명령어에서 다음 실행 에러 중 하나가 감지됩니다. 마이너 또는 메이저 컨트롤러 에러가 아닙니다. 나머지 상태 비트를 확인하여 발생한 에러를 판단합니다. |
IncRateInv (Status.1) | BOOL | IncRate < 0. 명령어에서 0을 사용합니다. |
DecRateInv (Status.2) | BOOL | DecRate < 0. 명령어에서 0을 사용합니다. |
TimingModeInv (Status.27) | BOOL | 유효하지 않은 TimingMode 값. 타이밍 모드에 대한 자세한 내용은 함수 블록 속성을 참조하세요. |
RTSMissed (Status.28) | BOOL | 실시간 샘플링 모드에서만 사용. 다음의 경우 참으로 설정됨: ABS(DeltaT – RTSTime) > 1밀리초. |
RTSTimeInv (Status.29) | BOOL | 유효하지 않은 RTSTime 값. |
RTSTimeStampInv (Status.30) | BOOL | 유효하지 않은 RTSTimeStamp 값. |
DeltaTInv (Status.31) | BOOL | DeltaT <= 0 또는 DeltaT > 4194.303이라면 오버 샘플링 모드에서 참으로 설정됩니다. |
구조화된 텍스트
피연산자 | 유형 | 형식 | 설명 |
RLIM 태그 | RATE_LIMITER | 구조 | RLIM 구조 |
스트럭쳐드 텍스트 내 식의 구문에 대한 자세한 내용은 스트럭쳐드 텍스트 구문을 참조하십시오.
설명
RLIM 명령어는 초당 증가율과 감소율을 별도로 제시합니다. ByPass 입력으로 속도 제한을 멈추고 신호를 출력으로 바로 보낼 수 있습니다.
조건 | Action |
ByPass는 참임 | Out n = Inn Out n-1 = Inn |
ByPass는 거짓이고 DeltaT > 0 | ![]() |
연산 상태 플래그에 영향
아니요
주 폴트/부 폴트
기능이 활성화되고 오버플로가 감지되면 부 폴트가 발생합니다(폴트 유형: 4, 폴트 코드: 4).
실행
펑션 블록
조건/상태 | 수행한 작업 |
사전 스캔 | EnableIn 및 EnableOut 비트가 거짓으로 해제됩니다. |
Tag.EnableIn이 거짓임 | EnableIn 및 EnableOut 비트가 거짓으로 해제됩니다. |
Tag.EnableIn이 참임 | EnableIn 및 EnableOut 비트가 참으로 설정됩니다. 명령어가 실행됩니다. |
명령어 최초 실행 | N/A |
명령어 최초 스캔 | In의 값으로 Out을 초기화합니다. |
사후 스캔 | EnableIn 및 EnableOut 비트가 거짓으로 해제됩니다. |
구조화된 텍스트
조건/상태 | 수행한 작업 |
사전 스캔 | 펑션 블록 표의 사전 스캔을 참조하십시오. |
정상 실행 | 펑션 블록 표에서 Tag.EnableIn이 참임을 참조하십시오. |
사후 스캔 | 펑션 블록 표에서 사후 스캔을 참조하십시오. |
예
펑션 블록
RLIM 명령어는 IncRate로 In을 제한합니다. analog_input1이 IncRate값보다 큰 비율로 변하면 명령어는 In을 제한합니다. 이 명령어는 Out = In의 변화율 제한값을 설정합니다.
구조화된 텍스트
RLIM_01.In := analog_input1;
RLIM_01.IncRate := value;
RLIM(RLIM_01);
rate_limited := RLIM_01.Out;
의견을 작성 부탁드립니다.
모든 부동 소수점 수