채널 사양이 있는 펄스 출력 명령(PWM 출력)
이 명령은 지정된 DUT에 따라 펄스 폭 변조 출력 신호를 전달합니다. 지정된 채널의 제어 플래그가 FALSE이고 실행 조건이 TRUE이면 이 채널에서 펄스가 출력됩니다.
입력
데이터 테이블이 포함된 영역의 시작 어드레스
펄스 출력 채널:
FP-XH C30 T/P: 0~3
FP-XH C60 T/P: 0~5
FPS: 0,2
FP-X, FP-XH Relay: 0,1
FP-X, FP-XH 16k Transistor: 0~2
FP0R, FP0H, FP-X, FP-XH 32 Transistor: 0~3
FP-XH 32k Transistor: 0~5
다음과 같은 사전 정의된 DUT 사용: F173_PulseOutput_PWM_Hz_DUT
DUT에서 F168_PulseOutput_Home_DUT 파라미터를 지정할 수 있습니다.
대략적인 주파수
듀티(펄스 기간 및 주기)
구형파의 펄스 지속 시간과 주기 간의 비율 차이입니다. 펄스 지속 시간이 1ms이고 펄스 주기가 4ms인 펄스 열의 경우, 듀티는 0,25 또는 25%입니다.
특히 듀티가 최소 또는 최대 값과 가까우면 부하 전압과 부하 전류에 따라 특정 듀티와 다를 수 있습니다.
듀티는 스캔할 때마다 변경될 수 있습니다.
명령 실행 중에 주파수 정수 K를 변경할 수 없습니다. 변경하면 주파수에는 효과가 없지만 듀티 해상도에는 효과가 있습니다.
.
명령 실행 중에 주파수가 허용 범위를 벗어난 값으로 변경되면 해상도는 100 으로 조정됩니다. 명령 실행이 시작되면 연산 에러가 표시되지 않습니다.
명령 실행 중에 듀티가 100% 이상으로 변경되면 주파수는 특정 해상도에서의 최대 값으로 조정됩니다. 명령 실행이 시작되면 연산 에러가 표시되지 않습니다.
.
FP0H, FP0R, FP-XH, FP-X: 펄스 출력 명령이 실행되고 펄스가 출력 중이면 해당 채널의 펄스 출력 제어 플래그(예: sys_bIsPulseChannel0Active)는 TRUE입니다. 다른 펄스 출력 명령이 실행되면 이 플래그는 더 이상 TRUE가 아닙니다.
FP0H, FP0R, FP-XH, FP-X: 시스템 레지스터에서 원하는 채널의 [PWM 출력] 을 설정합니다.
이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.
VAR
dutPWM1: F173_PulseOutput_PWM_Hz_DUT:=diFrequency_Hz:=1000,iDuty:=50;
bRunPWM: BOOL:=FALSE;
END_VAR
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_CONTACT,,bRunPWM,6,1,8,3,);
B(B_F,F173_PulseOutput_PWM_Hz!,,15,0,28,5,,?DEN?Ds_dutDataTable?Hn_iPulseOutputChannel?AENO);
B(B_VARIN,,dutPWM1,13,2,15,4,);
B(B_VARIN,,2,13,3,15,5,);
L(1,0,1,5);
L(1,2,6,2);
L(8,2,15,2);
END_NETWORK_BODY
END_NET_WORK
END_BODY
If (bRunPWM) Then
F173_PulseOutput_PWM_Hz(s_dutDataTable := dutPWM1, n_iPulseOutputChannel := 2);
END_IF;