연산자 샤프트 인코더 보정

Operator Library: Signal

이 연산자는 샤프트 인코더의 역회전을 보정합니다.

이 장치는 인코더 펄스를 입력받을 수 있는 입력 링크 I를 갖추고 있습니다. 입력 링크 Dir을 통해 현재 인코더 방향을 정의할 수 있습니다.

역방향 입력 펄스는 출력에서 억제됩니다. 그러나 연산기는 내부적으로 역방향 입력 펄스를 카운트합니다. ShaftEncoderCompensate에 다시 정방향 펄스가 입력되면, 모든 역방향 펄스가 보정될 때까지 해당 펄스는 계속 억제됩니다. 즉, 각 역방향 입력 펄스는 내부 카운터를 증가시킵니다. 각 정방향 입력 펄스는 내부 카운터가 0보다 클 경우 이 카운터를 감소시킵니다. 내부 카운터가 0일 때만 각 정방향 입력 펄스에 대해 펄스가 출력됩니다.

MaxPulseBits 매개변수는 내부 카운터의 비트 폭을 지정하며, 즉 ShaftEncoderCompensate는 최대 2 ^ MaxPulseBits개의 역방향 펄스를 보정할 수 있습니다. 2 ^ MaxPulseBits개 이상의 역방향 펄스가 발생하는 경우, 역회전 중에 발생한 펄스 중 2 ^ MaxPulseBits개만 보정될 수 있습니다.

현재 카운터 값, 즉 보정해야 할 펄스 수는 CompensationCounter 매개변수를 사용하여 읽을 수 있습니다. 이 매개변수에 새로운 값을 입력하여 현재 카운터 값을 덮어쓸 수 있습니다.

이 오퍼레이터는 오퍼레이터에 직접 연결할 수 있습니다 ShaftEncoder에 직접 연결할 수 있습니다.

다음 파형에서는 연산자의 작동 원리가 설명되어 있습니다.

다음과 같이 추가 리셋 입력을 사용하여 카운터를 초기화할 수 있습니다.

이 operator는 VisualApplets 기능 시뮬레이션에서 제외됩니다.

I/O Properties

Property Value
Operator Type O
Input Links I, 신호 데이터 입력
Dir, 신호 데이터 입력
, 리셋, 신호 데이터 입력
출력 링크 O, 신호 데이터 출력

지원되는 Link Format

Link Parameter Input Link I 입력 링크 디렉터리 Input Link Reset Output Link O
Bit Width 1 1 1 as I
Arithmetic unsigned unsigned unsigned as I
Parallelism 1 1 1 as I
Kernel Columns 1 1 1 as I
Kernel Rows 1 1 1 as I
Img Protocol VALT_SIGNAL VALT_SIGNAL VALT_SIGNAL as I
Color Format VAF_GRAY VAF_GRAY VAF_GRAY as I
Color Flavor FL_NONE FL_NONE FL_NONE as I
Max. Img Width any any any as I
Max. Img Height any any any as I

Parameters

MaxPulseBits
Type static parameter
Default 10
Range [2, 32]

이 매개변수는 내부 카운터의 비트 폭을 지정합니다.

보상 카운터
Type 동적 읽기/쓰기 매개변수
Default 0
Range [0, 2^MaxPulseBits-1]

이 파라미터는 보정 카운터의 현재 값을 표시합니다. 파라미터에서 값을 읽으면 현재 값이 표시됩니다. 파라미터에 값을 쓰면 카운터 값이 덮어쓰여집니다.

사용 예

다음 예제에서는 ShaftEncoderCompensate 연산자의 사용법을 보여줍니다.