고속 카운터와 펄스 출력 명령을 FP0, FP-e, FPS, FP-X, FP0R 등의 FP 시리즈 PLC에서 사용할 수 있습니다.
Control FPWIN Pro에는 고속 카운터 명령을 사용하는 프로그래밍에 대한 두 가지 개념이 있습니다.
F 명령
도구 명령
언제 F 명령 대신 도구 명령을 사용해야 합니까?
라이브러리의 범용 펑션블록을 개발하고 싶습니다.
FP 시리즈의 PLC 형식을 서로 다르게 프로그램해야 합니다.
제어 코드 비트를 설정하고 사용 가능한 채널 번호를 찾으려고 합니다.
하지만 입문자나 FPWIN GR에 익숙한 사용자에게는 F 명령이 사용하기 쉬울 수 있습니다.
정보와 제어 함수를 통해 액세스할 수 있는 대부분의 정보는 특수 내부 플래그와 특수 데이터 레지스터에 저장됩니다. 또한 PLC 독립 시스템 변수를 사용하여 이러한 플래그와 레지스터에 액세스할 수 있습니다.원하는 기능을 활용하기 위해 두 라이브러리의 명령을 혼합할 수 있습니다.
도구 명령으로 프로그래밍하는 경우, 관련 F 명령에 대한 링크를 통해 제공되는 상세 정보를 참조해 주십시오.
주요 기능 |
F 명령 | 도구 명령 |
---|---|---|
이전 버전 6.4 지원 |
l |
|
인라인 펑션 사용 |
l |
|
FPWIN GR 펑션 이름 사용 |
l |
|
고정 채널 번호가 있는 작은 코드 |
l |
|
제어 코드 |
l |
|
제어 펑션 |
l |
|
정보 펑션 |
l |
|
가변 채널 번호 |
l |
|
모든 PLC용 범용 펑션 |
l |
|
범용 사용자 펑션블록에서 사용 |
l |
|
모든 PLC 및 모든 펄스 출력 명령용 공통 채널 구성 DUT |
l |
F 명령 | 도구 명령 | ||
(1) |
이 예의 채널 2에서는 고정 채널 번호만 지원합니다. |
(1) |
이 예의 채널 2에서는 가변 채널 번호만 지원합니다. |
(2) |
Y 영역의 명시적 사용자 어드레스 출력 |
(2) |
포인터 변수를 통해 명시적 사용자 어드레스 출력에 액세스. 이 포인터 변수는 사용자 정의 펑션블록 입력을 통해서도 적용될 수 있습니다. |
(3) |
시스템 변수는 채널 2의 특수 데이터 레지스터를 읽는데 사용됩니다. |
(3) |
출력 변수 g_bHsc_TargetValueMatch_Channel2_ YA_MotorOff의 이름은 특정 패턴을 따라야 합니다. Hsc_TargetValueMatch_Set을 참조하십시오. |
(4) |
PLC 지정 제어 코드 설정이 필요합니다(예: 고속 카운터 명령 지우기용). |
||
결론:
|
결론:
|
고속 카운터 명령을 사용하여 센서 또는 인코더의 입력 펄스를 계산하고 특정 목표 값에 도달하면 출력을 TRUE 또는 FALSE로 전환할 수 있습니다.
모터 드라이브가 사용되는 경우, 펄스 출력 명령은 사다리꼴 제어, 원점복귀 및 JOG 동작과 같은 일반적인 위치결정 동작을 활성화합니다.
기본 제공 고속 카운터 및 펄스 출력용 채널 수, 계산 범위, 입력과 출력 번호 및 성능 사양은 PLC 기종에 따라 다릅니다. 자세한 내용은 해당 하드웨어 설명서를 참조해 주십시오.
고속 카운터 명령을 사용하는 경우: 시스템 레지스터에서 원하는 채널의 고속 카운터 입력을 선택합니다.
카운터 입력 모드를 지정하려면 시스템 레지스터에서 고속 카운터 입력을 선택합니다.
입력 모드 |
입력 신호 |
|
---|---|---|
증가 |
||
감소 |
||
2단계 |
증분 카운팅 |
|
감소 카운팅 |
||
증가/감속 |
||
(a) |
증가 중 |
|
(b) |
감소 중 |
|
가감속 제어 |
||
(a) |
증가 중 |
|
(b) |
감소 중 |
|
초기화 계산(증가) |
||
(a) |
상승 엣지: 계산 무효, 경과 값 지워짐 |
|
(b) |
하강 엣지: 계산 유효 |
|
(c) |
계산 금지 |
|
(3)에서 초기화는 (a)(상승 엣지) 및 (b)(하강 엣지)에서의 인터럽트에 의해 실행됩니다.sys_wHscOrPulseControlCode의 비트 2를 사용하여 리셋 입력을 활성화/비활성화할 수 있습니다. |
제어 코드는 특수 카운터 연산을 수행하는데 사용됩니다.
F 명령으로 프로그래밍하는 경우:
MOVE 명령을 사용하여 이 코드용으로 예약된 특수 데이터 레지스터(DT90052 또는 DT9052, PLC 기종에 따라 다름)에서 제어 코드를 읽거나 이 레지스터에서 제어 코드를 씁니다.시스템 변수 sys_wHscOrPulseControlCode를 사용하여 고속 카운터와 펄스 출력 제어 코드가 저장된 특수 데이터 레지스터에 액세스할 수 있습니다.
도구 명령으로 프로그래밍하는 경우:
모든 PLC 기종에 적용된 범용 고속 카운터 제어 명령과 펄스 출력 제어 명령을 사용하여 제어 코드를 설정합니다. 고속 카운터 정보 명령과 펄스 출력 정보 명령을 사용하여 제어 코드 설정을 모니터링합니다.
경과 값은 특수 데이터 레지스터에서 두 배 워드로 저장됩니다.
F 명령으로 프로그래밍하는 경우:
시스템 변수 sys_diHscChannelxElapsedValue를 사용하여 특수 데이터 레지스터에 액세스(여기서, x=채널 번호).
채널 번호는 고속 카운터 또는 펄스 출력 명령의 입력 파라미터입니다. 사전 정의된 DUT를 사용하여 대부분의 다른 파라미터(예: 속도 및 목표 값)를 지정할 수 있습니다. 이러한 DUT를 FP Library에서 찾을 수 있습니다.
도구 명령으로 프로그래밍하는 경우:
모든 PLC 기종에 적용된 범용 고속 카운터 정보와 제어 명령, 펄스 정보와 제어 명령을 사용하여 경과 값을 읽고 씁니다.
채널 번호와 제어 코드 설정(예: CW/CCW), 절대 또는 상대 값 제어 또는 충격 계수는 모든 PLC 기종에 공통적인 채널 구성 DUT에서 지정됩니다. 다른 파라미터(예: 속도 및 목표 값)는 명령에서 직접 적용될 수 있습니다.
고속 카운터와 펄스 출력 상태는 특수 내부 플래그에 저장됩니다. 특수 내부 플래그에 액세스하려면 PLC 독립 시스템 변수를 사용합니다.
고속 카운터 명령이 실행되면 사용한 채널의 고속 카운터 제어 플래그(예: sys_bIsHscChannel0ControlActive)는 TRUE로 전환됩니다. 같은 채널을 사용하여 다른 고속 카운터 명령을 실행하면 제어 플래그는 더 이상 TRUE가 아닙니다.
펄스 출력 명령이 실행되고 펄스가 출력 중이면 해당 채널의 펄스 출력 제어 플래그(예: sys_bIsPulseChannel0Active)는 TRUE입니다. 다른 펄스 출력 명령이 실행되면 이 플래그는 더 이상 TRUE가 아닙니다.
FP-X, FP0R:
고속 카운터 제어 플래그(예: sys_bIsHscChannel0ControlActive)와 펄스 출력 제어 플래그(예: sys_bIsPulseChannel0Active)가 서로 다른 특수 내부 플래그에 할당됩니다.
FP-Sigma, FP0, FP-e:
고속 카운터 제어 플래그(예: sys_bIsHscChannel0ControlActive)와 펄스 출력 제어 플래그(예: sys_bIsPulseChannel0Active)가 같은 특수 내부 플래그 번호(예: R903A)에 할당됩니다. 따라서 고속 카운터 명령 또는 펄스 출력 명이 실행되면 사용된 채널의 고속 카운터 제어 플래그(예: sys_bIsHscChannel0ControlActive)와 펄스 출력 제어 플래그(예: sys_bIsPulseChannel0Active)는 TRUE입니다. 다른 고속 카운터 명령 또는 펄스 출력 명령이 실행되면 이 플래그는 더 이상 TRUE가 아닙니다. 고속 카운터 제어 플래그 또는 펄스 출력 제어 플래그 상태는 스캔이 실행 중인 동안에 변경될 수 있습니다. 예를 들어, 수신된 바이트 수를 읽으면 스캔 1회에 다른 상태가 두 개 이상 있을 수 있습니다.