JOG 동작
이 명령은 JOG 동작에 사용됩니다. 위치 제어 트리거 입력이 TRUE로 변환된 후 펄스의 특정 번호가 출력됩니다. 목표 값에 도달하고 펄스 출력이 정지하기 전에 감속이 수행됩니다. 이 채널의 제어 플래그가 FALSE이고 실행 조건이 TRUE이면 지정된 채널에서 펄스가 출력됩니다.
입력
데이터 테이블이 포함된 영역의 시작 어드레스
FP-S, FP-X:
F172_PulseOutput_Jog_Type0_DUT_0
F172_PulseOutput_Jog_Type1_DUT_0
FP0R:
F172_PulseOutput_Jog_Type0_DUT_1
F172_PulseOutput_Jog_Type1_DUT_1
펄스 출력 채널:
FP-XH C30 T/P: 0~3
FP-XH C60 T/P: 0~5
FP-S: 0,2
FP-X R: 0,1
FP-XC14T: 0,1,2
FP-X C30T/C60T: 0,1,2,3
FP0R: 0,1,2,3
다음과 같은 사전 정의된 DUT 사용: F172_PulseOutput_Jog_Type0_DUT_0 (목표 값이 없는 모드) 또는F172_PulseOutput_Jog_Type1_DUT_0 (목표 값이 정지 모드와 일치)
DUT에서 F168_PulseOutput_Home_DUT 파라미터를 지정할 수 있습니다.펄스 출력 특정
스캔마다 주파수와 대상 값을 변경할 수 있습니다. 하지만 명령 실행 중에 제어 코드를 변경할 수 없습니다.두 가지 다른 작동 모드 중 하나를 선택합니다.
목표 값이 없는 모드(형식 0):
목표 값이 정지 모드와 일치(형식 1):
목표 값에 도달하면 출력이 정지합니다. 제어 모드에서 이 모드를 설정하고 DUT에서 목표 값(절대 값)을 지정합니다.(FPSV1.4 이상, FP-X)
일반 프로그래밍 정보
이 명령을 사용하여 프로그램 온라인 편집을 시작하자마자(즉, RUN 모드에서) 펄스 출력이 정지합니다.
주 프로그램과 인터럽트 프로그램 모두에 같은 채널 코드가 포함된 경우, 두 프로그램을 동시에 실행하지 마십시오.
FP-X: 펄스 출력 명령이 실행되고 펄스가 출력 중이면 해당 채널의 펄스 출력 제어 플래그(예: sys_bIsPulseChannel0Active)는 TRUE입니다. 다른 펄스 출력 명령이 실행되면 이 플래그는 더 이상 TRUE가 아닙니다.
FPS: 고속 카운터 제어 플래그(예: sys_bIsHscChannel0ControlActive)와 펄스 출력 제어 플래그(예: sys_bIsPulseChannel0Active)가 같은 특수 내부 플래그 번호(예: R903A)에 할당됩니다. 따라서 고속 카운터 명령 또는 펄스 출력 명이 실행되면 사용된 채널의 고속 카운터 제어 플래그(예: sys_bIsHscChannel0ControlActive)와 펄스 출력 제어 플래그(예: sys_bIsPulseChannel0Active)는 TRUE입니다. 다른 고속 카운터 명령 또는 펄스 출력 명령이 실행되면 이 플래그는 더 이상 TRUE가 아닙니다.
FPS: 원 보간 제어 명령 F176_PulseOutput_Center를 실행하면 원 보간 제어 플래그(sys_bIsCircularInterpolationActive)가 TRUE로 설정됩니다. 이 플래그 상태는 목표 값에 도달할 때까지 유지됩니다(실행 조건이 TRUE가 아니더라도). 이 시간 동안에는 다른 펄스 출력 명령을 실행할 수 없습니다.
FPS: 펄스 출력 채널에 할당된 모든 고속 카운터를 시스템 레지스터의 "미사용"으로 설정합니다.
FP-X: 시스템 레지스터에서 원하는 채널의 "펄스 출력"을 설정합니다.
명령 실행이 유효하지 않은 주파수 값으로 시작되면 연산 에러가 발생합니다. 명령 실행 중에 주파수가 유효하지 않은 값으로 변경되면 주파수 출력은 허용 범위의 최소 또는 최대 값 중 하나로 조정됩니다.
위치결정 프로그램에 강제 정지 옵션을 통합하는 것이 좋습니다.
다음과 같은 사전 정의된 DUT 사용: F172_PulseOutput_Jog_Type0_DUT_1(목표 값이 없는 모드) 또는 F172_PulseOutput_Jog_Type1_DUT_1(목표 값이 정지 모드와 일치)
DUT에서 F168_PulseOutput_Home_DUT 파라미터를 지정할 수 있습니다.
펄스 출력 특정
두 가지 다른 작동 모드 중 하나를 선택합니다.
목표 값이 없는 모드(형식 0):
실행 조건이 TRUE인 동안에는 DUT에서의 조건 설정에 따라 펄스가 출력됩니다.실행 조건이 FALSE일 때마다 감속 정지가 시작됩니다.
목표 값이 정지 모드와 일치(형식 1):
목표 값에 도달하면 출력이 정지합니다. 제어 모드에서 이 모드를 설정하고 DUT에서 목표 값(절대 값)을 지정합니다.목표 값에 도달하면 감속 정지가 수행됩니다. 특정 감속 시간 내로 감속이 수행됩니다.
펄스 출력 중에 목표 속도 변경
감속 속도는 보정된 최종 속도 이하일 수 없습니다.
일반 프로그래밍 정보
이 명령을 사용하여 프로그램 온라인 편집을 시작하자마자(즉, RUN 모드에서) 펄스 출력이 정지합니다.
주 프로그램과 인터럽트 프로그램 모두에 같은 채널 코드가 포함된 경우, 두 프로그램을 동시에 실행하지 마십시오.
위치결정 프로그램에 강제 정지 옵션을 통합하는 것이 좋습니다.
이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.
VAR_EXTERNAL
bActivateJog: BOOL:=FALSE;
END_VAR
VAR
dutJog: F172_PulseOutput_Jog_Type0_DUT_0:=dwControlCode := 16#1110;
(*Control code:
Digit 3: 1=Duty ratio 25%
Digit 2: 1=Frequency range 48Hz-100kHz
Digit 1: 1=Incremental counting
Digit 0: 0=CW*)
diSpeed: DINT:=300;
@'': @'';
END_VAR
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 4 ;
NETWORK_BODY
B(B_CONTACT,,bActivateJog,4,1,6,3,);
B(B_F,E_MOVE!,Instance,16,0,22,4,,?DEN?D?AENO?C);
B(B_VARIN,,diSpeed,14,2,16,4,);
B(B_VAROUT,,dutJog.diSpeed,22,2,24,4,);
L(1,2,4,2);
L(6,2,16,2);
L(1,0,1,4);
END_NETWORK_BODY
END_NET_WORK
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_CONTACT,,bActivateJog,4,1,6,3,);
B(B_VARIN,,dutJog,14,2,16,4,);
B(B_VARIN,,0,14,3,16,5,);
B(B_F,F172_PulseOutput_Jog!,Instance,16,0,29,5,,?DEN?Ds_dutDataTable?Hn_iPulseOutputChannel?AENO);
L(1,2,4,2);
L(6,2,16,2);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
(bActivateJog) then
dutJog.diSpeed:=diSpeed;
END_IF;
IF (bActivateJog) then
F172_PulseOutput_Jog(s_dutDataTable := dutJog, 0);
END_IF;