Block
Mask
Description
The EnDat Master is responsible for communication with EnDat encoders from HEIDENHAIN. It allows simple transmission of position data and additional data to the higher-level application. The variant of EnDat master used in this block is EnDat master reduced (only EnDat protocol machine).
The data is transmitted in synchronism with the clock signal from the subsequent electronics. The type of transmission (position values, parameters, additional data such as temperature sensor value, etc.) is selected by mode commands that the subsequent electronics send to the encoder.
At a system clock frequency of 64 MHz, the serial interface can be operated with a clock rate of up to 16 Mhz.
IMPORTANT: To be able to use the EnDat master, the user must obtain the IP Core "endatreduced" from AMS. The 2 vhd sources (endatreduced.vhd and pdm.vhd) must be copied to the model folder.
Parameters
Freq_OEM_Value Specification
This parameter allows the user to specify how to configure the frequency OEM value. Two options are available.
- In the first option (As input port), the value to set the transmission frequency is provided externally to the block by the USER.
- The second option (As Block Paramater) allows the user to enter the value from the block (IN this case, the value can only be modified by regenerating a bitstream).
The maximum value for freq_oem_value is 2047 : (2^11) - 1
Example: when "freq_oem_value" is set to 1, the transmission frequency is 16 MHz.
Freq_TST_Value Specification
This parameter allows the user to specify how to configure the recovery time III. Two options are available. In the first option (As input port), the value to configure the recovery time is provided externally to the block by the USER. The second option (As Block Parameter) allows the user to enter the value from the block (In this case, the value can only be changed by regenerating a bitstream).
The maximum value for freq_tst_value is 2047 : (2^11) - 1
This waiting time is necessary because, for start bit recognition, there must be a stable level on the data line. The level is driven by the encoder so that you have to wait until this level is stable on the subsequent electronics.
With low transmissions rates (Tclk < 400 Khz) you set the same value as "freq_oem_value"
With high transmissions rates and long cables lengths, "freq_tst_value" must be clearly higher than "freq_oem_value".
Please see EnDat specifications for more details.
Position Value Width Specification
This parameter allows the user to specify how to configure the Position Value Width. Two options are available. In the first option (As input port), the value to configure the width of the position value is provided externally to the block by the USER. The second option (As Block Parameter) allows the user to enter the value from the block (In this case, the value can only be changed by regenerating a bitstream).
The format for transfer of position values varies in length depending on the encoder model. The maximum bit width for the position transfer is 48 bit. This information can be read from the Word 13 in the Encoder memory.
Example: position value width = 25 bits
Other Tab
Provide port for CRC_ERR | If selected, the EnDat status signal CRC_ERR is made available in the output of the block. |
---|---|
Provide port for CRC_OUT | If selected, the EnDat status signal CRC_OUT is made available in the output of the block. |
Provide ports for Error1 ans Error2 | If selected, the EnDat status signals error1 and erro2 are made available in outputs of the block. |
General Tab
Sample Period | Define the sample period of the logic in the FPGA. This parameter cannot be modified by the user. |
---|
Note: Refer to D297403 - Bidirectional Synchronous-Serial Interface for Position Encoders specification from HEIDENHAIN for more details.
Inputs
RX_DATA | Serial data receive from from Encoder |
---|---|
START | Pulse to start EnDat Transmission |
DIN | Parralel data input. The data available here must contain the data to be transmitted to the EnDat encoder.
Please see EnDat specifications for more details about the command mode and DIN |
Optional Ports
These ports are available only when the option is checked.
Freq_OEM_Value | Provides the temperature value. |
---|---|
Freq_TST_Value | Provides the additional sensor value. |
PositionValueWidth | Provides the commutation value. |
Note: Refer to D297403 - Bidirectional Synchronous-Serial Interface for Position Encoders specification from HEIDENHAIN for more details.
Outputs
TX_CLK | Transmission Clock to Encoder |
---|---|
TX_DATA | Serial transmit data |
TX_ENABLE | Enable serial data transmission |
DOUT_PV | At this output, the received data for position value is available and saved in the register. the "valid_pv" signal is used as register enable. |
DOUT_AI1 | At this output, the received data for additional information 1 is available and saved in the register. the "valid_ai_a" signal is used as register enable. |
DOUT_AI2 | At this output, the received data for additional information 2 is available and saved in the register. the "valid_ai_b" signal is used as register enable. |
VALID | status output
|
Optional Ports
These ports are available only when checkbox option is selected.
CRC_OUT | Received crc value outputs drom encoder. At these outputs, the CRC value transmitted by the encoder is available.
|
---|---|
CRC_ERROR | status bits created by the sequential control of the interface component.
|
ERROR1 | Error bit 1 of EnDat protocol (Alarm1). |
ERROR2 | Error bit 2 of EnDat protocol (Alarm2). |
Note: Refer to D297403 - Bidirectional Synchronous-Serial Interface for Position Encoders specification from HEIDENHAIN for more details.
Characteristics and Limitations
This Block has no specific characteristics or limitations
Direct Feedthrough | N/A |
---|---|
Discrete sample time | N/A |
XHP support | N/A |
Work offline | YES |