Operator ShaftEncoderCompensate

Operator Library: Signal

此運算子會補償軸編碼器的回轉誤差。

該執行器設有輸入連接埠 I,可接收編碼器脈衝 透過輸入連接埠Dir,可設定當前的編碼器方向。

輸出端會抑制反向輸入脈衝。 然而,運算器會在內部計數反向輸入脈衝。 當 ShaftEncoderCompensate 再次接收到正向脈衝時, 這些脈衝仍會被抑制,直到所有反向脈衝均被補償為止。 換言之,每個反向輸入脈衝都會使內部計數器遞增。 若內部計數器值大於 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,訊號資料輸入
Reset,訊號資料輸入
Output Link O,信號資料輸出

Supported Link Format

Link Parameter Input Link I 輸入連結目錄 Input Link Reset Output Link O
Bit Width 1 1 1 as I
Arithmetic 無號數 無號數 無號數 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 靜態參數
Default 10
Range [2, 32]

此參數用於指定內部計數器的位元寬度。

補償計數器
Type 動態讀取/寫入參數
Default 0
Range [0, 2^MaxPulseBits-1]

此參數顯示補償計數器的當前值。 讀取此參數將顯示當前值。 寫入此參數將覆寫計數器值。

Examples of Use

以下範例展示了如何使用 ShaftEncoderCompensate 運算子: