Operator ShaftEncoderCompensate

Operator Library: Signal

이 오퍼레이터는 ShaftEncoder의 역회전을 보상합니다.

이 오퍼레이터에는 엔코더 펄스를 공급할 수 있는 입력 링크 I가 있으며, Dir 입력 링크에서 현재 엔코더 방향을 정의할 수 있습니다.

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

MaxPulseBits 파라미터는 내부 Counter의 Bit Width를 지정합니다. 즉, ShaftEncoderCompensate는 최대 2 ^ MaxPulseBits개의 역방향 펄스를 보상할 수 있습니다. 2 ^ MaxPulseBits개를 초과하는 역방향 펄스가 발생하는 경우, 역회전 중에 2 ^ MaxPulseBits개의 펄스만 보상할 수 있습니다.

현재 Counter 값, 즉 보상해야 할 펄스 수는 CompensationCounter 파라미터를 사용하여 읽을 수 있습니다. 이 파라미터에 새 값을 기록하여 현재 Counter 값을 덮어쓸 수 있습니다.

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

다음 파형에서 오퍼레이터의 기능을 설명합니다.

다음과 같이 추가 리셋 입력을 사용하여 Counter를 리셋할 수 있습니다.

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

I/O Properties

Property Value
Operator Type O
Input Links I, 신호 데이터 입력
Dir, 신호 데이터 입력
Reset, 신호 데이터 입력
Output Link O, 신호 데이터 출력

Supported Link Format

Link Parameter Input Link I Input Link Dir 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]

이 파라미터는 내부 Counter의 Bit Width를 지정합니다.

CompensationCounter
Type 동적 읽기/쓰기 파라미터
Default 0
Range [0, 2^MaxPulseBits-1]

이 파라미터는 보정 Counter의 현재 값을 보여줍니다. 파라미터를 읽으면 현재 값을 확인할 수 있습니다. 파라미터에 값을 쓰면 Counter 값이 덮어씌워집니다.

사용 예제

ShaftEncoderCompensate 오퍼레이터의 사용법은 다음 예시와 같습니다: