Operator ShaftEncoder

Operator Library: Signal

此算子會分析兩個軸編碼器信號軌跡。 這兩個軌跡會輸入至算子中。 在算子的輸出端,會提供對應每個編碼器線條的脈衝以及方向信號。 系統會使用兩個軌跡信號之間的相位來進行檢測。

對於每個檢測到的編碼器線條,算子會在輸出端 O 產生一個脈衝。 脈衝寬度為一個設計時脈週期。 在輸出端 Dir 處,會輸出檢測到的編碼器方向。 如果 Dir = 0 (LOW),表示檢測到正向。 如果 Dir = 1 (HIGH),表示檢測到反向。 Dir 輸出端的值僅在輸出 O 為 1 (HIGH)(即輸出脈衝時)才有效。

參數 LeadingTrace 用於定義兩個軌跡中的哪一個是領先軌跡,即哪個軌跡超前 90°。

參數 Mode 用於定義檢測模式。 可使用以下模式:

  • ModeX1:

    單倍速模式。 僅使用領先信號的一個邊沿進行檢測。 輸出取決於:

    其中 是領先軌跡(例如 A)的上升沿和下降沿。 是從屬軌跡(例如 B)。

    下圖說明了 ModeX1 的行為

  • ModeX2:

    雙倍速模式。 使用領先信號的兩個邊沿進行檢測。 輸出取決於:

    下圖說明了 ModeX2 的行為

  • ModeX4:

    四倍速模式。 使用領先信號和從屬信號的所有邊沿進行檢測。 輸出取決於:

    下圖說明了 ModeX4 的行為

可使用額外的重設輸入將算子重設為其初始狀態。

此運算子不支援 VisualApplets 功能模擬。

I/O Properties

Property Value
Operator Type O
輸入連結 TraceA,信號資料輸入
TraceB,信號資料輸入
Reset,信號資料輸入
輸出連結 O,檢測到的編碼器線條的信號資料輸出
Dir,檢測到的方向的信號資料輸出

支援的 Link 格式

Link Parameter 輸入端 TraceA 輸入端 TraceB Input Link Reset Output Link O 輸出端 Dir
Bit Width 1 1 1 作為 TraceA 作為 TraceA
Arithmetic unsigned unsigned unsigned 作為 TraceA 作為 TraceA
Parallelism 1 1 1 作為 TraceA 作為 TraceA
Kernel Columns 1 1 1 作為 TraceA 作為 TraceA
Kernel Rows 1 1 1 作為 TraceA 作為 TraceA
Img Protocol VALT_SIGNAL VALT_SIGNAL VALT_SIGNAL 作為 TraceA 作為 TraceA
Color Format VAF_GRAY VAF_GRAY VAF_GRAY 作為 TraceA 作為 TraceA
Color Flavor FL_NONE FL_NONE FL_NONE 作為 TraceA 作為 TraceA
Max. Img Width any any any 作為 TraceA 作為 TraceA
Max. Img Height any any any 作為 TraceA 作為 TraceA

參數

LeadingTrace
Type static/dynamic read/write parameter
Default A
Range {A, B}

此參數指定領先軌跡。 領先軌跡超前 90°。

模式
Type static/dynamic read/write parameter
Default Mode1X
Range {Mode1X, Mode2X, Mode4X}

此參數用於定義軸編碼器的偵測模式。 請參閱上述說明。

使用範例

以下範例顯示了 ShaftEncoder 運算子的使用方式: