F171_PulseOutput_Jog_Positioning

JOG 동작 및 위치 지정

위치 제어 트리거 입력이 TRUE로 변환된 후 펄스의 특정 번호가 출력됩니다. 목표 값에 도달하고 펄스 출력이 정지하기 전에 감속이 수행됩니다. 이 채널의 제어 플래그가 FALSE이고 실행 조건이 TRUE이면 지정된 채널에서 펄스가 출력됩니다.

파라미터

입력

s_DUT_DataTable(DUT)

데이터 테이블이 포함된 영역의 시작 어드레스

F171_PulseOutput_Jog_Positioning_Type0_DUT 또는 F171_PulseOutput_Jog_Positioning_Type1_DUT
n_iPulseOutputChannel(10진수 정수)

펄스 출력 채널:0–3

주석

두 가지 다른 작동 모드 중 하나를 선택합니다.

  • 형식 0: 특정 목표 속도 범위 내에서 속도를 변경할 수 있습니다.

  • 형식 1: 위치 제어 트리거 입력이 TRUE로 전환되면 목표 속도를 변경할 수 있습니다.

펄스 출력 특정

  1.  (1) 초기 및 최종 속도
  2.  (2) 타겟 속도
  3.  (3) 목표값
  4.  (4) 가속 시간
  5.  (5) 감속 시간
  6.  (6) 실행 조건
  7.  (7) 위치 제어 트리거 입력
  8.  (8) 펄스 출력 제어 플래그
  • 펄스 출력 주파수가 특정 가속 시간 및 특정 감속 시간에 따라 변경됩니다.

  • 타겟 속도와 초기 속도 간의 차이는 가속 램프 기울기로 판별됩니다.

  • 타겟 속도와 최종 속도 간의 차이는 감속 램프 기울기로 판별됩니다.

  • 위치 제어 트리거 입력이 TRUE로 전환되면 펄스가 계속 출력된 후 감속되어 목표 값에 도달하면 정지합니다.

펄스 출력 중지

다음 동작 중 하나로 펄스 출력을 정지할 수 있습니다.

  • 위치 제어 트리거를 TRUE로 전환(목표값에 도달하고 감속이 완료될 때까지 펄스 출력이 계속됨): 위치 제어 트리거 입력을 TRUE로 전환하거나 펄스 출력 제어 코드를 저장하는 데이터 레지스터의 비트 6FALSE에서 TRUE로 설정하면 위치 제어 트리거를 시작할 수 있습니다(예: MOVE(16#140, sys_wHscOrPulseControlCode);).

  • 감속 정지 요청:감속 정지를 수행하려면 펄스 출력 제어 코드를 저장하는 데이터 레지스터의 비트 5FALSE 에서 TRUE로 설정합니다(예: MOVE(16#120, sys_wHscOrPulseControlCode);).가속 중에 감속 정지가 요청되면 목표 속도에서 동일한 감속 경사로 감속이 수행됩니다.

  • 비상정지 실행: 비상 정지를 수행하려면 펄스 출력 제어 코드를 저장하는 데이터 레지스터의 비트 3FALSE에서 TRUE로 설정합니다(예: MOVE(16#108, sys_wHscOrPulseControlCode);).

주석

정지되면 프로그램에서 사용한 채널의 모든 펄스 출력 펑션이 비활성화됩니다.

JOG 동작 형식 0

다음과 같은 사전 정의된 DUT 사용: 2023-03-16F171_PulseOutput_Jog_Positioning_Type0_DUT

DUT에서 F168_PulseOutput_Home_DUT 파라미터를 지정할 수 있습니다.

  • 제어 코드

  • 초기 및 최종 속도

  • 타겟 속도

  • 가속 시간

  • 감속 시간

  • 목표값

펄스 출력 중에 목표 시간을 변경할 수 있습니다.펄스 출력 중에 목표 속도 변경

목표 속도 변경 안 함:

목표 속도 변경함:

  1. 초기 및 최종 속도

  2. 타겟 속도

  3. 목표값

  4. 가속 시간

  5. 감속 시간

  6. 실행 조건

  7. 위치 제어 트리거 입력

  8. 펄스 출력 제어 플래그

  • 속도를 변경하려면 실행 조건을 TRUE로 전환합니다.

  • 목표 속도가 50kHz보다 큰 값으로 설정되면 50kHz로 보정됩니다.

  • 경과 값이 가속 중에 가속 금지 영역 시작 위치(예: sys_diPulseChannel0AccelerationForbiddenAreaStartingPosition)를 교차하면 가속을 수행할 수 없습니다.

  • 감속 속도는 보정된 최종 속도 이하일 수 없습니다.

  • 명령이 인터럽트 프로그램에서 실행되면 목표 속도를 변경할 수 없습니다.

JOG 동작 형식 1

다음과 같은 사전 정의된 DUT 사용: 2023-03-16F171_PulseOutput_Jog_Positioning_Type1_DUT

DUT에서 F168_PulseOutput_Home_DUT 파라미터를 지정할 수 있습니다.

  • 제어 코드

  • 초기 및 최종 속도

  • 타겟 속도1

  • 가속 시간

  • 타겟 속도2

  • 변경 시간

  • 감속 시간

  • 목표값

목표 속도 1< 목표 속도 2:

목표 속도 1> 목표 속도 2:

  1. 초기 및 최종 속도

  2. 타겟 속도

  3. 타겟 속도

  4. 목표값

  5. 가속 시간

  6. 변경 시간

  7. 감속 시간

  8. 실행 조건

  9. 위치 제어 트리거 입력

위치 제어 트리거 입력이 TRUE로 전환된 후 펄스 출력 주파수는 변경 시간을 사용하여 변경되어 목표 시간 2가 가속 또는 감속됩니다. 목표 시간을 추가로 변경할 수 없습니다. 가속 중에 위치 제어 트리거 입력이 켜지면 무시됩니다.

일반 프로그래밍 정보

  • 이 명령을 사용하여 프로그램 온라인 편집을 시작하자마자(즉, RUN 모드에서) 펄스 출력이 정지합니다.

  • 주 프로그램과 인터럽트 프로그램 모두에 같은 채널 코드가 포함된 경우, 두 프로그램을 동시에 실행하지 마십시오.

  • 펄스 출력 명령이 실행되고 펄스가 출력 중이면 해당 채널의 펄스 출력 제어 플래그(예: sys_bIsPulseChannel0Active)는 TRUE입니다. 다른 펄스 출력 명령이 실행되면 이 플래그는 더 이상 TRUE가 아닙니다.

  • 시스템 레지스터 402에서 위치 제어 트리거 입력(X0, X1, X2, X3)을 설정합니다.

  • 위치 제어 트리거 입력의 경우, 상승 엣지(TRUE)만 감지됩니다.

  • 감속 정지가 요청되면 이 명령을 시작할 수 없습니다.

  • 동작 정지 후 다시 시작하려면 실행 조건을 FALSE로 전환한 후 다시 TRUE로 전환해 주십시오.

  • 위치결정 프로그램에 강제 정지 옵션을 통합하는 것이 좋습니다.

  • 고속 카운터 제어 플래그 또는 펄스 출력 제어 플래그 상태는 스캔이 실행 중인 동안에 변경될 수 있습니다. 예를 들어, 수신된 바이트 수를 읽으면 스캔 1회에 다른 상태가 두 개 이상 있을 수 있습니다.

POU 헤더

이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다.모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.

	VAR
		Start: BOOL:=FALSE;
		dutJog: F171_PulseOutput_Jog_Positioning_Type0_DUT:=dwControlCode := 16#010,
diInitialAndFinalSpeed := 1000,
diTargetSpeed := 7000,
diAccelerationTime := 300,
diDecelerationTime := 450,
diTargetValue := 10000;
			(*Digit3: 0=Pulse output
Digit2: 1=Fixed
Digit0: 0=CW/CCW2*)
		diInitialAndFinalSpeed: DINT:=1000;
		@'': @'';
	END_VAR

LD 본문

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,E_MOVE!,Instance,13,0,19,4,,?DEN?D?AENO?C);
B(B_VARIN,,diInitialAndFinalSpeed,11,2,13,4,);
B(B_VAROUT,,dutJog.diInitialAndFinalSpeed,19,2,21,4,);
B(B_CONTACT,,Start,6,1,8,3,);
L(1,2,6,2);
L(8,2,13,2);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,F171_PulseOutput_Jog_Positioning!,Instance,8,0,24,5,,?DEN?Ds_dutDataTable?Hn_iPulseOutputChannel?AENO);
B(B_VARIN,,dutJog,6,2,8,4,);
B(B_VARIN,,0,6,3,8,5,);
B(B_CONTACT,,Start,2,1,4,3,);
L(1,2,2,2);
L(4,2,8,2);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

ST 본문

IF (Start) then
    dutJog.diInitialAndFinalSpeed:=diInitialAndFinalSpeed;
END_IF;
IF (Start) then
  F171_PulseOutput_Jog_Positioning(s_dutDataTable := dutJog, 0);
END_IF;

최종 수정일: 2023-03-16이 페이지에 대한 피드백Panasonic 직통 전화