Click or drag to resize

4.3.5.1 Universal Mode (deprecated)

Note  Note

Super Mode is only available on adapter hardware version R2 001 V2 or R3 001 V0. This Mode is depecated.

  • The output Alarm signal (J3 pin 26) to the SP-ICE-3 Card will be activated whenever at least one of the enabled alarm inputs is active:

    • Alarm = alarm_input_J [ OR alarm_input_K [ OR ... ] ]

    • On the SP-ICE-3 Card the Alarm signal will cause the currently running job to be aborted.

  • The user can select which of the six available alarm inputs are enabled, and their polarities, by setting the appropriate Configuration bits via the IPG-compatible Adapter's SPI.

  • The state of the Laser Status signals can be read from the Status bits via the IPG-compatible Adapter's SPI.

Configuration and Status Register Bit Groups

Configuration:

Bits 31-16 can be written by the SP-ICE-3 Card to configure the Adapter.

Status:

Bits 15-0 can be read by the SP-ICE-3 Card to obtain the Laser Status.

Configuration Bit Definitions
Configuration bits 31..16

Bit

Name

Description

31

DRIVER_ENABLE

Set to '1' to enable the digital output driver on the IPG-compatible Adapter.

If set to '0' the digital output signals on J1 are in tristate.

30

s5V_Enable

Set to '1' to enable the 5V on the IPG-compatible Adapter.

The 5V regulator supplies the Pull-Up resistors and the digital output drivers of J1.

29

VIO_Enable

Set to '1' to enable the VIO_out 5V voltage on J1 Pin 17.

The 5V regulator must be enabled by the s5V_Enable bit.

28

VIO_Port_Control

Set to '1' to enable PortD.4 to control the VIO_out 5V voltage on J1 Pin 17.

The 5V regulator must be enabled by the s5V_Enable bit.

27

Sync_Alarm_Enable

Set '1' to display the state of the Sync_Alarm signal (J1 Pin 15, Jumper W1 top) in LED D7 and include it in the evaluation of the Alarm signal (J3 Pin 26) to the SP-ICE-3 Card.

26

Sync_Alarm_Polarity

Selects the input level of the Sync_Alarm signal (J1 Pin 15, Jumper W1 top) which reports normal operation. The Alarm signal (J3 Pin 26) to the SP-ICE-3 Card will be set (low) active if the input level differs from the level in this bit. The polarity of LED D7 is not influenced.

25

Back_Alarm_Enable

Set '1' to display the state of the Back_Alarm signal (J1 Pin 24, Jumper W3 top) in LED D6 and include it in the evaluation of the Alarm signal (J3 Pin 26) to the SP-ICE-3 Card.

24

Back_Alarm_Polarity

Selects the input level of the Back_Alarm signal (J1 Pin 24, Jumper W3 top) which reports normal operation. The Alarm signal (J3 Pin 26) to the SP-ICE-3 Card will be set (low) active if the input level differs from the level in this bit. The polarity of LED D6 is not influenced.

23

Alarm4_Enable

Set '1' to display the state of the Alarm4 signal (J1 Pin 12, Jumper W4 top) in LED D5 and include it in the evaluation of the Alarm signal (J3 Pin 26) to the SP-ICE-3 Card.

22

Alarm4_Polarity

Selects the input level of the Alarm4 signal (J1 Pin 12, Jumper W4 top) which reports normal operation. The Alarm signal (J3 Pin 26) to the SP-ICE-3 Card will be set (low) active if the input level differs from the level in this bit. The polarity of LED D5 is not influenced.

21

Alarm3_Enable

Set '1' to display the state of the Alarm3 signal (J1 Pin 11, Jumper W2 top) in LED D4 and include it in the evaluation of the Alarm signal (J3 Pin 26) to the SP-ICE-3 Card.

20

Alarm3_Polarity

Selects the input level of the Alarm3 signal (J1 Pin 11, Jumper W2 top) which reports normal operation. The Alarm signal (J3 Pin 26) to the SP-ICE-3 Card will be set (low) active if the input level differs from the level in this bit. The polarity of LED D4 is not influenced.

19

Alarm2_Enable

Set '1' to display the state of the Alarm2 signal (J1 Pin 21) in LED D3 and include it in the evaluation of the Alarm signal (J3 Pin 26) to the SP-ICE-3 Card.

18

Alarm2_Polarity

Selects the input level of the Alarm2 signal (J1 Pin 21) which reports normal operation. The Alarm signal (J3 Pin 26) to the SP-ICE-3 Card will be set (low) active if the input level differs from the level in this bit. The polarity of LED D3 is not influenced.

17

Alarm1_Enable

Set '1' to display the state of the Alarm1 signal (J1 Pin 16) in LED D2 and include it in the evaluation of the Alarm signal (J3 Pin 26) to the SP-ICE-3 Card.

16

Alarm1_Polarity

Selects the input level of the Alarm1 signal (J1 Pin 16) which reports normal operation. The Alarm signal (J3 Pin 26) to the SP-ICE-3 Card will be set (low) active if the input level differs from the level in this bit. The polarity of LED D2 is not influenced.

Status Bit Definitions
Status bits 15..0

Bit

Name

Description

15

s5V_Power_Good_Edge

Will be '1' if the s5V_Power_Good signal has changed since the last register readout.

Starting with hardware R2 001 V2 this bit is only set if at least two edges have been seen (instead of one edge).

14

s5V_Power_Good_State

Reflects the state of s5V_Power_Good signal at the time of register readout.

s5V_Power_Good is '1' if the 5V power supply is working without error.

13

EM_Stop_Edge

Will be '1' if the EM_Stop signal has changed since the last register readout.

Starting with hardware R2 001 V2 this bit is only set if at least two edges have been seen (instead of one edge).

12

EM_Stop_State

Reflects the state of EM_Stop signal at the time of register readout.

EM_Stop is '1' if the interlock loop is closed.

11

Sync_Alarm_Edge

Will be '1' if the Power_Monitor signal has changed since the last register readout.

Sync_Alarm_Polarity and Sync_Alarm_Enable do not influence this bit.

Starting with hardware R2 001 V2 this bit is only set if at least two edges have been seen (instead of one edge).

10

Sync_Alarm_State

Reflects the state of Sync_Alarm signal from J1 Pin 15 over jumper W1 at the time of register readout.

Sync_Alarm_Polarity and Sync_Alarm_Enable do not influence this bit.

9

Back_Alarm_Edge

Will be '1' if the Back_Alarm signal has changed since the last register readout.

Back_Alarm_Polarity and Back_Alarm_Enable do not influence this bit.

Starting with hardware R2 001 V2 this bit is only set if at least two edges have been seen (instead of one edge).

8

Back_Alarm_State

Reflects the state of Back_Alarm signal from J1 Pin 24 over jumper W3 at the time of register readout.

Back_Alarm_Polarity and Back_Alarm_Enable do not influence this bit.

7

Alarm4_Edge

Will be '1' if the Alarm4 signal has changed since the last register readout.

Alarm4_Polarity and Alarm4_Enable do not influence this bit.

Starting with hardware R2 001 V2 this bit is only set if at least two edges have been seen (instead of one edge).

6

Alarm4_State

Reflects the state of Alarm4 signal from J1 Pin 12 over jumper W4 at the time of register readout.

Alarm4_Polarity and Alarm4_Enable do not influence this bit.

5

Alarm3_Edge

Will be '1' if the Alarm3 signal has changed since the last register readout.

Alarm3_Polarity and Alarm3_Enable do not influence this bit.

Starting with hardware R2 001 V2 this bit is only set if at least two edges have been seen (instead of one edge).

4

Alarm3_State

Reflects the state of Alarm3 signal from J1 Pin 11 over jumper W2 at the time of register readout.

Alarm3_Polarity and Alarm3_Enable do not influence this bit.

3

Alarm2_Edge

Will be '1' if the Alarm2 signal has changed since the last register readout.

Alarm2_Polarity and Alarm2_Enable do not influence this bit.

Starting with hardware R2 001 V2 this bit is only set if at least two edges have been seen (instead of one edge).

2

Alarm2_State

Reflects the state of Alarm2 signal from J1 Pin 21 at the time of register readout.

Alarm2_Polarity and Alarm2_Enable do not influence this bit.

1

Alarm1_Edge

Will be '1' if the Alarm1 signal has changed since the last register readout.

Alarm1_Polarity and Alarm1_Enable do not influence this bit.

Starting with hardware R2 001 V2 this bit is only set if at least two edges have been seen (instead of one edge).

0

Alarm1_State

Reflects the state of Alarm1 signal from J1 Pin 16 at the time of register readout.

Alarm1_Polarity and Alarm1_Enable do not influence this bit.

Programmatic Configuration via SPI

The IPG-compatible Adapter's SPI can be used for configuration as demonstrated in the following example.

C#
using ( ClientAPI client = new ClientAPI( CardIP ) )
{
    try
    {
        // Get the current SPI configuration, and adjust
        // it to make sure that Module 0
        // is enabled with correct settings.
        SpiConfig sc = client.Sfio.Spi.GetConfig();
        sc.Modules[2].Enabled = true;
        sc.Modules[2].OutputSource = DataSource.Spi;
        sc.Modules[2].BitsPerWord = 32;
        sc.Modules[2].SpiSyncMode = SyncMode.SyncPerWord;
        sc.Modules[2].ClockPeriod = 3;
        sc.Modules[2].PostDelay = 0;
        sc.Modules[2].PreDelay = 0;
        sc.Modules[2].FrameDelay = 7;
        client.Sfio.Spi.SetConfig( sc );

        // Define the IPG Universal Mode configuration we want to use.
        // TODO: put some genuinely useful value here!
        ConfigFlags ipgUniversalModeConfig = ( ConfigFlags.Driver_Enable | ConfigFlags.Alarm1_Enable ) & ~ConfigFlags.s5V_Enable & ConfigFlags.Command_Mask;

        // Prepare for transmission.
        uint[] spiCommands = new uint[] { (uint)( ipgUniversalModeConfig ) }; // In this case, just a single SPI command.

        // Send the configuration via the SPI.
        uint[] spiResponse = client.Sfio.Spi.Transceive( 2, spiCommands, 10 );

        // Check the response.
        ConfigFlags currentUniversalModeFlags = (ConfigFlags)spiResponse[0] & ConfigFlags.Response_Mask;

        // TODO: something appropriate with the response.
    }
    catch ( Exception ex )
    {
        Console.WriteLine( "Uhhh, Houston? We've had a problem...{0}", ex.ToString() );
    }
}