Power Brick Controller User Manual
Connections and Software Setup
41
The sine and cosine signals can be accessed through the following elements. This may be helpful in
diagnostics, or plotting the Lissajous.
Ch. # Signal
Element
Ch. # Signal
Element
1
Sine
PowerBrick[0].Chan[0].AdcEnc[0]
5
Sine
PowerBrick[1].Chan[0].AdcEnc[0]
Cosine
PowerBrick[0].Chan[0].AdcEnc[1]
Cosine
PowerBrick[1].Chan[0].AdcEnc[1]
2
Sine
PowerBrick[0].Chan[1].AdcEnc[0]
6
Sine
PowerBrick[1].Chan[1].AdcEnc[0]
Cosine
PowerBrick[0].Chan[1].AdcEnc[1]
Cosine
PowerBrick[1].Chan[1].AdcEnc[1]
3
Sine
PowerBrick[0].Chan[2].AdcEnc[0]
7
Sine
PowerBrick[1].Chan[2].AdcEnc[0]
Cosine
PowerBrick[0].Chan[2].AdcEnc[1]
Cosine
PowerBrick[1].Chan[2].AdcEnc[1]
4
Sine
PowerBrick[0].Chan[3].AdcEnc[0]
8
Sine
PowerBrick[1].Chan[3].AdcEnc[0]
Cosine
PowerBrick[0].Chan[3].AdcEnc[1]
Cosine
PowerBrick[1].Chan[3].AdcEnc[1]
Note
The Sine and Cosine data is in the upper 16 bits of these 32-bit
structure elements. Scaling them properly requires shifting right by 16
bits or dividing by 65,536.
Sinusoidal Counts per User Units
The (Gate 3) ASIC in the Power Brick Controller has the capability of computing the sub-count interpolated
position in hardware. The sub-count data is then combined with the whole-count data from the quadrature
counter
and
latched
into
PowerBrick[].Chan[].PhaseCapt
each
phase
cycle,
and into
PowerBrick[].Chan[].ServoCapt
each servo cycle. The low 12 bits of these values represent sub-count
data, so there are 4,096 states per quadrature count, or 16,384 states per encoder line, in the resulting values.
A rotary encoder with 1,024 sine/cosine periods per revolution produces:
1,024 x 16,384 = 16,777,216 motor units / revolution
A 20 μm linear encoder produces:
16,384 / 0.020 = 819,200 motor units / mm